首页> 中国专利> 一种基于人脸面部肌肉运动特征的面部神经麻痹疾病检测方法

一种基于人脸面部肌肉运动特征的面部神经麻痹疾病检测方法

摘要

本发明公开了一种基于人脸面部肌肉运动特征的面部神经麻痹疾病检测方法,解决了面部神经麻痹疾病的检测诊断不能快速简易化的问题。该发明含有以下步骤:1、通过人脸检测算法获得相机视野中人脸的位置,采集图像数据,输出人脸图像;2、根据人脸图像重建3D模型;3、获取人脸3D模型上相关肌肉对应的网格点的坐标;4、对人脸图像进行角点检测,获得肌肉上的角点特征,并根据角点修正面部肌肉的运动特征;5、为人脸3Dmensh的网格点分配权重;6、根据面部肌肉运动特征和角点位置的变化特征获得面部肌肉的运动幅度。该技术可以方便快捷的部署在APP应用上,疑似患者通过APP来检测其是否患有面部神经麻痹疾病以及患病程度。

著录项

  • 公开/公告号CN112465773A

    专利类型发明专利

  • 公开/公告日2021-03-09

    原文格式PDF

  • 申请/专利权人 王坚;

    申请/专利号CN202011345221.4

  • 发明设计人 王坚;曹智梅;

    申请日2020-11-25

  • 分类号G06T7/00(20170101);G06T17/20(20060101);G06T7/73(20170101);G06K9/62(20060101);

  • 代理机构

  • 代理人

  • 地址 519015 广东省珠海市九洲大道中2097号珠海凌达压缩机有限公司1号厂房及办公楼

  • 入库时间 2023-06-19 10:08:35

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2022-02-01

    发明专利申请公布后的撤回 IPC(主分类):G06T 7/00 专利申请号:2020113452214 申请公布日:20210309

    发明专利申请公布后的撤回

说明书

技术领域

本发明涉及机器视觉图像处理技术领域,特别是涉及一种基于人脸面部肌肉运动特征的面部神经麻痹疾病检测方法。

背景技术

面部神经麻痹疾病是以面部表情肌群运动功能障碍为主要特征的一种疾病,它是一种常见病、多发病,不受年龄限制,症状表现为口眼歪斜等,严重的患者往往连最基本的抬眉、闭眼、鼓嘴等动作都无法完成。这种疾病发现的越早、治疗越早恢复的就越快,并且不会留下后遗症,但是疑似有面部神经麻痹疾病的患者需要到医院或诊所去检测诊断才能获知是否有这种疾病,这样麻烦费时费钱,目前还没有一种快速自动诊断面部神经麻痹疾病的系统和方法。

发明内容

本发明克服了现有技术中面部神经麻痹疾病的检测诊断不能快速简易化的问题,提供一种的基于人脸面部肌肉运动特征的面部神经麻痹疾病检测方法。

本发明的技术解决方案是,提供一种具有以下步骤的基于人脸面部肌肉运动特征的面部神经麻痹疾病检测方法:含有以下步骤:步骤1、通过人脸检测算法获得相机视野中人脸的位置,采集图像数据,输出人脸图像;步骤2、根据人脸图像重建3D模型;步骤3、获取人脸3D模型上相关肌肉对应的网格点的坐标;步骤4、对人脸图像进行角点检测,获得肌肉上的角点特征,并根据角点修正面部肌肉的运动特征;步骤5、为人脸3D mensh的网格点分配权重;步骤6、根据面部肌肉运动特征和角点位置的变化特征获得面部肌肉的运动幅度。

优选地,所述步骤1中利用手机的前置相机采集用户的图像数据。

优选地,所述步骤2中通过PRNet、VRNet或2DASL深度神经网络获得面部的3D模型,通过2DASL深度神经获得3DMM模型的参数,输出的参数作用在该3DMM模型上,使其变形为和图像中人脸一样的形状和纹理。

优选地,所述步骤3中从人脸3D mensh上选取分布在双目下方、鼻子两侧、两嘴角周围和颧骨周围的所有网格点,其分布在口轮匝肌、咬肌、提上唇肌和颊肌上,通过肌肉上的网格点的位置变化来计算肌肉的运动特征。

优选地,所述步骤4含有以下分步骤:

步骤4.1、将角点和3D mensh的网格点相结合实现优势互补,将角点的位置融入3Dmensh;

1)人脸3D mensh是和人脸图像上的人脸对齐后,获取角点的位置,将该位置反向投影回3D mensh上,获得角点在3D mensh上对应的三维坐标P;

2)获取坐标P周围最近的四个网格点的位置为,构建一个序列ΔP={||PP

3)构建四个权重系数α

