具有校准改进、准确度补偿和注视局部化平滑的注视跟踪系统的制作方法

文档序号:11438940阅读:205来源:国知局
具有校准改进、准确度补偿和注视局部化平滑的注视跟踪系统的制造方法与工艺

本发明涉及注视跟踪领域,并且具体涉及提供改进的校准过程、局部准确度补偿以及局部注视平滑的系统和方法。



背景技术:

对注视跟踪的使用以控制对显示设备上的选项的选择或对所显示的图像中感兴趣对象的识别持续增长,尤其是考虑到低成本的注视跟踪设备和软件(例如,由tobiitechnology,inc.和theeyetribe提供的)的可用性。

注视跟踪也可以用于‘被动’模式中,其中,用户的注视模式被监测以确定用户对图像构成的反应,例如,网页上的元素的布置、游戏程序等。被动监测还可以用于生理研究,例如,确定不同人对不同模拟的车辆情况如何反应。以同样的方式,如果驾驶员的注视异常,被动监测可以在车辆中实施以发出警告。

在传统的注视跟踪设备中,使用包括相机以及红外发射器和接收器的光学设备或诸如测量生物度量参数的设备的其他设备,测量与‘直线前进’的角偏差。范例注视跟踪设备及其应用可以在blixt等人的于2011年3月24日提交的uspa2011/0069277“visualdisplaywithilluminatorsforgazetracking”中、在skogo等人的于2014年3月7日提交的uspa2014/0268055“eye/gazetrackerandmethodoftrackingthepositionofaneyeand/oragazepointofasubject”中、在hennessey等人的于2013年4月25日提交的uspa2013/0235347“systemandmethodforinteractingwithandanalyzingmediaonadisplayusingeyegazetracking”中、在sur等人的于2008年8月4日提交的uspa2009/0268045“apparatusandmethodsforconfigurationandoptimizationofimagesensorsforgazetrackingapplications”中、在frederickjandebruijn、karlcatherinevanbree和tommasogritti的于2011年3月15日提交的uspa2013/0002846“systemandmethodfortrackingthepointofgazeofanobserver”中以及在lee等人的于2013年5月7日提交的uspa2014/0160005“apparatusandmethodforcontrollinggazetracking”中找到。这些引用的出版物中的每一篇通过引用并入本文。

为了将用户的注视准确地映射到显示屏幕上的位置,注视跟踪设备确定并应用校准程序以补偿每个用户的光学特性。该校准可以是主动的,其中,例如,用户被引导注视显示屏幕上的特定点,或该校准可以是被动,其中,例如,当用户正在观察显示设备时该设备提供来自已知位置的刺激,并且检测刺激照射到用于的(一个或多个)眼睛的角度。

图1示出了可以在主动校准期间使用的范例照明图案100,例如用于由theeyetribe提供的设备中。该图案包括具有九个可选的照明点120或‘目标’的暗背景110。当用户注视照明点时,该设备的校准元件选择性地照亮照明点中的一个并检测用户的(一个或多个)眼睛的(一个或多个)角度。范例校准元件基于用户的眼睛相对于显示设备和3d几何形状的位置,确定每个照明点与用户的眼睛的‘真实’角度。当观察照明点时用户眼睛的每个测量(‘实际’)角度与用户眼睛与照明点的‘真实’角度之间的差定义了针对该特定用户的‘误差’因子。

可以使用各种技术中的任何一种来确定要应用于‘实际’角度的校正函数,其将‘校正’角度与‘真实’角度之间的误差最小化。在一个范例实施例中,最小化误差平方和的线性校正函数被确定,其包括偏移和应用于‘实际’角度的缩放因子。还可以使用非线性校正函数,例如,最小化误差的二阶函数。

使用校正函数的限制在于其假设在能够用单一校正函数建模的误差中的一定的‘均匀性’。也就是说,例如,使用线性校正函数假设误差在显示器上呈现线性变化;二阶校正函数假设误差呈现出对应于二阶(二次)效应的图案。

传统的校正函数通常被包括在由提供者/开发者提供的注视跟踪软件内,因为开发者知道用于确定真实角度和测量角度的算法,并且能够最好地确定和补偿由采用的特定注视跟踪技术引入的误差。此外,在用于确定用户正在注视显示图像上哪里的注视跟踪设备的范例中,必须在显示器上的注视点的坐标被确定之前应用角度校正函数。

