首页> 中国专利> 基于脸色识别技术判断健康状况的方法

基于脸色识别技术判断健康状况的方法

摘要

本发明涉及图片识别领域,具体是基于脸色识别技术判断健康状况的方法,包括如下步骤:步骤一、对目标图片进行颜色矫正;步骤二、将颜色矫正后的目标图片进行人脸截取;步骤三、对亚健康状态进行识别;本方法操作简单,仅需将自拍照放入系统即可得出结果,方便快捷。

著录项

  • 公开/公告号CN112861788A

    专利类型发明专利

  • 公开/公告日2021-05-28

    原文格式PDF

  • 申请/专利权人 中电健康云科技有限公司;

    申请/专利号CN202110258856.9

  • 发明设计人 柳睿;代超;何帆;周振;

    申请日2021-03-10

  • 分类号G06K9/00(20060101);G06K9/34(20060101);G06K9/46(20060101);G06N3/04(20060101);G06N3/08(20060101);

  • 代理机构51230 成都弘毅天承知识产权代理有限公司;

  • 代理人孟仕杰

  • 地址 610000 四川省成都市双流区东升街道成都芯谷产业园集中区内

  • 入库时间 2023-06-19 11:08:20

说明书

技术领域

本发明涉及图片识别领域,具体是指基于脸色识别技术判断健康状况的方法。

背景技术

现在社会中,由于各种外界与内在因素,亚健康状态越发严重,患病人数也日渐增大,亚健康是指人体处于健康和疾病之间的一种状态,处于亚健康状态者,不能达到健康的标准,表现为一定时间内的活力降低、功能和适应能力减退的症状,但不符合现代医学有关疾病的临床或亚临床诊断标准,因此,如何快速判断一个人是否为亚健康的研究成为了社会急需解决的一个问题。

发明内容

基于以上问题,本发明提供了基于脸色识别技术判断健康状况的方法,本方法操作简单,仅需将自拍照放入系统即可得出结果,方便快捷。

为解决以上技术问题,本发明采用的技术方案如下:

基于脸色识别技术判断健康状况的方法,包括如下步骤:

步骤一、对目标图片进行颜色矫正;

步骤二、将颜色矫正后的目标图片进行人脸截取;

步骤三、对亚健康状态进行识别。

进一步,还包括:

S11、利用10000张人脸自拍图片、标准色卡色块值训练第一神经网络,得到颜色矫正模型,将目标图片输入颜色矫正模型进行颜色矫正;

S12、将颜色矫正后的人脸自拍图片用图像标注工具标记出人脸的位置,训练第二神经网络,得到人脸截取模型,将目标图片输入人脸截取模型进行人脸截取;

S13、将颜色矫正后的人脸自拍图片中的人脸截取出来,嵌进统一背景的图片中,用该新生成的图片训练第三神经网络,得到亚健康判断模型,将从目标图片截取的人脸图片输入亚健康判断模型,判断目标图片的亚健康状态。

进一步,所述第一神经网络具有4个隐藏层,每个隐藏层具有4个神经元,隐藏层用正切S型函数,输出层用线性转移函数。

进一步,所述第一神经网络的训练过程包括如下:

从人脸自拍图片上提取RGB值作为输入值,标准色卡色块值作为监督值,每张人脸自拍图片有R、G、B3个输入值,经过隐藏层,输出3个值,其中,数据处理包括python软件中的TensorFlow模块,所述TensorFlow模块包括IO模块、data.experimental.AUTOTUNE模块和cache模块;训练方式包括TensorFlow模块下的repeat模块、shuffle模块、batch模块和prefetch模块;优化器采用Adam优化器;终止条件为最大运行epoch为250次,如果损失函数在接下来20个epoch中没有减少,则终止训练。

进一步,所述第二神经网络的训练过程包括如下:

S21、将颜色矫正后的图片用图像标注工具标注出人脸与背景,生成json格式的文件;

S22、用python对标注好的文件进行数据预处理;

S23、选取xception-65作为人脸截取模型的主干网络,用于对输入图片的语义分割,加入编码与解码结构,采用双线性差值上采样,将图像特征通过卷积操作后进行预测;

S24、自定义损失函数并进行第二神经网络的训练,将batch_size设置成32,learning_rate设置为0.001,并设置随着梯度不断下降,learning_rate最多减少到0.0001,当循环50次Loss不再减小,则停止训练。

进一步,所述第三神经网络的训练过程包括如下:

S31、将颜色矫正后的人脸自拍图片中的人脸截取出来,嵌进统一的黑色背景的图片中;

S32、使用tf.io模块读取步骤S31处理后的图片,再使用TensorFlow中的image.decode_jpeg模块将该图片解码,使用image.resize函数归一化该图片;

S33、冻结第三神经网络除最后5层之外的所有层参数,仅训练第三神经网络的最后5层,同时在第三神经网络之后增加一个GlobalMaxPooling2D层与一个神经元个数为512个的全连接层,激活函数为relu,在第三神经网络的最后一层再添加一个激活函数为sigmoid的全连接层;

S34、将batch_size设置成32,learning_rate设置为0.001,并设置随着梯度不断下降,learning_rate最多减少到0.0001,当循环50次Loss不再减小,则停止训练。

与现有技术相比,本发明的有益效果是:操作简单,仅需将自拍的图片放入系统中,最终得出结果,判断是否亚健康,简单方便、速度快、准确率高。

附图说明

图1为本实施例的流程图;

