一种基于模拟退火算法的三维人脸识别方法转让专利

申请号 : CN201210109651.5

文献号 : CN102663367B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 屈鸿王晓斌杨媛静陈文宇刘贵松

申请人 : 电子科技大学

摘要 :

本发明公开了一种基于模拟退火算法的三维人脸识别方法,首先对待识别人脸进行特征提取,其次分三步匹配待识别人脸,通过比较匹配结果和阈值得出待识别人脸的身份。本发明能够更好的实现身份认证,提高安全系统的适用性,满足社会各方面的需求。运用模拟退火算法能够跳出局部极值,无限接近全局最优解,从而找到人脸匹配的最优转换矩阵;通过在不同匹配阶段选择不同的适应度函数,控制了整个匹配过程;采用分层模型对无法识别人脸进行匹配;这些措施都提高了人脸匹配的精准性。特别的,通过特征点划分人脸区域,在精准匹配过程对不同人脸区域设置不同权值,改善了表情对人脸识别的影响。

权利要求 :

1.一种基于模拟退火算法的三维人脸识别方法,包括如下步骤:(1)对三维人脸进行特征点的提取,使用曲率信息和相关先验知识提取面部特征点;

(2)根据上述面部征点划分人脸区域,用于后续的识别算法;

(3)利用模拟退火算法进行三维人脸匹配;

(4)计算对应点集的SIM值,并与事先设定的阈值相比较,高于识别阈值,则是同一个人,低于拒绝阈值,则不是同一个人;

(5)当SIM值位于两阈值之间导致无法作出判断时,即低于识别阈值,高于拒绝阈值时,转入步骤(6);

(6)利用分层模型对无法识别人脸进行匹配,只有当前一层次的识别值无法对人脸做出判定时,才继续下一层次的分析;

(7)与阈值相比较得出最终识别结果;

所述步骤(3)中模拟退火算法进行三维人脸匹配包括以下步骤:

1)基于重心对齐的初始匹配;

2)基于MLESAC的粗略匹配;

3)基于SIM的精准匹配;

所述基于MLESAC的粗略匹配包括如下步骤:(1)获取目标点集D,模型点集M,我们基于等距对图像中的点进行采样率为s的采样,在该阶段只对采样点进行匹配;

(2)初始化参数;

(3)利用位于[-1,1]之间的随机值产生新解 ;

(4)根据MLESAC算法计算新旧解对应的 函数差值;

(5)根据模拟退火的各种收敛条件判断是否接受新解;

(6)同一温度下,重复执行(3)到(5);

(7)缓慢降低温度t,对每一温度重复(3)到(6)的迭代,直至达到收敛条件为止;

(8)得出最终坐标变换: ,并剔除了外点得出两幅人脸的最终对应点集C,并将其运用于下阶段的精准匹配之中;

所述基于SIM的精准匹配包括如下步骤:(1)获取目标人脸和模型人脸各个人脸区域粗略匹配后的点集,包括五个区域:1)鼻子圆形区域C,2)鼻子椭圆区域E,3)面部区域上半部分U,4)整个面部区域F,5)基于改进SA的面部区域M,在此我们统称各个区域的目标人脸数据点集为 ,参考人脸数据点集为 ;

(2)初始化参数;

(3)利用位于[-1,1]之间的随机值产生新解 ;

(4)分 别 计 算 新 旧 参 数 下,目 标 人 脸 与 模 型 人 脸 的 对 应 点 集;

(5)根据新旧参数下的对应点集计算 的函数差值;

(6)根据模拟退火的各种收敛条件判断是否接受新解;

(7)在同一温度下,重复执行步骤(3)到(6);

(8)缓慢降低温度t,重复执行步骤(3)到(7),直至达到收敛条件为止;

(9)得出各个人脸区域的最终坐标变换 ,并根据SIM得出相应的对应点集C,利用 计算各个人脸区域的SIM值。

