基于多尺度残差网络的视网膜OCT图像分类方法、系统、计算机设备和存储介质


基于多尺度残差网络的视网膜oct图像分类方法、系统、计算机设备和存储介质
技术领域
1.本技术涉及oct图像处理技术领域,尤其涉及视网膜oct图像分类。


背景技术:



2.视网膜疾病是导致视力残缺的主要原因,视网膜疾病由于发病率高和致盲率高的特点,一直是重点的研究对象,目前,全球人口趋于老龄化,随着人口年龄的增长,视网膜也会随之衰退。有关视网膜的眼部疾病是老龄人患病率较高的疾病之一。我国目前致盲的主要视网膜疾病有以下几种:青光眼,白内障,糖尿病性黄斑水肿(diabetic macular edema,dme)以及年龄相关性黄斑病变(age-related macular degeneration,amd),amd又可按照临床表现和病理改变不同分为干性(drusen)、湿性(cnv)两型。视网膜疾病的关键在于早期筛查、定期检查。
3.光学相干断层扫描技术(optical coherence tomography,oct)可以提供高分辨率的视网膜截面图像,是目前用于检验视网膜疾病最为先进的技术手段,具有非接触、无创、成像快等优点。目前,对于视网膜疾病的诊断方式普遍为眼科医生对病人的眼底oct图像进行人工检查,对病人所患疾病进行判断。但是这种判断方法的缺点是眼科医生人数较少,眼部疾病患者较多,会造成医生疲劳,oct图像为灰度图像,部分疾病特征表现得不明显,从而导致误诊、漏诊,进一步使病人没有及时发现眼部疾病并进行,导致病情恶化。
4.深度学习(deep learning)技术受到诸多领域的广泛关注,它在大规模数据处理方面具有优势。近些年来,深度学习(deep learning)技术受到诸多领域的广泛关注,它是机器学习(machine learning)学科中的一种方法。深度学习在图像分类中的应用主要在于利用卷积神经网络(convolutional neural network,cnn)进行特征的学习,不需要人工进行特征的设计,深度学习中的深度指的是用于对图像分类的网络是由非常多的层组成,包括卷积层、池化层和全连接层。深度学习技术在大规模数据处理方面具有优势,目前在oct图像分类领域取得了巨大成功。近年来提出了一种基于迁移学习的视网膜oct图像分类方法,该方法通过微调goolgenet网络,减小网络对大量数据的依赖,在训练数据有限的情况下实现对dme、amd和正常图像的分类,分类精度分别为86%、89%和99%。也有使用深度可分离卷积代替普通卷积层从而减小网络的参数,同时使用全局平均池化代替全连接层,提高空间鲁棒性,经实验可使分类准确率达到97%。以上许多图像分类算法研究在分类准确率上都取得了较好的结果,但是大部分算法在分类准确率上依旧不能满足医学领域的需求,在医学领域还是较低的。


技术实现要素:



5.本发明目的是为了解决现有对视网膜oct图像分类准确率较低的问题,提供了基于多尺度残差网络的视网膜oct图像分类方法、系统、计算机设备和存储介质。
6.本发明是通过以下技术方案实现的,本发明一方面,提供基于多尺度残差网络的
视网膜oct图像分类方法,所述方法包括:
7.步骤1、获取视网膜oct图像分类数据集,并将其分为训练集和测试集;
8.步骤2、对所述训练集和测试集进行预处理;
9.步骤3、利用双通道注意力机制和多尺度残差模块对基线网络进行改进,建立视网膜oct图像分类模型;
10.所述多尺度残差模块具体包括若干条支路、残差模块、特征融合模块和相加模块,每条所述支路包括若干个卷积;
11.所述特征融合模块用于将所述若干条支路的输出信息进行特征融合;
12.所述相加模块用于将所述融合后的信息与所述残差模块的输出信息进行相加;
13.步骤4、利用所述预处理后的训练集对所述视网膜oct图像分类模型进行训练;
14.利用所述预处理后的测试集对所述视网膜oct图像分类模型进行测试;
15.获取训练后的视网膜oct图像分类模型;
16.步骤5、利用所述练后的视网膜oct图像分类模型,对视网膜oct图像进行分类。
17.进一步地,所述预处理,具体包括:
18.采用下采样的方式,将所述训练集和测试集中若干个类别的视网膜oct图像的数量进行统一;
19.对所述数量统一后的视网膜oct图像的尺寸进行统一;
20.对所述尺寸统一后的视网膜oct图像进行标准化。
21.进一步地,所述基线网络为resnet50网络。
22.进一步地,步骤3,具体包括:
23.在所述基线网络中加入若干个双通道注意力机制模块、最大池化层和平均池化层;
24.用若干个所述多尺度残差网络替代所述若干个基线网络的残差模块;
25.设置损失函数,用于学习模型参数;
26.根据视网膜oct图像分类任务,设置网络的输出维度。
27.进一步地,所述双通道注意力机制模块为两个,分别设置于卷积层后和最后一个多尺度残差模块后。
28.进一步地,所述最大池化层设置于第一个残差模块前。
29.进一步地,所述若干条支路具体包括四条支路;
30.所述四条支路分别由1
×
1卷积、1
×
1和3
×
3卷积、1
×
1和5
×
5卷积以及最大池化层和1
×
1卷积组成。
31.第二发明,本发明提供基于多尺度残差网络的视网膜oct图像分类系统,所述系统包括:
32.数据集获取模块,用于获取视网膜oct图像分类数据集,并将其分为训练集和测试集;
33.数据集处理模块,用于对所述训练集和测试集进行预处理;
34.视网膜oct图像分类模型建立模块,用于利用双通道注意力机制和多尺度残差模块对基线网络进行改进,建立视网膜oct图像分类模型;
35.所述多尺度残差模块具体包括若干条支路、残差模块、特征融合模块和相加模块,
每条所述支路包括若干个卷积;
36.所述特征融合模块用于将所述若干条支路的输出信息进行特征融合;
37.所述相加模块用于将所述融合后的信息与所述残差模块的输出信息进行相加;
38.模型训练和测试模块,用于利用所述预处理后的训练集对所述视网膜oct图像分类模型进行训练;
39.利用所述预处理后的测试集对所述视网膜oct图像分类模型进行测试;
40.获取训练后的视网膜oct图像分类模型;
41.模型分类模块,用于利用所述练后的视网膜oct图像分类模型,对视网膜oct图像进行分类。
42.第三方面,本发明提供一种计算机设备,包括存储器和处理器,所述存储器中存储有计算机程序,当所述处理器运行所述存储器存储的计算机程序时执行如上文任一项所述的基于多尺度残差网络的视网膜oct图像分类方法的步骤。
43.第四方面,本发明提供一种计算机可读存储介质,所述计算机可读存储介质中存储有多条计算机指令,所述多条计算机指令用于使计算机执行如上文任一项所述的基于多尺度残差网络的视网膜oct图像分类方法。
44.本发明的有益效果:
45.oct图像原始图像特点表现出来的病理特征不够明显,尤其有一些细小的特征提取比较困难,如视网膜的不同膜层之间的细节信息,黄斑区横断面图像特征信息,这就导致图像分类时不能很好的对不同类别视网膜疾病图像特征进行学习。
46.首先,本发明利用级联多核的残差链接方法来提供训练和分类结果,能够得到来自输入信息中不同尺寸的信息,能够解决原视网膜oct图像中病理特征成像不清晰,小目标病变特征难以捕捉的问题,提高视网膜oct图像分类的精度;
47.其次,利用了双通道注意力模块来提取来自输入通道中分布在空间和通道上的对模型分类有用的局部特征区域,通过捕获更多来自输入图片的全局和局部信息,对输入中的不明显的细节信息进行有效的学习,进一步提高视网膜oct图像分类的精度。
48.本发明经实验验证,在分类准确率上最高可达到97.3%。
49.本发明适用于视网膜oct图像的分类。
附图说明
50.为了更清楚地说明本技术的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
51.图1为基于多尺度残差网络的视网膜oct图像分类算法框架;
52.图2为双通道注意力模块框架;
53.图3为通道注意力模块框架;
54.图4为空间注意力模块框架;
55.图5为基线网络中的残差模块框架;
56.图6为发明的多尺度残差模块框架;
57.图7为基于多尺度残差网络的视网膜oct图像分类算法训练流程图;
58.图8为基于多尺度残差网络的视网膜oct图像分类算法测试流程图;
59.图9为基线网络和本发明对视网膜oct图像分类测试得到的混淆矩阵图((a)为resnet50测试结果,(b)为本发明测试结果)。
具体实施方式
60.下面详细描述本发明的实施方式,所述实施方式的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施方式是示例性的,旨在用于解释本发明,而不能理解为对本发明的限制。
61.实施方式一、基于多尺度残差网络的视网膜oct图像分类方法,所述方法包括:
62.步骤1、获取视网膜oct图像分类数据集,并将其分为训练集和测试集;
63.步骤2、对所述训练集和测试集进行预处理;
64.步骤3、利用双通道注意力机制和多尺度残差模块对基线网络进行改进,建立视网膜oct图像分类模型;
65.所述多尺度残差模块具体包括若干条支路、残差模块、特征融合模块和相加模块,每条所述支路包括若干个卷积;
66.所述特征融合模块用于将所述若干条支路的输出信息进行特征融合;
67.所述相加模块用于将所述融合后的信息与所述残差模块的输出信息进行相加;
68.步骤4、利用所述预处理后的训练集对所述视网膜oct图像分类模型进行训练;
69.利用所述预处理后的测试集对所述视网膜oct图像分类模型进行测试;
70.获取训练后的视网膜oct图像分类模型;
71.步骤5、利用所述练后的视网膜oct图像分类模型,对视网膜oct图像进行分类。
72.首先,本实施方式利用级联多核的残差链接方法来提供训练和分类结果,能够得到来自输入信息中不同尺寸的信息,能够解决原视网膜oct图像中病理特征成像不清晰,小目标病变特征难以捕捉的问题,提高视网膜oct图像分类的精度;
73.其次,利用了双通道注意力模块来提取来自输入通道中分布在空间和通道上的对模型分类有用的局部特征区域,通过捕获更多来自输入图片的全局和局部信息,对输入中的不明显的细节信息进行有效的学习,进一步提高视网膜oct图像分类的精度。
74.需要说明的是,分类模型中的分类可以使用softmax函数;步骤4中实现分类模型的编程语言为python,使用的软件工具为pytorch,操作系统为linux,使用的显卡为nvidia geforce rtx 3070。
75.需要说明的是,基线网络是图像分类网络,用以对不同类别的图像特征进行学习和分类,经训练后最终可以对测试图像进行分类。
76.实施方式二,本实施方式是对实施方式一所述的基于多尺度残差网络的视网膜oct图像分类方法的进一步限定,本实施方式中,对所述预处理,做了进一步限定,具体包括:
77.所述预处理,具体包括:
78.采用下采样的方式,将所述训练集和测试集中若干个类别的视网膜oct图像的数量进行统一;
79.对所述数量统一后的视网膜oct图像的尺寸进行统一;
80.对所述尺寸统一后的视网膜oct图像进行标准化。
81.需要说明的是,本实施方式可以对所述尺寸统一后的视网膜oct图像的图像矩阵和图像像素进行标准化,具体标准化方法公式如下:
[0082][0083]
式(1)中μ是图像的均值,x表示图像矩阵;
[0084][0085]
式(2)中σ表示标准方差,n表示图像的像素。
[0086]
本实施方式中,可以将视网膜oct图像统一尺寸为224
×
224,采用下采样将四种类别的视网膜oct图像数量统一,对图像进行标准化,图像预处理后的图像作为输入进分类网络中可以使分类的准确率更高、精度更好,图像标准化是将数据通过去均值实现中心化的处理,根据凸优化理论与数据概率分布相关知识,数据中心化符合数据分布规律,更容易取得训练之后的泛化效果。
[0087]
实施方式三,本实施方式是对实施方式一所述的基于多尺度残差网络的视网膜oct图像分类方法的进一步限定,本实施方式中,对所述基线网络,做了进一步限定,具体包括:
[0088]
所述基线网络为resnet50网络。
[0089]
本实施方式采用的resnet50网络,浅层网络中对视网膜oct图像特征提取的一般都是一些浅层特征,不能很好的进行学习,但是通过增强网络层数的方法来增强网络学习能力的方法并不总是可行的,因为网络深度达到一定层数之后,再增加网络层数,那么网络就会出现随机梯度消失的问题,也会导致网络的准确率下降,而resnet50可以有效的解决这个问题,resnet50中的残差单元通过跨层连接,输入信息可以直接跨层到更深层,可以有效地缓解梯度消失问题,进而有利于提高视网膜oct图像分类的精度。
[0090]
实施方式四,本实施方式是对实施方式一至三中任一项所述的基于多尺度残差网络的视网膜oct图像分类方法的进一步限定,本实施方式中,对步骤3,做了进一步限定,具体包括:
[0091]
步骤3,具体包括:
[0092]
在所述基线网络中加入若干个双通道注意力机制模块、最大池化层和平均池化层;
[0093]
用若干个所述多尺度残差网络替代所述若干个基线网络的残差模块;
[0094]
设置损失函数,用于学习模型参数;
[0095]
根据视网膜oct图像分类任务,设置网络的输出维度。
[0096]
需要说明的是,本实施方式中的损失函数可以为交叉熵损失函数。
[0097]
本实施方式中,如图1所示,设计基于多尺度残差网络的视网膜oct图像分类模型。总的来说,本实施方式中的基于多尺度残差网络的视网膜oct图像分类网络是一种端到端的深度学习网络架构,本实施方式可以将多尺度残差模块和双通道注意力与resnet50相结合,用多尺度残差模块代替网络中的部分残差模块,在网络中加入最大池化层来减小网络计算量,并将加入池化层后的卷积层步长由2改为1;可以将网络的输出维度设置为4,用于视网膜疾病图像的四分类任务:cnv、dme、drusen、normal。
[0098]
其中,
[0099]
第一,在基线网络中加入双通道注意力机制模块,双通道注意力机制模块结构如图2所示,双通道注意力机制模块结合了空间注意力机制模块和通道注意力机制模块,因此同时拥有了空间注意力机制模块与通道注意力模块的优点,可以捕获输入分布在空间和通道上的有用信息,从而提升网络的分类性能;
[0100]
第二,将池化层放在网络中残差模块前,将处于池化层后的残差模块步长值由2改为1,使得修改后的网络中输入输出参数量一致;
[0101]
第三,多尺度残差模块结构如图6所示,采用级联多核的多尺度残差模块,结合了残差模块的优点,此外,每个卷积层后面还有一个relu层用来减少计算量,缓解过拟合问题,通过该模块,可以拥有残差模块的优点,能够有效的缓解梯度弥散问题,可以缓解过拟合的问题,同时能够得到来自输入信息中不同尺寸的信息,能够解决原视网膜oct图像中病理特征成像不清晰,小目标病变特征难以捕捉的问题。
[0102]
第四,在网络后加入平均池化层。通过加入平均池化层,用于减少参数计算量,用以缓解过拟合问题;
[0103]
第五,使用交叉熵作为损失函数。交叉熵损失函数经常用于分类问题中,由于涉及到每个类别的概率,本实施方式中,交叉熵损失函数与softmax函数一起出现;
[0104]
第六,更改网络的输出维度,使其适用于视网膜oct图像分类任务。原始基线网络的输出维度为100,为了处理视网膜oct图像的四分类(cnv、dme、drusen、normal)任务,本实施方式可以将网络的输出维度设置为4。
[0105]
实施方式五,本实施方式是对实施方式四所述的基于多尺度残差网络的视网膜oct图像分类方法的进一步限定,本实施方式中,对所述双通道注意力机制模块,做了进一步限定,具体包括:
[0106]
所述双通道注意力机制模块为两个,分别设置于卷积层后和最后一个多尺度残差模块后。
[0107]
本实施方式中,在基线网络中加入双通道注意力机制模块,双通道注意力机制模块结构如图2所示,双通道注意力机制模块结合了空间注意力机制模块和通道注意力机制模块,因此同时拥有了空间注意力机制模块与通道注意力模块的优点,可以捕获输入分布在空间和通道上的有用信息,从而提升网络的分类性能。
[0108]
其中,通道注意力模块与空间注意力模块结构图分别如图3、图4所示,通道注意力模块通过利用特征的通道间关系可以生成一个通道注意力特征图,一个特征图的每个通道都可以认为是一个特征检测器,通过通道注意力机制,可以获取输入特征分布在通道上的有意义的部分,为了高效地计算通道注意力,压缩了输入特征图的空间维度,在本实施方式中,采用了全局平均池化和最大池化两种方式来聚合一个特征图的空间信息,生成两个不同的空间上下文描述符:和这两个描述符分别表示被平均池化的特征和被最大池化的特征,通道注意力计算方式如公式(3)所示,其中,σ为sigmoid函数,mlp的权重尺寸为和由平均池化特征和最大池化特征这两个输入共享,并且经过relu激活函数之后是w0,即池化特征在输入到mlp之前,需要经过relu函数进行处理。
[0109][0110]
在通道注意力模块之后,引入空间注意力模块,利用特征的空间相互关系可以生出一个空间注意力图,空间注意力专注于信息丰富的部分,这与通道注意力是互补的,为了计算空间注意力,首先沿着通道轴进行平均池化操作和最大池化操作,并将二者拼接起来生成一个高效的特征描述符,最终生成一个2d空间注意力图,简言之,空间注意力计算方式如公式(4)所示,其中σ表示sigmoid函数,f7×7表示一个卷积核尺寸7
×
7为的卷积操作。
[0111][0112]
实施方式六,本实施方式是对实施方式四所述的基于多尺度残差网络的视网膜oct图像分类方法的进一步限定,本实施方式中,对所述最大池化层,做了进一步限定,具体包括:
[0113]
所述最大池化层设置于第一个残差模块前。
[0114]
需要说明的是,最大池化层可以放在网络中残差模块前,将处于池化层后的残差模块步长值由2改为1,使得修改后的网络中输入输出参数量一致。
[0115]
实施方式七,本实施方式是对实施方式一所述的基于多尺度残差网络的视网膜oct图像分类方法的进一步限定,本实施方式中,对所述若干条支路,做了进一步限定,具体包括:
[0116]
所述若干条支路具体包括四条支路;
[0117]
所述四条支路分别由1
×
1卷积、1
×
1和3
×
3卷积、1
×
1和5
×
5卷积以及最大池化层和1
×
1卷积组成。
[0118]
本实施方式中,使用的多尺度残差模块代替基线网络中的残差模块。基线网络中的残差模块框架如图5所示。在现代神经网络中,在网络深度逐渐加深的过程中,出现梯度弥散、梯度爆炸的概率也会逐渐变高,这个问题导致深度神经网络很难进行训练,残差模块中包含多个卷积层,数据通过这些卷积层,同时原始输入信息跳过这些卷积层直接传导至后面的层中,最终将他们的整体作为输入,用激活函数激活,进一步得到残差模块输出的结果,通过残差学习,在反向传播时,初始信号可以不经过任何中间权重直接传播到底层,一定程度上可以缓解梯度弥散与梯度爆炸问题,即使中间层权重很小,梯度也基本不会消失。
[0119]
多尺度残差模块结构如图6所示,采用级联多核的多尺度残差模块,结合了残差模块的优点,使用1
×
1的卷积来进行升降维,来实现参数的减小化,同时减小参数的计算量,进一步在多个尺寸上同时进行卷积再聚合,该模块使用多核卷积(即1
×
1、3
×
3和5
×
5)来捕获分布再输入扫描中的更多的全局和局部信息,但是因为3
×
3和5
×
5卷积操作计算量比较大,使用了额外的1
×
1卷积来进行降维。此外,每个卷积层后面还有一个relu层用来减少计算量,缓解过拟合问题,这也允许网络处理输入扫描中信息位置的巨大变化。
[0120]
多尺度残差模块结构如图6所示,本实施方式所设计的多尺度残差模块,在结合残差模块优点的同时,能够获取来自输入信息中更多更细节的信息,使用1
×
1的卷积来进行升降维,来实现参数的减小化,同时减小参数的计算量,该模块中包含残差模块和四条支路,残差模块极大的提高了可以有效训练的网络深度,其结构通过跳层连接的形式实现,即将单元的输入直接与单元输出加在一起,进一步有效的缓解了梯度消失问题,四条支路分
别由1
×
1卷积、1
×
1和3
×
3卷积、1
×
1和5
×
5卷积以及最大池化层和1
×
1卷积组成,通过1
×
1卷积改变通道数目,用以减少计算量,输入信息以16k通道数输入,在经过第一条支路后以4k通道数输出,在经过第二条支路时,经过1
×
1卷积后以6k通道数输出,经过3
×
3卷积后以8k通道数输出,在经过第三条支路时,经过1
×
1卷积后以k通道数输出,经过5
×
5卷积后以2k通道数输出,在经过第四条支路时,经1
×
1卷积后以2k通道数输出,通过1
×
1、3
×
3、5
×
5卷积进行特征提取,可以得到不同尺度的信息,将输出信息以concatenate形式进行多尺度特征融合,融合后得到的输出信息与残差模块的输出信息以sum形式相加,并且,每一个卷积层后面都加入了relu层,relu层会使一部分神经元的输出为0,造成了网络的稀疏性,同时可以减少参数之间相互依存的关系,缓解了过拟合问题的发生,通过该模块,可以拥有残差模块的优点,能够有效的缓解梯度弥散问题,可以缓解过拟合的问题,同时能够得到来自输入信息中不同尺寸的信息,能够解决原视网膜oct图像中病理特征成像不清晰,小目标病变特征难以捕捉的问题。
[0121]
实施方式八,本实施方式是本实施例基于多尺度残差网络的视网膜oct图像分类方法的一种实施例,具体为:
[0122]
本实施例为kaggle平台上下载的开源视网膜oct病变图像,该数据集由加利福尼亚大学圣地亚哥分校(ucsd)于2017年公开。数据集中有四类关于视网膜的病变图像,分别是年龄相关的湿性黄斑病变(copy number variations,cnv)、糖尿病性黄斑水肿(diabetic macular edema,dme)、与年龄相关的干性黄斑病变(drusen)以及正常图片(normal),如图所示。该原始数据集由训练集和测试集组成,数据集的原始训练集为来自4686名患者的83484张oct图片,其中cnv有37205张,drusen有8616张,dme有11348张,normal有26315张,测试集由每类250张图片组成,共1000张oct图片。
[0123]
表1使用的视网膜oct图像数据集信息
[0124]
数据集cnvdmedrusennormaltotaloct2017372051134886162631583484
[0125]
为验证本实施例方法的有效性,本实施例对数据集oct2017做了下采样处理,以黄斑病变的数据量8616为基准,对每个类别进行等样本随机采样8600张图片,然后按照训练集和测试集按照9:1进行数据划分。
[0126]
以下结合附图和实施例详细说明本实施例技术方案。
[0127]
步骤1:获取视网膜oct图像分类数据集,将其按照9:1的比例分为训练集和测试集,最终得到4种类别的视网膜疾病oct图像,每类图像数量为8600张,其中7740张用于训练,860张用于测试。
[0128]
步骤2:图像预处理,将视网膜oct图像统一尺寸为224
×
224,采用下采样将四种类别的视网膜oct图像数量统一,对图像进行标准化图像预处理后的图像作为输入进分类网络中可以使分类的准确率更高、精度更好,图像标准化是将数据通过去均值实现中心化的处理,根据凸优化理论与数据概率分布相关知识,数据中心化符合数据分布规律,更容易取得训练之后的泛化效果,作为本实施例采用的标准化方法公式如下:
[0129][0130]
式(1)中μ是图像的均值,x表示图像矩阵;
[0131][0132]
式(2)中σ表示标准方差,n表示图像的像素。
[0133]
如图1所示,步骤3:设计基于多尺度残差网络的视网膜oct图像分类模型。总的来说,本实施例中的基于多尺度残差网络的视网膜oct图像分类网络是一种端到端的深度学习网络架构,本实施例将多尺度残差模块和双通道注意力与resnet50相结合,用多尺度残差模块代替网络中的部分残差模块,在网络中加入最大池化层来减小网络计算量,并将加入池化层后的卷积层步长由2改为1;将网络的输出维度设置为4,用于视网膜疾病图像的四分类任务:cnv、dme、drusen、normal;具体实现如下:
[0134]
步骤3.1,在基线网络中加入双通道注意力机制模块,双通道注意力机制模块结构如图2所示,双通道注意力机制模块结合了空间注意力机制模块和通道注意力机制模块,因此同时拥有了空间注意力机制模块与通道注意力模块的优点,可以捕获输入分布在空间和通道上的有用信息,从而提升网络的分类性能。
[0135]
其中,通道注意力模块与空间注意力模块结构图分别如图3、图4所示,通道注意力模块通过利用特征的通道间关系可以生成一个通道注意力特征图,一个特征图的每个通道都可以认为是一个特征检测器,通过通道注意力机制,可以获取输入特征分布在通道上的有意义的部分,为了高效地计算通道注意力,压缩了输入特征图的空间维度,在本实施例中,采用了全局平均池化和最大池化两种方式来聚合一个特征图的空间信息,生成两个不同的空间上下文描述符:和这两个描述符分别表示被平均池化的特征和被最大池化的特征,通道注意力计算方式如公式(3)所示,其中,σ为sigmoid函数,mlp的权重尺寸为和由平均池化特征和最大池化特征这两个输入共享,并且经过relu激活函数之后是w0,即池化特征在输入到mlp之前,需要经过relu函数进行处理。
[0136][0137]
在通道注意力模块之后,引入空间注意力模块,利用特征的空间相互关系可以生出一个空间注意力图,空间注意力专注于信息丰富的部分,这与通道注意力是互补的,为了计算空间注意力,首先沿着通道轴进行平均池化操作和最大池化操作,并将二者拼接起来生成一个高效的特征描述符,最终生成一个2d空间注意力图,简言之,空间注意力计算方式如公式(4)所示,其中σ表示sigmoid函数,f7×7表示一个卷积核尺寸7
×
7为的卷积操作。
[0138][0139]
步骤3.2,在网络中加入池化层。将池化层放在网络中残差模块前,将处于池化层后的残差模块步长值由2改为1,使得修改后的网络中输入输出参数量一致。
[0140]
步骤3.3,使用实施例的多尺度残差模块代替基线网络中的残差模块。基线网络中的残差模块框架如图5所示。在现代神经网络中,在网络深度逐渐加深的过程中,出现梯度弥散、梯度爆炸的概率也会逐渐变高,这个问题导致深度神经网络很难进行训练,残差模块中包含多个卷积层,数据通过这些卷积层,同时原始输入信息跳过这些卷积层直接传导至后面的层中,最终将他们的整体作为输入,用激活函数激活,进一步得到残差模块输出的结果,通过残差学习,在反向传播时,初始信号可以不经过任何中间权重直接传播到底层,一
定程度上可以缓解梯度弥散与梯度爆炸问题,即使中间层权重很小,梯度也基本不会消失。
[0141]
多尺度残差模块结构如图6所示,采用级联多核的多尺度残差模块,结合了残差模块的优点,使用1
×
1的卷积来进行升降维,来实现参数的减小化,同时减小参数的计算量,进一步在多个尺寸上同时进行卷积再聚合,该模块使用多核卷积(即1
×
1、3
×
3和5
×
5)来捕获分布再输入扫描中的更多的全局和局部信息,但是因为3
×
3和5
×
5卷积操作计算量比较大,使用了额外的1
×
1卷积来进行降维。此外,每个卷积层后面还有一个relu层用来减少计算量,缓解过拟合问题,这也允许网络处理输入扫描中信息位置的巨大变化。
[0142]
多尺度残差模块结构如图6所示,本实施例所设计的多尺度残差模块,在结合残差模块优点的同时,能够获取来自输入信息中更多更细节的信息,使用1
×
1的卷积来进行升降维,来实现参数的减小化,同时减小参数的计算量,该模块中包含残差模块和四条支路,残差模块极大的提高了可以有效训练的网络深度,其结构通过跳层连接的形式实现,即将单元的输入直接与单元输出加在一起,进一步有效的缓解了梯度消失问题,四条支路分别由1
×
1卷积、1
×
1和3
×
3卷积、1
×
1和5
×
5卷积以及最大池化层和1
×
1卷积组成,通过1
×
1卷积改变通道数目,用以减少计算量,输入信息以16k通道数输入,在经过第一条支路后以4k通道数输出,在经过第二条支路时,经过1
×
1卷积后以6k通道数输出,经过3
×
3卷积后以8k通道数输出,在经过第三条支路时,经过1
×
1卷积后以k通道数输出,经过5
×
5卷积后以2k通道数输出,在经过第四条支路时,经1
×
1卷积后以2k通道数输出,通过1
×
1、3
×
3、5
×
5卷积进行特征提取,可以得到不同尺度的信息,将输出信息以concatenate形式进行多尺度特征融合,融合后得到的输出信息与残差模块的输出信息以sum形式相加,并且,每一个卷积层后面都加入了relu层,relu层会使一部分神经元的输出为0,造成了网络的稀疏性,同时可以减少参数之间相互依存的关系,缓解了过拟合问题的发生,通过该模块,可以拥有残差模块的优点,能够有效的缓解梯度弥散问题,可以缓解过拟合的问题,同时能够得到来自输入信息中不同尺寸的信息,能够解决原视网膜oct图像中病理特征成像不清晰,小目标病变特征难以捕捉的问题。
[0143]
步骤3.4,在网络后加入平均池化层。通过加入平均池化层,用于减少参数计算量,用以缓解过拟合问题。
[0144]
步骤3.5,使用交叉熵作为损失函数。交叉熵损失函数经常用于分类问题中,由于涉及到每个类别的概率,本实施例中,交叉熵损失函数与softmax函数一起出现,具体为:
[0145]
在执行多分类任务中,经常是使用softmax函数和交叉熵损失函数的搭配方式,因为交叉熵描述了两个概率分布的差异,然而神经网络输出的是向量,所以需要softmax激活函数先将一个向量进行