4)对于网格点P

步骤4.2、对于第j个网格点,其在N帧图像上的位置序列为D

1)计算边缘的网格点的坐标的均值为

2)首先获得第j个网格点的在当前第i帧的最小运动幅度,方法如下:计算当前第i帧的第j个网格点D

3)同理获得当前第i帧第j个关键点的最大运动程度Lmax

4)则第j个网格点的运动幅度为M

5)M

优选地,所述步骤5含有以下分步骤:设有J个网格点,获得当前J个网格点的运动幅度M={M

其中,

优选地,所述步骤6含有以下分步骤:利用当获得每个网格点的权重后,通过对所有网格点的运动幅度的加权求和获得人脸面部肌肉的运动幅度,设利用网格点获得的脸面部肌肉的运动幅度为B1,则:

与现有技术相比,本发明基于人脸面部肌肉运动特征的面部神经麻痹疾病检测方法具有以下优点:利用摄像机,例如手机的前置相机,采集人脸图像,通过重建人脸的三维模型,获得面部肌肉的运动特征,根据肌肉运动特征分析用户的患病情况;克服用于重建的三维模型可能对某些肌肉的运动不敏感等问题,通过人脸的角点来引入修正参数,并获得较为精确的诊断结果。将角点的位置信息融入人脸3D mesh中,使得人脸3D mesh上的网格运动更为准确。利用3D mesh上的网格点的运动幅度和角点的数量、分布以及角点运动幅度获得人脸面部肌肉的运动幅度,使得获得的运动幅度更加可靠准确。运动幅度的大小能够量化患病病情况,对疾病的检测和后续的治疗具有重要作用,

本发明可以方便快捷的部署在APP应用上,疑似患者可以通过手机APP使检测是否患有面部神经麻痹疾病以及患病程度,并给出治疗意见。

附图说明

图1是本发明的总体流程示意图;

图2是本发明中网格点平均运动幅度权重映射曲线示意图。

具体实施方式

下面结合附图和具体实施方式对本发明基于人脸面部肌肉运动特征的面部神经麻痹疾病检测方法作进一步说明:如图(1)所示,本实施例的大致步骤为:

1)采集图像数据,通过人脸检测算法获得相机视野中人脸的位置,并输出人脸图像。

2)根据人脸图像进行人脸3D重建,获得人脸的3D模型。所述的人脸3D模型是一个3D的mesh,它有很多网格点和网格构成构成,每个网格点对应着人脸上的一个位置坐标,这些网格点和网格能够反映人脸的结构和五官与面部肌肉位置。

3)获取人脸3D模型上相关肌肉对应的网格点的坐标。所述的相关肌肉包括嘴部的口轮匝肌、提上唇肌、皱眉肌等,具体肌肉可由实施者确定,本发明只获取口轮匝肌、提上唇肌等网格点进行分析计算,因为这些肌肉更能体现面部的表情变化,也是面部运动的主要参与对象。

4)对人脸图像进行角点检测,获得肌肉上的角点特征,并根据角点修正面部肌肉的运动特征,使得面部肌肉特征更为准确。

5)为人脸3D mesh的网格点分配权重。

6)根据面部肌肉运动特征和角点位置的变化特征获得面部肌肉的运动幅度,面部肌肉的运动幅度反映了面部神经麻痹疾病的发病程度,所述的面部神经麻痹疾病的发病程度是指疾病患者对面部肌肉的控制程度,如果患者能够灵活控制面部肌肉的运动,那么面部肌肉的运动幅度大,说明患者面部神经麻痹疾病的发病程度低,否则高。所述的运动幅度是指运动物体在某段时间的运动范围。

详细技术内容如下:

1.利用相机采集人脸的正视图像数据,本发明利用手机的前置相机采集患者(用户)的图像数据,这样做方便快捷。

2.本发明利用人脸检测算法获得图像中的人脸边界框,根据人脸的边界框裁切出人脸图像。如果视野中包括多个人脸边界框,那么只选取边界框面积最大的人脸进行后续的分析计算。

3.利用人脸图像获得人脸的3D模型,即人脸的3D重建。人脸3D重建的方法和DNN网络有很多,例如PRNet、VRNet、2DASL等,本发明使用2DASL获得面部的3D模型,即面部的3Dmensh。

4.2DASL是一种公开的人脸三维重建方法,它输入的是人脸图像和一幅特殊的单通道图像,这个单通道图像在人脸关键点处的像素值为1,其余位置为-1。输出的是3DMM模型的参数,所述的3DMM模型是一个可变形的3D人脸mesh,输出的参数作用在该mesh上使得mesh变形为和图像中人脸一样的形状和纹理,从而达到人脸的3D重建。

