用于使用事件相机数据的眼动跟踪的方法和设备与流程

文档序号:21047919发布日期:2020-06-09 21:01阅读:516来源:国知局
用于使用事件相机数据的眼动跟踪的方法和设备与流程

相关申请的交叉引用

本申请要求于2017年9月28日提交的美国临时专利申请62/564,875的优先权,该美国临时专利申请据此全文以引用方式并入。

本公开整体涉及眼动跟踪,并且具体地涉及用于使用事件相机数据的眼动跟踪的系统、方法和设备。



背景技术:

在各种具体实施中,头戴式设备包括确定头戴式设备的用户的注视方向的眼动跟踪系统。眼动跟踪系统常常包括相机,所述相机将用户的眼睛的图像传输给执行眼动跟踪的处理器。以足以使得能够实现眼动跟踪的帧速率传输图像就需要具有相当大带宽的通信链路,并且使用此类通信链路就增大头戴式设备的发热和功率消耗。

附图说明

因此,本公开可被本领域的普通技术人员理解,更详细的描述可参考一些例示性具体实施的方面,其中一些具体实施在附图中示出。

图1是根据一些具体实施的示例性操作环境的框图。

图2是根据一些具体实施的示例性控制器的框图。

图3是根据一些具体实施的示例性头戴式设备(hmd)的框图。

图4示出了根据一些具体实施的头戴式设备的框图。

图5a示出了根据一些具体实施的用户的眼睛具有第一注视方向。

图5b示出了根据一些具体实施的用户的眼睛具有第二注视方向。

图6a至图6d示出了根据一些具体实施在不同时间的图5的用户的眼睛。

图7示出了根据一些具体实施的事件相机的功能框图。

图8示出了根据一些具体实施的事件消息的数据图示。

图9a示出了根据一些具体实施的包括事件相机的眼动跟踪系统的功能框图。

图9b示出了根据一些具体实施的包括机器学习回归器的眼动跟踪系统的功能框图。

图9c示出了根据一些具体实施的包括注视估计器的眼动跟踪系统的功能框图。

图10是根据一些具体实施的使用强度调制闪烁确定注视方向的方法的流程图表示。

图11是根据一些具体实施的使用事件相机确定注视方向的方法的流程图表示。

根据通常的做法,附图中示出的各种特征部可能未按比例绘制。因此,为了清楚起见,可以任意地扩展或减小各种特征部的尺寸。另外,一些附图可能未描绘给定的系统、方法或设备的所有部件。最后,在整个说明书和附图中,类似的附图标号可用于表示类似的特征部。



技术实现要素:

本文所公开的各种具体实施包括用于使用强度调制光源来确定眼动跟踪特征的设备、系统和方法。所述方法包括从多个光源朝用户的眼睛发射具有调制强度的光。所述方法包括接收指示多个闪烁形式的被用户的眼睛反射的所发射光的强度的光强度数据。所述方法包括基于所述光强度数据确定用户的眼动跟踪特征。

本文所公开的各种具体实施包括用于使用事件相机确定眼动跟踪特征的设备、系统和方法。所述方法包括使用包括多个相应位置处的多个光传感器的事件相机生成多个事件消息,所述多个事件消息中的每一者响应于特定光传感器检测到光强度变化而生成并且指示所述特定光传感器的特定位置。所述方法包括基于所述多个事件消息确定用户的眼动跟踪特征。

根据一些具体实施,一种设备包括一个或多个处理器、非暂态存储器以及一个或多个程序;该一个或多个程序被存储在非暂态存储器中并且被配置为由一个或多个处理器执行,并且该一个或多个程序包括用于执行或使得执行本文所述方法中的任一种的指令。根据一些具体实施,一种非暂态计算机可读存储介质中存储有指令,这些指令在由设备的一个或多个处理器执行时使该设备执行或使执行本文所述方法中的任一种。根据一些具体实施,一种设备包括:一个或多个处理器、非暂态存储器以及用于执行或使执行本文所述方法中的任一种的装置。

具体实施方式

描述了许多细节以便提供对附图中所示的示例具体实施的透彻理解。然而,附图仅示出了本公开的一些示例方面,因此不应被视为限制。本领域的普通技术人员将理解,其他有效方面和/或变体不包括本文所述的所有具体细节。此外,没有详尽地描述众所周知的系统、方法、部件、设备和电路,以免模糊本文所述的示例性具体实施的更多相关方面。

在各种具体实施中,眼动跟踪用于使能用户交互,提供中央凹渲染,或减轻几何失真。眼动跟踪系统包括光源、相机和处理器,所述处理器对从所述相机接收的关于从用户的眼睛反射的来自所述光源的光的数据执行眼动跟踪。在各种具体实施中,相机包括具有多个相应位置处的多个光传感器的事件相机,所述事件相机响应于特定光传感器检测到光强度变化而生成指示所述特定光传感器的特定位置的事件消息。事件相机可包括或被称为动态视觉传感器(dvs)、硅视网膜、基于事件的相机、或无帧相机。因此,事件相机生成(并传输)关于光强度变化的数据,而不是更大量的关于每个光传感器处的绝对强度的数据。另外,因为在强度变化时生成数据,所以在各种具体实施中,光源发射具有调制强度的光。

图1是根据一些具体实施的示例性操作环境100的框图。尽管示出了相关特征,但本领域的普通技术人员将从本公开中认识到,为简洁起见并且为了不模糊本文所公开的示例性具体实施的更多相关方面,未示出各种其他特征。为此,作为非限制性示例,操作环境100包括控制器110和头戴式设备(hmd)120。

在一些实施方案中,控制器110被配置为管理和协调用户的增强现实/虚拟现实(ar/vr)体验。在一些实施方案中,控制器110包括软件、固件和/或硬件的合适组合。下文参考图2更详细地描述控制器110。在一些实施方案中,控制器110是相对于场景105处于本地或远程位置的计算设备。例如,控制器110是位于场景105内的本地服务器。在另一个示例中,控制器110是位于场景105之外的远程服务器(例如,云服务器、中央服务器等)。在一些实施方案中,控制器110经由一个或多个有线或无线通信信道144(例如,蓝牙、ieee802.11x、ieee802.16x、ieee802.3x等)与hmd120通信耦接。

