APP下载

基于改进的V-Net模型的肝肿瘤分割算法

2021-11-15吴菲

现代计算机 2021年27期
关键词:卷积肝脏损失

吴菲

(东华大学信息科学与技术学院电子与通信工程专业,上海 201620)

0 引言

人体存在很多器官,其中位于腹部体积最大的器官是肝脏。它负责过滤血细胞,处理和储存营养素,并将其中一些营养素转化为人体所需要的能量,与此同时它还可以分解和排除有毒物质[1-4]。据报道,2008年约有75万人被诊断出患有肝癌,其中有69.6万人死于该疾病。在全球范围内,男性的感染率是女性的两倍[5]。长期以来,恶性肿瘤一直困扰着人类,严重威胁着人类的生命健康。然而,若病人在患病初期就能够发现恶性肿瘤存在于体内,那么便可以提高人类的生存率。

医学图像分割的研究一般有三种。其中手工分割很大程度上依赖于具有高级技术技能的专家来完成这一任务。通过肉眼观察医学图像来区分人体的器官和组织是一个极大的挑战。此外,专家的主观判断会严重影响人工分割的结果。这些因素导致人工分割在医学图像分割领域的实用性较差。与此同时,半自动切割仍需要人工干预,所以还是非常容易出现错误。因此,医学图像的全自动分割已成为该领域的首选,并得到了广泛的研究。计算机断层扫描(CT)图像可以让我们看到肝脏和病灶,同时也能够帮助放射科医生制定适当的诊断和治疗计划。但是,由于一些障碍,肝肿瘤的自动分割仍然很困难:①肝肿瘤与其周围软组织之间的对比度较低,分界不明显,导致分割难度增大;②对于不同的病人,肝肿瘤的形状、体积、数量和位置的差异比较明显;③多种扫描方案导致CT图像存在噪声等因素的干扰。

传统的医学图像分割算法有很多,如:阈值法、区域生长法、水平集等[6]。但是这些传统方法依赖于手动分割的能力,因此不能很好地分割出我们感兴趣的区域。随着计算机运算能力的发展,基于机器学习的医学图像分割算法不断被研究者们提出来,如支持向量机(SVM)、Adaboost、聚类算法等。虽然在某些情况下取得了成功,但由于医学图像的特征提取比普通RGB图像更难,因此医学图像分割的精度无法得到很好的保证。由于深度学习技术的快速发展,医学图像分割将不再需要手工去完成[7],卷积神经网络(CNN)成功实现了图像的层次特征的提取,由于CNN对图像噪声、模糊、对比度等不敏感,所以对医学图像提供了很好的分割结果。接着以FCN和U-Net[8]为代表的大量卷积神经网络逐渐应用于医学图像分割领域。如P.F.Christ等人[9]使用级联FCN从CT和磁共振成像(MRI)图像中依次分割肝脏和肝脏肿瘤。为了减少肝肿瘤的假阳性,Bell⁃ver等[10]设计了一种肿瘤检测网络,结合级联FCN从CT图像中分割肝肿瘤。接着,Ronneberger等[8]在FCN的基础上提出了一个U-Net框架来解决上述问题,通过添加四个跳跃连接来融合特征图,再通过反卷积层将特征图上采样到原始尺寸。Li等[11]将U-Net和Dense-Net[12]结合,通过混合特征融合层提出了用于肝脏和肿瘤分割的密集UNet算法来探索图像内和图像间的特征,这种组合方法不仅降低了计算成本,而且提取了更多的特征信息。Jin等[13]进一步介绍了一种注意力机制来提取CT图像中的注意感知特征。Ginneken等[14]采用编码器以及解码器网络来提高肝脏肿瘤轮廓的精度,然后利用基于形状的后处理操作来细化肝脏肿瘤边缘。Roth等[15]提出了一个两阶段的3D FCN,从粗到细尤其重点关注腹部器官和血管的信息,在肝脏及肿瘤分割方面取得了良好的效果。

