《电子技术应用》
您所在的位置:首页 > 嵌入式技术 > 设计应用 > 基于极小值区域的人眼定位新算法
基于极小值区域的人眼定位新算法
来源:微型机与应用2011年第20期
刘 莎
(仰恩大学 计算机与信息学院 计算机系, 福建 泉州 362014)
摘要: 提出了一种基于灰度图像极小值区域的快速鲁棒的人眼自动定位方法。首先,利用极小值区域进行眼睛粗定位,得到一组候选眼睛位置;再利用眼睛对的几个自然约束条件进行粗筛选;最后利用PCA方法验证眼睛对,得到唯一的候选眼睛对。对BioID图像集进行测试,结果表明,利用该算法进行眼睛定位的成功率和定位精度较高。
Abstract:
Key words :

摘  要: 提出了一种基于灰度图像极小值区域的快速鲁棒的人眼自动定位方法。首先,利用极小值区域进行眼睛粗定位,得到一组候选眼睛位置;再利用眼睛对的几个自然约束条件进行粗筛选;最后利用PCA方法验证眼睛对,得到唯一的候选眼睛对。对BioID图像集进行测试,结果表明,利用该算法进行眼睛定位的成功率和定位精度较高。
关键词: 眼睛定位; 极小值区域; 主成分分析

     人眼定位已成为计算机视觉及相关领域中的关键技术,在自动控制、安全保障、交通安全、医疗、刑侦等领域具有广泛的应用前景和潜在的经济价值。人眼定位作为人脸识别技术的基础以及其广泛的应用前景,其研究价值显而易见。近年来,国内外学者提出了许多人眼定位方法,如基于主动红外光的方法[1]、基于灰度投影的方法[2]、广义对称法[3]、几何特征模板匹配法[4]和基于色彩信息的方法[5]。然而,与其他人脸分析技术(人脸检测、人脸识别)类似,人眼定位需要最大限度地适应人脸的各种变化,以提高算法的鲁棒性。这些变化包括:各种肤色和种族差异,各个方向上的转动,尺寸、表情和光照条件上的变化,遮挡,某些特征(如眉毛、眼镜等)的出现或缺失等。此外,算法的计算量大小也是一个重要的评价标准,它影响算法的可应用范围。
    本文重点探讨了一种具有较快运行速度,能在不同人种和肤色、有大幅度转动或侧像、有表情变化、有部分遮挡、图像质量差等各种人脸中保持稳定的人眼定位算法。在分析、消化现有的人眼定位研究成果的基础上,提出了一种基于极小值区域的人眼定位算法。该算法既降低了计算复杂度,又能够有效地定位眼睛,而且还可以在一定程度上适应图像的尺度、光照和旋转角度变化,排除眼镜的干扰。本算法首先利用极小值区域进行眼睛粗定位,得到一组候选眼睛位置,再利用眼睛对的几个自然约束条件进行粗筛选,最后利用PCA验证眼睛对,得到唯一的候选眼睛对。该眼睛定位算法的工作流程图如图1所示。

1 基于极小值区域的人眼粗定位
    在人脸灰度图像中,眼睛最显著的特点是眼球的灰度值比周围区域低很多,极小值区域正反映了单只眼睛局部图像的这个特点,因此本文参考了最稳定极值区域MSER[6],提出了极小值区域MER(Minimum External Region)方法,并将这一方法应用到人眼定位中。
1.1 极小值区域的定义
    定义1(区域的定义) 区域Q是图像I的一个连续的子集,并且Q的像素之间满足邻域关系(如4邻域关系、8邻域关系等),该邻域关系满足可传递性。
    定义2(区域外边界的定义)区域Q外边界是满足如下条件的点的集合,这些点不属于区域Q,但是和区域Q中至少1个像素满足非传递的邻域关系。
    定义3(极小值区域的定义)极小值区域Q指的是区域中所有像素的灰度值均小于它的外边界的所有像素的灰度值。如果区域Q中所有像素的灰度值均小于或等于G,则G被称为是极小值区域Q的一个临界值,记为MER(G)。
    假设图像I中的每个像素点灰度值都在区间[0,255]内,由定义可知,临界值为0的MER就是像素值为0的黑点(或其连通域),临界值为255的MER就是图像本身,即MER(255)=I。另外,对于G<255,MER(G)总被某个MER(G+1)包含,如果把这种包含关系定位为父子关系,则图像I的所有MER根据包含关系可以构成一棵多叉树,记为MER-T。因为所有像素点灰度值都在区间[0,255]内,所以MER-T的最大高度为256。