使用由注视跟踪设备提供的结果的应用的开发者通常希望使其应用与各种注视跟踪设备兼容,以便为其应用提供更广泛的市场吸引力。优选地,无论不同注视跟踪设备的特性如何,这些应用应该提供相同的功能性应用。以同样的方式,无论所使用的显示器的大小(在实际限制内)如何,应用应该提供相同的功能效用。

如果不同的注视跟踪设备呈现不同的准确度或精度水平,则应用开发者必须将应用设计为与具有最差准确度的设备兼容,其可能限制应用的功能,或者必须与最差的注视跟踪设备的提供者一起工作,以增强该注视跟踪设备的固有准确度。

除了不同的准确度特性,不同的注视跟踪设备还呈现出在其他性能因素(例如,由诸如当注视目标时眼睛的实际微小移动的因素引起的‘噪声’或‘抖动’)中的差异、用于计算注视角的算法中固有的偏差、由用于检测注视角的传感器提供的信号中的偏差等。根据特定的注视跟踪设备,设备可以提供对应于显示器上每个坐标的每个确定的‘原始’数据,或者例如对应于所确定的坐标的运行平均的‘平滑的’数据。原始数据流需要在应用中的平滑算法,而平滑的数据引起了注视跟踪设备的响应性中的滞后。



技术实现要素:

提供用于注视跟踪的校准方法和系统将是有利的,该校准方法和系统不是基于与用户的测量注视相关联的误差在用户的视场中呈现均匀的行为的假设。提供以下注视跟踪系统也是有利的,其基本上独立于用于在显示器上提供注视点坐标的技术。基于该校准方法提供具有改进的准确度的注视跟踪系统也将是有利的。基于该校准提供改进的降噪(平滑)也是有利的。

为了更好地解决这些问题中的一个或多个,在本发明的实施例中,可以应用‘局部的’误差校正。显示区域可以被划分成误差校正区,并且每个区可以具有其自身的误差校正参数或函数。可以针对这些区中的每个定义校准点,并且每个区中的校正参数或函数可以取决于当用户观察与所述区相关联的每个校准点时观察的误差。以同样的方式,为了平滑确定的注视点以减少噪声而应用的函数还可以通过将其特性基于在与定义的噪声校准区相关联的每个校准点处呈现的噪声而被局部化。所述误差校正函数和/或所述噪声平滑函数可以基于接收经校正和平滑的注视位置的特定应用的要求被选择。

本发明的注视跟踪系统的范例实施例可以包括基于用户的注视来识别显示区域上的位置的注视跟踪设备、确定针对与显示区域的区相关联的多个校准点中的每一个校准点的校正因子的注视校准元件、以及基于确定的校正因子为应用提供经校正的位置的注视校正元件。

范例注视校准元件定义显示区域上的校准点的图案,并且针对每个校准点:照亮校准位置,接收当用户注视照亮的校准点时在显示区域上的报告的位置,并且基于报告的位置和校准点之间的差,确定与校准点相关联的偏移误差。此后,校准元件基于在一个或多个校准位置处的这些偏移位置误差来确定针对每个校准点的校正偏移。

范例注视校正元件随后接收来自注视跟踪设备的显示器上的报告的注视位置,确定对应于报告的注视位置的区,并且基于与该区相关联的每个校准点的校正偏移,应用该区的校正函数,以确定可以被应用于报告的注视位置的校正偏移,从而确定经校正的位置。该经校正的位置被传送到应用,该应用使用经校正的位置来执行取决于经校正的注视位置的函数。

以同样的方式,显示区域可以被划分为噪声校正区,并且为了减少与确定的注视位置相关联的噪声而应用的平滑函数也可以取决于报告的注视位置位于哪个噪声校正区。

附图说明

参照附图更详细地并通过举例解释了本发明,其中:

图1示出了由常规的注视跟踪设备使用的范例校准显示。

图2示出了根据本发明的方面的范例注视跟踪系统。

图3示出了显示器上与显示器的定义的区相关联的一组范例校准位置。

图4示出了当用户注视一组校准位置中的每一个时一组范例报告的注视位置。

图5示出了基于与每个校准点(其与区相关联)相关联的误差的报告的注视位置的范例校正。

