一种基于D-Resnet的高光谱中医舌苔舌质分类方法与流程

专利2022-06-29  148


本发明属于计算机视觉领域,涉及一种d-resnet网络的高光谱医学图像分类方法。



背景技术:

舌诊是中医四诊的主要内容之一,对于指导中医临床辨证施治及疗效评价有着非常重要的意义。舌苔舌质信息定量描述作为中医舌诊的重要内容,直接影响到中医临床舌诊的准确性,随着科学技术的发展,关于舌苔舌质分类的研究已经取得显著进展,然而这些研究主要基于rgb颜色空间来对进行舌象信息采集与分析,信息量不足。而高光谱图像可以同时获得被测对象的二维图像信息和一维光谱信息,相较于传统rgb三基色图像,在信息量方面具有突出的优势。高光谱舌象图像呈现三维立体结构,从空间轴角度能够对舌象在不同光谱波长下的成像内容进行分析与比较,从光谱轴角度能够提取舌象某一区域的光谱反射率变化情况结合高光谱图像提供的空间分布信息,可以进行该区域的光学特征分析,从而实现人体的舌苔舌质分类。

高光谱图像含有大量的光谱和空间信息,加上潜在的冗余和噪声,给高光谱图像处理任务带来了困难。目前最先进的深度学习方法在高光谱图像分类和分析方面取得了前所未有的成绩。然而,这些体系结构仍然面临着精度下降和训练时间长的挑战。



技术实现要素:

针对现有算法的不足,本发明提出一个端到端的d-resnet网络对高光谱舌图像进行分类,与基于rgb图像的舌苔舌质分类,以及基于高光谱舌像的传统舌苔舌质分类方法不同,本发明构造了光谱信息提取模块与空间信息提取模块分别提取舌像中的光谱信息与空间信息。通过densely-connectedspectral模块提取光谱信息,然后通过pre-activationbottleneckresidualspatial模块提取空间信息,通过空间光谱联合得出分类结果。本算法基于高光谱舌图像有效的实现了人体舌苔舌质分类,为中医舌诊客观化的研究提供了一种新的途径。

本发明提供一种基于端到端的d-resnet网络的高光谱医学舌像分类算法,包括以下步骤:

1、高光谱舌像预处理

对原始舌图像数据集进行标注,得到标签图像作为真值,随机从原始舌图像数据集中选择一张图像输入到数据提取模块,每次随机在图像中选择9×9×l像素点的小块作为输入,从而能将更多的高光谱舌像数据送入网络。

2、densely-connectedspectral算法模块搭建

本发明利用高光谱技术,提出densely-connectedspectral模块,通过3d卷积提取舌像的深层光谱特征,解决传统舌苔舌质分类方法中信息量不足的问题。densely-connectedspectral模块由三个3d卷积层(3d-conv)组成,由于在学习到更深层的光谱特征后网络会丢失舌像的浅层信息,因此我们构造了密集连接,每个卷积层通过密集连接与之前的所有卷积层相连。通过密集连接,每个卷积层接收来自前几层的特征映射,实现了特征重用,并且因此可以用较少的参数来获得更好的性能,从而使网络更加紧凑,获得更高的计算效率。

3、pre-activationbottleneckresidualspatial算法模块搭建

舌像中除了光谱信息,还包含两维空间信息,结合空间信息,可以更加准确的进行舌苔舌质定量分析,因此本发明构建了pre-activationbottleneckresidualspatial模块进一步学习舌像中的空间信息,该模块由两个单元组成:u1、u2,每个单元有两个3×3×1卷积层和两个1×1×1卷积层,并且每个单元通过跳跃连接与前一个单元相连,通过跳跃连接,网络可以将输入信息直接传输到输出,保护信息的完整性,解决梯度消失和模型退化的问题。由于采集到的高光谱舌像数据量较少,我们采用bn和prelu对网络进行预激活,防止过拟合。并且由于高光谱舌像维度过高,不同于传统的resnet网络,本发明构造了瓶颈残差网络,在3×3卷积层前后各加了一个1×1卷积层,减少3×3卷积层的输入维度,减少运算参数,进一步优化网络。

4、空间光谱联合的舌苔舌质分类