2.根据权利要求1所述的一种基于模拟退火算法的三维人脸识别方法,其特征在于,步骤(1)所述的面部特征点包括鼻尖、眼角、鼻翼、鼻基这六个特征点。

3.根据权利要求1所述的一种基于模拟退火算法的三维人脸识别方法,其特征在于:所述步骤(2)根据不同的目的分别有两种不同的人脸区域划分方式:

1)划分人脸为鼻子椭圆区域、鼻子圆形区域和面部区域上半部分,适用于后续的分层模型;

2)根据特征点划分人脸为九个区域,适用于后续的精准匹配过程。

4.根据权利要求1所述的一种基于模拟退火算法的三维人脸识别方法,其特征在于,所述步骤(6)中所述分层模型共有六个层次:

1)鼻子圆形区域;

2)鼻子椭圆区域;

3)面部区域上半部分;

4)整个面部区域;

5)基于改进SA的面部区域;

6)使用求和规则对所有区域相加。

5.根据权利要求2所述的一种基于模拟退火算法的三维人脸识别方法,其特征在于,所述鼻尖、眼角、鼻翼、鼻基这六个特征点提取包括如下步骤:(1)对每一点定义局部平面,确定局部平面的系数;

(2)计算局部平面的高斯曲率和平均曲率,根据两者的符号确定每一点的曲面类型;

(3)计算y轴方向的投影以及相关的差异曲线,通过深度信息和最大差异曲线范围确定鼻尖y坐标信息;

(4)根据步骤(2)所得的曲率图像计算x轴投影,即邻域内顶面点的百分比,通过确定该投影的峰值确定鼻尖x坐标信息;

(5)确定鼻翼的y坐标:设定鼻翼的y坐标等于鼻尖的y坐标;

(6)计算鼻尖的水平侧面曲线,即具有相同y值点集的各个x坐标下的深度信息曲线;

(7)计算水平侧面曲线的梯度曲线,根据峰值确定鼻翼x坐标信息;

(8)根据步骤(2)所得的曲率图像计算y轴投影,即相同y值下的凹坑面的百分比,根据相关先验知识可确定两个内眼角和鼻基的y坐标位置;

(9)确定鼻基的x坐标等于鼻尖的x坐标;

(10)通过计算邻域内曲率图像凹坑面的百分比得出两个眼角的x坐标;

(11)使用ARMS方法,根据特征点和一些函数公式简单划分人脸区域为:1)鼻子椭圆区域,2)鼻子圆形区域,3)上半部人脸区域,4)整张人脸,该种划分应用于后续的分层模型。

说明书 :

一种基于模拟退火算法的三维人脸识别方法

技术领域

[0001] 本发明涉及模式识别,图像处理等领域,提供了一种基于模拟退火算法的三维人脸识别方法。

背景技术

