UNet3+:A FULL-SCALE CONNECTED UNET FOR MEDICAL IMAGE SEGMENTATION (UNet3+:用于医学图像分割的全尺寸连接网络)

论文翻译参考:UNET 3+: A FULL-SCALE CONNECTED UNET FOR MEDICAL IMAGE SEGMENTATION_等风来~~的博客-CSDN博客

摘要:近年来,人们对基于深度学习的语义分割产生了浓厚的兴趣。UNet是一种采用编码-解码结构的深度学习网络,在医学图像分割中有着广泛的应用。结合多尺度特征是实现精确分割的重要因素之一。UNet++在UNet基础上进行改进,它是通过设计具有嵌套和密集跳过连接的体系结构。然而,它没有从多尺度中表达足够的信息,仍然有很大的改进空间。在这篇论文中,我们提出了一种新颖的UNet 3+(UNet+++),它利用了全尺度的跳跃连接(skip connection)和深度监督(deep supervisions)。全尺度的跳跃连接把来自不同尺度特征图中的高级语义与低级语义结合;而深度监督则从多尺度聚合的特征图中学习层次表示(深度监督)。本文所提出的方法特别适用于不同规模的器官。除了提高精度外,所提出的UNet 3+还可以减少网络参数,提高计算效率。此外,我们还进一步提出了一种混合损失函数,并设计了一个classification-guided module来增强器官边界和减少非器官图像的过度分割,从而获得更准确的分割结果。在两个数据集上验证了该方法的有效性。代码可在作者代码找到。

关键词:分割,全尺度跳跃连接,深度监督,混合损失函数,分类
1 介绍

医学图像中器官的自动分割是许多临床应用的关键步骤。近年来,卷积神经网络(convolutional neural networks, CNNs)得到了极大的推动,发展出了多种分割模型,如全卷积神经网络(tional neural networks, FCNs)[1]、UNet[2]、PSPNet[3]和一系列DeepLab版本[4-6]。特别是基于编码-解码结构的UNet在医学图像分割中得到了广泛的应用。它使用跳跃连接来结合来自解码器的高级语义特征图和来自编码器的相应尺度的低级语义特征图。为了避免UNet中的纯跳跃连接在语义上的不相似特征的融合,UNet++[7]通过引入嵌套的和密集的跳跃连接进一步加强了这些连接,目的是减少编码器和解码器之间的语义差距。尽管取得了良好的性能,但这种方法仍然不能从多尺度中探索足够的信息。
在许多分割研究中,不同尺度的特征图展示着不同的信息。低层次特征图捕捉丰富的空间信息,能够突出器官的边界;而高级语义特征图则体现了器官所在的位置信息。然而,当逐步下采样和上采样时,这些微妙的信号可能会逐渐稀释时。为了充分利用多尺度特征,我们提出了一种新的基于u形的体系结构,命名为UNet 3+。在该网络结构中,我们重新设计了编码器和解码器之间的相互连接以及解码器之间的内部连接,以从全尺度捕获细粒度的细节和粗粒度的语义。为了进一步从全尺寸的聚合特征图中学习层次表示法,每个边的输出都与一个混合损失函数相连接,这有助于精确分割,特别是对于在医学图像体积中出现不同尺度的器官。除了提高精度外,我们还证明了所提出的UNet 3+可以减少网络参数,提高计算效率。
为了满足医学图像分割的准确性要求,我们进一步研究了如何有效地减少非器官图像的误报。现有的方法通过引入注意力机制[8]或在推理时执行预定义的细化方法(如CRF[4])来解决这个问题。不同于这些方法,我们提出了一个分类任务来预测输入图像是否有器官,为分割任务提供了指导。
2 方法

图1给出了UNet、UNet++和UNet 3+的简化概述。与UNet和UNet++相比,UNet 3+结合了多尺度特征,重新设计了跳跃连接,并利用多尺度的深度监督,UNet 3+提供更少的参数,但可以产生更准确的位置感知和边界增强的分割图。

图1  UNet (a)、UNet++(b)和提议的UNet 3+ (c)的比较。每个节点的深度在圆圈下面表示。
2.1. Full-scale Skip Connections

所提出的全尺寸跳跃连接改变了编码器和解码器之间的互连以及解码器子网之间的内连接。无论是连接简单的UNet,还是连接紧密嵌套的UNet++,都缺乏从全尺度探索足够信息的能力,未能明确了解器官的位置和边界。为了弥补UNet和UNet++的缺陷,UNet 3+中的每一个解码器层都融合了来自编码器中的小尺度和同尺度的特征图,以及来自解码器的大尺度的特征图,这些特征图捕获了全尺度下的细粒度语义和粗粒度语义。

