新闻  |   论坛  |   博客  |   在线研讨会
苹果专利分享了眼动追踪数据的过滤方法
传感器技术 | 2023-11-23 08:34:37    阅读:212   发布文章

眼动追踪数据过滤

眼动追踪技术在注视点检测、眼睛姿态估计、面部分析与识别等领域都有广泛的应用。然而,用于追踪眼睛的传感器经常移动或抖动,所以眼动追踪数据并不总是完美校准,因而可能不稳定。

在名为“Eye tracking data filtering”的专利申请中,苹果介绍了一种管理眼动追踪数据的改进技术。具体来说,发明描述了一种眼动追踪数据过滤方法。

图2显示了管理眼动追踪技术的瞳孔位置信息的技术流程图。从205开始,确定用户的初始瞳孔位置相对于位于用户前面的透镜。例如,所述透镜可位于确定初始瞳孔位置的用户眼睛的前方。在210,可以检测到瞳孔位置相对于晶状体的变化。

在215,更新后的瞳孔位置与和透镜关联的边界框进行比较。在220,确定更新的瞳孔位置是否在边界框之外。如果在220处确定更新的瞳孔位置不在边界框之外,则流程图继续到225,并且更新的瞳孔位置原样用于眼动追踪功能。

返回到220,如果确定瞳孔位置在边界框之外,则流程图转向230。其中,在边界框内确定一个替代瞳孔位置。

当眼睛移动时,利用替代瞳孔位置可能导致数据的跳跃。图3显示了用于细化用于眼动追踪的瞳孔位置的技术流程图。

从305开始,在边界框内确定了替代瞳孔的位置。可基于距离实际瞳孔位置最近的边界框内的位置来选择替代瞳孔位置。

在310,根据实际瞳孔位置和替代瞳孔位置对瞳孔位置应用缓和功能。在315,不是简单地将实际瞳孔位置替代为替代瞳孔位置,而是可以根据缓和功能确定一组中间瞳孔位置。根据一个或多个实施例,缓和函数可以是线性函数、三次缓和函数等。因此,中间瞳孔位置组可以将使用者的瞳孔位置缓和到替代瞳孔位置。

在320,中间瞳孔位置集应用于一系列帧。中间瞳孔位置的数量可以由实际瞳孔位置和替代瞳孔位置的差异来驱动。如果实际瞳孔位置与替代瞳孔位置之间的线性差很小,则可能需要更少的帧,亦即更少的中间值来达到替代像素位置。

如果实际瞳孔位置与替代瞳孔位置之间的线性差较大,则可能需要更多帧,从而需要更多的中间值才能达到替代瞳孔位置。

流程图300在325结束。其中,在下一帧中使用替代瞳孔位置。换句话说,在一系列帧上利用中间瞳孔位置集后,根据替代瞳孔位置而不是实际瞳孔位置进行渲染。在一个实施例中,随后可使用替代瞳孔位置来呈现内容以呈现给用户,直到检测到新的瞳孔位置。这时候,再次开始图2中所述的过程。

在一个实施例中,基于用户注视可能发生其他问题。例如,显示器可以具有与包含有效像素信息的区域相关联的区域。因此,可以细化注视方向以确保用户注视有效可见区域内的像素。

图4A给出了屏幕425的简化框图。屏幕425可以是位于用户前面的任何类型的显示器,例如头戴式显示设备。

图4B描绘了从眼睛看屏幕的示例视图。如图所示,用户的注视460引导到可见性区域435之外,但在屏幕440内。为了提供有效的数据,可以在可见区域内选择一个替代注视位置。例如,可基于可见性区域435内最接近的像素来选择替代像素。

在一个实施例中,可通过识别视场450的中心来选择替代像素。视场450的中心可以基于眼睛相对于屏幕的位置。或者,视场450的中心可以基于用户眼睛的中心相对于屏幕的位置。

在一个实施例中,可以选择用于注视目标460的替代像素455,使得所述替代像素455位于可见区域内。所述替代像素可以沿着源自所述视场450的中心并指向所述注视460的目标位置的矢量470确定。根据一个或多个实施例,所述替代像素455然后可用于眼动追踪技术。

图5A显示了用于管理眼动追踪技术的注视信息的技术流程图。具体而言,图5A描述了一种重新计算用户注视方向以利用有效像素数据的技术。

流程图500从505开始,一个像素位置检测为与注视方向相关联。例如,像素位置可以与用户注视的目标位置相关联。像素位置可以相对于位于用户眼睛前面的屏幕来确定。

