基于改进U-Net的关节滑膜磁共振图像的分割

2020-11-30 05:48魏小娜邢嘉祺王振宇王颖珊汪红志
计算机应用 2020年11期
关键词:滑膜残差卷积

魏小娜 ,邢嘉祺,王振宇,王颖珊,石 洁,赵 地,汪红志*

(1.上海市磁共振重点实验室(华东师范大学),上海 200062;2.上海市中医药大学针灸推拿学院,上海 200032;3.上海市光华中西医结合医院,上海 200052;4.中国科学院计算技术研究所,北京 100190)

(∗通信作者电子邮箱hzwang@phy.ecnu.edu.cn)

0 引言

滑膜炎是类风湿关节炎的基本病理改变,是一种无菌型炎症,是由于关节扭伤和多种关节内损伤而引起的,其对人体造成的危害不容小觑。滑膜功能异常会导致关节液无法正常生成和吸收,关节就会产生积液。滑膜炎通常表现为滑膜充血、水肿、渗出,中性粒细胞、淋巴细胞浸润,进而出现滑膜增厚,毛细血管增多,滑膜内产生血管翳[1-2]。血管翳多见于关节周围,并逐渐沿关节表面向关节和关节软骨表面延伸、侵入,使得整个关节软骨表面被遮盖了起来,以至于出现营养物质流失,发生变性、坏死现象。随着病情的发展,关节软骨及软骨下骨都会逐渐遭到破坏,造成关节结构受损,情况严重者甚至会形成骨性强直[3],存在较高的致残危机。在中国类风湿关节炎的发病率为0.4%,在全世界约为0.5%~1.0%[4-5]。目前临床上尚无有效的治疗方案,仍停留在对炎症及后遗症的治疗,严重危害患者健康和生活质量[6]。考虑到骨质破坏是关节畸形的首发症状,因此对类风湿关节炎进行早期诊断并寻找骨质破坏的指标,对于病情评估及制定有效的治疗方案具有极为重要的意义[7-8]。

鉴于磁共振图像(Magnetic Resonance Image,MRI)具有无电离无辐射、软组织分辨率极高、可任意方向成像等特点,且与传统X 光片相比,MRI 能直接显示滑膜增生、关节腔积液、关节软骨破坏等早期病理改变[9]。MRI 不仅能清楚地显示关节正常结构,对于小关节病症的基本病理变化也能及时显示出来[10],是其他影像学方法所达不到的[1]。研究[11-14]表明,MRI 检测到的炎症,对于病变的早期诊断具有极大的帮助。MRI对于早期滑膜炎性病变的诊断与治疗及疗效观察具有以下意义[15]:1)鉴别滑膜炎和非滑膜关节疾病,特别是不典型部位的大关节;2)确定相关关节的数量,以便于进行准确评分;3)提供客观、全面、可重复显示的信息以便于评估炎症活性和功效。

为了准确诊断患者病情并制定有效的治疗方案,医生需要对MRI图像中的滑膜区域进行手工标注和勾画。但手工勾画存在以下问题:1)耗时长、效率低,医生需要耗费大量的时间和精力来完成滑膜区域的标注工作;2)存在一定的主观性,不同的医生由于经验不同,对同一个病人MRI 图像的勾画结果往往存在一定的差异性;3)图像信息利用率低、可重复性低。针对医生手工勾画滑膜区域存在的问题,试图探究使用人工智能(Artificial Intelligence,AI)训练模型实现滑膜增生的自动检测。相较于手工勾画,由于AI具有较强的自主学习能力、识别能力、计算能力以及极其稳定的持续工作的性能,而得到越来越多的医生和研究人员的关注。

近年来,随着深度学习的蓬勃发展,基于深度学习的图像分割算法被广泛用于医学图像分割任务中。受此启发,本文在深度学习理论的基础上,提出了一种基于改进U-Net[16]的关节滑膜分割算法——2D ResU-net。

1 基于2D ResU-net的关节滑膜分割算法

U-Net是一种端到端的网络结构,由左侧用于获取上下文信息的收缩路径和右侧用于对任务目标精确定位的扩张路径两部分组成,两个路径相对称,形成一个“U”型。与其他分割网络相比,U-Net 的最大特点在于,通过反卷积过程中的跳跃拼接,将特征在channel维度拼接在一起,形成更“厚”的特征,将浅层特征与深层特征进行融合。使网络同时兼顾了浅层信息和深层信息的贡献,增强了网络全局特征的学习能力,使分割效果有了一定的提升。