图2:    构造第三解码器层全尺寸聚合特征图的示意图

例如,图2说明了如何构造​特征图。与UNet类似,直接接收来自相同尺度编码器层的特征图​。但不同的是,跳跃连接不止上面一条。其中,上面两条跳跃连接通过不重叠的最大池化操作将较小尺度编码器层 ​和 进行池化下采样,以便传递底层的低级语义信息。之所以要池化下采样,是因为要统一特征图的分辨率。从图中可知, 要缩小分辨率4倍,​要缩小分辨率2倍。而一系列解码器内跳转连接则从较大规模的解码器层则通过双线性插值法对解码器中的 ​进行上采用从而放大特征图的分辨率,从图中可知, 要放大分辨率4倍, 要放大分辨率2倍。统一完特征图之后,还不能结合它们,还需要统一特征图的数量,减少多余的信息。我们想到用64个3×3大小的滤波器进行卷积表现效果较好,卷积后便产生64个通道的特征图(在之前CNN那篇文章中我也提到,卷积核的数量==输出特征图的数量统一好了feature map的分辨率和数量后,就可以将浅层的精细信息与深层的语义信息进行特征融合了,关于特征融合一般有如下两种方法,FCN式的逐点相加或者U-Net式的通道维度拼接融合,本文是后者。
为了将浅层精细信息与深层语义信息进行无缝融合,我们进一步从5个尺度对拼接后的特征图进行了特征聚合机制,该机制由320个大小为3×3的过滤器、批量归一化和ReLU激活函数组成。形式上,我们将跳转连接表示为:i沿着编码器索引下采样层,𝑁表示编码器的总数。那么特征图 的计算公式如下:

其中,函数C表示卷积操作,函数H表示特征聚合机制(一个卷积层+一个BN+一个ReLU),函数D和函数U分别表示上采样和下采样操作,[ ]表示通道维度拼接融合。
值得一提的是,我们提出的UNet 3+具有更高的效率和更少的参数。在编码器子网中,UNet、UNet++和UNet 3+共享相同的结构,其中 都为 channels,即编码部分的参数都是一样多的。而UNet的解码部分和编码部分是对称的,因此都为 。UNet解码部分中第i个解码阶段的参数数量可以通过下面式子计算得到:
在这里插入图片描述
其中, DF 表示卷积核的大小,函数d表示求出节点的深度。在UNet++中,它在每一条跳跃路径上都利用了dense conv block,它的计算公式如下
在这里插入图片描述
正如大家所见,UNet++的参数量比UNet的更大,而在UNet3+中,每一个解码器由N个尺度连接所成,所以产生 64 × N 64 \times N 64×N channels,计算公式如下:
在这里插入图片描述
解码部分的通道减少使得UNet3+的参数少于UNet和UNet++。
2.2. Full-scale Deep Supervision

为了从全尺度聚合特征图中学习层次表示,在unet3+中进一步采用了全尺度深度监督。与在UNet++中对生成的全分辨率特征图进行深度监督相比,所提出的UNet 3+从每个解码器级产生一个边输出,该边输出由地面真值监督。为了实现深度监督,每个译码器级的最后一层被送入一个普通的3×3卷积层,然后是一个双线性上采样和一个sigmoid函数。(这里的上采样是为了放大到全分辨率)
为了进一步增强器官的边界,我们提出了一种多尺度结构相似性指数(MS-SSIM)[9]损失函数来赋予模糊边界更高的权重。得益于此,UNet 3+将关注模糊边界,因为区域分布差异越大,MS-SSIM值越高。从分割结果P和标准mask G裁剪了两个相应的N×N大小的块,它们可以分别表示为
在这里插入图片描述
其中,M表示尺度的总数量,μp​, μ g 和 σ p , σ g​ 分别是p、g的均值和方差, σ p g  表示它们的协方差。 β m ​, γ m ​定义每个尺度中这两个部分的相对重要性,设置可以参考[9]。两个小的常量 C 1 = 0.0 1^ 2和 C 2 = 0.0 3 2 C_{2} = 0.03^2 是避免被0除。在原文中,作者将尺度设置为5(和UNet、UNet++保持一致),基于[9]。
结合focal损失 函数[10], MS-SSIM损失函数和IoU损失函数[11],我们提出一种混合损失函数用于分割在三个不同层次像素级别分割、块分割、图像级别分割,它能捕获大尺度的和精细结构清晰的界限。混合分割损失被定义为:
在这里插入图片描述
2.3. Classification-guided Module (CGM)

在大多数医学图像分割中,非器官图像出现假阳性是不可避免的。它很有可能是由于来自背景的噪声信息停留在较浅的层次,导致过度分割的现象。为了实现更精确的分割,我们尝试通过增加一个额外的分类任务来解决这个问题,这个任务是为预测输入图像是否有器官而设计的。

如图3中所描绘的一样,最深层次的二维张量

经过一系列的操作包括dropout,卷积,maxpooling,sigmoid,最后有两个值代表有/没有器官的概率。利用最丰富的语义信息,分类结果可以进一步指导每一个切分侧边输出两个步骤。首先,在argmax函数的帮助下,将二维张量转化为{0,1}的单个输出,表示有/没有器官。随后,我们将单个分类输出与侧分割输出相乘。由于二值分类任务的简单性,该模块通过优化二值交叉熵损失函数[12],轻松获得准确的分类结果,实现了对非器官图像过分割的指导。

UNet3+总体结构图


3 实验和结果
3.1. Datasets and Implementation

该方法在肝脏和脾脏两个器官上得到了验证。肝脏分割数据集来自ISBI LiTS 2017挑战赛。它包含131个对比增强腹部三维CT扫描图,其中103个和28个分别用于训练和测试。来自医院的脾脏数据集通过了伦理认证,包含40和9个CT图,用于训练和测试。为了加快训练速度,输入图像有三个通道,包括要分割的切片和上下两个切片,裁剪成320×320。我们利用随机梯度下降来优化我们的网络,其超参数被设置为默认值。每个病例以Dice 系数作为评价指标。
3.2. 与 UNet 和 UNet++对比

在本节中,我们首先将提议的UNet 3+与UNet和UNet++进行比较。在每种方法中使用的损失函数是焦点损失。
(1)定量比较:表1以Vgg-16和ResNet-101为基础,对UNet、UNet++和提出的UNet3+体系在肝脏和脾脏数据集上的参数数量和分割精度进行比较。可以看出,在没有深度监督的情况下,UNet 3+的表现优于UNet和UNet++,在两个数据集上,两个骨干平均提高了2.7点和1.6点。考虑到肝脏和脾脏在CT切片上均出现不同的尺度,UNet3+结合全面深度监督进步提高0.4分。
在这里插入图片描述

(2)定性比较:图4展示了基于resnet -101的UNet、UNet++和UNet3+对肝脏数据集进行全面深度监督的分割结果。可以看出,我们提出的方法不仅精确地局部化了器官,而且产生了连贯的边界,即使是在小物体的情况下
在这里插入图片描述
黄色:假阴性,有病灶的地方没有分割出来
绿色:假阳性,不是病灶的地方分割出病灶
3.2. 与最先进的技术对比

我们定量比较了基于ResNet-101的UNet 3+与几种最新的方法:PSPNet[3]、DeepLabV2[4]、DeepLabV3[5]、DeepLabV3+[6]和Attention-UNet[8]。值得一提的是,所有结果都是直接来自单模型试验,不依赖任何后处理工具。此外,所有网络都通过他们自己提出的loss函数进行了优化。
表2总结了定量比较结果。如图所示,所提出的混合损失函数通过考虑像素级、补丁级和地图级的优化,极大地提高了性能。特别是,补丁级MS-SSIM损失函数有助于赋予模糊边界更高的权重,从而得到增强边界感知的分割图。此外,利用分类引导模块,unet3+巧妙地避免了复杂背景下的过度分割。可以看出,与以前的所有其他方法相比,这种方法非常出色。值得注意的是,该方法在肝脏(0.9675对0.9341)和脾脏(0.9620对0.9324)方面的效果均优于第二好的结果。
在这里插入图片描述
4 结论

在本文中,我们提出了一种全尺度连通的UNet,命名为unet3+,具有深度监督功能,以最大限度地利用全尺度的特征图来实现精确的分割和具有较少参数的高效网络结构。进一步引入分类引导模块和混合损失函数,得到更精确的位置感知和边界感知分割图。在肝脏和脾脏数据集上的实验结果表明,UNet 3+超越了所有以前最先进的方法,突出了器官并产生了一致的边界。
 

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值