锐单电子商城 , 一站式电子元器件采购平台!
  • 电话:400-990-0325

《A Single Camera Eye-Gaze Tracking System with Free Head Motion》论文阅读

时间:2022-11-06 16:30:00 py3直线位移传感器300gi传感器px881

题目:A Single Camera Eye-Gaze Tracking System with Free Head Motion
作者:Craig Hennessey, Borna Noureddin, Peter Lawrence
来源:Conference: Proceedings of the Eye Tracking Research & Application Symposium, ETRA 2006, San Diego, California, USA, March 27-29, 2006

单摄像头眼球注视跟踪系统,头部自由移动

  • 摘要
  • 1.介绍
  • 2.相关工作
  • 3.方法
    • 3.1.POG估计
    • 3.2.估计角膜中心c
    • 3.3.瞳孔中心估计pc
    • 3.4.标定方法
    • 3.5.跟踪眼睛和特征
  • 4. 评价
    • 4.1.实现
    • 4.2.头部自由运动
    • 4.3.不同的硬件配置和不同的主题
  • 5.讨论
  • 6. 结论

摘要

眼球注视作为人机交互的一种形式,在改善我们与机器的交互方式方面具有巨大的潜力。非接触、非限制、准确、易用的眼球注视跟踪设备将增加未来应用中包含眼球注视信息的吸引力。本文在本文中开发和描述的系统使用单一的高分辨率相机和固定的视野来实现这些目标。没有运动部件的单摄像头系统可以使眼睛在失去跟踪后迅速恢复。通过使用各种闪烁和三维建模技术,实现自由头部运动。在14x12x在20cm的视野范围内,通过各种硬件配置、相机分辨率和帧速率,可实现1°视角以下的精度。

关键词:单摄像头,自由头部运动,眼球注视跟踪,眼球模型,快速捕获,人机界面

1.介绍

视觉跟踪作为一种新的人机交互形式,可能会极大地影响我们与机器的交互方式。用户注意力与用户意图密切相关。通过跟踪用户的视线,我们可以了解用户想做什么,从而获得更直观的界面和响应用户意图的能力,而不是显式命令。

心理学研究、驾驶和航空的可用性研究、广告布局的有效性分析。特别适用于鼠标扩展和控制的人机界面和身体残疾的眼睛打字。

电子技术和计算技术的最新进展使基于眼球的非接触和实时视频跟踪系统成为可能。由于它们增加了易用性、可靠性、准确性和舒适性,这些系统正在取代传统的眼球跟踪方法。为了让公众接受,眼球跟踪系统应该是非接触、非限制性的,对用户的任务范围足够准确,易于设置和使用。

本文描述的系统满足以下关键要求。单个高分辨率相机与固定视场使用,不与用户接触。通过一个基础多重闪烁的3D方法允许在相机视场中自由移动头部。高分辨率图像允许更大的视野和准确的图像特征,眼睛凝视可以准确估计。单相机简化了系统的几何形状和校准,缩短了重新收集的时间。这些优点使系统易于设置和使用。

本文的目的是对系统进行初步的评估,以及设计的选择如何影响眼球注视系统的整体精度。特别评估了处理能力、相机分辨率和帧率对自由头部运动时眼球注视精度的影响。据我们所知,这是首次报道的实现单一摄像头,多重闪烁,眼球注视跟踪系统,允许自由头部运动。

2.相关工作

有很多方法可以跟踪一个物体的眼睛,包括附着在脸上和眼睛上的传感器,需要固定头部位置的限制性视频系统,头戴式视频系统,以及基于视频的非接触和非限制性系统。我们认为基于视频的非接触、非限制性方法最有希望获得广泛接受的眼球跟踪界面,因此将重点关注该领域的研究。