5.众所周知,人脸的面部肌肉对应3D mensh上的多个网格点,本发明通过肌肉上的网格点的位置变化来计算肌肉的运动特征。

6.人脸面部的肌肉有很多,例如鼻肌、皱眉肌、口轮匝肌、咬肌等,其中口轮匝肌、咬肌、提上唇肌、颊肌是人脸做表情时常用的肌肉,也是运动幅度或运动特征较为明显的肌肉,本发明通过分析这些肌肉的运动特征来进行面部神经麻痹疾病的诊断计算。后续所述的肌肉均指这几块肌肉,实施者也可以根据所需来指定其他肌肉。

7.面部的肌肉虽然在解刨学上是可以区分出来的,但是在视觉上人们是无法准确的区分出面部的每块肌肉的,只能根据确定肌肉在人脸上的大致位置。基于此,本发明人为的从人脸3D mesh上实现选取一些网格点,这些网格点包括分布在双目下方、鼻子两侧、两嘴角周围、颧骨周围的所有网格点,这些点大致时分布在口轮匝肌、咬肌、提上唇肌、颊肌上,这些点的运动特征也能反映这些肌肉的运动特征。具体大网格点选取需要实施者根据实际情况来选取。

8.利用3D mesh虽然能够还原人脸的三维信息,但是仍存在一些问题,例如有些面部肌肉处的网格点稀疏或分布不均匀,导致某块肌肉的某个位置点没有网格点分布,而且这个位置可能又恰恰能反映肌肉的运动情况。再例如一些肌肉的运动幅度较小时,其上的网格点运动幅度也比较小,又因为获得的3D mesh的网格点存在一定程度的误差,导致网格点不能描述肌肉的轻微运动情况。

9.基于上述本发明提出利用面部角点的特征来修正上述问题,方法如下:

1)获得人脸图像数据,利用角点检测算法获得面部的角点,常用的角点检测算法有很多,例如获得的角点包括Harris角点检测算法、FAST角点检测算法等,本发明使用Harris角点检测算法,该算法获得角点的特征值和角点的位置信息。

2)本发明只关注所述的口轮匝肌、咬肌、提上唇肌、颊肌上的角点。正如前述,获得的人脸3D mesh的网格点和网格能够反映人脸的结构和五官与面部肌肉位置,因此可以人为的事先确定口轮匝肌、咬肌、提上唇肌、颊肌对应的网格,将这些网格投影到图像平面上,获得这些肌肉的语义区域,最后只保留语义区域内的角点。这些角点的位置变化能反映肌肉的运动,本发明后续所述的角点均指这些角点。

3)上述提到了将网格投影到图像平面上,进而获得这些肌肉(口轮匝肌、咬肌、提上唇肌、颊肌)的语义区域,这种投影方法已在2DASL模型中公开,本发明不在过多叙述。实施者也可以利用语义分割网络获得口轮匝肌、咬肌、提上唇肌、颊肌的语义区域。

10.由于不同人的面部的细节不一样,有的人的人脸纹理多,从而角点也多,有的人的面部皮肤光滑,从而角点数量少。对于同一张人脸,不同光照和不同视角的脸部的角点数量也不一样,因此如果只利用角点来分析面部肌肉的运动特征的话,获得的结果对于用户来说是由个体差异的,但是将角点和3D mesh的网格点相结合的话就能实现优势互补:既利用了3D mesh的三维空间特征,又融入了可以精确定位的角点位置特征。

11.具体的将角点的位置融入3D mesh的方法为:

5)本发明获得的人脸3D mesh是和人脸图像上的人脸对齐的,即3D mesh上的一个点可以投射图像上的一个像素,图像上的一个像素对应也可以反向投影回3D mesh上。

6)获取角点的位置,将该位置反向投影回3D mesh上,获得角点在3D mesh上对应的三维坐标P。

7)获取坐标P周围最近的四个网格点的位置为P

8)构建四个权重系数α

9)sum(ΔP)表示对序列ΔP的元素求和,网格点P

10)对于网格点P

P

11)综上所述,对于角点附近的网格点P

12)需要注意的是,当网格点P

12.综上所述,本发明可以利用人脸3D mesh获得面部肌肉的位置信息,并将角点位置信息融入3D mesh中,提高3D mesh对肌肉运动信息的描述能力。

13.当需要检测用户的面部神经麻痹疾病时,用户对着相机做一些表情和动作,例如微笑、歪嘴、张嘴等,采集图像序列,采集的图像序列越长越好。对于每帧图像均可按照本发明的设计方法,获得人脸的3D mesh,这种3D mesh融入了人脸的角点位置信息。

