基于CT图像的可解释性肺结核分类网络识别方法

文档序号:25790430发布日期:2021-07-09 11:22阅读:351来源:国知局
基于CT图像的可解释性肺结核分类网络识别方法
基于ct图像的可解释性肺结核分类网络识别方法
技术领域
1.本发明涉及计算机辅助诊疗和图像识别领域,具体是一种基于ct图像的可解释性肺结核分类网络识别方法。


背景技术:

2.目前,结核病是威胁健康的主要传染病之一,其典型表现为肺结核。肺结核是危害人类健康历史久远的慢性传染性疾病,最严重流行的20世纪初甚至造成全球数百万人的死亡,目前我国是肺结核疫情的高负担国家之一。因为肺结核具有高传染性和致死性的特点,而肺结核的早期辅助诊断能帮助医生发现早期的肺结核患者,进行早诊断和早治疗,降低传染率和死亡率,所以具有很重要的临床意义。
3.目前ct图像检查已经成为了肺结核诊断中无可替代的首选手段。由于在ct影像中肺结核具有病灶多态性、多部位、多结节、空洞等特点,多种形态混合,难以识别,而医护人员又需要阅读大量的不同患者肺部ct图像序列,在高强度的工作压力下医护人员很容易产生疲劳,从而造成漏诊甚至是误诊。因此,需要一种基于ct图像的处理方法,提高医生诊断的准确率、降低漏诊率,减轻医护人员的工作强度。


技术实现要素:

4.本发明要解决的技术问题是提供一种基于ct图像的可解释性肺结核分类网络识别方法。
5.为了解决上述技术问题,本发明提供一种基于ct图像的可解释性肺结核分类网络识别方法,包括以下步骤:
6.s01、获取待测人员(例如患者)肺部计算机断层成像ct图像,作为原始ct图像并输入到上位机中进行图像预处理,进行肺实质的提取得到肺实质图像,然后将肺实质图像进行归一化处理并缩放到512x512大小;
7.s02、建立并训练可解释性肺结核分类网络,可解释性肺结核分类网络以残差网络为基础网络并加入dense思想和改进后的注意力机制而建立;
8.s03、将归一化处理并缩放到512x512大小的肺实质图像送入到训练好的可解释性肺结核分类网络,得到并在上位机中输出待测人员肺结核的分类结果和相应的类激活热力图。
9.实际应用时,检测人员(例如医生等医护人员)可根据待测人员肺结核的分类结果和相应的类激活热力图生成用于辅助的诊断结果报告。
10.作为本发明的基于ct图像的可解释性肺结核分类网络识别方法的改进:
11.所述可解释性肺结核分类网络包括第一层为卷积层,卷积核尺寸为7x7,步幅为2;第二层为最大池化层,卷积核尺寸为3x3,步幅为1;第三层到第五层、第七层到第九层、第十一层到第十五层、第十七

层到第十九层共计14个block

1模块,每个block

1模块均分为3个卷积层,第一层卷积核尺寸为1x1,第二层卷积核尺寸为3x3,步幅为1,第三层卷积核尺寸
为1x1;第六、十、十六层均为blocl

2降采样模块,每个blocl

2降采样模块均分为三个卷积层,第一层卷积核尺寸为1x1,第二层卷积核尺寸为3x3,步幅为2,第三层卷积核尺寸为1x1;第二十层为全局平均池化,第二十一层为全连接层;第三层与第六层、第六层和第十层、第十层和第十六层、第十六层和第二十层相互之间进行短接操作,相同尺寸的为同一残差块,共计4个残差块;
12.所述dense思想为将第三层到第五层作为一个稠密块进行短接操作,将第六层到第九层作为一个稠密块进行短接操作,将第十层到十五层作为一个稠密块进行短接操作,将第十六层到第十九层作为一个稠密块进行短接操作;
13.在第五层和第六层之间、在第九层和第十层之间、在十五层和十六层之间和在第十八层和十九层之间分别加入所述改进后的注意力机制;
14.第二十一层的全连接层之后为分类函数softmax,最终输出待测人员肺结核的分类结果;
15.第二十层全局平均池化后输出的特征图采用梯度加权的类激活映grad