基于视频的系统需要准确估计眼睛的高分辨率图像(POG)。Ohno等人开发了一摄像机系统,实现了1°视角下的精度。该系统验证了他们的方法的能力,以确定POG,但它有一个相对较小的视野4x距离60厘米4厘米。 Morimoto等人提出了单摄像机估计的方法POG,在模拟中获得2.5°平均精度。到目前为止,还没有基于此提案的系统实现报告。Shih和Liu提出了一种仅使用单个摄像机的方法。然而,他们实现的系统使用了两个三维摄像头,这需要对他们的算法提供额外的限制。固定视野限制为4x4厘米。他们的系统以30赫兹的频率工作,精度约为1°的视角。

上述固定单摄像机系统的主要困难是捕获足够高分辨率图像所需的有限视场

为了使头部自由移动,需要一个大的视野。许多系统使用多个摄像机来实现这些目标,其中广角(WA)镜头摄像机用于指导窄角移动(NA)镜头摄像头。Yoo和Chung该系统开发了一个自由87头系统WA引导安装在云台倾斜机构上的摄像机NA摄像机。他们的系统在15赫兹工作,精度为0.98°水平方向和0的视角.82°垂直方向。Noureddin等人开发了固定的双摄像头系统WA相机使用旋转镜来指导NA相机的方向[Noureddin等人,2005]。旋转镜比云台倾斜机构旋转速度更快。他们的系统在9赫兹工作,精度2.9°。Ohno和Mukawa最新报道的系统使用了三个摄像头和两个固定的立体声WA摄像头和一个安装在云台倾斜装置上的NA摄像头[Ohno和Mukawa 2004]。在30赫兹的频率下,他们的系统使用两台计算机,可以达到1度的精度。Beymer和Flickner该系统开发了一个使用两个立体声的4摄像头系统WA相机和两个立体声NA摄像头[Beymer和Flickner 2003]。WA相机直接用电流计电机定位NA摄像机。由于多个立体相机和可变焦距NA相机,校准任务相当困难。据报道,他们的系统在10赫兹工作,精度为0.6°。

当眼睛移动时NA这些多摄像头系统在视野头系统会机械地移动NA相机重新定位到新的眼睛位置。这样重新获得眼睛可能需要很长时间,导致头部移动时长时间重新获得眼睛。大量摄像头需要大量的系统校准,大量的视频流需要更强的处理能力。我们开发的系统只需要一个没有移动部件的摄像头,所以保持相对准确POG与其它单摄像头系统相比,估计视场更大,缩短了重新收集的时间。其他差异包括使用光跟踪而不是焦点深度、眼表折射、校准、瞳孔图像轮廓细化技术和验证设计的实现。由Tobii由技术公司开发Tobii该系统是一个独家的单摄像头和多闪烁系统,可能与我们的系统相似,但在其完整的设计、实现或测试方法的公共文献中没有可用的信息。

3.方法

我们开发的POG估计方法是基于相机、系统和眼睛的三维模型。相机采用针孔相机模型建模,眼睛采用Gullstrand原理图眼睛简化版建模[Goss和West 2002]。用Gullstrand编制的人口平均值感兴趣的模型参数。受试者通过每次用户校准补偿整体平均偏差。

如图1所示,一个例子是简化眼睛和感兴趣的参数模型,r, rd, n, pc和c点,计算光轴(OA)必须的矢量L . OA中心学生电脑被定义为角膜c的中心。OA与视线(LOS)不同的是,后者是从中央凹(视网膜的高度敏感部分)到瞳孔中心,最终到达真正的部分POG的向量。中央凹的位置因人而异,可以位于OA (Goss和West 2002) 5°以内。
在这里插入图片描述
图1 -用于计算POG眼部模型。从人口平均值中得出的相关参数如下:
角膜的半径r;从角膜中心到瞳孔中心的距离rd; 和房水的折射率n。角膜中心位于c点,瞳孔中心位于点pc。OA, L是由c到pc形成的向量,POG p是OA与监控平面的交点。


由于OA和LOS估计两者之间的差异POG和实际的POG每个用户之间的偏移是固定的,由第三个用户决定.补偿第四节描述的校准技术。

