改进Unet++在脑肿瘤图像分割的研究

2022-06-23 11:00侯奕辰谢俊章曾庆喜
计算机工程与设计 2022年6期
关键词:残差损失卷积

侯奕辰,彭 辉,谢俊章,曾庆喜

(成都信息工程大学 软件工程学院,四川 成都 610200)

0 引 言

肿瘤治疗主要包括前期对肿瘤的体积位置进行测量,中后期分割正常和病变组织[1,2]。MRI(magnetic resonance imaging)核磁共振成像是一种放射成像领域常用的技术,由于MRI图像多模态,复杂的特点,医生很难精确地手动分割,如何高效、精确且自动地对MRI脑肿瘤图像进行分割成为了研究热点[3]。

脑肿瘤分割有基于阈值、区域、像素分类等传统分割算法[4]和基于卷积神经网络的分割算法等。相比传统分割算法,卷积神经网络是目前用于分割的主流算法。目前在医学图像上表现更佳的是由Long等[5]提出的全卷积网络改进而来的Unet系列的网络[6]。在Unet的基础上,Özgün等[7]提出了3DUnet,Fausto等[8]提出了3DVnet,是目前主流的3D网络框架,3D网络结构与2D网络基本一致,主要是将卷积、池化等2D方法换成了3D,优势是能将3D图像整张输入网络训练,能提取到更多空间信息,缺点是模型参数量增大,需要有更强的计算能力和显存资源。Zhou等[9]在Unet基础上提出了Unet++网络,该网络加入了深度监督,将跳跃连接改进为密集的短连接,可以抓取不同层次的特征,并将它们通过叠加的方式进行整合,但相比3D网络在分割精度上还是有些许劣势。

针对上述问题,本文保留了Unet++网络原大体结构,为了提高分割精度,提升网络性能,在该网络结构基础上进行改进的主要内容如下:将残差块和数据相关性Dupsampling上采样方法分别融入Unet++网络结构中的编码和解码阶段,改进了激活函数,提高了网络特征提取的能力,明显提高了分割精度。针对MRI脑肿瘤图像存在不均衡的特点,在网络训练阶段引入了交叉熵和Dice结合的混合损失函数,进一步提高了分割精度。

1 本文方法

1.1 改进的Unet++网络结构

本文提出的网络在Unet++网络结构基础上进行改进,保留了原始网络的大概结构,包括保留了4次下采样和4次上采样以及最大通道数1024;保留了密集的短连接,将图像的低级语义和高级语义更好地融合,减少信息损失;保留了深度监督模块,对Encoder编码部分的每一层提取的特征图进行上采样,在网络最上层通过1×1卷积降维后进行输出,相当于对网络编码部分的每一个分支进行监督,输出效果最好的特征图。

改进的Unet++网络结构如图1所示:在编码阶段的每一层中如X(0,0)到X(4,0), 用残差块即Mish(2×(Conv3×3+BN+Mish)+(Conv1×1+BN)) 代替原始网络的两次3×3卷积+BN(batch normalization)批量标准化和激活操作,层与层之间使用Maxpooling最大池化方式进行下采样;在解码阶段如X(i,1-4), 使用数据相关型Dupsampling上采样方式代替原始网络的双线性插值上采样方式;在网络的编码和解码阶段,用Mish激活函数代替Relu激活函数。编码部分和解码部分通过Skip-connection跳跃连接将不同层的语义特征进行融合;在网络最上层使用4个Conv1×1分支将每一层上采样的结果降维后进行输出。

图1 改进的Unet++网络结构

1.2 残差块

Unet++网络的编码部分是通过使用多个卷积操作来提取特征,当网络层数加深时,网络训练会变得困难,且特征提取能力不足。为了提取图像更多的语义信息,提高特征提取的能力以及防止梯度消失,本文结合残差网络的思想,在网络编码部分的特征提取阶段使用残差块(resi-dual block)[10]代替原始网络的两次卷积加上BN标准化以及激活操作的结构。一个残差块有F(x)和x两条路径,F(x)路径拟合残差,x路径为identity mapping恒等映射。针对Unet++网络的结构,本文使用的改进残差块如图2所示,相比原始Unet++编码部分的卷积块,该残差块多了一个1×1卷积加上BN标准化的分支,相当于残差块的x恒等映射,该分支由于保留了浅层网络的特征,可以使网络随着深度增加而不出现退化的问题。另一分支是由两组3×3卷积+BN标准化+Mish激活函数组成,最后将个两分支进行连接,经Mish函数激活后进入下一个残差块作为输入。

