MRAU-net网络下的X光胸片肺野分割算法
2023-05-12胡俊李平
胡俊, 李平
(华侨大学 信息科学与工程学院, 福建 厦门 361021)
利用医学影像进行疾病的筛查与诊断已经成为临床上不可或缺的手段,这既给医生带来了帮助,也带来了繁重的工作负担[1].X光胸片是临床诊断肺部疾病最常用的手段,将计算机辅助诊断(CAD)技术应用于X光胸片的诊断,具有重要的现实意义[2].图像分割是CAD技术的基础步骤,其精确性会影响计算机对疾病的判断.由于X光胸片存在对比度低、边缘模糊、组织投影重叠等问题,因此,对肺野进行精确分割颇具难度[3].
X光胸片的肺野分割问题一直受到国内外众多学者的关注.张继武等[4]通过水平集方法,提高了肺野的分割精度,但无法排除背景信息的干扰;Candemir等[5]提出一种改进的图片分割算法,通过设计的形态模板获取图割法参数来完成肺野分割,虽分割效果良好,但受限于模型结构,泛化能力较差;佘广南等[6]提出一种基于密集特征匹配的全自动分割模型,该方法无需人工参与,结果较为精确,可对弱、伪边界区域进行分割,但容易陷入局部极值;Matsuyama[7]提出一种基于迭代聚类的X光胸片肺区分割算法,该算法高效快捷、泛化性强,但分割精度较差;秦子亮等[8]提出一种基于卷积神经网络的X光胸片肺野分割方法,该方法将肺野分割问题转换成对图像块的分类问题,提高了分割精度;Kim等[9]提出一种自注意力机制的肺野自动分割方法,在U-net网络[10]的基础上引入注意力机制,提升了网络学习目标区域图像特征的能力,取得了较好的分割效果;Singh等[11]提出一种基于Deeplabv3+的X光胸片肺野自动分割方法,该模型训练速度较快,但对于病变严重的胸片图像,分割效果较差.
由于U-net网络在医学图像分割任务中展现出的卓越性能,被国内外众多学者应用于各自的研究领域中.Abid等[12]设计了双U-net网络架构,用以获取高分辨率和冗余信息,从而提升对皮肤图像中病变区域分割的精确性和稳定性;Li等[13]将2个对抗性网络集成到U-net网络中,利用注意力模块引导分割过程,以提升对胰腺CT图像的分割精度;Hussain等[14]利用多输入多输出模块和改进的跳跃连接,对U-net网络结构进行优化,将不同卷积块的输出进行级联设计,以减小特征提取时的信息损失,从而提升对血管分割的精确性.
综上可知,学者们主要从传统图像分割和深度学习两个角度对胸片肺野分割问题展开研究.基于此,本文针对利用U-net网络进行X光胸片肺野分割时,受限于特征提取能力不足而导致结果不精确的问题,提出一种多尺度残差注意力U型网络(MRAU-net)模型.
1 MRAU-net网络的结构设计
1.1 整体网络结构设计
MRAU-net网络结构,如图1所示.MRAU-net网络沿用了U-net网络编-解码的架构思想,其整体结构分为11个分块,除了输入、输出模块外,其余分块均融合了2个改进的残差模块;在下采样阶段,利用多尺度信息融合(MIF)模块提升了网络对多尺度图像特性信息的挖掘与融合能力;在上采样阶段,利用通道和空间双注意力(CSDA)模块指导网络进行更准确、高效的特征整合和肺区预测.与U-net网络相比,残差模块加深了网络的体系结构,提升了网络对X光胸片图像的肺野特征提取与预测能力.
图1 MRAU-net网络结构图
在编码器部分,网络由4个相似的分块组成.每个分块均以MIF模块为起始,从而增加网络对多尺度信息的获取.利用稠密块和2个改进的残差模块,优化网络结构,实现对多尺度信息的进一步挖掘.稠密块的结构与残差模块的基本单元相同,由3×3的膨胀卷积层、批标准层(BN)及LeakyRelu激活层组成,这样能保持网络结构的一致性,便于网络对数据进行处理.利用1个2×2的最大池化层(Maxpooling),实现图像下采样,特征图的数量在每次下采样后会增加一倍.此外,为了防止过拟合,还在每个分块中添加了比率为0.5的Dropout层.
在解码器部分,同样包含4个相似分块.每个分块通过1个3×3的转置卷积层实现图像上采样,每经过一次转置卷积,特征图数量会减少一半,而特征图尺寸会增加一倍.同时,利用CSDA模块对上采样过程进行指导,帮助网络剔除无用信息,有利于网络对目标进行准确定位.通过Concatenate层连接来自编码器和转置卷积的特征映射,实现高、低维图形特征的结合,补偿下采样过程中的信息损失.同样,为了防止过拟合,在每个分块中添加了比率为0.5的Dropout层.
在编码器和解码器之间,利用1个MIF模块、1个稠密块及2个改进的残差模块构建连接桥,完成编码器和解码器之间的信息传递.利用1个3×3的膨胀卷积层和1个Sigmoid激活层,将特征图映射到目标、背景的分割中,并输出分割结果图.
1.2 改进的残差模块
原始残差块和改进残差块的结构,如图2所示.由图2可知:残差模块使用了一种类似于跳跃连接的结构,用以实现浅层信息向深层的传递,称为短路链接或快捷链接[15].由于原始残差模块缺乏对数据的处理,使提取的特征比较繁杂,对有效特征的提取能力稍显不足[16].利用膨胀卷积层、修正的激活层(LeakyRelu函数)及批标准(BN)层对原始残差块进行改进.
(a) 原始残差块 (b) 改进残差块
利用膨胀卷积替换普通卷积,能提升残差模块的特征提取能力.同时,对各个膨胀卷积层的膨胀率进行锯齿化设计,可以弱化栅格效应[17].为了避免神经元“死亡”对网络训练造成负面影响,将残差模块中的Relu函数用LeakyRelu函数替代.通过在残差模块中添加批标准层,实现对输入数据的标准化.BN层可将同一批次的训练数据规范到相同量纲下,增加样本数据间的相似性.这既能提升网络学习、收敛的速率,又能防止过拟合,抑制梯度消失现象和梯度爆炸现象.
1.3 MIF模块
MIF模块结构,如图3所示.受Inception模块[18]的启发,设计的MIF模块利用4条支路对输入数据进行特征提取,除直连支路外,其余3条支路执行1×1,3×3膨胀卷积和批标准化的不同组合,这样组合的目的在于:1) 增加网络深度、宽度;2) 用小尺寸卷积的堆叠实现大尺寸卷积的功能,除了能获取更全面的信息,还能减少参数量,加快学习进程;3) 利用不同深度的支路,获取多尺度信息.而直连通路则能实现信息的无损传递,类似于残差结构中的短路连接.
图3 MIF模块结构
1.4 CSDA模块
注意力模型按照原理可以划分为空间注意力模型和通道注意力模型.空间注意力模型按照区域的重要程度分配权重,使网络着重学习图像的重要区域;而通道注意力模块,则基于通道的显著程度分配学习权重,使网络能着重学习显著通道对应的特征图.
就二维图像而言,假设卷积后得到的特征图尺寸为H×W×C,H,W,C分别为长、宽和通道数(特征图数量).空间注意力模型基于所有特征图,首先生成一张热力图,此时,特征图尺寸由H×W×C变为H×W×1;然后,基于热力图,标定图像中各区域的重要程度,并按照重要程度分配不同的学习权重;最后,将相同权重配比作用到所有特征图上.而通道注意力模型首先将每一张特征图压缩成一个数,并用该数代表相应通道,此时,特征图尺寸由H×W×C变成1×1×C;然后,基于数值定义各通道的显著性;最后,按照通道的显著程度给对应特征图分配学习权重.
CSDA模块结构图,如图4所示.图4中:GAvg Pooling为全局平均池化;GMax Pooling为全局最大池化.利用CSDA模块可以增强网络对目标位置、形态等有效特征信息的捕获能力,还能抑制无用信息,加快网络的学习过程,解决网络在有限算力下的信息过载问题.
图4 CSDA模块结构图
2 X光胸片肺野分割算法的设计
对于神经网络,从X光胸片图像中学到有利于肺野分割的图像信息,具有一定的难度[19].由于可用于训练的有效样本量较少,想要取得良好的肺野分割效果颇具挑战.对于小数据集,可以通过数据增强手段,获取足够的训练样本,保证网络对于数据的基本需求[20].此外,还可以通过设计合适的损失函数,提升网络对有效图像特征的挖掘能力,增加网络的肺野分割性能.
2.1 算法的整体流程
X光胸片肺野分割算法流程,如图5所示.该算法主要包括2个部分:1) 数据预处理,包括数据增强和图像预处理;2) 对MRAU-net网络进行设计,并利用预处理后的图像数据对网络进行训练和预测.由于MRAU-net网络是一种端到端的神经网络结构,因此,无需其他操作,既可获得X光胸片的肺野分割二值结果图.
图5 X光胸片肺野分割算法流程
2.2 数据预处理
数据预处理包括数据增强和图像预处理.数据增强是在训练神经网络的过程中,应对可供训练的有效样本不足的情况下,普遍使用的一种数据处理手段[21].
就神经网络而言,只需要对图像数据做一些细微的改变,即可使网络将改变后的图像认定为不同的图像数据[22].同时,神经网络具有平移、旋转等不变性,无论目标处于图像中的哪个位置、何种状态,都不干扰网络进行稳定的预测.因此,常规的数据增强手段包括旋转、平移、缩放、剪切、翻转、加噪声、颜色变换等[23].
使用的Montgomery数据集和Shenzhen数据集包含800张X光胸片图像,其中,704张有对应的掩膜图像.通过左右翻转、上下翻转、-70°~70°随机旋转、平移、剪裁、旋转加剪裁等操作,生成了4 652张具有对应掩模图的X光胸片图像数据.
通过数据增强,提升数据集的样本数量;而利用图像预处理,则可以提升数据集的样本质量.图像预处理包括图像尺寸、灰度标准化.对于数据增强后的数据集,图像尺寸不具备一致性,所以,需要对图像执行标准化,将图像尺寸规范到相同大小.此外,为了减少网络训练的计算量,提升学习效率,还需将图像的像素灰度区间由0~255调整到0~1之间.
2.3 损失函数
对于二分类问题,通常会用0和1来区分样本数据的类别.以图像分割为例,用1标记前景,用0标记背景.就单目标分割任务而言,利用神经网络实现分割,本质上是对图像中所有像素点类别的二分类预测[24].
在神经网络结构的末端,采用Sigmoid函数作为激活函数.Sigmoid函数通过处理所有输入特征数据,输出一个对二分类结果的预测概率,该概率值分布在0~1之间,代表网络预测样本为正样本的可能性,数值越大,表示网络认为样本是正样本的可能性越大.在单目标分割任务中,图像中所有像素点类别的预测经由Sigmoid函数会得到相应的概率值,此概率值表示网络将像素点预测为前景的可能性[25].
对于二分类问题,最常用的损失函数为二元交叉熵损失,其作用原理如下.
(1)
当y=0时,表示将该像素点被预测为背景的概率;当y=1时,表示该像素点被预测为前景的概率,即
(2)
(3)
根据极大似然估计原理,将上述两种情况进行整合,可得
(4)
在式(4)的基础上,在等号两边引入对数函数,对数函数并不会改变原式的单调性,即
(5)
于是,定义损失函数L=-lgP(y|x),则可以得到二元交叉熵损失函数Lbce的表达式为
(6)
式(6)中:无论实际标签值为0或1,Lbce均表示网络的输出与标签值的误差,且误差越大,损失函数的数值越大.由于对数函数的作用,损失值的变化是非线性的,这样能使网络的输出更容易拟合真实样本的标签值.
3 实验结果与分析
采用Montgomery数据集和Shenzhen数据集对图像分割算法进行研究.为评判文中方法的分割性能,共进行3组实验.第1组为消融实验,以展示两个主要改进点(MIF模块和CSDA模块)对网络性能提升的贡献;第2组实验采用文中方法对不同X光胸片进行肺野分割,通过对结果进行对比分析,评判文中方法的有效性;第3组实验采用不同方法对相同数据集进行肺野分割,通过对结果进行对比分析,评判文中方法的优越性.
3.1 实验环境及参数设定
实验使用工作站的操作系统为Ubuntu 20.03,运行环境为Python 3.6,在Tensorflow 2.0深度学习框架上搭建神经网络并进行训练、测试.实验环境及参数配置,如表1所示.
表1 实验环境及参数配置
3.2 消融实验
消融实验将未加入MIF模块和CSDA模块的网络作为基线模型(Baseline),为了评估X光胸片肺野的分割质量,引入灵敏度(Isen)、特异性(Ispe)、Dice系数(D)及交并比(IoU)4个评价指标作为参考标准.灵敏度反映肺野中被正确分类的像素比例,特异性反映背景中被正确分类的像素比例,Dice系数和交互比反映分割结果与金标准的相似性,其表达式分别为
Isen=NTP/(NTP+NFN),
(7)
Ispe=NTN/(NTN+NFP),
(8)
D=2NTP/(2NTP+NFP+NFN),
(9)
IoU=NTP/(NTP+NFP+NFN).
(10)
式(7)~(10)中:NTP为肺野中被正确分类的像素数量;NFN为将肺野分成背景的像素点数量;NTN为背景中被正确分类的像素数量;NFP为将背景分成肺野的像素数量.
4个评价指标的数值均不大于1,数值越高,表示分割得越准确,发生错误分割的情况越少.不同模块组合在X光胸片数据集的评价结果,如表2所示.
表2 不同模块组合在X光胸片数据集的评价结果
由表2可知:文中方法添加的MIF模块和CSDA模块对网络的肺野分割性能均有一定程度的提升,相较而言,CSDA模块对网络性能提升的效果优于MIF模块;此外,将MIF模块和CSDA模块搭配使用,能进一步提升网络的肺野分割性能.
3.3 文中方法对不同X光胸片的分割效果展示
将原始X光胸片数据集进行随机打乱,按照8∶1∶1的比例对训练集、验证集和测试集进行划分,并对训练集进行数据增强,得到的训练集、验证集和测试集分别包含4 512,70,70张X光胸片图像.
将文中方法在增强后的训练集上进行训练,并在验证集上进行验证.训练的迭代次数设置为50个Epoch.网络训练阶段Loss值(L)和准确率(η)变化曲线,如图6所示.
(a) Loss值 (b) 准确率
由图6可知:训练集的Loss值曲线能快速且平滑地下降,在8个Epoch附近就基本收敛,最终Loss值稳定在0.05左右;虽然在30个Epoch附近开始出现轻微的过拟合,但在整个训练过程中,验证集的Loss值能快速跟随训练集Loss值的变化而变化;此外,验证集的准确率也能紧密跟随训练集准确率的变化,这表明文中方法对X光胸片图像具有较强的学习和预测能力,展示了良好的肺野分割性能.
网络训练结束后,采用文中方法在测试集上进行肺野分割实验,结果如图7所示.
由图7可知:文中方法实现了对X光胸片肺野的精确分割,所得肺野形态完整且边缘平滑,有效排除了图像中不同亮度、对比度及骨骼、血管等组织投影对分割过程的干扰,不易受到弱、伪边界的影响,得到图像对角点及凹陷区域的分割结果也较精确.
(a) 图像1 (b) 图像1分割结果 (c) 图像2 (d) 图像2分割结果 (e) 图像3 (f) 图像3分割结果
利用上述4种评判指标进行分割结果的数据分析.文中方法对不同X光胸片的分割结果,如表3所示.由表3可知:在不同的X光胸片上,测得的4个评价指标均获得了较高的数值,这表明文中方法在不同X光胸片上均得到了较精确的肺野分割结果,说明文中方法的有效性.
表3 文中方法对不同X光胸片的分割结果
3.4 不同方法对X光胸片肺野的分割效果对比
设置同一组网络参数,采用U-net网络[10],Attention-Unet网络[9],Deeplabv3+网络[11]和文中方法,在相同X光胸片数据集上进行肺野分割实验.不同方法的分割结果对比,如图8所示.
(a) 原图 (b) 金标准 (c) U-net (d) Attention-Unet (e) Deeplabv3+ (f) 文中方法
由图8可知:U-net网络对模糊边缘区域的分割效果较差,产生了大片的假阳性区域;Attention-Unet网络的肺野分割效果优于U-net网络,但其对边缘的分割不够准确;Deeplabv3+网络保留了更多的细节信息,展现了更好的肺野分割效果,但对伪边界区域的分割仍不够精确;相较于其他3种网络,文中方法所得的肺野形态更完整且边缘更平滑,展示了更好的分割效果,说明文中方法具有更强的肺野分割性能.
对4种方法的分割结果进行评价,得到4种方法在不同数据集上的评价结果,如表4所示.
由表4可知:在Shenzhen数据集上,文中方法的灵敏度和特异性分别为0.991 9和0.991 0,在Montgomery数据集上,文中方法的灵敏度和特异性分别达到0.993 0和0.995 7,说明在肺野分割过程中,文中方法具有更低的错误率;文中方法的Dice系数和交并比在两个数据集上的均值都最高,表明文中方法对X光胸片肺野具有更高的分割准确性和稳定性;文中方法在X光胸片肺野分割任务上的性能优于其他3种方法,与U-net网络相比,分割效果提升明显,交并比平均提升了3.86%,说明文中方法具有更强的特征捕获能力,彰显了更好的网络性能.
表4 4种方法在不同数据集上的评价结果
4 结束语
为了解决利用U-net网络进行X光胸片肺野分割时,受限于特征提取能力不足而导致分割结果不精确的问题,提出一种基于MRAU-net网络的X光胸片肺野分割方法.该方法采用改进的残差模块提升U-net网络图像特征捕获能力,利用MIF模块帮助网络获取丰富的多尺度特征信息,通过CSDA模块改善网络的预测性能,加速网络训练,减少了训练过程中的过拟合现象,避免了梯度消失和梯度爆炸等问题的发生.通过实验对比可知,文中方法展示出了优秀的肺野分割性能,相较于U-net网络,文中方法在分割准确性上有了显著提升,充分说明了文中方法的优越性.