APP下载

基于特征绑定的ASM人脸检测研究

2020-05-19马晶金晶苏金善

河南科技 2020年7期
关键词:人脸检测

马晶 金晶 苏金善

摘 要:近年来,人脸检测识别方法得到飞速发展,基于ASM特征的识别方法因具有定位精度高而得到广泛应用。然而,当相邻两个特征点位于不同器官时,使用该方法时特征点间会产生连带效应。本文提出基于特征绑定的ASM人脸检测算法,克服了传统ASM方法存在的连带效应。由于使用该方法不需要直接检测完整的人脸,因此其对人脸偏转、部分人脸遮挡、用户佩戴眼镜等情况有较高的准确性和鲁棒性。

关键词:特征绑定;人脸检测;ASM

中图分类号:TP391141文献标识码:A文章编号:1003-5168(2020)07-0008-06

Abstract: In recent years, face detection and recognition methods have been developed rapidly. Recognition methods based on ASM features are widely used because of their high positioning accuracy. However, when two adjacent feature points are located in different organs, there will be joint effect between feature points when using this method. This paper proposed an ASM face detection algorithm based on feature binding, which overcame the joint effect of traditional ASM. Because this method does not need to detect the whole face directly, it has high accuracy and robustness for face deflection, partial face occlusion, users wearing glasses and so on.

Keywords: feature binding;face detection;ASM

1 研究背景

目前,人脸检测[1-3]和识别[4]是图像模式检测领域的热点问题,已有大量不同种类的算法应用于该领域,且有很多优异的人脸检测系统[5]和人脸识别系统[6]已经得到研发。人脸检测的相关算法主要分为四个类别:基于先验知识的方法、基于特征不变性的方法、基于图像模板匹配的方法和基于统计理论的方法。基于先验知识的方法在极大程度上依赖于先验知识,对存在一定变化的人脸没有较好的检测率;基于特征不变性的方法由于光照、噪声和遮挡等使图像特征被严重破坏,人脸的特征边界被弱化,阴影可能引起很强的边缘,而这些边缘可能使得算法难以使用;基于图像模板匹配的方法计算量较大,并且对存在旋转和尺度变化的人脸识别率较差;基于统计理论的方法对前期用于训练的样本有一定要求,并且训练时间过长,此外,此类算法的准确性依赖于训练得到的每一个特征。

主动形状模型(Active Shape Models,ASM)是模板匹配方法中最经典的算法。它是一种参数模型,最先由Cootes等人于1995年提出[7]。基于ASM人脸检测的优点是人脸定位精度较高。但是,传统的主动形状模型检测算法中,当相邻两个特征点位于不同器官时,彼此会产生连带效应,使得两个器官的位置互相影响。由此,有人提出了特征绑定(Feature Binding,FB)方法[8-9]。该方法适用于人脸检测时将训练得到的特征按照一定准则进行分组,并将每一组内的所有特征绑定为一个整体,用该整体对相应的子目标(特征窗)进行检测。最终人脸的判定及定位由所有特征窗的输出结果及其相应权重的系数确定。同时,由于特征绑定方法是一个独立的方法,并不依赖于某一种特定的特征,因此,理论上可以被应用在所有可以被分组的特征上。在特征选取上,由于人脸检测需要具备实时性,需要快速确认人脸的位置,降低整个系统算法的时间复杂度,因此,不宜采取时间复杂度较高的特征和算法,应该在常数时间内完成。

为了解决ASM算法中存在的连带效应,本文在ASM检测算法中增加了特征绑定,对人脸的各部分分别进行特征点的检测。将特征绑定和ASM算法相结合,这是因为这些特征分布符合上述要求,单人脸检测只需要涉及特征计算和查表操作,并且与人脸尺度无关,能较好地完成人脸检测作为前置级的作用,同时不引入较高的时间复杂度,并对不同条件下的图像均可以获得较好的检测效果。本文将在ASM特征中使用特征绑定方法,并与传统Adaboost算法、传统ASM算法、基于Haar的特征綁定方法进行定性及定量对比。

2 传统ASM特征及算法

