基于舌诊偏色与去干扰的计算机技术研究∗
2021-04-04
(长沙理工大学物理与电子科学学院 长沙 410114)
1 引言
治病,正确诊断是基础。中医诊断,望、闻、问、切,四诊合参。望而知之谓之神,闻而知之谓之圣,问而知之谓之工,切脉而知谓之巧。面对望诊的舌像诊断有经验的中医医师通常要在食后两小时后进行舌诊,以求排除饮食因素的影响。中医医师望舌诊断要求患者坐直,自然伸出舌,面对自然光对舌进行观察。对于舌的色泽,舌边、舌尖部位由于苔质较少所以它们的色泽近似,色泽呈现的多为舌质的颜色。舌中部有较多的舌苔,会有与舌尖、舌两边不同的色泽出现,一般呈现的是苔色。在临床诊断中舌色应以舌边以及舌尖的舌质为准,苔色应以舌中部的舌苔为主[1~2]。项目研究了淡红舌薄白苔在饮食红色火龙果对舌色造成的偏色与去干扰,首先研究了饮食红色火龙果不会对舌质(舌尖、舌两侧)的颜色造成影响,其次采用了伪彩色图像处理对偏色进行了校正,完成了中医舌诊的食品偏色研究与去干扰。
2 舌像预处理
2.1 舌像采集以及预处理
使用高像素照相机获取舌图片,摄像的光源选取问题是图像处理技术的一大难点,所以只能照相且严格意义上来讲要处以黑白图片作精准分析。在饮食前后分别拍摄两张照片,图1(a)是未染色的舌像,图1(b)是被红色火龙果染色后的舌像,与图1(a)是一组对照图像。采取同样光源拍摄,采集好舌像后,首先进行预处理,预处理包括去噪,图像变换,颜色空间的转换等。
2.2 舌像分割
图像分割方法主要有四大类分割法[6]:边界检测、阈值分割、基于区域的分割等。在中医舌像分割中,除了上述中的图像分割方法,文献[3]中,OT⁃SU算法与数学形态学结合的方法进行舌像分割。由KaS[4]提出了Snake模型(动态轮廓模型),Snake模型在舌像轮廓提取和分割中产生了很好的效果。在深度学习出现后,王丽冉等提出了利用两阶段的卷积神经网络实现舌像分割[5]。本研究采用了彩色阈值分割,阈值分割通过以像素特性分布为基础的阈值处理。如图2(a)分割后舌像、图2(b)分割后舌像对照图所示。
图1 舌像采集
3 偏色校正依据
舌像主要有舌质舌苔两部分。舌质指舌的肌肉脉络组织,是脏腑气血之所荣。舌苔指舌面上附着的一层苔状物,是胃气上蒸所生。中医舌诊辨证论治的主要参照依据有舌形[7~8]和舌色[11],舌诊中,舌色主要参考舌质、舌苔颜色及其分布[9~10,12]。舌质和舌苔在舌像上没有显著的分界,一般情况下,认为舌苔位于舌像的中间部分,舌两边以及舌尖是舌质部分。本研究处理的舌像是淡红舌薄白苔,主要通过观察被染色的舌像以及未被染色的舌像,分离出舌质,然后比较未染色舌质图以及被染色舌质图的颜色分布[6]。
图2 分割后舌头
3.1 分离舌质
舌象由舌质和舌苔组成,苔质分离本质上是彩色图像分割问题。本研究在进行苔质分离后对舌质的RGB值进行直方图统计且对直方图进行了比较得出了相关系数。苔质分离后的舌质图像,如图3(a)舌质、如图3(b)舌质对照图所示。
图3 分离舌质
3.2 两幅舌质图对比
3.2.1 舌质的基准值
两个舌质颜色的相似可设置两个舌质颜色的基准值,设置基准值为舌质的不同位置处舌左侧(R1、G1、B1)、舌右侧(R2、G2、B2)和舌尖(R3、G3、B3)的均值(R、G、B),如公式所示。若基准值相差不远即可认为舌质颜色相似,不需改变。计算出的未染色与被染色局部舌质RGB均值如表1所示。
表1 未染色与被染色局部舌质RGB均值
舌质右侧的颜色比左侧以及舌尖颜色深,是因为平时吃东西时习惯在右侧咀嚼,故而舌质右侧颜色较深。且未被染色和被红色火龙果染色的舌质RGB值相差不大,每个分量的误差在20以内,这个差值指整个图像的均值,不是图像中每个像素的灰度差,对于整个舌质图来说误差均值在20。
3.2.2 直方图比较
作出舌质在未染色以及染色后的RGB的直方图,绘制出的直方图如图4(a)舌质RGB的直方图、图4(b)舌质对照图RGB的直方图所示。对比如图4(a)舌质RGB直方图和图4(b)舌质对照图的RGB直方图所示,两舌质直方图总体走势基本一致,但在舌质对照图的RGB值在R分量以及G分量上个别值会有突增,也就是在红色以及绿色的颜色数会有所的增加,但舌质RGB直方图总体走势基本一致,认为在图像中每个颜色的分布是近似的。
图4 舌质的RGB直方图
3.2.3 相关系数
两个舌质颜色的统计分布的相似性可用相关系数来度量。相关系数则是用相关、卡方、直方图相交以及巴士距离进行比较。如表2所示,在相关以及直方图相交计算中可知未染色与被染色舌质图相关值相差不大,而卡方相比相关值、正交以及距离会稍微偏大,这是因为函数在描述相关时量度的选取问题,但在处理相关以及距离问题上依然在相似度很近的区域范围中。相关系数指出两幅舌质图像的每个颜色直方图的相似度,具体在颜色分布以及颜色均值是近似的,只有少许的误差。造成误差的原因有:
1)图像采集时的条件不在人为可控制范围,例如光照条件的影响等;
2)信息采集时,拍照的角度;
3)饮食后对身体的影响在舌质上有变化。
由比较得知被染色舌质与未染色舌质在颜色特征没有明显的差距,所以舌质不易受到偏色干扰,而舌苔易被颜色较深的食品染色,舌苔集中于舌中部和舌的两侧,因此食品偏色去干扰的部分集中于解决舌苔颜色特征。
表2 直方图比较的相关值以及距离
4 校正过程以及结果
传统偏色去干扰算法主要有灰度世界算法和镜面法两种,这两种算法都针对图像内容的某种假设进行处理[9],两种方法均适用于光照对舌像产生的影响与本研究产生偏色的原因不同,故不适用上述两种方法。文献[13]中提取了油画中的主题色,利用色相直方图与色彩和谐模式进行匹配提取主色。本研究利用主题色提取的方法进行了舌像校正,如图5舌像校正研究流程图所示。
图5 舌像校正研究流程图
4.1 分离舌苔
苔质分离分为两种情况来进行:薄舌苔和厚舌苔,薄舌苔的情况,因为舌苔颜色浅,采用阈值法,可分离出薄舌苔舌像的苔质区域。厚舌苔的情况,因为苔色区与舌质颜色区别大,适合用聚类分类法。本研究中的舌头是薄舌苔,苔质分离使用阈值分割,分离出的舌苔如图6(a)舌苔、图6(b)舌苔对照图所示。
4.2 图像主题色提取标记
彩色图像的每个像素一般有RGB三个颜色分量组成,一张图像不会包含色彩空间中所有的颜色,只会包含其中的部分颜色。主题色即为在图像或人的视觉中颜色占比较大的颜色,主题色提取算法目前主要有颜色量化法、聚类、和颜色建模法等。本文利用K-means算法实现了提取舌苔的主色。算法主要步骤:
1)首先要随机的产生聚类中心(个数需自己确定),计算像素到聚类中心的距离,把像素归类在距离最近的一类中。
2)计算像素灰度值的平均数,求每一类主题色中离平均数最近的像素记为这一类主题色新的聚类中心。
3)判断所有主题色中心的变化,如果聚类中心改变,则再次由该聚类中心对所有像素聚类,直到所有的主题色的聚类中心不变,算法终止。
如图7舌苔对照图主题色可知,图中主题色应该是除了黑、白、灰等不是舌苔上的颜色,其主题色以及颜色所占比例如表3所示。提取主题色后,对每个主题色的区域进行标记,以便下一步的伪彩色图像处理。计算出舌苔的颜色均值为R'=137.912,G'=86.381,B'=149.572,对比舌质数据进行中医判断和伪彩色的灰度等级研究,进行伪彩色图像处理。
图6 分离舌苔
图7 舌苔对照图主题色
4.3 伪彩色图像处理
在彩色空间中,图像由RGB三个彩色分量线性组合,在对色彩进行处理主要有真彩色、伪彩色和调配色。真彩色是在一副图像中的每个像素值,都有RGB三个颜色分量,每个颜色分量的强度决定显示屏的颜色,是真实的原图彩色。伪彩色图像认为每个像素值是一个代码,这个值作为色彩查找的一个地址,在这个像素中查找出RGB值,然后对应其映射关系,重新在该色彩区域中对像素赋RGB值[14~15]。由于对图像重新赋彩色值,故而显示的彩色图像不是图像本身的颜色,所以称其为伪彩色。处理结果前后如图8校正后的舌苔所示。伪彩色图像处理具体步骤:
1)确定主题色在图像中的区域标记(a、b、c、d、e、f、g、h、i、j);
2)在不同的区域中重新对颜色区域细化,每区域中细化3个区域;
3)在每个细化区域中重新赋彩色值,彩色值选取依据表1中未染色局部舌质RGB均值。
图8 校正后的舌苔
表3 舌苔主题色提取
4.4 实验结果
项目研究通过确定区域标色的校正研究方法应用于完整舌体,使用opencv以及Matlab等工具进行实践,得到如图9(b)校正后舌像。表4校正前舌质均值与校正后舌像局部位置均值比较可知,校正后的舌像与校正前舌质的颜色相差不大,灰度级在20左右,这里的阈值取20是因为在表1未染色与被染色舌质均值的R、G、B分量的差值在20之内。结果图表明,对于舌苔中颜色较深的部分,已经和周边舌质部分的颜色相近,但图像缺少原图的生动。这主要是以下原因所导致:
1)在提取彩色图像的主题色时,主题色的聚类中心是彩色图像某个像素近似的RGB值,并不能将其笼统地确定为该区域的色彩值;
2)伪彩色图像处理只是单纯给图像赋RGB值,虽然本文已经对色彩区域进行了细化,但经过软件处理的照片与自然场景中拍摄的图像相比,自然场景的图像在色彩分布上会更复杂多样且在视觉上色彩更和谐。
图9 校正舌体
表4 校正前舌质均值与校正后舌像局部位置均值
5 结语
望诊是中医诊断的主要手段之一,舌诊是望诊的核心内容。本研究通过对食品偏色与去干扰方法的探讨,解决了舌色的舌边色泽和舌中色苔的相对性问题。项目采用伪彩色图像处理和灰度等级的数据校正,将开创中医的现代化、无损伤医疗与人类健康管理的新气象,应用前景广阔。