task | U-net based semantic segmentation

一 写在前面

之前没有太了解segmentation任务是怎么做的,重温一下经典的u net结构。

主要解决两个问题:

  1. 如何实现pixel level的分割任务?
  2. u-NET网络结构如何设计的?

二 网络结构如何设计

整个网络结构呈现U形状,所以也被称之为U-net.

U-net同样也被认为是经典的encoder-decoder结构,左边不断降低feature map大小提高特征维度的部分是encoder,反之,右边不断提升feature map大小降低特征维度的部分是decoder。

具体来说,

  • 左边,例如从568x568x64的特征维度到284x284x128的过程是利用一个3x3的卷积(使得特征维度double,从64到128)和2x2的max pool(stride=2,使得特征大小减半,从568到284)完成的;
  • 右边,则主要是通过上采样,concat with左边的特征,以及3x3的卷积完成的,例如从右边的第二层到右边第一层的过程为:先由198x198x128经过3x3卷积得到196x196x64,1) 对其进行2x2上采样得到392x392x64, 2)然后再取左边第一层568x568x64中的392x392x64(左边虚线框的位置)进行concat得到392x392x128(右边蓝白条纹相叠的位置)3)然后对concat得到的392x392x128进行两次3x3卷积,得到388x388x64的特征维度;

二 如何实现分割

其实就是图里的最后一个conv1x1, 用1x1的卷积对388x388x64的特征图进行卷积,得到388x388x2 (U-net本身做的是二分类)

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容