一种基于卷积神经网络的中医舌色苔色自动分析方法与流程

文档序号:12888092阅读:627来源:国知局

本发明将深度学习技术引入到中医舌诊客观化研究中,提出一种基于卷积神经网络的中医舌色苔色自动分析方法,该方法可以有效提高舌色苔色自动分析的准确度和鲁棒性。本发明属于计算机视觉领域和中医舌诊领域,具体涉及深度学习、图像处理等技术。



背景技术:

舌象特征的自动分析是舌诊客观化研究的重要内容。舌色和苔色是舌象最基本的特征,因而舌色苔色的自动分析也成为舌诊客观化的研究热点。较为常用的舌色苔色自动分析方法有基于支撑向量机的识别方法、基于稀疏表示分类器的识别方法等。以上方法均需要手工选取特征,人工选取特征的好坏将直接影响分类性能的高低。通常情况下,提取的特征以颜色特征为主,这些特征都是建立在特定的光照环境下,对光照敏感,一旦舌象的拍摄光照条件发生变化,构建的分析模型将完全失去作用。因此,需要引入新的信息处理技术来解决这些问题。

近年来,深度学习在图像分类等计算机视觉领域取得了巨大成功。其中,卷积神经网络(convolutionalneuralnetwork,cnn)凭借其强大的特征学习与表达能力被广泛应用于图像分类。绝大多数现有的cnn网络结构(如googlenet、vggnet、resnet等)具有网络层次深的特点,需要依靠大数据驱动学习,如ilsvrc竞赛中使用的数据集包含百万幅图像。然而,对于中医学领域来说,权威医生标注的高质量数据样本不仅稀缺而且非常昂贵,而经验不足的医生或非专业人士标注的数据往往会导致杂乱的注释,引起歧义,数据标注的质量难以保证,这导致有标注的舌象样本库较小,绝大多数现有的cnn网络结构不能直接用于舌色苔色的自动分析。

因此,本发明结合舌色苔色自动分析的特点,专门设计了轻量型的深度神经网络,提出了一种基于卷积神经网络的中医舌色苔色自动分析方法,为中医舌诊客观化提供了一种重要的手段,对推动中医客观化的发展具有重要的意义,并在临床诊疗、养生保健、中医传承等方面具有重要的应用价值。



技术实现要素:

目的:提供一种分类准确率高的舌色苔色自动分析方法。

为解决上述技术问题,本发明采用的技术方案为:结合舌色苔色自动分析的特点,专门设计了轻量型的深度神经网络,提出了一种基于卷积神经网路的中医舌色苔色自动分析方法。该方法分为网络训练阶段和舌色苔色识别阶段,具体包括以下步骤:

步骤1:构建数据集。

本发明使用的数据集通过sipl型中医舌象仪采集得到,并且其舌色与苔色均由专业的中医医师进行标定。为了使训练样本尽可能标准且典型,本发明中所使用的训练样本为一系列由中医专家逐块确定类别的图像子块。这些样本块是利用滑动窗从舌图像相应的舌质区域和舌苔区域得到。

步骤2:卷积神经网络的结构设计和网络训练。由于cnn网络的低层网络可以学习到颜色和纹理低层特征,然后逐层学习抽象特征,而中医对舌色苔色进行诊断时的依据是低层的颜色和纹理信息。为此,本发明搭建了一种用于舌色和苔色分类的轻量型cnn网络,并利用步骤1中构建的舌色和苔色数据集分别训练该网络,得到舌色分类模型和苔色分类模型。

步骤3:对待分析的舌图像进行舌色苔色的自动识别。

步骤3.1:对待分析的舌图像进行舌色和苔色区域划分,分别得到舌质区域和舌苔区域。

步骤3.2:在步骤3.1得到的舌质区域和舌苔区域上,通过滑动窗分别得到舌质图像子块和舌苔图像子块。

