掌桥专利:专业的专利平台
掌桥专利
首页

一种基于卷积神经网络的肺结节检测方法

文献发布时间:2023-06-19 09:38:30


一种基于卷积神经网络的肺结节检测方法

技术领域

本发明属于深度学习图像检测领域,涉及一种基于卷积神经网络的肺结节检测方法。

背景技术

早期的肺结节通常很小,没有固定的形状,因此肉眼难以辨别,当良性肺结节不断发展成恶性肺结节,肺癌由此产生。现实中,通常通过肺部CT图像来检测肺结节。肺结节作为肺癌的早期表现,检测肺结节对预测肺癌有重大的意义。然而,肺结节体积小,传统的C影像肺结节检测方法不仅步骤繁琐、处理速度慢;临床上肺结节检测方法为医师通过观察肺部的CT图像,来识别病人是否有肺结节,而通常一个病人的完整CT序列数量较多,工作量大,易被遗漏。因此,发明一种自动检测肺结节的方法尤为重要。

随着深度学习卷积神经网络的不断发展,越来越多的医学疾病领域可以借助卷积神经网络来研究,尤其是对于微小病灶的检测与分割,卷积神经网络有着更好地检测分类效果。

发明内容

为了解决现有问题,检测出体积较小,形状不一的肺结节,并且从真阳性结节中筛选出假阳性结节,本发明提供一个基于卷积神经网络的肺结节检测方法,用于协助医生进行肺部疾病诊断,实现更快、更准确地检测患者肺部疾病。为了实现上述目的,本发明采用的技术方案:

一种基于卷积神经网络的肺结节检测方法,步骤包括:

第一步:分割出肺实质

1.1使用3D-Unet网络对原CT图像进行分割,得到肺实质三维图像。1.2将得到的肺实质三维图像按Z轴切分成二维切片图像。

1.3将得到的二维切片图像按照目标检测中主流的VOC2007数据集格式制作成新的数据集。

第二步:构建肺结节检测网络

将得到的数据集送入到目标检测网络Faster R-CNN中,检测出包含肺结节的区域,获得候选结节,具体如下:

2.1将数据集中的图片输入特征提取网络,进行主干特征的提取,

2.2利用区域生成网络RPN,进行包围框第一次修正,区分背景与肺结节。

2.3利用ROI Pooling层进行包围框的二次修正,获得候选肺结节。

第三步:构建肺结节分类网络

3.1将含有候选肺结节的图像通过计算坐标之间的欧氏距离将其合并,获得较小的三维CT图像。

3.2将此较小的三维图像送入到3D卷积神经网络进行肺结节假阳性的筛选。

第四步:模型训练

将部分数据集作为训练集送入到模型中,使用优化器更新参数,对网络进行优化,对学习率进行自动调参,得到训练完成的分类网络。

第五步:模型预测与评估

将剩下的数据集作为测试集送入第四步已经训练好的模型中测试,得出分类结果。

采用上述技术方案带来的有益效果:

提取完肺实质后,不仅可以有效提高神经网络的对目标区域的关注,而且可以有效降低参数数量。在完成初步的候选结节检测的步骤后,选取了靠近肺结节中心的目标区域做结节检测,缩小了整体检测的范围,得到了比较准确的分类效果,提高了分类的性能。

附图说明

图1为本发明的流程图。

图2为本发明的3D U-net结构图。

图3为本发明的Faster R-CNN结构图。

图4为本发明的3D卷积神经网络结构图。

具体实施方式

下面结合附图和具体实施方式对本发明作进一步的详细说明。

本发明构造了一种基于卷积神经网络的肺结节检测方法,具体步骤如下:

第一步:分割出肺实质

使用3D U-Net网络对肺部进行分割提取肺实质,将得到的肺实质三维图像按Z轴切分成二维切片图像。3D U-Net网络的编码模块包括5组卷积和4次下采样操作。与之对应的解码部分也包括4组卷积和4次上采样操作。

解码部分采用跳跃连接的方式,将编码的高层语义信息与解码的低层语义信息做拼接操作,保证了最后融合出的特征图融合了更多的低层的特征,四次上采样操作也使得分割边缘等信息更加精细。

第二步:制作成VOC2007格式的数据集

按照标准的VOC2007的数据集将每一张二维切片图像命名成类似000001.jpg这样的图像名,将标签制作成.XML文件放入到注释文件夹下;JPEGImage中存放步骤切分好的二维切片图片;ImageSet/Main文件下存放之后生成的.text文件,其中包含了二维切片图像的名称,是否含有结节,以及结节的左上角和右下角的位置坐标。