1.2 极小值区域算法实现
    要想利用极小值区域进行眼睛粗定位,首先要建立输入图像的MER-T。它的基本思想是:假设一幅图像I,像素点集组成集合∧={x1,x2,…,xN},首先,把所有像素按照像素的灰度值从低到高排序,即I(x1)≤I(x2)≤…≤I(xN);然后,从前往后(像素值从低到高)遍历像素,先找出中间图像It(∧t={x1,x2,…,xt}?奂∧,t=1,2,…,N,It=I/∧t称为中间图像)的所有极小值区域,直到IN=I,这样I的所有极小值区域便找到了。由分析可知,并查集[7]适合描述这一问题,MER-T建立的详细算法见参考文献[7]。
1.3 极小值区域椭圆拟合并提取候选眼睛区域
    由于眼睛区域的形状类似椭圆,因此,在研究极小值区域的几何性质时,重点研究其椭圆性质,根据椭圆的二阶矩(比较容易测量的条件)计算出椭圆的长短轴的长度和方向角(不易测量的参数)。
    在上述输入图像MER-T的基础上,根据眼睛本身的自然约束条件,可以比较容易确定候选眼睛。眼睛本身有许多自然约束条件,这里选用下述3个约束条件:
    (1) 尺寸约束:每只眼睛的尺寸应该在一定范围内(与人脸区域大小满足一定比例);
    (2) 位置约束:每只眼睛的水平坐标应该在一定范围内;
    (3) 形状约束:每只眼睛的拟合椭圆应该是横向的,即椭圆的长轴在x方向上。
    根据以上约束条件,在MER-T的所有节点中筛掉不合适的候选极小值区域,在剩下的所有MERs里,如果有直接或者传递的父子关系,则去除父MER保留子MER,最后剩下的就是眼睛粗定位的结果,即候选眼睛。图2给出了一个MERs筛选过程的示意图。

 

 

2 对粗定位结果进行筛选
2.1基于自然约束条件的候选眼睛对提取算法

    要提取所有可能的候选眼睛对,首先要将前面算法得到的单只眼睛区域组合成为眼睛对区域。
    要排除错误眼睛对的干扰,一个简单的方法是利用眼睛对的自然约束条件。下面列出3个简单有效的约束。
    (1)双眼间距约束。这里考虑的是水平间距和垂直间距。这两种间距的绝对值应该被约束在一定范围内。
    (2)双眼位置约束。因为单独考虑了间距约束,所以这里的位置约束可以只考虑双眼中心点(位于鼻梁附近)的位置。显然,这个中心点应该大体在人脸图像垂直的对称轴上,而且不能太偏下,因为太偏下意味着感兴趣区域(即以双眼的两个中心点和嘴部中心点为特征点确定的矩形区域)很可能不完整,影响人脸识别后序工作的准确性。
    (3)双眼灰度差约束。瞳孔灰度值低,且灰度差在一定范围内。
    根据上述约束条件,为每一个候选眼睛对计算可信度。首先从候选眼睛对区域的质心坐标(xl,yl)和(xr,yr)中提取5维特征Fi:
 
其中,d=5,Σ是特征Fi的协方差矩阵,μ是特征Fi的均值。将所有候选眼睛对按照可信度Ci降序排列,寻找正整数t,使得前t个候选眼睛对的可信度之和大于所有眼睛对的可信度之和的95%。这样,前t个候选眼睛对被筛选出来进入下一层的筛选。
2.2 PCA验证
    经过筛选,许多错误的候选眼睛对已被排除了,但是眉毛、眼镜框、鼻孔等干扰仍存在,经PCA[8]验证得到的重建信噪比最大的候选眼睛对作为最终的定位结果。
3 实验结果分析
3.1 度量标准

    通常,用于评价眼睛定位的指标有定位成功率和定位精度两个。在描述定位精度时, JESORSKY O等[9]建议利用式来计算眼睛定位的下称定位误差,并把err<0.25作为眼睛定位成功的标准。由于两眼之间的距离约等于一只眼睛的宽度的两倍,因此,该标准相对于双眼的定位偏差均必须小于一只眼睛宽度的一半。显然,这个标准非常宽松,按此标准得到的眼睛位置也不适合于人脸图像的几何归一化。由于虹膜的半径r约等于眼睛宽度的1/4,因此将该标准提高一倍,即将err<0.125作为衡量眼睛定位成功与否的标准。显然,该标准实际上又相当于:若双眼都定位在各自的虹膜上,则对于一幅人脸图像而言,本次眼睛定位就算成功。