ASM的基本思想是选取一组训练样本,用一组特征点来描述样本的形状,然后对各样本的形状进行配准,使得形状尽可能相似。对于这些配准后的形状向量,利用主分量分析方法进行统计建模,得到物体形状的统计学描述,最后利用建立的模型在新的图像中搜索物体轮廓,从而定位出目标物体。ASM依靠一个由人工标定特征点的训练集来得到一个平均的人脸形状(Mean Shape)之后,在平均形状点的邻接区域进行搜索得到目标形状。由ASM训练得到的平均形状模型能很好地覆盖各种人脸几何外形子空间,具有较高的定位精度,同时采用灰度和梯度信息指导形状模型,可以加快收敛速度,提高收敛概率,并能大量减少所需的训练样本数。

在实际应用中,ASM包括训练(建立模型)和搜索(拟合计算)两个部分。本实验中,笔者以人脸明显特征器官及大拐点为标准,对每一个人脸模型选取[k=68]个关键点作为ASM特征点,并用这些点表示一张完整人脸,如图1所示。

ASM模型是对象的形状模型,在训练过程中,每一个训练样本上的所有特征点的坐标组成特征向量,对所有人脸样本提取模型并进行归一化,即采用Procrustrs方法进行对齐,并进行PCA降维处理。图2为本实验中计算的归一化前后训练样本人脸模型,其中图2(a)为未进行归一化前训练样本的形状向量,图2(b)为归一化后的形状向量。

在每一次迭代过程中,需要为每一个特征构建局部特征,从而为每个特征点更新位置。对所有[k]个特征点进行相同操作,可得到每个特征点的局部特征。

在通过样本集进行训练得到ASM模型后,即可对待检测图像进行ASM搜索。对各特征点附近搜索,匹配每个局部特征点,得到初步形状;再利用形状模型修正匹配结果;迭代直到收敛,达到模型实例与输入图像相拟合的目的,而最终得到的形状控制点的位置就是待检目标的特征点位置。

用上述包含68个特征点的ASM算法对人脸进行检测定位,得到的效果如图3所示。其中黑色矩形窗即为检测得到的人脸窗。

3 基于特征绑定的人脸检测算法概述

根据特征绑定一般模型,对人脸进行检测,特征绑定示意图如图4所示。

由于人眼部分是人脸中最重要的特征,因此,笔者将左眼和右眼选定为两个热点区域,将所有落在这两个区域内的热点特征分别绑定为两个整体。同时,鼻子和嘴巴作为人脸的显著特征,也被选为热点区域,并分别绑定为两个特征整体。在对待测目标进行检测时,优先用这些被绑定的整体进行计算,并将计算结果作为目标定位过程中的一个重要依据。每个特征有一个对应的特征值。对于每一个特征集,将其包含的所有特征的特征值利用一定方式计算后作为当前热点区域的整体特征值,选取适当的阈值或判定标准。若实际检测过程中计算出的整体特征值超过阈值或达到判定标准要求,则当前检测区域被判定为相应的热点区域,并称为“特征窗”(Feature Window)。最终的检测及定位结果由这些特征集及其对应的权重决定。针对不同重要性的特征集,其阈值和权重也不尽相同。在人脸检测及定位中,左眼和右眼的特征整体具有最高的投票权重,鼻子和嘴巴的特征整体投票权重相对较低。

基于特征绑定的人脸检测算法流程如图5所示。与传统人脸检测的串联强分类器不同,特征绑定的人脸检测为并联强分类器。对于人脸图像,冗余区域的特征仅仅起到辅助性的作用,表示了一种普遍意义上的趋势;而突变区域的特征,如眼睛、鼻子、嘴巴等,则可以更好地描述人脸信息,更有利于快速准确地标识人脸,具有十分重要甚至决定性的作用。也就是说,在人脸检测的实际应用中,突变部分具有较高的应用价值,而冗余部分则更多被用来加快检测速度或者为突变部分的获取服务,在算法中被用作约束条件。

4 基于特征绑定的ASM人脸检测算法

值得注意的是,特征绑定方法并不局限于某一种特定的特征。从理论上来说,特征绑定可以被应用于任意一种能通过一定准则进行分类的特征。例如,将特征绑定用于ASM特征点及算法,就可以获得较好的检测效果。

基于ASM的人脸检测是一种基于特征点分布的检测方法,主要考虑样本中特征点附近的形状信息。通过对人脸的形状特征进行统计分析,建立对应的ASM模型。在检测时,结合“搜索-比较-调整再搜索-再比较”的图像拟合策略,实现快速而准确的人脸检测。ASM的优点是能根据训练数量对参数的调节加以限制,从而可以灵活地改变模型的形状以适应待检目标形状不确定的特性,并将形状的变化控制在模型允许的范围内,以保证模型在改变的过程中不会拟合出不合理的形状。