步骤3.3:利用步骤2训练得到的舌色分类模型和苔色分类模型分别对相应的图像子块进行分类。

步骤3.4:通过统计决策的方法对分类结果进行综合,得到整幅舌图像的舌色和苔色类别。

与现有技术相比,本发明具有以下明显的优势和有益效果:

分类准确度高。与传统的“特征提取+分类器”方案相比,卷积神经网络是一种端到端的结构,特征提取与分类两个过程在同一框架下完成,避免了对特征和分类器选择的依赖。在分类精度上比传统方法具有明显优势,可以满足实际应用需求。

附图说明

图1基于卷积神经网络的舌色苔色自动分析方法流程图。

具体实施方式

以下结合附图和具体实施方式对本发明做进一步说明。

步骤1:构建数据集。

本发明使用的数据集通过sipl型中医舌象仪采集得到,且舌图像的舌色与苔色均由中医医师进行了标定。其中,舌色分为淡、淡红、红、暗红、绛红、暗紫,共6类;苔色分为薄白苔、白苔、白厚苔、薄黄苔、黄苔、黄厚苔、灰苔、褐苔、黑苔,共9类。

为了使训练样本尽可能标准且典型,本发明中所使用的训练样本为一系列由中医专家逐块确定类别的图像子块。这些样本块是利用滑动窗从舌图像相应的舌质区域和舌苔区域得到,滑动窗的尺寸为32×32,滑动步长为16。

步骤2:卷积神经网络的结构设计和网络训练。本发明针对舌色苔色自动分析设计了一种轻量型卷积神经网络,对该网络进行训练,可以分别得到用于舌色和苔色分类的网络模型。

步骤2.1:卷积神经网络结构设计。

本发明设计的卷积神经网络简称为toncolornet,该网络的输入为32×32大小的图像子块。该网络包含1个卷积层,一个池化层和3个全连接层。卷积层后面连接一个激励层和一个局部响应归一化层,前两层全连接层的输出均连接一个激励层,并采用dropout策略来提高神经网络的分类性能。卷积层采用7×7大小的卷积核,步长为1,输出32个特征图。池化层采用2×2尺寸大小并且步长为1的最大池化。前两层全连接层的神经元个数分别为100和50,最后一层全连接层的神经元个数为舌色或苔色的类别。此外,激励层采用修正线性单元(rectifiedlinearunit,relu)作为激活函数。

(1)修正线性单元

传统的激活函数sigmoid或者tanh函数都是饱和非线性函数,即函数值达到一定程度之后,变化会非常小,几乎为零,因此传统的神经网络在深度增加了之后,利用反向传播的方法进行训练时,误差传到前几层的时候就特别小,出现了所谓的梯度消失的问题(gradientvanishingproblem)。relu激活函数能够保留结果中的正数,采用relu激活函数不仅可以解决梯度消失的问题,还可以加快收敛。

(2)dropout

dropout以0.5的概率将每个隐层神经元的输出设置为零。以这种方式“droppedout”的神经元既不参与前向传播,也不参与反向传播。所以每次提出一个输入,该神经网络就尝试一个不同的结构,但是所有这些结构之间共享权重。由于神经元不能依赖于其他特定神经元而存在,所以这种技术降低了神经元复杂的互适应关系。正因如此,要被迫学习更为鲁棒的特征,这些特征在结合其他神经元的一些不同随机子集时有用。因此,本发明在前两个全连接层使用dropout策略来提高神经网络的分类性能。

步骤2.2:训练卷积神经网络。

cnn是一种有监督的学习方法,从大量样本中通过学习获得输入与输出之间的映射关系。该学习过程包括前向传播和反向传播两个阶段。前向传播是通过网络参数计算得到输入图像的标签,反向传播是计算输出标签与该图像期望标签的误差,然后利用误差回传算法校正网络参数。

然后再次进行网络训练。

