基于Cascade Rcnn的超声甲状腺结节检测研究

2022-05-18 07:23章浩伟李占齐
中国生物医学工程学报 2022年1期
关键词:恶性结节分类

章浩伟 李占齐 刘 颖 李 淼

1(上海理工大学健康科学与工程学院,上海 200082)

2(河南省郑州颐和医院,郑州 450000)

引言

甲状腺结节是临床上常见的一种病,近些年来甲状腺恶性结节的发病率逐年上升。统计表明在过去的30年里,全球范围内甲状腺恶性结节男性的发病率增加了30%,女性增加67%,甲状腺癌已成为增长速度最快的恶性肿瘤之一[1]。超声成像相比于计算机断层扫描及核磁共振成像具有无创伤、检查费用低、可实时性与可重复性高的优点,所以医学上常用超声成像来进行甲状腺相关疾病的检查。

近几年来,一些学者进行了甲状腺结节的检测与良恶性判别上的相关研究。周姝君等[2]提出基于深度学习的形状和纹理特征的提取方法,对融合后的特征进行特征选择,最后采用逻辑回归和支持向量机对结节进行良恶性分类,最高平均准确率达到77.2%,准确率还有待进一步提高;肖婷等[3]通过迁移3 个不同深度的网络模型Resnet50,Xception,InceptionV3进行特征提取,以简单级联的方式将3 种网络提取的特征进行特征融合,输入到人工神经网络分类器中,判别乳腺超声图像的良恶性分类,最终实现85.13%的准确率,91%的AUC 值;吴迪等[4]利用集成学习(boosting)算法将多个弱分类器组合为一个强分类器,算法在测试集上的恶性结节的预测准确率达到86%,召回率达到96%;熊伟等[5]提出一种提取局部纹理特征与多示例学习相结合的方法,将从感兴趣区域提取的局部纹理特征看作示例包,作为K 近邻算法的输入,实现了85.59%的甲状腺结节分类准确率;张振宇等[6]基于k-means 聚类的动态集成算法为基础,采用一种选择加权动态集成的方法,将多个分类器进行并联集成,实现了90.2% 的分类准确率;Mohammadi 等[7]通过融合局部二值模式、灰度共生矩阵和Gabor 算法采集图像特征,利用支持向量机得到88.77%的医学超声图像分类准确率;Li 等[8]基于深度学习卷积神经网络Faster Rcnn 算法提出一种CSFaster-Rcnn 算法,通过跨层连接主干网络ZFnet 的第三层和第五层,达到将浅层特征与深层特征相融合的目的,实现了真阳性识别率93.5%,真阴性识别率81.5%,真阴性识别率还有待进一步的提高;Singh等[9]提取了13 个灰度共生矩阵特征,然后利用SVM对甲状腺结节进行分类,最大分类精度为84.62%。以上研究多是基于一系列预处理后从图像中提取人工特征,有效特征的提取是一项挑战性任务,同时特征集成的有效性、分类器选择的有效性也是一个复杂困难的过程,整体研究上的分类检测效果还有待进一步的提升。

基于此,本研究设计一种级联卷积神经网络Cascade Rcnn 的算法,通过主干网络ResNet50、ResNet101,以及融合压缩激励注意力模块的SEResNet50、SE-ReNet101 为主干网络,以自动化的形式实现甲状腺超声图像的特征提取,定位甲状腺结节位置,实现甲状腺结节的良恶性分类。

1 方法

1.1 实验数据

1.1.1 临床病理介绍

图1所示为所获取的甲状腺超声图像示例。临床上,医生主要从形态特征、衰减特性、回声模式、钙化特性等几个方面对甲状腺结节进行诊断[10],具体来讲,良恶性甲状腺结节的超声表现分别为:

1)良性甲状腺结节:形态规则、边界清晰、结节后方呈回声增强或者等回声,结节的纵横比一般小于1,结节周围声晕规则,有完整包膜,内部无钙化或有粗大钙化[11]。如图1(a)所示,甲状腺左侧叶占位,低回声实质结节,边界清晰,内示多枚粗大钙化点。