V-Net网络[16]是基于3D卷积的一种医学图像分割模型,它采用端到端的训练方式,能够较好地缓解图像中前后背景不均衡的情况。在V-Net网络的左边是编码部分,是用来提取输入图像特征的收缩路径,在其对称的右边是解码部分,用来扩展较低分辨率特征图的扩张路径。网络的编码部分随着数据沿着压缩路径经过不同的阶段,其分辨率会降低,此外V-Net网络还在每一层都加入了残差机制,它是将上一阶段通过下采样之后输出的特征图与该阶段经过卷积后的特征图进行相加来缓解梯度消失的问题。网络的解码部分与编码部分相反,随着数据沿着扩张路径经过不同的阶段进行上采样,特征图的分辨率会不断翻倍,而通道数不断减半。由于在左侧的编码部分,随着神经网络层数的加深,图像在提取特征过程中可能会丢失一些信息,而通过跳跃连接可以避免这类情况的发生,同时提高了最终输出图像的分割精度与模型的收敛速度。

V-Net网络是基于3D卷积的一种医学图像分割模型,然而最初的原始网络结构还存在一些弊端,对图像的分割精度仍达不到临床的要求:①由于肝肿瘤的CT图像中除了我们感兴趣的肿瘤区域以外,还有一些软组织等背景即我们不需要的无用区域,而原始V-Net网络不能很好的识别肿瘤信息;②由于存在特别小的肝肿瘤即在整个CT图像中占比较小,此时V-Net模型可能会存在漏检问题。针对上面提出的一些不足的地方,在V-Net网络模型的基础上,对肝肿瘤分割提出了以下的改进:①引入注意力机制模块,让模型更好的关注我们感兴趣的肿瘤区域;②对模型自带的损失函数进行改进,可以防止出现漏检的情况。

1 分割方法

1.1 数据来源与预处理

我们选取LiTS[17]数据集作为本次实验的数据集来进行训练以及测试。该数据集包含201例肝细胞癌(HCC)患者的CT扫描图像,它是由7家不同的医院和研究机构合作建立而成的,并由3名放射科医生独立地对每一份CT图像进行手工审查,包括肝脏和肿瘤位置的真实标注。LiTS数据集有两部分,其中训练集有131份CT图像,这些图像都提供了肝脏以及肝脏肿瘤的标注结果,而且以三维.nii格式的文件存在,另一个测试集包含70份CT图像,这部分图像没有提供标注结果,它是用于测试并将结果自行上传至网站。

在数据预处理之前,我们先将数据集中的数据由nii格式转化为npy格式可以方便后续的模型训练。接着由于CT图像中存在很多我们不需要的信息,因此我们将设置合适的窗宽HU值来剔除无关区域。另外,我们选取的数据集是来自7家不同的医院和研究机构,经不同的医疗设备扫描得到的CT图像的厚度是不一致的,因此我们需要统一CT图像的像素间隔。由于本次实验的输入CT图像不是常见的二维切片而是三维图像,使用三维图像可以更多关注到图像的空间特征信息从而提高图像分割的精度,但是三维图像相比二维切片来说需要更好性能的GPU和显存,而且处理起来也更加麻烦,输入的参数量非常大,这样模型训练的时间就会过长,因此我们将原始的三维图像处理成若干个三维patch,接着将它们作为V-Net模型的输入数据。最后我们决定将图像的输入尺寸由原始的512设置为64,即每个三维小块的尺寸为64×64×16。由于输入V-Net模型中的数据除了这些三维小块还有对应的掩膜标签图像,因此对于这些掩膜图像,我们也处理成同样的64×64×16尺寸的大小。最后得到的图像如下图1所示,左边为处理后的肝肿瘤图像,一共是16张大小为64×64的切片,右边为对应的掩膜图像,也是16张大小为64×64的切片,可以看到白色区域即对应的肿瘤区域。

图1 三维patch切片图像以及对应的肿瘤切片图像

1.2 改进的V-Net网络

