一种由粗及精的视线追踪系统平面视线参数检测方法

2012-02-23 06:42迟健男张闯陈凯胡涛
兵工学报 2012年8期
关键词:人眼瞳孔视线

迟健男,张闯,陈凯,胡涛

(1.北京科技大学钢铁流程先进控制教育部重点实验室,北京100083;2.北京控制工程研究所,北京100190)

0 引言

视线追踪是利用机械、电子、光学等各种检测手段获取受试者当前“注视方向”的技术。在人机交互、疾病诊断[1-2]和军事领域有着广泛的应用,如基于视线方向的火控系统,可控制武器系统指向人眼的盯视方向。随着计算机视觉、人工智能技术的迅速发展,基于数字视频分析(VOG)的非侵入式视线追踪技术受到人们的广泛关注。

视线追踪技术利用眼球转动时相对位置不变的某些眼部结构和特征作为参照,在位置变化特征和不变特征之间提取视线(LOS /POR)变化参数,然后通过几何模型或映射模型获取视线方向。因此基于VOG 的视线追踪技术分为视线特征参数提取和视线估计模型建立两个组成部分,如图1所示。VOG 系统普遍使用瞳孔-角膜反射方法。提取瞳孔中心到角膜反射向量作为视线估计依据。瞳孔-角膜反射方法一般采用亮暗瞳差分方案,设置与摄像机镜头同轴的内外环近红外(IR)光源分别产生“亮瞳”和“暗瞳”现象,如图2所示,控制光源交替亮暗,产生亮瞳和暗瞳隔帧交替出现的视频序列。利用相邻亮暗瞳图像的差分使瞳孔信息相对突出,便于在整幅脸部图像中快速捕捉眼睛和在局部眼睛图像中精细准确地分割瞳孔[3-6]。

图1 视线追踪技术流程图Fig.1 Flow chart of gaze tracking technology

图2 亮瞳和暗瞳Fig.2 Bright pupil and dark pupil

亮暗瞳差分方案一般采用阈值法分割瞳孔[7-9]。由于头部及瞳孔的随机运动和红外光源的交替亮灭,亮暗瞳差分图像除保留瞳孔信息外,不可避免地残留其它干扰区域。采用阈值法分割差分图像,将会产生干扰区块。为了提高检测的稳定性,文献[10]通过设置动态阈值消除不同光照条件下背景影响。文献[11]结合眼睛外观,进行眼睛检测。文献[12]对差分图像进行形状滤波,以消除外部光线干扰。文献[13 -14]在阈值化后的差分图像中,通过支持向量机对瞳孔候选区域进行分类,以排除头部随机运动产生的干扰区域。但这种方法的识别效果过于依赖样本,对新的使用者的识别效果明显下降。

视线追踪系统平面视线参数指瞳孔中心到普尔钦斑中心的矢量。因此平面视线参数检测主要指瞳孔和普尔钦斑检测及中心精确定位。视线参数提取是视线追踪系统前端的共性问题,需满足如下要求:1)参数检测是自动的,不需使用者干预;2)参数提取过程快速准确,满足精度和实时性要求;3)参数检测过程稳定可靠,满足鲁棒性要求,能适应个体差异和环境变化。

本文立足于开发一种基于单视觉双环形主动红外光源的具有普适应用价值的低成本视线追踪系统,采用亮暗瞳差分方案,允许头部在一定范围内移动。针对系统要求和现有方法的不足,采取由粗及精的分割策略,提出了一种平面视线参数检测方法。实验结果验证了本文方法的有效性。

1 视线追踪系统

本文的视线追踪系统由双环型红外光源、滤光片、摄像机镜头、图像采集卡、CCD、帧同步卡、单片机、主机和显示屏构成。双环型红外光源产生亮瞳现象和普尔钦斑。受试者注视屏幕,由CCD 摄像机获取人脸图像,通过图像采集卡传到主机。主机通过特征参数提取和视线映射函数得到视线落点,显示在屏幕上。

图3 视线追踪系统实物图Fig.3 Gaze tracking system

2 平面视线参数检测

平面视线参数提取方法流程如图4所示。

