一、U-Net

Contribution

  • 更规整的网络结构
  • 通过将编码器的每层结果拼接到译码器中得到更好的结果

1、Architecture

U-Net

二、3D U-Net

Architecture

3D U-Net

3、Tricks

  • 两种分割方式
    (1)半自动分割
    半自动分割网络允许用户输入几个注释的2维切片,来得到整个三维体的分割。在半自动分割方法中,使用了IoU指标作为精度度量,得出结论3D U-Net能够从很少的带标注的切片中推广到非常精确的三维分割,而不需要太多的标注工作。
    (2)全自动分割
    已经有一个在具有代表性的训练集上(带注释的切片)进行训练得到的网络,用户可以使用这个网络在没有注释的体积卷上运行,来得到整个三维体的分割。
  • 通道数翻倍的时机和反卷积操作。在2D Unet中,通道数翻倍的时机在下采样后的第一次卷积时;而在3D U-Net中,通道数翻倍发生在下采样或上采样前的卷积中。对于反卷积操作,区别在于通道数是否减半,2D U-Net中通道数减半,而3D U-Net中通道数不变。
  • 使用Batch Normalization来加快收敛和避免网络结构的瓶颈。
  • 使用了旋转、缩放和灰度增强等数据增强方法,此外在训练数据和正确标注数据上运用平滑的密集变形场,即从一个标准差为4的正态分布中抽取随机向量,每个方向的间距为32个体素,然后应用b样条插值。
  • 使用带加权交叉熵损失的Softmax函数对网络输出和正确标注数据进行比较,对经常出现的背景减少权重,对标注到的图像数据部分增加权重,以平衡微管和背景体素对损失的影响。未标记的像素不参与损失计算,即权重为0。这样可以让网络可以更多地仅仅学习标注到的像素点,从而达到普适性地特点。

三、U-Net++

作者知乎解读:https://zhuanlan.zhihu.com/p/44958351
小总结:https://blog.csdn.net/u013066730/article/details/84954229?biz_id=102&utm_term=UNet++&utm_medium=distribute.pc_search_result.none-task-blog-2~all~sobaiduweb~default-0-84954229&spm=1018.2118.3001.4187

1、Architecture

  • 黑色部分代表的就是原始U-Net结构,绿色代表添加的卷积层,蓝色代表改进的Skip Connection。
  • 以X(1,2)为例说明,它是由X(1,0)、X(1,1)和上采样后的X(2,1)拼接之后,再经过一次Conv与ReLU得到。
    U-Net++

四、Res U-Net和Dense U-Net

1、Contribution

  • Res U-Net和Dense U-Net分别受到残差连接和密集连接的启发,将U-Net的每一个子模块分别替换为具有残差连接和密集连接的形式。

2、Architecture

Res U-Net

五、MultiRes U-Net

1、Contribution

  • 将U-Net中的两个3*3的卷积替换成3*3,7*7卷积运算与5*5卷积运算并行合并,使用多分辨率思路替换传统卷积层。
  • 使用Res Path替换传统U-Net中的简单的跳过连接。
  • 在具有挑战性的训练集有着卓越的提高。

2、Architecture

MultiRes U-Net

  • MultiBlock
    多分辨率分析来扩展U-Net的最简单方法是将3*3和7*7卷积运算与5*5卷积运算并行地合并,如图a所示。
    论文中使用一系列更小,更轻便的3*3卷积块来分解更大,更苛刻的5*5和7*7卷积层,如图b所示。
    2个3*3卷积块的输出有效地近似5*5卷积运算,3个3*3卷积块的输出有效地近似7*7卷积运算。
    最终MultiResUnet使用了三个3*3的卷积替换了U-Net中的模块,并且引入了1*1卷积层,添加了剩余连接,使模型能够理解一些其他空间信息。
    MultiRes U-Net中的模块详细结构
  • Res Path
    引入残差连接,不是简单地将特征图从编码器级连接到解码器级,而是先将它们穿过带有残差连接的卷积层链,然后再与解码器特征连接
    MultiRes U-Net中的Residual Path

六、R2 U-Net

1、Contribution

  • 提出了两个新模型RU-Net和R2U-Net用于医学图像分割。
  • 对医学成像的三种不同模式进行了实验,包括视网膜血管分割,皮肤癌分割和肺分割。
  • 对基于模型的视网膜血管分割任务和基于端到端图像的皮肤病变和肺分割任务的模型,对提出的模型进行性能评估。
  • 与最近提出的最新方法进行比较,该方法与具有相同数量网络参数的等效模型相比具有优越的性能

2、Architecture