但U-Net 的深度略有不足,针对该问题,本文提出了一种新的网络结构,即2D ResU-net结构,该网络结构将U-Net与残差网络(Residual Network,ResNet)相结合,加深了U-Net 的深度,并解决了网络较深时梯度消失的问题,使分割效果有了显著提升。

1.1 网络架构

1.1.1 残差块

在卷积神经网络中,网络层次越深,训练时产生的错误越多,训练时间越长[17]。为了解决这一问题,采用He 等[17]于2015 年在ImageNet 图像识别竞赛中提出的残差网络。残差网络提出了一个“捷径”的概念,即跳过一个或多个层,将输入结果直接添加到底层,如式(1)所示:

其中:H(x)为底层映射,x为输入,F(x)=H(x) -x为残差映射即网络中的隐藏层输出结果。如果将输入直接添加到底层,那么残差映射就是该网络单元需要学习的目标。本文把这种学习残差映射的网络单元称为残差块,结构如图1所示。

图1 残差块Fig.1 Residual block

与其他网络相比,残差网络结构相对简单,该网络将多个卷积层级联的输出与输入相加后对图片进行特征提取,减少了计算量,解决了在极深度条件下深度卷积神经网络性能退化的问题。

2D ResU-net 将图1 中的残差结构融入U-Net 中,加深了U-Net 的深度,避免了过拟合现象的发生,并解决了网络深度加深时出现的梯度消失问题,有效提升了模型的分割性能。

1.1.2 批标准化

为了解决深层网络难以训练的问题,本文在每层卷积后,进行了批标准化(Batch Normalization,BN)处理。对于深层网络,每层输入的分布在训练期间会随着前一层参数的变化而变化,这就要求必须使用一个很小的学习率以及对参数进行很好的初始化,这样势必会使训练变得很慢。而加入批标准化后,可有效解决这一问题。批标准化具有以下优势:

1)可以选择较大的学习率,解决反向传播过程中的梯度爆炸问题;若不使用批标准化,大的学习率可能会增加层参数的规模,在反向传播中会放大梯度导致梯度爆炸,由式(2)可知,进行批标准化后,层的反向传播不受其参数规模的影响,反向传播的梯度也不会受到影响。

2)可加快模型的收敛速度,不再依赖精细的参数初始化过程;Ioffe等在文献[18]中给出了BN的具体操作流程:

3)可适量减少dropout 层的使用,并能在一定程度上提升模型的泛化能力。

1.1.3 损失函数

损失函数即用于评估模型的预测值与真实值之间差异的函数,在整个网络中起到“指挥棒”的作用,通常情况下,损失函数越小,模型的性能越好。针对本文的分割图像,往往一幅图像中只有一个或两个目标,且目标的像素比例较小,网络训练较为困难,区别于常规图像分割任务中选取交叉熵作为损失函数,本文选取V-Net[19]一文中提到的Dice_Loss 作为损失函数,能够很好解决像素比列不均衡的问题,从而达到对小目标精确分割的目的。对于二分类问题,Dice_Loss的表达式为:

图2 2D ResU-net模型Fig.2 2D ResU-net model

1.1.4 2D ResU-net 网络模型

2D ResU-net 网络模型的结构如图2 所示,与U-Net 相比,2D ResU-net加入了残差网络,并进行了批标准化处理。虚线箭头表示“捷径”层,虚线方块代表通过“捷径”层后取得的结果。

2D ResU-net算法的模型结构延续了U-Net 算法的U 型结构,也是由收缩网络和扩张网络两部分组成:

1)收缩网络。

左侧收缩网络交替使用了卷积和最大池化操作,用以减少特征图的空间维度(特征图尺寸减半),同时逐层增加特征图的数量。在原U-Net 结构的基础上,本文在2 个3×3 的卷积层(Convolutional layer,Conv)和1个2×2的最大池化层之间增加了1个两层结构的残差块。因此,收缩网络重复采用了2个3×3 的卷积、1 个3×3 的两层结构的残差块和一个2×2 的最大池操作,每次卷积后都先进行批BN 操作,然后通过线性修正单元(Rectified Linear unit,ReLu)激活函数进行激活。每个卷积层均采用零填充(padding=same)的方式进行填充,以确保输出图像与输入图像尺寸一致。

2)扩张网络。

扩张网络是与收缩网络相对称的上采样过程,用以恢复目标细节及空间维度。每次上采样,特征图大小增倍,特征数量减半。在上采样操作中,与原U-Net模型不同,本文采用3×3的卷积核进行Conv2DTranspose反卷积操作。每次上采样包含2个3×3的卷积、1个3×3的两层结构的残差块,每次上采样前,需要进行特征融合。由于本文对每个卷积层均采用零填充(padding=same)的方式进行填充,因此,可通过复制(copy)操作,直接将收缩网络中对应的特征图与反卷积获得的特征图进行融合。与收缩网络类似,扩张网络中每层都进行了批标准化处理,而后通过ReLu激活函数进行激活。