cam方法处理,grad

cam根据输出向量,进行backward,求取特征图的梯度,得到特征图对应的梯度图,然后再对每个梯度图求平均获得每个特征图的权重,然后再将权重与特征图进行加权求和,通过激活函数relu后,最终输出显著性区域图。
16.作为本发明的基于ct图像的可解释性肺结核分类网络识别方法的进一步改进:
17.所述改进后的注意力机制包括基于传统的注意力机制,在通道注意力支路中,采取将全局最大池化和全局平均池化的两个池化结果进行拼接的方法;在空间注意力支路上,采用conv1
×
1和conv3
×
3两种大小的卷积核的并行结构对输入特征矩阵进行特征提取,将conv3
×
3大小的卷积核分解为conv1
×
3和conv3
×
1的卷积核,利用矩阵运算中对应元素相乘的方法,将两路特征进行融合。
18.作为本发明的基于ct图像的可解释性肺结核分类网络识别方法的进一步改进:
19.步骤s01中的所述图像预处理包括以下过程:
20.对原始ct图像进行二值化:设置全局初始的阈值t为原始ct图像中最大灰度值和最小灰度值的平均值,以阈值t为分割点将原始ct图像的所有像素值分为两组,并对这两个组的像素分别计算平均值得到t
f
和t
b
,然后以t
f
和t
b
的平均值作为新的阈值并更新阈值t,不断迭代直到所得的阈值t与前一个阈值t之差小于设定的参数t0,从而获得二值化后的图像,t0为接近于0预设值;将二值化后的图像采用泛洪算法进行胸腔填充,除去肺实质中的孔洞和床板,获得孔洞填充后的图像;对孔洞填充后的图像进行取反,并去除气管,得到肺部掩膜图像;用得到的肺部掩膜图像与原始ct图像相乘得到肺实质图像。
21.作为本发明的基于ct图像的可解释性肺结核分类网络识别方法的进一步改进:
22.步骤s02中所述训练可解释性肺结核分类网络包括:
23.1)、建立数据集
24.首先收集大量待测人员的肺部ct图像按所述图像预处理获得肺实质图像,然后由检测人员(例如医生)对肺实质图像进行标注,并将肺实质图像和对应的标签按20%、20%、60%的比例作为训练集、验证集和测试集;采用翻转、旋转、裁剪三种数据增强方法处理训练集和验证集的肺实质图像,对所有数据增强后的肺实质图像进行归一化处理并缩放到512x512大小,和对应的标签作为可解释性肺结核分类网络的训练输入;对所有测试集的图
像直接进行归一化处理并缩放到512x512大小,和对应的标签作为可解释性肺结核分类网络的测试输入;
25.2)、采用交叉熵公式作为损失函数,输入训练集和验证集中归一化后的512x512的肺实质图像,经过可解释性肺结核分类网络的网络传播获得待测人员肺结核的分类结果,与对应的标签对比计算损失函数,再利用损失函数的结果进行梯度下降来更新网络的参数,得到训练完成的可解释性肺结核分类网络;
26.3)、将测试集中经过归一化后并缩放到512x512的肺实质图像输入到训练好的可解释性肺结核分类网络获得待测人员肺结核的分类结果,与对应的标签进行对比,统计准确率达到94.47%。
27.本发明实际应用时,根据对待测人员ct图像实现待测人员肺结核的分类结果和输出相应的类激活热力图,辅助检测者生成相应的用于辅助诊断的相应报告。
28.本发明的有益效果主要体现在:
29.本发明结合深度学习的方法,在充分利用特征的传递基础上,加入了改进后的注意力机制,针对实际问题自主创新地搭建和调整神经网络的结构以适用于实现基于ct图像的可解释性肺结核分类网络识别方法,同时生成显著性区域对肺结核分类模型进行解释,避免之前分类卷积神经网络无法解释的情况,可以快速有效地提供给医生供参考的诊断意见。
附图说明
30.下面结合附图对本发明的具体实施方式作进一步详细说明。
31.图1为本发明的基于ct图像的可解释性肺结核分类网络的训练和测试过程示意图;
32.图2为图1中图像预处理的过程示意图;
33.图3为图1中数据增强处理的肺实质图像的结果示意图;
34.图4为基于残差网络的肺结核分类网络的结构示意图;
35.图5为基于dense思想的肺结核分类网络的结构示意图;
36.图6为改进后的注意力机制的结构示意图;
37.图7为基于ct图像的可解释性肺结核分类网络的结构示意图;
38.图8为基于ct图像的可解释性肺结核分类网络的输出示意图。
具体实施方式
39.下面结合具体实施例对本发明进行进一步描述,但本发明的保护范围并不仅限于此:
40.实施例1、基于ct图像的可解释性肺结核分类网络识别方法,如图1