[0002] 随着信息技术和社会的飞速发展,利用生物特征进行身份认证的技术受到了广泛关注,如人脸识别、指纹识别、虹膜识别等。人脸作为一种独特的生物特征,因其直接性、唯一性、方便性等特点,成为学者们最为青睐的识别技术。
[0003] 经过几十年的不懈努力,二维人脸识别技术在一定约束条件下已经能够获得理想的识别效果,并能达到某些实际应用的要求。但是由于二维图像信息具有一定的局限性、人脸具有的可塑多变性以及成像过程中容易受到诸多因素的影响,使得二维人脸识别受到各种限制而无法准确处理表情、姿势和光照等可变因素带来的影响。另一方面,随着数据获取技术以及相关硬件设备的不断成熟,越来越多的学者开始对三维人脸识别技术进行研究,希望其能解决困扰二维人脸识别的难点问题。三维人脸相较二维人脸而言,拥有更为丰富的人脸信息(譬如形状信息等)和姿势不变性等优点,这些都预示着三维人脸识别技术必将成为未来人脸识别技术的主要研究方向。
[0004] 三维人脸识别(3D Face Recognition)萌芽于上个世纪80年代末90年代初,高速发展于上世纪90年代末,尤其是2004年由美国FBI,NIST等多个部门联合资助发起的“人脸识别大挑战计划(Face Recognition Grand Challenge,FRGC)”更是大大促进了国际上对三维人脸识别技术的研究,并推动其走向了实际应用,可以说三维人脸识别已经代替二维人脸识别成为学术界的新宠。
[0005] 深度信息是三维人脸的主要表示方式,表现为3D点集(x,y,z),意味着在X-Y平面上存储的是深度信息z。可以用灰度图来解释,白像素表示曲面上的点,而黑像素代表的是背景,深度图中的像素值是深度信息。现在的大部分的研究都是基于深度图的研究,而已知的大部分二维人脸识别算法都可以直接应用于人脸深度图,常见的有ICP,PCA,模拟退火算法等。
[0006] 模拟退火算法(Simulated Annealing Algorithm,SA)是一种通用且常用的优化算法,该算法通过给予整个搜索过程一个时变且最后趋向零的概率突变性,跳出了局部最优解而具有了全局最优解,该算法以其卓越的性能现已在各工程领域得到了广泛的应用。通过在匹配过程中使用SA搜索最优转换矩阵,根据匹配结果得出识别结果。

发明内容