最后,通过1×1的卷积操作,将32通道的特征图转为类别数为2的特征图,并经过sigmoid函数输出一个概率值,该值反映了预测结果为滑膜的可能性,概率值越大,说明可能性也就越大。

相较于原U-Net,2D ResU-net 有如下改进:1)增加了网络层数,网络层数的增加提高了网络的特征提取能力;2)加入了如图1 所示的残差块结构,残差块的加入增加了网络深度,同时解决了网络较深时出现的梯度消失问题。

1.2 数据来源及图像预处理

本文实验所用数据来自上海市光华中西医结合医院,实验所用样本是由专业医生利用本组自行开发的标注软件进行手工标注的,软件界面如图3 所示。该软件与其他公用的标注软件相比,具有如下优势:1)利用该软件的边界勾画功能,并辅之以修正功能进行细微调整,即可对目标区域进行勾画标注,可极大缩短标注时间;2)对于已标注勾画好的图像,该软件还可以将原始数字医学成像通信标准(Digital Imaging and Communication in Medicine,DICOM)图像与对应的mask图像进行二次导入,实现检验和修正功能;3)该软件可以同时导入不同序列扫描的图像进而实现对比功能。

图3 软件界面Fig.3 Interface of software

本文所用图像为二维断层图像,首先将DICOM 格式的图像统一转化为普通的图片格式(本文采用bmp 格式),并将图片尺寸大小统一为256×256,然后对数据集进行归一化处理,减均值除方差等。

1.3 数据增广

考虑到本实验现有数据集(共27 例)较为有限,有限的样本量对网络模型会产生一定的影响(易出现过拟合现象),因此本文采用数据增广的方法来获取更多的样本,同时样本增广是解决过拟合现象最直接最有效的方法。

对于不同的医学图像所采用的样本增广方法往往也是不同的,考虑到关节滑膜MRI图像的特点,本文采用了随机角度旋转、随机水平翻转、裁剪、缩放,水平、竖直偏移等几何变换的方式进行增广,增广的效果如图4所示。

1.4 模型训练

为了能够选出效果最好、泛化能力最佳的模型,在训练模型时,将数据集(共27例)随机分为训练样本集(24例)和测试样本集(3 例)。原始训练样本集共1 691 张断层图像,其中1 109张为含有滑膜的图像。通过增广操作后,最终训练集共包含13 687 张图像。其中训练集用来拟合模型,验证集用来调整模型参数,测试集用来衡量模型的性能和分类能力。

图4 滑膜MRI图及对应label图的增广效果图Fig.4 Augmentation effect of synovium MRI image and corresponding label image

模型训练过程中,参数的设置和调整对模型性能起着至关重要的作用,其中学习率和batch size 是影响模型性能非常重要的两个参数。本文通过采用搜索法,并记录损失的变化来确定最佳初始学习率(本文初始学习率设为1× 10-4),然后使用自适应学习率优化算法(Adaptive moment estimation,Adam)来动态调整每个参数的学习率。对于batch size 的选择,在一定范围内,增加batch size 有助于收敛的稳定性,但随着batch size 的增加(超过某一临界点时),模型的泛化能力就会有所下降。由于受实验平台硬件设施的限制,本实验batch size 取值为8。实验过程中发现,大的学习率有助于提高模型泛化能力,并且当学习率增加时,batch size 也应跟着增加,这样收敛更稳定。此外,实验过程中采用K 折交叉验证法对模型进行调优,并检验模型的泛化性能。

2 实验结果与分析

本文采用Keras 框架,调用TensorFlow 后台实现基于2D ResU-Net的关节滑膜MRI图像的分割。实验运行的硬件环境为AMD 锐 龙7-2700X CPU 和GeForce GTX 1660Ti GPU 计算机。

为了定量评估算法分割性能,本文采用了如下评价指标:

1)Dice 相似系数(Dice Similarity Coefficient,DSC),用于衡量预测的分割结果与“金标准”区域的重合度,公式为:

DSC取值(0,1),当预测结果(A)与“金标准”区域(B)完全相同时,DSC 取值为1;当预测结果与“金标准”不相关时,DSC取值为0。DSC 值越大,表明模型泛化能力越强,分割效果越好。换言之,模型泛化能力与DSC值的大小成正相关关系。