图2 残差块(residual block)

1.3 上采样

Unet++网络同Unet网络一样也是基于Encoder-Decoder编码解码模型的框架,其主要流程是通过卷积操作对图像进行特征学习,由于卷积操作提取的特征图相比原图像会缩小,一般是原图像的1/16或者1/32,所以在Decoder解码端需要通过上采样将图像恢复至原始图像大小才能作为最终的预测图像。之前最常使用的上采样方法是双线性插值上采样方法,该方法虽然能满足恢复图像大小以及大部分特征信息的要求,但是这种过于简单且数据无关性的双线性插值上采样方法仍然不是最好的选择。

为此,本文采用一种由Tian等[11]提出的基于数据相关性的新型上采样方法名为Dupsampling,该方法同双线性插值方法一样,都能在Decoder解码端将图像像素翻倍,直至恢复原始图像大小,但由于该方法强数据依赖性的特点,即能通过像素与像素之间的相关性在解码时恢复更多的图像特征信息,从而产生更高质量的分割结果。

Dupsampling上采样结构如图3所示,F为经过Encoder编码端提取特征后低分辨率的特征图,F中左上角第一个维度为1×C的块可以看作特征图中的一个像素,C为F的通道数。W是一个待训练矩阵,维度为C×N。将特征图中的每个像素x分别与矩阵W进行矩阵相乘,得到维度为1×N的向量v作为一个特征表示,最终通过Rearrange重组方法将向量v从维度1×N重组为维度2×2×N/4,此时已经对F中第一个维度为1×C的块进行了2倍上采样。

图3 Dupsampling结构

W是根据已知的训练标签得到的,也就是真正的分割结果,对每个分割结果进行一个矩阵转换,将其转换为编码模块得到的特征图相同的维度。该过程为线性映射,形式化定义为式(1)

(1)

(2)

本文通过融入该方法于Unet++网络解码端进行上采样编码端提取到的特征,相比使用双线性插值上采样方式的分割网络,该方法在上采样时已经计算并最小化了特征图和被压缩标签的像素点之间的损失,并融合了高级语义特征和低级语义特征,从而使得上采样后恢复分辨率的图像更为准确。

1.4 激活函数

在卷积神经网络中,输入数据一般经过卷积层提取特征,再由批量规范化层将数据进行均值为0,方差为1的标准化处理,最后使用激活函数进行非线性化操作,引入更多的非线性因素,增加神经网络模型的非线性变化,提高神经网络模型的信息表达能力。

Relu激活函数和Mish激活函数如图4所示。传统神经网络使用最多的激活函数是Relu[12],Relu激活函数图像如图4(a)所示,当函数输入值为负时,函数值为0,当函数输入值为正时,函数值等于输入值,该激活函数的缺点是输入数据为负时,由于Relu函数的曲线过于平直会出现Dead Relu Problem(神经元坏死现象),即x<0时,梯度为0,不再对任何数据有所响应,因此会产生梯度消失的问题,网络难以更好地训练。MRI脑肿瘤图像数据存在一些数据为负的情况,使用Relu激活函数的效果并不是最好。针对这些问题,本文采用Misra等[13]提出的Mish激活函数,Mish激活函数图像如图4(b)所示,该函数同Relu函数一样,以上无边界(即正值可以达到任何高度),避免了由于封顶而带来的饱和,但对数据负值时有平滑的曲线,允许更好的梯度流,能有效避免梯度消失的问题,且平滑的曲线能使更多的特征信息进入网络,提高网络的准确性和泛化性。Relu激活函数和Mish激活函数的公式分别如式(3)和式(4)所示

Relu(x)=max(0,x)

(3)

Mish(x)=x*tanh(ln(1+exp(x)))

(4)

图4 Relu和Mish激活函数图像

1.5 损失函数

在网络训练阶段,本文采用融合了(cross entropy loss function)交叉熵损失函数和Dice两种损失函数结合的混合损失函数。Dice损失函数最早提出主要是解决NLP(natural language processing)自然语言处理中数据不均衡的问题[14],后面用在医学图像小目标分割中也有很好的效果。由于MRI脑肿瘤图像中存在前景和背景特征分布不均衡的问题,例如图像中存在器官像素的数量远小于背景像素数量,单个交叉熵损失函数会使模型严重偏向于背景,导致效果不好,所以本文添加了Dice损失函数来弥补单个交叉熵损失函数的不足。Dice损失函数和交叉熵损失函数的公式分别如式(5)和式(6)所示

