APP下载

智能中医舌脉诊断手环

2022-07-23毛晓波路宜宁

电子设计工程 2022年14期
关键词:脉象决策树手环

沈 睿,毛晓波,周 熙,路宜宁

(郑州大学电气工程学院,河南郑州 450001)

脉象诊断和舌象诊断是中医极具价值的临床诊断方法,但是传统中医诊断主要依靠医生的肉眼和经验,难以量化描述和精确诊断。目前舌脉诊客观化已有一些研究成果。脉象方面,大量中医学者的研究表明,不同疾病病症在脉图参数方面有显著的相关性[1],使脉图能够有效运用于中医诊断。通过时域方法可以直观提取脉图参数,但脉象的识别准确率较低。舌象方面,也有中医学者验证了某些病症与色彩空间的值具有相关性[2-5],但针对舌象色彩空间参数进行舌象判别鲜有研究。

市场上已经研制出多种脉诊仪和舌诊仪,但体积庞大,操作复杂,很难推广给大众。中医辨证体系要求四诊合诊才能全面了解病情[6],而市场上的舌诊仪、脉诊仪往往是分开的,只能局限性地展示疾病状况。

该文以构建小型化舌诊脉诊仪为目的,设计一款智能中医舌脉诊断手环,建立舌脉象的判别模型,提高判别准确率,对推动中医舌诊客观化、规范化提供一种模型方法。

1 总体结构与实施方案

该智能舌脉诊断手环包括采集单元和诊断单元,系统总体结构图如图1 所示。采集单元即为智能手环,内置脉搏传感器、舌象拍摄模块和通信模块。诊断单元为上位机,进行脉象和舌象的处理分析。

图1 系统总体结构图

具体实施方案流程图如图2 所示,脉象处理方面:先用脉搏传感器模块采集脉象,使用光电容积法对浅部微动脉进行信息提取分析;利用通信模块传输到上位机保存脉搏数据,同时绘制能显示出脉搏的波形;再进行判别模型判断,对脉象的分析利用随机森林bagging 决策树算法,得出模型后回代评估模型,最终得到脉象分析结果。舌象处理方面:先用舌象拍照模块拍照,利用通信模块传输到上位机;之后进行识别定位,应用卷积神经网络中的YOLOv3 算法检测出人脸和舌头的位置,定位位置后标记,提取出坐标。然后是舌象色素提取:定位后再对舌象重要部分进行剪切,得到舌头数据图片,对其进行像素点分析,提取RGB 数据后转化为Lab 数据;最后判别模型进行判断,对Lab 数据等舌象信息进行Fisher 线性判别,构造二次模型并将样本代入到模型中,计算其混淆矩阵和判对率,得到舌象判别结果。其中舌象采用Fisher 二次模型,苔色采用一次模型。

图2 实施方案流程图

2 系统设计

2.1 脉象设计技术关键

2.1.1 光电容积法

使用光电容积法利用560 nm 波长左右的光对浅部微动脉进行信息提取分析,其原理流程如图3所示。在目前的智能穿戴设备上,应用最多的就是PPG 光电容积法[7],其基本原理如下:人体的皮肤等对于光的反射是固定值,而毛细血管和动脉、静脉对光的反射值是波动值,随着脉搏容积不断变化,这个波动值正好与心率一致,所以通过这个波动值就可以确定使用者的心率数据。

图3 光电容积法原理示意图

2.1.2 随机森林bagging

从生物力学的角度考虑,脉象形成是桡动脉在心脏、血液、血管相互作用下的一种运动,通过研究参与这一运动的作用力,可以阐明脉象形成的机理。当患有某种疾病时,会引起某些生理参数的变化,从而改变了与此参数有关的作用力,影响了桡动脉的正常运动,出现病脉。所以一切脉象的形成都可以归结到参数的变化[8-9]。因此,建立模型进行参数分析,以得到脉象的客观指标,就可以判别脉象。