1)采集相邻两帧图像,判断哪一帧是亮瞳图像,哪一帧是暗瞳图像。亮暗瞳图像相减获得差分图像,差分图像中瞳孔目标突出。

2)在暗瞳图像上,采用AdaBoost 方法进行人脸检测,定位人脸区域。

3)在人脸区域结合人脸五官分布的先验知识,继续采用AdaBoost 方法定位眼睛区域。

4)对差分图像进行形态学滤波,滤除杂散干扰并对瞳孔目标修形。

5)根据暗瞳图像上检测标注的眼睛区域,在差分图像相应区域采用投影法定位瞳孔区域。

6)对瞳孔区域,采用形态学分析方法排出伪目标,确定瞳孔目标。

7)对瞳孔目标进行边缘检测、边界拟合,计算瞳孔中心坐标。

8)在暗瞳图像瞳孔附近检测光源的角膜反射(普尔钦斑),并根据质心计算普尔钦斑中心。

9)根据检测到的瞳孔中心和普尔钦斑中心,计算平面视线参数。

图4 平面视线参数检测流程图Fig.4 Flow chart of planar gaze parameter detection

2.1 亮瞳和暗瞳图像判别及图像差分

准确区分亮瞳和暗瞳图像是参数提取过程正常运行的前提。本文经过大量实验,得到以下规律:1)暗瞳区域灰度值个体差异很小,是一个比较稳定的瞳孔特征。2)亮瞳区域的灰度值个体差异较大,但其与暗瞳区域的灰度差值在光源固定的前提下不会小于一个固定阈值。根据以上规律,可以从视频序列连续两帧中判断亮暗瞳图像,从而进行差分。设ImA、ImB 是连续的两帧图像,ImAij、ImBij分别是图像ImA、ImB 上的点,亮暗瞳图像判别规则如下:

式中:IB、ID 分别为亮瞳和暗瞳图像;∑|ImAij-ImBij| 为ImA 减去ImB 像素灰度值的总和,∑| ImBij- ImAij| 为ImB 减去ImA 像素灰度值的总和。亮瞳、暗瞳和差分图像如图5所示。

2.2 暗瞳图像上基于AdaBoost 的人脸检测和人眼区域定位

2.2.1 AdaBoost 人脸检测方法原理

AdaBoost 人脸检测方法由3 部分组成:

1)使用Haar 特征表示人脸,使用“积分图”实现特征数值的快速计算。

图5 亮瞳、暗瞳和差分图像Fig.5 Bright,dark pupil images and difference image

2)使用AdaBoost 算法挑选代表人脸的矩形特征(弱分类器),按照加权投票的方式将弱分类器构造为一个强分类器。

3)将训练得到的若干强分类器串联组成一个级联结构层叠分类器,级联结构能有效地提高分类器的检测速度。

AdaBoost 算法将强分类器串联在一起形成级联分类器[21]。使人脸依次通过分类器,从第1 层分类器出来的正确结果触发第2 层分类器,而从第2 层出来的正确结果将触发第3 层分类器,以此类推。AdaBoost 人脸检测过程如图6所示。

图6 级联强分类器示意图Fig.6 Sketch of cascade classifier

2.2.2 基于AdaBoost 的人脸检测

利用离线训练的人脸分类器在暗瞳图像上进行人脸检测。检测流程如图7所示。

图7 人脸检测流程Fig.7 Flow chart of face detection

AdaBoost人脸分类器由正样本和负样本训练而成,人脸的正样本多是正面标准人脸,所以对歪曲、侧面人脸检测效果不佳,容易形成漏检。为解决上述问题,本文采用旋转方法对人脸进行检测。将待检测图像旋转至正面标准图像,然后进行人脸检测,待检测完成后,又旋转回原图。具体实现过程如图8所示。图9为检测的人脸示例。

图8 旋转人脸检测流程图Fig.8 Flow chart of face rotation detection

图9 人脸检测示例Fig.9 An example of face detection

2.2.3 人眼区域定位