在一些实施方案中,hmd120被配置为向用户呈现ar/vr体验。在一些实施方案中,hmd120包括软件、固件和/或硬件的合适组合。下文参考图3更详细地描述hmd120。在一些实施方案中,控制器110的功能由hmd120提供和/或与该hmd结合。

根据一些实施方案,在用户虚拟地和/或物理地存在于场景105内的同时,hmd120向用户提供增强现实/虚拟现实(ar/vr)体验。在一些实施方案中,在呈现增强现实(ar)体验的同时,hmd120被配置为呈现ar内容以及使得能够实现场景105的光学透视。在一些实施方案中,在呈现虚拟现实(vr)体验的同时,hmd120被配置为呈现vr内容以及使得能够实现场景105的视频透视。

在一些实施方案中,用户将hmd120佩戴在其头上。因此,hmd120包括被提供用于显示ar/vr内容的一个或多个ar/vr显示器。例如,hmd120包围用户的视野。在一些实施方案中,hmd120被替换成被配置为向用户呈现ar/vr内容的手持式电子设备(例如,智能电话或平板电脑)。在一些实施方案中,用被配置为呈现ar/vr内容的ar/vr室、围场或房间替代hmd120,用户在其中不佩戴或握持hmd120。

图2是根据一些具体实施的控制器110的示例的框图。尽管示出了一些具体特征,但本领域的技术人员将从本公开中认识到,为简洁起见并且为了不模糊本文所公开的具体实施的更多相关方面,未示出各种其他特征。为此,作为非限制性示例,在一些具体实施中,控制器110包括一个或多个处理单元202(例如,微处理器、专用集成电路(asic)、现场可编程门阵列(fpga)、图形处理单元(gpu)、中央处理单元(cpu)、处理核心等)、一个或多个输入/输出(i/o)设备206、一个或多个通信接口208(例如,通用串行总线(usb)、firewire、thunderbolt、ieee802.3x、ieee802.11x、ieee802.16x、全球移动通信系统(gsm)、码分多址(cdma)、时分多址(tdma)、全球定位系统(gps)、红外(ir)、蓝牙、zigbee和/或相似类型接口)、一个或多个编程(例如,i/o)接口210、存储器220以及用于互连这些部件和各种其他部件的一条或多条通信总线204。

在一些具体实施中,所述一条或多条通信总线204包括互连系统部件和控制系统部件之间的通信的电路。在一些具体实施中,一个或多个i/o设备206包括键盘、鼠标、触控板、操纵杆、一个或多个麦克风、一个或多个扬声器、一个或多个图像传感器、一个或多个显示器等中的至少一种。

存储器220包括高速随机存取存储器,诸如动态随机存取存储器(dram)、静态随机存取存储器(sram)、双倍数据速率随机存取存储器(ddrram)或者其他随机存取固态存储器设备。在一些具体实施中,存储器220包括非易失性存储器,诸如一个或多个磁盘存储设备、光盘存储设备、闪存存储器设备或其他非易失性固态存储设备。存储器220任选地包括远离所述一个或多个处理单元202定位的一个或多个存储设备。存储器220包括非暂态计算机可读存储介质。在一些具体实施中,存储器220或者存储器220的非暂态计算机可读存储介质存储下述程序、模块和数据结构或者它们的子集,其中包括任选的操作系统230和增强现实/虚拟现实(ar/vr)体验模块240。

操作系统230包括用于处理各种基础系统服务和用于执行硬件相关任务的过程。在一些具体实施中,ar/vr体验模块240被配置为管理和协调一个或多个用户的一个或多个ar/vr体验(例如,用于一个或多个用户的单个ar/vr体验,或用于一个或多个用户的相应群组的多个ar/vr体验)。为此,在各种具体实施中,ar/vr体验模块240包括数据获取单元242、跟踪单元244、协调单元246和数据传输单元248。

在一些具体实施中,数据获取单元242被配置为至少从hmd120获取数据(例如,呈现数据、交互数据、传感器数据、位置数据等)。为此,在各种具体实施中,数据获取单元242包括指令和/或用于指令的逻辑部件以及启发法和用于启发法的元数据。

在一些具体实施中,跟踪单元244被配置为映射场景105并且至少跟踪hmd120相对于场景105的位置/定位。为此,在各种具体实施中,跟踪单元244包括指令和/或用于指令的逻辑部件以及启发法和用于启发法的元数据。

在一些具体实施中,协调单元246被配置为管理和协调hmd120向用户呈现的ar/vr体验。为此,在各种具体实施中,协调单元246包括指令和/或用于指令的逻辑部件以及启发法和用于启发法的元数据。

在一些具体实施中,数据传输单元248被配置为至少向hmd120传输数据(例如,呈现数据、位置数据等)。为此,在各种具体实施中,数据传输单元248包括指令和/或用于指令的逻辑部件以及启发法和用于启发法的元数据。

尽管数据获取单元242、跟踪单元244、协调单元246和数据传输单元248被示为驻留在单个设备(例如,控制器110)上,但应当理解,在其他具体实施中,数据获取单元242、跟踪单元244、协调单元246和数据传输单元248的任何组合可位于单独计算设备中。

此外,图2更多地用作存在于特定实施方案中的各种特征的功能描述,而不是本文所述的具体实施的结构示意。如本领域的普通技术人员将认识到的,单独显示的项目可以组合,并且一些项目可以分开。例如,图2中单独示出的一些功能模块可以在单个模块中实现,并且单个功能块的各种功能可在各种具体实施中通过一个或多个功能块来实现。模块的实际数量和特定功能的划分以及如何在其中分配特征将根据实施方案而变化,并且在一些具体实施中,部分地取决于为特定实施方案选择的硬件、软件和/或固件的特定组合。