图6示出了用于确定针对校准点的偏移的范例流程图。

图7示出了用于基于这些偏移校正报告的注视坐标的范例流程图。

图8示出了用于确定针对噪声校准区的噪声平滑函数的范例流程图。

图9示出了用于基于这些噪声平滑函数平滑经校正的注视坐标的范例流程图。

在整套附图中,相同的附图标记表示相似或对应的特征或功能。出于说明的目的而包括附图,并且附图并不旨在限制本发明的范围。

具体实施方式

在下面的描述中,出于解释而非限制的目的,阐述了具体的细节,例如,特定的架构、接口、技术等,以便提供对本发明的概念的全面理解。然而,对于本领域技术人员显而易见的是,本发明可以在脱离这些具体细节的其他实施例中实践。以同样的方式,本说明书的文本涉及如图中所示的范例实施例,并且并不旨在超过在权利要求书中明确包括的限制而限制所要求保护的发明。为了简单和清楚的目的,省略了公知的设备、电路和方法的详细描述,以免因不必要的细节使本发明的描述模糊不清。

在本发明的范例实施例中,常规的注视跟踪设备210用于提供对应于显示区域220上的、注视追踪设备210确定用户230正在注视的位置的坐标。注视跟踪设备210被完全地配置为报告显示区域220上对应于用户当前的注视方向的坐标。也就是说,已经执行了当用户230注视显示区域220时为了报告注视坐标由特定设备210所需的任何校准。如果对于使用设备210报告注视坐标,这种校准是任选的,则对于本发明的使用也是任选的。

