一种复杂背景下的快速人脸检测算法
2008-03-13
作者:王金庭1,王 虹1,杨 敏2
摘 要: 提出了一个由粗到细的多阶段人脸" title="人脸">人脸检测算法,介绍了检测工作的三个部分:肤色区域分割预处理、应用人脸基本特征检测和定位的人脸细检、平均脸模板匹配的人脸验证。实验证明该算法能有效检测出复杂环境中的人脸。该算法对于人脸的平移、缩放、适度旋转都能很好地适应。
关键词: 人脸检测" title="人脸检测">人脸检测 彩色空间 肤色模型" title="肤色模型">肤色模型 图像分割 模板匹配
人脸检测是指在输入图像中确定人脸(如果存在)的位置、大小等信息。
在人脸检测定位方面,以前已经有人提出了一些解决方案。但在定位方法的简便性、算法的稳定性、定位结果的准确性以及适用条件等方面依然存在局限。例如参考文献[1]提出的人脸检测算法,虽然可以在复杂背景下实现人脸检测,但其只能检测单人脸,而且人脸的姿态又不能任意。又如参考文献[2]提出的复杂背景下的人脸检测与定位算法,虽可以检测背景复杂、姿态各异的多人脸,但对所检人脸尺寸、比例及灰度都有一定要求,而且限制了所能检测的人脸的种类。
笔者在人脸检测定位方面做了一些有意义的探索和研究。笔者认为,对于复杂背景中的人脸检测,应针对背景采用分阶段的检测定位算法,即先减小背景的复杂度,在简单背景中检测定位人脸,然后进一步由粗到细地检测定位人脸。这种检测定位算法的整个检测定位过程分三个阶段进行:①预处理:肤色区域分割;②粗检:肤色区域的筛选;③细检:候选人脸的特征检测和定位。
1 预处理——肤色区域分割
已有研究[3-4]表明,人的皮肤颜色具有以下两个重要的特征:(1)人的皮肤颜色分布在颜色空间中很小的一个范围内;(2)人的皮肤颜色的不同主要是由颜色的强度引起。即肤色具有聚类" title="聚类">聚类性,肤色的这种聚类性可以用来从背景中分割出人脸。
通过对不同颜色空间的分析发现,YCbCr空间具有将色度与亮度分离的特点,在YCrCb色彩空间中肤色的聚类特性比较好,受亮度变化的影响较小,而且是两维独立分布,能较好地限制肤色分布区域[5],并且受人种的影响不大。因此本研究选择YCrCb色彩空间模式进行肤色区域分割。
1.1 肤色模型的建立
肤色模型是根据大量样本的统计数据建立的。针对不同肤色的人:亚洲人、高加索人和非洲人,本文选择在一般室内外照明背景下的人脸图片,以便所建立的肤色模型具有一般性。建立肤色模型的步骤如下:
(1)手工剪裁出大量肤色区域。在本文中首先手工裁减了1000个各色人种的肤色区域,分别选自不同的性别、不同的身体区域(包括脸部、手臂、四肢和躯干部分)。
(2)将皮肤区域中每个像素点的R、G、B转换成Y,Cb、Cr表示,得到每个像素点的色度值(Cb,Cr)。转换公式如下:
(3)对剪裁出的肤色区域图像使用低通滤波器减小样本的噪声,这个低通滤波器的脉冲响应如下:
(4)统计色度为(Cb,Cr)的像素点数,得到色度分布图,如图1所示。
从色度分布图可以看到肤色聚类在色度空间中的一个很小的范围内。
(5)归一化色度分布图,肤色分布可以用高斯模型N(m,C)表示。其中,m是均值,C是协方差阵,可表示如下:
m=E{x}, x=(Cr Cb)T
C=E{(x-m)(x-m)T}
1.2 肤色区域的提取
通过前面所建立的肤色高斯分布,可以得到某幅彩色图像" title="彩色图像">彩色图像中任意一个像素点属于皮肤的概率。对于某像素点s,从R、G、B空间转换到Y、Cb、Cr彩色空间,可以得到色度值(Cr,Cb),则这个像素的肤色概率密度(即肤色似然度)可以通过下面的式子计算得到:
计算被检测的彩色图像各像素点的肤色似然度,并得到整幅图像的最大肤色似然度。每一点像素的肤色似然度除以最大肤色似然度所得到的值,作为该像素点的灰度值(表征这个像素点属于皮肤的概率),从而得到肤色似然图像,如图2所示。
随着阈值的下降,直觉上将会导致分割区域的增加。然而试验结果表明,当阈值处于某一范围中时,随着阈值的降低分割区域并不会明显增加(这是因为这个阶段的肤色像素已经被完全检测出来,而非肤色像素还没有被认为是肤色像素)。如果阈值继续降低到某一个特定值后,随着非肤色区域被错认为是肤色区域,则会出现分割区域面积大幅度增加的情形。故最优阈值应该是在随着阈值增长而类肤色区域面积增长最小的范围之内。本文中采用的方法是,让阈值从0.65开始减少,每次减少0.1,直到0.15为止,并找出肤色分割区域面积增加最小的一段,从而得到优化后的阈值。其试验结果如图3所示。
2 粗检——肤色区域的筛选
2.1 肤色区域的提取
通过形态学处理不但可以过滤由于噪音或者其他原因引起的一些较小的不可能为人脸的类肤色区域,减少候选区域和提高检测速度,而且可以填补肤色区域内的较小空洞,防止这些空洞被误认为是人脸器官所造成的,为后续检测区域内(欧拉数判断是否为候选区域)降低了误判的可能性。
在本文中,考虑到干扰造成的小的虚假肤色区域,使用5×5的结构元素进行开运算消除较小物体(假设人脸区域应该有足够大),减小后面分割区域编码的工作量;同时,考虑到一部分分割区域内部有较小的空洞存在,使用3×3的结构元素对其进行闭运算,消除分割区域中的较小的空洞,以利于后面计算欧拉数时可以减少干扰,其效果如图4所示。
2.2 人脸几何特征分析
(1)有效面积。在目标图像中,存在着一些由某些原因引起的噪声,这些噪声的区域面积不大,因此可用面积参数先过滤掉这些噪声。
Ai>A
式中,Ai代表第i个目标区的面积;A(=10)为一事先确定的面积阈值。符合上式的区域可进一步进行检测,否则被认为是噪声滤除掉。
(2)圆度。人脸在不同的视角中,都有类似椭圆的性质。在人脸区域的检测中,区域的圆度可以作为一项基于形状检测的参数:
式中,Ai为第i个区域的面积;Pi为第i个区域的周长,Ci为第i个目标区的圆度;C(=0.05)是预定的圆度阈值。符合此式的区域才能成为下一步的候选区域。
(3)长宽比例。人脸区域的长宽比应该符合一个约束范围,在目标二值图像中利用该约束范围可快速排除那些太过狭长或横轴长度明显超标的区域。区域的长宽比例同样是一项基于形状检测的参数:
Ri=Hi/Wi Ri∈RR
式中,Hi是第i个区域的高度,Wi为第i个区域的宽度,Ri等于该区域的长宽比例;RR(=[0.8 2.2])为设定的人脸区域长宽比例约束范围。不符合该式的区域被认为是非人脸区域舍弃掉。
(4)欧拉数。欧拉数可以表示一个封闭区间中的空洞数量的情况,其定义如下:
E=C-H
式中,E为连通区域的欧拉数;C为连通区域的数目,这里应为1;H为连通区域内部的空洞数。在正常情况下,人脸图像中一定包括眼睛、眉毛等非肤色区域,所以真正的人脸区域须包括一个或多个小孔。故若欧拉数大于0,则该连通区域不会是人脸待选区域。但是如果欧拉数太小,也不应该是人脸,人脸中由于嘴、眼等区域形成的空洞数不会太多,在本文中,如果计算出来的欧拉数小于-10,也不认为其是人脸待选区域。
(5)质心。对于一块人脸图像区域,应该是或基本上是一个凸多边形,也就是说其质心应该在多边形区域内,质心计算公式如下:
式中,A为该区域的像素数量;i和j分别是水平和垂直坐标;B是区域经过计算得到的相似矩阵;B[i,j]=1表示该点为肤色区域。
在实验中发现,只需使用以上两种计算进行筛选就能够过滤掉大部分的非人脸区域。
3 细检——候选人脸的特征检测和定位
在粗检检测结果的基础上,利用平均脸模板匹配的方法对候选队列中的图像进行是否是人脸的检测[6-7]。
本文中所用的模板是对多个人脸样本取平均构造出来的。具体构造过程如下:
(1)在选取的样本图像中用矩形框手工裁剪出人脸的区域作为人脸样本,裁剪出100幅图像,组成一组样本图像集。并将所选人脸样本转换成灰度图像,将其尺度标准化到80×80[8]。
(2)将所选人脸样本进行灰度分布标准化。
(3)将所有样本取灰度平均得到平均人脸图像,并对平均人脸图像进行灰度分布标准化,得到初步的人脸模板。如图5所示。
根据待选人脸区域的高度h、宽度w和倾斜角θ对原始人脸模板图像T(x,y)拉伸高宽比t(t=h/w)、旋转θ变换为T′(x′,y′):
然后使用新的人脸模板对待选人脸图像窗口进行匹配。算法使用以下系数作为匹配准则。假设人脸模板的灰度矩阵为T[M][N],灰度均值与方差分别为μT和σT,待选人脸图像区域的灰度矩阵为S[M][N],灰度均值与方差分别为μR和σR,则它们之间的相关系数r(T,S)为:
使用人脸模板进行匹配时,若相关系数r(T,R)超过门限值t(t=0.6),则认为通过了平均脸匹配筛选,被认为是人脸。
将检测到的人脸窗口存放在一个备选人脸列表中,在输入的原彩色图像上根据备选人脸列表中记录的每个人脸框的位置和大小将其框出,结果如图6所示。
本算法改变了传统的模板匹配方法中逐点匹配的方式,通过对分割后的肤色区域的统计分析,进一步减小搜索区域,大大加快了检测速度。具有计算量小、速度快、易于实现实时处理、不受脸部表情变化的影响、抗噪声能力强、鲁棒性好等优点。
参考文献
[1] YUILLE A,HALLINAN P,COHEN D.Feature extraction from faces using deformable templates[J].International Jour-nal of computer vision,1992,8(2):99-111.
[2] TURK M,PENTLAND A.Eigenface for recognition[J].J Cog Neurosci,1991,23(3):71-86.
[3] YANG J,WAIBEL A.Shin-color modeling and adaptation[C].Proceedings of ACCV′98,1998:687-694.
[4] PGRAF H,COSATTO E,GIBBON D et al.Multimodel sys-tem for the location heads and faces.proceedings of the Second IEEE International Conference on Automatic Face and Gesture Recognition,1996:88-93
[5] GONG Y,SAKAUCHI M.Detection of regions matching specifiedchromatic features[J].Computer Vision and Image Understanding,1995,61(2):263-269.
[6] MOGHADDAM B,PENTLAND A.Probabilistic visual learn-ing for object representation.IEEE Transactions on Pattern Analysis and Machine Intelligence,1997,19(7):696-710.
[7] MOGHADDAM B,PENTLAND A.Beyond linear eigenspaces Bayesian matching for face recognition.WECHSLER H,PHILLIPS,P J,Bruce V,et al.Face Recognition from Theory to Applications.New York:Springer-Verlag,1997,230-243.