图3是根据一些具体实施的头戴式设备(hmd)120的示例的框图。尽管示出了一些具体特征,但本领域的技术人员将从本公开中认识到,为简洁起见并且为了不模糊本文所公开的具体实施的更多相关方面,未示出各种其他特征。为此,作为非限制性示例,在一些具体实施中,hmd120包括一个或多个处理单元302(例如,微处理器、asic、fpga、gpu、cpu、处理核心等)、一个或多个输入/输出(i/o)设备及传感器306、一个或多个通信接口308(例如,usb、firewire、thunderbolt、ieee802.3x、ieee802.11x、ieee802.16x、gsm、cdma、tdma、gps、ir、蓝牙、zigbee、spi、i2c和/或类似类型的接口)、一个或多个编程(例如,i/o)接口310、一个或多个ar/vr显示器312、一个或多个面向内部和/或面向外部的图像传感器系统314、存储器320以及用于互连这些部件和各种其他部件的一条或多条通信总线304。

在一些具体实施中,所述一条或多条通信总线304包括互连系统部件和控制系统部件之间的通信的电路。在一些具体实施中,所述一个或多个i/o设备及传感器306包括以下项中的至少一个:惯性测量单元(imu)、加速度计、磁力计、陀螺仪、温度计、一个或多个生理传感器(例如,血压监测仪、心率监测仪、血氧传感器、血糖传感器等)、一个或多个麦克风、一个或多个扬声器、触觉引擎以及/或者一个或多个深度传感器(例如,结构光、飞行时间等)等。

在一些具体实施中,所述一个或多个ar/vr显示器312被配置为向用户呈现ar/vr体验。在一些实施方案中,所述一个或多个ar/vr显示器312对应于全息、数字光处理(dlp)、液晶显示器(lcd)、硅基液晶(lcos)、有机发光场效应晶体管(olet)、有机发光二极管(oled)、表面传导电子发射显示器(sed)、场发射显示器(fed)、量子点发光二极管(qd-led)、微机电系统(mems)以及/或者类似的显示器类型。在一些实施方案中,所述一个或多个ar/vr显示器312对应于衍射、反射、偏振、全息等波导显示器。例如,hmd120包括单个ar/vr显示器。在另一示例中,hmd120对于用户的每只眼睛包括ar/vr显示器。在一些实施方案中,所述一个或多个ar/vr显示器312能够呈现ar和vr内容。在一些实施方案中,所述一个或多个ar/vr显示器312能够呈现ar或vr内容。

在一些具体实施中,所述一个或多个图像传感器系统314被配置为获取与包括用户的眼睛的用户的面部的至少一部分对应的图像数据。例如,所述一个或多个图像传感器系统314包括一个或多个rgb相机(例如,具有互补金属氧化物半导体(cmos)图像传感器或电荷耦合器件(ccd)图像传感器)、单色相机、ir相机、基于事件的相机等。在各种具体实施中,所述一个或多个图像传感器系统314还包括发射光在用户的面部的所述一部分上的照明源,诸如闪光灯或闪光源。

存储器320包括高速随机存取存储器,诸如dram、sram、ddrram或其他随机存取固态存储器设备。在一些具体实施中,存储器320包括非易失性存储器,诸如一个或多个磁盘存储设备、光盘存储设备、闪存存储器设备或其他非易失性固态存储设备。存储器320任选地包括远离所述一个或多个处理单元302定位的一个或多个存储设备。存储器320包括非暂态计算机可读存储介质。在一些具体实施中,存储器320或者存储器320的非暂态计算机可读存储介质存储下述程序、模块和数据结构或者他们的子集,其中包括任选的操作系统330、ar/vr呈现模块340、和用户数据存储装置360。

操作系统330包括用于处理各种基础系统服务和用于执行硬件相关任务的过程。在一些具体实施中,ar/vr呈现模块340被配置为经由所述一个或多个ar/vr显示器312向用户呈现ar/vr内容。为此,在各种具体实施中,ar/vr呈现模块340包括数据获取单元342、ar/vr呈现单元344、眼动跟踪单元346和数据传输单元348。

在一些具体实施中,数据获取单元342被配置为至少从控制器110获取数据(例如,呈现数据、交互数据、传感器数据、位置数据等)。为此,在各种具体实施中,数据获取单元342包括指令和/或用于指令的逻辑部件以及启发法和用于启发法的元数据。

在一些具体实施中,ar/vr呈现单元344被配置为经由所述一个或多个ar/vr显示器312呈现ar/vr内容。为此,在各种具体实施中,ar/vr呈现单元344包括指令和/或用于指令的逻辑部件以及启发法和用于启发法的元数据。

在一些具体实施中,眼动跟踪单元346被配置为基于从事件相机接收的事件消息来确定用户的眼动跟踪特征。为此,在各种具体实施中,眼动跟踪单元346包括指令和/或用于指令的逻辑部件以及启发法和用于启发法的元数据。

在一些具体实施中,数据传输单元348被配置为至少向控制器110传输数据(例如,呈现数据、位置数据等)。为此,在各种具体实施中,数据传输单元348包括指令和/或用于指令的逻辑部件以及启发法和用于启发法的元数据。

尽管数据获取单元342、ar/vr呈现单元344、眼动跟踪单元346和数据传输单元348被示为驻留在单个设备(例如,hmd120)上,但应当理解,在其他具体实施中,数据获取单元342、ar/vr呈现单元344、眼动跟踪单元346和数据传输单元348的任何组合可位于单独计算设备中。

此外,图3更多地用作存在于特定实施方案中的各种特征的功能描述,而不是本文所述的具体实施的结构示意。如本领域的普通技术人员将认识到的,单独显示的项目可以组合,并且一些项目可以分开。例如,图3中单独示出的一些功能模块可以在单个模块中实现,并且单个功能块的各种功能可在各种具体实施中通过一个或多个功能块来实现。模块的实际数量和特定功能的划分以及如何在其中分配特征将根据实施方案而变化,并且在一些具体实施中,部分地取决于为特定实施方案选择的硬件、软件和/或固件的特定组合。