(5)

(6)

其中,pi和gi分别为预测图像和标签图像中的像素点,本文使用的混合损失函数为这两种损失函数之和,即式(5)和式(6)相加。

2 实验过程与结果分析

2.1 实验平台

本文的实验环境为:Python3.7,Pytorch1.6深度学习框架,cuda10.2版本,Windows10操作系统,NVIDIA TAITAN Xp显卡,显存大小为12 G,处理器为Iterl(R) Xeon(R),运行内存为64 G。

2.2 数据集

2.2.1 数据集分析

本文使用的数据为MICCAI Brain Tumor Segmentation (BraTS) 2019年和2018年的数据集,该数据集是脑胶质瘤患者的3DMRI核磁共振图像,其中2018年数据集高级别胶质瘤(HGG)病例和低级别胶质瘤(LGG)病例总共有285例,2019年数据集在2018年原有数据集的基础上增加了50例,包括49例高级版胶质瘤病例和1例低级别胶质瘤病例。每一例患者的3D核磁共振图像包含T1、T1ce、T2和FLAIR这4种模态,以及专家进行手动标注的标签(GT金标准图像)。本文网络模型与标签一样将脑胶质瘤图像分割为3个区域,包括整体肿瘤区域、核心肿瘤区域和增强肿瘤区域。本文使用2018年数据集的训练集作为训练集和验证集,将2019年新增数据集的训练集作为测试集。图5为2018年数据集中其中一例病例的侧面和顶部图像展示,其中图5(a)~图5(d)分别为FLAIR、t1、t1ce和t2这4种模态的顶部和侧面脑肿瘤图像,图5(e)为专家标注的脑肿瘤标签图像。

图5 BraTS18数据集中一例数据的侧面和顶部图像

2.2.2 数据集预处理

BraTS18年和BraTS19年的数据已经做了许多预处理工作比如去颅骨重采样以及数据配准等,由于MRI图像数据本身的特点,要用于本文的深度神经网络中并有助于网络训练,还需要进一步进行处理,主要包括标准化、偏置场校正、裁剪、切片、合并等。

由于图像采集时的不正确操作或者图像本身的特性,核磁共振的图像会存在一些偏置场,是一种不良伪影,会使图像产生灰度值亮度偏差,影响分割精度。所以,本文采用N4偏置场校正算法来校正图像中的偏置场。N4偏置场校正算法目前应用较为广泛,在众多医学图像处理中取得了不错的效果。本文采用的N4偏置场校正算法对其中某一图像处理结果与原图像对比如图6所示,其中左边图像为原始FLAIR图像,右边图像为N4偏置场矫正后的图像。

图6 N4偏置场校正前后图像

BraTs数据集中不同模态的图像都有着重要的信息,为了解决不同模态图像存在的对比度差异问题,本文使用了Z-Score方法,该方法对图像中含有器官的部分都进行零均值标准化和单位标准差标准化。

MRI图像都有黑色背景占很大一部分的特点,就会导致图像中脑肿瘤区域占比很小,黑色背景对于分割没有任何帮助,反而会导致数据类别不平衡,所以需要对MRI图像进行裁剪,使脑肿瘤区域占比更大。

MRI图像为3D图像,不能在2D网络进行训练,为了适应本文提出的2D网络,所以需要对图像进行切片为2D图像,并抛除无病灶的切片,同样是解决数据类别不平衡的问题。又由于MRI图像多模态的特点,需要将各模态的切片合并组成多通道图像输入网络。经过裁剪切片组合后的图像为160×160×4,即长宽为160,通道数为4。

2.2.3 评价指标

本文使用Dice相似系数(dice similarity coefficient,DSC)和豪斯多夫距离(Hausdorff distance)两个指标对最后的分割结果进行评价。

(1)Dice相似系数

Dice相似系数是评价脑肿瘤分割结果常用的评价指标,表示标签中真实区域和预测图像区域重合的部分占两者之和的百分比,是一种几何相似度度量的指标。Dice相似系数的公式如式(7)所示,其中TP、TN、FP、FN分别代表真阳性、真阴性、假阳性、假阴性

(7)

(2)豪斯多夫距离

豪斯多夫距离用来衡量两个点集之间的距离,定义公式如式(8)、式(9)所示

(8)

(9)