确定了以下总结POG p步骤:

  1. 通过将OA向量L与监测平面相交L = pc - c)得到POG。
  2. 确定角膜中心c,眼睛模型与角膜表面的两个反射图像位置一起使用。多重闪烁提供了一种方法来使3D三角形角膜中心。
  3. 瞳孔中心pc通过眼睛模型、角膜中心C和瞳孔图像的周围点来确定。
  4. 估计的POG每个用户校准可能的误差。
  5. 使用图像处理技术从眼睛图像中提取上述第2步和第3步中使用的闪烁和瞳孔轮廓的图像位置。

这些步骤将在更详细地描述这些步骤。

3.1.POG估计

POG p它是向量L与计算机显示器表面的交点。显示器表面的模型建立了屏幕的三个角落,通过平面方程给定测量位置。定义的直线三维参数方程是

p = c t · L (1)

用于确定POG。这个三维向量方程有四个未知数(px, py, pz, t),加上POG必须位于监视器定义的平面上的约束就提供了明确求解POG所需的额外约束,假设c和pc已知。下面给出了计算OA所需的角膜中心c和瞳孔中心pc位置的确定方法。

3.2.角膜中心估计c

我们已经实现了Shih和Liu提出的单摄像机方法在3D空间中估计角膜中心位置。

可以通过gi、o和ii点跟踪每个闪烁光源qi的光线,如图2所示。Shih和Liu指出,点集(qi gi c o ii})是共面的。可以为每个闪烁光源定义一个辅助坐标系,使所有这些点都位于由坐标系的两个轴定义的平面上,从而将解空间从3个自由度减少到2个自由度。一个旋转矩阵Ri和它的逆矩阵可以表示为每个闪烁来转换辅助坐标系统和世界坐标系统之间的点。

使用3所示的几何图可以在辅助坐标系中定义角膜的cˆi的中心,作为一个未知参数的函数gˆix每个闪烁如下:


其中

当辅助角膜中心cˆi转换回世界坐标系统使用

结果是3组方程4未知数(cix, ciy, ciz, gˆix).

使用两个闪烁提供了总共6个方程和8个未知数。眼角膜中心为每个闪烁点定义的约束条件必须在世界坐标系中一致,得到另一组3个方程:


图2 -从多个闪烁光源投射到相机传感器表面的光线。闪烁光源位于气点。球面角膜(中心c,半径r)表面的反光位于gi点。针孔相机模型的焦点位于点o处,CCD传感器表面的闪烁图像位于点ii处。



图3 -辅助坐标系几何图


每个辅助坐标系由原点在点o处定义
,Xˆi轴定义沿着Qˆi, Yˆ与XˆZˆ正交。向量Iˆi和Qˆi分别从o向ii和qi。标量lˆi表示从o到qˆi距离。

超定义的方程组由9个方程和8个未知数组成,用梯度下降算法对c进行数值求解。

3.3.瞳孔中心估计pc

OA需要的第二点是瞳孔pc的中心。OA需要的是真实瞳孔的中心,而不是相机记录的折光图像。通过计算真实瞳孔周边上至少2个相对点的平均值,我们可以找到真实瞳孔的中心,尽管在实践中我们发现使用6个周边点提供了一个更可靠的估计。为了确定一个真实的瞳孔周边点,一条线的三维参数方程定义的射线。

从相机传感器表面的瞳孔周界点ki通过针孔相机的焦点追踪到角膜表面,如图4所示。

增加了ui点必须位于中心为c、半径为r的球形角膜表面的约束条件

提供一组4个方程和4个未知数,然后可以为ui求解。然后,利用斯涅尔折射定律,空气和水的折射率,以及等效的角度旋转,将矢量Ki折射到眼睛中。折射向量Kˆi然后追踪到真正的瞳孔周边点使用另一个直线的参数方程

我们有3个方程有4个未知数( uˆix,uˆiy,uˆiz, wi)可以通过添加一个约束瞳孔周边点和角膜中心之间的距离解决:



rd由Gullstrand的种群平均给出,rp由针孔相机模型和椭圆方程主轴与瞳孔图像轮廓的拟合得到。瞳孔中心pc由平均瞳孔周边值uˆi计算。因此,OA可以通过估计瞳孔和角膜中心来计算,并最终根据公式1来估计POG。


图4 -通过光线追踪估计瞳孔中心。


摄像机传感器表面的瞳孔周围图像点记为ki。光线Ki从摄像机传感器追踪到角膜表面的一个ui点。折射向量Kˆi为从ui到的真正的瞳孔uˆi周边点。角膜中心到瞳孔中心的距离由rd给出,瞳孔周边的距离由rps给出。瞳孔半径用rp表示,空气折射率用nair表示,房水折射率用n表示。

3.4.标定方法

在上面的模型中使用了大量的简化,这可能导致POG不准确。这样的简化包括

1.针孔相机模型用于接近真实的相机和镜头2.简化的眼睛模型和使用人口平均为眼睛的参数3.对每个用户执行一次性校准以进行校正

校准过程是自动化的,因为系统检测到何时切换到下一个校准点,可以在5秒内完成。图5演示了执行计算POG的校准和校正时使用的参数示例。校准包括计算误差在估计的POG时,用户看着显示器的四个角落。



图5 - POG校准和校正示例当用户查看已知屏幕位置mi时,系统最初通过记录计算的POG位置ni进行校准。偏差ei用于将计算的未来POG估计数转换为pcorrected。从点算出的距离di和每个校准位置ni用于加权校正因子。

通过应用四个校正因子ei来调整未来的POG估计值,每个校正因子的权重与计算出的POG与每个原始校准POG的距离成反比,如公式13到15所示。

如果di为0,则等式14中的wi为1,其余的权值为0。

3.5.眼睛和特征跟踪

3.2节中使用的点ii和3.3节中使用的点ki位于摄像机CCD传感器的表面。这些位置是根据使用视频处理技术从记录图像中提取的信息确定的。提取这些特征所需要的图像处理是系统中处理器最密集的操作。为了减少所需的处理时间,采用了一系列感兴趣区域(ROI)计算来减少图像信息的数量。最初必须处理整个图像(图6a)来检测眼睛的位置。然后应用ROI,调整大小以只包含眼睛的图像(图6b)。当检测到眼睛中的瞳孔时,ROI的大小进一步缩小,只包含角膜和瞳孔进行最后的处理(图6c)。

当图像处理完成后,ROI的大小增加,以包含眼睛,并重新集中在瞳孔图像轮廓的估计中心,以进行下一个处理循环。将ROI重新定位在瞳孔上,可以使图6b的ROI有效地跟踪眼睛,而不必重新处理整个图像。如果眼睛丢失(由于眨眼)或在一帧内移动到感兴趣区域之外,整个图像将被重新处理,然后重新应用感兴趣区域。

为了计算瞳孔中心,需要沿着瞳孔轮廓图像的周长的点。图像差分技术被用来帮助识别瞳孔轮廓。图像是用交替的光源记录的,一种是通过接近相机光轴的光线将瞳孔明亮地照亮,另一种是场景被离轴光源照亮。偏离轴的照明将脸部照到与亮瞳图像相同的亮度,但不会使瞳孔反射出同样的亮度。


图6—用于减少处理时间的感兴趣区域;(a)全尺寸场景图像;(b);眼睛ROI;©角膜和瞳孔ROI。



图7 -识别的瞳孔(a)和对偶闪烁(b)。椭圆方程拟合到每个识别轮廓的周边线。瞳孔周长椭圆用于估计真实瞳孔中心位置,双闪烁椭圆中心用于估计角膜中心位置。