图4示出了根据一些具体实施的头戴式设备400的框图。头戴式设备400包括容纳头戴式设备400的各种部件的外壳401(或封装件)。外壳401包括(或耦接到)设置在外壳401的近侧(相对于用户10)端部处的眼垫405。在各种具体实施中,眼垫405是塑料或橡胶件,其舒适且贴合地将头戴式设备400保持在用户10的面部上的适当位置(例如,围绕用户10的眼睛)。

外壳401容纳显示器410,该显示器显示图像、朝向用户10的眼睛发射光或将光发射到该用户的眼睛上。在各种具体实施中,显示器410发射光通过目镜(未示出),该目镜折射由显示器410发射的光,使显示器在用户10看来是在比从眼睛到显示器410的实际距离远的虚拟距离处。为了用户能够聚焦在显示器410上,在各种具体实施中,虚拟距离至少大于眼睛的最小焦距(例如,7cm)。此外,为了提供更好的用户体验,在各种具体实施中,虚拟距离大于1m。

虽然图4示出了包括显示器410和眼垫405的头戴式设备400,但在多种具体实施中,头戴式设备400不包括显示器410或者包括光学透视显示器而不包括眼垫405。

外壳401还容纳眼动跟踪系统,该眼动跟踪系统包括一个或多个光源422、相机424和控制器480。所述一个或多个光源422将光发射到用户10的眼睛上,其反射成可由相机424检测的光图案(例如,闪光圈)。基于该光图案,控制器480可确定用户10的眼动跟踪特征。例如,控制器480可确定用户10的注视方向和/或眨眼状态(睁眼或闭眼)。又如,控制器480可确定瞳孔中心、瞳孔尺寸或关注点。因此,在各种具体实施中,光由所述一个或多个光源422发射,从用户10的眼睛反射,并且由相机424检测。在各种具体实施中,来自用户10的眼睛的光在到达相机424之前从热镜反射或通过目镜。

显示器410发射第一波长范围内的光,并且所述一个或多个光源422发射第二波长范围内的光。类似地,相机424检测第二波长范围内的光。在各种具体实施中,第一波长范围是可见波长范围(例如,可见光谱内大约为400-700nm的波长范围),并且第二波长范围是近红外波长范围(例如,近红外光谱内约为700-1400nm的波长范围)。

在各种具体实施中,眼动跟踪(或者具体地讲,所确定的注视方向)用于使能用户交互(例如,用户10通过看着显示器410上的选项来选择它),提供中心凹渲染(例如,在用户10正在看着的显示器410的区域中呈现较高的分辨率而在显示器410上的其他地方呈现较低的分辨率),或者减少几何失真(例如,显示器410上对象的3d渲染中)。

在各种具体实施中,所述一个或多个光源422朝向用户的眼睛发射光,该光以多个闪烁的形式反射。图5a示出了根据一些具体实施的用户的眼睛500具有第一注视方向。图5b示出了根据一些具体实施的用户的眼睛500具有第二注视方向。眼睛500包括由虹膜554围绕的瞳孔552,两者均被角膜550覆盖。眼睛500还包括巩膜556(也称为眼睛500的眼白)。当用户具有第一注视方向(如图5a所示)时,被布置成图案(例如,圆形)的所述多个光源422所发射的光被角膜550以具有第一图案(在图5a中也是圆形)的多个闪烁510的形式反射。当用户具有第二注视方向(如图5b所示)时,被布置成相同图案的所述多个光源422所发射的光被角膜550以具有第二图案(图5b中的倾斜椭圆)的多个闪烁510的形式反射。因此,基于反射图案(并且可能还有其他特征,例如瞳孔尺寸、瞳孔形状和瞳孔中心),可确定用户的眼动跟踪特征。

在各种具体实施中,(图4的)所述一个或多个光源422朝用户的眼睛发射具有调制强度的光。因此,在第一时间,所述多个光源中的第一光源以第一强度投射到用户的眼睛上,并且在第二时间,所述多个光源中的第一光源以不同于第一强度的第二强度(其可为零,例如,关断)投射到用户的眼睛上。

图6a至图6d示出了根据一些具体实施在不同时间的图5的用户的眼睛500。多个闪烁610a-610h由以调制强度朝用户的眼睛500发射(并且被角膜550反射)的光产生。例如,在第一时间(图6a中),所述多个闪烁610a-610h中的第一闪烁610a和第五闪烁610e被用户的眼睛500以第一强度反射。在比第一时间晚的第二时间(在图6b中),第一闪烁610a和第五闪烁610e的强度被调制为第二强度(例如,零)。另外,在第二时间,所述多个闪烁610a-610h中的第二闪烁610b和第六闪烁610f被用户的眼睛500以第一强度反射。在比第二时间晚的第三时间(在图6c中),所述多个闪烁610a-610h中的第三闪烁610c和第七闪烁610g被用户的眼睛500以第一强度反射。在比第三时间晚的第四时间(在图6d中),所述多个闪烁610a-610h中的第四闪烁610d和第八闪烁610h被用户的眼睛500以第一强度反射。在比第四时间晚的第五时间(返回在图6a中),第一闪烁610a和第五闪烁610e的强度被调制回第一强度。

因此,在各种具体实施中,所述多个闪烁610a-610h中的每一者以调制频率(例如,600hz)闪动接通和关断。然而,第二闪烁610b的相位相对于第一闪烁610a的相位偏移,第三闪烁610c的相位相对于第二闪烁610b的相位偏移,等等,使得闪烁看起来围绕角膜550旋转。

因此,在各种具体实施中,所述多个光源中不同光源的强度以不同方式调制。因此,在分析被眼睛反射并被相机424检测的闪烁时,可确定闪烁以及对应光源(例如,哪个光源产生已被检测到的闪烁)的身份。

