【文献阅读笔记】M2SNet: Multi-scale in Multi-scale Subtraction Network for Medical Image Segmentation


文章信息:
在这里插入图片描述

摘要

问题:
     大多现存的方法:基于U-shape结构使用逐元素相加(element-wise addition)或者concatenation去逐步融合解码器中不同层级的特征。但是这两种操作会产生大量的冗余信息,从而削弱不同层级特征之间的互补性,最终导致病灶定位不准确边缘模糊
方法:
     为了解决上述问题,本文提出了一种通用的multi-scale in multi-scale subtraction network ( M 2 S N e t M^2SNet M2SNet) 来完成医学图像的多样化分割
     具体来说,本文首先设计一个基本减法单元(subtraction unit,SU)来产生编码器中相邻层级之间的差异特征。然后,将单尺度SU扩展到层内(intra-layer)多尺度SU,它可以为解码器提供像素级结构级差异信息。然后,金字塔式地为不同层级的多尺度SU配备不同的感受野,从而实现层间(intra-layer)多尺度特征的聚合并获得丰富的多尺度差异信息。此外,本文构建了一个免训练网络“LossNet”来全面监督底层到顶层的任务感知特征,这促使本文的多尺度减法网络同时捕获细节的线索和结构的线索
效果:
     在不同的评估指标下,在不同的图像模态的4种不同的医学图像分割任务的11个数据集上表现由于大多数先进的方法。4中不同的医学图像包括彩色结肠镜成像、超声成像、计算机断层扫描 (CT) )和光学相干断层扫描(OCT)。
关键词:Medical Image Segmentation, Subtraction Unit, Multi-scale in Multi-scale, Difference Information,LossNet

I. 介绍

准确性分割存在三个普遍的挑战:
①U-shape结构:
     UNet:如图1.(a)所示。
     基于UNet的衍生模型:通过设计不同的特征增强模块如:注意力机制[3,4]、门机制(gate mechanism)[5,6],transformer技术[7,8],如图1.(b)所示。
     UNet++:使用嵌套(nested)和密集的跳跃连接来减少编码器和解码器的特征图之间的语义差距。如图1.( c) 所示。
在这里插入图片描述

     编码器中不同层级特征具有不同的特性(characteristics)。高层级别具有更多的语义信息有助于定位对象;低层级别具有更详细的信息,可以捕捉到对象的细微边界。 解码器利用特定层级和跨层级特性来生成最终的高分辨率预测。
     但是上述介绍关于UNet及其衍生模型并没有更多地关注不同层级之间的差异信息。这一缺点不仅会产生冗余信息来稀释真正有用的特性,还会削弱特定层级特征的特性,从而导致网络无法在精确定位细微边界优化之间进行平衡。
②由于感受野有限,单尺度的卷积核很难捕捉尺寸大小不一的物体的上下文信息。一些方法[1,2,9,10,11]:依赖于层间多尺度特征并逐步整合来自不同尺度表示的语义上下文和纹理细节。其他的方法[6,12,13,14,15],基于网络中的空洞空间金字塔池化模块( the atrous spatial pyramid pooling,ASPP)或者DenseASPP。然而,类似ASPP的多尺度卷积模块会产生许多额外的参数和计算。许多方法[5,18,19,20,21],通常将多个ASPP模块安装到不同层级的编码器/解码器中,而有些方法[13,14,22,23]将其安装在最高层级的编码器块上。
损失函数的形式直接为网络的梯度优化提供了方向。在分割领域,提出了许多损失函数来监督不同级别(levels)的预测,例如像素级的L1 loss,交叉熵损失(CE loss)和加权交叉熵损失(WCE loss)[24];区域层级的SSIM loss和不确定性感知损失(uncertainty-aware loss)[26];全局层面的IoU loss,Dice loss和一致性增强损失(CEL)。尽管这些基本损失函数及其变体具有不同的优化特性,但复杂的手动数学形式的设计对于许多研究来说确实非常耗时。为了获得综合性能,模型通常会集成多种损失函数,这对研究人员的训练技能提出了很高的要求。 如何设计和选择损失函数非常考验研究员的能力。因此,本文认为有必要引入一种无需复杂人工设计的智能损失函数来全面监督分割预测。