在人脸检测的基础上,根据人脸五官分布先验知识,缩小人眼区域的搜索范围。取人脸区域的上半部对称的左右区域为人眼潜在区域。在此区域内采用AdaBoost 算法训练人眼分类器检测人眼。为了更准确检测人眼区域,同样采用旋转方法来检测人眼。为了判断检测结果是否正确,引进了夹角A的概念。如图10 所示。

图10 人眼分类结果判断示意图Fig.10 Sketch of eye region detection

如图10(c)所示,夹角A 定义为人眼分类器输出的双眼区域中心连线与人脸平行线夹角。如图10(a)和图10(b)所示,如果夹角A 小于一定阈值,则为正确的人眼双区域;如果夹角A 过大,则为错误的人眼双区域。避免了人眼区域错误检测概率。图11(a)为图5人眼分类器检测结果,图11(b)为其在差分图像上的对应区域。

2.2.4 人眼区域形态学滤波

由于头部随机运动和环境及光源光照的变化,造成差分图像除保留瞳孔外还保留其它头部信息和杂散噪声点,并且瞳孔的形状也不规则,可能会出现毛刺或小的缺口,因此需要对差分图像中初步定位的人眼区域滤波。本文采用数学形态学的开运算对差分图像滤波并对瞳孔目标修形,设差分后人眼的区域图像为f,选取合适大小结构元素B:

2.2.5 小结

在上述步骤中,亮瞳图像减去暗瞳图像获得差分图像,突出了瞳孔目标。在暗瞳图像采取AdaBoost 方法检测人脸并确定了人眼区域,将此区域对应的差分图像区域作为瞳孔的潜在区域,以下的检测步骤都是在差分图像中进一步检测瞳孔目标。

2.3 投影法缩小人眼检测区域

以上检测的人眼范围过大,在差分图像中还包含着眉毛等干扰团块,对正确分离瞳孔目标造成影响。本文通过积分投影法[22]进一步缩小人眼区域范围,为瞳孔检测打下基础。图11(c)根据图11(a)检测结果划分的投影法待测区域。

在差分图像中,灰度值高的像素对应着瞳孔、眉毛等。用一个宽为2bj,高为2bi的窗口WD1 在待检测区域中从上往下逐行移动,求出差分图像的垂直积分投影曲线。

该曲线上n 个局部极大处对应的行所构成的集合,可能是瞳孔中心行集合。如图11(d)所示,垂直积分投影的局部极大值分别对应差分图像中的眉毛、瞳孔等高灰度值区域。眉毛位于眼睛的上面,所以在待检测区域检测出的第2 个极大值被认为是瞳孔的行值。根据人眼及其所占图像像素大小,可以判断出图像中眼睛区域,如图11(e)中方框下部区域所示。

2.4 瞳孔检测及瞳孔椭圆拟合

2.4.1 瞳孔可能区域检测

1)瞳孔可能区域判断

初步判定眼睛区域以后,还要根据亮瞳、暗瞳、差分3 幅图像中瞳孔先验知识对差分图像做滤波以得到更准确的瞳孔区域。本文根据大量的实验,发现瞳孔区域主要有以下两个特征:1)暗瞳很暗,像素灰度接近0.其他脸部区域在红外光源照射下灰度值比瞳孔区域高,即使最暗的眉毛和鼻孔由于对红外光线有漫反射作用,其灰度通常不为0.2)亮暗瞳区域具有明显的灰度差,这是其它区域所不具备的特征,也是亮暗瞳差分方案定位瞳孔的主要依据。

根据上述瞳孔区域特征进行瞳孔区域定位,可以有如下判定:差分图像中,同时满足暗瞳像素灰度小于灰度阈值thres1 和差分图像像素灰度大于差分图像瞳孔灰度阈值thres2 两个条件的像素的集合构成差分图像中可能的瞳孔区PupilC.如图12 所示。

图11 人眼区域检测过程Fig.11 Detection process of eye region

图12 瞳孔检测区域Fig.12 Detection region of pupil

2)阈值的确定

