论文地址:http://www.arxiv.org/pdf/1505.04597.pdf
想要学习U-net,必须将这篇论文读懂。
这个架构是基于全卷积网络提出来的,全卷积网络论文地址:https://arxiv.org/abs/1411.4038v1
对于FCN解析较好的博客https://www.cnblogs.com/gujianhan/p/6030639.html
全卷积其主要思想是用连续的层来补充通常的收缩网络,其中池操作符由上采样操作符代替。因此,这些层增加了输出的分辨率。为了进行局部化,将压缩路径的高分辨率特征与上采样相结合输出。然后,连续的卷积层可以学习如何根据这些信息组装更精确的输出。
而U-net架构中的一个重要修改是,在上采样部分,还有大量的特征通道,这些通道将上下文信息传播到更高分辨率的层。
网络架构如图1所示,它由收缩路径(左侧)和扩展路径(右侧)组成。合同路径遵循卷积网络的经典架构。
收缩路径包括重复应用两个3x3 卷积(unpadded),每个卷积后面是一个整流线性单元(ReLu)和一个2x2的最大池化操作进行下采样。在每个下采样步骤中,将特征通道的数量加倍。
扩展路径中的每一步都由特征映射的上采样,将特征通道数量减半的2x2上卷积,与收缩路径中相应裁剪的特征映射的连接以及两个3x3卷积组成,每个卷积后面是一个(ReLu)。在最后一层,使用1x1卷积将每个64个分量的特征向量映射到所需的类数,整个网络有23个卷积层。
作者使用重叠平铺策略(overlap-tile strategy)对任意大的图像进行无缝分割。为了预测图像边缘区域的像素,通过镜像输入图像推断出缺失的上下文。这种平铺策略对于将网络应用与大型图像非常重要,否则分辨率将受到CPU内存的限制。
如图2,在这个算法中,图片边缘(黄色框)需要蓝色框内的图像来计算。采用Overlap-tile的技巧,将图像边缘进行一定的镜像复制生成边缘图像,这样边缘的识别效果会更好。
为了实现输出分割映射的无缝拼接,选择输入平铺的大小非常重要,这样所有2*2的最大池化操作都应用于x和y大小均匀的层。
Notes:
1. 因为全程卷积都是no padding的,所以在每次卷积中都会丢失边缘像素。
2. 该网络没有任何完全连通的层,只使用每个卷积的有效部分,这个分割映射只包含像素。(逐个像素计算softmax分类的损失, 相当于每一个像素对应一个训练样本)。
3. 特征通道是指图1中左边网络蓝色虚线切割出来部分直接加入到右边网络的白色部分。