法律状态公告日
法律状态信息
法律状态
2023-06-16
未缴年费专利权终止 IPC(主分类):G06F 3/01 专利号:ZL2016104094789 申请日:20160608 授权公告日:20190514
专利权的终止
2019-05-14
授权
授权
2016-11-30
实质审查的生效 IPC(主分类):G06F3/01 申请日:20160608
实质审查的生效
2016-11-02
公开
公开
技术领域
本发明涉及视线跟踪技术领域,具体涉及自然光下基于投影映射校正和注视点补偿的视线跟踪方法。
背景技术
视线跟踪改变了人类与机器设备互动的方式,成为新技术或系统创意的源头,拓展了多种信息系统的用途,是目前人机交互研究的重要领域。
视线跟踪方法主要分为接触式方法和非接触式方法。基于摄像的非接触式方法对用户更为友好,具有自然和直接的优势,是目前视线跟踪作为人机交互方式研究的主流方向。基于摄像的非接触视线跟踪方法中,自然光下的视线跟踪算法无需其他辅助光源,能更好的进行推广应用。然而,该方法的主要难点在于:(1)在没有辅助红外光源下图像存在光照变化以及低对比度的情况下,如何精确的提取眼动特征信息;(2)在没有普尔钦斑点辅助下,寻找能代表眼睛运动且具有鲁棒性的眼动向量;(3)解决头部运动下眼动向量随之变化导致无法准确的进行注视点估计问题。
发明内容
本发明公开了一种自然光下基于投影映射校正和注视点补偿的视线跟踪方法,在自然光源下,通过提取虹膜中心、眼睛内外角点以及嘴角点,建立基于虹膜与眼角点信息到屏幕注视点的映射模型。该方法能有效消除头部自由运动对视线估计结果的影响,同时硬件需求上只需一个单目摄像头,提高了普通摄像头下的视线跟踪的精度和实时性。
本发明通过以下技术方案来实现:
一种自然光下基于投影映射校正的视线跟踪方法,该方法需要一个普通摄像头,无需额外光源辅助,包含步骤:(1)摄像机采集图像,进行人脸定位和眼动信息提取。
(2)眼动信息校正:通过眼睛角点,嘴角点信息计算投影映射矩阵,对虹膜中心、眼睛内外角点位置进行校正。
(3)初步注视点估计:利用经校正后的虹膜中心位置、眼睛内外角点位置构成二维眼动向量,并建立二维眼动向量到屏幕注视点的映射关系,根据实时的二维向量计算出实时屏幕注视点。
(4)注视点补偿:采用支持向量回归模型进行注视点补偿,修正头部运动带来的注视点偏差,从而得到最终的注视点估计结果。
上述方法中,所述步骤(1)中包括:
a.采用基于Adaboost的人脸检测算法的对采集图像进行人脸定位,其次采用基于局部二进制特征回归方法(Face Alignment via Regressing Local Binary Features)确定眼睛内、外角点以及嘴角点的感兴趣区域;
b.依据不同角点特征的具体生理形状分别进行精确定位,通过Fast角点检测和筛选方法得到眼睛内角点和嘴角点定位,并采用曲线拟合方法定位眼睛外角点;
c.根据眼睛内外角点位置确定眼睛图像,接着提取眼睛图像的梯度特征,定位虹膜搜索起始点;其次,从搜索起始点出发,通过滑动窗口对虹膜边缘进行搜索,最后根据椭圆拟合方法定位虹膜中心。上述方法中,所述步骤(2)中包括:
以距离屏幕中点设定距离处的位置点为头部标定位置,记头部处于头部标定位置且正面注视屏幕时获取的人脸图像为标定图像,计算根据所述步骤(1)定位到的眼睛外角点和嘴角点位置与标定图像中对应的特征点位置之间的投影映射矩阵,利用该投影映射矩阵对实时获取的眼睛内外角点位置、虹膜中心位置进行校正。
上述方法中,所述步骤(3)中包括:
a.根据所述步骤(2)校正后的左右虹膜中心位置,分别与校正后的左右眼睛内外角点位置构成4个眼动向量,叠加后得到校正后的二维眼动向量;
b.头部在标定位置处静止不动时,眼睛注视屏幕上的标定点,计算校正后的二维眼动向量,根据该向量与标定点的对应关系计算多项式映射模型的参数;实时获取校正后的二维眼动向量,结合多项式映射模型,计算出初步注视点估计结果。
上述方法中,所述步骤(4)中包括:
训练支持向量回归模型,输入为眼睛内角点间线段中点在图像上的坐标与标定图像相同点的偏移,左右眼内外角点间在图像上的距离与标定图像对应的眼睛内外角点间距离的比值以及图像上内角点间的连线与标定图像内角点间连线之间的角度差;输出为对应的注视点估计结果与真实标定点间的位移偏差;利用支持向量回归模型进行注视点补偿,从而得到最终的注视点估计结果。本发明的优点与积极效果在于:
1.自然光下缺乏有效的参考点,双眼数据代表了眼睛运动信息。本发明采用左右眼虹膜中心和眼睛内外角点构造眼动向量,能更有效的代表眼动信息。利用滑动窗口搜索方法定位虹膜边缘,提高了虹膜中心定位的精度。
2.本发明通过投影映射校正方法对虹膜中心等特征点位置进行校正,同时采用支持向量回归模型进行注视点补偿,能有效降低头部运动对眼动特征的影响,视线跟踪方法具有更好的抗头部运动干扰能力。
3.该方法计算量少,硬件只需要一个摄像头。
附图说明
图1是本发明实施方式中显示屏与摄像头的布置示意图。
图2是本发明实施方式中视线跟踪方法的流程示意图。
图3是本发明实施方式中滑动窗口示意图。
图4a、图4b是本发明实施方式中屏幕上的两种标定点分布图。
具体实施方式
下面结合附图对本发明的具体实施方式作进一步说明。
如图1,本发明硬件配置上需要一个普通摄像头,位于屏幕中心正上方,实时地捕捉人脸图像。
如图2,本发明的具体实施步骤如下:
步骤一、实时采集图像,提取眼动特征信息;
步骤二、动态眼动向量校正;
步骤三、构造多项式映射模型;
步骤四、训练注视点补偿模型进行注视点计算。
其中步骤一的具体实施为:
1.人脸特征点初定位
从摄像头获取人脸图像,采用基于局部二进制特征的形状回归方法(Face Alignment via Regressing Local Binary Features)进行人脸特征点的初定位,得到眼睛轮廓、嘴角点的初步位置。其次,在初步定位的基础上,分别得到眼睛区域和嘴巴区域作为定位感兴趣区域。
2.眼动特征提取
眼动特征信息为眼睛内角点特征,眼睛外角点特征,嘴角点特征以及虹膜中心。具体实施步骤为:
2.1眼睛内角点定位
首先由初定位得到的眼睛内角点候选点确定内角点感兴趣区域,对该区域进行FAST角点检测得到角点候选点;本发明认为候选点聚集处的点更有可能为眼角点,根据每个候选点周围的候选点个数进行筛选,并依据眼角点在眼睛中的相对位置关系,快速精确的定位到眼睛内角点。
2.2眼睛外角点定位
首先通过自适应阈值分割分离出眼睛与背景区域,从而提取到眼睛轮廓。对上下眼睛轮廓进行曲线拟合,并计算两条曲线拟合的交点,靠左边的交点即为眼睛外角点定位。
2.3嘴角点定位
首先提取嘴巴区域图像在Lab色彩空间中的a分量,分割出嘴唇区域。其次,确定嘴唇区域最左和最右的点为嘴角点初步位置,并对该区域进行OTSU分割,对分割后的图像进行局部角点检测,进行孤立点滤除后,认为候选点最左或最右的候选点为嘴角点位置。
2.4虹膜中心定位
在部分光照下,虹膜与巩膜间的对比并不是很明显,传统的边缘检测算子难以精确检测出虹膜边缘。其次,光照变化也导致二值化方法难以完整的分割出虹膜区块。因而,本发明提出一种基于滑动窗口的虹膜边缘搜索的方法,能在眼睛运动和姿态变化的情况下定位到虹膜边缘,从而得到虹膜中心定位。
a.搜索起始点定位
首先提取原眼睛图像的红色分量图像,并对该图像进行形态学的开操作以减少反射光斑的影响;其次,计算图像预处理后的眼睛图像的梯度特征,并寻找最多梯度向量经过的点,设为搜索起始点。由于该方法直接通过梯度特征进行计算,在图像模糊、眼睛变形严重等情况均能得到很好的定位结果。
b.虹膜边缘搜索与虹膜中心定位
如附图3所示构造滑动窗口,由两个连续的同样大小的矩形构成,分别表示左窗口1、右窗口2,表示滑动窗口3的中心。滑动窗口从虹膜梯度中心出发,向四周出发搜索虹膜边缘。根据眼角点间的连线可以判断眼睛的旋转角度θ0,从而设置虹膜轮廓的搜索范围,避开上下眼睑遮挡的部分,以免造成轮廓拟合误差。
统计窗口内的像素平均值,并定义滑动窗口的能量:
其中,Ii以及Ij(i=1,2,..N,j=1,2,..N)分别为左右窗口的像素点的像素值,N为窗口中的像素点个数。θ为当前滑动窗口搜索方向。设定搜索方向后,从搜索起始点出发,得到搜索窗口的能量函数曲线。寻找该函数曲线的最大波峰,即虹膜边缘位置。
利用滑动窗口搜索到虹膜的精确轮廓点集后,通过最小二乘法进行椭圆拟合,椭圆中心即为虹膜中心位置。
其中步骤二的具体实施步骤为:
1.基于双眼数据的眼动向量构造
首先根据左右虹膜中心与左右内外角点一共构成4个眼动向量,构成的向量集:
其中,vil和vol分别表示左眼虹膜中心Il与左眼内外角点位置Cil,Col构成的眼动向量,vir和vor分别表示右眼虹膜中心Ir与右眼内外角点位置Cir,Cor构成的眼动向量。在头部自由运动的情况,眼睛随着头部运动而运动,直接由眼角点与虹膜中心构成的向量也随之发生变化。因此,本发明采用双眼数据构造新型眼动向量来表征注视点,并通过对双眼数据的校正来消除不同头部姿势带来的影响。双眼数据构成的眼动向量如下式所示:
2.动态眼动向量校正
在视线估计的过程中,头部深度运动会导致眼睛图像出现形变,偏转、旋转、俯仰运动会导致眼睛图像出现旋转以及形变,通过眼睛图像提取的眼动向量在头部运动的情况下直接进行注视点映射会造成较大的误差。因而,本发明提出一种基于投影映射的方法对眼动向量进行动态校正。
首先,根据步骤一实时捕捉的人脸图像提取的眼角点、嘴角点特征点4个点在图像坐标系的坐标。记实时捕捉的特征点坐标为(x1,y1),头部处于头部标定位置且正面注视屏幕时获取的人脸图像上特征点的坐标为(x2,y2),二者存在投影映射关系如下:
其中,s同样为参数,Hp为3×3矩阵,记为:
对矩阵Hp进行归一化,使得h33=1,则可得:
则实时捕捉的特征点坐标可以通过如下公式进行映射校正:
将实时捕捉的眼睛外角点以及嘴角点4个特征点与对应的头部处于头部标定位置且正面注视屏幕时获取的人脸图像上特征点位置代入上式,构成8个线性方程。因而,通过求解方程,可以计算得当前头部位置姿态时,对应于标定位置时的投影变换矩阵Hp。则头部运动后虹膜中心在图像上成像的位置同样可以根据投影变换矩阵Hp进行校正:
根据上式计算出校正后的虹膜中心位置其中,符号代表特征点或眼动向量I经投影映射校正后的结果。因此,同理可以得到眼睛内角点、外角点在标定位置处的位置,则校正后的眼动向量可以表示为:
同时,由于校正后的眼睛内外角点与标定位置相同,即内外角点的距离保持不变。因而,在保持信息不变的情况,可以将本发明眼动向量简化为:
即得到校正后的眼动向量。
其中步骤三的具体实施步骤为:
1.如附图4a所示设置屏幕上3×3的9个点作为标定点。其次,选取带标定的映射函数如下:
其中(vx,vy)为校正后的眼动向量,(Px,Py)为注视点估计结果,ai(i=0,1,...7),bi(i=0,1,...6)共15个未知参数。
2.用户分别注视9个标定点,通过步骤一实时提取眼动特征,并通过步骤二构造眼动向量并进行校正。每个标定点提取的眼动向量可以分别构造2个等式方程,共18个方程,通过最小二乘法进行参数求解。
其中步骤四的具体实施步骤为:
经过校正后的眼动向量进行多项式映射后得到的估计结果与实际注视点位置间存在偏差,该偏差与头部运动有关。本发明采用支持向量回归来补偿这个误差。输入样本向量X=[vx,vy,Mx,My,Rl,Rr,θΔ],输出向量为Y=[Yx,Yy]。其中,v=(vx,vy)为校正后的眼动向量,M=(Mx,My)为内角点间线段中点在图像上的坐标与标定位置相同点的偏移,Rl和Rr分别为左右眼内外角点间在图像上的距离与标定图像对应的眼睛内外角点间距离的比值。θΔ为图像上内角点间的连线与标定图像内角点间连线之间的角度差。
1.训练数据构造。
如附图4b所示,实验者在注视屏幕中指定的标定点时,在保持注视同一个点的同时进行头部运动,根据步骤一实时采集特征信息,并构成输入样本向量X。与此同时,根据步骤二通过对眼动向量进行校正,进而通过步骤三获取的多项式映射模型得到注视点估计值,其与真实的坐标值的位移偏差为(Δx,Δy)。分别构造两个训练集:{(X1,Δx1),…,(Xi,Δxi),…,(XN,ΔxN)},{(X1,Δy1),…,(Xi,Δyi),…,(XN,ΔyN)}。其中,Xi(i=1,2,...,N)为不同的样本向量,(Δxi,Δyi)(i=1,2,...,N)为不同样本向量对应的注视点位移偏差。N为样本个数。两个训练集分别进行训练。
2.模型参数选择。本发明的支持向量回归模型采用RBF径向基函数,能对复杂关系进行回归。其次,采用网格搜索法进行参数寻找,主要搜素参数为平衡参数C,损失函数参数ε以及核参数γ。
3.分别根据两个训练集进行支持向量回归训练,得到最优的回归模型,通过实时的输入向量X可以计算得相应的注视点补偿偏移量(Yx,Yy)。
4.注视点估计。经过步骤三的多项式映射方程计算的注视点估计值为(Px,Py),与注视点补偿模型计算所得的偏移量(Yx,Yy)叠加,则最终的注视点估计结果为:
(Sx,Sy)=(Px,Py)+(Yx,Yy)。
机译: 图像特征跟踪方法,视线跟踪方法和注视点跟踪方法
机译: 飞机的对准缺陷补偿方法,包括确定设备的理论视线与飞机视线之间的间隙即定位误差,并进行校正操作以消除误差。
机译: 基于结构化光,器件和存储介质的视线跟踪方法和装置