基于特征提取与认证的彩色图像人脸检测

2012-09-19 10:29王昊鹏刘泽乾
电子设计工程 2012年1期
关键词:肤色嘴巴人脸

王昊鹏,刘泽乾

(中国人民解放军空军航空大学 军械系,吉林 长春 130022)

文中从实用性和易于实现的角度出发,研究了基于面部特征提取的人脸检测的方法。首先,粗布确定人脸区域,然后利用数字图像处理图像,从而确定人脸候选区域。肤色分割得到的候选区域中,有的是人脸区域,有的是非人脸区域。因此,提出利用面部特征从候选区域中去除非人脸区域,确定人脸位置。

1 人脸图像的特征提取与认证

1.1 频谱脸的识别方法

针对人脸图像的表情,少许遮掩和位移问题,可以借助小波变换和Fourier变换的特性,利用频谱脸的方法提取人脸特征[1],达到人脸识别的目的。

人脸图像频谱脸特征表达方法是:首先对人脸图像进行降维表达,即采用某一种具有一定光滑度、紧支和正交的小波函数[2],对人脸图像矩阵作若干层二维小波分解,并取低频的子图像作为其低频近似表达,然后对选择出来的低维特征图像作Fourier变换,以其振幅谱信息作为人脸图像的特征表达。简称为频谱脸(Spectroface)。

在训练阶段,选择每个人具有典型特征的一张人脸图像Xn(n代表不同的人),利用Daubechies小波函数基作m层小波分解[3],获得低频子图像 X'n;对 X'n作 Fourier变换,采用其振幅作为图像的频谱表达Sn,存入人脸数据库中作为各人的人脸识别依据。

1.2 维处理的最佳选择

频谱脸的方法采用二维小波变换[4]对人脸图像进行分解,用低频子图像作为原图像的表达,可以平滑同一个人因表情变化和少许遮掩带来的空间信息差异,并达到了降维的效果。然而,过度层数的小波分解必然会模糊不同人脸部特征。适当层数小波变换的选择对频谱脸方法是非常重要的。

Harmon[5]曾指出16×16的图像对于人脸图像是最基本的。通过实验表明,作适当的小波分解比不作小波分解有较好的识别效果,而且对于表情变化和少许遮掩的识别问题,都有较好的识别效果;分解后的低频子图像为16×16的分解层为最低有效识别分解层,低频子图像尺寸小于16×16后,分解的层数越大,识别的效果越差;对于一般的人脸图像数据库,分解后的低频子图像为32×32或64×64的分解层有最佳的识别效果。

1.3 Fisherface法

Fisherface方法又称为线性判别分析方法(Linear Discriminant Analysis, LDA)。 Fisherface方法[6]利用类别归属信息得到的特征向量,强调了不同人脸之间的差别,同时弱化了同一人脸由于光照、方向以及表情所产生的变化。这种方法的最终目的就是从高维特征空间里提取出最具有判别能力的低维特征,这些特征能帮助将同一个类别的所有样本聚集在一起,不同类别的样本尽量的分开,找到一些特征使得类间离散度和类内离散度的比值最大[6]。

2 人脸区域的粗定位

先对图像进行肤色分割,会产生一定的噪声,在确定备选人脸区域之前,需要去除这些噪声和明显的非人脸区域,这里采用数学形态学方法和连通区域的特性来确定候选人脸区域。在进行肤色检测之前,研究了滤波和光照补偿等预处理。接着,根据人脸肤色呈高斯分布的规律,通过统计和分析建立了肤色的高斯模型;另一方面又参考一种在彩色空间利用色度与亮度成非线性变换规律,对YcbCr空间进行非线性转换[7],建立了基于椭圆的肤色模型。利用这两种肤色模型分别对图像进行肤色分割,通过对比结果发现,由于后者考虑了色度与亮度存在非线性关系的现实,所以能更精确地分割出肤色区域。最后,根据人脸区域成矩形的特点,采用合适的高宽比,确定了人脸的候选区域。

2.1 基于面部特征的人脸检测算法

利用人脸特征的人脸检测是基于特征提取和基于先验知识的启发式的人脸检测方法之一。在人脸的各种面部特征中,嘴巴、眼睛、眉毛和鼻子等,都是人脸检测和识别中常用的特征[8-10]。为了排除形状和颜色都与人脸类似的“非人脸”,文章采用在色度图像中,先分别检测眼睛和嘴巴,然后利用它们呈三角形的几何特征来精确定位人脸。算法流程图如图1所示。

2.2 基于面部特征的检测原理