注意力机制是借鉴了人类对信息进行高效筛选的一种方法,人类大脑在识别信息时,视网膜对各个信息的接收能力是不一样的,其中中央凹陷部分的处理能力最强,其他部位的处理能力依次减弱。人类认知系统会选择将注意力重点集中于全局信息的特定目标区域,同时不去关注其他无用的信息。人类在接收各种外界信息时可以通过这种方式来提高信息提取的准确率和有效性。图像处理中的注意力机制就是借鉴了人类接受信息的方式,通过从大量信息中只关注感兴趣的区域来提高网络模型的性能。为了提高编译码体系的性能,我们采用注意门(attention gate,AG)集成到基准V-Net网络结构中,AG注意门模块能够自适应地调整和学习医学图像中不同结构的目标特征图。将AG注意门模块应用于V-Net后得到的网络结构如图2所示,我们将其命名为AGV-Net网络。

图2 改进后的网络结构

该网络结构大体上与V-Net相同,输入图像的尺寸为64×64×16,网络编码与解码部分的每一阶段使用的卷积核大小都为5×5×5,且步长为1,上采样与下采样的卷积核大小为2×2×2,步长为2。解码部分的最后一层经过1×1×1大小的卷积核得到两个体积大小不变,通道数为2的输出图像,再经过softmax函数最终得到一个体积大小与输入图像相同的输出图像,即64×64×16,且通道数为1。其中每个卷积神经网络都包括卷积层、ReLU激活函数以及Dropout层。通过添加Dropout层来防止模型在训练过程中过拟合的情况,从而提高模型的性能。在网络的编码阶段,每一层通过残差结构输出的特征图都有两个分支,一个分支用于下采样作为下一层的输入,另一个分支作为AG注意门模块的输入。注意门具有两个输入,其中一个是解码过程中经过上采样得到的特征图,另一个是对应的压缩路径过程中输出的特征图。用上采样特征图作为门控信号来增强编码阶段特征图的学习。总之,这个门控信号可以从已编码的特征中选择更有用的特征发送给解码器。通过注意门模块最后得到一个权重系数,通过这个权重系数我们可以分配更多的权重给CT图像中感兴趣的肿瘤区域,而分配较少的权重给无关紧要的区域。因此使用AG模块的网络模型可以重点去关注与分割任务有关的区域,同时会一定程度的抑制网络去学习与分割任务无关的区域。

1.3 改进的损失函数

在图像分割任务中,损失函数一般用来估算模型训练之后得到的预测值与实际值之间的差距,差距越小,也就是损失函数越小,模型的性能也就越好,同时损失函数也可以给我们提供模型的优化方向。提出V-Net网络的研究学者采用Dice损失函数来评估模型的分割精度,Dice损失函数公式如下:

式(1)中,i为图像中第i个像素,n为图像中所有像素的个数,pi为预测图像中的第i个像素值,gi为人工标注图像中的第i个像素值,即真实值。P为预测的图像结果,G为人工标注的金标准图像结果。由于分母直接将P和G的大小相加,导致重复计算了P和G之间的共同元素,因此在Dice系数的分子中存在系数2。

尽管Dice损失函数被广泛应用于图像分割任务中,但是我们可以得知Dice损失函数是对图像中整体像素点来看待的,也就是说它关注的是全局信息,而我们希望模型可以更加关注那些特别小的病灶区域,另外使用Dice损失函数容易使模型训练变得不稳定。因此我们引入了另外一个损失函数,该损失函数为交叉熵损失函数。

交叉熵(cross entropy)损失函数单独对每个像素进行评估预测,然后对所有像素求平均值。可以表示为如下公式:

式(2)中,i为图像中第i个像素,n为图像中所有像素的个数,pi为预测图像中的第i个像素值,gi为人工标注图像中的第i个像素值,即真实值。由于交叉熵损失函数是独立地考虑每一个像素点的,因此可以说它关注的是局部信息,同时它能够使模型训练相对稳定。而Dice损失函数关注的是全局信息,且非常适用于前后背景不均的情况,因此我们提出了一种新的损失函数,即将模型自带的Dice损失函数以一定的比例与交叉熵损失函数进行组合,这样可以使模型更加收敛,同时也可以让模型的性能得到更好的提升。具体的函数表达式如下:

其中,LDice为Dice损失函数,公式可见(2)、LCE为交叉熵损失函数,公式可见(3),α、β为Dice损失函数和交叉熵损失函数之间的均衡系数,可以将它们控制在同一数量级上,且α+β=1。在本次图像分割任务中,我们将α设置为0.5,那么β也为0.5。