图2为本实施例中经颜色矫正的对比图;

图3为本实施例中人脸截取后的效果图。

具体实施方式

下面结合附图对本发明作进一步的说明。本发明的实施方式包括但不限于下列实施例。

本实施例中,主要包括三个模型分别为颜色矫正模型、人脸截取模型和亚健康判断模型,其中颜色矫正模型训练方法如下:

利用10000张人脸自拍图片、标准色卡色块值训练第一神经网络,得到颜色矫正模型,训练过程如下:

第一神经网络具有4个隐藏层,每个隐藏层具有4个神经元,隐藏层用正切S型函数tan-sigmoid,输出层用线性转移函数purelin,由于标准色卡色块值上有24个色块,即第一神经网络的输入总数是24,从人脸自拍图片上提取RGB值作为输入值,标准色卡色块值作为监督值,每张人脸自拍图片有R、G、B3个输入值,经过隐藏层,输出3个值,由于输入样本较少,为了防止过拟合,因此选择的第一神经网络只有4层,每个隐藏层具有4个神经元;

本实施例中,数据处理包括python软件中的TensorFlow模块,其中,使用TensorFlow模块中的IO模块将数据读入,代入第一神经网络,设置batch_size(每批处理的数量,数量太大会使显存内存过载),另外,运用TensorFlow中的data.experimental.AUTOTUNE模块,根据可用的CPU动态设置并行调用的数量,提升运算效率,同时使用TensorFlow中cache模块,将数据存入内存,提升读入效率;

本实施例中,训练方式使用批处理方式,运用TensorFlow模块下的repeat模块、shuffle模块、batch模块和prefetch模块,其中,repeat模块能重复利用输入数据,变向增加样本量,shuffle模块能起到将数据打乱的效果,防止过拟合,batch模块为每一批次输入的数据,prefetch模块表示使用GPU的同时,用内存读取数据,提高运行效率;

本实施例中,优化器采用Adam优化器,使用该优化器能在开始的时候为学习率设置一个较大的值,然后根据次数的增多,动态减小学习率,以实现效率与效果兼得,初始Learning_rate设置为0.001;

本实施例中,终止条件为最大运行epoch为250次,如果损失函数在接下来20个epoch中没有减少,则终止训练,使用此终止条件,既能最大程度的去探索损失函数的最小值,又能防止损失函数在最小值周围徘徊,浪费时间,影响效率。

另外,将颜色矫正后的人脸自拍图片用图像标注工具标记出人脸的位置,训练第二神经网络,训练过程如下:

S21、将颜色矫正后的人脸自拍图片用图像标注工具labelme标注出人脸与背景,生成json格式的文件;

S22、用python对标注好的文件进行数据预处理,主要是将数据整理成可以输入进人脸截取模型的计算格式;

S23、选取xception-65作为人脸截取模型的主干网络,用于对输入图片的语义分割,加入编码与解码结构,采用双线性差值上采样,将图像特征通过卷积操作后进行预测,相比于传统使用unet方式分割,本实施例中的人脸截取模型无论在效率还是效果上,都有明显提升;

S24、自定义损失函数并进行第二神经网络的训练,将batch_size设置成32,learning_rate设置为0.001,并设置随着梯度不断下降,learning_rate最多减少到0.0001,当循环50次Loss不再减小,则停止训练。

另外,将颜色矫正后的人脸自拍图片中的人脸截取出来,嵌进统一背景的图片中,用该新生成的图片训练第三神经网络,训练过程如下:

S31、将颜色矫正后的人脸自拍图片中的人脸截取出来,嵌进统一的黑色背景的图片中,一面背景颜色不同影响对脸色的判断;

S32、使用tf.io模块读取步骤S31处理后的图片,再使用TensorFlow中的image.decode_jpeg模块将该图片解码,使用image.resize函数归一化该图片,使其能代入之后的网络结构中;

S33、冻结第三神经网络除最后5层之外的所有层参数,使其能最大化保证第三神经网络的原始效果,仅训练第三神经网络的最后5层,同时在第三神经网络之后增加一个GlobalMaxPooling2D层与一个神经元个数为512个的全连接层,激活函数为relu,GlobalMaxPooling2D层的作用可以将输出数据扁平化,并且比传统的Flatten层更加高效,全连接层的作用是增加第三神经网络复杂度,保证识别效果,在第三神经网络的最后一层再添加一个激活函数为sigmoid的全连接层,以达到分类的目的;

S34、将batch_size设置成32,learning_rate设置为0.001,并设置随着梯度不断下降,learning_rate最多减少到0.0001,当循环50次Loss不再减小,则停止训练。

基于以上得到颜色矫正模型、人脸截取模型和亚健康判断模型后,即可进行亚健康判断,如图1所示,具体如下:

步骤一、将如图2所示左边的目标图片输入颜色矫正模型进行颜色矫正,得到如图2右边所示的经过颜色矫正后的照片;

步骤二、将颜色矫正后的目标图片输入人脸截取模型进行人脸截取,得到如图3所示的人脸黑背景照片;

步骤三、亚健康判断模型对亚健康状态进行识别。

如上即为本发明的实施例。上述实施例以及实施例中的具体参数仅是为了清楚表述发明人的发明验证过程,并非用以限制本发明的专利保护范围,本发明的专利保护范围仍然以其权利要求书为准,凡是运用本发明的说明书及附图内容所作的等同结构变化,同理均应包含在本发明的保护范围内。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号