基于2D深度学习网络的全心脏MR图像分割
2020-08-03张博谢勤岚
张博,谢勤岚
(中南民族大学 生物医学工程学院,武汉 430074)
心血管疾病是主要的高致死率疾病之一.如何准确衡量患者心血管功能,有赖于对其生理结构的准确分割进而对其功能参数的准确评估.对心脏图像进行结构分割,计算不同心室活动周期的容积,是生理功能定量分析的基础,并可为多种心脏疾病的临床诊断提供必要支持.因此,探索一种有效的心脏分割算法是十分必要的.
针对基于深度学习的心脏图像分割,研究人员提出了一系列方法.AVENDI等人[1]提出了一种结合深度学习算法和形变模型的方法用于左心室MRI图像分割.由于经典形变模型分割左心室存在容易收缩、对初始化敏感等问题,该方法采用卷积神经网络对数据集中的左心室腔进行自动检测,用堆叠式自动编码器用于推断左心室形状,将推断出的形状合并到可形变模型中,以提高分割的准确性和鲁棒性.TANGO等人[2]介绍了一种深度学习与水平集结合的方法分割左心室.水平集方法需要较少的训练集,该方法基于训练集外观与形状,但是对训练集感兴趣区域变化建模存在局限性.深度学习方法可以使用相对少量的带标注的训练集对这种变化进行建模,但是通常需要正则化来提高泛化能力,作者结合两种方法优点实现左心室分割.
相对传统的心脏图像分割,上述方法的分割精度有所提高,但依然没有实现同时分割左、右心室及心肌的全心室分割,而且训练复杂度较高.针对这些学习方法存在的局限,本文采用全卷积神经网络(Fully Convolutional Neural Network,FCN)中的改进U-net网络进行心脏图像分割,采用添加批归一化层(Batch Normalization,BN)[3]和选择不同的损失函数等改进来提升神经网络性能.最终结合批归一化层与组合加权损失函数,在2017 ACDC数据集上进行了实验评估,得到了较好的分割结果.
1 网络结构
本文网络遵循经典的U-net网络编码与解码结构[4],其网络模型结构如图1所示.在编码路径中,网络学习如何对训练集中的图像特征进行编码;在解码路径中,网络从学习到的编码特征中获取图像特征并重建图像.U-net网络结构的特点在于每级的编码路径输出与解码路径的输入之间的级联,这些级联操作使图像高空间分辨率信息定位到解码路径的卷积网络中,因此,在该信息基础上可生成更准确的输出.
图1 心脏MR图像分割的U-net网络结构
编码路径的每步包括两个相同的3×3卷积.改进U-net网络的每个3×3卷积之后添加批归一化层和一个整流线性单元(Rectified linear unit, ReLU)[5].每层经一个2×2卷积,步长为2的最大池化层用于下采样.网络设置初始特征通道数量为64.每层下采样后,图像尺寸减半,特征通道数量增加一倍.
解码路径的上采样过程中,每步包括两个相同的3×3卷积.同样每个卷积后添加批归一化层和一个ReLU.每层经2×2卷积的上采样后,特征通道数量减半;同时,上采样后的特征图像与来自编码路径相应裁剪的特征图像级联.最后一层网络中加入一个1×1的卷积层,可以将64个特征图映射到心脏分割的四个类(左心室,心肌,右心室,背景),也就是最后一层的输出在softmax分类器处理后,表示像素属于心脏四个分类中某一类的可能性.
2 批归一化层的作用
归一化的作用是对输入数据作归一化处理,使数据满足均值为0,方差为1的高斯分布.在训练迭代过程中,归一化层能够将上一层的输出数据分布恢复到初始状态;处理后的数据再进入网络下一层,使下一层网络输入为初始状态的数据分布,避免网络适应学习新的数据分布.批归一化层将每层网络与维度的大小保持一致,网络训练可以使用较高学习率,从而可以加速网络收敛,降低网络过拟合.
当一个批次(batch)的数据{x1,m}(m为数据量)输入网络训练,经过线性激活单元之后对其作标准化处理.首先计算这个批次的数据均值
(1)
及方差:
(2)
(3)
经过标准化处理后,数据分布被限制为高斯分布,然而某些层的数据分布并不满足高斯分布,这样的标准化操作会影响网络学习能力,通过引入另外的缩放参数γ和平移参数β:
(4)
来避免这种问题.引入的γ和β参数参与网络训练,是一对可学习的参数,可以恢复原始网络所要学习的特征分布.
3 训练损失函数与网络模型超参数
实验使用三种损失函数训练改进的U-net网络.为了计算背景与前景类的差异,使用像素级交叉熵损失函数[6],单独地检查每个像素点,将类预测与one-hot编码的目标矢量进行比较.
实验中,网络训练为了得到比较稳定的梯度,加入了Dice系数.在训练网络softmax输出层计算Dice损失时,用1减去Dice系数得到Dice损失函数:
(5)
其中,A表示真实值(ground truth),B表示经过softmax层输出后的结果,∈为接近于0的常数,设置为e-10.当Dice系数趋近于1时,损失趋于零,损失函数收敛.
神经网络训练多类别目标时,常引入像素级的交叉熵损失函数L:
(6)
其中,M为类别的数量,Pj是softmax的输出P的第j个值(j= 1…M),表示样本属于第j类的概率,yj是正确的标签(使用one-hot表示,当j为某一类时,yj中正确标签的索引值为1,其他均为0).
本文结合像素级交叉熵损失函数与Dice损失函数,引入组合加权损失函数:
Lcroessentropy_dice=αL+βLdice_loss,
(7)
其中,L为像素级交叉熵损失函数,Ldice_loss为Dice损失函数,α,β为二者各自的权重,α=1,β=0.2.
为了降低损失函数,本文使用自适应矩估计(Adaptive Moment Estimation, ADAM)[7]优化器,学习率为0.001, batch size(一次训练数据量)为4,epoch(训练轮数)为130次.
4 实验结果与分析
4.1 实验数据简介
实验数据集来自于MICCAI 2017自动心脏诊断挑战比赛(Automated Cardiac Diagnosis Challenge, ACDC)[8]短轴心脏MR图像.公开的数据集为100例患者MR图像的训练集,每个患者包含心舒张末期(End-Diastolic, ED)与心收缩末期(End-Systole, ES)两组数据.该数据集空间分辨率范围为0.70mm×0.70mm至1.92mm×1.92mm.金标准图像中包含四个像素区域:0代表背景,1代表右心室,2代表左心室心肌,3代表左心室.
由于该数据集的测试集是不公开的,我们将100例患者MR图像重新分为包括70例患者图像的训练集和15例患者图像的验证集,剩余15例患者的MR图像作为测试集.如图2分别表示的是一个患者的心脏切片原始图像和对应的金标准.实验数据集中图像数量偏少,实验中采用了数据增强方法,通过随机裁剪,旋转、翻转操作来扩充实验图像数量,数据增强操作在网络训练中进行,以减少数据存储.
(a) 心脏原始图像 (b) 金标准
4.2 评估指标
为了评估分割后图像与标签图像的相似度,使用三种评估系数:Dice系数((Dice coefficient)、豪斯多夫距离(Hausdorff Distance, HD)[9]、平均对称表面距离(Average Symmetric Surface Distance, ASSD),这三种是评估医学图像分割好坏的常用指标.
Dice系数是衡量两个分割结果与金标准图像之间的重合程度:
(8)
其中,A表示真实值(ground truth),B表示经过softmax层输出后的结果,是经过网络模型分割后得到的心脏图像.Dice系数的范围为0到1:Dice值趋近1,表明心脏图像分割的效果好;Dice值趋近0,表明和心脏图像分割效果不好,与金标准图像重合程度也较低.
豪斯多夫距离是指某一集合中离另一集合最近点的所有距离的最大值:
H(A,B)=
(9)
其中,A表示金标准图像,B表示分割结果,d(a,b)计算的是欧氏距离.
平均对称表面距离是基于表面距离的度量指标,指的是金标准A的表面像素S(A)与分割结果B的表面像素S(B)之间的距离:
∑SB∈S(B)d(SB,S(A))),
(10)
A表示金标准图像,B表示分割结果,S(A)与S(B)分别表示A和B的表面像素的集合,d(SA,S(B))表示S(A)上任意一点到S(B)上所有点的欧氏距离的最小值.
4.3 实验结果分析
(1)使用不同损失函数网络训练的测试结果比较
使用不同损失函数训练提出的网络,并使用Dice系数和平均对称表面距离两种评估指标评估ED、ES阶段左、右心室和心肌分割结果,并统计两个阶段分割结果的均值,如表1所示.结果表明,实验结果最差的是使用Dice损失函数,最好的是结合Dice损失与像素级交叉熵损失函数的加权组合损失函数.通常使用Dice损失函数会对反向传播造成不利影响,容易使训练变得不稳定,但它可以从图像中较小的类学习;而像素级交叉熵函数多用于多分类任务,但是对类别不平衡问题,易受像素较多的类别影响,较少像素的类别很难学习到其特征.因此结合两者优点,将这种组合加权损失函数作为实验网络训练的损失函数.
表1 基于改进的U-net网络的三种损失函数的平均分割精度对比
(2) 使用组合加权损失函数网络训练的测试结果
改进的U-net网络使用新的组合加权损失函数,得到的网络模型用于分割ED、ES阶段左、右心室和心肌,统计实验的分割精度值,统计结果如表2.数据表明ED阶段左心室Dice系数最高,ES阶段右心室最低,ES阶段右心室有最高的Hausdorff距离和最低的Dice系数,说明此方法存在右心室分割困难的问题,这可能与右心室形状不规则有关.
表2 基于改进的U-net网络分割精度值对比
图3是改进的U-net网络在测试集中的分割结果.从左到右,第一列为原始图像,第二列为分割结果,第三列为对应的真实值,图中红色、绿色、蓝色区域分别代表右心室、心肌、左心室.第二列的分割结果表明,该方法在数据集中的中间层切片分割出比较准确的结果,但是在基底与顶部的切片上分割结果较差,导致这样的结果一方面可能是心脏顶部切片包含心室像素太少,心室边界有时难以确认,另一方面可能有心室周围密度接近的组织干扰等.
图3 用于测试的ACDC训练集子集上的心脏周期的ED与ES阶段的分割结果
(3)与其他方法的测试结果比较
本文实验方法对比了不同作者的分割方法,每种方法均对MICCAI 2017心脏数据集分割,使用Dice系数与Hausdorff距离两种评估指标统计了他们的方法分割左、右心室和心肌精度值,统计结果如表3.从统计的结果看,本实验分割结果相比其他方法,左心室在ED、ES阶段Hausdorff距离值最低,表现最好,心肌在ED阶段Hausdorff距离值也是最低,表明实验训练网络加入组合加权损失函数,提升了网络分割精度,说明本文实验方法具有一定的优势,分割结果较理想.
表3 不同分割方法的分割精度统计
6 结语
实验采用深度学习方法分割心脏图像,通过在神经网络中添加批归一化层与使用不同的损失函数,能有效改进实验结果.本文的方法还有待提高.在后续研究中,考虑将其他网络结构加入U-net网络的下采样过程,对网络下采样结构进行改进,同时,网络所选取的损失函数对实验结果的影响较大,设计新的损失函数可能对实验精度带来一定的提升.此外,由于本实验所采用的心脏图像本身是三维医学图像,探究3D卷积神经网络对短轴心脏图像的分割精度是否有提升,这可能是后续的一个研究方向.