传统的ASM检测算法是将所有特征点串联在一起,首先对整个人脸进行形状模型的匹配,当对每个特征点进行迭代搜索最佳位置时,其前后两个特征点的位置对当前点有一定影响。因此,当相邻两个特征点位于不同器官时,彼此会产生连带效应,使得两个器官的位置互相影响。为了解决这种连带效应,笔者在ASM检测算法中增加特征绑定,对人脸的各部分分别进行特征点的检测。

将特征绑定用于ASM检测算法的思想是:将通过上述ASM训练得到的68个特征点按照其在训练样本人脸中的位置进行分类,如图6所示。将左边眉眼区域共11个ASM特征点作为左眼集;右边眉眼区域共11个特征点作为右眼集;鼻子区域的11个特征点作为鼻子集;嘴巴区域的18个特征作为嘴巴集;其余的特征作为整体人脸的区域限制及各器官之间位置关系的约束条件。

对所有样本中同一个特征点的所有形状向量进行归一化,从而消除训练样本中由于不同角度、距离、姿态等外界因素造成的非形状干扰,使点分布模型更加有效。本实验中采用Procrustes方法进行归一化,即将一系列点分布模型通过适当的平移、旋转、缩放变换,在不改变点分布模型的基础上对齐到同一个点分布模型。经过多次迭代直到收敛,可得到归一化的左眼模型。

為了能在每一次迭代过程中为每个特征点更新位置,需要为每一个特征构建局部特征。对于第[i]个训练样本图像中第[j]个特征点,沿着垂直于该点前后两个特征点连线的方向上分别选择[m]个像素,构成一个长度为[2m+1]的向量,对该向量所包含像素的灰度值求导,得到局部纹理[gij],对训练样本集中的其他训练样本图像上的第[j]个特征点进行同样操作,便可得到第[j]个特征点的[n]个局部纹理[g1j,g2j,…,gnj]。计算其均值[见式(2)]和方差[见式(3)]:

为了计算每个特征点的新位置,将初始左眼模型覆盖在图像上,对于模型中第[j]个特征点,在垂直于其前后两个特征点连线方向上以其为中心,两边各选择[l]个像素,且满足[l>m]。计算这些像素的灰度值导数并归一化,从而得到一个包括[2(l-m)+1]个子局部特征的局部特征。计算这些子局部特征与当前特征点局部特征之间的马氏距离,使得马氏距离最小的子局部特征的中心为当前特征点的新位置,从而产生一个新的位移。为所有特征点找到新位置,并将其位移组成一个向量:

通過仿射变换并调整参数使当前特征点的位置[X]与对应的新的位置[X+dX]最为接近,同时可以得到仿射变换参数的变化量[dθ,ds,dX],即参数更新过程为:[dX→(dθ,ds,dXc)→db]。对仿射变换参数和[b]做如下更新:

其中,[wc,wθ,ws,wb]为用于控制参数变化的权重。迭代更新直到各参数收敛或迭代次数达到指定阈值,即可得到每个特征点最终的检测位置,使其和相对应的真正特征点最为接近。最终,可以在待检测图像中搜索出相应的左眼窗,并定位出左眼窗中各特征点的检测位置。

同样地,可以得到右眼窗、鼻子窗、嘴巴窗及各特征窗中相应特征点的位置,并通过约束条件最终确定人脸窗的位置。

图7为人脸检测的结果图。其中黑色人脸窗为未使用特征绑定的ASM算法的定位结果,白色人脸窗为使用了基于特征绑定的ASM算法的定位结果,灰色小矩形窗分别为使用特征绑定后检测到的四个特征窗。由此可以看出,使用了特征绑定后,人脸窗的定位比未使用特征绑定时更准确。

5 实验结果及讨论

由于在ASM算法中,将所有的特征点按照顺序编号并构成特征向量,最终的检测结果为相对所有特征点而言的最好的匹配位置;因此,若特征点的信息不完整,则每一次迭代的数据基础也不完整,很容易造成匹配失准或匹配失败。也就是说,无法利用部分人脸特征来获得整体人脸的最佳匹配位置。而在使用了基于特征绑定的ASM算法后,由于四个特征窗分别作为一个独立的形状模型进行检测,因此,即使被遮挡的部分使得一个或两个特征窗无法检测到匹配形状,仍有其他特征窗可以投票为人脸。同样地,将双眼区域的权重相应增大,其他区域的权重相应减小,当被遮挡部分不包括眼睛时,由于左眼窗和右眼窗的检测权重较高,仍可以成功检测到人脸。