在510,确定所检测的像素位置是否在可见区域之外。如上所述,就图4B而言,可见区域435可以是包括有效像素数据的屏幕425的子集。

如果确定像素位置不在510的可见区域之外,则流程图500继续到515。其中,根据检测到的像素位置确定注视角值。注视角度可以根据所确定的像素位置描述用户眼睛与屏幕之间的角度。所述流程图在520结束,其中所确定的注视角度和像素位置用于处理下一帧。

返回到流程图500的510,如果确定检测到的像素位置在可见区域之外,则流程图500在525继续。在525,在可见区域内确定替代像素位置。在一个或多个实施例中,可以选择替代像素,例如,作为可见区域内距离检测到的像素最近的像素。

流程图500在530继续,其中根据所述替代像素的位置确定注视角度。注视角度可以根据所确定的替代像素位置描述用户眼睛与屏幕之间的角度。所述流程图在535结束,其中所述确定的注视角度和所述替代像素位置用于处理下一帧。

在一个实施例中,眼动追踪数据可用于由客户端和合成器在两阶段过程中呈现帧。可以通过在两者之间共享至少一定的眼动追踪参数来改善客户端和合成器之间的一致性。

图5B描述了用于在客户端和合成器之间共享眼动追踪数据的技术。从555开始,客户端在其中处理帧并获得眼动追踪参数。

在560,在可选步骤中,客户端基于历史合成器眼动追踪参数处理所述帧。换句话说,合成器将来自最近呈现的帧的与当前注视角度和/或可见区域相关的数据传递给客户端,以便处理未来的帧。

然后在565,客户端呈现帧。通过利用由合成器传递给客户端的可见性区域,客户端可以避免渲染可见性区域之外的像素,从而提高性能。通过利用合成器传递的注视角度,客户端可以将帧渲染得更适合用户的注视,从而提高图像质量。

在570,合成器呈现所渲染的帧,并在这个过程中获得合成器眼动追踪参数。特别地,合成器可以执行关于上面图5A所描述的步骤。例如,所述合成器可获得注视角值和基于所述可见区域的像素位置或替代像素位置。合成器使用各种眼动追踪参数来生成与注视角度和可见区域相一致的帧。

合成器可以选择性地基于来自由合成器呈现的客户端呈现帧的历史客户端数据处理当前帧。这样在575,合成器基于历史合成器眼动追踪参数选择性地处理当前帧。换句话说,眼动追踪数据可以从一帧利用到另一帧。这样做可以减少处理连续帧的延迟。

任选地,如580所示,合成器基于历史客户端眼动追踪参数处理当前帧。即客户端可以将呈现前一帧期间使用的数据传递给合成器以处理其他帧。例如,在渲染期间使用的注视角度可以与渲染的帧一起传输到客户端吗,从而更有效地确定和/或改进延迟。

在585。如果有额外的帧要处理,则流程图返回到555并且客户端处理额外的帧,可选地基于从合成器传递的眼动追踪参数,直到没有额外的帧被处理。

图6描述了选择更新的像素位置的流程图。从605开始,在可见区域内识别与视场中心相关联的像素。视场的中心可以是位于眼睛前方的屏幕的像素,并且可以基于源自眼睛中心并以垂直方式延伸到屏幕表面的矢量来确定。相应地,视场的中心可定位于或偏移于屏幕的中心或与屏幕和眼睛之间的透镜的中心相关联的像素。

在610,从与视场中心相关联的像素和与注视方向相关联的像素确定矢量。与注视方向相关联的像素可以如上所述相对于流程图500的505确定。所述流程图600在615结束,其中所述替代像素是从沿所述确定的矢量并在可见区域内的一组像素中选择。

在一个实施例中,系统设置可配置为追踪两只眼睛。如果一只眼睛没有有效数据,系统可以配置为使用另一只眼睛使用无效数据预测眼睛的注视。

例如,可以获得每只眼睛的注视数据。如果确定其中一组注视数据包含无效数据,则可以对另一组注视数据应用预测模型来预测缺失的注视数据。注视数据集可以确定为无效,例如,基于硬件或软件反馈,基于对眼睛之间数据一致性的审查,基于预期运动中的阈值运动等等。

相关专利:Apple Patent | Eye tracking data filtering

https://patent.nweon.com/30685

名为“Eye tracking data filtering”的苹果专利申请最初在2022年11月提交,并在日前由美国专利商标局公布。

    来源:映维网


*博客内容为网友个人发布,仅代表博主个人观点,如有侵权请联系工作人员删除。

参与讨论
登录后参与讨论
推荐文章
最近访客