基于计算机图像技术的中医舌形客观化研究概述*
2022-03-12陆俊红徐艺峰王忆勤郝一鸣
陆俊红,徐艺峰,王忆勤,郝一鸣
(上海中医药大学上海市健康辨识与评估重点实验室/中医四诊信息化实验室 上海 201203)
舌诊是中医望诊的重要环节,包括3个部分:望舌质、望舌苔、望舌下脉络。其中舌质包含舌神、舌色、舌形、舌态4个部分,中医诊断学将舌形分为老嫩舌、胖瘦舌、点刺舌、裂纹舌、齿痕舌。舌诊中舌形较容易被识别,并且舌形不容易受到其他外来因素(如食物、药剂等)的影响,因而舌形作为一种较为客观的反应人体生理过程的诊断标志,被广泛运用于临床辨证中[1]。传统中医望舌往往依靠医生的主观意识和经验积累,客观性不足,因此舌形客观化对于疾病诊断、疗效评估具有重要作用。
近20年来,各种新兴的计算机技术广泛用于中医研究,其中计算机图像处理技术常用于望诊的图像识别和疾病诊疗等[2-4]。计算机图像能清晰反应舌形老嫩、胖瘦、点刺、裂纹、齿痕等特征,通过各种计算机软件对舌图进行分析后,提取客观的舌形参数。既往舌体分割方法分为3类,分别是基于颜色特征的舌分割[5]、基于Snake模型及其变体的舌分割[6]以及基于深度神经网络的舌分割[7-8],并在此基础上不断发展创新。但计算机图像技术研究舌图像在数据采集、转化、计算机图像处理模式等方面还存在一定缺陷,且目前尚未见有关计算机图像处理舌形参数研究现状的总结,因此本文旨在对近20年来国内外有关中医5种舌形客观化研究现状进行概括分析,总结了目前研究的不足,并提出未来开展舌形客观化研究的方向和策略。
1 舌形客观信息提取的算法研究
1.1 老嫩舌
老舌顾名思义指舌头形体苍老,表现为舌质纹理干燥粗糙,多主实。嫩舌舌体胖且娇嫩,舌质纹理细腻,色泽淡,多主虚。《辨舌指南》记载:“凡舌质坚敛而苍老,不论苔色白黄灰黑,病多属实。舌质浮胖兼娇嫩,不拘苔色灰黑黄白,病多属虚。”
目前常用老嫩舌的区分依然主要依靠医生直接观察病人舌体的大小、纹理、充盈程度。现代医学研究老嫩舌客观化有以下几个方面:许家佗等[9]依据中医老嫩舌纹理差异较大的特点,针对老嫩舌的纹理特征进行分析处理,分析时采用灰度差分统计方法来对舌图像纹理进行量化和定义分类,再运用对比度、角度方向二阶矩、熵、均值4个参数进行进一步量化、分类,实验结果显示采用以上方法后计算机识别老嫩纹理情况与传统中医视觉识别的符合率为:老舌88%、嫩舌76%、舌质适中72%、总体识别率达74%,表明灰度差分法结合4种参数共同描述舌表面纹理细腻及粗燥程度效果佳,结果与传统中医舌诊纹理分类方法符合度较好,许家佗也尝试将该种判别老嫩舌的方法应用于临床诊断。
沈兰荪等[10]发现目前较常用地单一纹理特征或者单一颜色特征对判断老嫩舌的识别率比较低。因此他们采用基于k近邻分类器的AdaBoost融合方法将颜色与纹理特征组合成为一个特征矢量,在此基础上设计多个分类器,不同分类器间存在的互补性,充分利用其互补性来提高舌体老嫩的识别率。研究表明基于k近邻分类器的AdaBoost融合方法对舌体颜色和纹理的融合特征的识别比单一特征识别老嫩舌效果好,其识别结果基本可以满足日常判断老嫩舌的要求。但此方法并未与传统肉眼识别方法进行比较验证,难以得到准确的识别率。可进一步进行对比实验,有助于更客观地衡量此方法的识别率。
刘春雨等[11]在结合老嫩舌图像纹理特征的基础上运用灰度共生矩阵法对老嫩舌进行客观化分类。该实验计算了4个不同方向角度(分别为0°、45°、90°、135°)的灰度共生矩阵及其综合灰度共生矩阵,并将计算结果中的5个特征参数(包括相应能量、对比度、灰度共生矩阵、非零点个数等)组成特征向量,再采用线性分类器进行分类实验,实验得出当灰度矩阵距离为5像素,角度为0°时,老嫩舌的分类精度最高。该结果为后续研究提供了最高精度的舌图像素和角度,也提供了另一种研究思路。以上研究表明在计算机识别舌质老嫩的过程中采用多种参数以及多种分类器结合的效果常比单一参数更佳,其中许家佗的灰度差分法识别的效果具有较高的识别率,在运用于临床后可再进一步研究。刘春雨的实验后续研究可以考虑在此灰度矩阵的基础上进一步细分角度、提取更多结果中的特征参数组成向量计算,以期得到更精确的角度与像素。
1.2 胖瘦舌
胖大舌舌色多淡白,舌体胖嫩,较正常舌大且厚,严重者甚至舌体肿胀,充满口腔,胖大舌多由脾肾阳虚导致的气化失常、水湿内停引起。瘦舌的舌体较正常舌瘦薄,又称“瘦薄舌”,多见于气血两虚和阴血不足人群[12]。
中医识别胖瘦舌以正常舌为参照,通过与正常舌比较判断胖瘦。但正常舌的标准难以确定,由于人群年龄、性别、区域的差异,没有完全意义上的健康人的正常舌,因此准确区分胖瘦舌与正常舌较为困难。研究者们也致力于找出客观的算法来判别胖瘦舌。许家佗等[13]采用CCD图像采集设备MVC1000在舌体正、侧面同步进行立体图像采集,再利用计算机测算舌图中舌体长度(L)、宽度(K)、厚度(H),将以上3种参数与舌体表面积(Mt)建立5种不同比值关系的的舌体系数计算方法,用以上5种不同计算方法分析了临床500例舌图像,得到不同舌体系数数据的离散度,最终构建了单位体表面积(Mt)、舌宽度(K)、厚度(H)的最佳舌体系数计算方法。应用该方法对已识别为胖舌212例、瘦舌35例的图像进行比较分析,结果表明s=(K+H)/Mt的舌体系数计算方法对判断胖、瘦舌具有较好的效果,与临床医生视觉分类胖、瘦舌的符合率分别为胖舌93.40%、瘦舌88.57%。该舌体系数计算方法识别实验目前纳入了3种客观的舌图参数与舌体表面积进行计算,后期若能得测算出更多参数,可得到更多种不同的舌体系数计算方法,还具有很大的研究空间。
温坤哲等[14-15]提出基于深度卷积神经网络的舌体胖瘦精细分类方法,通过该方法可依据舌体形状特征将舌分为舌体正常、舌体胖大、舌体瘦小、舌体胖大有齿印等4类特征。但仅仅基于该单一方法分类舌体图片准确度较低,于是在此基础上提出了一种新的模块K Block,基于K Block模块搭建一种深度卷积神经网络模型,该模型可将舌图分为舌体正常、舌体胖大、舌体胖大有齿印、舌体瘦小等更多特征,实现进一步的舌体胖瘦精细分类。通过与临床医生视觉识别对比发现该模型的精细分类的准确率为32.45%,优于AlexNet等经典模型的分类,实验证明该模型相比同类经典的舌体胖瘦精细分类模型具有一定的先进性,达到了更高程度的精细分类,但准确率依然偏低,无法进一步用于临床实践,有待于进一步研究。
沈兰荪等[16]利用计算机图像技术在舌体分割方法的基础上提取舌体轮廓,基于舌体轮廓特征分析曲线拟合参数与曲线形状胖瘦两者的关系,测算舌体的长度、宽度后得到了长宽比,用此方法进行舌体胖瘦的自动定量分析。后随机选取了261幅实拍舌图像,采用此方法自动分析舌图像后得到其中209幅图像的分析结果与目视识别的观察结果符合较好,随机图像识别的符合率大于80%,证明此方法可以较好地反映舌体的胖瘦程度。
1.3 点刺舌
点舌是由于舌蕈状乳头充血水肿而引起形状增大,数目增多;刺舌同样是舌蕈状乳头增大、高突,并形成尖锋,形如芒刺[17]。
周勇等[18]进行了点刺舌与非点刺舌的计算机定量研究,从收集的舌图像照片中,选出43例不具备点刺特征的舌图像照片与40例点刺舌一起进行计算机定量化处理。结果显示,点刺舌与非点刺舌计算机定量值各有其分布范围。经t检验,点刺舌与非点刺舌定量值有显著性差异,说明计算机定量的方法可以用于判断点刺舌。
张楠等[19]根据点刺主要分布在舌尖和舌中的特点,对舌图像进行分割,再将舌尖和舌中图像由原有的RGB颜色空间转换为HSI颜色空间,在S分量和I分量上进行对比度拉伸来平滑图像,最后对舌尖和舌中图像进行阈值分割从而提取出舌点刺图像,此方法可以更加清晰、有效地识别点刺舌。同时可以用于后续计算机研究点刺舌的图像预处理,有利于清晰地显示舌图的点刺特征。目前有关于点刺舌的计算机识别研究较少,有待于进一步研究。
1.4 裂纹舌
“裂纹舌”一词最早出现于典籍《敖氏伤寒金镜录》,指舌面上出现各种形状不同、深浅不一、数量不等的裂纹、裂沟,且裂沟中一般无舌苔覆盖,裂纹舌可反映机体阴血损耗的程度,其主病一般为阴液亏虚、热病伤阴或水湿浸渍等[20-21]。
陈小芬等[22]提出一种自适应阈值选择方法用于检测舌图像裂纹。该方法利用舌图像具有的L×a×b色彩特征,再结合L分量两个特征和舌灰度图像进行分析,同时对舌图像区域进行分裂-合并,将舌图像区域分割后选取舌中部区域的色彩值作为阈值,参照阈值对整个舌图像进行裂纹提取。分析裂纹提取结果特征后,发现可以用可见指数来描述裂纹的数量,用深浅指数来描述裂纹的深浅。再将两个指数进行数值量化,对裂纹舌进行计算机客观描述。实验发现两个指数能够精确地量化裂纹舌,但此实验缺乏与视觉识别的对比实验,无可供参考的识别率数据。
杨朝辉[23]先前提出基于3阶单位矩阵代数特征的彩色裂纹舌图像颜色变换算法,该方法通过增强舌裂纹颜色与舌周围组织的颜色对比度来识别舌图像裂纹,并发现此方法可以辅助临床医生对裂纹舌进行诊断。然而临床上常遇到健康人因先天因素出现生理性裂纹舌,为进一步区分先天性裂纹与病理性裂纹,杨朝辉在原方法基础上提出一种新的算法,首先运用分形几何学技术的舌裂纹区域形状提取算法,提取出舌裂纹区域的形状特征;第二步使用舌图像在RGB颜色空间上3个分量,通过将3个分量与位于舌裂纹区域内数据的均值和标准差串接,再用串接生成的向量表示舌裂纹颜色-纹理特征;第三步将上一步生成的形状特征与颜色-纹理向量融合成舌裂纹特征,最后使用线性支持向量机分类器结合第三步得到的舌裂纹融合特征进行分类诊断,用以区分生理裂纹舌图像和病理裂纹舌图像的。结果表明该方法分类诊断生理裂纹舌和病理裂纹舌图像对区分两种裂纹舌的灵敏度都超过90%。该方法灵敏度较高,有助于辅助临床诊断生理裂纹舌和病理裂纹舌,可在临床前期筛选出病理性裂纹舌进行下一步诊断,有利于提高诊断效率。但因无法对裂纹舌的严重程度进行量化,存在一定局限性。
1.5 齿痕舌
齿痕舌[24]是指舌体边缘见牙齿的痕迹,又名齿印舌,多因舌体胖大受齿缘压迫所致,齿痕舌与阳虚人群密切相关。
芮迎迎等[25]提出一种基于Mask Scoring R-CNN和迁移学习的舌图像特征识别方法,首先使用CNN提取舌图像特征,再使用ResNet-101和特征金字塔网络(FPN)的主干网络,从低层次和高层次的网络中提取特征,根据不同比例绘制金字塔特征的级别,接着使用区域生成网络将从主干网络中提取的特征生成候选感兴趣区域(ROI),最后为每个ROI检测并分割齿痕。该方法能够在小样本舌图像数据集上有效识别齿痕特征、准确定位齿痕位置、标定齿痕大小、提取齿痕个数。朱穆朗玛等[26]通过道格拉斯-普克法提取舌图像深度曲线后得到形态曲线,曲线的波峰顶点可对应相应的齿痕个数,且波峰对应的边缘深度可形象表示对应齿痕的深度,对齿痕个数和深度进行数值量化后,可以通过以上两个方面的数值对齿痕舌严重程度进行计算机客观描述。实验采用该方法提取55例已诊断为齿痕舌的舌图中齿痕个数特征,其中44例的个数特征符合临床医生视觉观察特征,准确率达80%,说明该实验对于采用图像分析技术客观地提取分析齿痕舌、制定描述齿痕舌严重程度的量化标准两个方面有一定的意义,但由于验证该实验算法时提取舌图样本例数太少,得到的80%的准确率不够具有说服力。
2 基于舌形客观信息的临床研究
2.1 高血压
点刺舌在中医上认为是人体邪热胜,冲刺舌络引起,一般舌生点刺越多反应邪热越盛,点刺舌主脏腑热极和血分热盛证,常认为与肝火旺盛密切相关。中医认为长期恼怒忧思导致肝气郁滞,肝气郁滞日久可化为肝火,五志过极皆能化火,日久又能转为肝风,这一现象与现代医学认为的长期精神压力导致高血压一致[27]。龚一萍等[28]采用尼康5000数码相机提取304例高血压患者舌图像,用计算机定量分析舌图像特征后构建舌形数据库。数据库中的94例高血压病中不同舌形的分布情况为:裂纹舌40%、胖舌21%、齿痕舌15%、点刺舌9%、嫩舌12%、老舌3%,以上实验数据表明,高血压病患者存在裂纹舌的可能性较大,提示临床上裂纹舌与高血压病有关。陈聪等[29]运用TF-Ⅰ型中医舌面诊断一体仪采集87例高血压病患者的舌诊图像,以舌图像有无裂纹将高血压患者分为裂纹舌组与非裂纹舌组,依照常用的两种色彩空间模型RGB模型、HSV模型对两组的颜色参数进行比较分析。结果为裂纹舌组中:舌图像参数的饱和度S值较大,红、绿、蓝(R、G、B)颜色分量值小。两组相比较发现裂纹舌组图像舌中、舌根部位的舌苔R、G、B值均显著小于非裂纹舌组。两组的色彩差异提示高血压病患者裂纹舌的出现伴随有舌图像特征参数的变化,这些客观参数可作为临床诊断的重要依据。
2.2 冠心病
骆金文[30]发现舌体的老嫩可反映冠心病患者病情虚实的变化;舌体胖瘦、是否有裂纹能够反映冠心病患者气血津液的盈亏;舌形苍老,舌面有点刺,多提示冠心病痰瘀日久,郁而化热,热毒充斥血分;舌体胖大而滑嫩,舌色淡白,多与冠心病患者命门火衰、水湿阴寒邪气蓄积有关,为阳虚寒凝之证。焦启超[31]将150例冠心病患者舌图像和100例非冠心病患者进行比较,发现舌体胖大、边有齿痕者各占67%和24%,可见舌体胖大、边有齿痕是冠心病患者常见的舌形。王建华等[32]在对102例痰瘀互结型冠心病患者进行舌形频数调查中发现:齿痕舌占31.43%,胖大舌占25.71%,舌形老占10.48%。以上实验表明临床上齿痕舌、胖舌、老舌、嫩舌等舌形与冠心病关系密切,可以作为临床诊断冠心病的依据。
2.3 糖尿病
现代临床发现,裂纹舌可辅助各系统疾病尤其是糖尿病的早期诊断。近年来,一些研究者探讨了舌形客观信息在糖尿病发展过程中的变化。兰琴等[33]曾对136例糖尿病前期患者舌图像图进行分析,发现其与血糖的升高降低及糖尿病发病情况存在着一定的相关性。我们课题组使用Smart TCM-I型中医生命信息分析系统采集分别400例2型糖尿病患者以及45例健康人的舌图像,并分为气虚证、阴虚证、气阴两虚证、阴阳两虚证、健康对照组5个组,提取并分析了5个组患者的舌形特征参数,发现糖尿病各证候组裂纹参数显著高于健康对照组,并且裂纹参数与空腹血糖指标具有相关性,表明不同中医证候的2型糖尿病舌图像参数具有一定的特征,可以反映空腹血糖的变化,可能为临床提供无创性辅助诊断依据[34-35]。
2.4 肿瘤
研究发现肿瘤患者的舌图像多具有为舌色暗、有瘀斑、有齿痕等特点,中医上肿瘤的病机为痰凝血瘀与舌图像特点符合,可以认为两者有密切关联[36]。董竞方等[37]采集442例肿瘤患者舌图像,输入计算机后采用labelImg软件进行齿痕舌特征标注,再通过卷积神经网络算法中的ResNet50构建齿痕舌自动识别模型,绘制ROC曲线后使用多种指标:灵敏度、特异度、精确度、正确率、F1值等来评价模型的识别能力。实验得出CNN-ResNet50模型的指标识别百分比由高到低分别为ROC曲线下面积AUC 96.00%,灵敏度93.02%,F1值91.88%,精确度90.76%,正确率90.15%,特异度84.19%,以上实验数据说明该模型能较准确地找出肿瘤患者舌图中齿痕具体位置,提供了一种较好的自动识别齿痕参数的模型。且进一步提示齿痕参数常见于肿瘤患者,两者密切相关,可作为辅助诊断肿瘤的依据。
3 问题与展望
近20年,随着计算机和图像技术的快速发展,研究者们利用计算机图像技术获得了各种舌形参数,并利用这些客观参数与传统诊断方法进行对比实验,以期获得更加客观、便捷的方式辅助临床诊断。越来越多的实验数据证明了舌形的变化可以提示不同的疾病发生发展,是临床辅助诊断多种慢性疾病的重要依据,中医舌形的客观化及其临床研究取得了长足的进步。但目前尚存在如下问题:一是关于点刺舌的舌形特征算法研究还不足,计算机图像提取点刺特征的准确度较低,且缺少对不同程度点刺舌比较分析的客观化方法。二是舌形客观化的临床研究多集中在高血压、冠心病、糖尿病以及肿瘤等疾病,研究尚不够广泛需进一步扩大临床常见疾病及亚健康舌形客观特征的研究范围。并且,关于中医同病异证、异病同证的舌形客观化研究也较少有研究者涉及。中医舌形客观化研究已取得了初步的成绩,但是该研究领域还有很广阔的空间亟待我们深入挖掘和探讨。只有充分结合先进的科学技术,才能将中医舌诊的科学内涵丰富展现。