在本发明提出的方法中,使用构建的舌色数据集和苔色数据集分别训练toncolornet。训练时,网络参数采用随机初始化,损失函数设为softmaxloss,利用随机梯度下降算法(sgd)方法进行网络训练,分别得到舌色分类模型和苔色分类模型。

步骤3:对待分析的舌图像进行舌色苔色的自动识别。

步骤3.1:对待分析的舌图像进行舌色和苔色区域划分,分别得到舌质区域和舌苔区域。本发明通过舌体分割、舌面区域划分以及苔质分离实现舌色苔色的区域划分。各个步骤的相关描述如下:

(1)舌体分割

由于舌象客观化研究的对象是舌体区域,而采集到的舌图像往往还包含面部等背景区域,所以在进行舌象特征自动分析之前,需要对舌体进行分割,分割的精确度将直接影响舌象特征自动分析的准确度。本发明采用深度学习方法实现舌体分割。首先,手工标注舌图像的像素,将舌图像分为舌体区域和背景区域,得到舌图像的标签;然后利用舌图像和其相应的标签训练segnet网络,得到用于舌体分割的分割模型;最后利用该分割模型实现舌体分割。

(2)舌面区域划分

完成舌体区域的分割之后,为了更准确地对舌色和苔色进行分析,需要进一步确定舌质和舌苔的所在区域。为此,本发明根据中医专家的舌诊习惯将舌面划分为5个区域,分别为:舌根、舌中、舌尖、舌左侧和舌右侧。通常情况,根据舌质和舌苔分布区域的不同,中医通过观察舌两侧和舌尖对患者的舌质颜色进行判断,在舌中和舌根处观察舌苔的颜色。

(3)苔质分离

对于一些舌苔面积很大或不规则的舌图像而言,其舌两侧和舌尖的部分区域也被一些舌苔覆盖。因此,本发明在完成舌面区域的5区划分后,又进一步进行了舌质区的苔质分离。本发明首先将分割后的舌图像从rgb颜色空间转换到hsv颜色空间,并选取饱和度s分量构成s图;然后,对s图做直方图均衡,并对s图的像素值取反;最后,利用k均值聚类实现苔质分离。

根据中医专家进行舌诊时的习惯,即通常从舌两侧和舌尖来观察舌质,本发明将经过苔质分离确定的舌质区域作为最终的舌质区域,而将“舌面区域划分”中得到的舌中和舌根区域作为舌苔区域,分别用于后续的处理。

步骤3.2:在步骤3.1得到的舌质区域和舌苔区域上,通过滑动窗分别得到尺寸为32×32的舌质图像子块和舌苔图像子块。

步骤3.3:利用步骤2训练得到的舌色分类模型和苔色分类模型分别对相应的图像子块进行分类,得到舌质图像子块和舌苔子块的分类。

步骤3.4:通过统计决策的方法对各个子块的分类结果进行综合,得到整幅舌图像的舌色和苔色类别。

由于数据集中存在样本不均衡问题,因此,得到舌色和苔色区域图像子块的分类结果后,考虑各类颜色在样本库中的总数以及它们在分类结果中的数量,本发明采用如下的决策公式进行判决:

ρi=ni·wi(1)

其中,ρi为第i类颜色的决策值,ni为分类结果中第i类颜色出现的次数,wi为第i类颜色的权重,其定义如下:

其中,m为样本库中的训练样本总数,mi为第i类颜色在样本库中的样本总数。在得到各类的决策值后,比较它们的大小,将其中决策值最大的颜色判定为待分析舌象舌色或苔色的颜色类别,从而实现基于cnn的舌色苔色的自动分类。

本发明将深度学习技术应用到中医舌色苔色自动分析中,提出了一种基于卷积神经网络的的中医舌色苔色自动分析方法。与传统的中医舌色苔色自动分析方法相比,本发明提出的方法可以分别将舌色和苔色识别准确率平均提高7.9%和4.48%。

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