2)恶性甲状腺结节:形态不规则,边界欠清晰,结节后方回声衰减,结节纵横比通常大于1,包膜不明显或者无完整包膜,出现微小钙化、血流信号增强,常伴有颈部淋巴结转移性肿大[12]。如图1(b)所示,甲状腺左侧叶多发低回声结节,实质回声欠均匀,最大结节伴钙化。

图1 甲状腺超声图像。(a)良性结节;(b)恶性结节Fig. 1 Thyroid ultrasound image. (a)Benign nodules; (b)Malignant nodules

1.1.2 数据预处理

采集1 513 幅甲状腺超声图像作为实验数据集,采集地点是徐州市某三甲医院。数据集中良性结节图像有832 张,恶性结节图像有681 张,图像为二维JPG 格式,分属于224 个病例个体,每一个体所包含的结节图像数量不一,每张图像都是单结节图像。图像采集所用的超声诊断仪设备来源不同,分别来自于Philips-123、SIEMENS、GE Voluson S8、ACCUVIX-gfg、TOSHIBA 几类超声仪;由于超声图像数据来源于不同的设备,图像尺寸差异较大,而一般的卷积神经网络后接全连接层或分类器,要求输入的图像具有固定的尺寸[13]。实验中需要对原始超声图像进行预处理,具体过程如下:

1)对图像进行裁剪,去除与图像分析无关的信息,如医院名称、图像采集时间、设备名称、患者信息、超声探头的发射频率、探测深度等,得到原始超声图像的子图。

2)由于超声甲状腺结节的纵横比也是影响甲状腺结节良恶性判别的一个重要指标,所以在图像处理时需要保留结节的形状特征,通过保持原始图像的RoI (region of interest)区域的长宽比例,来调整图像大小。对于一个尺寸为h×w的图像,首先裁剪其周边无用信息,接着按照尺寸max{h,w}进行零值padding,最后通过resize 成512 像素×512 像素,经过这样一系列的处理能够在保持图像原有形状特征的基础上更加适用于卷积神经网络的输入,节省算力和时间。

1.1.3 数据集制作

实验所使用的数据集是coco 标准格式数据集,使用labelme 图像标注软件。经专业超声科医生的指导,进行图像病灶的确认,选择labelme 中的polygons进行多边标注,标注的类别category_id={“benign”,“malignant”},标注图形如图2所示,绿色边框所示是标准的结节边界,既包含结节的边界信息,有包含结节的行为信息,标注保存会产生一个json 文件,json文件包含图像的宽高、路径、名称、结节位置坐标以及良恶性标注等信息,且包含结节范围的外接矩形坐标,可视化在图2中,对应为红色矩形框,也是本次实验检测结果中定位的金标准参考,最后将json 文件转化为coco2017 的标准数据集格式,完成数据集制作。

图2 Labelme 标注示例图像(绿框为标注结节范围,红框为对应的结节外接矩形)。(a)标注示例1;(b)标注示例2Fig.2 Annotated image by Labelme (The green box is the marked nodule range,and the red box is the bounding rectangle of the corresponding nodule).(a)Annotated image 1; (b)Annotated image 2

1.2 实验平台

实验过程中,按照8 ∶2 的比例随机划分训练集和测试集,即训练集∶测试集=1 210 ∶303,采用5 折交叉验证训练的方法进行训练和测试。由于在不同的训练集上,模型的表现性能略有差异,因此测试结果也略有浮动。取5 折交叉验证测试的平均值。实验模型部署在中科曙光的超级运算平台上,实验系统为Linux 操作系统,编译环境是Python 3.7.9,CUDA版本10.0,显卡为Tesla V100-SXM2-32 GB,使用Pytorch1.4.0 进行整体模型的搭建。

1.3 Cascade Rcnn 算法