在各种具体实施中,(图4a的)所述一个或多个光源422以各种方式被差分调制。在各种具体实施中,所述多个光源中的第一光源以第一频率被调制具有第一相位偏移(例如,图6a的第一闪烁610a),并且所述多个光源中的第二光源以第一频率被调制具有第二相位偏移(例如,图6b的第二闪烁610b)。

在各种具体实施中,所述一个或多个光源422以不同调制频率调制发射光的强度。例如,在各种具体实施中,所述多个光源中的第一光源以第一频率(例如,600hz)调制,并且所述多个光源中的第二光源以第二频率(例如,500hz)调制。

在各种具体实施中,所述一个或多个光源422根据不同的正交码调制发射光的强度,诸如可在cdma(码分多址)通信中使用的那些。例如,沃尔什矩阵的行或列可用作正交码。因此,在各种具体实施中,所述多个光源中的第一光源根据第一正交码调制,并且所述多个光源中的第二光源根据第二正交码调制。

在各种具体实施中,所述一个或多个光源422在高强度值和低强度值之间调制发射光的强度。因此,在各个时间,光源发射的光的强度为高强度值或为低强度值。在各种具体实施中,低强度值为零。因此,在各种具体实施中,所述一个或多个光源422在接通状态(在高强度值处)和关断状态(在低强度值处)之间调制发射光的强度。在各种具体实施中(如图6a至图6d所示),所述多个光源中处于接通状态的光源的数量是恒定的。

在各种具体实施中,所述一个或多个光源422在强度范围内(例如,在10%最大强度和40%最大强度之间)调制发射光的强度。因此,在各个时间,光源的强度为低强度值,为高强度值,或为介于两者之间的某个值。在各种具体实施中,所述一个或多个光源422被差分调制,使得所述多个光源中的第一光源在第一强度范围内被调制,并且所述多个光源中的第二光源在不同于所述第一强度范围的第二强度范围内被调制。

在各种具体实施中,所述一个或多个光源422根据注视方向调制发射光的强度。例如,如果用户正注视特定光源被瞳孔反射的方向(例如,图5b中的左上闪烁),则所述一个或多个光源422基于这个认知而改变发射光的强度。在各种具体实施中,所述一个或多个光源422降低发射光的强度,以减少近红外光进入瞳孔的量,作为安全预防措施。

在各种具体实施中,所述一个或多个光源422根据用户生物计量来调制发射光的强度。例如,如果用户眨眼多于正常,心率升高或者被注册为儿童,则所述一个或多个光源422降低发射光的强度(或所述多个光源发射的所有光的总强度)以减小眼睛上的负担。又如,所述一个或多个光源422基于用户的眼睛颜色来调制发射光的强度,因为与棕色眼睛相比,谱反射率对于蓝色眼睛可能不同。

在各种具体实施中,所述一个或多个光源422根据呈现的用户界面(例如,显示器410上显示的内容)来调制发射光的强度。例如,如果显示器410异常亮(例如,正在显示爆炸的视频),则所述一个或多个光源422增大发射光的强度以补偿来自显示器410的潜在干扰。

在各种具体实施中,相机424是帧相机,其以帧速率在特定时间点或多个时间点生成用户10的眼睛的图像。每个图像包括对应于图像的像素的像素值的矩阵,所述像素对应于相机的光传感器矩阵的位置。

在各种具体实施中,相机424是包括在多个相应位置处的多个光传感器(例如,光传感器矩阵)的事件相机,该事件相机响应于特定光传感器检测到光强度变化而生成指示所述特定光传感器的特定位置的事件消息。

图7示出根据一些具体实施的事件相机700的功能框图。事件相机700包括分别耦接到消息生成器770的多个光传感器760。在各种具体实施中,所述多个光传感器760被布置成行和列的矩阵,并且因此,所述多个光传感器760中的每一者与行值和列值相关联。

所述多个光传感器760包括图7中详细示出的光传感器701。光传感器701包括在源电压和地电压之间的与电阻器721串联的光电二极管710。光电二极管710上的电压与入射在光传感器701上的光的强度成比例。光传感器701包括与光电二极管710并联的第一电容器731。因此,第一电容器731上的电压与光电二极管710上的电压相同(例如,与光传感器701所检测到的光的强度成比例)。

光传感器701包括耦接在第一电容器731和第二电容器732之间的开关740。第二电容器732耦接在开关和地电压之间。因此,当开关740闭合时,第二电容器732上的电压与第一电容器731上的电压相同(例如,与光传感器701所检测到的光的强度成比例)。当开关740断开时,第二电容器732上的电压固定在当开关740上次闭合时在第二电容器732上的电压处。

第一电容器731上的电压和第二电容器732上的电压被馈送给比较器750。当第一电容器731上的电压与第二电容器732上的电压之间的差值小于阈值量时,比较器750输出“0”电压。当第一电容器731上的电压比第二电容器732上的电压高至少所述阈值量时,比较器750输出“1”电压。当第一电容器731上的电压比第二电容器732上的电压低至少所述阈值量时,比较器750输出“-1”电压。

当比较器750输出“1”电压或“-1”电压时,开关740闭合,并且消息生成器770接收该数字信号并生成事件消息(如下文进一步所述)。

例如,在第一时间,入射在光传感器701上的光的强度为第一光值。因此,光电二极管710上的电压为第一电压值。同样,第一电容器731上的电压为第一电压值。对于该示例,第二电容器732上的电压也为第一电压值。因此,比较器750输出“0”电压,开关740保持闭合,并且消息生成器770不执行任何操作。

在第二时间,入射在光传感器701上的光的强度增大到第二光值。因此,光电二极管710上的电压为第二电压值(高于第一电压值)。同样,第一电容器731上的电压为第二电压值。因为开关740断开,所以第二电容器732上的电压仍为第一电压值。假设第二电压值至少比第一电压值高所述阈值,则比较器750输出“1”电压,闭合开关740,并且消息生成器770基于所接收的数字信号而生成事件消息。