采用最大类间方差法(OTSU)[23]确定阈值thres1 和thres2.OTSU 是一种自适应阈值分割方法,它按图像的灰度特性,将图像分成背景和目标两部分。对于差分图像人眼区域,前景(瞳孔)和背景的分割阈值记为T,属于前景的像素点数占整幅图像的比例记为W0,其平均灰度为μ0;背景像素点数占整幅图像的比例为W1,其平均灰度为μ1.图像的总平均灰度记为μ,类间方差记为g.假设大小为M×N,图像中像素的灰度值小于阈值T 的像素个数记作N0,像素灰度大于阈值T 的像素个数记作N1,则有:

根据上述公式得到等价公式:

采用遍历方法得到使类间方差最大的阈值T,即为所求的阈值。由阈值分割得到瞳孔候选目标,如图13 所示。

图13 瞳孔候选目标Fig.13 Candidate target of pupil

2.4.2 瞳孔区域形状滤波

在上一步骤基础上,得到了瞳孔的潜在区域,即瞳孔可能的区域块。由于各种干扰因素的影响,除瞳孔目标外,还残存有其他干扰团块。为了分割出真正的瞳孔目标,还需进行瞳孔形状大小分析,即分析区域块的面积、周长和圆形度等指标,将明显不符合瞳孔要求的区域块舍去,从而达到分割瞳孔的目的。滤波规则如下:

1)瞳孔区域面积应小于一定的阈值thres3,大于一定的阈值thres4;

2)瞳孔区域周长应小于一定的阈值thres5,大于一定的阈值thres6;

3)瞳孔区域圆形度应大于一定阈值thres7.

上述过程公式表述如下:

圆形度是圆形目标的重要特征。其定义如下:

式中:S 为目标的面积;L 为目标的周长。由(11)式可以得出,当图像中的目标区域为圆时,R 有最大值1,而对其他任何形状区域,R 是小于1 的小数,且R值越小,目标区域的形状也就越复杂。如正方形目标区域的圆形度近似为0.785,正三角形目标区域的圆形度近似为0.615.可见,通过分析目标的圆形度,可大体获得目标区域的形状。但是由于瞳孔区域受到角膜反射区域的隐形,瞳孔区域不会是一个标准的圆形,它的圆形度也会受到影响。本文通过大量的实验,可以确定瞳孔区域的圆形度大概会大于一定阈值thres7,从而用来确定瞳孔区域。

如图14 所示,第2 块区域面积和周长都过小,不符合瞳孔区域的要求,所以第2 块区域不是瞳孔;第1 块区域圆形度过低,区域结构复杂,也不是瞳孔区域。第3 块区域面积和周长符合要求,并且圆形度也很大,所以判断第3 块区域为瞳孔区域。图15为图14 在暗瞳图像上的表示。

图14 瞳孔区域块mapDFig.14 Correct pupil spot mapD

图15 瞳孔目标区块在暗瞳图像上的表示Fig.15 Pupil target region indicated in dark pupil image

2.4.3 瞳孔的椭圆拟合

差分图像中瞳孔目标确定后,进行瞳孔边缘检测。对检测到的瞳孔边缘,采用最小二乘法拟合瞳孔椭圆,定位瞳孔中心。最小二乘法通过最小化误差的平方和寻找数据的最佳函数匹配。可以简便求得拟合目标的未知数据,并使所求数据与实际数据之间误差的平方和最小。拟合的瞳孔椭圆区域和瞳孔椭圆中心如图16 所示。

图16 瞳孔椭圆及瞳孔中心示例Fig.16 Sketch of pupil ellipse and center

2.5 角膜反射(普尔钦斑)检测与中心定位

2.5.1 角膜反射区域(普尔钦斑)检测

瞳孔区域附近必然有角膜反射,所以可以在瞳孔区域附近检测普尔钦斑。由于角膜反射区域在暗瞳图像的特征是灰度值较高,所以在暗瞳图像上,可以从灰度值初步判断可能的角膜反射区域。角膜反射潜在区域mapE 的构成由以下规则确定:

即角膜反射潜在区域是在瞳孔区域附近小于距离阈值thres9 的集合中,暗瞳图像中搜索亮度大于灰度阈值thres8 的点集。角膜反射区域可能有许多干扰点,本文使用如下判据:即普尔钦斑是尺度最大的高亮斑。去除其他小的团块,剩下的即为角膜反射团块mapF.

图17 角膜反射检测Fig.17 Corneal reflex detection