校准元件250被配置为基于下面描述的校准过程来提供旨在校正报告的位置的一个或多个误差校正函数260。正如下文所用,术语‘校正函数’包括具有不同形式的函数或具有相同形式但不同参数的函数。例如,校正函数可以包括线性函数和非线性函数,或者它们可以各自是公共类型的函数,例如线性函数(x'=a+b*x),但具有潜在不同的参数值(偏移,a和斜率,b)。

校正元件270被配置为将这些误差校正函数260中的至少一个应用于报告的位置,以产生可以由应用280使用的经校正的位置,该应用280使用在显示区域220上的基于注视的位置来执行给定功能。

如图3所示,用户将注视的显示区域100可以被划分为区320,每个区320包括至少一个校准位置310。校准位置310可以用于定义每个区320,或者区320可以用于定义校准位置310。通常,区320的数量和尺寸将取决于准确度和分辨率的期望的程度、显示区域的尺寸以及来自于注视跟踪设备的预期的准确度。

在图3中,校准点310是每个矩形区320的顶点。如下面进一步详细描述,可以使用校准点和区的其他布置。例如,使用图3的校准点310,显示区域100的替代划分哪个是以校准点310中的每个为中心的矩形区。

校准点310的图案,以及特别是校准点和区的数量可以被预定义,或者其可以是用户可定义的。在一些实施例中,特定应用280的提供者可以指定给定的准确度和分辨率,并且校准元件350可被配置为选择适合的校准点310的图案以满足给定了注视跟踪设备210的特定特征、显示器220的尺寸和/或其他因素的这些要求。

在本发明的实施例中,图2的校准元件250可以被配置为顺序地区分每个校准点310,例如,通过顺序地照亮校准点310中的每一个,或者等效地照亮以校准点310为中心的显示器的区域,例如所示的围绕每个校准点310的白色圈。

可以照亮固定的持续时间,在该时间内,校准元件250接收来自注视跟踪设备210的在显示区域100上的用户的注视的确定的坐标(以下称为注视点或注视坐标)。当用户从现有的照亮的校准点310改变时,校准元件250可以忽略针对下一个校准点的初始报告的坐标。

当完成针对照亮的校准点的注视点的记录并且校准点正在改变时,校准元件250还可以提供可听的信号,然后当其开始记录对应于新的照亮的校准点310的报告的注视坐标时,校准元件250再次提供可听的信号。

或者,用户可以使用诸如鼠标点击的触发来通知校准元件250用户当前正在注视照亮的校准点,并且校准元件250可以开始记录报告的注视点。

在一些实施例中,所有的校准点可以被照亮,并且用户顺序地注视校准点中的每一个,然后通知校准元件250所有校准点已经被注视。校准元件250然后可以使用技术来将所记录的注视点与每个校准点相关联,例如聚类,并且忽略可能是在用户的注视从一个校准点移动到下一个校准点时被记录的注视点的异常值。

如下面进一步详细描述的,记录在每个校准点310处的报告的注视坐标之后,校准元件250可以确定与针对每个校准点的这些报告的注视坐标相对应的单个测量的注视坐标,并且可以将该单个测量的注视坐标与已知的对应校准点的坐标相比较以确定与每个校准点相关联的误差因子。

在开始记录针对每个校准点的注视坐标时,校准元件250可以从注视跟踪设备210记录预定数量的报告的注视坐标。或者,校准元件250可被配置为继续记录注视坐标,直到这些报告的坐标之间的方差表明能够确定对测量的注视坐标的可靠确定。也就是说,例如,如果用户的注视稳定,在报告的注视坐标之间几乎没有差异的情况下,则在仅接收几个报告的注视坐标之后,可以终止记录。另一方面,如果用户的注视是徘徊的或不稳定的,在报告的注视坐标之间具有相对较大的差异的情况下,则校准元件250可以继续记录更多数量的报告的注视坐标,从而为确定针对校准点的单个测量的注视坐标提供更大的样本尺寸。

在一些实施例中,可以使用预定数量的样本和可变数目的样本的组合。例如,可以确定典型的用户能够将稳定的焦点保持在显示区域100的中心附近的校准点上,并且趋向于呈现更少的聚焦在显示区域100周围的校准点上的能力,校准元件250可以被配置为在显示器100的中心附近的校准点处收集预定数量的样本,并且随着每个校准点距显示器100的中心的距离增加,收集更多预定数量的样本。

图4示出了在用户在每个校准位置310a-310d处注视时的一组范例测量的注视位置410a-410d。示出了关于每个校准位置410a-410d的个体报告的注视点401。这些注视点401位于距其对应的校准位置410a-410d可确定的距离处,并且该距离对应于来自注视跟踪设备210的每个报告的注视点401的误差。校准元件250处理这些注视点401以确定在每个对应的校准点310a-310d处的单个测量的注视位置410a-410d。在范例实施例中,针对每个校准点310a-310d的测量的注视位置410a-410d可以是使用在本领域的现有技术使与校准点310a-310d相关联的每个报告的注视位置401的误差的平方和最小化的位置。可以使用其他技术来确定与每个校准点相关联的每组注视位置相对应的单个测量的注视位置。

该组范例报告的注视位置410a-410d示出了测量的注视位置410a-410d与校准点310a-310d的真实位置之间的非均匀和非线性的一组位置误差或偏移420a-420d。由特定用户230用于在特定显示器220上报告注视位置的特定注视跟踪设备210呈现出:偏移420a,其稍微在校准点310a的左侧并且基本上在校准点310a上方;偏移420b,其基本上在校准点310b的左侧和上方;偏移420c,其基本上在校准点310c右侧和下方;以及相对于校准点310d的可忽略偏移420d(本身未示出)。

这些偏移中的每一个,oa(x,y)420a、ob(x,y)420b、oc(x,y)420c和od(x,y)420d分别针对每个校准点310a-310d记录。将上述过程应用于n个校准点中的每一个,提供与n个校准点中的每一个相关联的偏移o1(x,y)、o2(x,y),...on(x,y)。在图3的范例中,图3,n=54(9x6)个校准点。

值得注意的是,图3的每个区320与不同组的校准点310相关联,并且因此与不同组的校准偏移值相关联。如下面进一步详细描述的,与给定区相关联的特定组的校准偏移值定义了将被应用于来自注视跟踪设备210的随后报告的注视坐标的特定校正函数的参数。

可以将每个校准点310的位置及其对应的偏移值提供给注视校正元件270。或者,特别是如果注视校准元件250和校正元件270在共用模块内,注视校正元件270可以是被配置为经由对注视校准元件250的调用来访问该数据260,或者经由对由校准元件250使用以存储该数据260的相同存储器的访问。

图5示出了基于与每个校准点310a-d相关联的误差(偏移)420a-d的报告的注视位置510的范例校正,其中,每个校准点310a-d与区320相关联。在该范例中,校准点310a-d定义了矩形区320的四个顶点。当由注视校正元件270接收到报告的注视位置510时,注视校正元件270确定注视位置510在哪个区,然后使用与该区相关联的校准点的位置及其对应的偏移以确定应用于注视位置510以提供经校正的注视位置520的适当的校正偏移。

注视位置510最靠近校准点310a,并且距校准点30d最远;因此,可以应用于注视位置510以产生经校正的位置530的校正520可以受到与校准点310a相关联的偏移420a的更强烈的影响。以同样的方式,注视位置510比下部的一对校准点310c、310d更靠近上部的一对校准点310a-310b,并且注视位置510的垂直校正可以受到与上部一对校准点310a,310b相关联的偏移420a、420b的更强烈的影响。

可以使用诸如多变量插值和其他技术的任何数量的技术,以基于相对于校准点310a-310d的注视位置510的位置,来确定反映校准偏移420a-420d(本范例中的偏移420d可忽略且本身未示出)中的每个的影响的校正补偿520。

在范例实施例中,多变量插值基于“距离权重”,其中,校正偏移基于注视点510和校准点310a-310b中的每一个之间的距离540a-540d,定义了指示每个校准点310a-310d的偏移420a-420d的影响的权重的距离可以具有确定的校正偏移520,其中,较小的权重被赋予更远的校准点。

令pg表示注视点510,ca、cb、cc和cd表示校准点310a-310d,da、db、dc和dd表示通过位于对角的校准点之间的对角距离(即,ca和cd之间或cb和cc之间的距离)归一化的距离540a-d。令oa、ob、oc和od表示偏移420a-420d。每个偏移oa、ob、oc和od的权重可以分别被定义为(1-da)、(1-db)、(1-dc)和(1-dd)。

可以应用于注视点pg510的偏移op520可以被定义为:

op=(1-da)*oa+(1-db)*ob+(1-dc)*oc+(1-dd)*od。

这种技术的优点是,只要应用适当的归一化(权重之和等于1.0),它能够应用于任意位置的一组校准点。以同样的方式,该技术能够被应用于由比图3中使用的四个校准点更多或更少的校准点定义的区。在一些实施例中,区可以包括区内以及区周边上的校准点,例如,区可以包括校准点的3×3布置,具有中心校准点和沿其周边的八个校准点。

另一种常见的多变量插值技术是双线性插值,其中,沿着每个边缘550a、550b的线性插值被应用于确定注视点510的第一偏移,然后使用第一偏移的值,沿着每个边缘555a、555b被应用以确定第二偏移。该第二偏移是可以应用于注视位置510以产生经校正的偏移530的校正偏移520。可以以相反的顺序应用插值过程;即沿着边缘555a、555b进行插值以产生第一偏移,然后使用第一偏移的值沿着边缘550a、550b进行插值以实现相同的校正偏移。该结果类似于上述距离插值,除了权重基于从注视位置510到每个校准点310a-310d的水平距离dh560、556与垂直距离dv570、575的乘积(dh*dv),由区320的宽度dh580和高度dv585的乘积(dh*dv)进行归一化。该技术避免了需要明确地确定从注视点510到每个校准点310a-310d的向量距离。

可以使用本领域常见的其他多变量插值技术,包括巴恩斯插值、双三次插值、反向距离加权、自然相邻插值等。

本领域技术人员将认识到,可以对不在校准点的布置的周边内的点执行插值。例如,超出校准点范围的区域390可被认为被包括在与这些区域390相邻的区320’中。

在另一范例实施例中,机器学习技术可以用于基于与区相关联的一组校准点来确定每个区内的校正偏移。例如,可以使用针对与区320相关联的校准点310a-310d中的每一个收集的报告的注视点401来训练该区的人工神经网络。在训练神经网络之后,来自注视跟踪设备210的随后的报告的注视位置510被接收,对应于报告的注视位置510的区320被确定,并且已经针对该区320训练的神经网络被提供有作为输入的报告的注视位置510,并且神经网络的输出是经校正的注视坐标530。

根据期望的准确度和精度,可以使用更复杂或更不复杂的技术来提供经校正的坐标。例如,在简单的实施例中,校正偏移可以仅仅是最接近的校准点的偏移(“最近邻”插值)。在这种实施例中,以校准点为中心形成矩形区,并且确定注视点510的区确定应用于注视位置510的偏移420。该技术特别适用于具有具体设置的按钮的应用,所述按钮是可以通过注视按钮而选择的。区将对应于各体按钮,并且校准点将位于每个按钮的中心,并且不同大小的按钮将产生不同大小的区。在一些实施例中,当经校正的注视点520靠近两个相邻按钮之间的边界时,注视校正元件270还可以向应用280提供‘警告’,从而在每个按钮的周边周围提供‘保护区’。

图6示出了用于确定针对校准点的偏移的范例流程图。

在610处,确定校准点的图案。如上所述,校准点的数量和位置可以取决于将接收经校正的注视点的目标应用的要求。

对每个校准点执行循环620-630。在622处,校准点被照亮,用户被指示注视每个照亮的点。在624处,注视跟踪设备提供与用户正在注视的显示器上的点相对应的注视点。如上所述,记录多个这些注视点,照明停止626,并且在630处针对下一个校准点重复该过程。

在针对每个校准点收集注视点之后,每个校准点的这些注视点在循环640-650中进行处理,以确定针对每个校准点的校准偏移。

在642处,基于记录的注视点与校准点的位置之间的距离,确定与对应于校准点的每个记录的注视点相关联的注视误差。

在644处,基于所确定的误差,确定与针对校准点的记录的注视点的组合相对应的测量的点。如上所述,尽管可以应用其他技术来确定测量的点,但是该测量的点可以是最小化每个注视点的平方误差和的位置。

在646处,测量的点与校准点的偏移被确定并被存储为与该校准点相关联的偏移,并且重复650该过程直到针对校准点中的每个的偏移被确定。

本领域技术人员将认识到,两个循环220-230和240-250能够组合为单个循环220-250,其中,在下一个校准点被照亮之前与校准点相关联的偏移被确定。

图7示出了用于在完成图6的校准过程之后校正由注视跟踪设备提供的注视点的范例流程图。

在710处,假设由注视校正元件可访问多个不同组的校准数据,该过程识别用户、注视跟踪设备和显示器,使得对应于该布置的校准数据能够被访问。如果用户的注视没有使用给定的注视跟踪设备和显示器(或其等同物)进行校准,则在使用注视校正元件之前可以指示用户执行该校准。

在720处,从注视跟踪设备接收用户的当前注视点,并且在730处,识别当前注视点所在的区。值得注意的是,校正元件可以与校准过程中使用的假设区不同地定义区。也就是说,虽然校准点可能已被布置成提供显示区域的特定划分,但是该划分与校正元件可以选择的划分无关。

在740处,获得与注视点的确定的区相关的每个校准点的位置和偏移。如上所述,注视校准元件可以将位置和偏移存储在由注视校正元件可访问的存储器中,或者其可以响应于来自注视校正元件的请求来提供该信息。

在750处,确定要应用到注视点的校正偏移。如上所述,可以应用各种技术中的任何一种,以基于与区的校准点相关联的偏移来确定该偏移。

在一些实施例中,注视校正元件可以被配置为包括多种校正技术,并且被配置为使得能够通常取决于将使用经校正的注视点的应用的需要来进行特定的校正技术的选择。如上所述,仅需要确定显示器上的哪个‘按钮’被注视的应用将由‘最近邻’插值来适应。校正技术的选择还可以取决于校准点的图案,因为一些校正技术可以对由该技术使用的点的布置施加约束。在一些实施例中,特别是如果由于给定图案存在‘更好’(更快,更准确等)的技术,注视校正元件可以被配置为基于给定的校准点图案来选择‘默认’的校正技术。

如上所述,在不具有识别偏移的中间步骤的情况下,机器学习元件可以被训练以产生经校正的坐标。然而,该过程有效地确定偏移以便将输入注视点变换为从注视点偏移给定量的经校正的注视点。

在760处,将确定的偏移应用于输入注视点,并且在770处将经校正的注视点传送到应用。可以使用各种技术中的任何一种将经校正的注视点传送到应用,通常被区分为“推送”技术,其中,校正元件连续地或几乎连续地将经校正的注视点发送到应用,以及“拉动”技术,其中,应用请求经校正的注视点并且校正元件提供该经校正的注视点。在一些实施例中,校正元件可以被配置为连续地更新存储器位置或多个位置(例如,循环缓冲器),并且该应用被配置为在需要最近的经校正的(一个或多个)注视点的任何时间访问该存储器。

如上所述,可以应用局部平滑函数来减轻与确定用户的注视点相关联的噪声。当用户注视给定目标时,这种噪声可以是用户的注视的实际变化,或者其可以是与用于检测用户的注视的传感器或其他因素相关联的噪声。在本发明的一些实施例中,应用噪声校准处理以确定为多个噪声区中的每一个最好地平滑报告的注视点序列的函数。当用户正在注视特定的噪声校准区内时,该函数随后被应用于报告的注视点序列。

在范例实施例中,噪声校准元件被包括在图2的注视校准元件250中,并且噪声平滑元件被包括在注视校正元件270中。在下面详细描述的范例实施例中,这些噪声元件中的每一个从注视校正元件中的偏移校正元件接收经误差校正的注视点,并且提供给应用280的注视校正元件270的输出是经平滑的经误差校正的注视点。考虑到本公开内容,对于本领域技术人员来说,其他配置将是显而易见的。

图8示出了用于确定针对噪声校准区的噪声平滑函数的范例流程图。

在810处,利用对应的噪声校准点定义噪声校准区。这些噪声校准区和噪声校准点可以对应于误差校正区320和校准点310,或者它们可以是不同的。例如,噪声校准区可以包括被其他噪声校准区包围的显示器的中心区域,例如,由一组nxn的噪声校准区(其中n是奇整数)提供。

噪声校准点可以与误差校正校准点310相同,避免执行单独的噪声校准锻炼的需要。噪声校准区可以仅与误差校正校准点310中的一个(例如在限定的噪声校准区的中心附近的校准点310)相关联;或者其可以与其区内的所有误差校正校准点310相关联;或任何其他有意义的选择。

在820处,定义平滑函数的形式。常规的平滑函数经常使用以往的m个报告的注视点的加权平均,其中,权重对于更近的报告的注视点更高,并且对于更旧的报告的注视点更低。m的选择和所用的特定的权重定义了滤波/平滑函数的形状。m的一个较大的值引入了在提供经平滑的注视点中的滞后,因为它要求经平滑的注视点能够被提供之前所有m个注视点都被收集。权重的‘斜率’确定随着用户改变注视点系统的响应;如果较旧的注视点具有显著的权重,则经平滑的注视点将位于新的注视点和旧的注视点之间的某处,并且当所有的m个点被收集而用户在注视新的注视点时,经平滑的注视点将‘追赶’到新的注视点。

在范例实施例中,平滑函数的形式可以是加权平均,其中,针对每个噪声校准区可以单独地确定应用到现有的注视点中的每个的权重(系数)。在其他实施例中,平滑函数可以是将校准注视点与经平滑的注视点最佳匹配的曲线拟合的多项式。确定使校准注视点与确定的经平滑的注视点最佳匹配的函数的参数的其他方式对于本领域技术人员而言将是显而易见的。

特别要注意的是,平滑函数可以被实现在机器学习元件中,例如,如以下进一步详述的人工神经网络。

循环830-840确定了针对每个噪声校准区的平滑函数;在该范例实施例中,平滑函数的形式在每个区内是相同的,并且任务是找到每个噪声平滑区内的函数的特定系数。在其他实施例中,可以为不同的噪声平滑区定义不同形式的平滑函数。

与每个区相关联的所有误差校正校准点都在循环832-838中处理,以在835处确定平滑函数的将每个所得的经平滑的注视点与校准点最佳拟合的系数(或其他参数)。最小误差平方和技术通常用来定义这种最佳拟合的一组系数。在范例实施例中,来自误差校正元件的经校正的注视点用于确定经平滑的注视点相对于显示器上的每个校准点的位置的误差。

如果使用机器学习元件,则m个误差校正点在训练阶段期间被提供作为到机器学习元件的输入,其中,对应的误差校正校准点的位置作为期望的/正确的输出。当为给定的噪声校准区提供每组m个经误差校正的点时,机器学习单元将调整其内部参数(例如,与神经网络内的节点相关联的权重),以提供与期望的/正确的输出最佳相匹配的输出。

在850处,针对每个噪声校准区或训练的机器学习元件的噪声平滑系数,被提供给平滑经校正的注视点的注视校正系统中的元件。与提供给每个误差校正区的偏移一样,这些噪声校准参数到噪声平滑元件的传送可以通过这些参数的直接传输来实现,或通过在噪声平滑元件可访问的存储器中存储这些参数来实现。

在本发明的另一范例实施例中,m的值可以被动态地为每个噪声校准区来确定。也就是说,例如,特定的噪声校准区的平滑函数可以首先被定义为具有低的m的值(例如,3)。可以使用这个低的m的值,针对可用于在这个特定的噪声校准区中的相关联的校正点的所有的经校正的注视点,确定平滑函数的最佳拟合参数;或可以使用m个经校正的注视点作为输入来训练机器学习元件,并且在每个经平滑的注视点及其对应的校准点之间的差的方差可以被确定。如果方差低于给定阈值,则这个m的值可以用于与这个特定区相关联的平滑函数。如果方差高于此阈值,则m的值被增加,并且重复该过程直到所确定的方差低于阈值,或者达到m的最大值。以这种方式,例如,在显示区域的中心处可以比在显示区域的周边处要求更少的平滑点,当注视靠近显示器的中心时提供更快速的响应时间。

图9示出了用于基于上述噪声平滑函数平滑经校正的注视坐标的范例流程图。

在该范例实施例中,在910处,基于接收m个经校正的注视点定义平滑函数,其中,m在所有噪声校准区中是相同的;如果m基于特定噪声校准区变化,步骤910和920的顺序可以颠倒。

在920处,典型地基于最近接收的经校正的注视点,确定噪声校准区。在930处,访问针对该噪声校准区确定的噪声平滑参数,并且在940处,将具有这些参数的平滑函数或针对该区的训练的机器学习元件应用到m个最近经校正的注视点。

在950处,然后经平滑的校正的注视点被传送到应用,或经由直接通信或经由对公共存储器的访问。

尽管已经在附图及前面描述中详细示出并描述了本发明,但这种示出和描述应被认为是说明性的或示范性的,而不是限制性的;本发明不限于所公开的实施例。

例如,尽管在图3-5中示出了校准点的对称直线排列,本领域的技术人员将认识到,能够在其他配置可行的实施例中实施本发明。例如,校准点可以朝向显示器的周边变密,并且在显示器的中心附近密度较小。在一些实施例中,校准点可以是‘平铺的’三角形的顶点,或布置成规则图案(大小相等的区)或半规则图案(布置在规则图案中的不等尺寸的区的组)的多边形的顶点。在一些实施方案中,校准点的图案可以对应于“帕多瓦点”,其已知对于在两个变量中的全次数多项式插值是最优的。

以同样的方式,虽然范例表明校准点应该被选择性地‘照亮’,本领域的技术人员将认识到,各种技术的任何一种可以用于区分用户在校准过程期间注视的校准点。例如,显示器的背景可以是白色的,并且校准点被关闭,从而形成黑点。以同样的方式校准点的形状可以区分用户要注视的校准点。

类似地,尽管公开了在应用中的操作之前被应用的具体的校准过程,本领域的技术人员将认识到,在应用处于使用状态之后可以应用动态校准过程。例如,应用可以提供用户何时选择显示器上的‘特定’按钮的反馈,并且理解了选择的按钮就是用户打算选择的按钮的情况下,在应用中继续。动态校准过程可以将所选择的按钮的坐标解读为校准位置,然后与该按钮选择同时地检索多个报告的注视位置,以确定和/或完善偏移校正和/或噪声平滑参数。

依据对附图、说明书和权利要求书的研究,本领域技术人员在实施所要求保护的发明时能够理解并实现对所公开的实施例的其他变型。在权利要求中,词语“包括”不排除其他元件或步骤,词语“一”或“一个”不排除多个。单个处理器或其他单元可以实现权利要求中记载的若干项的功能。在彼此不同的从属权利要求中记载了特定措施的事实并不代表这些措施的组合不能用于获得益处。计算机程序可以被存储和/或分布于适当的介质中,例如与其他硬件一起提供的或作为其他硬件的一部分提供的光学存储介质或固态介质,但也可以以其他形式分布,例如经由互联网或其他有线或无线的远程通信系统。权利要求中的任何附图标记都不应被解释为限制范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1