归一化’成概率分布的形式,然后再采用交叉熵损失函数计算最终的loss。
[0146]
步骤3.6,更改网络的输出维度,使其适用于视网膜oct图像分类任务。原始基线网络的输出维度为100,为了处理视网膜oct图像的四分类(cnv、dme、drusen、normal)任务,本实施例将网络的输出维度设置为4。
[0147]
如图7所示,步骤4:将预处理后的训练集中视网膜oct图像输入分类模型中进行训练。首先,将视网膜oct图像经过预处理后放入分类模型中,然后用这些图像训练分类模型,优化目标函数,并更新模型参数;最后,训练结束后保存相关参数值。
[0148]
如图8所示,步骤5:将预处理后的测试集中视网膜oct图像输入分类结果,获得图
像的预测结果。通过训练后保存的模型,对预处理后的视网膜oct测试集图像进行测试,进一步对网络性能进行测试。由于不同的评价指标对实验结果的估计意义不同,所以本实施例使用了常用的正确率,精确率,召回率以及f1-score对测试结果进行评估。为了使实验结果更加简洁易懂,使用混淆矩阵将每一类数据的分类结果展示出来。其中正确率,精确率,召回率以及f1-score定义如公式5-8所示:
[0149][0150][0151][0152][0153]
5-8式中tp代表把正样本预测为正样本的样本数量;tn代表把负样本预测为负样本的样本数量;fp代表把负样本预测为正样本的样本数量;fn代表把正样本预测为负样本的样本数量;tp+fp代表预测为正样本的全部样本数量;tp+fn代表正样本的全部数量。
[0154]
为了验证本发明的有效性,首先与三名人类专家在视网膜oct图像分类领域做出的成就进行对比,结果如表2所示,从表2中可以看出,专家所用方法针对dme和drusen分类准确率不高,远低于其余两种类别的分类准确率,本发明中使用的算法,通过引用双通道注意力机制模块和多尺度残差模块,减少了原始图像中冗余信息的影响,更加高效的提升了网络对输入信息的采集,更好的避免网络训练时对原始输入数据特征的损失,进一步提升网络对视网膜oct病变图像的特征学习能力,本发明所用的算法对dme和drusen在分类准确率上有了显著的提升,相较于专家1和专家2,本发明对dme的准确率提升了3.5%和7.3%,对drusen准确率提升了5.4%和8.9%,并且在整体分类准确率上达到了97.3%,本发明所采用的算法对比专家的算法,无论是在整体准确率还是在单独每类的准确率上,本发明都是最高的,这充分验证了本发明改进网络的先进性
[0155]
另外,本发明也和resnet50进行了比较,结果如表3所示,从表3中可以看出,本发明方法在正确率、精确率、召回率和f1-score等指标上的表现都要更好。
[0156]
表2本发明与人类专家的视网膜oct图像分类性能比较
[0157]
方法cnvdmedrusennormal总体准确率专家196.9%95.8%92.5%98.5%97%专家2————————95.39%专家398%92%89%96%96.5%本发明算法98.6%99.3%97.9%98.8%97.3%
[0158]
表3本发明方法和resnet50的分类性能对比
[0159][0160]
为了进一步直观地看出网络对四个类别视网膜疾病的分类效果,绘制了基线网络以及本发明所采用网络的混淆矩阵图,如图9所示,其中纵轴为预测标签,横轴为真实标签,图中的数据为样本数目,分别表示每一类有多少张图片用于测试,其中每一类测试结果分别有多少张是预测正确,多少张预测错误包括预测错误的都预测成了什么,可以用来计算准确率。混淆矩阵中以蓝为基础颜,颜越深代表该类别的分类准确率越高,可以看出本发明所采用的网络,在对cnv、dme、drusen、normal类别上的分类精度都有比较明显的提升。

