基于2D卷积神经网络的肺结节检测方法与流程

文档序号:15689053发布日期:2018-10-16 21:39阅读:215来源:国知局

本发明涉及智能医学影像分析技术领域,尤其涉及一种基于2d卷积神经网络的肺结节检测方法。



背景技术:

肺部ct图像为三维图像,每个图像包含一系列胸腔的多个轴向切片。每个三维图像由不同数量的二维图像组成。其二维图像数量可以基于不同因素变化,比如扫描机器、被扫描用户。

由于现有肺结节检测方法为了结合ct图像的三维属性,通常基于3d卷积神经网络进行肺结节检测,其处理过程较复杂,占用资源也较多,并且由于每个ct的切片厚度并不一定相同,统一的3d卷积处理方法并不适用。



技术实现要素:

本发明的目的是提供一种基于2d卷积神经网络的肺结节检测方法,可以加快肺结节的检测效率,并提高检测的精度。

本发明的目的是通过以下技术方案实现的:

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

对训练集中每一ct图像,根据标注的结节位置,提取过结节中心的切片图像、以及其上下相邻两个切片图像;针对每一种切片图像,训练一个疑似肺结节检测模型:首先,输入至特征提取网络,通过判断是否是结节的二分类输出以及边界框预测,获得结节的建议区域;然后,将获得的建议区域输入到roipooling层进行特征图的尺寸标准化处理;最后,通过两个全连接层输出至分类概率预测层与边界框预测层;

对于训练数据中正负样本做预处理来平衡正负样本的比例,之后,还利用预筛选模型对于预处理后的负样本进行分类,筛选出分类错误的负样本;再利用预处理与筛选后的训练数据来训练出三个弱分类模型;

在检测过程中,利用训练好的三个疑似肺结节检测模型对待检测ct图像进行检测,获得的疑似结节的分类概率和其边界框,再利用训练好的三个弱分类模型,进行分类,对三个弱分类模型的分类结果进行多数投票选出最终的分类结果。

由上述本发明提供的技术方案可以看出,通过疑似结节检测与降低假阳性的方式来提高检测精度;同时,2d卷积不会受切片厚度的影响,计算过程简单,整个检测过程可以自动完成,也加快了快肺结节的检测效率。

附图说明

为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他附图。

图1为本发明实施例提供的一种基于2d卷积神经网络的肺结节检测方法的流程图;

图2为本发明实施例提供的疑似结节检测模型图;

图3为本发明实施例提供的七种比例的先验边界框示意图;

图4为本发明实施例提供的对正负样本做预处理的流程图。

具体实施方式

下面结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明的保护范围。

本发明实施例提供一种基于2d卷积神经网络的肺结节检测方法,如图1所示,其主要包括:

1、训练疑似肺结节检测模型。

对训练集中每一ct图像,根据标注的结节位置,提取过结节中心的切片图像、以及其上下相邻两个切片图像;针对每一种切片图像,训练一个疑似肺结节检测模型(共训练出三个疑似肺结节检测模型):首先,输入至特征提取网络,通过判断是否是结节的二分类输出以及边界框预测,获得结节的建议区域;然后,将获得的建议区域输入到roipooling层进行特征图的尺寸标准化处理;最后,通过两个全连接层输出至分类概率预测层与边界框预测层;该过程最终获得的是疑似结节的分类概率和其边界框。具体来说,对一个ct图像提取切片后,将切片输入上述提到的疑似肺结节检测模型,然后得到大量的疑似结节在该切片中的位置和概率,由于这一步得到的疑似结节较多,其中包含许多与真正结节相似的假结节,需要经过后续假阳性降低方法来对上述得到的疑似结节进行分类,从而减少预测错误的疑似结节数量。

2、训练三个弱分类模型。

对上述疑似肺结节检测模型预测得到的疑似结节,本发明实施例提出假阳性降低方法进行进一步分类,尽可能的去除预测错误的疑似结节。首先训练分类模型之前,需要对于训练数据中正负样本做预处理来平衡正负样本的比例,之后,利用预筛选模型对于预处理后的负样本进行分类,筛选出分类错误的负样本;再利用预处理后的正样本、筛选出的分类错误的负样本来训练出三个弱分类模型;