在开关740由于来自比较器750的“1”电压而闭合时,第二电容器732上的电压从第一电压值变成第二电压值。因此,比较器750输出“0”电压,从而断开开关740。

在第三时间,入射在光传感器701上的光的强度(又)增大到第三光值。因此,光电二极管710上的电压为第三电压值(高于第二电压值)。同样,第一电容器731上的电压为第三电压值。因为开关740断开,所以第二电容器732上的电压仍为第二电压值。假设第三电压值至少比第二电压值高所述阈值,则比较器750输出“1”电压,闭合开关740,并且消息生成器770基于所接收的数字信号而生成事件消息。

在开关740由于来自比较器750的“1”电压而闭合时,第二电容器732上的电压从第二电压值变成第三电压值。因此,比较器750输出“0”电压,从而断开开关740。

在第四时间,入射在光传感器701上的光的强度减小回到第二光值。因此,光电二极管710上的电压为第二电压值(小于第三电压值)。同样,第一电容器731上的电压为第二电压值。因为开关740断开,所以第二电容器732上的电压仍为第三电压值。因此,比较器750输出“-1”电压,闭合开关740,并且消息生成器770基于所接收的数字信号生成事件消息。

在开关740由于来自比较器750的“1”电压而闭合时,第二电容器732上的电压从第三电压值变成第二电压值。因此,比较器750输出“0”电压,从而断开开关740。

消息生成器770在不同时间接收来自所述多个光传感器760中每一者的数字信号,该数字信号指示光强度的增大(“1”电压)或光强度的降低(“-1”电压)。响应于接收到来自所述多个光传感器760中特定光传感器的数字信号,消息生成器770生成事件消息。

图8示出根据一些具体实施的事件消息800的数据图示。在各种具体实施中,事件消息800在位置字段802中指示特定光传感器的特定位置。在各种具体实施中,事件消息以像素坐标指示特定位置,诸如行值(例如,在行字段中)和列值(例如,在列字段中)。在各种具体实施中,事件消息还在极性字段803中指示光强度变化的极性。例如,事件消息可在极性字段803中包括“1”以指示光强度的增大,并且可在极性字段803中包括“0”以指示光强度的减小。在各种具体实施中,事件消息还在时间字段801中指示检测到光强度变化的时间(例如,接收数字信号的时间)。在各种具体实施中,事件消息在绝对强度字段(未示出)中指示表示所检测到的光的强度的值,作为极性的替代或除极性之外。

图9a示出了根据一些具体实施的包括事件相机910的眼动跟踪系统900的功能框图。眼动跟踪系统900基于从事件相机910接收的事件消息来输出用户的注视方向。

事件相机910包括在多个相应位置处的多个光传感器。响应于特定光传感器检测到光强度变化,事件相机910生成指示所述特定光传感器的特定位置的事件消息。如上文参考图8所述,在各种具体实施中,所述特定位置由像素坐标指示。在各种具体实施中,事件消息还指示光强度变化的极性。在各种具体实施中,事件消息还指示检测到光强度变化的时间。在各种具体实施中,事件消息还指示表示所检测到的光的强度的值。

来自事件相机910的事件消息被双工器920接收。双工器920将事件消息分成目标频率事件消息(与以一个或多个光源的调制频率为中心的频带相关联)和偏离目标频率事件消息(与其他频率相关联),将目标频率事件消息馈送给耦接到闪烁检测器940的第一特征生成器930,并且将偏离目标频率事件消息馈送给耦接到瞳孔检测器960的第二特征生成器950。在一些具体实施中,第一特征生成器930和/或第二特征生成器950不存在,并且目标频率事件消息和/或偏离目标频率事件消息分别被直接馈送给闪烁检测器940和/或瞳孔检测器960。

在各种具体实施中,双工器920基于时间字段中的指示检测到光强度变化的时间的时间戳确定事件消息是目标频率事件消息(或偏离目标频率事件消息)。例如,在各种具体实施中,如果事件消息是包括设定范围内的多个事件消息的集合中在设定时间量内指示特定位置的一者,则双工器920确定事件消息是目标频率事件消息。否则,双工器920确定事件消息是偏离目标频率事件消息。在各种具体实施中,所述设定范围和/或所述设定时间量与朝向用户的眼睛发射的调制光的调制频率成比例。又如,在各种具体实施中,如果具有类似或相反极性的连续事件之间的时间在设定时间范围内,则双工器920确定事件消息是目标频率事件消息。

第二特征生成器950接收偏离目标频率事件消息,并且基于偏离目标频率事件消息生成一个或多个偏离目标特征。在一个实施方案中,偏离目标特征是近似强度图像。在各种具体实施中,近似强度图像包括具有在对应于光传感器的相应位置的相应多个像素处的多个像素值的图像。在接收到指示特定位置和正极性(表示光强度已增大)的事件消息时,对于对应于所述特定位置的像素处的像素值添加数量(例如,1)。类似地,在接收到指示特定位置和负极性(表示光强度已减小)的事件消息时,从对应于所述特定位置的像素处的像素值减去所述数量。在各种具体实施中,近似强度图像被过滤,例如模糊化。在一个实施方案中,偏离目标特征是具有在对应于光传感器的相应位置的相应多个像素处的多个像素值的正时间戳图像,其中像素值是指示相应光传感器何时触发上一个具有正极性的事件的时间戳。在一个实施方案中,偏离目标特征是具有在对应于光传感器的相应位置的相应多个像素处的多个像素值的负时间戳图像,其中像素值是指示相应光传感器何时触发上一个具有负极性的事件的时间戳。在一个实施方案中,偏离目标特征是具有在对应于光传感器的相应位置的相应多个像素处的多个像素值的频率图像,其中像素值是从相应光传感器接收的事件消息的频率的量度。在各种具体实施中,偏离目标特征可以是其他基于偏离目标频率事件消息的特征。