模型:
     在本文中,提出了一种用于一般医学图像分割的新型 multi-scale in multi-scale subtraction network ( M 2 S N e t M^2SNet M2SNet)。
     首先,本文设计了一个减法单元(SU)并且将其应用到每对相邻的层级特征。SU突出了特征之间的有用差异,并且消除了冗余部分的干扰。
     第二,借助多尺度减法模块收集尽可能多的多尺度信息。对于层间多尺度信息,金字塔地concatenate多个减法单元去捕捉大范围(large-span)的跨层级信息。然后聚合特定的层级特征和多路径跨层级的差异特征,然后在解码器中生成最终的预测。
     对于层内多尺度信息,本文通过一组不同尺寸内核的full one 滤波器将单尺度减法单元改为多尺度减法单元,可以自然地实现多尺度减法聚合,而无需引入额外的参数。如图1所示, M S N e t MSNet MSNet配备了层间多尺度减法模块, M 2 S N e t M^2SNet M2SNet同时具有层间(inter-layer)和层内(intra-layer)多尺度减法结构。
     第三,提出了一个LossNet来自动监督从底层到顶层提取的特征图,它可以使用简单的 L2-loss 函数优化从细节到结构的分割。

本文贡献:
     (1)一个新的分割框架:用一个有效的减法聚合( subtraction aggregation)来代替传统的addition或者concatenation特征融合。
     (2)提出一种简单但通用的 multi-scale in multiscale subtraction network ( M 2 S N e t M^2SNet M2SNet),用于多种医学图像分割。通过多尺度模块中的多尺度,可以有效获得不同层次(levels)之间的从低阶(lower order)到高阶(higher order)的多尺度互补信息,从而全面增强对器官或病变区域的感知。
     (3)设计了一种高效的层内(intra-layer)多尺度减法单元(multi-scale subtraction unit, M S U MSU MSU)。由于 M S U MSU MSU的参数和计算量较低,它可以适用于本文的 M 2 S N e t M^2SNet M2SNet中的所有跨层聚合(cross-layer aggregations)。
     (4)构建了一个通用的免训练损失网络来实现特征级别上从细节到结构的监督,这为基于预测本身的损失设计提供了重要的补充。
     (5)验证了 M 2 S N e t M^2SNet M2SNet 在四个具有挑战性的医学分割任务上的有效性:息肉分割、乳腺癌分割、COVID-19 肺部感染和OCT层分割分别对应于彩色结肠镜成像、超声成像、计算机断层扫描 (CT) 和光学相干断层扫描(OCT)图像输入模式。此外, M 2 S N e t M^2SNet M2SNet在 MICCAI2022 GOALS 国际眼科挑战赛中获得第二名。

与本工作的MICCAI版本[27]相比,进行了以下扩展。 I)在原有单尺度减法单元的结构基础上,我们开发了更强的层内多尺度减法单元,构建了多尺度中多尺度减法网络(M2SNet)。同时,M2SNet继承了之前MSNet的低FLOPs精神。II)在第2节中重新整理了介绍和添加更全面的相关工作。III) 我们报告了更广泛的实验结果,证明了 M2SNet 在 4 种流行的医学分割任务中的优越性。IV) 在 MICCAI 2022 挑战赛中验证了 M2SNet 在多类分割方面的性能:Glaucoma Oct Analysis and Layer Segmentation (GOALS) 。我们获得了第二名(2/100)。V) 我们进一步提供更多的实施细节以及定性和定量方面的全面的消融实验。VI) 我们对多尺度减法单元进行深入的分析和讨论。

II. 相关工作

A. 医学图像分割网络

     根据不同器官或病变的特点,我们将现有的医学图像分割方法分为两类:医学通用的医学专用的
医学通用方法. 随着U-Net[2]在医学图像分割领域取得稳定的性能,编码器-解码器的U形结构已成为基本的分割基线。 U-Net++[9]集成了长连接和短连接(long connection and short connection),可以减少编码器和解码器子网络的特征图之间的语义差距。对于注意力 U-Net [28],注意力门( attention gate)嵌入在编码器和解码器块之间的每个过渡层( transition layer)中,它可以自动学习关注不同形状和大小目标结构。最近,Transformer [29]架构在许多自然语言处理任务中取得了成功。一些工作 [7,8] 探讨了其对医学视觉任务的有效性。UTNet [7] 是一种简单但功能强大的hybrid transformer架构,它在编码器和解码器中应用自注意力模块,以最小的开销捕获不同规模的远程依赖关系。另一个代表性的基于 Transformer 的模型是 TransUNet [8],它通过将图像特征视为序列来编码强全局上下文( strong global context),并通过 U 形混合架构设计利用低层级 CNN 特征