建立模型前要测得不同脉象的有关参数,以确定出各相应的相似准数的正常范围及阳性指标。这样便可以定量区别各种不同的脉象并探讨其机理。考虑到与脉形信息相关的参数较多,若将其全部引入会造成模型计算困难以及变量信息重叠度高进而导致模型不显著等,所以剔除与脉形信息关系不大的参数会提高模型精度:首先对所有自变量逐个建立判别模型,由于有些脉形样本数较少故采用Fisher线性判别分析,以各模型判对率的上四分位点为阈值,选取对脉象信息有较大相关性的自变量引入模型。图4 是随机森林引入变量数目的选择,当纵轴表示的错误情况达到最低时为最佳选择,所以选择引入4 个变量。

图4 随机森林引入变量数目的选择

随机森林就是以集成学习的思想将多棵决策树集成的一种算法,它的基本单元是决策树,每棵决策树作为一个分类器,则对于一个输入的样本集成了所有分类投票的结果,N棵树就会有N个分类结果,而随机森林根据投票制指定最多的类别为最终输出,随机森林bagging的思想是指将若干个弱分类器组成一个强分类器。随机森林算法实质是基于决策树的分类器集成算法,其中每棵树都依赖于一个随机向量。随机森林会随机地来生成多个分类树,最终将分类树结果进行汇总。所以不仅要确定引入的变量,还要确定随机森林所包含决策树的数目。图5 给出了指定随机森林所包含决策树数目的决策,决策树数目为500 时,模型内误差基本稳定,故取数目为500。

图5 随机森林模型的建立

针对脉象参数众多的特点,随机森林与神经网络等其他算法相比,降低了运算量,提高了预测精度,而且该算法对多元共线性不敏感以及对缺失数据和非平衡数据都比较稳健,所以适合于脉象数据集。在bagging 方法里,从数据里抽取出自举样本,由每个样本建立一个决策树模型,最终的模型是所有单个决策树结果的一个平均。bagging 决策树算法以降低方差得到稳定的最终模型,这种方法提高了精度,最终得到判别准确率为91.07%,并且不容易过拟合。在得出模型后进行交叉验证来评估模型的准确率。

2.2 舌象设计技术关键

2.2.1 YOLOv3算法

传统的舌象及面象提取多用专业仪器,需要有专业人员操作,在固定摄像头、固定位置下进行图像采样以确保准确性。而该产品为使得用户能够自主简便操作,真正地实现全自动化健康检测,采用了基于Darknet-53 网络结构的YOLOv3 算法,通过卷积神经网络对用户拍摄的面部位置和舌头位置不确定的图片进行自动识别并定位,高效准确地确定坐标以供后续分析处理。

Yolov3 与R-CNN、Fast R-CNN、SSD 相比,识别速度上有明显的优势,能够迅速得到识别结果,以供后续分析处理。YOLOv3 在实现相同准确度下要显著地比其他检测方法快。时间都是在采用M40 或Titan X 等相同GPU 下测量的。

数据集采用VOC 数据集,其中图片采集于郑州大学第五附属医院及网络数据库。使用Python 标注程序进行标注,并使用缩放比例、裁剪、移位等方式来进行数据增强,扩充数据集,提高各种情况下识别的准确率。并确保数据集的测试集和训练集具有有效的区分性以保证训练精度。

YOLOv3 输出了3 个不同尺度的feature map,采用了predictions across scales 改进方法,多尺度地来对不同size 的目标进行检测,以确保对于不同比例尺图像中人脸和舌头检测的精准性。在对b-box 进行预测时,采用了logistic regression,即网络每次对b-box 进行预测时,都输出一组(tx,ty,tω,th,t0),最后通过式(1)计算出最优的bx、by、bω、bh和置信度。

logistic 回归用于对anchor 包围的部分进行一个目标性评分(objectness score),即这块位置是目标的可能性有多大。因为用户使用时,一张照片只有一个舌象位置和面部位置,故选择输出目标可能性得分最高的目标框作为实际识别坐标。