(a)为普通的两个Conv模块,(b)为使用了Recurrent Conv的模块,(c)为使用了Residual Conv的模块,(d)是同时使用了Residual和Recurrent Conv的模块(即R2)
Unfolded Recurrent Convolutional Units

  • 一个Recurrent Block其实就是t个普通的Conv(Conv+BN+ReLU)的堆叠,只是每个堆叠层的输入有所变化,第一个Conv的输入为X,之后的Cconv的输入为前一个Conv的输出加上X,写成代码则为:
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    class Recurrent_block(nn.Module):
    def __init__(self, out_channels, t=2):
    super(Recurrent_block, self).__init__()
    self.t = t
    self.out_channels = out_channels
    self.conv = nn.Sequential(
    nn.Conv2d(out_channels, out_channels, kernel_size=3, stride=1, padding=1, bias=True),
    nn.BatchNorm2d(out_channels),
    nn.ReLU(inplace=True)
    )
    def forward(self,x):
    for i in range(self.t):
    if i==0:
    x1 = self.conv(x)
    x1 = self.conv(x+x1)
    return x1
    Recurrent U-Net
  • 在U-Net的基础上添加了Recurrent Conv模块来改进得到的RU-Net(Recurrent U-Net),如上图。
  • 在上图的基础上加入如ResU-Net的残差模块后得到R2U-Net(Recurrent Residual U-Net)。

七、Attention U-Net

Codes: https://github.com/SvyJ/svyj.github.io/blob/master/codes/Attention_UNet.py
Attention,即为注意力机制。在医疗图像中,就是把注意力集中到对特定任务有用的显著特征(比如说相关组织或者是器官),抑制输入图像中的不相关区域。在级联神经网络中,需要明确的外部组织/器官定位模块,而使用Attention就不需要了。

1、Contribution

  • 进一步采用注意力方法,提出基于网格的门控(Grid-Based Gating),使注意系数(Attention Coefficients)更加特定于局部区域。 与基于全局特征向量的门控相比,这提高了性能。 此外,本方法可用于密集预测,因为不执行自适应池化。
  • 提出了应用于医学成像任务的前馈CNN模型中的软注意(Soft-Attention)技术的第一个用例之一。 提出的注意力可以取代图像分类中使用的硬注意方法和图像分割框架中的外部器官定位模型。
  • 提出了标准U-Net模型的扩展,以提高模型对前景(Foreground)像素的灵敏度,而无需复杂的启发式算法。 通过实验观察到U-Net的准确度改进在不同的图像数据集中是一致的。

2、Architecture

Attention Gate

  • Xl代表输入Feature Map, g代表Gate Signal,Wg:1*1*1,Wx:1*1*1,代表三维卷积核尺寸为1*1*1的卷积。
  • Attention Gate可以理解为:输入Feature Map和Gate Signal在Add之后依次经过1*1*1的卷积核压缩,ReLU,再压缩,Sigmoid增加非线性,得到与输入Feature Map相同大小的注意力系数,将注意力系数与输入Feature Map相乘得到输出
    Attention U-Net
  • 如上图为带有Attention Gate的U-Net模型,与标准U-Net相比,改进的地方在于Skip-Connection增加了Attention Gate,而Gating Signal是采用的较深层Feature Map

八、U-Net 3+

1、Contribution

  • 设计了一种新的网络结构U-Net3+,通过引入全尺度的跳过连接,在全尺度特征映射中融合了低层细节和高层语义,充分利用了多尺度特征的同时具有更少的参数;
  • 通过深度监督让网络从全尺度特征中学习分割表示,提出了更优的混合损失函数以增强器官的边界;
  • 提出分类指导模块,通过与图像分类分支联合训练的方式,减少了网络在非器官图像的过度分割(Over-Segmentation);
  • 在肝脏和脾脏数据集上进行了广泛的实验,证明了U-Net 3+的有效性。

2、Architecture

U-Net(a),U-Net++(b),U-Net 3+(c)

3、Tricks

UNET 3+论文笔记:https://zhuanlan.zhihu.com/p/134119120

  • 全尺度跳过连接
  • 全尺度的深度监督
    为了进一步优化网络对图像边界的分割,文章借鉴了图像质量评估中常用的多尺度SSIM(MS-SSIM)提出了MS-SSIM loss。本文最终采用了混合损失函数(Focal Loss,MS_SSIM_Loss和iou loss)来对各层进行监督。
    MS SSIM Loss
  • 分类指导模块(CGM)

附:UNet-family论文及代码

2015

  • U-Net: Convolutional Networks for Biomedical Image Segmentation (MICCAI) [paper] [my-pytorch][keras]

2016

  • V-Net: Fully Convolutional Neural Networks for Volumetric Medical Image Segmentation [paper] [caffe][pytorch]
  • 3D U-Net: Learning Dense Volumetric Segmentation from Sparse Annotation [paper][pytorch]

2017

  • H-DenseUNet: Hybrid Densely Connected UNet for Liver and Tumor Segmentation from CT Volumes (IEEE Transactions on Medical Imaging)[paper][keras]
  • GP-Unet: Lesion Detection from Weak Labels with a 3D Regression Network (MICCAI) [paper]