技术特征:


1.基于多尺度残差网络的视网膜oct图像分类方法,其特征在于,所述方法包括:步骤1、获取视网膜oct图像分类数据集,并将其分为训练集和测试集;步骤2、对所述训练集和测试集进行预处理;步骤3、利用双通道注意力机制和多尺度残差模块对基线网络进行改进,建立视网膜oct图像分类模型,所述基线网络为图像分类网络;所述多尺度残差模块具体包括若干条支路、所述基线网络的残差模块、特征融合模块和相加模块,每条所述支路包括若干个卷积;所述特征融合模块用于将所述若干条支路的输出信息进行特征融合;所述相加模块用于将所述融合后的信息与所述残差模块的输出信息进行相加;步骤4、利用所述预处理后的训练集对所述视网膜oct图像分类模型进行训练;利用所述预处理后的测试集对所述视网膜oct图像分类模型进行测试;获取训练后的视网膜oct图像分类模型;步骤5、利用所述练后的视网膜oct图像分类模型,对视网膜oct图像进行分类。2.根据权利要求1所述的基于多尺度残差网络的视网膜oct图像分类方法,其特征在于,所述预处理,具体包括:采用下采样的方式,将所述训练集和测试集中若干个类别的视网膜oct图像的数量进行统一;对所述数量统一后的视网膜oct图像的尺寸进行统一;对所述尺寸统一后的视网膜oct图像进行标准化。3.根据权利要求1所述的基于多尺度残差网络的视网膜oct图像分类方法,其特征在于,所述基线网络为resnet50网络。4.根据权利要求1至3中任一项所述的基于多尺度残差网络的视网膜oct图像分类方法,其特征在于,步骤3,具体包括:在所述基线网络中加入若干个双通道注意力机制模块、最大池化层和平均池化层;用若干个所述多尺度残差网络替代所述若干个基线网络的残差模块;设置损失函数,用于学习模型参数;根据视网膜oct图像分类任务,设置网络的输出维度。5.根据权利要求4所述的基于多尺度残差网络的视网膜oct图像分类方法,其特征在于,所述双通道注意力机制模块为两个,分别设置于卷积层后和最后一个多尺度残差模块后。6.根据权利要求4所述的基于多尺度残差网络的视网膜oct图像分类方法,其特征在于,所述最大池化层设置于第一个残差模块前。7.根据权利要求4所述的基于多尺度残差网络的视网膜oct图像分类方法,其特征在于,所述若干条支路具体包括四条支路;所述四条支路分别由1
×
1卷积、1
×
1和3
×
3卷积、1
×
1和5
×
5卷积以及最大池化层和1
×
1卷积组成。8.基于多尺度残差网络的视网膜oct图像分类系统,其特征在于,所述系统包括:数据集获取模块,用于获取视网膜oct图像分类数据集,并将其分为训练集和测试集;数据集处理模块,用于对所述训练集和测试集进行预处理;
视网膜oct图像分类模型建立模块,用于利用双通道注意力机制和多尺度残差模块对基线网络进行改进,建立视网膜oct图像分类模型;所述多尺度残差模块具体包括若干条支路、残差模块、特征融合模块和相加模块,每条所述支路包括若干个卷积;所述特征融合模块用于将所述若干条支路的输出信息进行特征融合;所述相加模块用于将所述融合后的信息与所述残差模块的输出信息进行相加;模型训练和测试模块,用于利用所述预处理后的训练集对所述视网膜oct图像分类模型进行训练;利用所述预处理后的测试集对所述视网膜oct图像分类模型进行测试;获取训练后的视网膜oct图像分类模型;模型分类模块,用于利用所述练后的视网膜oct图像分类模型,对视网膜oct图像进行分类。9.一种计算机设备,包括存储器和处理器,所述存储器中存储有计算机程序,其特征在于,当所述处理器运行所述存储器存储的计算机程序时执行权利要求1至7中任一项所述的方法的步骤。10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有多条计算机指令,所述多条计算机指令用于使计算机执行权利要求1至7中任一项所述的方法。