3、在检测过程中,利用训练好的三个疑似肺结节检测模型对待检测ct图像进行检测,获得的疑似结节的分类概率和其边界框,再利用训练好的三个弱分类模型,进行分类,对三个弱分类模型的分类结果进行多数投票选出最终的分类结果。

本发明实施例上述方案主要包括:训练阶段与检测阶段,其中训练阶段主要包括疑似肺结节检测与假阳性降低两个部分,下面针对这两个阶段做详细说明。

一、训练阶段。

1、疑似肺结节检测模型。

如图2所示,为疑似肺结节检测的模型图,其过程如下:

1)对训练集中每一ct图像,根据标注的结节位置,提取过结节中心的切片图像、以及其上下相邻两个切片图像,针对每一种切片图像训练一个疑似肺结节检测模型,测试过程中每个切片输入三个模型得到疑似结节。图1所示的模型图是针对一种切片图像而言,另外两种切片图像执行过程相同,从而获得三个疑似肺结节检测模型。我们是用这三个疑似肺结节检测模型进行肺结节检测,检测的时候也是利用与训练时相同的方式,选取待检测ct图像的三种切片图像,然后分别输入到三个疑似肺结节检测模型进行肺结节检测,最后获得分类概率预测结果与边框预测结果,然后,根据这些结果确定是否为肺结节。

本发明实施例中,已有数据集中包含2n个子集,每次从中选出2n-1个子集作为训练集来训练特征提取网络,剩余的1个子集作为测试集,采用交叉验证的方式,由于共进行2n次测试,每次选用1个子集做测试得到其结果,所以最后合并2n次测试结果,也就是取并集,从而得到全部子集的测试结果。

示例性的,已有数据集可以为luna16中的数据,其包含10个子集,我们进行交叉验证,每次取出9个子集来训练网络,1个子集做测试,最后合并十次测试的结果。

2)将切片图像输入至特征提取网络。

本发明实施例中,所述特征提取网络可为vgg16网络;其包含有若干卷积层,最后一个卷积层之后设有一反卷积层,从而扩大特征图的大小。

3)将第三卷积层与反卷积层分别连接一个区域建议网络,利用这两个区域建议网络,来获得结节的建议区域:每一个区域建议网络等效于使用一个m×m的滑动窗口在相应的第三卷积层或反卷积层产生的特征图上进行滑动,也就是使用一个卷积核大小为m×m的卷积层对特征图进行卷积运算。在每个滑动窗口位置,进行m种尺度的先验边界框的预测,即对每个滑动窗口位置预测m个区域,每个区域连接到两个输出层,第一个输出层为分类层用于判断是否是结节的二分类输出,第二个输出层回归层,用于预测边界框相对于先验边界框的四个坐标的偏置。

如图3所示,假设m种尺度为12×12,18×18,27×27,36×36,51×51,75×75和120×120,即对每个滑动窗口位置预测7个区域,则分类层有7*2=14个输出单元,回归层有7*4=28个输出单元。

最终通过判断是否是肺结节的二分类输出以及边界框预测,取肺结果预测为结节,也就是二分类输出中结节概率大于阈值的,并取出其相应的边界框,从而获得结节的建议区域。示例性,阈值可以设为0.5。

4)将获得的建议区域输入到roipooling层进行特征图的尺寸标准化处理;最后,通过两个全连接层输出至分类概率预测层与边界框预测层。

本发明实施例中,roipooling(regionofinterest)感兴趣区域池化层首先截取建议区域在反卷积层对应的特征图上的区域,然后对截取的区域进行maxpooling(最大池化),从而对尺寸大小不一样的建议区域,产生固定大小(例如7×7)的特征图输出。

分类概率预测层、边界框预测层分别对应包含2*1=2个输出单元、2*4=8个输出单元。

本发明实施例中,模型参数初始化采用imagenet上预训练的vgg16,然后对模型参数进行更新,用于更新该模型参数的损失函数定义为:

其中,l1为最终肺结节检测产生的损失,l2为区域建议网络的产生的损失;pi表示第i个建议区域为结节的概率,ti表示第i个建议区域对应的边界框坐标偏置向量;是训练样本(肺结节)的真实标签和坐标;表示特征提取网络中第k个区域建议网络输出的坐标偏置向量与是否是结节的二分类输出结果;j表示先验边界框的序号,分别表示第j个先验边界框预测的是否为肺结节的二分类输出结果和真实标签,分别表示第j个先验边界框预测的坐标偏置向量和真实的坐标偏置;lcls表示分类产生的损失,λ表示平衡因子,这里取1,lreg表示边界框回归的损失,ncls表示参与分类计算的样本数量,nreg表示参与边界框回归计算的样本数量。