文中利用肤色模型分割出肤色区域,再利用肤色区域的形状特征(合适的比例)确定候选人脸区域。由于图像背景的复杂程度,或是检测出人体其它部位的皮肤区域,都有可能满足以上候选区域的特征,所以,需要进一步利用其他信息来排除误检测出来的非肤色区域和非人脸的肤色区域。这部分的检测原理如图2示。

图1 人脸算法流程图Fig.1 Flow chart of face algorithm

图2 检测原理Fig.2 Detection principle

2.3 候选眼睛的确定

在人脸定位中,人眼的准确定位具有非常重要的意义。这是因为人眼瞳孔的间距受光照或表情变化的影响最小,比较稳定,双眼中心连线的方向随人脸的偏转而偏转,可以作为图像旋转的依据。所以常被用于几何特征或人脸尺寸的归一化标准[11-12]。

2.3.1 人眼模型的建立

人眼检测的方法很多,例如边缘特征分析法、Hough变换法、投影变换法和变形模板法等。Rein-Lien Hsu等人通过同时在色度空间中建立眼睛模板进行眼睛检测。其原理如下述[13]。

色度模型:由于在色度空间内,眼睛区域的几分量比Cr分量明显要高,所以建立如下的色度空间眼睛模型:

灰度模型:在灰度图像中,利用眼睛区域中间存在黑色像素周围存在白色像素的特征,建立如下的灰度空间眼睛模板:

对色度空间的模板先进行直方图均衡化,然后再和灰度空间的模板相与,结合成一幅图像,从而能达到突出眼睛区域同时又抑制面部其他部位。

模型的改进:以上模型对眼睛特别清晰的图像检测能取得较好的效果,可是实践中,由于图像分辨率低、人脸尺寸较小或者采集图像位置远离人脸等原因,图像的眼睛区域在灰度图像中,一般会表现为人脸部分灰度最暗区域,而瞳孔周围的白色像素可能并不十分明显,导致膨胀的效果并不明显。针对这一点,对以上灰度图像模板提出了改进,摈弃了同时膨胀和腐蚀结合的方法,只利用腐蚀建立眼睛模型。具体步骤为:

l)利用如图3所示的结构算子g(x,y)对灰度图像进行腐蚀运算。

图3 对灰度图像进行腐蚀的结构算子g(x,y)Fig.3 Operator g(x,y)of grayscale image structure of the corrosion

运算的结果由图4可见,眼睛区域一般是人脸部分最暗的区域之一。

图4 腐蚀后的图像Fig.4 Corrosion image

2)分别对每个候选区域的灰度进行直方图统计得到EyeHist[K]i,下标i表示候选人脸区域的个数。

3)利用直方图统计,取每个候选区域内灰度最低的2%个像素作为眼睛的候选区域,并将其灰度置为255,其它像素值的区域设为0。并且面积很小的区域当作“假眼”去除掉,如图5所示。

4)由于鼻孔和嘴巴在灰度图像中同样会显示为较暗的区域,有时可能会成为面部区域最黑暗的区域之一,从而使真正的眼睛区域不包含在最低灰度值的2%范围内。为了避免这种情况,我们根据眼睛在人脸的位置的特点,采用迭代的算法,对人脸区域从上到下的2/5范围内检测出来的眼睛候选区域内统计候选眼睛的数量k,如图6中h表示候选人脸区域的高度。当k<2时,我们就把3/5范围内检测出来的区域在腐蚀图像中置为高亮度,然后重复步骤2);如果k≥2时,则说明至少检测出了一对候选眼睛,可以进行后续步骤。

图5 标定候选人眼Fig.5 Calibration candidate eye

图6 眼睛嘴巴在人脸候选区域的位置Fig.6 Area of eyes and mouth in the position face candidate

5)利用色度模板与灰度模板相与,当在4)的结果中像素值为255的点,同时,其在色度模板中的值大于一个闭值Tc,则认为其是候选的眼睛区域像素。尽管第5)步利用眼睛在色度空间的特性,能够排除灰度空间检测出来的一些假眼睛,但是也存在以下问题,图7是在肤色检测出的人脸候选区域内建立的眼睛色度模板,通过观察可知:①色度空间的模板中,眼睛区域并不一定是值最大的区域,眉毛,鼻子,嘴巴,耳朵及人脸边缘附近等同样会产生一些值和眼睛区域值相当的区域;②Tc的取值也是一个需要重视的问题,这就相当于在色度模板中取一个合适的二值化闭值,所以第5)步在文中并不是一个必要步骤。如果能寻找到很好的解决以上问题的途径,该步骤才能体现其独特的价值[13]。