[0007] 本发明要解决的技术问题是提供一种精准的三维人脸自动识别方法,使其能够更好的应用于身份认证领域和安防系统,现在三维人脸识别方法的难点包括表情、姿态等,当人脸存在表情,或者姿态变化时,都会对自动三维人脸识别造成相当大的阻碍。
[0008] 为了解决上述技术问题,本发明采用如下技术方案:
[0009] 一种基于模拟退火算法的三维人脸识别方法,包括如下步骤:
[0010] (1)对三维人脸进行特征点的提取,使用曲率信息和相关先验知识提取面部特征点;
[0011] (2)根据上述面部征点划分人脸区域,用于后续的识别算法;
[0012] (3)利用模拟退火算法进行三维人脸匹配;
[0013] (4)计算对应点集的SIM值,并与事先设定的阈值相比较,高于识别阈值,则是同一个人,低于拒绝阈值,则不是同一个人;
[0014] (5)当SIM值位于两阈值之间导致无法作出判断时,即低于识别阈值,高于拒绝阈值时,转入步骤(6);
[0015] (6)利用分层模型对无法识别人脸进行匹配,只有当前一层次的识别值无法对人脸做出判定时,才继续下一层次的分析;
[0016] (7)与阈值相比较得出最终识别结果。
[0017] 进一步的说,步骤(1)所述的面部特征点包括鼻尖、眼角、鼻翼、鼻基这六个特征点。
[0018] 进一步的说,所述步骤(2)根据不同的目的分别有两种不同的人脸区域划分方式:
[0019] 1)划分人脸为鼻子椭圆区域、鼻子圆形区域和面部区域上半部分,适用于后续的分层模型;
[0020] 2)根据特征点划分人脸为九个区域,适用于后续的精准匹配过程。
[0021] 进一步的说,所述步骤(3)中模拟退火算法进行三维人脸匹配包括以下步骤:
[0022] 1)基于重心对齐的初始匹配;
[0023] 2)基于MLESAC的粗略匹配;
[0024] 3)基于SIM的精准匹配。
[0025] 进一步的说,所述步骤(6)中所述分成模型共有六个层次:
[0026] 1)鼻子圆形区域;
[0027] 2)鼻子椭圆区域;
[0028] 3)面部区域上半部分;
[0029] 4)整个面部区域;
[0030] 5)基于改进SA的面部区域;
[0031] 6)使用求和规则对所有区域相加。
[0032] 进一步的说,所述鼻尖、眼角、鼻翼、鼻基这六个特征点提取包括如下步骤:
[0033] (1)对每一点定义局部平面,确定局部平面的系数;
[0034] (2)计算局部平面的高斯曲率和平均曲率,根据两者的符号确定每一点的曲面类型;
[0035] (3)计算y轴方向的投影以及相关的差异曲线,通过深度信息和最大差异曲线范围确定鼻尖y坐标信息;
[0036] (4)根据步骤(2)所得的曲率图像计算x轴投影,即邻域内顶面点的百分比,通过确定该投影的峰值确定鼻尖x坐标信息;
[0037] (5)确定鼻翼的y坐标:设定鼻翼的y坐标等于鼻尖的y坐标;
[0038] (6)计算鼻尖的水平侧面曲线,即具有相同y值点集的各个x坐标下的深度信息曲线;
[0039] (7)计算水平侧面曲线的梯度曲线,根据峰值确定鼻翼x坐标信息;
[0040] (8)根据步骤(2)所得的曲率图像计算y轴投影,即相同y值下的凹坑面的百分比,根据相关先验知识可确定两个内眼角和鼻基的y坐标位置;
[0041] (9)确定鼻基的x坐标等于鼻尖的x坐标;
[0042] (10)通过计算邻域内曲率图像凹坑面的百分比得出两个眼角的x坐标;
[0043] (11)使用ARMS方法,根据特征点和一些函数公式简单划分人脸区域为:1)鼻子椭圆区域,2)鼻子圆形区域,3)上半部人脸区域,4)整张人脸,该种划分应用于后续的分层模型。
[0044] 进一步的说,所述基于MLESAC的粗略匹配包括如下步骤:
[0045] (1)获取目标点集D,模型点集M,我们基于等距对图像中的点进行采样率为s的采样,在该阶段只对采样点进行匹配;
[0046] (2)初始化参数;
[0047] (3)利用位于[-1,1]之间的随机值产生新解 ;
[0048] (4)根据MLESAC算法计算新旧解对应的 函数差值;
[0049] (5)根据模拟退火的各种收敛条件判断是否接受新解;
[0050] (6)同一温度下,重复执行(3)到(5);
[0051] (7)缓慢降低温度t,对每一温度重复(3)到(6)的迭代,直至达到收敛条件为止;
[0052] (8)得出最终坐标变换: ,并剔除了外点得出两幅人脸的最终对应点集C,并将其运用于下阶段的精准匹配之中。
[0053] 进一步的说,所述基于SIM的精准匹配包括如下步骤:
[0054] (1)获取目标人脸和模型人脸各个人脸区域粗略匹配后的点集,包括五个区域:1)鼻子圆形区域(C),2)鼻子椭圆区域(E),3)面部区域上半部分(U),4)整个面部区域(F),5)基于改进SA的面部区域(M),在此我们统称各个区域的目标人脸数据点集为 ,参考人脸数据点集为 ;
[0055] (2)初始化参数;
[0056] (3)利用位于[-1,1]之间的随机值产生新解 ;
[0057] (4)分 别 计 算新 旧 参 数 下,目 标 人 脸 与 模 型 人 脸 的 对 应 点 集;
[0058] (5)根据新旧参数下的对应点集计算 的函数差值;
[0059] (6)根据模拟退火的各种收敛条件判断是否接受新解;
[0060] (7)在同一温度下,重复执行步骤(3)到(6);
[0061] (8)缓慢降低温度t,重复执行步骤(3)到(7),直至达到收敛条件为止;
[0062] (9)得出各个人脸区域的最终坐标变换 ,并根据SIM得出相应的对应点集C,利用 计算各个人脸区域的SIM值。
[0063] 本发明以模拟退火算法和合适的适应度函数——MLESAC和SIM作为主要处理工具,利用深度信息和曲率信息来实现对三维人脸的识别。与现有技术相比,本发明具有以下有益效果:
[0064] 一、利用曲率信息提取特征,能够在一定程度上改善姿态变化的影响;
[0065] 二、不同于以往直接根据深度信息提取鼻尖的做法,使用差异曲线结合深度信息提取鼻尖,改善了姿态对人脸的影响,提高了鼻尖提取的精准率;
[0066] 三、相较之前的三维人脸匹配方法,我们基于“由粗到细”的思想,分三步进行匹配,提高了精准性、节省了时间成本;
[0067] 四、模拟退火算法跳出了局部最优解,无限逼近全局最优解,是其他局部搜索算法所不能比拟的;
[0068] 五、划分人脸区域,对不同区域设置不同权值,改进了精准匹配过程,从而改善了表情对三维人脸识别的影响;
[0069] 六、引进了分层模型,识别了更多的人脸,提高了识别率,并加入了改进的精准匹配过程作为新的层次,同样改善了表情的影响;