在介绍具体算法之前,首先介绍一个参数:交并比IoU,如图3所示。IoU 是指交集与并集的比值,即模型产生的候选框与原标记框的交叠率[15]。

图3 IoU 示意Fig.3 Schematic diagram of IoU

在目标检测中,设定IoU 阈值即IoU_thr 称为类别置信度,其值在[0,1] 之间。当IoU=0 时,预测框与真值框的没有交集,此时结果最差;当IoU=1 时,预测框与真值框重合,此时结果最好。当预测候选框与原标记框的的交并比IoU>IoU_thr 时,视为正样本;反之,视为负样本[16]。

所采用的基于区域多级目标检测算法Cascade Rcnn,是以Faster Rcnn 算法为基础进行的多级Rcnn级联。Faster Rcnn 是单Rcnn 网络[17],单一IoU 阈值来判断正负样本不能对建议框进行很好的选择,训练出来的检测器效果也较为有限。本实验采用的Cascade Rcnn 是将3 个Rcnn 网络基于不同的IoU 阈值进行级联,如图4所示,将前一个Rcnn 网络的输出作为后一个Rcnn 网络的输入,随着模型的深入,界定正负样本的IoU 阈值不断上升,检测的结果也不断地优化[18]。

图4 Faster Rcnn 与Cascade Rcnn 架构图。(a)Faster Rcnn ;(b)Cascade Rcnn (Conv 为主干网络,pool 为池化,“H”为head network,C 为classification,B 为bounding box)Fig.4 Faster Rcnn and Cascade Rcnn architecture diagram.(a)Faster Rcnn;(b)Cascade Rcnn

图5为Cascade Rcnn 具体网络结构图,三阶段级联的Rcnn 可以优化正负样本的筛选过程。第一阶段Rcnn 的IoU 阈值为0.5,第二阶段Rcnn 的IoU 阈值为0.6,第三阶段Rcnn 的IoU 阈值为0.7。三阶段的级联方式,既可以避免阈值过低导致的正样本背景噪声干扰过大,又可以避免阈值过高造成的正样本数量过少从而导致的过拟合现象[19]。输入的图像经过卷积神经网络提取出特征图,特征图经过区域建议网络(region proposal network,RPN)提出大量建议框,按照建议框产生的分数进行排序,经过非极大值抑制(non-maximum suppression,NMS)滤掉一部分建议框,将剩下的建议框输入到Rcnn 网络中进行正负样本划分。之后将建议框输入到RoI pooling 进行池化,最后经过Softmax 进行良恶性结节分类与bounding box回归[20]。

图5 Cascade Rcnn 网络结构图Fig.5 Cascade Rcnn network structure diagram

1.4 主干网络

SENet(Squeeze-and-Excitation Networks)利用模型通道之间的相互依懒性,进行特征的压缩与激发。将SE 模块嵌入到ResNet 网络中,可以得到如图6所示的SE-ResNet 结构网络。该网络首先进行输入特征维度的降低,变为输入的1/r,接着通过ReLU 激活函数增加更多的非线性,有助于更好地拟合通道间复杂的相关性;然后通过一个FC 全连接层,恢复原来的维度;再然后通过一个Sigmoid 进行权重归一化;最后通过Scale 将归一化后的权重加权到每个通道特征上[21]。

图6 SE-ResNet 模块Fig.6 SE-ResNet module

实验中选用ResNet50 及ResNet101 为主干网络,并融合SENet 构建新型主干网络SE-ResNet50 及SEResNet101,利用SE 模块的压缩与激发功能,更好的提取甲状腺超声图像的特征。整体实验流程如图7所示。

图7 实验流程Fig.7 Experimental flowchart

1.5 迁移学习

由于实验数据量的限制,实验过程采用迁移学习的方式在大型数据库ImageNet 上进行预训练,得到预训练参数权重,将获得预训练模型权重迁移到级联卷积神经网络Cascade Rcnn 中,对前层网络参数进行冻结,通过微调后层网络参数进行实验。

1.6 参数设置