图7 眼睛的色度模板Fig.7 Template of eyes chroma

2.3.2 眼睛对的匹配

建立眼睛模板后,会在候选区域内检测出若干候选的眼睛区域。在我们检测的图像中,由于人脸的眼睛都是成对出现的,并且成对的两只眼睛还具有一定的约束条件,所以我们在每一个候选人脸区域匹配眼睛对的过程如下:

l)按从左到右,由上致下的顺序,对每一个候选人脸区域内的候选眼睛都编上号为:1、2、3……n;

2)依次按标号顺序,把标号为i的候选眼睛作为成为eye1,保存该区域中心点的坐标为(x1,y1);

3)在与eye1同一候选人脸的区域内,把标号从j=i+1开始的候选眼睛作为eye2,保存e界2的中心坐标(x2,y2);

4)把搜索到的候选眼睛对进行保存EyePairi。使j逐次加1,然后重复步骤3),直至j=n为止。

5)使 i逐次加 l,再重复步骤 2)。

2.4 候选嘴巴的确定

2.4.1 嘴巴模型的建立

N是图像中每个候选人脸区域的像素总数,参数η是C2r的均值与Cr/Cb的均值的比,并且和 Cr/Cb是归一化到[0,255]的值,n=2。同样考虑到图像在一般情况下,嘴唇的红色度不一定会很明显,所以,我们根据嘴唇红色度对模板的影响效果,对n做了相应的调整。

2.4.2 嘴巴的分割

具体步骤如下:

l)初始化k=1,n=2k,对人脸候选区域进行计算,得到的结果如图8所示;

2)分别对每个人脸候选区域的灰度进行直方图统计得到MouthHist[K]i,下标i表示人脸候选区域的个数。

3)由图8观察,很容易发现嘴巴区域一般是人脸候选区域中最亮的区域,所以采用与检测眼睛相似的方法,利用直方图统计,取每个候选区域内灰度最高的1%个像素作为嘴巴的候选区域,并将其灰度置为255,其它像素值的区域设为0。

4)接着对图像高度1/2以下,距离底部1/6以上的范围,统计检测出来的目标数l,当 l=0时,则使n=2k+1,并使该范围之外搜索出来的区域设为 0,返回前面2),继续统计,直到Rhl>0为止,然后对图像分割出来的候选嘴巴保存成Mouth。

5)对分割出来的结果计算每个连通区域的面积,把面积很小或特别大的区域作为噪声去除,把剩下的连通区域作为候选嘴巴,并保存其中心的坐标(xi,yi)。

图8 嘴巴模板Fig.8 Mouth template

2.5 三角形匹配眼睛和嘴巴

基于模板匹配的方法一般是在图像灰度的层次上直接比较目标模板和候选图像区域之间的相似性,而基于特征的匹配方法是比较从图像中抽取的一定特征的相似性,对人脸检测而言,特征包括眼睛、鼻、嘴等。模板匹配方法具有简单、直观的特点,与特征匹配方法相比具有较强的适应性,原因在于通常特征抽取依赖于图像的质量,易受噪音影响而不稳定[12]。文中针对特征提取的不稳定,对已经提取的人脸特征,结合模板匹配的方法来确定人脸的,并且为了适应图像尺寸不一样,眼睛模板和三角形模板都是可变模板。眼睛和嘴巴在人脸面部的构造是稳定且明显的特征,于是本文用眼睛和嘴巴构成三角形的特征来最终精确定位人脸。

三角模板如图9所示,模板与上式中EyePair_y,Mouth_y分别指候选眼睛对连线中点和候选嘴巴中心点的纵坐标值,第一个式子约束了嘴巴的位置必须在眼睛的下方;dis_EyeMouth是眼睛对中心点连线的中点到嘴巴区域中心点的距离,Rl,Rh分别是比例的下限,约束了嘴巴和眼睛的相对距离,它们不能太分散也不能太集中;是|angle_EyeMouth|眼睛连线中点与嘴巴中心点连线和眼睛连线中垂线的夹角,angle是夹角的上限,式(3)约束了嘴巴与眼睛连线的中垂线不能偏离太大。

图9 三角模板Fig.9 Triangle template

3 人脸识别

3.1 人脸识别的系统结构

人脸识别的功能框图如图10所示。

图10 人脸识别功能框图Fig.10 Face recognition function diagram

根据上述人脸识别系统流程图,进行人脸识别的大致过程为:对采集到的人脸图像先进行人脸检测判断图像中是否存在人脸,如无人脸则整个识别过程结束;否则,随即进行人脸的定位或者跟踪以确定人脸在图像中的位置尽可能精确地定位并提取出人脸。然后对人脸图像进行灰度变化和大小归一化预处理,提取出人脸图像进行人脸识别。一般通过特征提取获得人脸信息进行身份验证,整个人脸识别过程随即结束。

