三维卷积网络在脑海马体分割中的应用*
2020-03-19肖志勇吴鑫鑫
刘 辰,肖志勇,吴鑫鑫
江南大学 物联网工程学院,江苏 无锡214122
1 引言
海马体位于大脑丘脑和内侧颞叶之间,主要负责长时记忆的存储。同时海马体的体积和功能的异常与阿尔兹海默病(Alzheimer's disease,AD)等精神疾病紧密相关[1-2]。因此,为了辅助医生对相关的精神疾病进行诊治和治疗,需要对海马体进行精确的分割。
针对脑磁共振成像(magnetic resonance imaging,MRI)海马体的分割方法主要分为以下几类:手动的分割方法[3-4]、基于图谱的分割方法[5-7]、基于形变模型的分割方法[8-9]和基于深度学习的方法[10-12]。通常手动的分割方法很繁琐、耗时,而且容易出错。基于图谱和形变模型的方法通常依赖于分类器、优化器等其他的辅助技术,往往分割精度也不是很高。
近几年,随着深度学习的不断发展,卷积神经网络在医学图像处理领域中得到了广泛的运用[13]。Chen等人[10]首先通过U-Seg-Net 对MRI 图像的2D 切片进行分割,然后通过2D 切片图像序列重建得到3D 海马体的分割结果。Chen 等人[11]采用全卷积网络与循环神经网络结合的方法实现了海马体的分割。虽然这些方法达到了相对较高的分割精度,但由于它们都是对MRI 图像的2D 切片进行处理的,从而不能充分考虑到切片间的相关性,容易产生不连续、不光滑的分割结果。Cao 等人[12]通过改进3DUnet[14]网络,实现了海马体的分割,但该网络没有高效地结合MRI图像的深层和浅层特征,因此分割精度不是很高。
为了高效地结合MRI 图像的深层和浅层特征,实现海马体的三维精确分割,同时避免参数模型过大以及计算负担较大的现象,本文对3DUnet 网络进行改进,提出了Dilated-3DUnet 网络模型。Dilated-3DUnet 由编码和解码两部分组成。为了精简网络模型,同时又不降低网络的性能,本文对原3DUnet网络进行改进。在编码部分中,采用金字塔结构的通道数分布。考虑到3DUnet网络的深层和浅层特征结合得不够充分,本文增加了级联卷积层,代替原来的级联操作。考虑到普通卷积层的感受野固定,在级联卷积层中,使用空洞卷积代替一般的卷积操作,这样不仅高效地结合脑MRI 图像的深层特征和浅部特征,而且在不扩大参数规模的同时,能够扩大卷积层的感受野,提取多尺度信息,使得Dilated-3DUnet 网络能够捕捉更多的浅层特征,从而提升网络的分割性能。
本文的主要流程如图1 所示,首先为了提高分割精度,对数据集中的样本进行了预处理,预处理主要包括对图像进行裁剪和归一化。之后将预处理的图像输入到Dilated-3DUnet 中进行训练,从而得到海马体的分割模型。再将每个图像送到已经训练好的新型三维网络中,得到分割结果。
2 相关工作
2.1 3DUnet模型
生物医学影像如CT(computed tomography)、MRI往往都是三维的,如果采用全卷积神经网络[15]和UNet[16],需要先对三维图像进行切片处理,然后再送到全卷积神经网络或U-Net 网络中进行分割。这种方法不仅效率低下,而且容易丢失2D 切片之间的相关性,影响分割精度。为此Çiçek 等人[14]提出了3DUnet模型,3DUnet 的模型是基于U-Net 创建而来的,它同样包含了一个编码部分和一个解码部分,编码部分使用卷积层进行特征提取,使用最大池化层来缩小特征图的尺寸。解码部分使用反卷积来放大特征图,再通过级联操作获得更大的特征图的范围,然后使用卷积提取更有效的特征。与U-Net 不同的是,3DUnet 使用的是三维的卷积、池化和反卷积。由于3DUnet 是对三维图像中的体素直接进行处理的,这样充分考虑了三维图像中的空间信息,大大提升了分割精度。
2.2 空洞卷积
Fig.1 Flow chart of proposed algorithm图1 本文算法的流程图
为了增加卷积层的感受野,二维空洞卷积(2D dilated convolutions)[17]在医学图像分割领域得到了广泛的运用。普通二维的卷积和空洞卷积的对比如图2 所示。图2 左边显示的是经典的3×3 的卷积核的视野效果,相当于卷积核为3,膨胀系数r=1 的空洞卷积;图2 右边对应的卷积核为3,膨胀系数r=2 的空洞卷积。但是卷积核的计算视野增大到了7×7,而实际上卷积核的大小仍然是3×3,实际参数只有3×3。感受视野公式如下:
其中,r表示膨胀系数,Fr表示最终的感受视野。因此空洞卷积在保持参数个数不变的情况下增大了卷积核的感受野,同时它可以保证输出的特征映射(feature map)的大小不变。
Fig.2 2D ordinary convolution and dilated convolution图2 二维普通卷积和空洞卷积
3 本文算法原理
3.1 网络模型
为了简化3DUnet规模,且能够更多地捕捉脑MRI图像的浅层特征,使得分割效果更好,本文在3DUnet网络的基础上,构建了Dilated-3DUnet 分割模型,其网络结构图如图3 所示。与3DUnet 相似,Dilated-3DUnet 由编码部分和解码部分两部分组成,编码部分中包括4 组卷积和3 次下采样操作。与之对应的是,解码部分中包括4 组卷积和3 次上采样操作。Dilated-3DUnet 结构中使用的卷积核的大小都为3×3×3,卷积的步为1×1×1,为了加速网络的收敛,防止网络的过拟合,卷积层之后添加了Batch-normalization[18],激活函数采用了ReLU[19]。最大池化层的大小为2×2×2,步长为2×2×2。最后输出层使用的卷积核的大小为1×1×1,激活函数为sigmoid 函数。
考虑到随着网络层数的加深,3DUnet 存在着参数规模较大、计算负担较大的问题,本文借鉴文献[20]的思想。文献[20]提出,在医学图像处理中,并不需要按照传统的3DUnet 网络进行参数设置,适当改变卷积的通道数,缩小参数规模,亦可以取得不错的效果。本文将这种思想运用在Dilated-3DUnet 网络的编码部分。与3DUnet 网络的编码部分不同的是,本文中编码部分的通道数分布呈现“金字塔”结构,如图4 所示。每组卷积层的通道数从上到下依次为32、64、128、256。相对于原始的3DUnet 网络,Dilated-3DUnet 网络模型变得更加精简,大大缩减了参数的规模。
Fig.3 Structure of proposed Dilated-3DUnet图3 Dilated-3DUnet网络结构
Fig.4 “Pyramid”structure in CNN model图4 卷积模型中的“金字塔”结构
为了更好地结合网络中深层特征和浅层特征,在3DUnet 网络的基础上,本文算法加入了级联卷积层,代替原有的级联操作。与普通的卷积层相比,空洞卷积不仅没有增大参数的规模,而且还能扩大感受野,从而获取多尺度信息,这样可以提取更多的浅层特征,有利于特征融合,提升分割精度。因此,本文使用空洞卷积作为级联卷积层。
为了实现海马体的三维全自动分割,本文将二维空洞卷积拓展和延伸到三维立体图像中,图5 展示了三维空洞卷积模型,在参数保持不变的情况下,大大增加了三维卷积层的感受野。对卷积核为3×3×3的卷积层而言,随着膨胀系数逐渐增加,卷积层的感受野也随之增加。膨胀系数r=2 的三维空洞卷积,感受野为7×7×7;膨胀系数r=4 的三维空洞卷积,感受野为15×15×15,但是参数的个数没有变,依旧是3×3×3=27。通过多次实验比较,本文最后使用的是卷积核为3×3×3,膨胀系数r=2 的三维空洞卷积。
Fig.5 3D ordinary convolution and dilated convolution图5 三维普通卷积和空洞卷积
3.2 损失函数
常用的softmax 损失函数是基于像素点的,与之不同,Dice 损失函数[21]是基于区域的损失函数,医学图像分割中,Dice 指标常被用来衡量目标区域和检测区域的重合程度,Dice 值越大,两者重合度越高,分割效果越好。Dice 函数是Dice 指标的改进版,Dice 函数是对每个区域独立评价后对网络参数进行反馈的函数,该函数的计算形式和计算过程都很好地契合脑MRI 海马体分割。因此,本文使用的是Dice 损失函数。其定义如下:
其中,g代表真实值(Ground-truth);p代表网络的预测值(predicted value);n代表每个图像块的体素点的个数。由于使用Dice 作为损失函数,因此在将概率图谱与专家标记进行比较时,标签值为0 的背景部分将不会被计算到损失中,从而避免了类别不均衡的情况,同时能够加速网络的收敛,提升分割精度。
4 实验结果与分析
4.1 实验数据集
本文的数据集来自ADNI(Alzheimer’s disease neuroimaging initiative)数据库(http://adni.loni.usc.edu/),ADNI 主要用于阿尔茨海默病的早期发现与追踪。本实验从ADNI 库中获得100 组脑部MRI 图像和已分割的海马体标签,该数据的格式均为NIFTI 格式。其中包括41 组轻度认知障碍(mild cognitive impairment,MCI)和59 组正常(controls normal,CN)。从中随机选取80 组用于交叉验证,本文使用的是十折交叉验证,剩下的20 组用于测试。
为了提高分割精度,本文对数据进行了预处理操作,主要包括两部分。第一部分,考虑到海马体部分只占整幅图像的小部分,其他的大部分均为无效区域,本文对MRI 图像进行了裁剪,将所有的图像均裁剪成尺寸为80×80×40 的图像。这样不仅丢弃了混杂的背景信息,同时还解决了背景部分体素值远远大于海马体部分而引起的分类不平衡的问题。第二部分,考虑到数据集中MRI 图像的体素值不一致,同时为了加速网络的收敛,本文采用均值和标准差的方法对图像进行了归一化。
为了验证数据集中样本的个数对实验结果的影响,构造了两组数据集:第一组为进行预处理以后的100 组数据集;由于数据集中样本数量较少,对预处理以后的100 组MRI 图像采用左右翻转和旋转的方法进行了数据增强,最终得到400 组MRI 图像,并将其作为第二组数据集。
4.2 参数设置
本实验中,使用glorot 正态分布的方法对权重进行初始化,采用3.2 节中提到的Dice 损失函数,使用Nadam 优化器,其中Nadam 的参数为lr=0.001,beta1=0.9,beta2=0.999,epsilon=1E-8,decay=0.004,学习率设置为0.001,训练的batch size 取16。为了验证本文提出的新型三维卷积网络的性能,采用十折交叉验证的方法,实验的硬件环境为NVIDIA GTX1080Ti单个GPU,Intel Corei7处理器,软件环境为Keras2.2.4。
4.3 评价指标
为了定量评估新算法的性能,本文选用相似性系数(dice similarity coefficient,DSC)、灵敏度(sensitivity,SEN)和阳性预测率(predictive positivity value,PPV)作为海马体的分割结果的评价指标。相似性系数表示了实验分割结果和真实海马体之间的重叠程度,灵敏度描述了正确分割的海马体占真实海马体的比例,阳性预测率表示分割正确的海马体占分割结果为海马体的比例,这些都是常用的分割海马体的评价指标,定义如下:
其中,P表示算法分割的海马体区域,T表示专家手动分割的海马体区域;P⋂T代表算法的分割区域与专家手动分割区域交集部分的体素区域。
4.4 比对实验
为了验证本文提出的Dilated-3DUnet 网络模型的优越性,进行了3 组比对实验:(1)原来的3DUnet模型;(2)按照“金字塔”分布的方式,更改原3DUnet网络中的通道数,构建新的Pyramid-3DUnet 模型;(3)在Pyramid-3DUnet 网络模型的基础上,添加级联卷积层,其中级联卷积层使用的是普通的卷积核大小为3×3×3,步为1×1×1 的三维卷积,得到新的模型3DUnet-C 模 型。3DUnet-C模型与Dilated-3DUnet 模型相比,只有级联卷积层不一样,一个是三维普通卷积,一个是三维空洞卷积。
4.5 实验结果
4.5.1 样本的数量对实验结果的影响
本文对数据增强前的100 组数据集和数据增强后的400 组数据集,分别采用Dilated-3DUnet 网路进行分割,采用4.3 节中的评价指标进行评估,得到的结果如表1 所示。
从表1 中可以看出,数据增强能够大大提升分割的精度。这也充分证明了深度学习模型构建过程中数据集的重要性,数据集的大小能直接影响模型的性能。
Table 1 Segmentation results on 100 datasets and 400 datasets表1 100 组和400 组数据集上的分割结果
4.5.2 网络模型对实验结果的影响
使用4种网络模型3DUnet、Pyramid-3DUnet、3DUnet-C 和Dilated-3DUnet 在400 组数据集上采用交叉验证得到分割结果,具体如表2 所示。从表中可以看出,Dilated-3DUnet 的性能是最优的。Pyramid-3DUnet 较3DUnet 而言,不仅减少了参数数量,分割精度也得到了提升。3DUnet-C 与Pyramid-3DUnet相比,虽然添加了级联卷积之后,整体的参数规模有所扩大,但是整体的参数的个数还是比3DUnet少很多,而且DSC、SEN、PPV均高于Pyramid-3DUnet,说明级联卷积层可以更高效地组合特征图,提高分割精度。
Table 2 Comparison of segmentation results of various network structures表2 各种网络结构的分割结果比较
与3DUnet-C 相比,Dilated-3DUnet模型的整体参数个数没变,但分割精度更高。这也证实了空洞卷积在不增加参数的情况下,能扩大卷积核的感受野,提取了多尺度信息,使得网络能够捕捉更多的海马体特征,从而提升了分割性能。
为了更直观地对3DUnet 和Dilated-3DUnet 模型进行比较,对两种模型上的测试结果进行分析,结果如图6 所示。从中可以看出,Dilated-3DUnet 模型的DSC、SEN和PPV指标都优于3DUnet。说明本文方法可以更好地从混杂的背景中识别出海马体区域,从而使分割精度更高。
除此以外,随机挑选了两个测试案例,分别使用3DUnet和Dilated-3DUnet模型进行分割,得到的三维分割结果如图7 所示。由于Dilated-3DUnet模型中使用了三维空洞卷积,扩大了感受野,提取了多尺度的信息,因此能够捕捉更多海马体区域,特别是一些细小的边缘区域。如图中白色虚线框所示的一些边缘区域,3DUnet 模型在这些地方的分割结果相对平滑,而本文的Dilated-3DUnet 模型能够很好地捕捉这些细小区域的形状变化,从而实现更精确的分割。
4.5.3 与其他算法比较
为了更好验证本文的性能,本文对ADNI 数据集上各种海马体分割算法进行了比较,所提出的方法主要与文献[11]和文献[12]对比,采用文献[11]和文献[12]中的方法,对本文的数据集进行分割,得到的结果如表3 所示。文献[11]首先对3个视图下的2D 切片进行分割,然后将3个视图下的分割结果重建得到最终的分割结果。这样会丢失大部分的MRI 图像的立体信息。文献[12]通过多任务的神经网络,实现了海马体的分割和临床评分回归,但是分割网络中只是简单地改进了3DUnet,因此结果没Dilated-3DUnet的好。文献[22-23]是对ADNI 数据集中不同的案例进行的,仅用于参考。文献[22-23]采用的都是半自动的分割方法,此类方法由于不同个体间差距较大,因此在分割精确性和效率上往往不是很理想。
Fig.6 Comparison of segmentation results between 3DUnet and Dilated-3DUnet图6 3DUnet和Dilated-3DUnet的分割结果比较
Fig.7 Segmentation results of different models图7 不同模型的分割结果
Table 3 Comparison of various segmentation algorithms on ADNI datasets表3 ADNI数据集上各种分割算法的比较
为了更直观地体现本文算法的精确性,随机选取了3个测试案例的分割结果进行分析,结果如图8所示。图8 中第1 列为预处理后尺寸为80×80×40 的原图,第2 列为专家手动标记的结果,第3 列为采用Dilated-3DUnet 模型分割的结果,第4 列为分割出来的海马体的三维渲染图。通过对比第2 列和第3 列可以发现,本文的分割与专家手动标记的结果非常接近。
为了进一步验证本文算法的有效性,从ADNI 数据集上重新下载了25 组数据集,与之前下载的100组不同的是,这25 组均来自阿尔茨海默病(AD)患者。研究发现,AD 患者一般都有海马体萎缩的病理表现,因此与正常人相比,AD 患者的海马体体积明显减少,这大大增加了AD患者海马体分割的难度[24]。文献[25]中表明,与正常(CN)组相比,AD 组的分割精度平均下降了1%。
使用之前已经训练好的4种模型3DUnet、Pyramid-3DUnet、3DUnet-C 和Dilated-3DUnet,分 别 对25 组AD 患者的海马体进行分割。除此以外,还与文献[25]中传统的基于形变模型的方法进行比较,结果如表4 所示。
从表4 中可以看出,与4.5.2 小节中的结果相同,Dilated-3DUnet 的性能是最优的。文献[25]中的传统方法是基于先验模型实现的,因此由于不同个体间的差异,分割精度往往不是很好。本文方法不会出现类似的问题,因此分割精度得到了大大的提升。表4 的分割结果更加验证了本文算法的有效性和泛化性。
Fig.8 Hippocampus segmentation results图8 海马体分割结果
Table 4 Comparison of various segmentation algorithms on AD group表4 AD 组上各种分割算法的比较
5 结束语
针对脑MRI 图像中海马体的分割,本文提出了一种新型的三维卷积网络Dilated-3DUnet。该网络可以实现海马体的三维全自动分割。采用“金字塔”结构的通道数分布方式,大大缩减了参数的规模。然后通过使用三维空洞卷积,扩大了卷积感受野,提取了多尺度的信息,从而捕捉了更多的海马体特征,对边缘部分小区域分割效果更优。实验结果证明,本文算法在分割性能上相比传统方法有了一定程度的提升。