附图说明

[0070] 图1为三维人脸识别整体流程图;
[0071] 图2为特征点提取流程图;
[0072] 图3为分层模型所需人脸区域;
[0073] 图4为“由粗到细”思想流程图;
[0074] 图5为三维人脸匹配整体流程图;
[0075] 图6为粗略匹配流程图;
[0076] 图7为改进精准匹配过程所需人脸区域;
[0077] 图8为精准匹配流程图;
[0078] 图9为分层模型流程图。

具体实施方式

[0079] 下面将结合附图及具体实施方式对本发明作进一步的描述。
[0080] 参见图1,一种基于模拟退火算法的三维人脸识别方法,首先对带识别人脸进行特征提取,接着进行待识别人脸和数据库中模型人脸的匹配,利用公式:比较两幅人脸的相似度,SIM的值越大,表示相似度越高,最后通过比较阈值和SIM值得出识别结果。
[0081] 其中,如图2所示,特征提取包括如下步骤:
[0082] (1)对每一点定义局部平面,确定局部平面的系数;
[0083] (2)计算局部平面的高斯曲率和平均曲率,根据两者的符号确定每一点的曲面类型;
[0084] (3)计算y轴方向的投影以及相关的差异曲线,通过深度信息和最大差异曲线范围确定鼻尖y坐标信息;
[0085] (4)根据步骤(2)所得的曲率图像计算x轴投影,即邻域内顶面点的百分比,通过确定该投影的峰值确定鼻尖x坐标信息;
[0086] (5)确定鼻翼的y坐标:设定鼻翼的y坐标等于鼻尖的y坐标;
[0087] (6)计算鼻尖的水平侧面曲线,即具有相同y值点集的各个x坐标下的深度信息曲线;
[0088] (7)计算水平侧面曲线的梯度曲线,根据峰值确定鼻翼x坐标信息;
[0089] (8)根据步骤(2)所得的曲率图像计算y轴投影,即相同y值下的凹坑面的百分比,根据相关先验知识可确定两个内眼角和鼻基的y坐标位置;
[0090] (9)确定鼻基的x坐标等于鼻尖的x坐标;
[0091] (10)通过计算邻域内曲率图像凹坑面的百分比得出两个眼角的x坐标;
[0092] (11)使用ARMS方法,根据特征点和一些函数公式简单划分人脸区域为:1)鼻子椭圆区域,2)鼻子圆形区域,3)上半部人脸区域,4)整张人脸,该种划分应用于后续的分层模型,见图3。
[0093] 对人脸进行特征提取和区域划分后,接着就是三维人脸的匹配,该步骤是三维人脸识别过程中的核心步骤。在三维人脸匹配中,由于图像维数较高,数据信息量大而导致计算量巨大,从而引发识别速度慢。为此,我们采用了“由粗到细”(Coarse to Fine)的策略,分三步匹配图像,方法的思想流程图如图4所示,具体步骤如下,流程图见图5:
[0094] (1)基于重心对齐的初始匹配:利用两幅图的重心进行初始的匹配,通过这个步骤,可以把两幅人脸图像转换到相同的坐标系,是个快速的收敛过程;
[0095] (2)基于MLESAC的粗略匹配:基于SA最小化MLESAC估计量,MLESAC定义了一个阈值来区分内外点,通过减少外点匹配的错误来减少外点在图像匹配中的影响,从而得到一个粗略匹配,见图6;
[0096] (3)基于SIM的精准匹配:基于SA利用SIM估计量进行精准人脸匹配,SIM通过寻找更为精准的对应点得到最后的匹配结果,在该步骤我们试图得到最大的正确对应点集,见图7;
[0097] (4)利用求和规则总和各个区域C+E+U+F+M的值,并以此为依据与阈值相比较得出识别结果;
[0098] (5)当我们无法对人脸做出任何判断时,引入分层模型,利用人脸各个区域分层进行识别,只有当前一层次的识别值无法对人脸做出判定时,我们才继续下一层次的分析,见图9;
[0099] (6)得出最终识别结果:同样的,通过计算SIM值与阈值相比较得出识别结果,至此,完成了我们的整个三维人脸识别过程。
[0100] 其中,在整个粗略匹配的过程中,我们利用模拟退火算法作为搜索对应点的迭代算法,通过需找MLESAC相似性度量函数的最小值来得到粗略对应点集,作为下一阶段精准匹配的初始点集。通过MLESAC算法,我们能够剔除外点,保留尽可能多的内点,从而为下一阶段的精准匹配留取更多的正确点集。在该阶段整个匹配过程的流程图见图6,具体步骤如下所示:
[0101] (1)获取目标点集D,模型点集M,我们基于等距对图像中的点进行采样率为s的采样,在该阶段只对采样点进行匹配;
[0102] (2)初始化参数;
[0103] (3)利用位于[-1,1]之间的随机值产生新解 ;
[0104] (4)根据MLESAC算法计算新旧解对应的 函数差值;
[0105] (5)根据模拟退火的各种收敛条件判断是否接受新解;
[0106] (6)同一温度下,重复执行(3)到(5);
[0107] (7)缓慢降低温度t,对每一温度重复(3)到(6)的迭代,直至达到收敛条件为止;
[0108] (8)得出最终坐标变换: ,并剔除了外点得出两幅人脸的最终对应点集C,并将其运用于下阶段的精准匹配之中。
[0109] 在精准匹配之前我们首先进行第二种人脸区域划分,划分人脸为九个区域,见图7。为了改进表情对三维人脸识别的影响,通过权值对刚性区域投以更多的关注,对于不变区域的匹配点给定高权值;对于变化区域的匹配点给定低权值。划分人脸之后,开始精准匹配过程,我们还是利用模拟退火算法作为搜索对应点的迭代算法,同时利用SIM作为相似性度量函数来得到最终的对应点集。实现该阶段整个匹配过程的流程图见图8,具体步骤如下所示:
[0110] (1)获取目标人脸和模型人脸各个人脸区域粗略匹配后的点集,包括五个区域:1)鼻子圆形区域(C),2)鼻子椭圆区域(E),3)面部区域上半部分(U),4)整个面部区域(F),5)基于改进SA的面部区域(M),在此我们统称各个区域的目标人脸数据点集为 ,参考人脸数据点集为 ;
[0111] (2)初始化参数;
[0112] (3)利用位于[-1,1]之间的随机值产生新解 ;
[0113] (4)分 别 计 算新 旧 参 数 下,目 标 人 脸 与 模 型 人 脸 的 对 应 点 集;
[0114] (5)根据新旧参数下的对应点集计算 的函数差值;
[0115] (6)根据模拟退火的各种收敛条件判断是否接受新解;
[0116] (7)在同一温度下,重复执行步骤(3)到(6);
[0117] (8)缓慢降低温度t,重复执行步骤(3)到(7),直至达到收敛条件为止;
[0118] (9)得出各个人脸区域的最终坐标变换 ,并根据SIM得出相应的对应点集C,利用 计算各个人脸区域的SIM值;