2018

  • UNet++: A Nested U-Net Architecture for Medical Image Segmentation (MICCAI) [paper][my-pytorch][keras]
  • MDU-Net: Multi-scale Densely Connected U-Net for biomedical image segmentation [paper]
  • DUNet: A deformable network for retinal vessel segmentation [paper]
  • RA-UNet: A hybrid deep attention-aware network to extract liver and tumor in CT scans [paper]
  • Dense Multi-path U-Net for Ischemic Stroke Lesion Segmentation in Multiple Image Modalities [paper]
  • Stacked Dense U-Nets with Dual Transformers for Robust Face Alignment [paper]
  • Prostate Segmentation using 2D Bridged U-net [paper]
  • nnU-Net: Self-adapting Framework for U-Net-Based Medical Image Segmentation [paper][pytorch]
  • SUNet: a deep learning architecture for acute stroke lesion segmentation and
    outcome prediction in multimodal MRI [paper]
  • IVD-Net: Intervertebral disc localization and segmentation in MRI with a multi-modal UNet [paper]
  • LADDERNET: Multi-Path Networks Based on U-Net for Medical Image Segmentation [paper][pytorch]
  • Glioma Segmentation with Cascaded Unet [paper]
  • Attention U-Net: Learning Where to Look for the Pancreas [paper]
  • Recurrent Residual Convolutional Neural Network based on U-Net (R2U-Net) for Medical Image Segmentation [paper]
  • Concurrent Spatial and Channel ‘Squeeze & Excitation’ in Fully Convolutional Networks [paper]
  • A Probabilistic U-Net for Segmentation of Ambiguous Images (NIPS) [paper] [tensorflow]
  • AnatomyNet: Deep Learning for Fast and Fully Automated Whole-volume Segmentation of Head and Neck Anatomy [paper]
  • 3D RoI-aware U-Net for Accurate and Efficient Colorectal Cancer Segmentation [paper][pytorch]
  • Detection and Delineation of Acute Cerebral Infarct on DWI Using Weakly Supervised Machine Learning (Y-Net) (MICCAI) [paper](Page 82)
  • Fully Dense UNet for 2D Sparse Photoacoustic Tomography Artifact Removal [paper]

2019

  • MultiResUNet : Rethinking the U-Net Architecture for Multimodal Biomedical Image Segmentation [paper][keras]
  • U-NetPlus: A Modified Encoder-Decoder U-Net Architecture for Semantic and Instance Segmentation of Surgical Instrument [paper]
  • Probability Map Guided Bi-directional Recurrent UNet for Pancreas Segmentation [paper]
  • CE-Net: Context Encoder Network for 2D Medical Image Segmentation [paper][pytorch]
  • Graph U-Net [paper]
  • A Novel Focal Tversky Loss Function with Improved Attention U-Net for Lesion Segmentation (ISBI) [paper]
  • ST-UNet: A Spatio-Temporal U-Network for Graph-structured Time Series Modeling [paper]
  • Connection Sensitive Attention U-NET for Accurate Retinal Vessel Segmentation [paper]
  • CIA-Net: Robust Nuclei Instance Segmentation with Contour-aware Information Aggregation [paper]
  • W-Net: Reinforced U-Net for Density Map Estimation [paper]
  • Automated Segmentation of Pulmonary Lobes using Coordination-guided Deep Neural Networks (ISBI oral) [paper]
  • U2-Net: A Bayesian U-Net Model with Epistemic Uncertainty Feedback for Photoreceptor Layer Segmentation in Pathological OCT Scans [paper]
  • ScleraSegNet: an Improved U-Net Model with Attention for Accurate Sclera Segmentation (ICB Honorable Mention Paper Award) [paper]
  • AHCNet: An Application of Attention Mechanism and Hybrid Connection for Liver Tumor Segmentation in CT Volumes [paper]
  • A Hierarchical Probabilistic U-Net for Modeling Multi-Scale Ambiguities [paper]
  • Recurrent U-Net for Resource-Constrained Segmentation [paper]
  • MFP-Unet: A Novel Deep Learning Based Approach for Left Ventricle Segmentation in Echocardiography [paper]
  • A Partially Reversible U-Net for Memory-Efficient Volumetric Image Segmentation (MICCAI 2019) [paper][pytorch]
  • ResUNet-a: a deep learning framework for semantic segmentation of remotely sensed data [paper]
  • A multi-task U-net for segmentation with lazy labels [paper]
  • RAUNet: Residual Attention U-Net for Semantic Segmentation of Cataract Surgical Instruments [paper]
  • 3D U2-Net: A 3D Universal U-Net for Multi-Domain Medical Image Segmentation (MICCAI 2019) [paper] [pytorch]
  • SegNAS3D: Network Architecture Search with Derivative-Free Global Optimization for 3D Image Segmentation (MICCAI 2019) [paper]
  • 3D Dilated Multi-Fiber Network for Real-time Brain Tumor Segmentation in MRI [paper][pytorch] (MICCAI 2019)
  • The Domain Shift Problem of Medical Image Segmentation and Vendor-Adaptation by Unet-GAN [paper]
  • Recurrent U-Net for Resource-Constrained Segmentation [paper] (ICCV 2019)
  • Siamese U-Net with Healthy Template for Accurate Segmentation of Intracranial Hemorrhage (MICCAI 2019)

2020

  • U^2-Net: Going Deeper with Nested U-Structure for Salient Object Detection (Pattern Recognition 2020) [paper][pytorch]
  • UNET 3+: A Full-Scale Connected UNet for Medical Image Segmentation (ICASSP 2020) [paper][pytorch]