医学专用方法.息肉分割任务中,SFA [30]和 PraNet [4]专注恢复息肉与其周围黏膜之间的清晰边界。SFA 提出了在一个共享编码器和两个相互约束的解码器下的选择性特征聚合结构边界敏感损失函数。PraNet利用反向注意模块来建立区域和边界线索之间的关系。此外,…… ……。然而,通用医学模型和医学专用模型都依赖于通过大量的加法(addition)或串联(concatenation)操作来实现特征融合,削弱了互补特征之间的特殊性部分( specificity parts)。 我们提出的多尺度减法模块自然地专注于提取差异信息,从而为解码器提供有效的目标特征。

B. 多尺度特征提取

     尺度线索在捕捉对象的上下文信息中发挥着重要作用。
     与单尺度特征相比,多尺度特征有利于解决自然发生的尺度变化。这一特性可以帮助医学分割模型感知不同尺度的病变。根据形式,当前基于多尺度的方法大致可以分为两类,即层间多尺度结构和层内多尺度结构。前者基于特征编码器提取的不同尺度的特征,并在解码器中逐步聚合它们,例如U形[1,2,4,9,10,11,37,38]架构。后者通常配备多尺度可插拔模块,如ASPP [16]、DenseASPP [17]、FoldASPP [6]和PAFEM [12],构建具有不同扩张率的并行多分支卷积层,以获得感受野的丰富组合。
     与它们不同的是,本文通过同时引入层间和层内多尺度,提出了具有极端多尺度信息的多尺度减法模块中的多尺度( the multi-scale in multi-scale subtraction module)。并且,层内多尺度减法单元专注于挖掘从pixel-pixel到region-region的特征对的自差异性质(self-difference properties)。与单尺度操作相比,整个过程非常高效,无需额外参数。

C. 损失方法

     图像分割中的大多数损失函数都是基于交叉熵或重合度量(coincidence measures)。传统的交叉熵损失对类别信息一视同仁。 Long等人[24]提出了每个类别的加权交叉熵损失(WCE),以抵消数据中的类别不平衡。 Lin等人[39]引入困难样本和简单样本的权重来提出Focal loss。Dice loss[40]被提出作为V-Net中重合度量的损失函数,可以有效抑制类别不平衡带来的问题。Tversky 损失[41]是 Dice 损失的正则化版本,用于控制准确率和召回率对损失函数的贡献。 Wong等人[42]通过Dice损失和WCE损失的加权求和提出指数对数损失(EL Loss)来提高小结构物体的分割精度。Taghanaki等人[43]发现单独使用基于重叠的损失函数存在风险,并提出como-loss将Dice损失作为正则化项与WCE损失相结合来处理输入输出不平衡的问题
     虽然这些各种各样的损失函数在不同层次上有不同的效果,但手动设计这些复杂的函数确实费时费力。为此,我们提出了自动且全面的分割损失结构,称为LossNet

III. 方法

     M 2 S N e t M^2SNet M2SNet架构如图2所示,其中有5个编码器块 ( E i , i ∈ { 1 , 2 , 3 , 4 , 5 } ) (E^i, i∈{1,2,3,4,5}) (Ei,i1,2,3,4,5),1个 multi-scale in multi-scale subtraction module ( M M S M MMSM MMSM)和4个解码器块 ( D i , i ∈ { 1 , 2 , 3 , 4 } ) 。 (D^i, i∈{1,2,3,4})。 (Di,i1,2,3,4) 本文采用 R e s 2 N e t − 50 Res2Net-50 Res2Net50作为骨干提取五个层次(levels)的特征。
     首先,我们对每个编码器块的特征图分别采用3×3卷积,将通道减少到64,这可以减少后续操作的参数数量。
     接下来,这些不同级别的特征被输入 M M S M MMSM MMSM 并输出五个互补增强特征 ( C E i , i ∈ { 1 , 2 , 3 , 4 , 5 }) (CE^i , i ∈ {1, 2, 3, 4, 5}) CEi,i1,2,3,4,5})
     最后,,每个 C E i CE^i CEi逐步参与解码器并生成最终预测。在训练阶段,预测结果和GT都输入到LossNet中以实现监督。
在这里插入图片描述
提示:图中左侧Dimensionality Reduction模块从上到下依次为“64→64”、“256→64”、“512→64”、“1024→64”、“2048→64”。

我们在Sec.III-A中描述了多尺度减法模块中的多尺度,并在Sec.III-B中给出 LossNet 的详细信息。