2.5.2 定位角膜反射中心

角膜反射本来为圆形,但由于干扰可能成为不规则形状。一般来讲,求角膜反射中心的方法有两种:一种是先求角膜反射的轮廓,然后对角膜反射边缘进行椭圆拟合,通过拟合椭圆的中心估计角膜反射中心[15]。另一种是通过质心估计角膜反射中心[16]。本文根据角膜反射区域应为圆形的事实,采用区域最小外接圆中心来定位角膜反射中心[17]。并将其圆心作为角膜反射的中心。角膜反射中心如图18 所示,具体算法如下:

1)在点集中任取2 个点A、B,以A、B 两点为直径作圆。

2)若以A、B 为直径的圆包容了点集的所有点,则该圆即为所求最小外接圆,否则在点集中找出距离该圆圆心最远的点C,以A、B,C 3 点作圆。

3)若以A、B、C 3 点确定的圆包容了点集的所有点,则该圆即为所求的最小外接圆;否则,在点集中找出距离该圆圆心最远点D,执行步骤4).

4)在A、B、C、D 中选2 个点,以它们为直径作圆,若能包容这4 个点,则以此2 点为A、B 转至步骤2),否则执行步骤5).

5)在A、B、C、D 中任选3 个点作圆。从中找出能包含这4 点的最小圆,则以决定最小圆的3 个点为A、B,C 转至步骤3).

3 实验结果与分析

图18 普尔钦斑中心示意图Fig.18 Sketch of Purkinje center

平面视线参数提取是视线追踪系统前端的共性问题。本文方法在视线追踪系统采用VC + +进行编程实验。图19 为3 个受试者在各种不同头部姿态下的人脸和人眼检测结果。可见在头部转动明显的情况下,本文方法也能有效地定位人脸和人眼。图20 为受试者之一双眼视线参数提取过程。图21为受试者之一双眼视线参数提取过程。可见本文方法可以有效检测不同使用者的平面视线参数。

与其他视线追踪系统视线参数检测方法比较结果见表1,可见本文方法检测效果好于文献[18]中组合亮暗瞳差分与SVM 的方法,也好于文献[19]中的组合亮暗瞳差分与Haar 分类器方法。

表1 眼睛检测方法比较Tab.1 Comparison of eye detection methods

在本文的视线追踪系统中,对不同使用者的视线估计效果进行了测试,部分结果见表2,水平方向平均精度1.5°左右,竖直方向平均精度1.9°左右。

图19 头部不同姿态的人脸和人眼检测结果Fig.19 Detection results for faces and eyes in different head positions

图20 受试者之一的平面视线参数检测结果Fig.20 Planar gaze parameter detection results of an examinee

图21 受试者之一的平面视线检测结果Fig.21 Planar gaze parameter detection results of another examinee

表2 不同使用者的视线估计结果Tab.2 Average gaze estimation accuracy for seven examinees

4 结论

人眼平面视线参数检测的鲁棒性和准确性是影响视线追踪系统精度的重要因素。本文基于单摄像机双环形红外光源视线追踪系统的亮暗瞳差分方案,提出了一种由粗及精的平面视线参数检测方法。该方法从人脸定位开始,逐步缩小人眼搜索范围,最后精确而可靠地检测瞳孔和普尔钦斑,进而提取人眼视线参数。该方法大大提高了视线参数检测鲁棒性。系统运行结果显示该方法流程能够满足视线方向检测的实时性和精确性要求。眼部特征参数检测是视线追踪系统的共性问题。该方法同样适合于其它VOG 系统。

References)

[1] Duchowski T.Eye tracking methodology:theory and practice[M].New York:Springer-Verlag,2003.

[2] Jacob R J K.The use of eye movements in human computer interaction techniques:what you look at is what you get[J].ACM Transactions on Information Systems,1991,9(3):152 -169.

[3] Morimoto C H,Koons D,Amir A,et al.Pupil detection and tracking using multiple light sources[J].Image and Vision Computing,2000,18(4):331 -335.

[4] 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,98(1):52 -82.

