Faster RCNN模型和SCP方法在肝包虫病病灶位置估计中的研究
2021-10-13刘志华卡迪力亚库尔班李丰军严传波
刘志华,卡迪力亚·库尔班,李丰军,严传波
新疆医科大学 a. 公共卫生学院;b. 医学工程技术学院,新疆 乌鲁木齐 830011
引言
肝包虫病又称作肝棘球蚴病,是一种因棘球绦虫的幼虫寄生于人体肝脏而导致的寄生虫病[1-2]。肝包虫病是牧区常见的人畜共患寄生虫疾病,在我国多见于新疆、西藏、青海、甘肃、宁夏、内蒙古、四川等西北农牧区, 严重危害人体健康和畜牧业的发展, 是严重的公共卫生问题[3]。肝包虫病患者在患病初期无特异性的症状及体征,随着包囊的生长,患者出现腹部不适、疼痛、恶心、呕吐等临床体征表现,当囊肿破裂时,将会引发机体感染甚至发生过敏反应等并发症,对人体健康造成极大危害。如今,治疗肝包虫病的首选方案是手术,但无论何种手术方式其术后并发症的发生率都达到了60%[4-5],对人体产生极大危害,然而通过对医学图像进行病灶检测可以协助医生诊断疾病,有效减少疾病的死亡率。在病灶检测方面,国外研究学者做了一些研究,提出一个深度目标检测网络定位视盘和视杯来进行青光眼的筛查和诊断[6]。有研究提出一种改进的自动脑肿瘤分割和识别方法,利用人工神经网络和灰度特征对脑瘤进行分析诊断,区分良恶性病例[7]。Yahalomi等[8]训练了一种更快的用于目标检测的机器视觉神经网络,来识别和定位前后X射线图像中的桡骨远端骨折,对骨折的识别正确率为96%。除此之外,国内许多学者在肝包虫病分类[9-10]、分割[11-13]方面做了一些研究,但存在超参数调整困难、模型预测存在很多假阳性、误分较多、需要人工交互、相邻器官之间边界轮廓分割不精确等问题。以上仅仅是对肝包虫病病灶分类、分割方面的研究,并没有对肝包虫病在肝脏发病的位置进行统计学意义的研究,然而统计常发病的位置对区分鉴别肝硬化、肝囊肿等病变具有指导意义。因此,本文提出使用深度学习的方法对肝包虫CT图像进行病灶检测,然后统计并分析病灶区域在肝脏左右叶发生的位置,确定了常发病的位置,有助于辅助医生快速诊断疾病,增强诊断准确性和减少漏诊率,为后续对病灶区域进行纹理分析提供帮助。
1 方法
1.1 数据处理
在放射科医师的指导下,本文选取单囊型和多囊型肝包虫病CT图像1000张,实验数据均来自新疆医科大学各附属医院放射科。在获取肝包虫病CT图像后,需要对图像进行预处理操作,使图像尽可能地反映诊断时所需的图像信息。本实验对图像进行以下预处理操作:① 对图像进行灰度归一化,减少后续计算量;② 使用改进的中值滤波算法对图像进行去噪;③ 常用的数据增强方法有添加噪声、旋转、翻转、平移等[14]。图像翻转是在几乎不改变图像数据分布的情况下,数据翻倍。本文使用垂直翻转、水平翻转的方法[15]对图像进行数据增强,增强后的图像共3000张。以单囊型肝包虫病CT图像为例,图像预处理后的效果及图像增强后的效果如图1所示。
图1 图像预处理效果
1.2 目标检测模型
卷积神经网络基本结构主要包括卷积层、池化层、全连接层及输出层。卷积神经网络根据图像数据逐层抽象提取原始医学图像中隐藏的数据信息,随着特征提取网络层数越深,提取出来的特征越丰富,提取特征的效果就越好。Faster RCNN常用的特征提取网络主要有ZFNet、VGGNet、ResNet等。ResNet网络在2015年首次提出,在ImageNet比赛分类任务上获得第一名,之后许多方法基于ResNet网络在图像检测、分割等领域得到广泛应用。ResNet网络常被用于骨干网络对输入图像进行特征提取,为解决深度网络训练过程中的退化问题,其将残差思想引入网络结构中,在深层网络与浅层网络间引入跳跃连接增加网络层[16]。ResNet101采用bottleneck结构搭建更深的网络层,增强学习能力,利用1×1卷积减少通道数以降低计算量,采用恒等快捷连接实现跳跃连接,加快收敛速度。因此,本文将ResNet101网络代替原始的VGG16网络作为肝包虫病CT图像检测的特征提取网络,对肝包虫病CT图像进行病灶检测。bottleneck结构图如图2所示。
图2 残差块结构图
1.3 建立肝脏分区标准
在影像科医师的指导下,找到肝包虫病CT图像的八个解剖标志:下腔静脉、肝右静脉、肝中静脉、肝左静脉等,以肝左静脉和下腔静脉连线作为纵轴,同时建立坐标系,以肝脏八段划分法标准建立肝脏分区,并找到每一区域的质心点。图中红色纵轴以肝左静脉为界限分为Ⅰ、Ⅱ、Ⅲ段和Ⅳ段,紫色射线以肝中静脉为界限分为Ⅳ段和Ⅴ/Ⅷ段,绿色射线以门静脉为界限分为Ⅴ/Ⅷ段和Ⅵ/Ⅶ段,坐标系中红点为所在区域质心点。肝脏分区图如图3所示,建立坐标系分区图如图4所示,肝脏分区标准信息如表1所示。
图3 肝脏分区图
图4 坐标系图
表1 肝脏分区标准信息
1.4 SCP方法
关于目标检测模型的定位问题,不少的研究者进行过相关研究,如一些学者首先使用Canny算子识别目标区域的轮廓,再使用Hough梯度圆变换算法、最小二乘法、形心偏差法等方法定位目标,该方法取得了不错的效果,但定位结果存在一定的偏差[17-19]。蒋芸等[20]利用YOLO算法对眼底图像视盘定位,该方法检测效果较好,但对目标的标注花费大量时间。李传朋[21]通过计算目标检测框中心的方法实现定位,然而该方法对位置的统计存在一定的误差。由于肝包虫病病灶大小不一,拍摄CT图像时每个人的体位不同,仅仅通过计算目标检测框的中心不足以说明病灶在肝脏每一区域的位置。针对上述问题本文提出一种Sobel算子和连通区域与极坐标融合的方法(Sobel Operator and Connected Component and Polar Coordinate Fusion Method,SCP)对病灶在肝脏区域的位置进行统计。本文基于CT图像器官轮廓的质心点和病灶的质心点构建极坐标系,以水平方向为单位始向量,利用空间余弦定理计算目标向量和单位始向量的夹角,单位始向量的夹角即为极角,目标向量的模即极径。
2 实验结果与分析
2.1 目标检测结果
本实验目标检测模型的检测结果使用平均精度、均值平均精度等评价指标进行模型性能评价,模型性能评价结果如表2所示。图5所示为模型对两类肝包虫病CT图像的检测结果。图5a为单囊型肝包虫病CT图像检测结果,图5b多囊型肝包虫病CT图像检测结果。
表2 模型对肝包虫病CT图像的性能评价
图5 目标检测模型检测结果
由表2可知,对于两种类型的肝包虫病CT图像病灶检测,基于ResNet101的特征提取网络比基于VGG16的特征提取网络在AP、mAP指标上都取得了较好的效果,说明更深层的网络在肝包虫病检测任务上具有更优秀的特征表达能力。基于ResNet101特征提取网络的两种类型肝包虫病CT图像的平均识别率均有所提高,然而对于多囊型肝包虫病CT图像的平均识别率提高了3.5%,由0.870提高至0.905,说明基于ResNet101的特征提取网络对多囊型肝包虫病CT图像的检测识别效果较好。由表2可知,基于ResNet101特征提取网络的漏检率、错检率均低于基于VGG16的特征提取网络,说明基于ResNet101的特征提取网络病灶检测结果较好,对病灶检测时存在的错检及漏检率较小,使用深度学习方法对肝包虫病的病灶检测具有一定的可行性,在测试集上取得了良好的效果。
2.2 SCP方法结果
使用计算机估计某病常发位置,必须以器官CT轮廓为参考建立坐标系,常见的坐标系有直角坐标系、极坐标系,又由于从医学角度对器官分区时某分区可能跨直角坐标系的两个象限,不易估计病灶位置。因此,本实验采用极坐标系来描述病灶在器官中的位置。为了构建极参考系,必须确定极点和极径,本实验采用器官CT轮廓质心点作为极点,病灶的质心点作为终点。本实验基于这两个质心点构建目标向量,以水平方向为单位始向量,利用空间余弦定理计算目标向量和单位始向量的夹角,即为极角,目标向量模即极径。
本实验使用Sobel算子提取CT图像器官轮廓,并使用连通域方法得到CT图像器官轮廓的质心点,图6所示为Sobel算子提取CT图像器官轮廓边缘的结果,图7所示为使用连通域方法得到的CT图像器官轮廓质心点位置,图8所示为病灶质心点与CT图像器官轮廓质心点在CT图像中的位置,表3所示为部分图像器官轮廓质心点坐标。
图6 Sobel算子边缘提取结果
图7 CT图像器官轮廓质心点
图8 质心点位置图
表3 多例图片名称对应的图像质心点
基于两个质心点建立极坐标系,如图9所示为建立的极径极角图,根据肝脏分区标准信息,可以得到各区域图像数量以及极径极角范围。本研究使用秩和检验方法对不同区域的极径和极角进行统计学意义的研究,表4所示为肝包虫病CT图像在各区域的极坐标信息统计结果。
图9 极径极角图
表4 CT图像在各区域的极坐标信息统计结果
本研究对测试集中的数据使用秩和检验方法统计得到了表4所示的单囊型和多囊型肝包虫病的极径和极角信息在肝脏分区中的统计分析结果,从表4可知,H=402.25,P<0.001,四个区域的极角之间具有显著性差异,四个区域的极角大小不全相同;H=39.69,P<0.001,四个区域的极径之间具有显著性差异,四个区域的极径大小不全相同。
2.3 统计肝包虫病常发位置
基于肝包虫病CT图像在各区域的极径极角范围,可以得到单囊型和多囊型肝包虫病CT图像在各区域的数量,从而可以得到肝包虫病在各区域的百分比。根据在各区域占比大小可以得出肝包虫病在肝脏区域常发位置。表5所示为肝包虫病CT图像各区域数量一般统计结果,表6所示为肝包虫病CT图像各区域百分比统计结果。
表5 肝包虫病CT图像各区域数量一般统计结果[n(%)]
表6 肝包虫病CT图像各区域占比统计结果
本研究使用卡方检验方法对得到的极坐标进行统计,得出表5所示的单囊型和多囊型肝包虫病CT图像在肝脏各区域的数量,由表5可知,单囊型肝包虫病在Ⅱ区、Ⅴ区/Ⅷ区的数量多于多囊型肝包虫病,而多囊型肝包虫病在Ⅳ区、Ⅵ/Ⅶ区的数量多于单囊型肝包虫病。基于表5统计结果,本文使用卡方检验方法得到表6所示的单囊型和多囊型肝包虫病CT图像在肝脏各个区域的占比,由表6可知,χ2=20.896,P<0.001,差异有统计学意义,单囊型和多囊型肝包虫病在肝脏各个区域的占比不全相同。经过两两比较后,单囊型肝包虫病在Ⅳ区和Ⅴ/Ⅷ区、Ⅴ/Ⅷ区和Ⅵ/Ⅶ区的占比有差异,在Ⅱ区和Ⅳ区、Ⅴ/Ⅷ区、Ⅵ/Ⅶ区的占比无差异;多囊型肝包虫病在Ⅳ区和Ⅴ/Ⅷ区、Ⅴ/Ⅷ区和Ⅵ/Ⅶ区的占比有差异,在Ⅱ区和Ⅳ区、Ⅴ/Ⅷ区、Ⅵ/Ⅶ区的占比无差异,且单囊型和多囊型肝包虫病在肝脏的Ⅳ区占比较高,Ⅵ/Ⅶ区次之。又由于单囊型肝包虫病囊壁发生破裂后,会逐步增长为多囊型肝包虫病,因此在单囊型肝包虫病囊壁无破裂的情况下,单囊型和多囊型肝包虫病常发病位置分别在肝脏的Ⅳ区、Ⅵ/Ⅶ区,Ⅴ区/Ⅷ区次之,在单囊型肝包虫病破裂的情况下,肝包虫病的常发位置主要在Ⅳ区、Ⅵ/Ⅶ区。
3 讨论
本研究使用Faster RCNN模型和SCP方法统计肝包虫病在肝脏区域常发病位置,基于ResNet101的目标检测模型对肝包虫病病灶的检测准确率达到了89.6%,说明该模型能够有效地检测出病灶从而可以得到病灶的质心点坐标;然后使用SCP方法统计出肝包虫病常发病位置主要发生在肝脏的Ⅳ区、Ⅵ/Ⅶ区。一些学者在目标定位方面使用边缘检测、目标检测等方法来确定目标位置,然而这些研究方法存在一些问题,如耗费时间、计算量大、定位结果有误差等,因此,以往的研究方法对目标位置的定位具有一定的局限性。本研究将目标检测方法和极坐标系相结合来确定病灶的发病位置,相比于使用直角坐标系中的坐标点确定常发位置更具有可靠性。除此之外,该方法使用极径和极角确定病灶常发病位置结果更加精确,并且具有统计学意义。因此,本文方法相比于前人的研究具有一定的创新性。
4 结论
本文将Faster RCNN网络应用于肝包虫病CT图像的目标检测,并使用SCP方法统计肝包虫病在肝脏的发病位置,该方法可以辅助医生诊断疾病,减少漏检、错检的发生,同时能够为医生诊断提供导向,更高效地诊断疾病,做到早发现、早诊断、早治疗。本研究使用基于ResNet101网络的目标检测模型能够较好地检测肝包虫病病灶,模型检测准确率达到了89.6%,并使用 SCP 方法统计出肝包虫病常发位置在肝脏的Ⅳ区、Ⅵ区/Ⅶ区。然而该方法对肝包虫病CT图像器官轮廓的质心点位置确定存在一定的偏差,本文后续将继续研究对器官轮廓质心点的精确位置定位,通过大量数据对CT图像器官轮廓的质心点进行聚类,以求得精确的质心点位置。除此之外,该方法具有一定的普适性,可以将肝包虫病常发病位置估计方法应用于其他疾病的研究,通过确定疾病常发病的位置,对早期发现疾病具有一定的临床价值,即能减轻患者病痛,又能节省医疗资源。