2)交并比(Intersection over Union,IOU)[20]:

其中:area(c)表示自动分割的像素数,area(G)表示医生手工标注的像素数目。IIOU取值(0,1)表示分割精确性,即医生手工标注和自动分割的像素数目吻合程度。

3)体积重叠误差(Volumetric Overlap Error,VOE),用于计算预测分割结果与“金标准”区域间像素体积的重叠误差,公式为:

VOE取值(0,1),当VOE取值0时表示预测结果(A)与“金标准”区域(B)没有误差,是最好的分割结果。因此,VOE 取值越小表示分割误差越小,精度越高。

为了验证本文算法的有效性,利用3 例病人的滑膜断层图像构建测试样本,检测本文算法在滑膜断层图像上的分割精度,并与原U-Net模型的分割结果进行对比。图5展示了测试样本的部分分割效果,从图中可以看出,在本文算法分割滑膜得到的预测结果中,滑膜整体形状及位置与医生手工标注的结果已经十分接近,且预测图的边界相较于手工标注的边界更为圆滑。手工标注的结果是由专业的医学影像医生标注,然后经资历较深的影像专家确认后所得,并以此作为本文的“金标准”。一般而言,医生手工勾画的边缘有些锐利,而“金标准”(资历较深的影像专家手工分割的结果)实际上要更圆滑一些。由图5 可知,通过训练模型所得到的预测图的边界与“金标准”更接近。

图5 分割结果Fig.5 Segmentation results

表1 给出了利用原始U-Net 模型进行分割与利用本文算法进行分割的结果。

表1 不同算法的分割结果对比Tab.1 Comparison of segmentation results of different algorithms

从图5及表1所得结果可知,使用本文算法对关节滑膜增生区域进行分割的精度高于原始U-Net。

为了验证样本数量对实验结果的影响,利用本文模型对增广前后的数据集分别进行实验。实验所得训练集和验证集上的Loss曲线和DSC曲线变化情况如图6所示。

使用测试集对模型进行检测,所得分割结果如表2所示。

表2 不同训练集下分割结果对比Tab.2 Comparison of segmentation results under different training sets

从图6及表2中结果可以看出,仅使用原始图像进行模型训练易出现过拟合现象,所得结果远不如采用增广技术后,将所有图像用于网络训练所取得的分割效果好。因此,在数据量较小的情况下,对图像进行增广操作,一定程度上提高了模型的性能,减少了网络训练过程中的过拟合现象。

对于不同规模的样本集,训练集、验证集、测试集的划分也有所不同,表3 展示了三者不同分配比例情况下的分割结果。

图6 数据增广前后训练集与验证集Loss曲线与DSC曲线变化情况Fig.6 Changes of Loss curve and DSC curve of training set and validation set before and after data augmentation

由于能够用于实验的样本相对较少,因此采用了表3 中的分配方法对训练集、验证集和测试集进行划分。由表3 中数据可知,在样本数据集相同的情况下,不同的分配比例对分割精度的影响不是特别明显,但当样本足够多时,对于不同的数据集,三者不同的分配比例对分割精度是否会产生明显的影响,在后续的工作中仍需进一步探究。

表3 不同分配比例下分割结果对比Tab.3 Comparison of segmentation results under different allocation ratios

3 结语

本文提出了一种基于2D ResU-net 的关节滑膜MRI 图像分割算法。该算法借鉴残差网络中残差学习的思想,将ResNet 与U-Net 相融合,增加了网络深度,并解决了网络较深时梯度消失的问题。实验结果表明,本文提出的分割算法可以取得较好的分割效果,并且该算法所需样本相对较少,训练速度快。但实验中也存在一定的不足之处,针对滑膜断层图像中滑膜目标区较多的图像,本文算法存在漏分、多分或误分的情况。针对这一问题,在后续的工作中将收集更多的多目标区训练样本,并尝试其他有效的数据增广方法,进一步优化模型参数,以实现更高精确度的关节滑膜自动分割。

猜你喜欢
滑膜残差卷积
基于全卷积神经网络的猪背膘厚快速准确测定
基于滑膜控制的船舶永磁同步推进电机直接转矩控制研究
基于残差-注意力和LSTM的心律失常心拍分类方法研究
融合上下文的残差门卷积实体抽取
一种基于卷积神经网络的地磁基准图构建方法
基于3D-Winograd的快速卷积算法设计及FPGA实现
一种并行不对称空洞卷积模块①
基于残差学习的自适应无人机目标跟踪算法
基于深度卷积的残差三生网络研究与应用
关节镜在膝关节滑膜软骨瘤病诊治中的应用