经对测试集检验,准确率达到了95.8%(207/216),其中目标在图片中的绝对位置偏移量与其所占数量百分比坐标图如图6,在确保后续处理检验准确性的前提下选取容忍范围为5 mm。

图6 YOLOv3算法目标绝对位置偏移量与其所占数量百分比坐标图

故文中采用的YOLOv3 算法能够有效地达到在定位不明确的图片中准确快速定位舌象和面象位置并提取坐标,以供后续分析处理的功能。

2.2.2 提取LAB数据

舌诊是中医诊断学的重要方法,通过辨别舌色,可诊断病症。舌色需要借助颜色空间进行提取和分析,目前在计算机视觉领域存在着较多类型的颜色空间。LAB 模型色域宽阔,对颜色的描述更接近中医舌色诊断的实际过程,所以对舌色特征的分析均是基于该色彩模型进行的。

RGB无法直接转换成LAB[10-11],需要径过RGB——XYZ——LAB,也就是先转换成XYZ 再转换成LAB,因此转换公式如下:

2.2.3 Fisher线性判别

对舌象色彩空间参数进行Fisher 线性判别,因为自变量属于三维空间,故可做出三维散点图用于初步判断不同类别的大致分布状态(以不同颜色区分),为了更加清晰地观测分布,采用交互绘图方式,发现类间基本线性可分,故采用线性判别分析。

舌象三维散点图如图7 所示,不同颜色代表数据点所属类别不同。

图7 舌象三维散点图

Fisher 判别即给定训练样本集,设法将训练样本投影到一条直线上,使每一类之内的投影值所形成的类内距离尽可能小,而不同类之间间距离差尽可能大。建模后进行交叉验证,计算其混淆矩阵和判对率。若发现效果不明显,则可以考虑增加一个纬度,即投影到二维空间并重新建模和检验。最终可知,在苔判别中,线性模型的分类效果优于二次模型的分类效果,而在舌的判别中,二次模型的分类效果优于线性模型的分类效果。

3 实验结果

用户戴上智能舌脉诊手环,找到脉搏最为明显的取脉点,将手环上的光电反射式传感器对准采样点,可将采集到的模拟信号利用通信模块传输给上位机[12-16],此外还可以在电脑上绘制出脉搏波形。手环自动将数据导入,分析得到脉象诊断报告;其次打开舌象拍摄模块,对面部伸舌进行拍摄,将图片导入上位机进行舌象分析;最后得到最终的中医舌诊脉诊检测结果。

4 结论

该文针对中医舌诊脉诊仪小型化、标准化、客观化的需求,设计了一款智能舌脉诊断手环,作为移动医疗可穿戴设备,该系统将脉搏传感器和摄像头都集成到手环,集成度高。人工智能自动识别舌像,改变传统定位识别的固定模式,便于用户使用,其具备便携、诊断方便快捷等优点。在算法上,建立舌脉象判别模型。针对脉象参数过多可能存在信息重叠进而产生多重贡献的情况,采用随机森林方法,结果表明,与一般脉象分析方法相比,其对于多重贡献更加不敏感,使模型较稳健,提高了判别精度。为了更直观地描述舌色分布情况及各舌色之间的差异性,选取Lab 模型得到舌象参数,利用Fisher 线性判别建立了舌象与色彩空间参数的模型关系。以上为进一步研究中医舌脉诊智能化标准化提供了新的思路。但由于数据量有限,该模型只能在特定情况下具有较高的判别概率,对比较稀少的脉象和舌象不能进行判别,因此扩大数据库容量,获取更多信息纳入训练集是未来的改进方向。

猜你喜欢

脉象决策树手环
简述一种基于C4.5的随机决策树集成分类算法设计
小米手环4
疯狂编辑部之智能手环
决策树学习的剪枝方法
情绪对脉象的影响研究综述
麦当劳“开心乐园餐”健身手环下架
学习监测手环
脉象采集分析系统的设计
冠心病的脉象研究
决策树在施工项目管理中的应用