位于摄像机光轴周围的LED用来产生明亮的瞳孔图像。位于电脑屏幕旁边的两盏灯会产生暗瞳图像,这也会包含所需的双闪烁。从亮瞳图像中减去暗瞳图像增强了瞳孔轮廓,使得在场景中更容易检测。瞳孔轮廓的检测分两个阶段进行,以提高系统的精度和性能。在使用差值图像的场景中,首先快速粗略地识别出瞳孔。然后使用更精细的瞳孔检测算法从明亮的瞳孔图像中提取出瞳孔轮廓。只使用明亮的瞳孔图像可以避免由于图像帧之间的运动而产生的伪影。良好的瞳孔检测方法也弥补了可能损坏瞳孔周边的人为因素,如闪烁或睫毛。识别出的瞳孔轮廓示例如图7a所示。

在记录的图像中,需要计算角膜中心的双闪烁中心的位置。角膜表面的反光导致图像中最亮的像素,很容易被检测到。使用两个闪烁中心之间的期望位移来抵消可能的伪影。图7b显示了识别出的双重闪烁的例子。

4. 评价

4.1.实现

眼球注视跟踪系统的物理实现如图8所示。该系统在一台中等功率的AMD 1.4 GHz计算机和一台更高端的Pentium IV 2.8 GHz计算机上进行了测试。使用不同的计算机可以了解系统在可用处理能力方面的表现。

该系统还在两种不同的相机上进行了测试,一种相机的分辨率为1024x768像素,帧频为15赫兹,另一种相机的分辨率为640x480像素,帧频为30赫兹。这两款相机都是Point Grey Research公司基于Firewire的“蜻蜓”(Dragonfly)数码相机的升级版。使用不同的相机还可以洞察系统在可用帧速率和图像分辨率方面的表现。高分辨率相机的允许运动范围约为14x12x20厘米(宽x高x深),而速度较快但分辨率较低的相机的允许运动范围约为7.5x5.5x19厘米。宽度和高度大约在视场体积的中点指定。这两款相机的镜头焦距都是32毫米。


图8 -物理系统实现。数码火线相机位于屏幕下方,面向用户面部。在轴上的照明是由环绕在相机镜头周围的led灯环提供的,而双辉光离轴光源位于监视器的右侧。整个组装安装在挤压铝轨上,以固定led、相机和屏幕的相对位移。

使用安捷伦hsdl - 4220 880 nm二极管进行场景照明。在相机上使用了一个光学低通滤光器来滤除周围的可见光,只通过系统产生的照明。

4.2.自由的头部运动

系统的精度是在允许的头部位置的整个范围内测量的。AMD系统使用的是15赫兹的摄像机,视野更大。由系统用户在位置1处进行校准。然后通过在屏幕上记录查看4x4网格上的点时的POG错误来测量准确性。在允许的视场范围内,共确定了7个不同的头部位置的平均精度。在测试期间,用户佩戴了一个电磁位置跟踪器,以验证整个视野是否被跨越。位置跟踪器报告的X、Y、Z三个位置在视场中的位置范围分别为14.2 cm、12.3 cm、20.6 cm。

表1以屏幕像素为单位列出了每个头部位置的平均精度(POG估计值和参考点之间的差异)。屏幕尺寸分别为35厘米和28厘米,分辨率为1280x1024像素。这里报告的是像素的精度,而不是视角的度数,因为计算视角度数所需的眼睛到屏幕的距离并不容易获得。为了便于比较,后续测试的准确性也以像素为单位进行报告。在第5节的讨论中,眼睛到屏幕距离的平均值用于将像素转换为视角角度。

表1 -通过4x4网格测量不同头部位置的平均POG精度。

4.3。不同的硬件配置与不同的主题

在不同的硬件配置上测试了两个受试者,以测试系统处理多个不同受试者和操作条件的能力。此外,受试者在校准位置(试验1)和远离校准位置(试验2)进行评估,以评估自由头部运动的精度范围。

测试过程是执行校准,然后在4x4网格上记录数据集(试验1)。用户被要求离开系统,然后返回并再次坐在计算机前,导致不同的头部位置。另一个4x4网格数据集记录在远离校准位置的地方(试验2)。这些测试的平均精度如表2所示。