5)利用测试集对训练后疑似肺结节检测模型的效果进行测试,测试过程与上述训练过程类似,不再赘述。

通过上述方式最终可以获得已训练好的三个疑似肺结节检测模型,在后续检测阶段可以直接对待检测ct图像进行疑似肺结节检测。

2、假阳性降低。

本发明实施例中,将数据集分为10个子集,每次选出1个子集作为测试集,其他子集划分为3组数据作为训练集,比如,取9作为测试集,0-2作为第一组训练数据,3-5作为第二组训练数据,6-8作为第三组训练数据,分别进行三个弱分类模型的训练与测试。

1)对于训练数据中正负样本做预处理来平衡正负样本的比例。

根据luna提供的候选结节表格,对正负样本进行大概统计,约1:500。为了缓解正负比例悬殊的问题,本发明实施例对于正负样本采用不同预处理方式。

如图4所示,对于正样本中的真肺结节,根据肺结节的位置信息(x,y,z),切取以(x,y,z)为立体中心的块,并对块中不同方向进行结节切片并翻转作为正样本增广;例如,对于同一结节,采用十个不同方向切片并翻转作为正样本增广。对于负样本中的假结节根据标注的结节位置,仅提取过结节中心的切片图像,即过结节中心的z轴横切面。

2)利用预筛选模型对于预处理后的负样本进行分类,筛选出分类错误的负样本,即难分样本。

对于负样本而言,还进行了预筛选,进一步降低负样本数量,解决正负样本不平衡问题。首先,随机抽取相同数量的预处理后的正负样本,训练一个alexnet分类模型。将预处理后的所有负样本利用训练后的alexnet分类模型把分类错误的负样本单独选出,作为后面训练弱分类器的训练数据。通过预筛选步骤,负样本已经降低到约为总数量的20%。

3)利用预处理与筛选后的训练数据来训练出三个弱分类模型。

通过之前步骤1)~步骤2)的预处理与筛选,可以获得每一组训练数据中预处理后的正样本,以及筛选出的分类错误的负样本,这两种类型的样本数据将用于后续的弱分类模型训练。

首先,从三组训练数据中选取第一组预处理与筛选后的训练数据(即预处理后的正样本与筛选出的分类错误的负样本),训练alexnet分类模型;对于训练后的alexnet分类模型,用同样的训练数据进行模型测试,将分类错误的数据选出,作为第二个分类器的训练数据;

其次,使用第二组预处理与筛选后的训练数据与上一次分类错误的数据重新训练第二个alexnet分类模型,用同样的数据进行模型测试,将分类错误的数据选出,作为第三个分类器的训练数据;

然后,取前两次分类错误的数据和第三组预处理与筛选后的训练数据重新训练第三个alexnet分类模型;

最终训练完成的三个alexnet分类模型即为三个弱分类模型。

4)利用测试集对训练后的三个弱分类模型的效果进行测试,测试过程与上述训练过程类似,不再赘述。

二、检测阶段。

在检测过程中,利用训练好的三个疑似肺结节检测模型对待检测ct图像进行检测,将ct图像的每个切片都利用三个疑似肺结节检测模型进行检测,每一个疑似肺结节检测模型都会输出一份疑似结节的分类概率和其边界框的数据;这三份数据全部都输出至训练好的三个弱分类模型,每一个弱分类模型都会输出针对每一部分数据的分类结果,也就是一个弱分类模型输出三份数据的分类结果,三个弱分类模数输出9个分类结果,然后对三个弱分类模型的分类结果进行多数投票选出最终的分类结果。

本发明实施例上述方案,与现有方法相比,该方法完全基于2d卷积神经网络,在luna16公开数据集上测试,疑似肺结节检测召回率达86.42%,假阳性降低方法使召回率在每个病人的平均fp为1/8和1/4时,分别达到73.4%和74.4%。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例可以通过软件实现,也可以借助软件加必要的通用硬件平台的方式来实现。基于这样的理解,上述实施例的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是cd-rom,u盘,移动硬盘等)中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。

以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明披露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求书的保护范围为准。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1