14.对于第j个网格点,其在N帧图像上的位置序列为D

6)需要说明的是,人脸的3D mesh不是一个闭合的mesh,该mesh存在边缘,边缘上的网格点是不会随着面部的表情变化而运动的。计算边缘的网格点的坐标的均值为

符号“:=”表示将符号右边的表达式的结果赋值给符号左边的变量,这样计算的目的是使得D

7)首先获得第j个网格点的在当前第i帧的最小运动幅度,方法如下:

a)计算当前第i帧的第j个网格点D

L

b)L

L

c)设前i帧中第j个网格点的最小运动幅度为Lmin

Lmin

min(L

d)上式是一个递推公式,利用递推公式的好处时可以边采集图像边计算数据,不用将所有图像采集完再进行计算,能够节省计算机的存储空间。其中Lmin

8)同理获得当前第i帧第j个关键点的最大运动程度Lmax

9)则第j个网格点的运动幅度为M

15.设有J个网格点,可以获得当前J个网格点的运动幅度M={M

16.权重w可以人为指定,本发明采用如下方法获得这个权重:

1)采集不同的正常的人脸做一些表情动作时的图像序列;

2)对于每个人脸,利用本发明所设计的系统获得所述的J个网格点的运动幅度;

3)对于多个不同的正常人的人脸,可以获得多组运动幅度数据;

4)具体的,设有A个正常人的人脸数据,A为超参数,越大越好,本发明建议A取值为100到200之间。

5)第i个人脸对应的所述的J个网格点的运动幅度为

6)可知,A个人脸对应的第j个网格点的运动幅度为

7)对数据列表m

8)引入参量

9)综上所述,对于第j个网格点,不同人脸有不同的运动幅度,

10)对于所有的J个网格点,获得一个序列

11)正如前述,运动幅度越小的网格点对应的肌肉运动越微小,这些运动幅度微小的肌肉更能反映人脸对肌肉的控制能力,这些运动幅度微小的肌肉对应的网格点应有一个较大的权重,这种权重可以视为对网格点的关注程度,设第j个网格点的权重为w

w

其中

12)其中a、b为超参数,实施者根据所需设置,在本发明中令a=8.7、b=-0.6,此时w

如图2所示,反映的是第j个网格点的平均运动幅度x

13)至此获得每个网格点的权重。这些权重是事先获得的,只用获得一次,一旦确定权重之后就无需再改动了。

14)总的来说这些权重是统计获得的,具体实施时需要考虑到A个人脸样本如何获取,如何使A个人脸样本具有代表性等问题,这些取样的方法不是本发明的重点,不再一一提出解决方案。

17.利用当获得每个网格点的权重后,通过对所有网格点的运动幅度的加权求和可以获得人脸面部肌肉的运动幅度,这个运动幅度能够反映用户对面部肌肉的控制程度,设利用网格点获得的脸面部肌肉的运动幅度为B1,则:

18.需要说明的是,运动幅度大的网格点对应的权值小,因此对每个网格点的运动幅度加权后获得的结果,这些结果的差异是不大的,即当j取不同值时,w

19.总的来说本发明通过将角点的位置特征融入人脸3D mesh中可以较为精准的结果,但是这种结果还是受限于人脸3D mesh的精度,而上述获得的角点虽然存在角点数量少、角点分布不均匀、不同人脸角点分布不一致的问题,但是这些角点却能较为精确的反映肌肉的运动。

20.本发明认为当检测到的角点较多,而且所有肌肉都可检测到角点时,此时角点更能描述肌肉的运动。

21.设检测到n个角点,可以将n个角点映射到人脸3D mesh上,获得n个角点在3Dmesh上的三维坐标,根据角点的三维坐标的位置变化可以获得每个角点的运动幅度,运动幅度的计算方法和网格点的运动幅度计算方法一致。

22.设第i个角点的运动幅度为Q

23.最终的肌肉运动幅度为B:

其中

24.

c为超参数,建议在[1,4]区间取值,本发明c=2。

25.B表示的就是融合网格点的运动幅度B1与

26.至此获得了B,B表示的就是人脸上面肌肉的运动幅度。这种运动幅度表示人对面部的控制程度。对于正常的人脸,面部的肌肉额运动幅度较大,对于有面部神经麻痹疾病的人,其面部肌肉运动幅度较小,可根据人脸上面肌肉的运动幅度B的大小判断是否有面部神经麻痹疾病,并且根据B的大小提出疾病的治疗方案。由于后续都是简单的逻辑与判断本发明不再对数据B进行下一步的计算与分析。

27.至此本发明完成。

去获取专利,查看全文>

相似文献

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

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号