A. Multi-scale in Multi-scale Subtraction Module

     我们使用 F A F_A FA F B F_B FB 来表示相邻级别的特征图。它们都已被 ReLU 操作激活。我们定义一个基本减法单位(SU):
在这里插入图片描述
其中,在这里插入图片描述是逐元素减法运算( the element-wise subtraction operation), ∣ | · ∣ | 计算绝对值, C o n v Conv Conv ( ( (· ) ) )表示卷积层。直接对元素位置的特征进行单尺度减法只是为了建立孤立像素级别上的差异关系,没有考虑病灶可能具有区域聚类的特征图3所示,我们利用大小为1×1、3×3、5×5 fixed full one weights的多尺度卷积滤波器,根据pixel-pixel和region-region模式计算细节和结构的不同。使用具有固定参数的多尺度滤波器不仅可以直接捕获匹配空间位置处的初始特征对之间的多尺度差异线索,而且还可以在不引入额外参数负担的情况下实现高效的训练。因此, M 2 S N e t M^2SNet M2SNet可以保持与 M S N e t MSNet MSNet相同的低计算量并获得更高精度的性能。
在这里插入图片描述

整个多尺度减法过程可以表述为:
在这里插入图片描述
其中 F i l t e r ( Filter( Filter(· ) n × n )_{n×n} )n×n 表示大小为 n × n n×n n×nfull one滤波器 M S U MSU MSU可以捕获 F A F_A FA F B F_B FB的互补信息并突出它们从纹理到结构的差异,从而为解码器提供更丰富的信息。
     为了获得跨多个特征级别的高阶(higher-order)互补信息,我们水平和垂直连接(concatenate)多个MSU来计算一系列具有不同阶数和感受野的差异特征。多尺度减法模块中的多尺度细节如图2所示。
在这里插入图片描述
我们聚合相应级别任何其他级别之间的特定尺度特征(the scale-specific feature) M S 1 i MS^i_1 MS1i )和跨尺度差异特征(cross-scale differential feature) M S n ≠ 1 i MS^i_{n≠1} MSn=1i)以生成互补性增强特征(complementarity enhanced feature) C E i CE^i CEi )。这个过程可以表述如下:
在这里插入图片描述
     最后,所有 C E i CE^i CEi参与解码,然后对息肉区域进行分割。

B. LossNet

在所提出的模型中,总训练损失可以写为:
在这里插入图片描述
其中 L I o U w L^w_{IoU} LIoUw L B C E w L^w_{BCE} LBCEw表示加权IoU损失二元交叉熵(BCE)损失。我们使用与[4,44,45]中相同的定义,它们的有效性已在这些工作中得到验证。与它们不同的是,我们额外使用LossNet来进一步优化从细节到结构的分割。

     具体来说,我们使用 ImageNet 预训练分类网络,例如 VGG-16,分别提取预测和GT的多尺度特征。然后,它们的特征差异被计算为损失 L f L_f Lf
在这里插入图片描述
     令 F P i F^i_P FPi F G i F^i_G FGi 分别表示从预测和GT中提取的第 i 层特征图。 l f i l^i_f lfi 计算为其欧几里德距离(Euclidean distance)(L2-Loss),该L2-Loss在像素级别进行监督:
在这里插入图片描述
     从图4中可以看出,低层特征图包含丰富的边界信息,高层特征图描述位置信息。因此,LossNet可以在特征层面产生全面的监督。
在这里插入图片描述

IV. 实验

C. 实施细节

     基于PyTorch框架,在单个2080Ti 的GPU上训练。resize输入图像为 352 × 352 352×352 352×352,使用常见的多尺度训练策略[4,23,27,44,62,63]。
数据增强方法(避免过拟合):
   ①随机水平翻转
   ②随机旋转

训练epoch数
  ①polyp:50
  ②COVID-19 Lung Infection:200
  ③breast tumor:100
  ④OCT layer:100

其它参数设置
   mini-batch=16
   优化器:SGD
   动量:0.9
   权重衰减:0.0005
   最大学习率:0.005(backbone);0.05(其他部分)
   采用Warm_up和linear decay

附录

1. 模型中代码参数的对应

论文模型各部分对应的代码参数,我已标注到图片中,如下:
下面这样图片与论文中的稍有不同:在 M S 1 i MS^i_1 MS1i那一列的连接线我给删除了,因为我在复现代码的时候发现并没有那些链接线。
在这里插入图片描述

  • 1
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Cpdr

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值