U-Net

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u012897374/article/details/79980938

论文原文: U-Net: Convolutional Networks for Biomedical Image Segmentatio

U-Net整体继承自FCN。在FCN原来的基础上经过了一些改进,使之更适合处理医学图像。

1. 网络结构

这里写图片描述
基本的网络结构与FCN差不多。左边是contracting path,右边是expanding path。刚开始原始图像的大小为:512×512,作者做了一个mirror的边缘扩充,扩充到了572×572,如下:
这里写图片描述
网络的详细结果图如下:
这里写图片描述

由于刚开始做了一个镜像补充边缘信息,因此后面做concat的时候,前后的feature map的大小不一样,因此需要对称crop, 此操作与FCN类似。

contracting path是典型的卷积网络架构。它的架构是一种重复结构,每次重复中都有2个卷积层和一个pooling层,卷积层中卷积核大小均为3*3,激活函数使用ReLU,两个卷积层之后是一个2*2的步长为2的max pooling层。每一次下采样后我们都把特征通道的数量加倍。contracting
path中的每一步都首先使用反卷积(up-convolution),每次使用反卷积都将特征通道数量减半,特征图大小加倍。反卷积过后,将反卷积的结果与contracting path中对应步骤的特征图拼接起来。contracting path中的特征图尺寸稍大,将其修剪过后进行拼接。对拼接后的map进行2次3*3的卷积。

最后一层的卷积核大小为1×1,将64通道的特征图转化为特定深度(分类数量,二分类为2)的结果。网络总共23层。

2. 权重矩阵

为了使某些像素点更加重要,在公式中引入w(x)。我们对每一张标注图像预计算了一个权重图,来补偿训练集中每类像素的不同频率,使网络更注重学习相互接触的细胞之间的小的分割边界。即针对分割过程中两个不同的结构”粘”在一起的情况,本文的解决方案是在Loss函数中把”粘”在一起处的背景部分的权重加大。使用形态学操作计算分割边界。权重图计算公式如下:

w(x)=wc(x)+w0exp((d1(x)+d2(x))22σ2)

wc是用于平衡类别频率的权重图,d1代表到最近细胞的边界的距离,d2代表到第二近的细胞的边界的距离。基于经验我们设定w0=10σ5像素。
网络中权重的初始化:我们的网络的权重由高斯分布初始化,分布的标准差为(N/2)0.5,N为每个神经元的输入节点数量。例如,对于一个上一层是64通道的33卷积核来说,N=964

3. 输入处理

分割图(segmentation map)包含这样一些像素点,这些像素点的完整上下文都出现在输入图像中。为了预测图像边界区域的像素点,我们采用镜像图像的方式补全缺失的环境像素。这个tiling方法在使用网络分割大图像时是非常有用的,因为如果不这么做,GPU显存会限制图像分辨率。

本文亮点:

  • 引入了带权重的损失。
  • 为了更好地预测边界点,初始时做了镜像边界扩充。
阅读更多
想对作者说点什么?

博主推荐

换一批

没有更多推荐了,返回首页