3.2 测试结果
    为了检验本文提出算法的有效性,采用BioID人脸库[10]进行实验。
    实验1 检验所节提出的基于极小区域的眼睛粗定位算法的有效性。实验用1 439个样本作为输入(数据库原有1 521张图像,图像分辨率为384×286,剔除AdaBoost人脸检测算法检测不出来的82张人脸样本),对该算法进行测试,以err<0.125作为正确定位门限,实验结果正确率为95.34%。
    图3给出了用极小值区域成功粗提取单只眼睛的BioID图像示例。从图可以看出,在各种光照、姿态和表情条件下,而且在闭眼、佩戴眼镜(眼镜反光、佩戴眼镜后,瞳孔等区域会变得不清晰)等情况下,本文提出的极小值区域检测算法都能很好地提取出眼睛区域。

    实验2 对本文提出的人眼定位算法总体进行检验,正确率为86.59%。图4给出了BioID图像集中用本算法实现双眼定位的图像示例。从图4中可以看出,对于光照情况复杂、佩戴饰物等情况,本文算法都能够获得非常高的双眼定位成功率和定位精度。

    本文所提出的眼睛定位算法的复杂度低,运行效率高。表1给出了本算法在3.4 GHz CPU的PC机上用Matlab7.1和Visual C++混合编程[11]实现,完成BioID人脸数据库(图像分辨率为384×286)中眼睛定位所需的平均时间。从表1可以看出,其眼睛定位平均时间约为0.1 s。


    眼睛定位是建立人脸自动分析系统的一个非常关键的步骤,而人脸图像质量的多变性,使得它成为一个具有挑战性的技术难题。针对灰度图像的眼睛定位问题,本文提出了一种基于极小值区域的快速眼睛定位算法。该算法首先利用灰度极小值区域和先验知识取出眼睛候选区域,然后利用自然约束条件从中选出可能的眼睛对,最后利用PCA算法挑选出一对人眼,完成人眼验证。对BioID图像集进行测试,结果表明,本文所提出的方法既降低了计算复杂度,又能够有效地定位眼睛,而且还可以在一定程度上适应图像的尺度、光照和旋转角度的变化,排除眼镜的干扰,具有良好的鲁棒性。
参考文献
[1] ZHU Z, FUJIMURA K, JI Q. Real-time eye detection and tracking under various light conditions[C]. In Proceedings  of ETRA: Eye Tracking Research & Applications Symposium, 2002:139-144.
[2] ZHOU Z,GENG X.Projection functions for eye detection[J].  Pattern Recognition, 2004,37(5):1049-1056.
[3] REISFELD D, YESHURUN Y. Robust detection of facial features by generalized symmetry[C]. Proceedings of the International Conference on Pattern Recognition, 1992:117-120.
[4] YUILLE A L, COHEN D .S, HALLIMAN P W. Feature   extraction from faces using deformable templates[C].Proceedings of Computer Vision and Pattern Recognition, 1989:104-109.
[5] HSU R L, ABDEL-MOTTALEB M,JAIN A K.Face detection in color images[J]. IEEE Transactions on Pattern  Analysis and Machine Intelligence, 2002,24(5):696-706.
[6] MATAS J, CHUN O, URBAN M, et al. Robust widebaseline stereo from maximally stable extremal regions[J].Image  and Vision Computing, 2004,22(10):761-767.
[7] 傅清祥,王晓东.算法与数据结构[M].北京:电子工业出 版社, 1998.
[8] YANG J, ZHANG D, FRANGI A F, et al. Two-dimensional PCA: a new approach to appearance-based face representation and recognition[J].IEEE Transactions on Pattern Analysis and Machine Intelligence. 2004,26(1):131-137.
[9] JESORSKY O, KIRCHBERG K J, FRISCHHOLZ R W. Robust face detection using the Hausdorff distance[C]. Proceedings of the Third International Conference on Audioand Video Based Biometric Person Authentication, 2001:90-95.
[10] The BioID Database.[2011-08-20].http://www.bioid.com/downloads/facedb/index.php.
[11] 董维国. 深入浅出MATLAB7.X混合编程[M]. 北京:机 械工业出版社,2006.

此内容为AET网站原创,未经授权禁止转载。