宋宇宸,彭昭,吴昊天,周解平,皮一飞,陈志,裴曦
1.中国科学技术大学放射医学物理中心,安徽合肥230027;2.安徽慧软科技有限公司,安徽合肥230000;3.中国科学技术大学附属第一医院放疗科,安徽合肥230001;4.郑州大学第一附属医院放疗科,河南郑州450052
近年来,胸部恶性肿瘤(乳腺癌等)发病率逐年增加,放疗已被广泛应用于胸部恶性肿瘤的治疗。其中,心脏作为最重要的胸部危及器官,其照射剂量必须受到严格限制。因此,心脏分割是胸部恶性肿瘤放疗的关键环节。然而,由于心脏周围解剖结构复杂,心脏分割仍具有很大挑战。目前,临床使用的主要分割方法是医生手动分割,可获得精确的结果,但十分耗时。手动分割的局限性促使研究人员继续开发用于心脏分割的辅助分割方法。目前的器官辅助分割方法主要有基于统计模型的方法[1-2]、基于图谱的方法[3-5]以及基于深度学习的方法,包括基于U-net的方法[6]、基于FCN的方法[7-9]、基于CNN的方法[10-12]及基于其他网络的方法[13-14]等。其中,基于深度学习的方法因其准确率高、效率高而被广泛应用。U-net[7]最初在MICCAI 2015被提出,并成为器官分割任务的主要基础网络,该网络改进了全卷积网络[15],完善了扩展路径,将多通道卷积与特征金字塔网络的结构相结合,大大提高了器官分割的准确率;3D U-net在U-net基础上增加医学影像的三维信息,在小体积器官的分割任务中表现出色[16]。深度学习为医学图像处理做出很大贡献,在图像分割任务中表现最优。但是这些方法对心脏的下边缘部分的分割精度不够高。目前已有不少研究者进行基于U-net的心脏自动分割[17-18],但2D U-net和3D U-net在心脏的不同位置表现不同:在深度方向靠近腹部的CT图像上,3D U-net表现更优;在其余心脏CT图像上,2D U-net表现更优。因此,本研究提出将同一患者不同位置心脏CT图像输入不同网络进行训练的方法,利用改进后的AlexNet[19](命名为modified-AlexNet)对胸部CT图像进行分类,准确挑选出含有心脏的CT图像;对2D U-net/3D U-net网络结构进行改进,改进后的网络命名为2D/3D U-plus-net,将心脏不同位置的图像分别用2D U-plusnet和3D U-plus-net分割。此方法可充分利用2D/3D Unet的优点并避免其缺点。
收集郑州大学第一附属医院60 例接受放疗的乳腺癌患者的胸部扫描CT图像,记为数据A;中国科学技术大学附属第一医院的45例接受放疗的乳腺癌患者的胸部扫描CT图像,记为数据B。CT层厚为5 mm,分辨率为0.977 mm×0.977 mm,传输到Pinnacle 规划系统(Philips Radiation Oncology Systems, Fitchburg,WI,USA)。
危及器官由临床经验丰富的放疗科医生进行手动分割。由于不同医院分割习惯不同,在满足危及器官分割标准的条件下,临床分割的器官轮廓有紧贴器官边缘和器官外扩两种,本研究中,数据A 采用紧贴器官边缘的分割方法,数据B采用器官外扩的分割方法。为了避免因医生分割习惯不同而造成神经网络预测结果与医生分割结果的偏差,并证明本文方法在不同医院数据集上的通用性,本研究在两个不同医院的数据集上分别进行分割。
1.2.1 分割前工作对数据A 和数据B 的CT 图像进行预处理。去除所有患者CT 图像的金属伪影;选取窗宽、窗位,提高图像对比度;以身体中心为裁剪中心,将图像裁剪至[256,256];将含有心脏的CT 图像标记为1(记为心脏CT),不含心脏的CT 图像标记为0(记为无心脏CT),用于图像分类;利用RS文件提取每张心脏CT对应心脏掩膜,用于图像分割。
由于心脏在靠近腹部处体积较小,且与其他危及器官(如肝脏)距离近,2D 网络难以分割,而3D 网络可以利用层间三维信息确保轮廓连续性,因而3D网络表现更优;心脏在靠近头部处体积较大,且与其他危及器官距离远,2D 网络足以区分,而3D 网络会造成信息冗余,并占用更大内存,因而2D网络表现更优。因此,本研究提出一种将心脏不同位置CT 图像输入不同神经网络进行分割的方法(图1)。
图1 基于2D/3D U-plus-net的心脏自动分割方法Fig.1 Flowchart of automatic heart segmentation based on 2D/3D U-plus-net
为确定m的值,使得最终分割结果最优,在数据A 和数据B 上分别进行预实验:搭建2D U-net 模型[7],并将其网络层改写为3D 层,形成与其拓扑结构相同的3D U-net 模型,基于这两个模型做心脏分割对照实验。在数据A 中随机选取48 例作为训练集,其余12 例作为测试集;在数据B 中随机选取36 例作为训练集,其余9例作为测试集。将两个训练集患者的心脏CT 图像分别输入2D U-net 和3D U-net 进行训练,并用测试集患者作测试。将2D U-net和3D U-net在所有心脏CT 图像上的分割Dice 系数作成折线图,两条折线的交点即为m值。
1.2.2 胸部CT 图像分类对AlexNet 进行改进,改进后网络结构(modified-AlexNet)如图2 所示。网络包括4 个卷积模块和1 个Dense 模块;每个卷积模块包括2 个Convolution 层和1 个Max-pooling 层,激活函数 采 用Relu;Dense模块包括1 个Flatten 层、3 个Dense层和2个Dropout层;激活函数采用Sigmoid,损失函数采用Binary_crossentropy,优化器采用RMSprop。
图2 改进后的AlexNet网络结构Fig.2 Modified-AlexNet architecture
将训练集患者CT 图像及标签经预处理后随机打乱,输入modified-AlexNet 进行训练,并用验证集验证。将测试集患者CT 图像及标签经预处理后输入训练好的modified-AlexNet,输出标签。标签为1表示心脏CT图像,标签为0表示无心脏CT图像。
1.2.3 心脏自动分割对U-net的拓扑结构进行改进,主要包括以下3 点。(1)减小网络深度。编码器和解码器是U-net 网络的核心,其作用分别是特征提取与图像重建。编码器和解码器中模块个数决定网络深度,深度越大,特征提取越精细,但同时也会造成信息冗余。因此,针对不同的图像处理任务,需选择不同的网络深度。本研究发现当编码器中特征提取模块和解码器中图像重建模块的个数为3个时,网络模型训练效果最好。(2)传统U-net 网络特征提取模块和图像重建模块的网络层数相同,而本研究在每个图像重建模块中添加一个Convolution 层,使其相比对应的特征提取模块多做一次卷积,从而提高网络的局部感知能力。(3)传统U-net 网络中,第一层编码器和解码器由一个长连接相连,本研究在此长连接中增加两个神经节点,综合长连接和短连接,充分利用不同深度的图像特征。
改进后的网络命名为U-plus-net,其结构如图3所示(输入图像以适用于2D U-plus-net 的CT 图像为例)。基于此拓扑结构分别添加2D 与3D 网络层,即构成2D U-plus-net 和3D U-plus-net。编码器包含3个重复的特征提取模块,每个特征提取模块由2 个Convolution 层和1 个Max-pooling 层组成;解码器包含3 个重复的图像重建模块,每个图像重建模块由3个Convolution 层和1 个Up-sampling 层组成;在最后一个图像重建模块中添加1 个Convolution 层;采用Concatenate 层连接特征图大小相同的特征提取模块与图像重建模块。激活函数采用Relu 和Sigmoid,损失函数采用Dice 系数计算方法,优化器采用Adam。网络在Keras框架上搭建,以TensorFlow为后端。
图3 U-plus-net网络结构(输入图像以适用于2D U-plus-net的CT图像为例)Fig.3 U-plus-net architecture(The input image takes CT images that apply to 2D U-plus-net as an example)
应用本研究的胸部CT 图像分类方法挑选出心脏CT 图像,按UID 降序进行排序。将排序后的前m张心脏CT 图像及对应掩膜输入3D U-plus-net,其余心脏CT 图像及对应掩膜输入2D U-plus-net。采用5倍交叉验证法对网络进行训练及测试。将数据A 和数据B 各均分为5 组,每次取其中1 组作为测试集,1组作为验证集,其余4 组作为训练集,进行5 次训练;取5次测试结果的平均值作为最终结果。
本研究采用Dice系数,平均表面距离(Mean Surface Distance,MSD)和HD95(Hausdorff 距离)来评估自动分割结果[20]。
Dice系数计算公式为:
其中,X和Y分别为轮廓的真值与预测值。
有向平均Hausdorff 测度定义为轮廓X中的所有点到轮廓Y的距离的平均值:
MSD 定义为两次有向平均Hausdorff 测度的平均值:
95%有向百分比Hausdorff 测度定义为轮廓X中的所有点到轮廓Y的距离按升序排列后95%位置处的值:
95%Hausdorff 距离(HD95)定义为两个95%有向百分比Hausdorff测度的平均值:
分别计算数据A 和数据B 中测试集患者心脏自动分割的Dice系数、HD95和MSD。
将2D U-net与3D U-net在测试集患者心脏CT图像上自动分割的Dice系数作成折线图。结果发现在两个医院的数据集上均呈现如下规律:心脏CT图像编号沿人体轴向从下至上,在靠近腹部的第7或8张CT图像位置上,两条折线相交;对于前8张CT图像,3D U-net表现远优于2D U-net;对于其余CT图像,2D U-net表现略优于3D U-net。因此,本研究中m取8,即将靠近腹部的8张心脏CT图像输入3D U-plus-net进行自动分割,其余心脏CT图像输入2D U-plus-net进行自动分割。
为了直观显示2D 和3D 网络在心脏不同位置分割性能的差异性,在数据A和数据B中各选取一名测试集患者Dice系数折线图展示见图4;为了说明此规律在所有患者上的普遍适用性,本研究将所有测试集患者的平均Dice系数展示见表1、表2。
由图4 以及表1、表2 可见,基于2D U-net 在心脏靠近头颈部的CT 图像上分割的平均Dice 系数很高,但在靠近腹部的8 张CT 图像上表现呈断崖式下跌,大大拉低心脏整体分割的平均Dice系数;基于3D Unet的心脏分割Dice系数沿人体轴向从下到上稳步提高。Dice 系数的变化幅度体现出两种网络各自的优缺点:3D网络可将连续两张CT图像的分割结果偏差控制在一定范围内,但整体性能不高;2D网络在心脏特征明显的CT 图像上表现良好,但难以在特征不明显的CT图像上进行分割。
表1 基于2D U-net/3D U-net在数据A中进行心脏自动分割的Dice系数Tab.1 Dice coefficient of 2D U-net/3D U-net based automatic heart segmentation on Data A
表2 基于2D U-net/3D U-net在数据B中进行心脏自动分割的Dice系数Tab.2 Dice coefficient of 2D U-net/3D U-net based automatic heart segmentation on Data B
图4 基于2D U-net/3D U-net对测试集中一名患者进行心脏自动分割的Dice系数Fig.4 Dice coefficient of 2D U-net/3D U-net based automatic heart segmentation for a patient from the testing set
图5 为基于2D/3D U-plus-net 在数据A 和数据B中的4 张心脏分割结果。其中,绿色轮廓为预测结果,红色轮廓为医生分割结果。从图中可见,无论是采用紧贴器官还是器官外扩的分割方法,2D/3D Uplus-net 预测结果与医生分割结果都非常接近,即该网络模型在不同数据集中鲁棒性较好。
图5 基于2D/3D U-plus-net的心脏分割结果Fig.5 Results of automatic heart segmentation based on 2D/3D U-plus-net
基于原始U-net 的训练模型大小约200 M,而本研究所使用的2D U-plus-net模型大小约33 M,3D Uplus-net 模型大小约45 M,大大降低神经网络训练所占的内存空间。其原因主要是2D/3D U-plus-net 减小了网络深度。
基于2D/3D U-plus-net对数据A 和数据B中的测试集患者进行心脏自动分割的Dice 系数、MSD 及HD95 见表3。基于不同网络模型的心脏自动分割平均Dice 系数如表4 所示。其中,2D/3D U-net 列的数据为取预实验中基于3D U-net 在靠近腹部的8 张心脏CT 图像上的分割Dice 系数与基于2D U-net 在其余心脏CT 图像上分割的Dice 系数作加权平均得到。从2D/3D U-net 列与2D U-net 列及3D U-net 列对比可见,将2D U-net 与3D U-net 相结合的方法与单独使用2D U-net 或3D U-net 相比,在心脏整体上分割的Dice 系数均有所提高。一方面,此方法充分利用2D 和3D 网络在不同位置图像上分割的优势;另一方面,将心脏CT 图像分为两类,使得每个网络接受训练的图像形状大小更相近,特征更集中,有利于神经网络的学习。从2D/3D U-plus-net 列与2D/3D U-net列对比可见,本研究所提出的2D/3D U-plus-net 与原始2D/3D U-net 网络相比,对网络结构的改进使得网络性能大幅提升,进一步提高心脏自动分割的准确率。
表3 基于2D/3D U-plus-net的心脏自动分割Dice系数、MSD和HD95Tab.3 Dice coefficient,mean surface distance and HD95 of automatic heart segmentation based on 2D/3D U-plus-net
表4 基于不同网络模型的心脏自动分割Dice系数Tab.4 Dice coefficient of automatic heart segmentation based on different networks
近年来,用于图像分类识别的神经网络发展迅速,vgg16[21]、Googlenet[22]等网络在大数据量图像分类任务中表现出色,然而在小批量图像处理时产生了过拟合现象;相反,结构简单的AlexNet 能够很好地适应小批量患者的CT 图像心脏识别。因此,本研究经过实验对比,最终选定对AlexNet 进行改进,并基于modified-AlexNet 将胸部CT 图像分为心脏CT图像和无心脏CT图像。
由预实验结果可见,在郑州大学第一附属医院和中国科学技术大学附属第一医院的两个不同数据集中,在CT 层厚5 mm 的情况下,2D 和3D 网络的性能差异都在心脏CT图像靠近腹部的第8张左右的位置发生改变;对于其他医院的临床数据,由于CT 扫描及重建技术不同,2D 和3D 网络性能差异发生改变的位置也可能不同,可根据预实验结果决定m的取值。
由表4 中基于不同网络模型的心脏自动分割Dice 系数的对比可见,本研究对网络结构的改进使得网络性能有不小的提升。其中,最重要的改进为在长连接中增加网络节点,同时利用网络深层和浅层特征,提高了图像特征利用率。同时,本研究提出的思想方法可以应用到其他的神经网络,即对网络结构作出其他改进时,也可将2D 和3D 网络相结合,将心脏不同位置CT 图像输入不同网络,从而提高心脏分割准确率。
本研究所采用的方法在大面积与小面积器官分割上均表现良好,理论上适用于所有单连通的大体积器官。因此,下一步会将此方法集成到智能化靶区和器官自动分割系统DeepViewer 中,并应用到肝脏、胃等器官的自动分割。
本研究基于modified-AlexNet将胸部CT图像准确分类为心脏CT图像和无心脏CT图像;基于2D U-plusnet分割靠近腹部的心脏CT图像,基于3D U-plus-net分割其余心脏CT图像,最终提高心脏整体的自动分割准确率。