8所示,包括以下步骤:
41.步骤1、获取图像并预处理
42.获取待测人员(例如患者)肺部ct(计算机断层成像computed tomography,简称ct)图像,作为原始ct图像并输入到上位机中进行处理;
43.为了减少肺结核检测中的无关因素影响,同时降低肺结核检测中特征提取网络的
计算量,减少训练时间,首先对原始ct图像进行图像预处理,进行肺实质的提取,如图2,采用迭代阈值法的方法;
44.步骤1.1、图像预处理
45.1)、对原始ct图像进行二值化,即设置一个全局初始阈值t,可以根据原始ct图像中最大灰度值t
max
和最小灰度值t
min
确定:
[0046][0047]
以t为分割点,将所有像素分为两组,d1表示所有像素值小于t的集合,d2表示所有像素值大于t的集合,并对这两个集合所有像素分别计算平均值得到t
f
和t
b
[0048][0049]
然后不断更新阈值,不断迭代直到所得的t值与前一个t值之差小于设定的参数t0,从而获得二值化后的图像,t0是一个预设值,一般接近于0;
[0050]
2)、将二值化后的图像采用泛洪算法进行胸腔填充,除去肺实质中的孔洞和床板,获得孔洞填充后的图像;
[0051]
3)、对孔洞填充后的图像进行取反,并去除气管,得到肺部掩膜图像;
[0052]
4)、用得到的肺部掩膜图像与原始ct图像相乘即可提取肺部区域,即肺实质图像;
[0053]
步骤1.2、对肺实质图像进行归一化处理并缩放到512x512大小,作为可解释性肺结核分类网络的输入。
[0054]
步骤2、建立并训练可解释性肺结核分类网络
[0055]
可解释性肺结核分类网络以残差网络为基础网络,加入了dense思想和改进后的注意力机制,用以获得更准确肺结核的分类结果,同时,加入了类激活映grad

cam方法用以获得可视化的显著性区域图,可以直接地观察到本模型判断该ct图像所属肺结核种类的依据。
[0056]
步骤2.1、建立分类网络
[0057]
步骤2.1.1、建立基于残差网络的肺结核分类网络
[0058]
该网络模型中使用轻量级的设计模块block

1和block2,保持高表示能力的同时降低参数实现高计算效率,如图4所示,基于残差网络的肺结核分类网络的第一层为卷积层,卷积核尺寸为7x7,步幅为2;第二层为最大池化层,卷积核尺寸为3x3,步幅为1;第三层到第五层、第七层到第九层、第十一层到第十五层、第十七

层到第十九层共计14个block

1模块,每个block

1模块均分为3个卷积层,第一层卷积核尺寸为1x1,第二层卷积核尺寸为3x3,步幅为1,第三层卷积核尺寸为1x1;第六、十、十六层均为blocl

2降采样模块,每个blocl