偏离目标特征被瞳孔检测器960接收。在一个实施方案中,偏离目标特征是近似强度图像,并且瞳孔检测器960在近似强度图像中定位低强度区域。在各种具体实施中,瞳孔检测器960定位像素值小于阈值的区域(至少为阈值尺寸的区域)。在各种具体实施中,该区域对应于用户的眼睛的瞳孔。在各种具体实施中,瞳孔检测器960将椭圆拟合至低强度区域并生成关于所述椭圆的椭圆数据。

在各种具体实施中,瞳孔检测器960除了初始瞳孔检测之外还执行瞳孔跟踪。在各种具体实施中,瞳孔检测器960基于偏离目标频率事件消息和/或偏离目标特征来定位一个或多个高对比度边缘,并且基于先前椭圆和所述一个或多个高对比度边缘拟合新椭圆。

在各种具体实施中,瞳孔检测器960将关于新椭圆和/或先前椭圆的椭圆数据提供给几何分析仪970。在各种具体实施中,椭圆数据包括中心(对应于瞳孔的瞳孔尺寸)、短轴尺寸和长轴尺寸(对应于瞳孔的尺寸)和旋转角度中的一者或多者。

第一特征生成器930接收目标频率事件消息并且基于目标频率事件消息生成目标特征。目标特征可以是上文相对于偏离目标特征描述的特征中的任何特征,包括与偏离目标特征相同或不同的特征。闪烁检测器940从第一特征生成器930接收目标特征。在各种具体实施中,闪烁检测器940确定从用户的眼睛反射的一个或多个闪烁的位置。在各种具体实施中,闪烁检测器940基于指示光强度增大的事件消息(例如,指示正极性)来确定位置,而不基于指示光强度降低(例如,指示负极性)的事件消息。在各种具体实施中,闪烁检测器940基于指示光强度降低的事件消息(例如,指示负极性)来确定位置,而不基于指示光强度增大(例如,指示正极性)的事件消息。

如上所述,在各种具体实施中,闪烁以差分调制被反射(例如,它们被不同地调制)。因此,在各种具体实施中,除了闪烁的位置之外,闪烁检测器940还确定该一个或多个闪烁的身份。因此,在各种具体实施中,闪烁检测器940向几何分析仪970输出闪烁检测消息,该闪烁检测消息针对一个或多个闪烁指示相应位置和对应于产生该闪烁的相应光源的相应标识符。在各种具体实施中,光源和事件相机被同步,并且可确定检测到改变的时间与触发光源的时间之间的相对时间,从而允许进行此类标识。

几何分析仪970接收来自闪烁检测器940的关于检测到的闪烁的数据、以及来自瞳孔检测器960的关于用户的眼睛的瞳孔的数据。基于这个所接收的信息,几何分析器970确定用户的眼动跟踪特征,诸如用户的注视方向和/或眨眼状态。

在各种具体实施中,为了特别稳健的注视估计,几何分析仪970将从角膜反射的闪烁与从巩膜反射的闪烁区分开,并且仅使用从角膜反射的闪烁来估计注视方向。因此,在各种具体实施中,几何分析器970实施测量以执行这个区分,例如通过应用稳健估计技术诸如ransac(随机样本一致)、稳健加权等。

图9b示出了根据一些具体实施的包括机器学习回归器980的眼动跟踪系统902的功能框图。眼动跟踪系统902基本上类似于图9a的眼动跟踪系统900,但其中闪烁检测器940、瞳孔检测器960和几何分析仪970被机器学习回归器980替换,该机器学习回归器基于目标特征和偏离目标特征来确定眼动跟踪特征。在一些具体实施中,第一特征生成器930和/或第二特征生成器950不存在,并且目标频率事件消息和/或偏离目标频率事件消息分别被直接馈送给机器学习回归器980。

在各种具体实施中,机器学习回归器980包括线性回归器、随机森林回归器、自适应提升回归器、或神经网络(诸如卷积神经网络、循环神经网络、或长/短期存储器网络)。

图9c示出了根据一些具体实施的包括注视估计器990的眼动跟踪系统904的功能框图。眼动跟踪系统904包括上文所述的事件相机910。事件消息被馈送到概率标签器925中,该概率标签器以事件消息是目标频率事件消息的概率来标签每个事件消息。被概率标签的事件消息被馈送到特征生成器935中,该特征生成器生成上文相对于偏离目标特征所述的一个或多个特征。所述一个或多个特征被馈送到注视估计器990中,该注视估计器基于所述一个或多个特征来确定眼动跟踪特征(例如,注视方向)。

图10是根据一些具体实施的使用强度调制光源确定眼动跟踪特征的方法1000的流程图表示。在一些具体实施中(并且如下面作为示例详细描述的),方法1000由头戴式电子设备诸如图4的头戴式电子设备400执行。在各种具体实施中,方法1000由具有一个或多个处理器、非暂态存储器和一个或多个ar/vr显示器的设备(例如,图3中的hmd120)执行。在一些具体实施中,方法1000由处理逻辑部件(包括硬件、固件、软件或其组合)执行。在一些具体实施中,方法1000由执行存储在非暂态计算机可读介质(例如,存储器)中的代码的处理器执行。

方法1000在框1010中开始于hmd从多个光源朝用户的眼睛发射具有调制强度的光。在各种具体实施中,所述多个光源中的第一光源以第一频率被调制具有第一相位偏移,并且所述多个光源中的第二光源以第一频率被调制具有不同于第一相位偏移的第二相位偏移。在各种具体实施中,所述多个光源中的第一光源以第一频率调制,并且所述多个光源中的第二光源以不同于第一频率的第二频率调制。在各种具体实施中,所述多个光源中的第一光源根据第一正交码调制,并且所述多个光源中的第二光源根据第二正交码调制。