通过densely-connectedspectral模块提取了深层光谱特征后,通过reshape层将光谱维压缩,保持空间维信息不变,进一步减少了运算参数,使网络更加优化,并保证了舌像空间信息的完整性,然后送入pre-activationbottleneckresidualspatial模块进一步提取舌像中的空间特征,然后通过平均池化层对邻域内特征点求平均,将特征的大小映射到1×1×1。然后通过flatten层,dropout层和完全连接层,进行softmax回归,生成预测向量1×1×c,其中c是要分类的类别数,从而实现了空间光谱联合的舌苔舌质分类。

有益效果

1、本发明利用d-resnet网络实现高光谱医学舌像分类算法

自动舌区分割是计算机辅助舌诊断的关键,但传统的基于强度的单色图像分割方法不能提供准确、可靠的结果并且存在信息量不足的问题。本发明提出了一种基于d-resnet网络的高光谱舌像分割算法。实现了空间光谱联合的舌苔舌质自动分割,获得更好的分割效果,为中医舌诊客观化的研究提供了一种新的途径。

2、本发明对原始高光谱舌像数据通过预处理模块提取数据

由于舌像数据量较少,本发明对高光谱舌像按照像素点分类,因此我们首先将高光谱舌像送入数据提取模块,每次在图像中随机选择9×9×l像素点的小块作为输入,从而能将更多的高光谱舌像数据送入网络。

3、本发明提出d-resnet网络

高光谱舌像包含大量的空间信息与光谱信息,然而传统的2d卷积网络只能学习舌像中的二维信息,导致信息量不足,准确度不高等问题,因此本发明构造了空间光谱联合的d-resnet网络,通过构造densely-connectedspectral模块与pre-activationbottleneckresidualspatial模块分别提取舌像中的光谱信息与空间信息,得到了更好的舌苔舌质分类结果。

附图说明:

图1为本发明densely-connectedspectral模块网络图。

图2为本发明pre-activationbottleneckresidualspatial模块网络图。

图3为d-resnet网络图。

图4为本发明利用d-resnet实现医学高光谱舌像分类算法流程图。

具体实施方式

下面结合附图对本发明的具体实施方法进行详细说明。

1、标注预处理

通过envi软件对原始舌图像数据集进行反射率校准并标注,得到标签图像作为真值(groundtruth)。

2、构建d-resnet网络

如图3所示。本发明所构造的d-resnet网络的各层具体参数如下:

①u1卷积层:输入尺寸为9×9,输入通道数为l,卷积核为1×1×7,通道数为24,边缘填充方式为‘valid’,激活函数为prelu,输出尺寸为9×9×b,输出通道数为24。

②u2卷积层:输入尺寸为9×9×b,输入通道数为24,卷积核为1×1×1,通道数为12,边缘填充方式为‘same’,激活函数为prelu,输出尺寸为9×9×b,输出通道数为36。

③u3卷积层:输入尺寸为9×9×b,输入通道数为36,卷积核为1×1×1,通道数为12,边缘填充方式为‘same’,激活函数为prelu,输出尺寸为9×9×b,输出通道数为48。

④u4卷积层:输入尺寸为9×9×b,输入通道数为48,卷积核为1×1×1,边缘填充方式为‘same’,激活函数为prelu,输出尺寸为9×9×b输出通道数为60。

⑤u5卷积层:输入尺寸为9×9×b,输入通道数为60,卷积核为1×1×b,通道数为200,边缘填充方式为‘valid’,激活函数为prelu,输出尺寸为9×9×1,输出通道数为200。

⑥reshape层:输入尺寸为9×9×1,输入通道数为200,输出尺寸为9×9×200,输出通道数为1。

⑦u6卷积层:输入尺寸为9×9×200,输入通道数为1,卷积核为3×3×200,通道数为24,边缘填充方式为‘valid’,激活函数为prelu,输出尺寸为7×7×1,输出通道数为24。

⑧u7卷积层:输入尺寸为7×7×1,输入通道数为24,第一个卷积核为1×1×1,第二个卷积核为3×3×1,第三个卷积核为3×3×1,第四个卷积核为1×1×1,边缘填充方式为‘same’,激活函数为prelu,输出尺寸为7×7×1,输出通道数为24。

⑨u8卷积层:输入尺寸为7×7×1,输入通道数为24,第一个卷积核为1×1×1,第二个卷积核为3×3×1,第三个卷积核为3×3×1,第四个卷积核为1×1×1,边缘填充方式为‘same’,激活函数为prelu,输出尺寸为7×7×1,输出通道数为24。