2降采样模块均分为三个卷积层,第一层卷积核尺寸为1x1,第二层卷积核尺寸为3x3,步幅为2,第三层卷积核尺寸为1x1;第二十层为全局平均池化,第二十一层为连接层,全连接层主要是为了方便对输出进行灵活调整,最终通过一个softmax分类函数输出待测人员肺结核的分类结果(即原发性肺结核、血行播散型肺结核、继发性肺结核和肺部正常四种分类的概率值);基于深度残差思想,对不同输出尺寸的模块进行短接操作,即第三层与第六层、第六层和第十层、第十层和第十六层、第十六层和第二十层相互之间进行短接操作,相同尺寸的为同一残差块,共计4个残差块,从而建立了基于残差网络的肺结核分类网
络,该网络的具体参数如下表1所示:
[0059]
表1基于残差网络的肺结核分类网络主要参数
[0060]
[0061][0062]
步骤2.1.2、建立基于dense思想的肺结核分类网络
[0063]
为了进一步加强了特征的传递,提高分类的准确性,借鉴dense网络的思想,将步骤2.1.1建立的基于残差网络的肺结核分类网络的第三层到第五层作为一个稠密块进行短接操作,将第六层到第九层作为一个稠密块进行短接操作,将第十层到十五层作为一个稠密块进行短接操作,将第十六层到第十九层作为一个稠密块进行短接操作,相同尺寸的为同一稠密块,共计4个稠密块,如图5所示,从而建立了基于dense思想的肺结核分类网络;
[0064]
步骤2.1.3、建立基于dense思想和改进注意力机制的可解释性肺结核分类网络
[0065]
对传统的注意力机制进行了改进,在通道注意力支路中,为了充分保留背景和纹理信息,采取将全局最大池化和全局平均池化的两个池化结果进行拼接的方法;在空间注意力支路上,考虑到高、低层级分别具有丰富的语义特征和纹理信息,采用conv1
×
1和conv3
×
3两种大小的卷积核的并行支路的结构来对输入特征矩阵进行特征提取,以获得多样化的特征信息;conv1
×
1支路依次包括conv1
×
1、批量归一化bn、激活函数relu和conv1
×
1,同时将conv3
×
3支路上的conv3
×
3大小的卷积核分解为conv1
×
3和conv3
×
1的卷积核,可以有效减少计算量,节约计算成本,然后依次包括批量归一化bn、批量归一化relu和
conv1
×
1;利用矩阵运算中对应元素相乘的方法,将两路特征进行融合,可以获取更加丰富的空间特征信息;使用conv1
×
1时填充padding设为0,使用conv1
×
3和conv3
×
1时,填充padding分别设为(0,1)和(1,0),如附图6所示;
[0066]
为了增强分类网络的细粒度,在步骤2.1.2建立的基于dense思想的肺结核分类网络中加入了改进后的注意力机制,在第五层和第六层之间加入了改进后的注意力机制,进行特征重标定;在第九层和第十层之间加入改进后的注意力机制,进行特征重标定;在十五层和十六层之间加入了改进后的注意力机制,进行特征重标定;在第十八层和十九层之间加入了改进后的注意力机制,进行特征重标定,从而建立了基于dense思想和改进注意力机制的可解释性肺结核分类网络(简称为可解释性肺结核分类网络),如附图7所示;
[0067]
步骤2.1.4、可解释性肺结核分类网络的输出
[0068]
为了提高卷积神经网络模型的可解释性,采用了梯度加权的类激活映grad

cam方法来可视化导致深度学习模型决策的重要区域,如附图8所示,将步骤1中经过归一化处理并缩放到512x512大小的肺实质图像输入到可解释性肺结核分类网络,在通过可解释性肺结核分类网络输出待测人员肺结核的分类结果(w1,w2,w3…
w
n
)的同时,对于经过第20层全局平均池化后得到最终的特征图,grad