式(8)表示点集A到点集B的豪斯多夫距离,式(9)表示点集B到点集A的豪斯多夫距离,双向豪斯多夫距离为这两者中较大的值,它能度量这两个点集之间的最大不匹配程度。

2.3 实验结果分析

本文训练数据集为BraTS18年的训练集,测试数据集为BraTS19年较18年多出来的50例数据。表1是在该50例测试数据中各种实验方法的对比结果,图7为Unet系列网络的分割结果对比展示,图8为改进的Unet++网络训练的loss值下降曲线。其中这些方法学习率为0.03,batch size统一为12,学习批次epoch根据不同模型训练过程有所不同,但是均不超过200都已得到相对稳定、较好的效果。

表1 不同方法分割精度

图7 不同方法分割结果

图8 训练loss曲线

在表1中,Dice WT(whole tumor)、Dice TC(tumor core)、Dice ET(enhancing tumor)分别为整体肿瘤区域、核心肿瘤区域以及增强肿瘤区域在Dice分割指标下的分割精度,HD(Hausdorff distance)WT、HD TC、HD ET分别为整体肿瘤区域、核心肿瘤区域以及增强肿瘤区域在豪斯多夫距离分割指标下的分割精度。由表1实验对比结果所示,在Unet++网络结构中融入了残差块、基于数据相关性的Dupsampling上采样方法、Mish激活函数以及交叉熵和Dice损失函数结合的混合损失函数对MRI脑肿瘤图像分割精度有明显的提升,且对比Unet、3DUnet、3DVnet以及Unet++在分割精度上有明显的优势,整体肿瘤区域、核心肿瘤区域和增强肿瘤区域Dice系数分别达到0.9236、0.8745、0.8404,Hausdorff距离为1.806、2.994、1.865。由图7分割结果所示,不规则形状中最外层最大的为浮肿区域,中间层为增强肿瘤区域,最里层最小的为坏疽,且浮肿区域和增强肿瘤区域中间也有部分坏疽。WT全肿瘤区域包括了浮肿区域、增强肿瘤区域和核心肿瘤区域,TC核心肿瘤区域包括了增强肿瘤区域和坏疽,ET为增强肿瘤区域。改进的Unet++网络分割结果相比前几种方法在整体肿瘤区域和核心肿瘤区域更接近标签GT图像,在3个区域的边缘轮廓分割结果也更为精确。在图8训练loss曲线可以看出,本文改进的Unet++方法在125次迭代之前就已经达到较低值且损失值波动较小,逐渐趋于平稳,对比3DUnet和3DVnet以及Unet和Unet++损失值都整体明显低一些。通过对比可以看出,本文改进的Unet++网络在MRI脑肿瘤自动分割网络较原始Unet++网络有明显提升,相比其它分割网络也有明显的优势。

3 结束语

本文根据MRI脑肿瘤图像的特点以及针对目前医学图像分割网络存在的问题提出了改进的Unet++网络用于MRI脑肿瘤图像自动分割。主要贡献如下:将改进的残差块(residual block)融入Unet++网络编码层的特征提取部分,代替原始网络中单纯的卷积结构,提升了特征提取精度并防止网络退化;用基于数据相关性的Dupsampling上采样方式代替双线性插值上采样方法,提高上采样过程中生成特征图的质量,同时也加快了网络收敛速度;在网络的每一层用Mish激活函数代替Relu激活函数,Mish更加平滑的曲线会使网络提取更多信息,提高网络的泛化性和准确性;使用Dice损失函数和交叉熵损失函数结合的混合损失函数,弥补单个损失函数在数据出现不均衡时的不足。实验结果表明,本文提出的改进Unet++网络相比Unet++以及Unet等主流网络有较明显的精度优势,但2D网络仍然会存在丢失一些3D图像空间信息的问题。在后面的工作中会根据2D网络的问题以及3D网络参数量过大等问题继续优化网络,提升分割效果。

猜你喜欢
残差损失卷积
基于残差-注意力和LSTM的心律失常心拍分类方法研究
基于双向GRU与残差拟合的车辆跟驰建模
基于3D-Winograd的快速卷积算法设计及FPGA实现
胖胖损失了多少元
基于残差学习的自适应无人机目标跟踪算法
卷积神经网络的分析与设计
基于深度卷积的残差三生网络研究与应用
从滤波器理解卷积
玉米抽穗前倒伏怎么办?怎么减少损失?
基于傅里叶域卷积表示的目标跟踪算法