⑩平均池化层:输入尺寸为7×7×1,输入通道数为24,输出尺寸为1×1×1,输出通道数为24。

全连接层:输入尺寸为1×1×1,输入通道数为24,输出向量1×1×c,完成分类,其中c为分类个数。

3、基于d-resnet的高光谱舌像分类算法

如图4所示,本发明利用d-resnet网络实现遥感高光谱图像分类算法具体过程如下:

①、我们使用高光谱舌图像数据集中20%作为训练集,10%和70%用于验证和测试数据集。

②、随后将测试集高光谱舌图像中选取的9×9×l小块(其中l是网络自动读取的图像光谱维数)以及其对应的标签图像作为真值(groundtruth)输入到d-resnet网络中,进行训练,prelu对网络进行预激活,它在relu的基础上拥有了更少的参数:

其中zi是第i层通道上非线性激活的输入,ai是一个可学习的参数,prelu在更新ai时采用动量法:

其中δ是动量,ε是学习率,ai=0.25用作初始值。

③、共10次训练周期,训练时采用可变学习率,设置初始学习率为0.01,当分类精度在一个训练周期后没有提高时,学习率减半。如果分类精度在下一个训练周期后依然不再增加,则学习率将再次降低一半,并循环,直到小于设置的最小学习率则不再改变。在本发明中,最小学习率设置为0,因此学习率会一直循环直到训练结束。

④、随后使用交叉熵损失函数对得到的初始分类模型进行验证,验证的最终目的是对模型进行优化,使得分类模型分出的结果图与真值(groundtruth)一致,最终通过交叉验证得到一个最好的分类模型。使用交叉熵损失函数测量预测值和实际值之间的差异,优化模型参数。在本发明中,d-resnet框架的预测值向量y为:

y=d_resnet(x,μ)(3)

其中d_resnet()是我们的网络模型,x是输入数据,μ是要优化的d-resnet模型的动量参数,我们用下面的损失函数进行了softmax回归:

其中ls是损失函数,m表示数据送入网络的批量尺寸大小,xi表示第yi类的第i层输入,n表示要分类的类别数,是最后一个完全连接层中权重w的第j列,第t行,b为偏移项。因此,d-resnet框架的目标函数,fd_resnet为:

⑤、最终将测试集中高光谱舌图像送入得到的最好分类模型,实现基于高光谱的中医舌苔舌质分类。


技术特征:

1.基于d-resnet网络的高光谱图像分类算法,其特征在于,包括以下步骤:

(1)、高光谱舌像预处理

通过envi软件对原始舌图像数据集进行反射率校准并进行标注,得到标签图像作为真值,随机从原始舌图像数据集中选择一张图像输入到数据提取模块,每次随机在图像中选择9×9×l,的小块作为输入,其中l是网络自动读取的图像光谱维数,从而能将更多的高光谱舌像数据送入网络;

(2)、构建d-resnet网络

d-resnet网络包含四个部分:光谱信息提取模块,光谱压缩模块,空间信息提取模块以及输出模块;光谱信息提取模块由三个3d卷积层(3d-conv)组成,在卷积层间构造密集连接,每个卷积层通过密集连接与之前的所有卷积层相连;然后送入光谱压缩模块将光谱维压缩,光谱压缩模块由两个3d卷积层(3d-conv)组成;随后送入空间信息提取模块进一步提取舌像中的空间特征,该模块由两个单元组成:u1、u2,每个单元有两个3×3×1卷积层和两个1×1×1卷积层,并且每个单元通过跳跃连接与前一个单元相连;在u1、u2中的每个卷积层之前加入bn和prelu对网络进行预激活,防止过拟合;最后送入输出模块,通过平均池化层对邻域内特征点求平均,将特征的大小映射到1×1×1;然后通过flatten层,dropout层和完全连接层,进行softmax回归,生成预测向量1×1×c,其中c是要分类的类别数,从而实现了空间光谱联合的舌苔舌质分类;

(3)、利用d-resnet网络实现医学高光谱舌像分类算法

选取高光谱舌图像数据部分分别作为训练集、验证和测试数据集,随后将测试集高光谱舌图像中选取的9×9×l小块以及其对应的标签图像作为真值输入到d-resnet网络中,进行训练,得到初始分类模型;