cam根据输出向量,进行backward,求取特征图的梯度,得到每个特征图上每个像素点对应的梯度,也就是特征图对应的梯度图,然后再对每个梯度图求平均,这个平均值就对应于每个特征图的权重,然后再将权重与特征图进行加权求和,通过relu激活函数后,最终输出显著性区域图,即肺结核分类网络的类激活热力图,类激活热力图中不同的像素颜色代表不同肺结核的分类依据,颜色越深表示像素在把该图分为某种肺结核的时候所占的权重越大;
[0069]
步骤2.2、训练可解释性肺结核分类网络
[0070]
对于步骤2.1所建立可解释性肺结核分类网络进行训练和测试,从而获得具有临床应用水平的训练好的可解释性肺结核分类网络,如图1所示,过程如下:
[0071]
步骤2.2.1、建立数据集
[0072]
首先收集大量待测人员的肺部ct图像,并按步骤1.1进行图像预处理后获得肺实质图像,然后由检测人员(例如医生)对预处理后的肺实质图像进行相对权威的标注,将患有原发性肺结核的待测人员的ct图像标签设为1,将血行播散型肺结核的ct图像标签设为2,将继发性肺结核待测人员的ct图像标签设为3,将肺部正常的ct图像标签设为0;将肺实质图像和对应的标签按20%、20%、60%的比例作为训练集、验证集和测试集;
[0073]
对于训练集和验证集的肺实质图像,部分类型肺结核ct图像存在样本不足的情况,因此需要先对训练集和验证集的肺实质图像进行数据增强,以增强深度学习的训练效果,采用翻转、旋转、裁剪三种方法对训练集和验证集的肺实质图像进行操作:
[0074]
对每张训练集和验证集的肺实质图像进行随机旋转三次获得另外三张图像;
[0075]
对每张训练集和验证集的肺实质图像进行垂直和水平裁剪获得另外四张ct图像;
[0076]
对每张训练集和验证集的肺实质图像进行水平翻转和变形缩放获得另外四张ct图像;
[0077]
最终,每张训练集和验证集的肺实质图像获得11张数据增强后的肺实质图像;
[0078]
对所有数据增强后的肺实质图像按步骤1.2进行归一化处理然后缩放到512x512,将归一化后并缩放到512x512的的肺实质图像和对应的标签作为可解释性肺结核分类网络
的训练输入;
[0079]
对所有测试集的图像无需进行数据增强处理,直接进行归一化处理然后缩放到512x512,将归一化后并缩放到512x512的的肺实质图像和对应的标签作为可解释性肺结核分类网络的测试输入;
[0080]
步骤2.2.2训练可解释性肺结核分类网络
[0081]
训练时,采用交叉熵公式作为损失函数来更新可解释性肺结核分类网络的参数。输入归一化后的512x512的肺实质图像,经过可解释性肺结核分类网络的网络传播获得待测人员肺结核的分类结果,将其与实际分类标签对比计算损失函数,再利用损失函数的结果进行梯度下降来更新网络的参数,得到训练完成的可解释性肺结核分类网络。
[0082]
在每层卷积层后面都加入了批量归一化bn层,再进行激活函数的非线性激活,这样的好处是将每一层的分布都拉到一个正态分布上,可以加速网络的训练,改善梯度爆炸和梯度弥散等问题;激活函数为常用的relu,公式如下,优点是能够使得网络快速收敛,并且改善神经网络梯度消失的问题。
[0083][0084]
通过带有动量的随机梯度下降在数据集上进行了训练,用于训练的超参数如下:学习率=5e