3.2 人脸图像的特征提取与识别

本实验的结果如图11、12所示。

图11 原始图像Fig.11 Original image

图12 识别结Fig.12 Recognition results

3.3 结果分析

文中对一百多张图片进行了试验。这些图片包括黄肤色和白肤色,正面无旋转人脸,上下左右偏转人脸,2人以上5人以下多人脸和5人以上群体的多人脸。表1说明了试验采用人脸图像的分类和检测结果的正确率。

表1 试验图像的统计Tab.1 Statistics of test image

根据以上结果可以做出如下分析并得出相关结论:

1)该算法对肤色能做到较精确的分割,当图像具有类肤色的背景时,也能较准确地分割出皮肤区域;

2)该算法对检测的图像有一定的约束性,如图像中必须能较清晰地观察到眼睛和嘴巴,不然只能分割出皮肤区域,但不能确定是否人脸;

3)当图像中人脸较多而不容易检测出眼睛和嘴巴的时候,该算法中的肤色分割可以较准确地确定候选人脸区域;

4)由于眉毛和眼睛在灰度图像中显示的灰度值较相近,所以在检测眼睛时,经常会检测出眉毛作为候选眼睛,所以个别情况构造的三角形可能会以眉毛作为三角形的一个点;

5)检测眼睛和嘴巴的时候,一般会检测出其附近的与它们特性相似的点,当用三角形匹配时,会在同一候选区域匹配到基本重合的多个三角形。针对最后两点,我们可以通过判断重叠三角形是否属于同一候选人脸区域及它们重叠的区域大小,判断其是否为同一个人脸。

4 结 论

从建立自动人脸识别系统的两个主要技术环节,人脸图像的检测与定位和人脸图像的特征提取与识别入手,深入研究了当前国内外在人脸检测和人脸识别方面的研究进展。通过仔细分析各种人脸检测和人脸识别方法的优缺点,提出了一种人脸识别的新方法。试验证明本文提出的人脸识别的方法是合理的,具有一定的实用价值和理论价值。

[1]彭群生,鲍虎军,金小刚.计算机真实感图形的算法基础[M].北京:科学出版社,1999.

[2]李建平,唐远炎.小波分析方法的应用[M].重庆:重庆大学出版社,1999.

[3]秦前清,杨宗凯.实用小波分析[M].西安:西安电子科技大学出版社,1994.

[4]崔景泰,程正兴.小波分析导论[M].西安:西安交通大学出版社,1995.

[5]Terrillon J C.Comparative performance of different skin chrominance models and chrominance spaces for the automatic detection of human faces in color images[C].France,Fourth IEEEInter-national Conference on Automatic Face and Gesture Recognition,2000:26-30.

[6]Jones M M,Rehg J M.Statistical color models with application to skin detection[C]//Proc.IEEE Conf.Comp uter Vision and Pattern Recognition,1999:274-280.

[7]Phung S L,Chai D,Bouzerdounm A.A novel skin color model in YCrCb color space and its application to human face detection[C].USA:IEEE International Conference on Image Processing (ICIP/2002),2002:22-25.

[8]Horprasert T,Yacoob Y,Davis L S.Computing3-D head orientation from a monocular images[C]//Proc.Int’l Conf.Automatic Face and Gesture Recognition,1996:242-247.

[9]Nikolaidis A,Pitas I.Facial fature extraction and determination of pose[J].Pattern Recognition,2000(5):1783-1791.

[10]Yow K C,Cipolla R.Feature-based human face detection[J].Image and Vision Computing,1997,15(2):713-735.

[11]Brunelir,Pogglot.Feature recognition:Features versus templates[J].IEEE Transactions on pattern Analysis and Machine Intelligence,1993,15(10):1042-1052.

[12]Hafed Z M,Levine M D.Face recognition using the discrete cosine transform[J].International journal of Computer Vision,2001,43(3):167-288.

[13]Hsu R L,Mottaleb M A,Jain A K.Face detection in color images[J].IEEE Trans.Pattern Analysis Machine Intelligence,2002,24(5):696-706.

猜你喜欢
肤色嘴巴人脸
有特点的人脸
一起学画人脸
嘴巴嘟嘟
Conversation in a house
人的肤色为什么不同
嘴巴不见了
为什么人有不同的肤色?
好好的嘴巴
三国漫——人脸解锁
我是“漏嘴巴”