对于一组包含108帧的图像序列,传统ASM算法与基于特征绑定的ASM算法的人脸检测结果如图8所示。为了对比两种算法检测的准确性,在检测过程中并未使用任何预测及跟踪算法,每一帧图像均单独进行检测,对前后帧的检测结果不产生影响。

图9为传统ASM算法及基于特征绑定的ASM算法对上述图像序列检测结果的定量分析曲线。从图9可以看出,基于特征绑定的ASM算法的检测值具有更小的方差,因此准确率更高。

各种不同条件下的图像,如不同面部表情、不同光照条件、存在部分遮挡的图像,其人脸检测检测结果如图10所示。

其中,[n]为图像序列的长度;[Yi]为检测结果;[Yi]为真实值。在人脸检测中,选用人脸窗左上角坐标表示。当MSE越小时,表示算法性能越好。

对于上述图像测试集,在PC机测试平台(Intel i5-4590处理器,8GB内存,MATLAB平台)上,分别使用传统Adaboost算法、基于Haar特征的特征绑定方法、传统的ASM方法、基于特征绑定的ASM算法得到的人脸检测结果如表1所示。

从表1可知,基于特征绑定的ASM算法与传统ASM算法相比,具有更高的准确率及更低的均方误差。然而,目前存在一个主要问题,即特征绑定的时间消耗略长。这是因为特征绑定需要对多个特征集进行检测,按照本文所述规则进行绑定的方法中,需要对四个子区域进行检测;而传统的Adaboost算法及传统的ASM算法只需要对整个人脸进行检测。因此,基于特征绑定的ASM算法需要更长的时间消耗。理论上来说,解决方式之一是在每个特征集内部建立瀑布式级联结构[10],迅速结束不相关区域的检测,提高每个特征集内部的检测速度。

参考文献:

[1] Torricelli D , Conforto S , Schmid M , et al. A neural-based remote eye gaze tracker under natural head motion[J]. Computer Methods and Programs in Biomedicine, 2008(1):66-78.

[2] Chai C C C , Wang Y W Y . Face detection based on extended Haar-like features[C]// International Conference on Mechanical & Electronics Engineering. IEEE, 2010.

[3]何智翔,丁晓青,方驰,等.基于LBP和CCS-AdaBoost的多视角人脸检测[J].浙江大学学报(工学版),2013(4):622-629.

[4]袁正海.人脸识别系统及关键技术研究[D].南京:南京邮电大学,2013.

[5] Noureddin B , Lawrence P D , Man C F . A non-contact device for tracking gaze in a human computer interface[J]. Computer Vision and Image Understanding,2005(1):52-82.

[6]马宁.基于图像的人脸识别中关键技术研究[D].长春:吉林大学,2016.

[7] Cootes T F, Taylor C J, Cooper D H, et al. Active Shape Models-Their Training and Application[J]. Computer Vision & Image Understanding,1995(1):38-59.

[8] GE Jun-Feng, LUO Yu-Pin. A Comprehensive Study for Asymmetric AdaBoost and Its Application in Object Detection[J].Acta Automatica Sinica, 2009(11):1403-1409.

[9] Yang M , Crenshaw J , Augustine B , et al. AdaBoost-based face detection for embedded systems[J]. Computer vision and image understanding,2010(11):1116-1125.

[10] Zhou J, Wang Y Q, Fan K F. Face detection method for real-time anti-interference[J]. Computer Engineering & Design,2013(4):1399-1403.

猜你喜欢

人脸检测
肤色与唇色信息相结合的人脸检测
人脸检测技术综述
基于Android的车载疲劳驾驶监控系统研究与设计
一种鲁棒的长期人脸特征点跟踪系统
基于改进的Adaboost算法在人脸检测与识别中的应用与研究
JNI技术在基于OpenCV的人脸与微笑检测中的应用
基于人脸特征定位的SNS网站应用组件研究与设计
基于Android平台的人脸识别系统设计与实现
基于Matlab的人脸检测实验设计
基于肤色模型与改进Adaboost算法的人脸检测