CN108352075B - 使用光流的眼睛跟踪 - Google Patents
使用光流的眼睛跟踪 Download PDFInfo
- Publication number
- CN108352075B CN108352075B CN201680064587.XA CN201680064587A CN108352075B CN 108352075 B CN108352075 B CN 108352075B CN 201680064587 A CN201680064587 A CN 201680064587A CN 108352075 B CN108352075 B CN 108352075B
- Authority
- CN
- China
- Prior art keywords
- eye
- light
- light source
- user
- source reflected
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/011—Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
- G06F3/013—Eye tracking input arrangements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N13/00—Stereoscopic video systems; Multi-view video systems; Details thereof
- H04N13/30—Image reproducers
- H04N13/366—Image reproducers using viewer tracking
-
- G—PHYSICS
- G02—OPTICS
- G02B—OPTICAL ELEMENTS, SYSTEMS OR APPARATUS
- G02B27/00—Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
- G02B27/0093—Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00 with means for monitoring data relating to the user, e.g. head-tracking, eye-tracking
-
- G—PHYSICS
- G02—OPTICS
- G02B—OPTICAL ELEMENTS, SYSTEMS OR APPARATUS
- G02B27/00—Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
- G02B27/01—Head-up displays
- G02B27/017—Head mounted
- G02B27/0172—Head mounted characterised by optical features
-
- G—PHYSICS
- G02—OPTICS
- G02B—OPTICAL ELEMENTS, SYSTEMS OR APPARATUS
- G02B5/00—Optical elements other than lenses
- G02B5/30—Polarising elements
- G02B5/3083—Birefringent or phase retarding elements
-
- G—PHYSICS
- G02—OPTICS
- G02F—OPTICAL DEVICES OR ARRANGEMENTS FOR THE CONTROL OF LIGHT BY MODIFICATION OF THE OPTICAL PROPERTIES OF THE MEDIA OF THE ELEMENTS INVOLVED THEREIN; NON-LINEAR OPTICS; FREQUENCY-CHANGING OF LIGHT; OPTICAL LOGIC ELEMENTS; OPTICAL ANALOGUE/DIGITAL CONVERTERS
- G02F1/00—Devices or arrangements for the control of the intensity, colour, phase, polarisation or direction of light arriving from an independent light source, e.g. switching, gating or modulating; Non-linear optics
- G02F1/01—Devices or arrangements for the control of the intensity, colour, phase, polarisation or direction of light arriving from an independent light source, e.g. switching, gating or modulating; Non-linear optics for the control of the intensity, phase, polarisation or colour
- G02F1/13—Devices or arrangements for the control of the intensity, colour, phase, polarisation or direction of light arriving from an independent light source, e.g. switching, gating or modulating; Non-linear optics for the control of the intensity, phase, polarisation or colour based on liquid crystals, e.g. single liquid crystal display cells
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/03—Arrangements for converting the position or the displacement of a member into a coded form
- G06F3/0304—Detection arrangements using opto-electronic means
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/70—Determining position or orientation of objects or cameras
- G06T7/73—Determining position or orientation of objects or cameras using feature-based methods
- G06T7/74—Determining position or orientation of objects or cameras using feature-based methods involving reference images or patches
-
- G—PHYSICS
- G02—OPTICS
- G02B—OPTICAL ELEMENTS, SYSTEMS OR APPARATUS
- G02B27/00—Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
- G02B27/01—Head-up displays
- G02B27/0101—Head-up displays characterised by optical features
- G02B2027/0138—Head-up displays characterised by optical features comprising image capture systems, e.g. camera
-
- G—PHYSICS
- G02—OPTICS
- G02B—OPTICAL ELEMENTS, SYSTEMS OR APPARATUS
- G02B27/00—Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
- G02B27/01—Head-up displays
- G02B27/0101—Head-up displays characterised by optical features
- G02B2027/014—Head-up displays characterised by optical features comprising information/image processing systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10141—Special mode during image acquisition
- G06T2207/10152—Varying illumination
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30004—Biomedical image processing
- G06T2207/30041—Eye; Retina; Ophthalmic
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Optics & Photonics (AREA)
- Human Computer Interaction (AREA)
- Nonlinear Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Chemical & Material Sciences (AREA)
- Crystallography & Structural Chemistry (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- User Interface Of Digital Computer (AREA)
- Position Input By Displaying (AREA)
- Transforming Electric Information Into Light Information (AREA)
- Polarising Elements (AREA)
- Eye Examination Apparatus (AREA)
- Length Measuring Devices By Optical Means (AREA)
Abstract
一种眼睛跟踪系统,对用户的每个眼睛的表面(例如,巩膜)进行成像以捕获从成像表面的纹理得到的光流场。眼睛跟踪系统包括照明源(例如,激光器)和检测器(例如,照相机)。源照亮眼睛的由照相机成像的一部分。随着眼睛运动,眼睛的不同区域被成像,允许生成眼睛的一部分的图。眼睛的一部分的图像包括与眼睛的该部分对应的衍射图案(即,光流)。通过校准处理,光流映射至眼睛注视的位置。
Description
技术领域
本公开总体涉及跟踪虚拟现实系统用户的眼睛位置,并且更具体地,涉及使用眼睛的表面上的相干光的衍射图案跟踪眼睛位置。
背景技术
虚拟现实系统通常包括呈现虚拟现实图像的显示面板,显示面板可描述仅属于虚拟现实环境的元素。如同在增强现实应用中,该显示面板还可以组合真实元素(例如,物理世界中的高草)与虚拟元素(例如,高草中隐藏的动漫动物)。为了与虚拟现实系统交互,用户朝向虚拟现实图像的一部分进行输入。一些虚拟现实系统包括将手和手指运动转换为输入信号的专用外围设备。然而,传统的外部设备人为地将用户与虚拟环境分开,这防碍了用户在虚拟环境中具有完全身临其境的体验。与主要依赖手提外围设备的界面相比,眼睛跟踪系统提供更加身临其境的界面。然而,现有的眼睛跟踪系统不适合用于便携的、轻型的并且高性能的虚拟现实头盔。
发明内容
虚拟现实(VR)系统环境包括VR头盔和VR控制台,VR头盔被配置为经由电子显示器向用户呈现内容,并且VR控制台被配置为生成用于呈现给用户的内容并将生成的内容提供给VR头盔以用于呈现。为了提高用户与所呈现内容的交互,VR控制台基于用户注视的位置修改或者生成内容,用户注视的位置通过跟踪用户的眼睛来确定。因此,VR头盔利用安装至VR头盔(例如,内部)的诸如激光器的相干光源照亮用户的眼睛的表面。
VR头盔中包括的成像装置捕获由用户的眼睛表面的表面反射的光。在一些实施方式中,在成像装置中的成像传感器接收从眼睛表面反射的光之前,从用户的眼睛的表面反射的光可以通过反射光偏振器偏振或者通过透镜组件折射,该透镜组件聚焦或以其他方式修改从眼睛表面反射的光。因为眼睛的表面是粗糙的,所以由成像装置的成像传感器捕获的光可以是由从用户的眼睛表面的多个部分反射的光的组合形成的光斑图案或者衍射图案。
在一些实施方式中,VR头盔执行一个或多个图像处理操作以提高从通过成像装置捕获的光生成的图像的对比度。示例性图像处理操作包括传感器校正(例如,黑电平调整、透镜畸变校正、伽马校正)和照明水平校正(例如,白平衡校正)。VR头盔还可以执行直方图均衡化或者任何其他技术,以增加来自捕获光的图像的对比度。在一些实施方式中,VR头盔可通过电子显示器或者外部光源执行照明水平校正以减小用户的眼睛表面的可变照明引起的噪声。可替代地或者另外地,VR控制台对由VR头盔中的成像装置获得的并且从VR头盔传送至VR控制台的图像执行一个或多个图像处理操作。
VR头盔向VR控制台发送包括由成像装置从所捕获的光捕获的图像或者从捕获图像导出的数据的眼睛跟踪数据。例如,眼睛跟踪数据包括通过一个或多个图像处理操作而修改的捕获图像的版本。作为另一实例,眼睛跟踪数据包括由图像捕获装置捕获的图像和描述用户的眼睛表面被除相干光源以外的源照亮的数据。可替代地,VR头盔包括跟踪用户眼睛的部件,因此VR头盔不向VR控制台发送眼睛跟踪数据。
在一些实施方式中,VR控制台验证所接收的眼睛跟踪数据对应于可用于准确地确定眼睛位置的有效测量。例如,VR控制台确定眼睛跟踪数据的代表性品质因数并将代表性品质因数与有效性阈值进行比较。如果代表性品质因数小于有效性阈值,则VR控制台确定所接收的眼睛跟踪数据无效。然而,如果代表性品质因数等于或超过有效性阈值,则VR控制台验证所接收的眼睛跟踪数据对应于有效测量。代表性品质因数可以是图像数据中的像素值的总和、平均值、中值、范围、标准偏差、或者其他量化(例如,像素灰度级、亮度值、相对像素强度)。代表性品质因数可以通过采样技术根据所接收的眼睛跟踪数据中包括的图像中的所有像素的品质因数来确定或者根据所接收的眼睛跟踪数据中包括的图像中的像素的子集来估计。例如,当用户眨眼时,像素强度值的总和减小,因此VR控制台响应于确定相对像素强度的总和小于有效性阈值而确定所接收的眼睛跟踪数据是无效的。在各种实施方式中,有效性阈值在制造VR头盔期间指定或者在校准VR头盔期间确定。在各种实施方式中,当基于相对像素强度确定品质因数时,针对其确定相对强度的各种像素的指数影响品质因数的确定。为了考虑在验证所接收的眼睛跟踪数据的有效性时的变化的外部照明条件,可以基于在所接收的眼睛跟踪数据的阈时间内捕获的先前接收的眼睛跟踪数据的代表性品质因数的往绩平均值或者在所接收的眼睛跟踪数据的阈时间内捕获的并且确定为有效的先前接收的眼睛跟踪数据的代表性品质因数的往绩平均值动态地确定有效性阈值。
VR控制台访问校准数据以用于根据所接收的眼睛跟踪数据来确定眼睛位置。校准数据可包括指示用户的眼睛表面上的与图像捕获装置的图像传感器的子像素对应的距离的子像素距离。如果图像传感器的子像素对应于用户眼睛表面上的矩形(或者椭圆形)区域,则校准数据可包括与沿着用户眼睛表面的正交方向对应的两个子像素距离(例如,用户眼睛表面上的区域的长度和宽度)。子像素距离可以部分根据图像传感器与用户眼睛表面之间的距离确定。图像传感器与用户眼睛表面之间的距离可以在校准时段期间确定或者经由VR头盔中包括的测距装置(例如,激光测距仪、声波定位仪)动态地确定。在各种实施方式中,VR头盔周期性地确定图像传感器与用户眼睛表面之间的距离(例如,每秒一次),响应于VR头盔通电而确定图像传感器与用户眼睛表面之间的距离,或者响应于从VR头盔中包括的位置传感器接收指示调整用户头部上的VR头盔的测量信号而确定图像传感器与用户眼睛表面之间的距离。子像素距离可以通过将作为图像捕获装置的特性的与像素对应的成弧度的角度乘以图像传感器与用户眼睛表面之间的距离而确定。利用子像素距离,VR控制台根据来自所接收的眼睛跟踪数据的用户眼睛表面的两个图像之间的子像素移位来确定眼睛位置的变化。
可替代地或者另外地,VR控制台从包括在校准时段期间捕获的参考图像的表(例如,查找表)访问校准数据。参考图像对应于VR头盔的电子显示器上的已知的眼睛位置、特定的眼睛凝视点、或者两者。在示例性校准时段期间,VR头盔指示用户凝视电子显示器上的一系列图标并且当用户凝视每个图标时捕获参考图像。参考图像对应于捕获时的图标的眼睛凝视点,并且VR控制台根据眼睛模型和VR头盔中包括的其他眼睛跟踪系统来推断与参考图像对应的眼睛位置。VR控制台可存储参考图像或者可存储参考图像的压缩表示以便于与来自接收的眼睛跟踪数据的随后的图像进行匹配。例如,VR控制台为每个参考图像生成指纹,从每个参考图像提取特征(例如,斑点、边缘、脊部、拐角),或者两者。提取的特征可以与识别用户的眼睛表面上的特征的位置、特征的组成像素的值、或者两者的信息相关联地存储。利用参考图像(或者其压缩表示),VR控制台可参考来自所接收的眼睛跟踪数据的单个图像确定眼睛位置。
使用访问的校准数据,VR控制台从所接收的眼睛跟踪数据确定眼睛位置。在一些实施方式中,VR控制台获得与参考眼睛位置相关联的参考图像。例如,图像捕获装置捕获参考图像,同时另一眼睛跟踪系统(例如,慢速眼睛跟踪系统)独立地确定参考眼睛位置。VR控制台通过确定更新的图像与参考图像之间的子像素移位、根据子像素移位确定眼睛移位距离、并且组合参考眼睛位置与眼睛移位距离来确定更新的眼睛位置。为了确定子像素移位,VR控制台可使用任何运动跟踪或者光流技术(例如,相位相关、块匹配、差分光流方法)。VR控制台通过将所确定的子像素移位乘以来自访问的校准数据的子像素距离值,来确定眼睛移位距离。子像素移位可以是二维的(例如,向上5个子像素,向左3个子像素),所以眼睛移位距离也可以是二维的(例如,向上50微米,向左30微米)。利用眼睛移位距离,VR控制台通过将参考眼睛位置移位眼睛移位距离来确定更新的眼睛位置。当确定更新的眼睛位置时,VR控制台可以:更新眼睛的朝向和定位、确定更新的眼睛旋转轴、确定电子显示器上的新的凝视定位或者其组合。
可替代地或者另外地,VR控制台通过将更新的图像与来自访问的校准数据的参考图像进行匹配来确定眼睛位置。VR控制台将来自图像捕获装置的图像与各种参考图像进行比较以确定匹配的参考图像。VR控制台可通过基于与更新图像的匹配程度对参考图像进行打分并且选择分数最高的参考图像,来确定匹配的参考图像。可替代地或者另外地,将参考图像与更新图像进行比较并且打分直至识别到分数超过阈值的参考图像。如果图像捕获装置捕获对应于眼睛的1平方毫米的图像,则校准数据包括与能够在眼睛的整个运动范围上成像的用户眼睛表面的不同部分对应的约500张图像。在一些实施方式中,VR控制台生成更新图像的压缩表示(例如,指纹、一组特征),并且将更新图像的压缩表示与参考图像的压缩表示进行比较以减少用于确定匹配的参考图像的时间和计算资源。当VR控制台确定匹配的参考图像时,VR控制台通过将与匹配的参考图像相关联的参考位置调整更新图像与参考图像之间的子像素移位来确定更新位置。
VR控制台基于所确定的眼睛位置来确定用于VR头盔呈现的内容。例如,VR控制台使用所确定的眼睛位置中包括的估计凝视点作为至虚拟世界的输入。基于该凝视点,VR控制台可以选择用于向用户呈现的内容(例如,选择与凝视点对应的虚拟动漫生物以针对虚拟斗士竞赛中的另一虚拟动漫生物部署、导航虚拟菜单、选择一种在虚拟世界中玩的运动球、或者选择臭名昭著的运动球员加入梦幻运动球队)。
附图说明
图1是根据实施方式的包括虚拟现实系统的系统环境的框图。
图2A是根据实施方式的虚拟现实头盔的示图。
图2B是根据实施方式的图2A中的VR头盔的前刚体的截面视图。
图3A是根据实施方式的示例性眼睛跟踪单元的示图。
图3B是根据实施方式的包括偏振敏感元件的示例性眼睛跟踪单元的示图。
图3C是根据实施方式的包括产生剪切干涉效应的一个或多个元件的示例性眼睛跟踪单元的示图。
图4A示出根据实施方式的由眼睛跟踪单元捕获的示例性图像。
图4B是根据实施方式的示出了从图4A中的图像导出的眼睛运动与相对于显示器的眼睛跟踪之间的关系的概念图。
图5是根据实施方式的用于确定眼睛位置的示例性过程的流程图。
附图仅为了说明的目的描述了本公开的实施方式。本领域技术人员从以下描述中容易认识到,在不背离本文所描述的本公开的原理或推崇的益处的情况下,可以采用本文中所示出的结构和方法的替代实施方式。
具体实施方式
图1是根据实施方式的虚拟现实(VR)系统环境100的框图。图1中示出的VR系统环境100包括各自耦接至VR控制台110的VR头盔105、外部成像装置135、以及VR输入外围设备140。虽然图1示出了包括一个VR头盔105、一个外部成像装置135、以及一个VR输入外围设备140的示例性VR系统环境100,但是VR系统环境100可以包括任意数量的这些部件,或者可以省略任一部件。例如,可能存在与VR控制台110通信的由一个或多个外部成像装置135监控的多个VR头盔105。在可替代配置中,VR系统环境100中可以包括不同的或附加的部件。
VR头盔105是向用户呈现内容的头戴式显示器。由VR头盔105呈现的内容的实例包括一个或多个图像、视频、音频、或其中的一些组合。在一些实施方式中,经由从VR头盔105、VR控制台110或这两者接收音频信息并且基于该音频信息呈现音频数据的外部装置(例如,扬声器和/或听筒)呈现音频。下面结合图2A和图2B进一步描述了VR头盔105的实施方式。VR头盔105可包括一个或多个刚体,刚体可以刚性或非刚性地彼此耦接在一起。刚体之间的刚性耦接使得耦接的刚体用作单个刚性实体。与此相反,刚体之间的非刚性耦接允许刚体相对彼此运动。然而,在各种实施方式中,VR头盔105可以以任何合适的形状因数(包括玻璃)实现。另外,在各种实施方式中,本文描述的功能可以用在使VR头盔105外部的环境图像与从VR控制台110或者从生成并且提供用于呈现给用户的内容的任何其他控制台接收的内容组合的头盔中。因此,VR头盔105以及本文描述的用于眼睛跟踪的方法可以利用所生成的内容增强VR头盔105外部的环境图像,以向用户呈现增强现实。
在各种实施方式中,VR头盔105包括电子显示器115、显示光学块118、一个或多个定位器120、一个或多个位置传感器125、惯性测量单元(IMU)130、以及眼睛跟踪单元160。在各种实施方式中,VR头盔105可省略这些元件的任一个或者包括额外的元件。另外,在一些实施方式中,VR头盔105包括组合了结合图1所描述的各种元件的功能的元件。
VR显示子系统
电子显示器115根据从VR控制台110接收的数据向用户显示图像。在各种实施方式中,电子显示器115可以包括一个或多个显示面板,诸如液晶显示器(LCD)、有机发光二极管(OLED)显示器、有源矩阵OLED显示器(AMOLED)、透明OLED显示器(TOLED)、或者一些其他的显示器。例如,电子显示器115包括前TOLED面板、后显示面板、以及前后显示面板之间的光学部件(例如,衰减器、偏振器、衍射或光谱膜)。电子显示器115可包括发射诸如红色、绿色、蓝色、白色或者黄色的主要颜色的光的子像素。电子显示器115可通过二维(2D)面板产生的立体效应显示三维(3D)图像,以产生图像深度的主观感知。例如,电子显示器115包括分别位于用户的左眼和右眼前方的左显示器和右显示器。左显示器和右显示器呈现相对于彼此水平移位的图像的副本,以产生立体效应(即,用户观察图像来感知图像深度)。
显示光学块118放大从电子显示器115接收的图像光,校正与图像光相关联的光学误差,并向VR头盔105的用户呈现校正后的图像光。在各种实施方式中,显示光学块118包括一个或多个光学元件。示例性光学元件包括:光圈、菲涅尔透镜、凸透镜、凹透镜、滤光器、或者影响从电子显示器115发射的图像光的任何其他合适的光学元件。显示光学块118可包括不同光学元件的组合以及机械耦接以保持组合中的光学元件的相对间隔和朝向。显示光学块118中的一个或多个光学元件具有诸如抗反射涂层的光学涂层,或者光学涂层的组合。
图像光通过显示光学块118的放大允许电子显示器115体形较小、重量较轻,并且与较大的显示器相比消耗更少的功率。另外,放大可能增加显示内容的视场。例如,所显示的内容的视场使得使用几乎所有的(例如,110度对角线的)或者所有的用户的视场呈现所显示的媒体。在一些实施方式中,显示光学块118的有效焦距大于显示光学块118与电子显示器115之间的间隔,以放大电子显示器115投射的图像光。另外,通过增加光学元件或者从显示光学块118去除光学元件可以调节显示光学块118对图像光的放大量。
显示光学块118可设计成校正一种或多种光学误差,诸如二维光学误差、三维光学误差、或者其组合。二维误差是以二维出现的光学像差。二维误差的示例性类型包括:桶形畸变、枕形畸变、纵向色差、以及横向色差。三维误差是以三维出现的光学误差。三维误差的示例性类型包括:球面像差、彗形像差、场曲率、以及像散。在一些实施方式中,提供至用于显示的电子显示器115的内容是预畸变的,并且显示光学块118在接收到来自电子显示器115基于内容生成的图像光时校正畸变。
外部VR头盔跟踪子系统
定位器120是相对于彼此并且相对于VR头盔105上的特定参考点位于VR头盔105上的特定位置的对像。虚拟现实控制台110识别由外部成像装置135捕获的图像中的定位器120来确定虚拟现实头盔的位置、朝向,或者两者。定位器120可以是发光二极管(LED)、隅角立方体反射器、反射标记、与VR头盔105运行的环境形成对比的一种类型的光源、或其中的一些组合。在实施方式中,定位器120是有源的(即,LED或其他类型的发光器件),定位器120可以在可见频带(约380nm至750nm)、在红外(IR)频带(约750nm至1mm)、在紫外线频带(10nm至380nm)、电磁光谱的另一部分、或电磁光谱的部分的任何组合中发光。
在一些实施方式中,定位器120位于VR头盔105的外表面下面。VR头盔105的在定位器120与VR头盔105外部的实体(例如,外部成像装置135、观察VR头盔105的外表面的用户)之间的部分对于由定位器120发射或者反射的光的波长是透明的或者足够薄,以不显著减弱由定位器120发射或者反射的光的波长。在一些实施方式中,VR头盔105的外表面或其他部分在光的波长的可见频带中是不透明的。因此,定位器120可以在作为在IR频带中透明但在可见频带中不透明的外表面下方、在IR频带中发射光。
外部成像装置135根据从VR控制台110接收的校准参数生成慢速校准数据。慢速校准数据包括示出由外部成像装置135可检测的定位器120的观察位置的一个或多个图像。外部成像装置135可以包括一个或多个照相机、一个或多个摄像机、能够捕获包括一个或多个定位器120的图像的任何其他装置、或其中的一些组合。另外,外部成像装置135可包括一个或多个滤波器(例如,以增大信噪比)。外部成像装置135被配置为在外部成像装置135的视场中检测从定位器120发射或反射的光。在定位器120包括无源元件(例如,后向反射器)的实施方式中,外部成像装置135可包括照亮一些或全部的定位器120的光源,定位器向外部成像装置135中的光源反向反射光。慢速校准数据从外部成像装置135传送至VR控制台110,并且外部成像装置135从VR控制台110接收一个或多个校准参数以调整一个或多个成像参数(例如,焦距、焦点、帧速率、传感器温度、快门速度、光圈)。
内部VR头盔跟踪子系统
IMU 130是基于从一个或多个位置传感器125接收的测量信号生成快速校准数据的电子装置。位置传感器125响应于VR头盔105的运动生成一个或多个测量信号。位置传感器125的实例包括:加速计陀螺仪、磁力计、其他运动检测或者误差校正传感器、或者其中的一些组合。在一些实施方式中,不同的位置传感器125彼此正交定向。位置传感器125可以位于IMU 130的外部、IMU 130的内部、或其中的一些组合。
基于来自一个或多个位置传感器125的一个或多个测量信号,IMU130生成表示相对于VR头盔105的初始位置的VR头盔105的估计位置的快速校准数据。例如,位置传感器125包括多个加速计以测量平移运动(前/后、上/下、左/右)和多个陀螺仪以测量旋转运动(例如,俯仰、偏航、滚转)。在一些实施方式中,IMU 130对测量信号进行快速采样并且根据采样数据计算VR头盔105的估计位置。例如,IMU 130对从加速计接收的测量信号随时间积分以估计速度向量并且对速度向量随时间积分以确定VR头盔105上的参考点的估计位置。可替换地,IMU 130将采样的测量信号提供至VR控制台110,VR控制台确定快速校准数据。虽然参考点通常可定义为空间中的点,但是在各种实施方式中,参考点可以定义为VR头盔105内的点(例如,IMU 130的中心)。
眼睛跟踪子系统
眼睛跟踪单元160包括被配置为捕获眼睛跟踪数据的一个或多个成像装置,眼睛跟踪模块165使用眼睛跟踪数据跟踪VR头盔的用户的眼睛。眼睛跟踪数据指由眼睛跟踪单元160输出的数据。示例性眼睛跟踪数据包括由眼睛跟踪单元160捕获的图像或者从眼睛跟踪单元160所捕获的图像导出的信息。眼睛跟踪指确定眼睛的位置,包括眼睛相对于VR头盔105的朝向和定位。例如,眼睛跟踪模块165基于由眼睛跟踪单元160捕获的眼睛的图像输出眼睛的俯仰和偏航。在各种实施方式中,眼睛跟踪单元160测量眼睛反射的电磁能量并将测量的电磁能量传送至眼睛跟踪模块165,眼睛跟踪模块基于测量的电磁能量确定眼睛的位置。例如,眼睛跟踪单元160测量电磁波,诸如可见光、红外光、无线电波、微波、电磁光谱的任何其他部分中的波,或者由用户的眼睛反射的这些的组合。
眼睛跟踪单元160可包括一个或多个眼睛跟踪系统。眼睛跟踪系统包括对一个或多个眼睛进行成像的成像系统并且可选地包括光发射器,该光发射器生成指向眼睛的光,因此由眼睛反射的光可被成像系统捕获。例如,眼睛跟踪单元160包括发射可见光谱或者红外光谱的光的相干光源以及捕获由用户的眼睛反射的发射光的照相机。作为另一实例,眼睛跟踪单元160捕获由小型雷达单元发射的无线电波的反射。眼睛跟踪单元160使用以不伤害眼睛或者不引起身体不适的频率和强度发射光的低功耗光发射器。眼睛跟踪单元160被布置为增加由眼睛跟踪单元160捕获的眼睛图像的对比度,同时减少由眼睛跟踪单元160消耗的总功率(例如,减少眼睛跟踪单元160中包括的光发射器和成像系统消耗的功率)。例如,眼睛跟踪单元160消耗的功率小于100毫瓦。
在一些实施方式中,眼睛跟踪单元160包括跟踪用户的每个眼睛的一个光发射器和一个照相机。眼睛跟踪单元160还可以包括不同的眼睛跟踪系统,这些眼睛跟踪系统一起操作以提供改善的眼睛跟踪准确度和反应性。例如,眼睛跟踪单元160包括响应时间快的快速眼睛跟踪系统和响应时间较慢的慢速眼睛跟踪系统。快速眼睛跟踪系统频繁地测量眼睛以捕获由眼睛跟踪模块165使用的数据,以确定眼睛相对于参考眼睛位置的位置。慢速眼睛跟踪系统独立地测量眼睛以捕获由眼睛跟踪模块165使用的数据,以在不参考先前确定的眼睛位置的情况下确定参考眼睛位置。由慢速眼睛跟踪系统捕获的数据允许眼睛跟踪模块165确定参考眼睛位置,该位置的准确度大于根据快速眼睛跟踪系统所捕获的数据确定的眼睛位置。在各种实施方式中,慢速眼睛跟踪系统以低于快速眼睛跟踪系统的频率将眼睛跟踪数据提供至眼睛跟踪模块165。例如,慢速眼睛跟踪系统具有较慢的响应时间或者操作不太频繁以节省功率。
VR输入外围设备
VR输入外围设备140是允许用户向VR控制台110发送动作请求的装置。动作请求是执行特定动作的请求。例如,动作请求可以是开始或结束应用或在应用内执行特定动作。VR输入外围设备140可以包括一个或多个输入装置。示例性输入装置包括:键盘、鼠标、游戏控制器、手套、或用于接收动作请求并将所接收的动作请求传送至VR控制台110的任何其他合适的装置。由VR输入外围设备140接收的动作请求被传送至VR控制台110,VR控制台执行对应于动作请求的动作。在一些实施方式中,VR输入外围设备140可以根据从VR控制台110接收的指令向用户提供触觉反馈。例如,VR输入外围设备140在接收动作请求时提供触觉反馈,或者当VR控制台110将指令传送至VR输入外围设备140时使VR输入外围设备140在VR控制台110执行动作时生成触觉反馈。
VR控制台
VR控制台110根据从外部成像装置135、VR头盔105、以及VR输入外围设备140中的一个或多个接收的信息向VR头盔105提供媒体以呈现给用户。在图1中示出的实例中,VR控制台110包括应用存储器145、头盔跟踪模块150、虚拟现实(VR)引擎155、以及眼睛跟踪模块165。VR控制台110的一些实施方式具有与结合图1描述的那些模块不同的或者额外的模块。类似地,可以以与这里描述的方式不同的方式在VR控制台110的部件中分配下面进一步描述的功能。
在一些实施方式中,VR控制台110包括处理器和存储处理器可执行指令的非暂时性计算机可读存储介质。处理器可包括并行执行指令的多个处理单元。计算机可读存储介质可以是诸如硬盘驱动器、可运动存储器、或者固态驱动器(例如,闪存、动态随机存取存储器(DRAM))的任何存储器。在各种实施方式中,结合图1描述的VR控制台110的模块被编码为非暂时性计算机可读存储介质中的指令,当指令由处理器执行时使处理器执行下面进一步描述的功能。
应用存储器145存储用于由VR控制台110执行的一个或多个应用。应用是当被处理器执行时生成内容以呈现给用户的一组指令。由应用生成的内容可以响应于经由VR头盔105或VR输入外围设备140的运动而从用户接收的输入。应用的实例包括:游戏应用、会议应用、视频回放应用、或其他合适的应用。
头盔跟踪模块150使用一个或多个校准参数校准VR系统环境100并且可调整一个或多个校准参数以减小确定VR头盔105的位置时的误差。例如,头盔跟踪模块150调整外部成像装置135的焦点以获得针对VR头盔105上所观察的定位器的更精确的位置。此外,由头盔跟踪模块150执行的校准还考虑了从IMU 130接收的信息。另外,如果丢失对VR头盔105的跟踪(例如,外部成像装置135丢失至少阈值数量的定位器120的视线),则头盔跟踪模块150重新校准一些或者全部的校准参数。
头盔跟踪模块150使用来自外部成像装置135的慢速校准信息跟踪VR头盔105的运动。例如,头盔跟踪模块150使用从慢速校准信息观察的定位器和VR头盔105的模型确定VR头盔105的参考点的位置。头盔跟踪模块150还使用来自快速校准信息的位置信息确定VR头盔105的参考点的位置。另外,在一些实施方式中,头盔跟踪模块150可以使用快速校准信息的一部分、慢速校准信息的一部分、或其中的一些组合来预测VR头盔105的未来位置。头盔跟踪模块150将VR头盔105的估计或预测的未来位置提供至VR引擎155。
VR引擎155在VR系统环境100内执行应用并且从头盔跟踪模块150接收VR头盔105的位置信息、VR头盔105的加速度信息、VR头盔105的速度信息、VR头盔105的预测未来位置、或其中的一些组合。VR引擎155还从眼睛跟踪模块165接收估计的眼睛位置和朝向信息。基于所接收的信息,VR引擎155确定提供至VR头盔105以呈现给用户的内容。例如,如果所接收的信息表示用户已向左看,则VR引擎155生成用于VR头盔105的在虚拟环境中镜像用户的运动的内容。另外,VR引擎155响应于从VR输入外围设备140接收的动作请求而在于VR控制台110上执行的应用内执行动作并且向用户提供表示该动作被执行的反馈。反馈可以是经由VR头盔105的视觉反馈或听觉反馈或者经由VR输入外围设备140的触觉反馈。
眼睛跟踪模块165从眼睛跟踪单元160接收眼睛跟踪数据并且基于眼睛的眼睛跟踪数据确定用户眼睛的眼睛位置。眼睛位置指定眼睛相对于VR头盔105或者其任一元件的朝向、定位、或者两者。因为眼睛的旋转轴根据眼睛在其眼窝中的位置而改变,所以确定眼睛在其眼窝中的定位允许眼睛跟踪模块165更加准确地确定眼睛朝向。眼睛位置还可以识别从眼睛的位置、定位或者两者确定的眼睛在电子显示器115上聚焦的区域。
在一些实施方式中,眼睛跟踪单元160输出包括眼睛的图像的眼睛跟踪数据,并且眼睛跟踪模块165从图像确定眼睛的位置。例如,眼睛跟踪模块165存储由眼睛跟踪单元160捕获的图像与眼睛位置之间的映射以从眼睛跟踪单元160捕获的捕获图像确定参考眼睛位置。可替代地或者另外地,眼睛跟踪模块165通过将在确定参考眼睛位置时由眼睛跟踪单元160捕获的图像与在确定更新眼睛位置时捕获的图像进行比较,来确定相对于参考眼睛位置的更新眼睛位置。眼睛跟踪模块165可使用来自不同的成像装置或者其他传感器的测量来确定眼睛位置。例如,眼睛跟踪模块165使用来自慢速眼睛跟踪系统的测量确定参考眼睛位置并且然后从快速眼睛跟踪系统确定相对于参考眼睛位置的更新位置,直至基于来自慢速眼睛跟踪系统的测量确定下一个参考眼睛位置。
眼睛跟踪模块165可确定眼睛校准参数以改善眼睛跟踪的精度和准确度。眼睛校准参数包括每当用户穿上或者调整VR头盔105时可能改变的参数。示例性眼睛校准参数包括眼睛跟踪单元160的部件与眼睛的一个或多个部分(诸如眼睛中心、瞳孔、角膜边界、或者眼睛表面上的点)之间的估计距离。其他示例性眼睛校准参数可以对于特定用户是特定的并且包括估计的平均眼睛半径、平均角膜半径、平均巩膜半径、眼睛表面上的特征图、以及估计的眼睛表面轮廓。在来自VR头盔105外部的光到达眼睛的实施方式中(如在一些增强现实应用中),校准参数可包括由于来自VR头盔105外部的光的变化而导致的用于强度和颜色均衡的校正因数。眼睛跟踪模块165可使用眼睛校准参数来确定由眼睛跟踪单元160捕获的测量何时允许眼睛跟踪模块165确定准确的眼睛位置(本文中还称为“有效测量”)。无效测量可以是由用户眨眼、调整头盔、或者移除头盔以及由于外部光导致VR头盔105在照明方面经历大于阈值的变化所引起的,眼睛跟踪模块165无法从无效测量来确定准确的眼睛位置。
VR头盔
图2A是虚拟现实(VR)头盔105的一个实施方式的示图。VR头盔200包括前刚体205和带子210。前刚体205包括电子显示器115(图2A中未示出)、IMU 130(图2A中未示出)、一个或多个位置传感器125(图2A中未示出)、定位器120、以及眼睛跟踪单元160。在其他实施方式中,VR头盔200可包括与图2A描述的那些不同的或者额外的部件。
定位器120相对于彼此并且相对于参考点位于前刚体205上的固定位置。例如,参考点位于IMU 130的中心。定位器120中的每一个发射可由外部成像装置135检测的光。在图2A的实例中,定位器120、或定位器120的部分位于前刚体205的前侧220A、顶侧220B、底侧220C、右侧220D、以及左侧220E。
在图2A的实例中,眼睛跟踪单元160从VR头盔200的外部不可见。眼睛跟踪单元160对于从后面查看VR头盔200的用户可以可见或者可以不可见。然而,眼睛跟踪单元160通常位于顶侧220B、底侧220C、右侧220D、或者左侧220E以避免阻挡用户对电子显示器115的查看。例如,眼睛跟踪单元160位于VR头盔220的沿着顶侧220B、右侧220D、底侧220C、或者左侧220E中的两者之间的边缘的拐角中。
图2B是图2A中示出的VR头盔200的实施方式的前刚体205的截面225。如图2B中所示,前刚体205包括改变来自电子显示器115的图像光的显示光学块118并将改变的图像光提供至位于眼睛245的角膜255内的眼睛245的瞳孔。与显示光学块118相比,眼睛跟踪单元160位于更接近眼睛245。在各种实施方式中,眼睛跟踪单元160位于用户到显示光学块118和到电子显示器115的视线的上面、下面、左面、或者右面。例如,眼睛跟踪单元160的一个或多个部件位于邻近于显示光学块118的拐角。为了示出眼睛跟踪单元160的细节,图2B可扩大VR头盔的部件之间的一些距离或者角度。例如,在一些实施方式中,光学块118与电子显示器115之间的距离超过眼睛245与显示光学块118之间的距离。为了说明的目的,图2B示出与单个眼睛245相关联的截面225,但是另一显示光学块118、另一电子显示器115、或者两者可向用户的另一眼睛提供改变的图像光。类似地,另一眼睛跟踪单元160可跟踪用户的另一眼睛。
眼睛跟踪单元160包括诸如激光器260的相干光源,以及诸如照相机270的成像系统。激光器260照亮眼睛表面250的一部分,并且照相机270测量由眼睛表面250反射的光。眼睛表面250可指眼睛的巩膜、虹膜或者两者的表面。激光器260相对于眼睛245的表面法线向量265以激光器角度275安装,并且照相机270相对于眼睛245的表面法线向量265以照相机角度280安装。表面法线向量265与眼睛表面250的被激光器照亮的部分正交。例如,激光器角度275在表面法线向量265与从眼睛表面250的被激光器260照亮的部分的中心到激光器的输出孔的中心的直线之间测量。照相机角度280可以在表面法线向量265与从眼睛表面250的被照亮部分的中心到照相机的光传感器或光输入孔的中心的直线之间进行测量。在一些实施方式中,激光器角度275与照相机角度280之间的差异小于阈值量,因此照相机270捕获入射在眼睛表面250上的光的镜面反射的图像,这有利地增加所得图像的对比度并且使光功率损耗和功率消耗最小化。
在各种实施方式中,激光器260用相干光照亮眼睛表面250的一部分。例如,激光器260发射波长在832nm至852nm之间的红外光谱的光。作为另一实例,激光器260发射波长在900nm至1550nm之间的光。可替代地,激光器260发射波长在可见光谱中的光。然而,如在一些增强现实应用中,以红外光谱照亮眼睛表面250有利地减少来自电子显示器115发射的可见光或者来自穿过VR头盔200的外部可见光的干扰和噪声。激光器260可以定位为使入射在眼睛245的瞳孔上的光最小化。另外,激光器260通常具有防止用户不适或者受伤的低功率。例如,激光器是功率约0.3微瓦的一类激光器。作为另一实例,激光器260是边缘发射半导体激光器或者垂直腔体表面发射激光器(VCSEL)。
虽然眼睛跟踪单元160通常包括相干光源(即,发射具有可忽略的相位差的精确波长的光的光源),但是可以使用非相干光源。在一些实施方式中,眼睛跟踪单元160包括发射具有在可见频带或者红外谱带的波长的光的发光二极管(LED)。然而,因为LED相对于激光器260跨宽的波长带发射,所以与使用相干光源产生的那些图像相比,LED可产生具有更低对比度的图像。在一些实施方式中,额外的激光器260(或者其他光源)补充激光器260(或者LED或者其他光源)并且发射与激光器260(或者其他光源)不同波长的光以增加眼睛跟踪精度。
照相机270捕获由激光器260或者其他相干光源照亮的眼睛表面250的部分所反射的光。例如,照相机270用30乘30像素的像素阵列捕获图像,其中,像素对应于眼睛表面250的15至40微米的分辨率。在这个实例中,眼睛表面250的成像部分的面积在0.20和1.44平方毫米之间。眼睛表面250的成像部分的尺寸在眼睛表面250的被激光器260照亮的部分的尺寸的阈值量内。
在各种实施方式中,照相机270具有增大的分辨率以增加眼睛跟踪精度和准确度。例如,照相机270具有像素阵列为320像素乘240像素的四分之一视频图形阵列(QVGA)分辨率。增加照相机270中包括的像素的数量允许眼睛表面250的对应于像素的尺寸减小,允许由照相机270成像的眼睛表面250的面积增加,或者这些的一些组合。然而,使用较少的像素有利地减小照相机270消耗的功率,并且使用较小的面积用于成像和照明有利地减小激光器260的功率消耗。在一些实施方式中,照相机270是光学鼠标传感器或者捕获很高的帧速率的其他传感器。例如,照相机270每秒捕获约5,000图像,以提供精确的眼睛跟踪数据。
眼睛跟踪单元
图3A是眼睛跟踪单元160的一个实施方式的示图。眼睛跟踪单元160包括激光器260和照相机270,该激光器包括准直透镜310,并且照相机包括透镜组件320和图像传感器330。在其他实施方式中,眼睛跟踪单元160可包括与结合图3A描述的那些不同和/或额外的部件。
准直透镜310将由激光器260发射的光对准为朝向眼睛表面250的平行光束。在一些实施方式中,准直透镜310与激光器260成一体。由激光器260发射的准直光使激光器发射的光均匀照亮眼睛表面250的由照相机270成像的一部分。眼睛表面250的被照亮部分的非均匀照明将引起照相机270捕获的图像的不同部分具有不同的亮度范围,减小由照相机270捕获的眼睛表面250的图像的对比度。因此,准直透镜310提高由照相机270捕获的所得图像的对比度。另外,由激光器260使用准直透镜310或者其他部件发射的准直光减小从激光器260入射在眼睛表面250的成像部分外部的眼睛表面250上的光。这通过减少激光器发射的随后不朝向照相机270反射的光来减小激光器260消耗的功率。
在图3A的实例中,从激光器260发射的光照亮点A和B之间以及点B和C之间的眼睛表面250。虽然图3A的截面图示出从激光器260发射的光照亮弧形,但是激光器260发射的准直光通常照亮眼睛表面250的圆形或者椭圆区域。因为眼睛表面250是粗糙的(例如,由于诸如毛细管或者凸块的特征),眼睛表面250在多个方向上散射入射光。眼睛表面250的不同部分具有不同的特征布置,因此从眼睛表面250的一部分反射的光的衍射图案说明该部分内的特征的布置,这允许从其衍射图案来识别眼睛表面250的该部分。入射在眼睛表面250上的光可以在被反射和散射之前折射很小距离到眼睛中(例如,当发射光是红外光谱时),因此本文中对“眼睛表面”的引用也包括通过其透射发射光和反射光的眼睛部分。
透镜组件320收集由眼睛表面250反射到图像传感器330上的光并且对其成像。另外,透镜组件320校正一个或多个光学误差(诸如,相对于显示光学块118描述的那些),以提高由图像传感器330捕获的图像的对比度及其他特性。在一些实施方式中,透镜组件320可放大反射光。可替代地,透镜组件320仅对反射光应用可忽略的放大率。
图像传感器330捕获由透镜组件320聚焦的入射光。由于眼睛表面250处的散射,因此入射在图3A中的图像传感器330上的点D处的光是由来自眼睛表面250的所照亮部分内的多个点(诸如,点A、B及C)反射的光的干涉导致的。类似地,入射在图3A中的图像传感器330的点E和F处的光是由从眼睛表面250上的多个点反射的光之间的干涉导致的。因此,图像传感器330捕获眼睛表面250的衍射图案或者光斑图案。对于每一个像素,图像传感器330包括光敏电路,该光敏电路输出与像素上的入射光强度成比例的电流或电压。
在一个实施方式中,图像传感器330对光波长的包括由激光器260发射的波长的窄带敏感,因此与像素或者子像素对应的光敏电路的输出与波长在像素或者子像素上的波长的窄带内的光强度成比例。在其他实施方式中,图像传感器330具有宽带或者多带敏感性,因此与像素或者子像素对应的光敏电路的输出与波长在图像传感器330的在像素或者子像素上的宽带范围内的光强度成比例。例如,图像传感器330包括互补金属氧化物半导体(CMOS)阵列,其可以与波长小于约850nm的激光一起使用。作为另一实例,图像传感器330包括基于铟砷化镓(InGaAs)合金的阵列。这样的图像传感器330可以与发射波长在约900nm至约1550nm之间的激光的激光器260一起使用。
图3B是包括偏振敏感元件的眼睛跟踪单元160的一个实施方式的示图。在图3B中示出的眼睛跟踪单元160包括激光器260、准直透镜310、入射光偏振器340、反射光偏振器350、以及照相机270。然而,在其他实施方式中,眼睛跟踪单元160可包括与结合图3B描述的那些不同和/或额外的部件。可替代地,眼睛跟踪单元160可包括组合了由结合图3B所描述的实施方式中的多个部件提供的功能的部件。
入射光偏振器340偏振从激光器260发射的光。例如,入射光偏振器340是将由激光器260发射的光圆偏振的四分之一波片。作为另一实例,入射光偏振器340是诸如液晶元件的可变光偏振器。通过施加电场修改液晶的取向,眼睛跟踪单元160可动态地改变入射在眼睛表面250上的光的偏振状态。在一些实施方式中,省略了偏振器340。例如,激光器260发射在由眼睛表面250反射的光的入射平面中线性偏振的光。眼睛表面250修改由激光器260发射的照亮眼睛表面250的光的偏振状态(例如,偏振取向、偏振程度)。因为眼睛通常是椭圆的并且具有粗糙表面,因此由激光器260发射的照亮眼睛表面250的不同部分的光在不同的角度以不同的偏振状态反射。
反射光偏振器350将从眼睛表面250朝向照相机270反射的光滤波至特定的偏振面,因此照相机270测量反射光与反射光偏振器350的偏振面一致的程度。例如,反射光偏振器350是将由照相机270成像的光线性偏振的半波片。照相机270测量眼睛表面250反射的光的偏振状态与反射光偏振器350的偏振面匹配的程度。例如,反射光偏振器350将光偏振至由眼睛表面250反射的光的入射面。可替代地或者另外地,反射光偏振器350是液晶元件,该液晶元件可以根据修改液晶取向的所施加电场动态地改变由眼睛表面250反射的光的偏振状态。在其他实施方式中,反射光偏振器350还包括将线性偏振光进行圆偏振并且提高照相机270的功能的四分之一波片。使用偏振光减小来自除激光器260以外的光源的干扰。
入射在照相机270处的光强度表示入射在反射光偏振器350上的光与反射光偏振器350的偏振面匹配的程度。因此,照相机270捕获图像,其中,像素的强度表示来自眼睛表面250的特定部分的偏振状态,并且因此提供关于电子振荡的局部方向和眼睛表面250的特定部分处的表面法线向量的朝向的信息。根据入射在眼睛表面250上的光的偏振状态,由照相机270捕获的偏振过滤光的强度可以在每个特定的像素处具有局部最小值、局部最大值、或者其间的任何强度值。眼睛跟踪模块165可通过计算线性偏振的角度来从图像像素的强度确定眼睛表面250的不同部分的表面法线向量。使用这些表面法线向量,眼睛跟踪模块165导出眼睛表面轮廓的模型。可替代地或者另外地,眼睛跟踪模块165可确定每个像素的线性偏振度。使用线性偏振度作为图像的像素值,眼睛跟踪模块165使用图像的像素值来确定如关于图4A至图5描述的眼睛位置。
图3C是包括产生剪切干涉效应的一个或多个元件的眼睛跟踪单元160的一个实施方式的示图。在图3C的实例中,眼睛跟踪单元160包括具有准直透镜310的激光器260、剪切板360、以及照相机270。然而,在其他实施方式中,眼睛跟踪单元160可包括与结合图3C描述的那些不同和/或额外的部件。可替代地,眼睛跟踪单元160可包括组合了由结合图3C描述的实施方式中的多个部件提供的功能的部件。
剪切板360在剪切板360的移位反射之间产生剪切干涉效应,增加由照相机270捕获的图像的对比度。剪切板360的前表面反射从眼睛表面250反射的入射光的一部分。剪切板360上的入射光的另一部分由剪切板360的前表面折射、由剪切板360的后表面反射并且由剪切板360的前表面再次折射。因此,剪切板360产生由照相机270捕获的两个或多个干涉反射。这些多次反射之间的干涉图案取决于剪切板360的前后表面的斜率间的差异。例如,剪切板360是显微镜盖片,其与由眼睛表面250反射的光成45°取向,这使照相机270的敏感性最大化。在其他实施方式中,剪切板360是引起干涉的光栅或者气楔剪切干涉仪。使用光栅代替剪切板360可减小光路的长度并且便于小型化。
从眼睛表面250反射的光包含与眼睛表面250上的高度波动对应的振幅和相位信息。剪切板360(或者光栅)引起眼睛表面250反射的光之间的干涉和眼睛表面250反射的光的空间上分开的复制。所得图像取决于眼睛表面250的朝向(以及剪切板的前后表面的相对朝向)。剪切板360(或者光栅)有利地增加所得图像的对比度。
虽然为了说明的目的示出为分开的实施方式,但是图3A、图3B以及图3C中示出的元件的任何组合可以存在于眼睛跟踪单元160的各种实施方式中。例如,眼睛跟踪单元160包括入射光偏振器340、反射光偏振器350、剪切板360、或者其任何组合,以结合偏振感测效应产生剪切干涉效应。使用入射在眼睛表面250上的准直光、入射在照相机270上的偏振过滤光、以及入射在照相机270上的剪切光、或者其组合来增加由眼睛表面250散射的光的对比度,使能够在不降低眼睛跟踪单元160的准确度的情况下使用较低功率的激光器。
眼睛跟踪
图4A示出由眼睛跟踪单元160捕获的示例性图像401和402。照相机270在初始时间捕获眼睛表面250的图像401并且在稍后时间捕获眼睛表面250的图像402。为了说明的目的,图像401和402表示由图像传感器330利用10乘10的像素阵列捕获的图像,但是其他实施方式可以具有不同数量的像素。在图4A中,像素的不同颜色对应于来自从眼睛表面250的多个点散射的光之间的干涉的不同的光强度。因此,图像401和402可以解释为眼睛表面250的被照亮部分的衍射图案。
为了确定眼睛的位置变化,眼睛跟踪模块165确定图像401和图像402之间的子像素移位。将子像素移位乘以每个像素的校准距离,允许眼睛跟踪模块165确定眼睛表面250在初始时间与稍后时间之间移位的距离。例如,图像402中捕获的图案相对于图像401中捕获的图案向左移位两个子像素。例如,如果子像素在眼睛表面250上对应于10微米的距离,则眼睛表面250在图像402的稍后时间相对于其在图像401的初始时间的位置已向左运动20微米。
可替代地或者另外地,眼睛跟踪模块165通过比较眼睛位置已知的先前图像来确定眼睛在图像401或者402的一个中的位置。例如,眼睛跟踪模块165包括各自与参考眼睛位置相关联的图像的数据库。通过将图像402与存储的图像进行匹配,眼睛跟踪模块165确定眼睛具有与存储的图像相关联的参考眼睛位置。在一些实施方式中,眼睛跟踪模块165识别捕获图像402的一部分中的表面特征。表面特征是与眼睛表面250的特定部分相关联的衍射或者光流图案。眼睛跟踪模块165可通过以下步骤确定眼睛位置:当在参考图像中捕获到表面特征时,检索与表面特征相关联的参考眼睛位置;确定捕获图像中的表面特征与参考图像中的表面特征之间的子像素移位;并且通过根据使用每个像素的校准距离所确定的子像素移位修改参考眼睛位置,来确定眼睛位置。
图4B是示出了从图4A中的图像导出的眼睛运动与相对于显示器115的眼睛跟踪之间的示例性关系的概念图。图4B示出包括照相机270、眼睛245、以及电子显示器115的VR头盔105的简化截面。其他实施方式可包括修改眼睛的瞳孔与电子显示器115之间的光路并且相应地修改在所示实例中给出的关系的额外元件。
在图4B中,参考点A是表面特征的参考位置,并且点A’是与更新的眼睛位置对应的表面特征的位置。眼睛跟踪模块165确定与表面特征的参考位置和表面特征的更新位置之间的差异对应的点A与A’之间的眼睛移位距离x。在一些实施方式中,参考位置是在先前捕获图像(例如,图像401)时的眼睛位置,并且眼睛移位距离x是通过比较先前捕获图像与更新的图像(例如,图像402)来确定的。在一些实施方式中,表面特征的参考位置是与描述眼睛位置的坐标系统的轴对应的眼睛位置,并且眼睛移位距离x表示更新的眼睛位置中的表面特征相对于参考位置中的表面特征的位置的位移。在该情况下,眼睛移位距离x可以根据单个图像确定(例如,通过将图像402与在离表面特征的参考位置眼睛移位距离x处的包括表面特征的位置的存储图像进行匹配)。
基于校准参数,眼睛跟踪模块165检索眼睛245的半径R。半径R可以是与点A’或者与参考点A相关联的局部半径。基于半径R,眼睛跟踪模块165根据等式θ=x/R确定眼睛运动角度θ,其表示更新的眼睛位置相对于截面平面中的参考位置的角位移。
凝视点B’表示在从捕获图像确定的更新的眼睛位置处的用户的视力的焦点。用户通过角膜255内的瞳孔具有朝向电子显示器115上的凝视点B’的视线410。参考凝视点B表示当眼睛在参考位置时用户的视力在电子显示器115上的焦点。例如,参考凝视点B是当表面特征定向在参考点A时用户的视力在校准期间的焦点,或者当用户的眼睛被定位为使得表面特征定向在参考点A时,在捕获先前图像时的用户的视力的焦点。当眼睛在参考位置时,用户的参考视线405朝向电子显示器115上的参考凝视点B。视线405与视线410之间的角度等于眼睛运动角度θ。
眼睛跟踪模块165基于眼睛与电子显示器115之间的相对朝向来确定凝视点B’相对于参考凝视点B的凝视位置y。在图4B中示出的简化图中,眼睛跟踪模块165获得眼睛的旋转轴与电子显示器115之间的沿着相对于电子显示器115正交的线415的距离D。基于从校准参数确定的参考视线405与线415之间的角度α,眼睛跟踪模块将凝视位置确定为y=D·tan(α)-D·tan(α-θ)。因为眼睛的朝向轴可以随着眼睛移动而改变,所以眼睛跟踪模块165可至少部分基于最近确定的眼睛位置来动态地确定距离D、角度α、以及线415的位置。
眼睛跟踪
图5是用于确定眼睛位置的过程的一个实施方式的流程图。在一些实施方式中,该方法可包括与结合图5描述的那些不同和/或额外的步骤。另外,在一些实施方式中,方法可以与结合图5描述的顺序不同的顺序执行步骤。
VR头盔105用安装至VR头盔105(例如,内部)的相干光源(诸如激光器260)照亮510眼睛表面250。在各种实施方式中,相干光源包括在VR头盔105中的眼睛跟踪单元160中。如以上结合图3A和图3B所述,照亮510眼睛表面250的光可以通过准直透镜310准直、通过入射光偏振器340偏振、或者进行这两者。
VR头盔105的眼睛跟踪单元160中包括的成像装置(诸如照相机270)捕获520由眼睛表面250反射的光。在一些实施方式中,在成像装置中的成像传感器330接收从眼睛表面250反射的光之前,从眼睛表面250反射的光可以通过反射光偏振器350偏振或者通过透镜组件320折射,该透镜组件320聚焦或以其他方式修改从眼睛表面250反射的光。因为眼睛表面250是粗糙的,所以由成像装置的成像传感器330捕获520的光可以是由从眼睛表面250的多个部分反射的光的组合形成的光斑图案或衍射图案。
在一些实施方式中,VR头盔105执行一个或多个图像处理操作以提高从由成像装置捕获520的光生成的图像的对比度。示例性图像处理操作包括传感器校正(例如,黑电平调整、透镜畸变校正、伽马校正)和照明水平校正(例如,白平衡校正)。VR头盔105还可以执行直方图均衡化或者任何其他技术,以增加来自捕获光的图像的对比度。在一些实施方式中,VR头盔105可通过电子显示器115或者外部光源执行照明水平校正以减小由眼睛表面250的可变照明引起的噪声。虽然照相机270通常捕获与相干光源的波长对应的单个颜色的图像,但是VR头盔105可在照相机270捕获多种颜色的图像的实施方式中应用颜色校正(例如,拜尔解码(debayering),颜色空间转换至亮度色度空间)。可替代地或者另外地,VR控制台110对由VR头盔105中的成像装置获得的并且从VR头盔105传送至VR控制台110的图像执行一个或多个图像处理操作。
VR头盔105向VR控制台110发送包括由成像装置从捕获的光捕获的图像或者从捕获图像导出的数据的眼睛跟踪数据。例如,眼睛跟踪数据包括通过一个或多个图像处理操作修改的捕获图像的版本。作为另一实例,眼睛跟踪数据包括由眼睛跟踪单元160捕获的图像和描述通过除眼睛跟踪单元160的相干光源以外的源照亮眼睛表面250的数据。在VR头盔105执行与眼睛跟踪模块165相关联的功能的实施方式中,眼睛跟踪数据未传送至VR控制台110。
眼睛跟踪模块165验证530所接收的眼睛跟踪数据对应于可用于准确地确定眼睛位置的有效测量。例如,眼睛跟踪模块165确定眼睛跟踪数据的代表性品质因数并将代表性品质因数与有效性阈值进行比较。如果代表性品质因数小于有效性阈值,则眼睛跟踪模块165确定所接收的眼睛跟踪数据无效。然而,如果代表性品质因数等于或超过有效性阈值,则眼睛跟踪模块165验证530所接收的眼睛跟踪数据对应于有效测量。代表性品质因数可以是图像数据中的像素值的总和、平均值、中值、范围、标准偏差、或者其他量化(例如,像素灰度级、亮度值、强度值)。代表性品质因数可以通过采样技术根据所接收的眼睛跟踪数据中包括的图像中的所有像素的品质因数确定或者根据所接收的眼睛跟踪数据中包括的图像中的像素的子集估计。在一些实施方式中,眼睛跟踪模块165确定图像中的各种像素的相对强度,确定相对强度的总和、并且比较总和与有效性阈值。例如,当用户眨眼时,相对像素强度的总和减小,因此眼睛跟踪模块165响应于确定相对像素强度值(或者其他代表性值)的总和小于有效性阈值来确定所接收的眼睛跟踪数据是无效的。在各种实施方式中,有效性阈值是在制造VR头盔105期间指定的或者在校准VR头盔105期间确定的。为了考虑在验证530所接收的眼睛跟踪数据的有效性时变化的外部照明条件,可以基于在所接收的眼睛跟踪数据的阈时间内捕获的先前接收的眼睛跟踪数据的代表性品质因数的往绩平均值或者像素的相对强度的组合,或者在所接收的眼睛跟踪数据的阈时间内捕获的并且确定是有效的先前接收的眼睛跟踪数据的代表性品质因数的往绩平均值或者像素的相对强度,来动态地确定有效性阈值。在各种实施方式中,往绩平均值应用为有限脉冲响应(FIR)滤波器,或者类似地以诸如利用无限脉冲响应(IIR)或者FIR滤波器的另外方式进行数字滤波以接收时间或频率的受控响应。在其他实施方式中,往绩平均值可以应用为能够针对指定响应被调谐的FIR滤波器,或者可以使用任何其他合适的滤波器可替代地应用。
眼睛跟踪模块165访问540校准数据以用于根据所接收的眼睛跟踪数据确定眼睛位置。校准数据可包括表示眼睛表面250上的与眼睛跟踪单元160的图像传感器330的子像素对应的距离的子像素距离值。如果图像传感器330的子像素对应于眼睛表面250上的矩形(或者椭圆形)区域,则校准数据可包括与沿着眼睛表面250的正交方向对应的两个子像素距离值(例如,眼睛表面250上的区域的长度和宽度)。子像素距离值可以部分地根据图像传感器330(或者透镜组件320)与眼睛表面250之间的距离确定。图像传感器330与眼睛表面250之间的距离可以在校准时段期间确定或者经由VR头盔105中包括的测距装置(例如,激光测距仪、声波定位仪)动态地确定。在各种实施方式中,VR头盔105周期性地确定图像传感器330与眼睛表面250之间的距离(例如,每秒一次),响应于VR头盔105通电确定图像传感器330与眼睛表面250之间的距离,或者响应于从位置传感器125接收指示调整用户头部上的VR头盔105的测量信号而确定图像传感器330与眼睛表面250之间的距离。子像素距离值可以通过将作为照相机270或者透镜组件320的特性的与子像素对应的成弧度的角度乘以图像传感器330与眼睛表面250之间的距离来确定。利用子像素距离值,眼睛跟踪模块165根据来自接收的眼睛跟踪数据的眼睛表面250的两个图像之间的子像素移位来确定眼睛位置的变化。
可替代地或者另外地,眼睛跟踪模块165从包括在校准时段期间捕获的参考图像的表(例如,查找表)访问540校准数据。参考图像对应于电子显示器115上的已知的眼睛位置、特定的眼睛凝视点、或者两者。在示例性校准时段期间,VR头盔105指示用户凝视电子显示器115上的一系列图标并且当用户凝视每个图标时捕获参考图像。参考图像对应于捕获时的图标的眼睛凝视点,并且眼睛跟踪模块165根据眼睛模型和眼睛跟踪单元160中包括的其他眼睛跟踪系统来推断与参考图像对应的眼睛位置。眼睛跟踪模块165可存储参考图像或者可存储参考图像的压缩表示以便于与来自接收的眼睛跟踪数据的随后图像进行匹配。例如,眼睛跟踪模块165为每个参考图像生成指纹,从每个参考图像提取特征(例如,斑点、边缘、脊部、拐角),或者两者。提取的特征可以与识别眼睛表面250上的特征的位置、特征的组成像素的值、或者两者的信息相关联地存储。利用参考图像(或者其压缩表示),眼睛跟踪模块165可参考来自所接收的眼睛跟踪数据的单个图像确定眼睛位置。
使用访问的校准数据,眼睛跟踪模块165从所接收的眼睛跟踪数据确定550眼睛位置。在一些实施方式中,眼睛跟踪模块165获得与参考眼睛位置相关联的参考图像。例如,照相机270捕获参考图像,同时,眼睛跟踪单元160中的另一眼睛跟踪系统(例如,慢速眼睛跟踪系统)独立地确定参考眼睛位置。眼睛跟踪模块165通过确定更新的图像与参考图像之间的子像素移位、根据子像素移位确定眼睛移位距离、并且组合参考眼睛位置与眼睛移位距离来确定550更新的眼睛位置。为了确定子像素移位,眼睛跟踪模块165可使用任何运动跟踪或者光流技术(例如,相位相关、块匹配、差分光流方法)。眼睛跟踪模块165通过将所确定的子像素移位乘以来自访问的校准数据的子像素距离值,来确定眼睛移位距离。子像素移位可以是二维的(例如,向上5个像素,向左3个像素),所以眼睛移位距离也可以是二维的(例如,向上50微米,向左30微米)。利用眼睛移位距离,眼睛跟踪模块165通过将参考眼睛位置移位眼睛移位距离来确定550更新的眼睛位置。当确定550更新的眼睛位置时,眼睛跟踪模块165可以:更新眼睛的朝向和定位,确定更新的眼睛旋转轴,确定电子显示器115上的新的凝视定位(如关于图4B进一步详细描述的),或者其组合。
可替代地或者另外地,眼睛跟踪模块165通过将更新的图像与来自访问的校准数据的参考图像进行匹配,来确定550眼睛位置。眼睛跟踪模块165将眼睛跟踪模块165与各种参考图像进行比较来确定匹配的参考图像。眼睛跟踪模块165可通过基于与更新图像的匹配程度对参考图像进行打分并且选择分数最高的参考图像,来确定匹配的参考图像。可替代地或者另外地,将参考图像与更新图像进行比较并且打分直至识别到分数超过阈值的参考图像。如果照相机270捕获对应于眼睛的1平方毫米的图像,则校准数据包括与能够在眼睛的整个运动范围上成像的眼睛表面250的不同部分对应的约500张图像。在一些实施方式中,眼睛跟踪模块165生成更新图像的压缩表示(例如,指纹、一组特征),并且将更新图像的压缩表示与参考图像的压缩表示进行比较以减少用于确定匹配的参考图像的时间和计算资源。当眼睛跟踪模块165确定匹配的参考图像时,眼睛跟踪模块165通过将与匹配的参考图像相关联的参考位置调整更新图像与参考图像之间的子像素移位,来确定更新位置。
眼睛跟踪模块165向VR控制台110的其他部件提供560所确定的眼睛位置。例如,眼睛跟踪模块165向VR引擎155提供560所确定的眼睛位置中包括的估计凝视点,VR引擎155使用该凝视点作为至虚拟世界的输入。基于该凝视点,VR引擎155可选择用于向用户呈现的内容(例如,选择与凝视点对应的虚拟动漫生物以针对虚拟斗士竞赛中的另一虚拟动漫生物部署,导航虚拟菜单,选择一种在虚拟世界中玩的运动球,或者选择臭名昭著的运动球员加入梦幻运动球队)。
附加配置信息
实施方式的前述描述仅出于说明的目而呈现;且不旨在穷尽或者将专利权局限于所公开的精确形式。相关领域技术人员应认识到,根据上述公开,可以有多种修改和变化。
本描述的某些部分在关于信息的操作的算法和符号表示方面描述实施方式。这些算法描述和表示通常由数据处理领域的技术人员使用,以便将他们的工作实质有效传达给本领域的其他技术人员。这些操作,当被描述为功能性的、计算性的或逻辑性的时,被理解为由计算机程序或等同电路、微代码等实施。此外,有时,把这些操作的布置称为模块也被证明是方便的,并且不失其一般性。所描述的操作及其关联模块可体现为软件、固件、硬件或其任意组合。
本文描述的任何步骤、操作或处理可用一个或多个硬件模块或软件模块单独或与其他装置组合执行或实施。在一个实施方式中,软件模块可用计算机程序产品实施,该计算机程序产品包括包含计算机程序代码的计算机可读介质,该程序代码可由计算机处理器执行以用于执行所描述的任何或所有的步骤、操作或处理。
实施方式在本文中还可以涉及用于执行操作的设备。该设备可针对所需目的而具体构造和/或该设备可包括由存储在计算机中的计算机程序选择性激活或者重新配置的通用计算装置。这种计算机程序可被存储在适用于存储电子指令的非暂时性、有形的计算机可读存储介质或任何类型的介质中,该介质可以耦接至计算机系统总线。此外,本说明书中提及的任何计算系统可包括单一处理器或者可以是采用多处理器设计的架构,以提高计算能力。
实施方式还可以涉及通过本文描述的计算过程生产的产品。这样的产品可以包括由计算过程产生的信息,其中信息存储在非暂时性、有形的计算机可读存储介质上并且可包括计算机程序产品的任何实施方式或者本文描述的其他数据组合。
最后,原则上已出于可读性和指导性的目的选择了本说明书中使用的语言,并且该语言并不被选择来划定或者限制专利权。因此,专利权的范围并不旨在由该具体描述来限定,而是由基于本文的本申请所发布的任何权利要求来限定。因此,实施方式的公开旨在用于说明,而非限制在所附权利要求中阐述的专利权的范围。
Claims (18)
1.一种系统,包括:
头盔,包括:
光源,被配置为发射指向所述头盔的用户的眼睛的光,
照相机,被配置为捕获来自所述光源的由所述眼睛的一部分反射的光的光栅图像,所述照相机包括一个或多个像素,每个像素被配置为捕获来自所述光源的由所述头盔的所述用户的所述眼睛反射的光;和
控制台,耦接至所述头盔并且被配置为:
存储表示所述用户的所述眼睛的所述一部分的表面上的与所述照相机中包括的图像传感器的像素对应的距离以及来自所述光源的由所述用户的所述眼睛的所述一部分反射的光的一个或多个先前捕获图像的校准数据;并且
基于来自所述光源的由所述眼睛的所述一部分反射的光的捕获图像和存储的校准数据来确定所述用户的所述眼睛的眼睛位置,其中,基于来自所述光源的由所述眼睛的所述一部分反射的光的捕获图像和所述存储的校准数据来确定所述用户的所述眼睛的眼睛位置包括:
从来自所述光源的由所述眼睛的所述一部分反射的光的捕获图像提取表面特征;
将所提取的表面特征与从来自所述光源的由所述用户的所述眼睛的所述一部分反射的光的至少一组一个或多个先前捕获图像所提取的额外表面特征进行比较;
基于比较,选择与参考眼睛位置相关联的来自所述光源的由所述用户的所述眼睛的所述一部分反射的光的先前捕获图像;
确定来自所述光源的由所述用户的所述眼睛的所述一部分反射的光的捕获图像的表面特征与来自所述光源的由所述眼睛的所述一部分反射的光的所选择的先前捕获图像的表面特征之间的子像素移位;并且
确定所述用户的所述眼睛的位置为所述子像素移位和子像素距离的乘积。
2.根据权利要求1所述的系统,其中,所述表面特征包括与所述用户的所述眼睛的所述一部分的表面的特定部分相关联的光流图案。
3.一种系统,包括:
头盔,包括:
光源,被配置为发射指向所述头盔的用户的眼睛的光,
照相机,被配置为捕获来自所述光源的由所述眼睛的一部分反射的光的光栅图像,所述照相机包括一个或多个像素,每个像素被配置为捕获来自所述光源的由所述头盔的所述用户的所述眼睛反射的光;和
控制台,耦接至所述头盔并且被配置为:
存储表示所述用户的所述眼睛的所述一部分的表面上的与所述照相机中包括的图像传感器的像素对应的距离以及来自所述光源的由所述用户的所述眼睛的所述一部分反射的光的一个或多个先前捕获图像的校准数据;并且
基于来自所述光源的由所述眼睛的所述一部分反射的光的捕获图像和存储的校准数据来确定所述用户的所述眼睛的眼睛位置,其中,基于来自所述光源的由所述眼睛的所述一部分反射的光的捕获图像和所述存储的校准数据来确定所述用户的所述眼睛的眼睛位置包括:
确定来自所述光源的由所述用户的所述眼睛的所述一部分反射的光的捕获图像与来自所述光源的由所述用户的所述眼睛的所述一部分反射的光的先前捕获图像之间的子像素移位;并且
确定相对于与来自所述光源的由所述用户的所述眼睛的所述一部分反射的光的先前捕获图像对应的所述用户的眼睛位置的与来自所述光源的光的捕获图像对应的所述用户的眼睛位置,为所述子像素移位和子像素距离的乘积。
4.一种方法,包括:
用安装在头盔内部的光源照亮用户的眼睛的一部分;
用安装在所述头盔内部的照相机捕获来自所述光源的由所述眼睛的一部分反射的光的图像;
基于来自所述光源的由所述眼睛的所述一部分反射的光的捕获图像和存储的校准数据来确定所述用户的所述眼睛的位置和朝向,所述存储的校准数据包括表示所述用户的所述眼睛的所述一部分的表面上的与所述照相机中包括的图像传感器的子像素对应的距离的子像素距离以及来自所述光源的由所述用户的所述眼睛的所述一部分反射的光的一个或多个先前捕获图像,其中,基于来自所述光源的由所述眼睛的所述一部分反射的光的捕获图像和所述存储的校准数据来确定所述用户的所述眼睛的位置包括:
确定来自所述光源的由所述用户的所述眼睛的所述一部分反射的光的捕获图像与来自所述光源的由所述用户的所述眼睛的所述一部分反射的光的先前捕获图像之间的子像素移位;并且
确定相对于与来自所述光源的由所述用户的所述眼睛的所述一部分反射的光的先前捕获图像对应的所述用户的眼睛位置的与来自所述光源的光的捕获图像对应的所述用户的眼睛位置,为所述子像素移位和所述子像素距离的乘积;以及
基于所确定的眼睛位置,将所述用户的所述眼睛的位置和朝向提供至被配置为向所述头盔提供内容的系统环境的一个或多个部件。
5.一种方法,包括:
用安装在头盔内部的光源照亮用户的眼睛的一部分;
用安装在所述头盔内部的照相机捕获来自所述光源的由所述眼睛的一部分反射的光的图像;
基于来自所述光源的由所述眼睛的所述一部分反射的光的捕获图像和存储的校准数据来确定所述用户的所述眼睛的位置和朝向,所述存储的校准数据包括表示所述用户的所述眼睛的所述一部分的表面上的与所述照相机中包括的图像传感器的子像素对应的距离的子像素距离以及来自所述光源的由所述用户的所述眼睛的所述一部分反射的光的一个或多个先前捕获图像,其中,基于来自所述光源的由所述眼睛的所述一部分反射的光的捕获图像和所述存储的校准数据来确定所述用户的所述眼睛的位置包括:
从来自所述光源的由所述眼睛的所述一部分反射的光的捕获图像提取表面特征;
将所提取的表面特征与从来自所述光源的由所述用户的所述眼睛的所述一部分反射的光的至少一组一个或多个先前捕获图像所提取的额外表面特征进行比较;
基于比较,选择与参考眼睛位置相关联的来自所述光源的由所述用户的所述眼睛的所述一部分反射的光的先前捕获图像;
确定来自所述光源的由所述用户的所述眼睛的所述一部分反射的光的捕获图像的表面特征与来自所述光源的由所述眼睛的所述一部分反射的光的所选择的先前捕获图像的表面特征之间的子像素移位;并且
确定所述用户的所述眼睛的位置为所述子像素移位和所述子像素距离的乘积;以及
基于所确定的眼睛位置,将所述用户的所述眼睛的位置和朝向提供至被配置为向所述头盔提供内容的系统环境的一个或多个部件。
6.根据权利要求5所述的方法,其中,所述表面特征包括与所述用户的所述眼睛的所述一部分的表面的特定部分相关联的光流图案。
7.一种系统,包括:
头盔,包括:
光源,被配置为发射指向所述头盔的用户的眼睛的光,
照相机,被配置为捕获来自所述光源的由所述眼睛的一部分反射的光的光栅图像,所述照相机包括一个或多个像素,每个像素被配置为捕获来自所述光源的由所述头盔的所述用户的所述眼睛反射的光;和
控制台,耦接至所述头盔并且被配置为:
存储表示所述用户的所述眼睛的所述一部分的表面上的与所述照相机中包括的图像传感器的像素对应的距离以及来自所述光源的由所述用户的所述眼睛的所述一部分反射的光的一个或多个先前捕获图像的校准数据;并且
基于来自所述光源的由所述眼睛的所述一部分反射的光的捕获图像和存储的校准数据来确定所述用户的所述眼睛的眼睛位置,其中,基于来自所述光源的由所述眼睛的所述一部分反射的光的捕获图像和所述存储的校准数据来确定所述用户的所述眼睛的眼睛位置包括:
确定来自所述光源的由所述眼睛的所述一部分反射的光的捕获图像的代表性品质因数;
将所述代表性品质因数与有效性阈值进行比较;
如果所述代表性品质因数小于所述有效性阈值,则确定所接收的眼睛跟踪数据无效;
如果所述代表性品质因数等于或超过所述有效性阈值,则:
验证所接收的眼睛跟踪数据对应于有效测量;
访问所述存储的校准数据;并且
基于来自所述光源的由所述眼睛的所述一部分反射的光的捕获图像和所述存储的校准数据来确定所述用户的所述眼睛的眼睛位置。
8.根据权利要求7所述的系统,其中,所述控制台进一步被配置为基于所确定的眼睛位置向所述头盔提供内容。
9.根据权利要求7所述的系统,其中,所述代表性品质因数基于来自所述光源的由所述眼睛的所述一部分反射的光的捕获图像中的像素的子集的品质因数和所述存储的校准数据。
10.根据权利要求7所述的系统,其中,所述代表性品质因数基于来自所述光源的由所述眼睛的所述一部分反射的光的捕获图像中的所有像素的品质因数和所述存储的校准数据。
11.根据权利要求7所述的系统,其中,所述有效性阈值包括在捕获到来自所述光源的由所述眼睛的所述一部分反射的光的捕获图像时的时间的阈时间内先前捕获的来自所述光源的由所述眼睛的所述一部分反射的光的额外图像的品质因数值的往绩平均值。
12.根据权利要求7所述的系统,其中,所述光源是相干光源并且所述头盔进一步包括:
反射光偏振器,被配置为在所述照相机的像素捕获修改的光之前,修改来自所述相干光源的由所述用户的所述眼睛的所述一部分反射的光。
13.根据权利要求12所述的系统,其中,所述反射光偏振器包括四分之一波片。
14.根据权利要求13所述的系统,其中,所述反射光偏振器包括液晶元件,所述液晶元件被配置为根据施加至液晶元件以修改所述液晶元件中的液晶的取向的电场,来改变来自所述相干光源的由所述用户的所述眼睛的所述一部分反射的光的偏振状态。
15.一种方法,包括:
用安装在头盔内部的光源照亮用户的眼睛的一部分;
用安装在所述头盔内部的照相机捕获来自所述光源的由所述眼睛的一部分反射的光的图像;
基于来自所述光源的由所述眼睛的所述一部分反射的光的捕获图像和存储的校准数据来确定所述用户的所述眼睛的位置和朝向,所述存储的校准数据包括表示所述用户的所述眼睛的所述一部分的表面上的与所述照相机中包括的图像传感器的子像素对应的距离的子像素距离以及来自所述光源的由所述用户的所述眼睛的所述一部分反射的光的一个或多个先前捕获图像,其中,基于来自所述光源的由所述眼睛的所述一部分反射的光的捕获图像和所述存储的校准数据来确定所述用户的所述眼睛的位置包括:
确定来自所述光源的由所述眼睛的所述一部分反射的光的捕获图像的代表性品质因数;
将所述代表性品质因数与有效性阈值进行比较;
如果所述代表性品质因数小于所述有效性阈值,则确定所接收的眼睛跟踪数据无效;
如果所述代表性品质因数等于或超过所述有效性阈值,
则:
验证所接收的眼睛跟踪数据对应于有效测量;
访问所述存储的校准数据;
基于来自所述光源的由所述眼睛的所述一部分反射的光的捕获图像和所述存储的校准数据,来确定所述用户的所述眼睛的眼睛位置;以及
基于所确定的眼睛位置,将所述用户的所述眼睛的位置和朝向提供至被配置为向所述头盔提供内容的系统环境的一个或多个部件。
16.根据权利要求15所述的方法,其中,所述代表性品质因数基于来自所述光源的由所述眼睛的所述一部分反射的光的捕获图像中的像素的子集的品质因数和所述存储的校准数据。
17.根据权利要求15所述的方法,其中,所述代表性品质因数基于来自所述光源的由所述眼睛的所述一部分反射的光的捕获图像中的所有像素的品质因数和所述存储的校准数据。
18.根据权利要求15所述的方法,其中,所述有效性阈值包括在捕获到来自所述光源的由所述眼睛的所述一部分反射的光的捕获图像时的时间的阈时间内先前捕获的来自所述光源的由所述眼睛的所述一部分反射的光的额外图像的品质因数的往绩平均值。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201562252057P | 2015-11-06 | 2015-11-06 | |
US62/252,057 | 2015-11-06 | ||
PCT/US2016/060718 WO2017079689A1 (en) | 2015-11-06 | 2016-11-04 | Eye tracking using optical flow |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108352075A CN108352075A (zh) | 2018-07-31 |
CN108352075B true CN108352075B (zh) | 2020-01-21 |
Family
ID=58662830
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201680064587.XA Active CN108352075B (zh) | 2015-11-06 | 2016-11-04 | 使用光流的眼睛跟踪 |
Country Status (6)
Country | Link |
---|---|
US (1) | US10013055B2 (zh) |
EP (1) | EP3371973B1 (zh) |
JP (2) | JP2019506017A (zh) |
KR (1) | KR101953704B1 (zh) |
CN (1) | CN108352075B (zh) |
WO (1) | WO2017079689A1 (zh) |
Families Citing this family (51)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6518582B2 (ja) * | 2015-12-21 | 2019-05-22 | 株式会社ソニー・インタラクティブエンタテインメント | 情報処理装置および操作受付方法 |
US10048498B2 (en) | 2016-03-25 | 2018-08-14 | Microsoft Technology Licensing, Llc | Illumination module |
US10003726B2 (en) * | 2016-03-25 | 2018-06-19 | Microsoft Technology Licensing, Llc | Illumination module for near eye-to-eye display system |
CN105954992B (zh) * | 2016-07-22 | 2018-10-30 | 京东方科技集团股份有限公司 | 显示系统和显示方法 |
US10395349B1 (en) * | 2016-09-07 | 2019-08-27 | Apple Inc. | Display system with tunable lens distortion compensation |
KR102555925B1 (ko) | 2016-11-10 | 2023-07-13 | 매직 립, 인코포레이티드 | 스페클 패턴들을 사용하는 눈 추적을 위한 방법 및 시스템 |
CN106980983A (zh) * | 2017-02-23 | 2017-07-25 | 阿里巴巴集团控股有限公司 | 基于虚拟现实场景的业务认证方法及装置 |
CN106932904A (zh) | 2017-02-27 | 2017-07-07 | 阿里巴巴集团控股有限公司 | 虚拟现实头戴设备 |
CN106873159A (zh) * | 2017-02-27 | 2017-06-20 | 阿里巴巴集团控股有限公司 | 虚拟现实头戴设备 |
DE102017111250A1 (de) * | 2017-05-23 | 2018-11-29 | Vse Ag | Shearografievorrichtung und Verfahren zur zerstörungsfreien Materialprüfung mittels Shearografie |
US10345600B1 (en) | 2017-06-08 | 2019-07-09 | Facebook Technologies, Llc | Dynamic control of optical axis location in head-mounted displays |
US10108261B1 (en) * | 2017-07-05 | 2018-10-23 | Oculus Vr, Llc | Eye tracking based on light polarization |
EP3430973A1 (en) * | 2017-07-19 | 2019-01-23 | Sony Corporation | Mobile system and method |
IL253677B2 (en) | 2017-07-26 | 2023-06-01 | Epitech Mag Ltd | A magnetic device for the treatment of living tissues |
GB201713052D0 (en) * | 2017-08-15 | 2017-09-27 | Imagination Tech Ltd | Single pass rendering for head mounted displays |
EP3445138A1 (en) * | 2017-08-17 | 2019-02-20 | Philips Lighting Holding B.V. | Storing a preference for a light state of a light source in dependence on an attention shift |
US10788677B2 (en) | 2017-10-03 | 2020-09-29 | Facebook Technologies, Llc | Fresnel assembly for light redirection in eye tracking systems |
US10311584B1 (en) | 2017-11-09 | 2019-06-04 | Facebook Technologies, Llc | Estimation of absolute depth from polarization measurements |
US10845594B1 (en) | 2017-12-21 | 2020-11-24 | Facebook Technologies, Llc | Prism based light redirection system for eye tracking systems |
US10410373B1 (en) * | 2017-12-21 | 2019-09-10 | Facebook Technologies, Llc | Calibration of a phase interferometry depth camera assembly |
CN111868737A (zh) | 2018-01-24 | 2020-10-30 | 苹果公司 | 使用神经网络的基于事件相机的注视跟踪 |
US11093208B2 (en) | 2018-02-16 | 2021-08-17 | Valve Corporation | Using detected pupil location to align optical components of a head-mounted display |
US11138429B2 (en) * | 2018-03-12 | 2021-10-05 | Tobii Ab | Iris recognition using eye-tracking system |
FR3080697B1 (fr) * | 2018-04-26 | 2020-05-22 | Agece | Procede et dispositif de detection d'un clignement d'une paupiere |
TWI637289B (zh) * | 2018-05-18 | 2018-10-01 | 緯創資通股份有限公司 | 基於眼球追蹤的顯示控制系統 |
US10884492B2 (en) * | 2018-07-20 | 2021-01-05 | Avegant Corp. | Relative position based eye-tracking system |
CN110603513B (zh) * | 2018-08-27 | 2023-08-29 | 深圳市汇顶科技股份有限公司 | 一种眼睛跟踪设备及利用光学成像跟踪眼睛的方法 |
US10627901B2 (en) * | 2018-09-14 | 2020-04-21 | Facebook Technologies, Llc | Vergence determination |
US10886702B2 (en) * | 2018-11-09 | 2021-01-05 | Facebook Technologies, Llc | Vertical-cavity surface-emitting laser for near-field illumination of an eye |
JP7143739B2 (ja) * | 2018-11-27 | 2022-09-29 | 株式会社リコー | 眼球の傾き位置検知装置、表示装置、入力装置及び検眼装置 |
US11686935B2 (en) * | 2019-01-29 | 2023-06-27 | Meta Platforms Technologies, Llc | Interferometric structured illumination for depth determination |
CN109885167B (zh) * | 2019-02-25 | 2022-04-01 | 北京七鑫易维信息技术有限公司 | 数据处理方法、数据传输方法及装置 |
CN109965843B (zh) * | 2019-03-14 | 2022-05-24 | 华南师范大学 | 一种基于滤波传像的眼动系统 |
TWI751647B (zh) * | 2019-08-13 | 2022-01-01 | 宏達國際電子股份有限公司 | 頭戴式顯示器 |
US11454700B1 (en) | 2019-10-01 | 2022-09-27 | Meta Platforms Technologies, Llc | Apparatus, system, and method for mitigating systematic distance errors in radar-based triangulation calculations |
WO2021117409A1 (ja) * | 2019-12-10 | 2021-06-17 | ソニーグループ株式会社 | 眼球情報検出装置及び映像表示装置 |
US11141601B2 (en) * | 2020-01-27 | 2021-10-12 | Epitech Mag Ltd. | Ocular positioning device for use with magnetic treatment apparatus |
JP2023512238A (ja) * | 2020-01-31 | 2023-03-24 | マジック リープ, インコーポレイテッド | 眼球運動測定査定のための拡張および仮想現実ディスプレイシステム |
JP2021148883A (ja) * | 2020-03-17 | 2021-09-27 | 株式会社リコー | 立体物の回旋角度検出装置、網膜投影表示装置、頭部装着型表示装置、検眼装置、及び入力装置 |
JP7428028B2 (ja) * | 2020-03-17 | 2024-02-06 | 株式会社リコー | 立体物の回旋角度検出装置、網膜投影表示装置、頭部装着型表示装置、検眼装置、及び入力装置 |
DE102020206821A1 (de) | 2020-06-02 | 2021-12-02 | Robert Bosch Gesellschaft mit beschränkter Haftung | Verfahren zum Ermitteln einer Blickrichtung eines Auges |
DE102020206822A1 (de) * | 2020-06-02 | 2021-12-02 | Robert Bosch Gesellschaft mit beschränkter Haftung | Verfahren zum Betreiben einer Datenbrille |
CN111643887B (zh) * | 2020-06-08 | 2023-07-14 | 歌尔科技有限公司 | 头戴设备及其数据处理方法、计算机可读存储介质 |
CN111783660B (zh) * | 2020-07-01 | 2023-11-10 | 业成科技(成都)有限公司 | 眼动追踪装置及应用其的电子装置 |
CN113325572B (zh) * | 2021-05-27 | 2023-05-23 | 京东方科技集团股份有限公司 | 可穿戴显示设备及注视点的位置的确定方法 |
CN114173108B (zh) * | 2021-09-30 | 2023-12-12 | 合肥京东方光电科技有限公司 | 3d显示面板的控制方法、装置、计算机设备及存储介质 |
JP2023110214A (ja) * | 2022-01-28 | 2023-08-09 | セイコーエプソン株式会社 | 回路装置及びヘッドアップディスプレイ |
CN114779470A (zh) * | 2022-03-16 | 2022-07-22 | 青岛虚拟现实研究院有限公司 | 一种增强现实抬头显示系统的显示方法 |
GB2620265A (en) * | 2022-06-13 | 2024-01-03 | Bae Systems Plc | A head tracking system |
DE102022125220A1 (de) | 2022-09-29 | 2024-04-04 | Schwind Eye-Tech-Solutions Gmbh | Messvorrichtung zum Ermitteln einer extrapolierten Lage eines Objektes, Bearbeitungsvorrichtung, Verfahren, Computerprogramm sowie computerlesbares Medium |
US11796821B1 (en) * | 2023-05-05 | 2023-10-24 | Mloptic Corp. | Extended reality virtual distance measurement method |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103946887A (zh) * | 2011-11-09 | 2014-07-23 | 乐天株式会社 | 注视位置估计系统、注视位置估计系统的控制方法、注视位置估计装置、注视位置估计装置的控制方法、程序以及信息存储介质 |
CN104067160A (zh) * | 2011-11-22 | 2014-09-24 | 谷歌公司 | 使用眼睛跟踪在显示屏中使图像内容居中的方法 |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2964132B2 (ja) * | 1996-11-20 | 1999-10-18 | 幸伸 國弘 | 眼球運動解析装置 |
JP3914090B2 (ja) | 2002-05-07 | 2007-05-16 | 株式会社ニューオプト | 眼球運動解析システム及び眼球撮像装置 |
JP4162503B2 (ja) * | 2003-01-31 | 2008-10-08 | 富士通株式会社 | 眼の状態判定装置、眼の状態判定方法及びコンピュータプログラム |
JP5167545B2 (ja) | 2006-03-31 | 2013-03-21 | 国立大学法人静岡大学 | 視点検出装置 |
JP4926799B2 (ja) * | 2006-10-23 | 2012-05-09 | キヤノン株式会社 | 情報処理装置、情報処理方法 |
WO2010011785A1 (en) * | 2008-07-23 | 2010-01-28 | Indiana University Research & Technology Corporation | System and method for a non-cooperative iris image acquisition system |
KR101213596B1 (ko) | 2010-04-19 | 2012-12-24 | 국방과학연구소 | 헤드 트랙커 및 아이 트랙커가 통합된 시선 추적 시스템 및 그 방법 |
US8998414B2 (en) * | 2011-09-26 | 2015-04-07 | Microsoft Technology Licensing, Llc | Integrated eye tracking and display system |
US20150097772A1 (en) * | 2012-01-06 | 2015-04-09 | Thad Eugene Starner | Gaze Signal Based on Physical Characteristics of the Eye |
US9058053B2 (en) | 2012-10-26 | 2015-06-16 | The Boeing Company | Virtual reality display system |
EP2979128B1 (en) * | 2013-03-25 | 2017-10-25 | Intel Corporation | Method for displaying an image projected from a head-worn display with multiple exit pupils |
US10073518B2 (en) * | 2013-08-19 | 2018-09-11 | Qualcomm Incorporated | Automatic calibration of eye tracking for optical see-through head mounted display |
US9459451B2 (en) * | 2013-12-26 | 2016-10-04 | Microsoft Technology Licensing, Llc | Eye tracking apparatus, method and system |
JP5956479B2 (ja) | 2014-01-29 | 2016-07-27 | 株式会社東芝 | 表示装置及び視線推定装置 |
-
2016
- 2016-11-04 WO PCT/US2016/060718 patent/WO2017079689A1/en active Application Filing
- 2016-11-04 US US15/344,430 patent/US10013055B2/en active Active
- 2016-11-04 CN CN201680064587.XA patent/CN108352075B/zh active Active
- 2016-11-04 EP EP16863124.0A patent/EP3371973B1/en active Active
- 2016-11-04 KR KR1020187011085A patent/KR101953704B1/ko active IP Right Grant
- 2016-11-04 JP JP2018521527A patent/JP2019506017A/ja not_active Ceased
-
2019
- 2019-08-21 JP JP2019151231A patent/JP6990220B2/ja active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103946887A (zh) * | 2011-11-09 | 2014-07-23 | 乐天株式会社 | 注视位置估计系统、注视位置估计系统的控制方法、注视位置估计装置、注视位置估计装置的控制方法、程序以及信息存储介质 |
CN104067160A (zh) * | 2011-11-22 | 2014-09-24 | 谷歌公司 | 使用眼睛跟踪在显示屏中使图像内容居中的方法 |
Also Published As
Publication number | Publication date |
---|---|
KR20180112754A (ko) | 2018-10-12 |
JP6990220B2 (ja) | 2022-01-12 |
JP2019506017A (ja) | 2019-02-28 |
WO2017079689A1 (en) | 2017-05-11 |
EP3371973B1 (en) | 2023-08-09 |
CN108352075A (zh) | 2018-07-31 |
KR101953704B1 (ko) | 2019-03-04 |
EP3371973A4 (en) | 2019-07-10 |
US10013055B2 (en) | 2018-07-03 |
JP2020115630A (ja) | 2020-07-30 |
US20170131765A1 (en) | 2017-05-11 |
EP3371973A1 (en) | 2018-09-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108352075B (zh) | 使用光流的眼睛跟踪 | |
US10257507B1 (en) | Time-of-flight depth sensing for eye tracking | |
JP7177213B2 (ja) | 視線追跡情報に基づく画像領域内の適応パラメータ | |
US11016301B1 (en) | Accommodation based optical correction | |
US10025384B1 (en) | Eye tracking architecture for common structured light and time-of-flight framework | |
JP6586523B2 (ja) | 構造化光を用いた視線追跡 | |
US10878236B2 (en) | Eye tracking using time multiplexing | |
US10481687B1 (en) | Waveguide integrated eye tracking | |
US10606071B1 (en) | Lightfield waveguide integrated eye tracking | |
CN108780223B (zh) | 用于生成眼睛模型的角膜球跟踪 | |
US10904514B2 (en) | Polarization illumination using acousto-optic structured light in 3D depth sensing | |
US11238598B1 (en) | Estimation of absolute depth from polarization measurements | |
US10725537B2 (en) | Eye tracking system using dense structured light patterns | |
US10120442B2 (en) | Eye tracking using a light field camera on a head-mounted display | |
US20170263007A1 (en) | Eye tracking system with single point calibration | |
US10109067B2 (en) | Corneal sphere tracking for generating an eye model | |
US20170308160A1 (en) | Off-Axis Eye Tracker | |
US10848753B1 (en) | Eye-tracking system using a scanning laser assembly | |
US10963046B1 (en) | Drift corrected eye tracking |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
CB02 | Change of applicant information |
Address after: California, USA Applicant after: Facebook Technologies, LLC Address before: California, USA Applicant before: OCULUS VR, LLC |
|
CB02 | Change of applicant information | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CP01 | Change in the name or title of a patent holder |
Address after: California, USA Patentee after: Yuan Platform Technology Co.,Ltd. Address before: California, USA Patentee before: Facebook Technologies, LLC |
|
CP01 | Change in the name or title of a patent holder |