将恶性结节标注为malignant,良性结节标注为benign,设置实验epoch=20,在训练过程中采用优化策略,等间距调整学习率,由于本次实验训练过程使用的是单GPU,初始学习率设置为lr=0.002 5 ,学习率lr 采用warmup[22]的方式,刚开始训练时学习率线性增加,在第9 和11 个epoch 时降低学习率。训练过程中学习率变化曲线如图8所示。

图8 学习率变化图Fig.8 Learning rate change graph

1.7 损失函数

在检测过程中的损失函数包括以下4 个组成部分,如式(1)所示[23]。

总损失函数包括rpn 分类损失loss_rpn_cls,rpn回归损失loss_rpn_bbox,RoI 分类损失loss_cls,RoI 回归损失loss_bbox,4 个分支损失之和构成总损失[24]。

1.8 评价指标

为了定量的评估检测性能,结合临床应用,使用了4 个指标。其中,真阳性(true positive,TP)指恶性结节被正确判定为恶性;假阳性(false positive,FP)指良性结节被错误的判定为恶性结节;真阴性(true negative,TN)指良性结节被正确判定为良性;假阴性(false negative,FN)指恶性结节被错误判定为良性结节。用于图像分类的几种评价指标定义如式(2)~(5)所示,精确率(Precision)也称为查准率,用来衡量分类器检测出来的阳性样本确实是阳性样本的概率;召回率(Recall)也称为敏感性(Sensitivity)、查全率,值越高,阳性样本被漏诊的概率就越低;特异性(Specificity)也称为真阴性识别率,值越高,发生误诊的概率就越低。当准确率、精确率及召回率不足以评价一个模型好坏时,引入一个综合型评价指标F1 值(F1-measure),是精确率和召回率的调和平均值,如式(5)所示,F1 值越高,模型效果越好。mAP(mean average precision)是AP 的平均值,即平均精度均值。

2 结果

以ResNet50 为主干网络,进行迁移学习实验。在本实验数据集上从头开始训练网络模型,直接训练得到mAP=58.2%的实验结果;使用迁移学习,冻结预训练参数,通过微调的方式进行训练,得到mAP=78.7%的实验结果。使用迁移学习前后,mAP 值提升了19.5%,可以看出使用迁移学习的实验检测效果要明显优于从头训练甲状腺超声小数据集的实验效果。因此,预训练模型学习到的图像特征和获得的参数同样适用于甲状腺超声[21],后续的实验皆是在迁移学习的基础上进行的。

实验测试集303 张,设定恶性结节为正样本,良性结节为负样本。图9为检测的结果图。图中(a)~(c)的真实标签是benign,即良性,(a)预测为benign,预测分数高,为良性的概率高;(b)预测为benign,预测分数低,为良性的概率低;(c)预测为malignant,且预测分数0.84,预测错误;(d)~(f)的真实标签是malignant,即恶性,(d)预测为malignant,预测分数较高,为恶性的概率高;(e)预测为malignant,预测分数较低,为恶性的概率低;(f)预测结果为benign,预测错误。

图9 检测结果(绿色矩形框是模型预测的甲状腺结节的位置,矩形框上方标识着模型对结节的良恶性分类及类别分数概率值,红色矩形框为标注金标准)。(a)金标准为良性,预测为良性;(b)金标准为良性,预测为良性,但预测分数低;(c)金标准为良性,预测错误;(d)金标准为恶性,预测为恶性;(e)金标准为恶性,预测为恶性,但预测分数低;(f)金标准为恶性,预测错误Fig.9 The test result graph (The green rectangular box is the location of the thyroid nodule predicted by the model.The upper part of the rectangular box marks the benign and malignant classification of the nodule by the model and the probability value of the category score. The red rectangular box is the gold standard for labeling. GT represents ground truth). (a)GT is benign with high category score; (b)GT is benign with low category score; (c)GT is benign with false classification; (d)GT is malignant with high category score;(e)GT is malignant with low category score; (f)GT is malignant with false classification