[5] Qiang Ji,Zhiwei Zhu,Peilin Lan.Real-time nonintrusive monitoring and prediction of drive fatigue[J].IEEE Transactions on Vehicular Technology,2004,53(4):1052 -1069.

[6] Mimica M R M,Morimoto C H.A computer vision framework for eye gaze tracking[C]∥Proceedings of the XVI Brazilian Symposkum on Computer Graphics and Image Processing,2003,3:1530-1834.

[7] Ebisawa Y,Satoh S.Effectiveness of pupil area detection technique using two light sources and image difference method[C]∥Engineering in Medicine and Biology Society,1993,San Diego,1993:1268 -1269.

[8] Ebisawa Y.Improved video-based eye-gaze detection method[J].IEEE Transactions on Instrumentation and Measurement,1998,47(4):948 -955.

[9] Morimoto C H,Koons D,Amir A,et al.Pupil detection and tracking using multiple light sources[J].Image and Vision Computing,2000,18(4):331 -336.

[10] Morimoto C,Flickner M.Real-time multiple face detection using active illumination[C]∥Fourth IEEE International Conference on Automatic Face and Gesture Recognition.Grenoble:Wiley-IEEE Press,2000.

[11] Haro A,Flickner M,Essa I.Detecting and tracking eyes by using their physiological properties,dynamics,and appearance[C]∥Proceedings IEEE CVPR 2000.Hilton Head Island,South Carolina:Wiley-IEEE Press,2000:163 -168.

[12] Qiang Ji,Xiaojie Yang.Real time visual cues extraction for monitoring driver vigilance[J].Lecture Notes in Computer Science,2001,(7):107 -124.

[13] Zhu Zhiwei,Fujimura K,Ji Qiang.Real-time eye detection and tracking under various light conditions[C]∥Proc of ACM SIGCH I Symposium on Eye Tracking Research and Applications,New Orleans:Cite Seerx,2002:139 -144.

[14] Zhiwei Zhu,Qiang Ji.Robust real-time eye detection and tracking under variable lighting conditions and various face orientations[J].Computer Vision and Image Understanding,2005,38(1):124 -154.

[15] Zhu Z,Ji Q.Novel eye gaze tracking techniques under natural head movement[J].IEEE Transactions on Biomedical Engineering,2007,54(12):2246 -2260.

[16] Wang J G,Sung E,Venkateswarlu R.Eye gaze estimation from a single image of one eye[C]∥Proceedings of International Conference on Computer Vision.Los Alamitos:IEEE Computer Society Press,2003:136 -143.

[17] Li Xiuming,Shi Zhaoyao.The relationship between the minimum zone circle and the maximum inscribed circle and the minimum circumscribed circle[J].Precision Engineering,2009,33(3):284 -290.

[18] Zhu Zhiwei,Ji Qiang.Robust.Real-time eye detection and tracking under variable lighting conditions and various face orientations[J].Computer Vision and Image Understanding,2005,38(1):124 -154.

[19] Dan H,Riad H.An improved likelihood model for eye tracking[J].Computer Vision and Image Understanding,2007,106(2-3):220 -230.

[20] 刘书桂,杨芳,陶晋.计算几何在测量技术中的应用——求解最小外接圆[J].工程图学学报,2000,(3):83 -88.LIU Shu-gui,YANG Fang,TAO Jin.Evaluation of minimum circumscribed circle form error by computational geometry approach[J].Journal of Engineering Graphics,2000,(3):83 -88.(in Chinese)

[21] Rowley H,Baluja S,Kanade T.Neural network-based face detection[J].IEEE Transactions Pattern Analysis and Machine Intelligence,1998,20(1):22 -38.

[22] Kanad T.Picture processing syetem by computer and recognition of human face[D].Kyoto:Kyoto University,1973.

[23] Otsu Nobuyuki.A threshold selection method from gray-level histograms[J].IEEE Transactions on Systems,Man and Cybernetics,1997,9(1):62 -66.

猜你喜欢
人眼瞳孔视线
要去就去视线尽头的山
那座山
瞳孔检查及常见瞳孔异常
人眼X光
瞳孔
闪瞎人眼的,还有唇
看人,星光璀璨缭人眼
当代视线
瞳孔大,决策力差
视线