万 治,邹 逊,张家齐,李纹婷,韦月鲜
(桂林电子科技大学,广西 桂林 541004)
随着人工智能成为学术界的热门研究课题,将智能巧妙地融入生活变得更加重要。同时,人们对皮肤在医学检测和日常护理方面的关注日益提升。因此,我们启动了关于基于视觉和深度学习的智能化中医检测系统的研究项目,它是将图像识别和深度学习与传统中医相结合的系统,可以搭载在多种处理设备上,为用户提供实用的人脸健康检测和状态监测。
人们在使用智能系统的时候,可通过其检测自己的容貌,并自我判断精神状态和状态,还可以通过智能系统获取面部图像,如拍照或录取视频等,来实现一些便利性功能和应用[1]。
在实现本系统过程中,发现现有技术中至少存在如下问题。
在使用智能镜子的过程中,尽管用户能够对自我状态进行一个初步评估,但由于无法与之前自我状态进行比较,以及缺乏相应的健康知识,用户并不能较准确地获知自己的身体健康状态。因此,如何使用户在照镜子或采集面部图像的同时,能够较准确地获知自身健康状态,是需要解决的问题。
系统整体模块层次图,如图1所示。首先通过摄像头和部分传感器对数据进行采集,将采集到的人脸等数据传入人脸识别模块得到使用者的的相关历史数据,然后通过肤质检测模块、肤色检测模块和中医辩证模块对采集的数据进行分析得到本次健康检测的结果,然后将实时监测当前的精神状态,并与上述的健康检测结果一起进行实时显示[2]。
图1 系统模块层次图
我们首先使用人脸录入模块将用户的人脸图像进行采集与保存,然后自动为用户在云端创建新的用户账户,将采集到的相关数据进行保存。
接着设备会先对用户进行人脸识别从而对用户的身份进行确定,以实现对用户的健康跟踪,在人脸识别的过程中,使用的方法是基于不同图片的特征向量的比对的方法,该系统将本次需要检测的人脸的图片特征向量与云端保存和本地保存的图片的特征向量进行依次的比对,计算不同图片之间的二范数的大小作为两张图片之间的相似度,通过多次实验得到一个较为准确的相似度阈值作为人脸识别的判断条件。
3.2.1 肤质检测模块
皮肤痤疮可以在一定程度上反映一个人的当前健
康状况,其生成的原因包括局部细菌感染、营养不良、内分泌失调等。面部痤疮数量越多,则表示当前皮肤状况越差、相应的健康状况更需要进行关注;
肤质监测模块主要以人脸上的痤疮的数量以及痤疮的分布位置作为肤质状态的评判标准。
该模块采用yolov5进行检测脸部痤疮的数量并且定位,但是如果直接使用yolov5模型进行检测会因环境的干扰而导致检测结果不准确的情况,故我们在该模块中使用使用face_recognition.face_locateion对人脸进行定位,然后采取face_recognition.face_endings对获取图像文件中的面部进行编码,先以此来判断是否存在人脸以及对人脸的位置进行定位,然后将系统采集到的图像裁剪为只有人脸的图像,再使用yolov5进行检测,以提高检测的准确度[3]。
3.2.2 肤色检测模块
根据中医理论,可将各区域的肤色分为青、黄、白、赤、黑五种,并将每种再分为亮色和暗色两级,即形成了亮青、亮白、暗赤等十个等级,将每个等级可以做一个量化打分,例如从0~9。根据每个区域的分值,即可判定当前ROI区域所对应的器官的健康状况,例如是否存在湿热、血瘀等症候[4]。
在该系统中使用的是改进alexnet模型[5],首先将采集到的图像进行预处理[6],其过程具体为将用户的脸划分为不同的感兴趣区域(ROI)[7],主要通过模型对人脸的各个器官进行定位标记得到坐标,然后使用图片分割的方法来对各个确定的ROI区域进行分割,然后将ROI输入到alexnet模型中使用得到不同区域的人脸识别的颜色结果。该功能工作流程如图2所示。
图2 肤色检测模块
3.2.3 中医辩证模块
这种设计可以记录痤疮的数量和不同ROI区域的面貌,并结合用户长期积累的数据,利用基于中医思想的辩证思维算法做出分析。最后,获得身体不同部位的健康跟踪结果,并给出相应建议,并将所有这些结果显示在屏幕上,反馈给用户。
在中医辩证模块中主要使用的是层次分析法(AHP)作为该系统的主要分析方法。层次分析法具体过程如下。
(1)概述。具体过程概述如下,先订立全面评价一位用户的几条准则,如面色、脸部痤疮情况、用户历史数据等,并且确定各准则在给出中医合理化建议这个总目标中所占的权重,然后按照每一个准则对每位用户进行比较和判别,最后将准则的权重与比较、判别的结果加以综合,得到每个方案的最终排序,作为系统给出用户的建议。
(2)建立层次结构图。将该问题自上而下地分为目标、准则、方案3个层次,并用一个层次结构图表示。该功能工作流程如图3所示。
图3 层次分析图
(3)准则层对目标层的相对权重向量。
确定以上3个准则脸部痤疮情况X1、面色X2、用户历史数据X3对目标(基于中医学和保健建议)的权重时,需将X1、X2、X3两两进行比较,按表1尺度写出准则层对目标层的两两比较矩阵假设为
表1 各标度的含义
基于矩阵A使用特征根法求出A的最大特征根。求出最大特征根后,可求相应的特征向量,接着通过一致性检验判断此特征向量能不能作为准则层对目标层的比较矩阵,具体做法如下。
(1)一致性指标。
(2)随机一致性指标RI,通常由实际经验给定,如图4。
图4 RI的取值表
(3)随机一致性指标结果。
当CR〈0.1时,认为判定矩阵的一致性是可以接受的。
通过一致性检验后,将特征向量对应的特征值进行归一化,得到准则层对目标层的权重向量w1。假设w1=(0.141, 0.530,0.329),即可说明面色最重要。
(4)综合权重向量及排序结果。用两两比较矩阵得到第2层3个准则对第1层目标的权重w之后,用同样的方法确定第3层的多种症状对第二层每一准则的权重。同样计算出每一个矩阵Bi(i=1,2,3,…,n)的特征根并进行一致性检验,最终确定对第二层的权重向量w2。
最终将每一个矩阵Bi得到的权重向量的每一个指标与w1对应的相乘再求和,即可得到方案n对目标的权重。最后再通过用户的症状是否达到阈值来确定用户症状,从而选出最佳中医保健建议并反馈给用户。
当人在疲劳状态下,眼睛的形态会发生变化,会不自觉的发生“眯眼”的动作,从而使眼睛左右角点间距离变长、同时使眼睛上下眼睑间距变小,即眼长与眼宽的比值变大。通过对当前图像的分析,确定出人眼的长宽比,并且通过与预存的标准图像中(即正常状态下)的长宽比进行比较,来判断当前用户是否为疲劳状态。当这种长宽比的变化超过设定阈值时,即可认定当前用户处于疲劳状态,并及时地以声音、图像等警告方式通知用户[8]。若用户处于非疲劳状态,也可通过显示装置告知用户。
为了准确的对用户实时的眼睛长宽比进行疲劳状态与非疲劳状态两种状态的划分,可以进行多次图像采集,并结合多次检测结果的加权作为结果,计算用户单位时间的精神状态。
具体的方法是,通过对人脸的眼睛的位置的定位,将眼睛用多个点来进行定位,然后通过测定不同的点与点之间的距离关系对人眼的长宽比进行确定。
在此系统采用的对实时图像的多次采集中,当采集到的图像达到指定的数目时作为一次实时的眼眶比数据,然后通过实时的大量的不断的眼眶比数据计算得到单位时间的眼眶比数据,然后与正常的眼眶比数据区间进行比较来进行判断用户所处的精神状态。
本文提出了一种基于视觉和深度学习的中医智能检测系统,讨论了此种检测系统的在日常生活中应用的前景,将系统具体功能的实现做了细致的阐述,并巧妙的将中医思想中的望诊思想与计算机视觉和深度学习等新型技术有效的结合起来,且达到了预期的目标,如对输入信息的采集和处理、相关数据的交互、中医辨证算法的实现、不同设备上的数据输出与展示。
在未来的工作中,我们将继续扩大数据库,完善模型准确度,并不断优化中医辩证算法,与经验丰富的中医进行交流,使系统的功能更加完善和准确,更好地实现人性化和智能化,为人们的健康做出贡献。■