UNet
2015 MICCAI
Olaf Ronneberger, Philipp Fischer, Thomas Brox
U-Net: Convolutional Networks for Biomedical Image Segmentation
5 Minute Teaser Presentation of the U-net 5分钟预告片介绍
GitHub
时间顺序: old ——> new
ZijunDeng | PyTorch FCN、U-Net、SegNet、PSPNet 、GCN、DUC, HDC | 火车
zhixuhao | Unet, using Keras | ISBI 2012 神经元结构
milesial | Pytorch U-Net 图像语义分割 | car
❤ LeeJunHyun | pytorch U-Net, R2U-Net, Attention U-Net, Attention R2U-Net | ISIC 2018 皮肤病变分析向黑色素瘤
qubvel | Unet Linknet FPN PSPNet | car
1、Introduce
基于FCN的一个语义分割网络,适合用来做医学图像的分割。
- contracting path :similar to an encoder
用于获取上下文信息(context) - expanding path :similar to a decoder
扩张路径用于精确的定位(localization) - data augmentation with elastic deformations
优势:
- 能够从极少图像端对端进行训练,并且在ISBI竞赛中,对于分割电子显微镜中的神经元结构的表现好于以前最好的方法(滑动窗口卷积网络)。
- 运行速度快
Architectural
- VALID padding not SAME padding(因为边界用了镜像处理)
- matched lower and upper features after cropping lower feature(The cropping is necessary due to the loss of border pixels in every convolution:注意看图1中的虚线框,就是与右分支对应的位置去crop左分支)
- weighted cross entropy loss to separate instances(加权交叉熵损失)
- elastic deformations (弹性变形)
Mirroring
边界的镜像处理
医学图像很大,所以要切成一张张小的patch,切成patch的时候因为Unet网络结构原因,适合切成Overlap-tile(重叠平铺)的切图。
Overlap-tile strategy for seamless segmentation of arbitrary large images
用于任意大图像的无缝分割的重叠平铺策略
观察左图:
白框是要分割区域,但是在切图的时候要包含周围区域(周围overlap部分可以为分割区域边缘部分提供文理信息)
预测黄色区域中的分割,需要蓝色区域内的图像数据作为输入。
可以从右图看出:
黄框区域分割结果没有因为切成小patch而造成分割情况不好。
通过镜像推断缺少输入数据。
data augmentation
主要需要:移位、旋转 不变性;变形、灰度值变化 鲁棒性
- 弹性变换
在3*3的网格上使用随机位移矢量产生平滑形变,其中位移来自于10像素标准差的高斯分布,且通过双三次插值法计算得出。在收缩路径的末尾的drop-out层进一步暗示了数据增强。
separation of touching objects of the same class
propose the use of a weighted loss, where the separating background labels between touching cells obtain a large weight in the loss function.
- 预先计算每个ground truth segmentation的权值图
- 补偿训练数据集中某个类的不同像素出现的频率
- 使网络学习我们在touch cells之间引入的小的分离边界(如图3c和d所示)
The separation border is computed using morphological operations. The
weight map is then computed as
Wc :the weight map to balance the class frequencies
d1 :表示到最近单元格边界的距离
d2 :到第二个最近单元格边界的距离
W0 = 10 pixels
σ = 5 pixels
Back propagation
反卷积可以进行反向传播,所以整体Unet是可以反向传播的。