SE-ResNet101 为主干网络的模型训练及测试过程中的准确率曲线图及损失率曲线图如图10 所示,从曲线中可以看出,训练与测试的准确率稳定收敛,训练与测试的损失率曲线稳定收敛,证明了实验做采用的Cascade Rcnn 算法在超声甲状腺结节检测上的有效性。

图11 为测试过程中4 个损失函数对应的损失变化曲线,4 个损失函数曲线之和对应图10 的测试损失总曲线。图10 和图11 中,浅色曲线对应tensorboard 可视化结果中平滑度Smooth 为0,深色曲线对应平滑度为0.6。

图10 实验过程曲线。(a)训练准确率曲线;(b)训练损失率曲线;(c)测试准确率曲线;(d)测试损失率曲线Fig.10 Accuracy and loss rate curves of training and testing. (a)Training accuracy rate curve; (b)Training loss rate curve; (c)Test accuracy rate curve; (d)Test loss rate curve

图11 测试损失函数各分支曲线;(a)回归框损失曲线;(b)分类损失曲线;(c)区域建议回归框损失曲线;(d)区域建议分类损失曲线Fig.11 The branch curves of the test loss function.(a)Loss_bbox curve;(b)Loss_cls curve;(c)Loss_rpn_bbox curve;(d)Loss_rpn_cls curve

在测试集上的测试结果如表1所示,融合SE 模块到ResNet 主干网络的算法,与对应的ResNet 主干网络相比,在精确率上提升1.10%±0.55%、在召回率上提升6.20%±0.50%、在特异性上提升5.59%±1.45%、在mAP 值上提升2.1%±0.70%,检测结果有较为显著的提升。其中,以SE-ResNet101 为主干网络的Cascade Rcnn 算法,在本实验中的数据集上实现了测试精确率92.4%,召回率86.2%,特异性95.1%,F1 值89.2%,mAP 值82.4%的效果。由此可见,所采用的基于融合主干网络结构SE-ResNet 的Cascade Rcnn 目标检测算法,在超声甲状腺结节定位、分类的检测中具有良好的性能,可更有效地辅助超声科医生进行诊断,减少工作量。

表1 测试结果Tab.1 Test results

3 讨论

甲状腺癌不断攀升的发病率,严重危害人类健康。甲状腺组织结构复杂,周围组织结构具有一定的相似性,病灶点具有随机性,肿瘤区域与正常的甲状腺组织区域之间存在边界模糊不清、以及边界不连续的情况[25],这些因素导致了准确划分肿瘤区域与正常组织边界的困难。对甲状腺结节进行准确定位,成为了医生诊断的首要任务。

此外,结节良恶性在灰度超声图像上的表现征象具有一定的重叠性,常表现为同病异影、异病同影,导致甲状腺结节的良恶性鉴别诊断难度升级。

超声图像读片诊断任务繁重,给医生带来了很大困扰。因此,准确快速的对甲状腺超声结节进行定位、良恶性鉴别是一项挑战性的难题,对于辅助医生诊断具有重要意义。

对甲状腺超声图像结节的定位、良恶性判别的早期算法研究,主要集中在集成学习、人工神经网网络上。集成学习分类器的参数设定以及组件学习器的权重设置,对实验者本身的经验要求较高,分类结果中表现出的泛化误差较大,模型收敛速度较慢,人工成本较高[26]。基于人工神经网络的分类算法通过计算机进行自主学习,加入反馈机制,通过误差反向传播算法对网络模型参数权重进行优化,[27]。但是,人工神经网络应用在甲状腺超声结节的分类时,由于超声图像斑点噪声高,甲状腺结节组织结构复杂,特征提取器在提取特征时,隐藏层的信息传播不稳定,修正误差需要一直调整更新[28]。