2 实验与结果分析

2.1 数据集

在本次实验中我们选择LiTS数据集来进行训练以及测试,我们随机选取其中部分CT图像,然后将它们进行数据预处理最后得到训练集有38110个三维小块,测试集有6170个三维小块。

2.2 评价指标

深度学习在图像语义分割上已经取得了很大的进展,产生了很多专注于图像语义分割的模型与基准数据集,这些基准数据集提供了一套统一的批判模型的标准,多数时候我们评价一个模型的性能会从执行时间、内存使用率、算法精度等方面进行考虑。对语义分割模型来说,Dice相似系数是医学图像中的常见指标,常用于评价图像分割算法的好坏。另外,我们还采用精确率(Precision)以及召回率(Recall)来对肝肿瘤的分割质量进行评测。

在上式中,Dice相似系数是图像分割中比较常见也非常重要的评价指标,用来衡量图像预测的结果与金标准的相似度,范围一般为[0,1],当Dice值为0时,表示两个样本完全不相同,即没有重合部分;当Dice值为1时,表示两个集合完全重叠。Dice越接近于1表示分割效果越好。TP为测试样本中被准确地预测为肝肿瘤的样本数,TP+FP为模型分割出的肿瘤总数,TP+FN为专家标记的正确肿瘤总数。

精确率表示测试样本中被准确地预测为肝肿瘤的样本数除TP以测试样本中模型分割出的肿瘤总数TP+FP。

召回率也称为灵敏度(Sensitivity),它表示测试样本中被准确地预测为肝肿瘤的样本数TP除以专家标记的正确肿瘤总数TP+FN。

2.3 实验环境

本次实验的环境如表1所示。使用Tensor⁃flow1.12.0框架进行训练,并用NVIDIA GeForce GTX 1080ti GPU加速。具体的其他环境配置如下。

表1 实验环境配置

2.4 参数设置及训练

在网络训练之前需要合理设置实验参数,这样可以使得模型的性能更好。具体的实验参数配置如表2所示。

表2 实验参数配置

2.5 实验结果与分析

表3 改进的V-Net模型与其他肝肿瘤分割模型的评价指标表

在表3中,第一列为网络模型,Dice为V-Net模型自带的损失函数,CE为本文提出的引入的交叉熵损失函数,V-Net为基准网络,AGV-Net为引入注意力机制后的网络,AGV-Net+Dice表示改进后的网络模型,且使用Dice损失函数,AGVNet+Dice+CE表示改进后的网络模型,且使用的是组合损失函数。第二、三、四列分别代表的是分割模型的评价指标:Dice相似系数、精确率以及召回率。

实验结果表明,与V-Net相比,采用注意力机制的网络模型的各个分割指标均有所提升,这说明了AG注意门模块可以很好的增强分割任务相关的目标区域的学习,同时抑制任务中其他不相关的区域。最后在引入注意力机制的同时还改进了损失函数的情况下,相比于只使用Dice损失函数,其Dice系数提高了0.31%,精确率提高了0.33%,召回率有所下降,说明改进后的模型可以较好地抑制假阳性肿瘤组织。

3 结语

本文提出的改进的V-Net网络模型,在基于V-Net网络的基础上加入注意力机制以及改进的组合损失函数对肝脏肿瘤进行分割,解决了原始V-Net网络不能很好的识别肿瘤信息以及模型可能会出现误检、漏检等问题,缓解了CT图像前后背景不均的情况。通过采用LiTS数据集来进行本次的肝肿瘤分割实验,得到最终的Dice相似系数、精确率以及召回率分别为0.6905、0.8156、0.6528,实验结果表明该分割算法可以很好地分割肝脏肿瘤,精确度也得到了一定的提升。

猜你喜欢

卷积肝脏损失
洪涝造成孟加拉损失25.4万吨大米
基于全卷积神经网络的猪背膘厚快速准确测定
基于图像处理与卷积神经网络的零件识别
频繁染发伤肝
基于深度卷积网络与空洞卷积融合的人群计数
两败俱伤
肝脏需要擦洗吗
肝脏需要擦洗吗
卷积神经网络概述
损失