技术总结


基于多尺度残差网络的视网膜OCT图像分类方法、系统、计算机设备和存储介质,属于OCT图像处理技术领域,解决对视网膜OCT图像分类准确率较低问题。本发明的方法包括:获取视网膜OCT图像分类数据集,分为训练集和测试集;对训练集和测试集进行预处理;利用双通道注意力机制和多尺度残差模块对基线网络进行改进,建立视网膜OCT图像分类模型;多尺度残差模块具体包括若干条支路、残差模块、特征融合模块和相加模块,每条支路包括若干个卷积;特征融合模块用于将若干条支路的输出信息进行特征融合;相加模块用于将融合后的信息与残差模块的输出信息进行相加;获取训练后的视网膜OCT图像分类模型;对视网膜OCT图像进行分类。本发明适用于视网膜OCT图像的分类。用于视网膜OCT图像的分类。用于视网膜OCT图像的分类。


技术研发人员:

李冰 李广庆 刘侠 吴少勇 于尚宁 嫣梦雨

受保护的技术使用者:

哈尔滨理工大学

技术研发日:

2022.09.21

技术公布日:

2022/12/23

本文发布于:2024-09-24 02:28:14,感谢您对本站的认可!

本文链接:https://www.17tex.com/tex/1/45717.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:视网膜   所述   模块   图像
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议