基于深度学习的图像检测算法弥补了集成学习不能自动调整参数权重的缺陷,改善了人工神经网络算法不能及时修正误差的问题缺陷。基于此,本研究以计算机辅助医疗诊断为目的,采用基于级联卷积神经网络Cascade Rcnn,通过三级级联Rcnn 的方式来进行甲状腺超声结节的检测。

单检测器Rcnn 网络,IOU 阈值设置的低,会出现大量的低质量检测建议框;IOU 阈值设置的高,只有少量的高质量检测建议框,模型训练没有足够的输入,会造成过拟合。比如文献[29]中,采用Faster Rcnn 网络,单一IOU 阈值的情况下,实现了甲状腺超声结节真阳性识别率75.7%,检测效果有限。在所采用的Cascade Rcnn 网络中,采用三级级联Rcnn,不同检测器递增IOU 阈值,获得足够多数量的高质量检测建议框,避免了过拟合现象的发生,使模型得到充分的训练。

本研究通过对超声甲状腺图像数据集进行裁剪、填充、labelme 软件标注,制作成标准的COCO 数据集。通过验证迁移学习的有效性,将迁移学习应用在其中,减轻数据量较小对实验结果的影响。

在网络结构方面,三级级联的Cascade Rcnn 卷积神经网络,在提高检测候选框质量的同时,也提升检测性能;在主干网络方面,通过融合压缩激励模块SE 到残差网络结构ResNet 中,构建的SE-ResNet50及SE-ResNet101 网络作为Cascade Rcnn 的主干网络,通过与对应的残差主干网络ResNet50、ResNet101对比,在精确率、召回率、特异性、mAP 等常用的检测分类指标上都有明显的提升,在测试集上实现了92.4%的精确率,86.2%的召回率,95.1%的特异性,89.2%的F1 值,82.4%的mAP 值效果。从实验结果可以看出,本研究所设计的基于Cascade Rcnn 的超声甲状腺结节检测算法检测效果显著,能够较为有效的进行超声甲状腺结节的定位及良恶性分类。

相比于早期对甲状腺超声结节定位分类较好的研究结果,比如参考文献[6]中的K-means 聚类动态集成实现的90.2%的分类准确率,参考文献[8]中跨层连接Zfnet 实现的93.5%真阳性识别率和81.5%的真阴性识别率,本实验的研究结果在综合评价指标上具有更高的可靠性及准确性。

当然,本实验也有一定的局限性。首先,实验所采集的超声甲状腺图像数量有限,包含的良恶性结节图像数量也有一定的不平衡性,在后续研究中,如果能增加实验的数据量,则会在一定程度上增加实验结果的鲁棒性,同时也会考虑使用不同权重惩罚样本误差来解决类不平衡的问题[30];其次,甲状腺结节在临床上除了良恶性分类,还有明确的结节分级标准TIRADS[31],后续研究会通过向超声科医生进一步学习超声病理知识,将甲状腺超声图像的病理征象分级标准进行量化,提取相对应的病理特征,进一步实现超声甲状腺结节的分级。

4 结论

本研究验证了在小型的甲状腺超声数据集上,迁移学习应用在深度学习算法上的有效性,以级联卷积神经网络Cascade Rcnn 为基础网络,通过级联Rcnn的方式提高了检测候选框的质量;融合压缩激励模块于残差模块中得到SE-Resnet 网络,将其作为Cascade Rcnn 的主干网络,与对照组主干网络相比,在精确率、召回率、特异性等方面有明显的提高,为自动化地检测超声甲状腺结节提供了一种较为有效的方法。

猜你喜欢
恶性结节分类
NEAT1和miR-146a在结核性与恶性胸腔积液鉴别诊断中的价值
乳腺结节状病变的MRI诊断
肺结节,不纠结
发现肺结节需要做PET/CT吗?
恶性胸膜间皮瘤、肺鳞癌重复癌一例
分类算一算
探讨超声检查在甲状腺肿块良恶性鉴别中的诊断价值
力挽恶性通胀的美联储前主席保罗·沃尔克逝世,享年92岁
体检查出肺结节,我该怎么办
教你一招:数的分类