表2 -通过4x4网格测量的多次试验、受试者和系统配置的平均POG精度。

当ROI被定在眼睛上和眼睛丢失时,记录每个系统配置处理一个视频图像所需的时间。当ROI被锁定在眼睛上时,只对图像的一小部分进行处理;当ROI丢失时,必须对整个图像进行处理以重新获得眼睛。这些处理时间如表3所示。


表3 -每次系统更新的处理时间,当ROI被锁定在眼睛上和眼睛丢失时。系统配置的四种组合都经过了测试。

5.讨论

在可能的头部位置范围内(见表1),X和Y中未校准位置的最佳平均像素误差为[20.9,18.7]像素,最差为[46.5,21.0]像素。在不同的硬件配置和不同的受试者中(见表2),当眼睛不在校准位置时(试验2),X和Y的最佳平均误差为[14.8,21.7]像素,最差为[29.1,34.2]像素。在试验2中,从眼睛到屏幕的平均距离为75厘米时,最佳平均视角准确度为0.46°,最差为0.90°。

该系统能够在整个允许的头部位置范围内估计POG,并且在处理能力、相机分辨率和相机帧速率方面有所变化。当ROI被锁定在眼睛上时,由于两种摄像机的ROI大小相等,因此,在高分辨率和低分辨率摄像机之间所需的处理时间差别不大。这些时间表明,AMD系统可以达到最大更新速率35Hz,而P4系统可以达到最大更新速率100Hz。但是,由于摄像机的帧率较低,最高更新速率受到限制,高分辨率摄像机的帧率为15 Hz,低分辨率摄像机的帧率为30 Hz。系统的更新速率与相机的帧速率相匹配,即使记录了明暗交替的瞳孔图像(这是图像差分技术所需要的)。通过从最新捕获的图像和以前捕获的图像(亮然后暗或暗93然后亮的瞳孔图像)估计POG,可以获得等效的速率。当ROI锁丢失时,所有情况下的处理时间都会增加,从而降低了系统的有效更新率。当ROI锁丢失时,高分辨率相机的处理时间比低分辨率相机增加得更多,这与预期一致。

增加到一个更高分辨率的相机增加头部位置的允许范围。提高ROI人眼图像的分辨率也可以提高特征检测的准确性,从而提高估计POG的准确性。增加帧速率允许更快的更新速率,甚至更快的重新获取时间。我们发现,如果ROI被锁定在眼睛上,高分辨率图像所需的处理时间并不比低分辨率图像所需的处理时间大多少。对于我们的系统,我们期望使用相同大小的ROI获得更高的分辨率。

6. 结论

本文描述了一个眼球注视跟踪系统的设计、实现和评估,该系统满足引言中描述的关键需求。如下所述,单摄像头、多闪烁系统在摄像头视场范围内的自由头部运动达到了所声称的精度。在不同的硬件配置组合和受试者中,眼睛离开校准位置的最佳精度(试验2),在4x4屏幕网格上平均为0.46°,最差为0.90°的视角,与其他报告的系统相比。系统精度最高的校准位置,并略有下降,因为头部离开。

所开发的系统对于一个1024x768像素分辨率的相机来说,头部位置的允许范围大约为14x12x20厘米。正如所料,虽然较高的相机分辨率增加了头部位置的允许范围,但对于同等的空间分辨率来说,它并不一定会提高眼睛的凝视精度。没有移动部件,导致快速的重新采集时间。在P4系统中,对于15赫兹的相机,在67毫秒内可以重新获得失去锁后的眼睛,对于30赫兹的相机,则需要33毫秒。使用一个没有移动部件的单一相机也允许使用一个一次性的用户校准过程,这需要不到5秒的时间。该系统能够在不同处理能力的平台上运行,并具有不同分辨率和帧速率的摄像机,从而提供可扩展到任务的性能(如讨论中所述)。

锐单商城拥有海量元器件数据手册IC替代型号,打造电子元器件IC百科大全!

相关文章