在各种具体实施中,所述多个光源中的第一光源在第一强度范围内调制,并且所述多个光源中的第二光源在不同于第一强度范围的第二强度范围内调制。在各种具体实施中,所述多个光源中的每个光源在高强度值和低强度值之间调制。在各种具体实施中,高强度值为接通状态,并且低强度值为关断状态。在各种具体实施中,所述多个光源中处于接通状态的光源的数量是恒定的。在各种具体实施中,强度根据先前确定的眼动跟踪特征、用户生物计量或呈现的用户界面中的至少一者来调制。

在各种具体实施中,所述多个光源发射近红外波长范围内的光。

方法1000在框1020中继续,hmd接收指示多个闪烁形式的被用户的眼睛反射的所发射光的强度的光强度数据。在各种具体实施中,光强度数据包括用户的眼睛的多个图像。在各种具体实施中,光强度数据包括多个事件消息。

方法1000在框1030处继续,其中hmd基于光强度数据确定用户的眼动跟踪特征。在各种具体实施中,眼动跟踪特征包括注视方向和/或眨眼状态。在各种具体实施中,hmd根据调制的频率范围过滤光强度数据,并且基于过滤后的光强度数据确定用户的眼动跟踪特征。在各种具体实施中,hmd基于光强度数据中的调制来标识相应光源,并且基于相应光源的标识来确定用户的眼动跟踪特征。

图11是根据一些具体实施的使用事件相机确定眼动跟踪特征的方法1100的流程图表示。在一些具体实施中(并且如下面作为示例详细描述的),方法1100由头戴式电子设备诸如图4的头戴式电子设备400执行。在各种具体实施中,方法1100由具有一个或多个处理器、非暂态存储器和一个或多个ar/vr显示器的设备(例如,图3中的hmd120)执行。在一些具体实施中,方法1100由处理逻辑部件(包括硬件、固件、软件或其组合)执行。在一些具体实施中,方法1100由执行存储在非暂态计算机可读介质(例如,存储器)中的代码的处理器执行。

方法1110在框1100中开始于hmd使用包括在多个相应位置处的多个光传感器的事件相机生成多个事件消息。在各种具体实施中,所述多个事件消息中的每一者是响应于特定光传感器检测到光强度变化而生成,并且所述多个事件消息中的每一者指示所述特定光传感器的特定位置。

在各种具体实施中,所述特定位置由像素坐标指示。在各种具体实施中,所述多个事件消息中的每一者还指示光强度变化的极性。在各种具体实施中,所述多个事件消息中的每一者还指示检测到光强度变化的时间。

方法1100在框1120中继续,其中hmd基于所述多个事件消息确定用户的眼动跟踪特征。在各种具体实施中,眼动跟踪特征包括注视方向和/或眨眼状态。

在各种具体实施中,hmd通过检测用户的眼睛的瞳孔来确定眼动跟踪特征。例如,在各种具体实施中,hmd基于来自事件相机的事件消息生成用户的眼睛的近似强度图像,在用户的眼睛的近似强度图像中定位低强度区域,并且将椭圆拟合至低强度区域。

在各种具体实施中,hmd通过跟踪用户的眼睛的瞳孔来确定眼动跟踪特征。例如,在各种具体实施中,hmd基于来自事件相机的事件消息定位一个或多个高对比度边缘,并且基于先前椭圆和所述一个或多个高对比度边缘拟合新椭圆。

在各种具体实施中,hmd通过检测从用户的眼睛反射的一个或多个闪烁来确定眼动跟踪特征(例如,如在图10的方法1000中所执行的)。在各种具体实施中,hmd基于指示光强度增大的事件消息来检测所述一个或多个闪烁,而不基于指示光强度降低的事件消息。在各种具体实施中,hmd基于指示光强度降低的事件消息来检测所述一个或多个闪烁,而不基于指示光强度增大的事件消息。

虽然上文描述了在所附权利要求书范围内的具体实施的各个方面,但是应当显而易见的是,上述具体实施的各种特征可通过各种各样的形式体现,并且上述任何特定结构和/或功能仅是例示性的。基于本公开,本领域的技术人员应当理解,本文所述的方面可以独立于任何其他方面来实现,并且这些方面中的两个或更多个可以采用各种方式组合。例如,可以使用本文阐述的任何数量的方面来实现装置和/或可以实践方法。另外,除了本文阐述的一个或多个方面之外或者不同于本文阐述的一个或多个方面,可以使用其他结构和/或功能来实现这样的装置和/或可以实践这样的方法。

还将理解的是,虽然术语“第一”、“第二”等可能在本文中用于描述各种元素,但是这些元素不应当被这些术语限定。这些术语只是用于将一个元件与另一元件区分开。例如,第一节点可以被称为第二节点,并且类似地,第二节点可以被称为第一节点,其改变描述的含义,只要所有出现的“第一节点”被一致地重命名并且所有出现的“第二节点”被一致地重命名。第一节点和第二节点都是节点,但它们不是同一个节点。

本文中所使用的术语仅仅是为了描述特定实施方案并非旨在对权利要求进行限制。如在对实施方案的描述和所附权利要求中所使用的那样,单数形式的“一个”(“a”“an”)、和“该”旨在也涵盖复数形式,除非上下文清楚地另有指示。还将理解的是,本文中所使用的术语“和/或”是指并且涵盖相关联地列出的项目中的一个或多个项目的任何和全部可能的组合。还将理解的是,术语“包括”(“comprises”和/或“comprising”)在本说明书中使用时是指定存在所陈述的特征、整数、步骤、操作、元件和/或部件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、部件,和/或其分组。

如本文所使用的,术语“如果”可以被解释为表示“当所述先决条件为真时”或“在所述先决条件为真时”或“响应于确定”或“根据确定”或“响应于检测到”所述先决条件为真,具体取决于上下文。类似地,短语“如果确定[所述先决条件为真]”或“如果[所述先决条件为真]”或“当[所述先决条件为真]时”被解释为表示“在确定所述先决条件为真时”或“响应于确定”或“根据确定”所述先决条件为真或“当检测到所述先决条件为真时”或“响应于检测到”所述先决条件为真,具体取决于上下文。

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