3,动量=0.9,随机选取批量大小=8,即每进行8次正向传递后,对这8次的结果计算损失函数,进行一次反向调整cnn网络参数,当达到迭代次数为18时,终止训练从而获得训练好的可解释性肺结核分类网络;
[0085]
2.2.3测试可解释性肺结核分类网络
[0086]
在肺结核的分类以及检测模型中,可将样本根据真实类型和模型预测类型的不同组合划分为真阳性(true positive,tp)、假阳性(false positive,fp)、真阴性(true negative,tn)、假阴性(false negative,fn)四种情况,具体的分类结果的混淆矩阵如下表2所示。
[0087]
表2肺结核分类结果混淆矩阵
[0088][0089]
在肺部传染病的分类以及检测模型问题中,主要使用的评价指标有准确率(accuracy)、灵敏度(sensitivity)和特异度(specificity)、漏诊率和误诊率;准确率是指在分类结果中,学习器预测正确的样本数占总样本数的比例,是判断一个分类算法优劣的最基本指标,公式定义如下:
[0090][0091]
灵敏度(sensitivity)也可称为召回率,也就是实际为阳性的样本被正确预测为阳性的概率,反映了分类器对肺结核的识别能力,公式定义如下:
[0092][0093]
漏诊率是和灵敏度相对应的一个指标,反映了阳性肺结核没有被识别出来的概
率,灵敏度越高则漏诊率越低,公式定义如下:
[0094][0095]
特异度(specificity)是指实际为阴性的样本被正确预测为阴性的概率,反映了模型正确识别阴性样本的能力,公式定义如下:
[0096][0097]
误诊率是和特异度相对应的一个指标,反映了阴性肺结核被误诊为阳性的概率,特异度越高则误诊率越低,公式定义如下:
[0098][0099]
为了更好的评价肺结核分类模型的好坏,我们引入roc曲线,根据肺结核的分类模型的混淆矩阵定义可知,真阳性率tpr也就是灵敏度(sensitivity)指标,假阳性率fpr也就是误诊率指标,首先将测试样本根据模型预测的概率按大小排序,然后设置分类器的阈值从0到1慢慢增加,阈值为0时,所有样本都被预测为阳性,所以tpr和fpr点对为(1,1),阈值为1时,所有样本都预测为阴性,所有tpr和fpr点对为(0,0),相应的阈值可以得到一组tpr和fpr的点对,最终连成的曲线就是该模型的roc曲线,越靠近左上角则代表模型性能越好;
[0100]
为了更加数值化的描述roc曲线,我们采用auc(area under roc curve)值来表示,也就是roc曲线下方覆盖的面积。auc的值介于0.5到1.0之间,auc越大代表了模型的性能越好;
[0101]
将测试集中经过归一化后并缩放到512x512的肺实质图像输入到训练好的可解释性肺结核分类网络获得待测人员肺结核的分类结果,与肺实质图像对应的标签进行对比,统计准确率,最终总体准确度达到94.47%,测试结果如下表3;以精确率和召回率计算f1值,结果如表3.7所示。
[0102]
表3. 7测试结果指标
[0103]
精确率召回率fprf1值94.47%92.49%7.79%93.48%
[0104]
召回率和fpr分别反映了对正负样本的识别能力,从实验结果看,精确率、召回率和f1值均在90%以上,而fpr值较低,说明模型从图像中提取出了有效的特征,对正负样本均有较好的识别效果,并且模型的稳定性较好,符合预期。
[0105]
3、辅助诊断
[0106]
将步骤1获取将归一化处理并缩放到512x512大小的肺实质图像送入到步骤2获得的训练好的可解释性肺结核分类网络,得到并在上位机中输出相应的待测人员肺结核的分类结果(即原发性肺结核、血行播散型肺结核、继发性肺结核和肺部正常四种分类的概率值)和相应的类激活热力图(显著特性区域图),医护人员根据待测人员肺结核的分类结果和相应的类激活热力图生成用于辅助诊断的结果报告。
[0107]
实验1:
[0108]
在相同的测试集上对三个模型进行测试,模型1为基于残差网络的肺结核分类网络,模型2为基于dense思想的肺结核分类网络,模型3为基于dense思想和改进注意力机制的可解释性肺结核分类网络。以准确率、灵敏度、特异度和auc为指标,表3为模型1、模型2和
模型3的各项性能指标,其中灵敏度、特异度和auc值分别是模型对三类肺结核识别结果的灵敏度、特异度和auc值的平均。
[0109]
表4不同分类模型的识别指标对比
[0110][0111]
从上表可以看出,模型3在准确率、灵敏度和特异度三个指标上都得到了一定的提升,说明本发明的基于dense思想和改进注意力机制的可解释性肺结核分类网络的确一定程度上解决了深度网络出现的退化问题,使得深度网络可以提取出更多的特征信息,从而提升了模型的性能,同时生成的类激活热力图也能作为医生的诊断参考。
[0112]
最后,还需要注意的是,以上列举的仅是本发明的若干个具体实施例。显然,本发明不限于以上实施例,还可以有许多变形。本领域的普通技术人员能从本发明公开的内容直接导出或联想到的所有变形,均应认为是本发明的保护范围。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1