共10次训练周期,训练时采用可变学习率,设置初始学习率为0.01,当分类精度在一个训练周期后没有提高时,学习率减半;如果精度在下一个训练周期后依然不再增加,则学习率将再次降低一半,并循环,直到小于设置的最小学习率则不再改变;最小学习率设置为0,因此学习率会一直循环直到训练结束;

验证过程:

随后使用交叉熵损失函数测量预测值和实际值之间的差值来对得到的初始分类模型进行验证,验证的最终目的是对模型进行优化,使得分类模型分出的结果图与真值一致,最终通过交叉验证得到一个最好的分类模型;

测试过程:

最终将测试集中高光谱舌图像送入得到的最好分类模型,实现基于高光谱的中医舌苔舌质分类。

2.根据权利要求1所述的算法,其特征在于,d-resnet网络的各层具体参数如下:

①u1卷积层:输入尺寸为9×9,输入通道数为l,卷积核为1×1×7,通道数为24,边缘填充方式为‘valid’,激活函数为prelu,输出尺寸为9×9×b,输出通道数为24;

②u2卷积层:输入尺寸为9×9×b,输入通道数为24,卷积核为1×1×1,通道数为12,边缘填充方式为‘same’,激活函数为prelu,输出尺寸为9×9×b,输出通道数为36;

③u3卷积层:输入尺寸为9×9×b,输入通道数为36,卷积核为1×1×1,通道数为12,边缘填充方式为‘same’,激活函数为prelu,输出尺寸为9×9×b,输出通道数为48;

④u4卷积层:输入尺寸为9×9×b,输入通道数为48,卷积核为1×1×1,边缘填充方式为‘same’,激活函数为prelu,输出尺寸为9×9×b输出通道数为60;

⑤u5卷积层:输入尺寸为9×9×b,输入通道数为60,卷积核为1×1×b,通道数为200,边缘填充方式为‘valid’,激活函数为prelu,输出尺寸为9×9×1,输出通道数为200;

⑥reshape层:输入尺寸为9×9×1,输入通道数为200,输出尺寸为9×9×200,输出通道数为1;

⑦u6卷积层:输入尺寸为9×9×200,输入通道数为1,卷积核为3×3×200,通道数为24,边缘填充方式为‘valid’,激活函数为prelu,输出尺寸为7×7×1,输出通道数为24;

⑧u7卷积层:输入尺寸为7×7×1,输入通道数为24,第一个卷积核为1×1×1,第二个卷积核为3×3×1,第三个卷积核为3×3×1,第四个卷积核为1×1×1,边缘填充方式为‘same’,激活函数为prelu,输出尺寸为7×7×1,输出通道数为24;

⑨u8卷积层:输入尺寸为7×7×1,输入通道数为24,第一个卷积核为1×1×1,第二个卷积核为3×3×1,第三个卷积核为3×3×1,第四个卷积核为1×1×1,边缘填充方式为‘same’,激活函数为prelu,输出尺寸为7×7×1,输出通道数为24;

⑩平均池化层:输入尺寸为7×7×1,输入通道数为24,输出尺寸为1×1×1,输出通道数为24;

全连接层:输入尺寸为1×1×1,输入通道数为24,输出向量1×1×c,完成分类,其中c为分类个数。

技术总结
一种基于D‑Resnet的高光谱中医舌苔舌质分类方法,涉及计算机视觉领域。基于RGB颜色空间的舌苔舌质分类,信息量不足,而高光谱舌像蕴含大量的光谱以及空间信息,通过提取舌象某一区域的光谱反射率变化情况结合高光谱图像提供的空间分布信息,从而实现人体的舌苔舌质分类。本发明提出一个端到端的D‑Resnet网络对高光谱舌图像进行分类,本发明先构造了密集连接模块(densely‑connected spectral block)提取光谱信息,随后构造了预激活瓶颈残差模块(pre‑activation bottleneck residual spatial block)提取空间信息。本发明实现了基于高光谱图像的舌苔舌质分类。

技术研发人员:蔡轶珩;郭雅君;刘嘉琦;胡绍斌;张新峰
受保护的技术使用者:北京工业大学
技术研发日:2020.01.15
技术公布日:2020.06.09

转载请注明原文地址: https://bbs.8miu.com/read-16649.html

最新回复(0)