第三步:构造结节检测网络Faster R-CNN

其中特征提取网络采用VGG16卷积神经网络进行主干特征的提取,利用区域生成网络RPN,生成候选的结节,将候选的目标框(anchor)进行二分类,并且只对含有目标的目标框进行位置回归。

区域生成网络RPN的具体流程如下:

区域生成网络RPN利用滑动窗口(3*3卷积)在特征图上滑动,为每个位置生成9种预先设置好长宽比不同大小的目标框。初始目标框包含三种面积(128×128,256×256,512×512),每种面积又包含三种长宽比(1:1,1:2,2:1)。区域生成网络RPN第一个需要做的是判断这个目标框是否覆盖结节,第二个是为覆盖有结节的目标框进行第一次坐标修正。

对于RPN输出的特征图中的每一个点,一个1×1的卷积层输出了18个值,因为是每一个点对应9个目标框,每个目标框有一个前景分数和一个背景分数,所以是9×2=18个值。另一个1×1的卷积层输出了36个值,由于每一个点对应9个目标框,因此每个目标框对应了4个修正坐标的值,所以是9×4=36个值。

区域生成网络RPN网络需要利用交并比(IoU)判定每个目标框是前景还是背景,如果一个目标框与真实框的IoU在0.7以上,那我们把这个目标框当作前景(正样本)。类似地,如果这个目标框与真实框的IOU在0.3以下,那么这个目标框就算背景(负样本)。

在训练目标框属于前景与背景的时候,需要确保正负样本的平衡,当正负样本不平衡的时候需要使用数据增强的方式对较少样本进行数量扩充,之后使用交叉熵损失函数进行分类训练。

目标框边框坐标修正的训练方法主要由4个值完成,tx,ty,th,tw。这四个值的意思是修正后的框在目标框的x和y方向上做出平移(由tx和ty决定),并且长宽各自放大一定的倍数(由th和tw决定)。此处采用SmoothL1loss进行训练网络参数得到这四个值。

又因为同一个目标上可能会有多个目标框覆盖重叠,因此使用非极大抑制的方法选取交并比靠前的候选结节,丢弃那些交并比较小的候选结节,以此减少计算量。

最后利用ROI Pooling层进行包围框的二次修正,检测出肺结节所在的区域。

第四步:构建肺结节分类网络

肺结节检测出来的疑似结节有两种情况,真性结节和非真性结节(包含假阳性结节和非结节),可以看成是一个二分类问题,真性结节为正样本,非真性结节为负样本。

肺结节三维立体数据中,肺结节的总体直径大小在3-20毫米间,大部分的肺结节直径大小在10毫米左右,在数据集中,其中大多数的肺结节直径在10毫米以下。为了减少这些结节的数量,获得结节之间的关联性,将含有肺结节的图像通过计算坐标之间的欧氏距离将其合并,本发明设计的三维卷积神经网络的输入是大小为32*32*32的CT图像,输入数据是以肺结节的中心点坐标进行剪切的。最后将得到的三维CT图像送入到3D卷积神经网络进行肺结节假阳性的筛选。

3D卷积神经网络包含3组卷积、池化操作,每组卷积附加激活函数ReLU作为激活层,此外,为了防止过拟合,在池化层之后采取随机丢弃操作(3*3*3conv+2*2*2pooling+0.3dropout),即3*3*3的卷积神经网络加上2*2*2的池化层接着加上随机丢弃使30%的神经元失活,3个全连接层以及最后的softmax层,经过网络训练,得到肺结节的分类。

第五步:模型训练

本发明的实验平台为Keras,实验的硬件环境为NVIDIA GTX1080Ti单个GPU,IntelCorei7处理器,软件环境为Keras。

将70%的数据集作为训练集送入到模型中,使用he_normal方法对权重进行初始化,学习率设置为1e-4,采用Adam优化器更新参数,使用二分类交叉熵损失函数,训练与测试的batchsize取2。

第六步:模型预测与评估

将剩下的30%的数据集作为测试集送入已经训练好的模型中测试,得出分类结果。模型采用受试者工作特征曲线(ROC)作为实验性能的评价指标,横轴为假阳率FPR,纵坐标为真阳性率TPR。准确率定义为ACC。

相关技术
  • 一种基于双路三维卷积神经网络的肺结节检测方法
  • 一种基于卷积神经网络的肺结节检测方法
技术分类

06120112241714