CN112153363B - 用于3d角膜位置估计的方法和系统 - Google Patents

用于3d角膜位置估计的方法和系统 Download PDF

Info

Publication number
CN112153363B
CN112153363B CN202010585237.6A CN202010585237A CN112153363B CN 112153363 B CN112153363 B CN 112153363B CN 202010585237 A CN202010585237 A CN 202010585237A CN 112153363 B CN112153363 B CN 112153363B
Authority
CN
China
Prior art keywords
corneal
candidate
glint
eye
image
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
Application number
CN202010585237.6A
Other languages
English (en)
Other versions
CN112153363A (zh
Inventor
安娜·拉森雷兹
尼克拉斯·奥尔森
戴维·马斯科
马格努斯·伊瓦森
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tobii AB
Original Assignee
Tobii AB
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Tobii AB filed Critical Tobii AB
Publication of CN112153363A publication Critical patent/CN112153363A/zh
Application granted granted Critical
Publication of CN112153363B publication Critical patent/CN112153363B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G02OPTICS
    • G02BOPTICAL ELEMENTS, SYSTEMS OR APPARATUS
    • G02B27/00Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
    • G02B27/0093Optical 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/30Image reproducers
    • H04N13/366Image reproducers using viewer tracking
    • H04N13/383Image reproducers using viewer tracking for tracking with gaze detection, i.e. detecting the lines of sight of the viewer's eyes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/011Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
    • G06F3/013Eye tracking input arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/277Analysis of motion involving stochastic approaches, e.g. using Kalman filters
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • G06T7/73Determining position or orientation of objects or cameras using feature-based methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/60Type of objects
    • G06V20/64Three-dimensional objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/18Eye characteristics, e.g. of the iris
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/18Eye characteristics, e.g. of the iris
    • G06V40/19Sensors therefor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/18Eye characteristics, e.g. of the iris
    • G06V40/193Preprocessing; Feature extraction
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B3/00Apparatus for testing the eyes; Instruments for examining the eyes
    • A61B3/10Objective types, i.e. instruments for examining the eyes independent of the patients' perceptions or reactions
    • A61B3/113Objective types, i.e. instruments for examining the eyes independent of the patients' perceptions or reactions for determining or recording eye movement
    • GPHYSICS
    • G02OPTICS
    • G02BOPTICAL ELEMENTS, SYSTEMS OR APPARATUS
    • G02B27/00Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
    • G02B27/01Head-up displays
    • G02B27/0179Display position adjusting means not related to the information to be displayed
    • G02B2027/0187Display position adjusting means not related to the information to be displayed slaved to motion of at least a part of the body of the user, e.g. head, eye
    • GPHYSICS
    • G02OPTICS
    • G02BOPTICAL ELEMENTS, SYSTEMS OR APPARATUS
    • G02B27/00Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
    • G02B27/01Head-up displays
    • G02B27/017Head mounted
    • G02B27/0172Head mounted characterised by optical features
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2200/00Indexing scheme for image data processing or generation, in general
    • G06T2200/04Indexing scheme for image data processing or generation, in general involving 3D image data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30004Biomedical image processing
    • G06T2207/30041Eye; Retina; Ophthalmic

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Human Computer Interaction (AREA)
  • Ophthalmology & Optometry (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Optics & Photonics (AREA)
  • General Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Image Analysis (AREA)
  • Studio Devices (AREA)
  • Eye Examination Apparatus (AREA)

Abstract

提供了一种方法、系统和非暂时性计算机可读存储介质,用于使用远程眼睛跟踪系统(210)执行用户的眼睛的角膜中心的三维3D位置估计,其中,当角膜中心相对于与眼睛跟踪系统(210)相关联的成像装置(110)随着时间的推移而移动时,该位置估计也是可靠的且稳健的。这是通过在角膜中心位置估计时产生、使用以及可选地还有更新角膜运动滤波器CMF来实现的。

Description

用于3D角膜位置估计的方法和系统
技术领域
本公开总体上涉及眼睛跟踪领域。具体地,本公开涉及估计用户的眼睛角膜的三维(3D)位置,以优化眼睛跟踪准确度。
背景技术
在本领域中已知几种不同的眼睛跟踪系统。例如,可以采用这些系统以允许用户通过观看计算机显示器处的某个位置来指示那个位置。通常,眼睛跟踪系统用于检测人的视线。
典型地,眼睛跟踪系统可以使用一组相机来捕获用户面部的图像,然后采用图像处理从用户面部提取关键特征,比如瞳孔中心和来自照射用户面部的照明器的闪光。然后可以采用所提取的特征来确定使用者正在看向显示器上的什么位置。自然地,比如眼睛跟踪的准确度、速度和可靠性/稳健性等因素对于实现积极的用户体验是期望的。因此,已经提出了若干种方案以用于减轻眼睛跟踪系统中可能发生的不同类型的误差或不准确性的负面影响。
一种用于眼睛跟踪的常用技术是瞳孔中心角膜反射(PCCR)。为了使此技术能够提供可靠的结果,需要非常准确地确定角膜所在的位置。这种角膜位置估计是已知的,但是现有的角膜位置估计解决方案的缺点是,当眼睛、特别是角膜移动时,它们的表现不令人满意。
当角膜移动时出现的关于角膜位置估计的一个具体问题是,在测量至角膜的距离时引入了很多噪声,从而当眼睛跟踪系统的用户随着时间的推移相对于屏幕移动他/她的视线时会产生噪声非常大的视线信息或非常不准确的视线信息。
为了能够执行眼睛跟踪,必须在由与眼睛跟踪系统相关联的相机捕获的图像中识别用户眼睛的瞳孔和至少一个闪光。许多远程眼睛跟踪仪使用两种图像来进行瞳孔检测:亮瞳(BP)图像和暗瞳(DP)图像。使用在相机光轴上的有源照明来捕获BP图像,这会使光从用户的视网膜反射回到相机,从而在所捕获的图像中产生亮瞳(BP效果)。在BP和DP图像中,都需要有源照明以在所得图像中产生至少一个闪光。在这些图像中,也可能存在由有源照明器以外的其他光源的反射引起的假闪光。与角膜位置估计有关的现有解决方案的另一具体问题是,因为准确的假闪光检测需要角膜位置的准确估计,因此很难识别在所捕获的图像中的任何假闪光。
因此,在受试者的眼睛或眼睛跟踪系统的用户的眼睛随着时间的推移而不固定的情况下,角膜位置估计是不准确且不可靠的。
期望提供进一步的系统和方法来解决上述问题中的至少一个问题。
发明内容
本公开的目的是解决上述问题中的至少一个。
根据第一方面,这些目的是通过一种方法来实现的,该方法用于当角膜中心随时间的推移相对于与远程眼睛跟踪系统相关联的成像装置移动时使用该眼睛跟踪系统执行用户的眼睛的角膜中心的三维3D位置估计。该方法包括使用与该眼睛跟踪系统相关联的处理电路来产生角膜运动滤波器CMF,该角膜运动滤波器包括在第一时刻该眼睛的角膜中心的估计的初始3D位置和估计的初始3D速度,以及使用处理电路通过应用角膜运动滤波器CMF来预测在第二时刻时所捕获的图像中的第一二维2D闪光位置,其中,所预测的第一闪光位置表示这样的位置:其中由与眼睛跟踪系统相关联的第一照明器所导致的第一闪光预测将会产生在这个位置,以及通过应用角膜运动滤波器CMF来预测在第二时刻时所捕获的图像中的第二2D闪光位置,其中,所预测的第二闪光位置表示这样的位置:其中由与眼睛跟踪系统相关联的第二照明器所导致的闪光预测将会产生在这个位置。该方法进一步包括使用该处理电路来执行图像处理,包括以下步骤:识别在该第二时刻由该成像装置捕获的第一图像中的至少一个第一候选闪光,其中,该第一图像包括该眼睛的角膜的至少一部分和由该第一照明器产生的至少一个闪光;以及识别在该第一图像中或在第三时刻由该成像装置捕获的第二图像中的至少一个第二候选闪光,并且该第二图像包括该眼睛的角膜的至少一部分和由该第二照明器产生的至少一个闪光。在适当情况下,该方法进一步包括:基于概率估计函数,使用该处理电路从所有可能的多对第一候选闪光和第二候选闪光中选择出一对第一和第二候选闪光,这对第一和第二候选闪光具有对应于所预测的第一和第二闪光位置的最高概率;基于所选的一对第一和第二候选闪光的位置、使用该处理电路来估计该角膜的当前3D位置;以及使用该处理电路,通过将该角膜中心的估计的初始3D位置设定为该角膜中心的当前3D位置来更新该角膜运动滤波器CMF。
由此,有利地,实现了关于准确度和可靠性方面有改进的3D角膜位置估计。
可以循环该方法、即重复执行该方法,以在准确度和可靠性方面不断改进3D角膜位置估计,特别是在角膜相对于眼睛跟踪系统的成像装置随时间的推移而不固定的情况下。
在一个或多个实施例中,该方法进一步包括采用根据本文给出的任何实施例的改进的3D角膜位置估计来执行眼睛跟踪,由此实现改善的眼睛跟踪性能。
根据第二方面,这些目的是通过一种眼睛跟踪系统来实现的,该系统包括处理电路,该处理电路被配置为:产生角膜运动滤波器CMF,该角膜运动滤波器包括在第一时刻该眼睛的角膜中心的估计的初始3D位置和估计的初始3D速度;通过应用该角膜运动滤波器CMF来预测在第二时刻所捕获的图像中的第一二维2D闪光位置,其中,所预测的第一闪光位置表示这样的位置:其中与该眼睛跟踪系统相关联的第一照明器所导致的第一闪光预测将会产生在该位置;通过应用该角膜运动滤波器CMF来预测在该第二时刻所捕获的图像中的第二2D闪光位置,其中,所预测的第二闪光位置表示这样的位置:其中与该眼睛跟踪系统相关联的第二照明器所导致的闪光预测将会产生在该位置;执行图像处理以:识别在该第二时刻由该成像装置捕获的第一图像中的至少一个第一候选闪光,其中,该第一图像包括该眼睛的角膜的至少一部分和由该第一照明器产生的至少一个闪光;识别在该第一图像中或在第三时刻由该成像装置捕获的第二图像中的至少一个第二候选闪光,并且该第二图像包括该眼睛的角膜的至少一部分和由该第二照明器产生的至少一个闪光;基于概率估计函数,从所有可能的多对的第一候选闪光和第二候选闪光中选择出一对第一和第二候选闪光,这对第一和第二候选闪光具有对应于所预测的第一和第二闪光位置的最高概率;基于所选的一对第一和第二候选闪光的位置来估计该角膜的当前3D位置;以及通过将该角膜中心的估计的初始3D位置设定为该角膜中心的当前3D位置来更新该角膜运动滤波器CMF。
该处理电路可以被配置为重复执行这些动作。
该系统可以进一步被配置为执行眼睛跟踪。
根据第三方面,这些目的是通过一种存储指令的非暂时性计算机可读存储介质来实现的,这些指令当由系统的处理电路执行时使该系统执行所附权利要求1的方法。
该非暂时性计算机可读存储介质进一步可以存储指令,这些指令当由系统的处理电路执行时使该系统重复执行这些方法步骤。
该非暂时性计算机可读存储介质进一步可以存储指令,这些指令在由系统的处理电路执行时使该系统执行所附方法权利要求中任一项的方法步骤。
根据具体实施方式和附图以及所附权利要求,前述方法、系统和非暂时性计算机可读存储介质的许多替代实施例是显而易见的。
在本公开中针对根据第一方面的方法的实施例给出的效果和/或优点也可以适用于根据第三方面的非暂时性计算机可读存储介质的相应实施例。
应注意,本公开中的实施例涉及权利要求中陈述的特征的所有可能的组合。
附图说明
在下文中,将参考附图更详细地描述示例实施例,在附图中:
图1是眼睛的正视图;
图2示出了根据一个或多个实施例的眼睛跟踪系统的示意性概览图;
图3示出了根据一个或多个实施例的眼睛跟踪系统的示意性概览图;
图4示出了根据一个或多个实施例的用户的眼睛和眼睛跟踪系统的部件的示意性概览图;
图5是使用眼睛跟踪系统的相机捕获的包括多个候选闪光的眼睛图像的图示;
图6是使用眼睛跟踪系统的相机捕获的包括多个候选闪光的眼睛图像的图示;
图7是图示了根据实施例的专用计算机系统的框图;
图8是根据一个或多个实施例的方法的流程图;以及
图9是根据一个或多个实施例的方法的流程图。
图10是根据一个或多个实施例的方法的流程图。
所有附图都是示意性的,不一定按比例绘制,并且通常仅示出为了阐明各个实施例所必需的部分,而其他部分可以被省略或仅被暗示出。除非另有指示,否则出现在多个附图中的任何附图标记在所有附图中表示相同的对象或特征。
具体实施方式
引言
在下文中将参考附图更全面地描述本公开的各方面。然而,本文公开的装置和方法可以以许多不同的形式来实现并且不应被解释为限于本文所阐述的各个方面。所有附图中相同的附图标记表示相同的要素。
本文使用的术语仅出于描述本公开的特定方面的目的并且不旨在限制本发明。如本文所使用的,单数形式的“一(a)”、“一个(an)”和“该”还旨在包括复数形式,除非上下文另外明确指明。
本公开的实施例旨在解决以下问题:当角膜相对于眼睛跟踪系统的部件随着时间的推移而移动时,现有的三维(3D)角膜位置估计解决方案的表现不令人满意。为了解决此问题,提出了用于估计角膜或用户眼睛的3D位置的系统、方法和计算机程序产品,包括产生和使用角膜运动滤波器CMF(cornea movement filter,亦称为角膜运动滤波算法)。根据一些实施例的解决方案包括通过将关于估计的3D角膜位置和速度的最新信息反馈到CMF中来不断地更新CMF滤波器。由此,CMF信息不断地更新或精炼,并且因此所得到的3D角膜位置估计不断地改进。结合附图给出了实施例的细节。
本公开的实施例进一步旨在解决或至少改善当角膜移动时出现的关于角膜位置估计的特定问题,即,在测量至角膜的距离时引入了很多噪声,从而当眼睛跟踪系统的用户随着时间的推移相对于屏幕移动他/她的视线时会产生噪声非常大的视线信息或非常不准确的视线信息。
另外,本公开的实施例旨在解决或至少改善与角膜位置估计有关的现有解决方案的特定问题,即,因为准确的假闪光检测需要角膜位置的准确估计,因此很难在所捕获的图像中识别任何假闪光。先前已经尝试通过使用类似光流的方法来解决此问题。如果在图像中捕获到足够大的眼睛周围区域,这可能会起作用。然而,如果仅捕获了瞳孔/虹膜周围的非常小区域,则这种方法将不起作用。然而,即使图像仅示出了瞳孔/虹膜周围非常小的区域,本文描述的解决方案也可以起作用。
在说明书和所附权利要求中,本文描述的实施例提供了这些问题的解决方案。
因此,本文实施例的一个明显优点是,由于在角膜移动时该系统将相比现有的解决方案能够更可靠地估计用户的3D角膜位置,因此眼睛跟踪或视线跟踪结果更加准确。结果,另一优点是本解决方案更加稳健。
当然,当眼睛和角膜不移动而是静止时,本文描述的实施例也起到很好的作用。
另一优点是,当眼睛跟踪或视线跟踪结果更准确时,视觉结果和用户体验得到改善。
因此,本文的实施例提供了一种3D角膜位置估计,其噪声低且对运动有响应、并且对不移动他/她的眼睛的用户的眼睛跟踪以及对移动他/她的视线的用户的眼睛跟踪都起到很好的作用。
如本文所使用的,术语“眼睛跟踪”可以被理解为包括以下中的任一个:在现实世界中、在眼睛的3D模型中、在描绘眼睛的2D图像中跟踪或观察眼睛的实际部分;或者确定眼睛正在跟踪或注视的事物。确定眼睛正在跟踪或注视的事物也可以被称为视线跟踪。
当然,本文所描述的、涉及用户的一只眼睛、例如第一眼睛的任何实施例等同地适用于用户的任何一只眼睛,并且还可以针对用户的双眼并行或连续地执行。
在整个本公开中,术语“获得信息”可以理解为以推送方式接收信息和/或以拉取方式检索信息。作为特定示例,在本说明书的背景中,获得图像可以理解为:使用成像装置110(例如,相机)来捕获图像;例如从成像装置(可以是成像装置110)或从存储器接收图像;或者,例如从成像装置110(可以是相机)或从存储器检索图像。
下面将参考图1至图10描述用于控制眼睛跟踪系统的方法、系统和相关联的存储介质。首先,将参考图1和图4描述眼睛的说明性示例。
图1是眼睛100的正视图。图4包括从眼睛100旁侧看到的眼睛100的截面图。虽然图4示出了差不多整个眼睛100,但图1所呈现的正视图仅示出了眼睛100的通常从人脸前方可见的那些部分。眼睛100具有在正视图中可见的角膜104、虹膜101和瞳孔102。附图标记103指的是瞳孔中心和角膜中心两者,因为它们在主视图中位于同一位置。在图1中,图示了第一组106′一个或多个第一候选闪光106”,该一个或多个第一候选闪光106”是由来自第一照明器112的从眼睛100的角膜104反射的光的反射106引起的,如图4所示。在图5中更详细地示出了一个或多个第一候选闪光106”。图5进一步示出了第一预测二维2D闪光位置P1的示例。在图1中,还示出了第二组107′一个或多个第二候选闪光107”,该一个或多个第二候选闪光107”是由来自第二照明器113的从眼睛100的角膜104反射的光的反射107引起的,如图4所示。在图6中更详细地示出了一个或多个第二候选闪光106”。图6进一步示出了第二预测二维2D闪光位置P2的示例。
系统架构
现在将参考图2、图3、图4和图7描述系统实施例。
图2和图3是根据一个或多个实施例的眼睛跟踪系统200的示意性概览图,该眼睛跟踪系统包括眼睛跟踪设备220和处理电路210。图4示出了用户的眼睛100和眼睛跟踪系统200的部件的示意性概览图,该眼睛跟踪系统包括眼睛跟踪设备和处理电路210。图7是图示了专用计算机系统301的框图,本公开的实施例可以在该专用计算机系统中实现。
首先参照图2和图3,示出了包括处理电路210的眼睛跟踪系统200。
根据实施例的眼睛跟踪系统200(也可以称为视线跟踪系统)包括眼睛跟踪设备220或连接到眼睛跟踪设备220或与眼睛跟踪设备220相关联,该眼睛跟踪设备包括用于主动照射用户眼睛的至少一个第一照明器112和至少一个第二照明器113、以及用于捕获用户眼睛的图像的至少一个成像装置110。
成像装置110可以例如是相机。然而,成像装置110可以是任何其他类型的成像装置,包括成像传感器、光传感器等。
第一照明器112和第二照明器113可以各自发射红外频带或近红外频带(NIR)中的光。照明器112、113可以是发光二极管、激光器,比如垂直腔表面发射激光器(VCSEL)或任何其他类型的照明器。术语“照明器”可以理解为包括单个照明器,或者替代地理解为包括一组两个或更多个照明器,这些照明器非常靠近地布置在一起并被控制为充当单个光源,即这些照明器被控制为操作使得当照明时它们一起产生单个闪光。
在一个替代方案中,第一照明器112是与成像装置110的成像传感器同轴(或靠近)布置的亮瞳(BP)照明器,使得如果第一照明器112以其最大功率或接近其最大功率发射光,则成像装置110可以捕获用户眼睛的亮瞳图像。在这种情况下,由于第一照明器112和成像装置110的成像传感器的同轴布置,从眼睛100的视网膜在点106处反射的光通过瞳孔102朝向成像装置110返回,使得在第一照明器112照射眼睛的情况下,瞳孔102在图像中看起来比其周围的虹膜101更亮。由此,眼睛跟踪系统200被配置为获得用户眼睛100的BP图像。在此实施例中,一个或多个第二照明器113可以与成像装置110的成像传感器非同轴地(或进一步远离成像装置110)布置,以用于捕获暗瞳(DP)图像。在图3中图示出了这种布置。由于一个或多个第二照明器113和成像装置110的成像传感器的非同轴布置,因此在图4中的点107处反射的光不会到达成像装置110的成像传感器,并且在第二照明器113照射眼睛的情况下,瞳孔在图像中看起来比其周围的虹膜更暗。
在下文中,成像装置110的成像传感器也可以简称为成像装置110。
在另一个替代性方案中,眼睛跟踪系统200包括与成像装置110非同轴布置的至少两个DP照明器。在此替代方案中,第一照明器112和第二照明器113两者都可以是DP照明器。为了使此布置根据本文所示实施例令人满意地起工作,重要的是使第一照明器112与第二照明器113不在同一位置。换句话说,重要的是使第一和第二照明器112、113彼此相距至少一定的最小距离布置。例如,该距离需要应该选择为在相机平面或像平面中足够大,以确保由照明器112、113引起的闪光在所捕获的图像中不重合。由此,可以将相应闪光(或候选闪光的分布)106”和107”彼此区分开。
成像装置110可以例如是相机,比如互补金属氧化物半导体(CMOS)相机或电荷耦合器件(CCD)相机。然而,成像装置110可以是任何其他类型的成像装置,包括成像传感器、光传感器等。
为了理解,图4还示出了用户眼睛100注视朝向的屏幕111。
在一个或多个实施例中,提供了一种用于3D角膜位置估计的眼睛跟踪系统200,眼睛跟踪系统200包括处理电路210,该处理电路被配置为产生角膜运动滤波器CMF,该角膜运动滤波器包括在第一时刻t1时眼睛100的角膜中心103的估计的初始3D位置x1、y1、z1和估计的初始3D速度vx1、vy1、vz1。
为了获得角膜中心103的估计的初始3D位置x1、y1、z1和估计的初始3D速度vx1、vy1、vz1的开始值,处理电路210可以被配置为在第一次执行该方法时,基于用户的眼睛或头部的相应估计的3D位置和速度来设定在第一时刻t1时眼睛100的角膜中心103的估计的初始3D位置x1、y1、z1和估计的初始3D速度vx1、vy1、vz1的相应开始值。
处理电路210进一步被配置为通过应用角膜运动滤波器CMF来预测在第二时刻t2时所捕获的图像中的第一二维2D闪光位置P1,其中,所预测的第一闪光位置表示一位置,其中由与眼睛跟踪系统200相关联的第一照明器112导致的第一闪光预测将会产生在该位置,以及通过应用角膜运动滤波器CMF来预测在第二时刻t2时所捕获的图像中的第二2D闪光位置P2,其中,所预测的第二闪光位置表示一位置,其中由与眼睛跟踪系统200相关联的第二照明器113导致的闪光预测将会产生在该位置。处理电路210进一步被配置为进行图像处理以识别在第二时刻t2时由成像装置110捕获的第一图像600中的至少一个第一候选闪光106”,其中,第一图像600包括眼睛100的角膜101的至少一部分和由第一照明器112产生的至少一个闪光,并且处理电路210识别在第一图像600或在第三时刻t3由成像装置110捕获的第二图像601中的至少一个第二候选闪光107”,并且第二图像包括眼睛100的角膜101的至少一部分和由第二照明器113产生的至少一个闪光。
如果在第三时刻t3时从由成像装置110捕获的第二图像601中识别出至少一个第二候选闪光107”,则在一个或多个实施例中,处理电路210可以进一步被配置为通过应用角膜运动滤波器CMF来补偿至少一个第二候选闪光107”从第二时刻t2到第三时刻t3的运动,以在更新角膜运动滤波器CMF之前,将至少一个第二候选闪光107”的投影2D位置调整到在第二时刻t2时的估计的2D位置。由此,在我们使用在不同时间产生的闪光(例如,来自分别在t1和t2时相继拍摄的两个图像中的BP闪光和DP闪光,其中,BP照明器在t2照射并且DP照明器在t3照射,反之亦然)的情况下,避免了由于错误估计的闪光位置而引起的大的视线误差。在没有此运动补偿的情况下,可能会出现大的视线误差,从而导致眼睛跟踪性能和用户体验显著降低。
在适当情况下,处理电路210进一步被配置为基于概率估计函数,从所有可能的多对的第一候选闪光106”和第二候选闪光107”中选择出一对第一和第二候选闪光106”、107”,这对第一和第二候选闪光被确定为具有对应于预测的第一和第二闪光位置P1、P2的最高概率。在一个实施例中,处理电路210可以被配置为通过对与每个可能的一对闪光106”、107”相关的预测的第一和第二闪光位置P1、P2进行统计测试而基于概率函数来进行预测。在另一个实施例中,处理电路210可以被配置为通过在与候选闪光组中的每对可能的闪光106”、107”相关的预测的第一和第二闪光位置P1、P2之间进行像素距离比较而基于概率函数来进行预测。也可以采用任何其他合适的概率函数。
有利地,处理电路210进一步被配置为基于所选的一对第一和第二候选闪光的位置来估计角膜的当前3D位置xc、yc、zc。然后,处理电路可以被配置为将角膜中心103的估计的初始3D位置x1、y1、z1设定为角膜中心103的当前3D位置xc、yc、zc。由此,如果重复执行根据这个实施例的方法,则角膜运动滤波器CMF可以被更新以使用最新的角膜位置估计,从而随着时间的推移能够不断改进角膜位置估计。
处理电路还可以被配置为基于角膜中心103的估计的初始3D位置x1、y1、z1和角膜中心103的当前3D位置xc、yc、zc来确定角膜中心103的当前估计的3D速度vxc、vyc、vzc并将角膜中心103的估计的初始3D速度vx1、vy1、vz1设定为角膜中心103的当前估计的3D速度vxc、vyc、vzc。由此,如果重复执行根据此实施例的方法,则角膜运动滤波器CMF可以进一步被更新以使用最新的角膜速度估计,从而随着时间的推移能够不断地更进一步改进角膜位置估计。
在一些实施例中,处理电路210可以被配置为优选地使用扩展卡尔曼滤波器方程(Extended Kalman Filter equation)和角膜与闪光对方程的线性化版本来更新角膜运动滤波器CMF。
替代地,处理电路210可以被配置为随着时间的推移维持恒定的速度。恒定速度可以维持在第一估计的初始3D速度vx1、vy1、vz1的值。在又一替代性实施例中,处理电路210可以被配置为调整估计的3D速度以使之随着时间的推移减小并接近零。
在一个或多个实施例中,处理电路210被配置为重复执行根据本文给出的任何实施例的步骤和功能。
在一个或多个实施例中,处理电路210可以被配置为从所有可能的多对第一候选闪光106”和第二候选闪光107”中选择出一对第一和第二候选闪光106”、107”,这对第一和第二候选闪光具有对应于预测的第一和第二闪光位置P1、P2的最高概率,所述选择通过如下步骤实现:确定一对闪光中的第一和第二候选闪光106”、107”的位置对应于预测的第一和第二闪光位置P1、P2的概率;确定一对闪光与眼睛100的所选部分的接近度;并且基于概率确定和接近度确定的结果从不只一对闪光中来选择一对闪光。
在一些实施例中,处理电路210进一步被配置为在更新角膜运动滤波器CMF之前:将所选的一对候选闪光106”、107”的概率与预设阈值VPROB进行比较;并且如果所选的一对候选闪光106”、107”的概率超过预设阈值VPROB,则将预测的第一和第二闪光位置P1、P2设定为所选的一对候选闪光106”、107”的位置。由此,如果足够可靠,则将这对闪光的2D位置的最新信息反馈到该方法中,并使用该最新信息以进一步改进3D角膜位置估计结果。
在适当的情况下,眼睛跟踪系统200可以被配置为采用根据本文给出的任何实施例的改进的3D角膜位置估计来执行用户的眼睛(或双眼)的眼睛跟踪。在这些情况下,眼睛跟踪系统200可以有利地被配置为基于角膜的估计的当前3D位置xc、yc、zc来预测用户的视线。
处理电路210可以进一步被配置为重复执行以上功能。
眼睛跟踪系统200可以进一步被配置为执行眼睛跟踪,并且通过本文给出的任何实施例获得的3D角膜位置估计的稳健性得到改进。
图7是图示了专用计算机系统700的框图,本公开的实施例可以在该专用计算机系统中实现。此示例图示了专用计算机系统700,比如可以整体、部分地或以各种修改形式使用该专用计算机系统,以提供本文所述部件的功能。
示出了专用计算机系统700,该专用计算机系统包括可以经由总线780电联接的硬件元件。硬件元件可以包括一个或多个中央处理单元或处理器710、一个或多个输入装置720(例如,鼠标、键盘、眼睛跟踪装置等)以及一个或多个输出装置730(例如,显示装置、打印机等)。专用计算机系统700还可以包括一个或多个存储装置740。通过示例的方式,(多个)存储装置740可以是磁盘驱动器、光学存储装置、固态存储装置,比如随机存取存储器(“RAM”)和/或只读存储器(“ROM”),其可以是可编程的、可闪速更新的和/或类似的。
专用计算机系统700可以另外包括计算机可读存储介质读取器750、通信系统760(例如,调制解调器、网卡(无线或有线)、红外通信装置、BluetoothTM装置、蜂窝通信装置等)以及工作存储器380,工作存储器380可以包括如上所述的RAM和ROM装置。在一些实施例中,专用计算机系统700还可以包括工作存储器770,该工作存储器可以包括(多个)操作系统774和其他代码(程序)788。在一些实施例中,专用计算机系统还可以包括处理加速单元,该处理加速单元可以包括数字信号处理器、专用处理器和/或类似物。
由比如图2或图3中的系统300或图7中的系统301等系统执行的眼动跟踪可以典型地采用眼睛模型。以本领域中已知的方式,根据单个用户的一只眼睛或双眼的属性来校准此眼睛模型。
这些显示光学器件应被理解为包括适合于产生和/或显示2D图像数据、3D图像数据、图形数据、全息数据或可以呈现给头戴式装置的用户/佩戴者以给予VR、AR、MR或其他XR体验的其他内容的任何光学器件。这些显示光学器件可以包括一个或多个显示器111,例如位于用户的眼睛前方的单个显示器111、或者位于用户的第一只眼睛100前方的一个显示器111、以及位于用户的第二只眼睛前方的第二显示器。换言之,术语“头戴式装置”可以但不一定被解释为仅表示旨在布置在用户的一只眼睛前方或用户双眼前方的实际显示光学器件。
一个或多个相机可以例如是电荷耦合器件(CCD)相机或互补金属氧化物半导体(CMOS)相机。然而,也可以设想其他类型的相机。
系统200可以进一步包括显示器111、或者可通信地连接到该显示器。显示器111可以例如是液晶显示器(LCD)或LED显示器。然而,也可以设想其他类型的显示器。显示器可以例如平面显示器或曲面显示器。显示器111可以例如被放置在用户的一只眼睛的前方。
处理电路210可以例如包括一个或多个处理器。(多个)处理器可以例如是被配置为执行特定眼睛跟踪和位置确定方法的专用集成电路(ASIC)。替代地,(多个)处理器可以被配置为执行存储在一个或多个存储器140中的指令(例如,为计算机程序的形式)。这种存储器140可以例如被包括在系统200中,或者可以在系统200外部(例如位于该系统的远处)。存储器140可以存储指令,所述指令用于使系统200执行根据结合图2给出的任何实施例的方法。
在一个或多个实施例中,处理电路210可以被配置为执行结合图4描述的任何或所有方法实施例。
将理解的是,以上参考图2和图3描述的系统200的实施例可以作为示例被提供,并且可以设想许多其他系统。例如,系统200可以仅由处理电路210构成。
方法实施例
在下文中,将结合图8描述方法实施例。
图8示出了方法的实施例,该方法用于当角膜中心103相对于与远程眼睛跟踪系统200相关联的成像装置110随时间的推移而移动时使用该眼睛跟踪系统200执行用户的眼睛100的角膜中心103的三维3D位置估计,该方法包括:
在步骤810中:使用与眼睛跟踪系统200相关联的处理电路210来产生角膜运动滤波器CMF,该角膜运动滤波器包括在第一时刻t1时眼睛100的角膜中心103的估计的初始3D角膜位置x1、y1、z1和估计的初始3D角膜速度vx1、vy1、vz1。
在一个或多个实施例中,估计的初始3D角膜位置x1、y1、z1是估计的位置分布,其可以是高斯分布的形式,但是也可以是任何其他合适的分布。
在一个或多个实施例中,估计的初始3D角膜速度vx1、vy1、vz1是估计的速度分布,其可以是高斯分布的形式,但是也可以是任何其他合适的分布。
角膜运动滤波器CMF可以是卡尔曼滤波器X,例如具有以下形式:
Figure GDA0002701408010000131
其中,x、y、z表示空间中的3D点,速度为vx、vy、vz。
第一次执行该方法时,针对在第一时刻t1时眼睛100的角膜中心103的估计的初始3D位置x1、y1、z1和估计的初始3D速度vx1、vy1、vz1的相应起始值可以基于用户的眼睛或头部的相应估计的3D位置和速度来设定。
在步骤820:使用处理电路210、通过将角膜运动滤波器CMF应用到估计的初始3D角膜位置x1、y1、z1来预测在第二时刻t2时所捕获的图像中的第一二维2D闪光位置P1
换句话说,预测的第一闪光位置P1表示投影到像平面上的2D位置,预测第一闪光将会产生在该位置。第一闪光是在用户眼睛的角膜已经从估计的初始3D角膜位置x1、y1、z1移动之后由与眼睛跟踪系统200关联的第一照明器112发出的光从用户眼睛的角膜反射而引起的。
在步骤830:使用处理电路210、通过应用角膜运动滤波器CMF来预测在第二时刻t2时所捕获的图像中的第二2D闪光位置P2,其中,所预测的第二闪光位置表示一位置,其中由与眼睛跟踪系统200关联的第二照明器113导致的闪光预测将要产生在该位置。
在步骤840:使用处理电路210来执行图像处理,包括步骤:识别在第二时刻t2时由成像装置110捕获的第一图像600中的至少一个第一候选闪光106”,其中,第一图像600包括眼睛100的角膜101的至少一部分和由第一照明器112产生的至少一个闪光。
执行图像处理以识别第一图像600中的至少一个第一候选闪光106”可以包括基于第一图像600中的像素的强度值来使用强度阈值。
步骤840可以包括确定表示至少一个第一候选闪光106”中的每一个闪光的一组像素位置。步骤840可以进一步包括将表示至少一个第一候选闪光106”中的每一个闪光的所述像素位置组存储在存储器中,以供将来检索。
在一个或多个实施例中,在图像中所识别的至少一个第一候选闪光106”可以表示反射106的投影概率分布。在一些实施例中,投影概率分布可以是高斯分布。
在步骤850:使用处理电路210来执行图像处理,包括步骤:识别第一图像600或在第三时刻t3由成像装置110捕获的第二图像601中的至少一个第二候选闪光107”,并且该第二图像包括眼睛100的角膜101的至少一部分和由第二照明器113产生的至少一个闪光。
执行图像处理以识别第一图像600中的至少一个第二候选闪光107”可以包括基于第一或第二图像600、601中的像素的强度值来使用强度阈值。
步骤850可以包括确定代表至少一个第二候选闪光107”中的每一个候选闪光的一组像素位置。步骤850可以进一步包括将表示至少一个第二候选闪光107”中的每一个候选闪光的所述像素位置组存储在存储器中,以供将来检索。
在一个或多个实施例中,在图像中所识别出的至少一个第二候选闪光107”可以表示反射107的投影概率分布。在一些实施例中,投影概率分布可以是高斯分布。
如果在第三时刻t3由成像装置110捕获的第二图像601中识别出至少一个第二候选闪光107”,则在一个或多个实施例中,该方法可以进一步包括通过处理电路210应用角膜运动滤波器CMF来补偿至少一个第二候选闪光107”从第二时刻t2到第三时刻t3的运动,以在更新角膜运动滤波器CMF之前将至少一个第二候选闪光107”的投影2D位置调整到在第二时刻t2估计的2D位置。由此,在我们使用在不同时间产生的闪光的情况下,可以避免由于错误估计的闪光位置而引起的大的视线误差。例如,如果在时刻t2所捕获的第一图像中描绘BP或DP闪光,而在时刻t3所捕获的第二图像中描绘另一个BP或DP闪光,则可能就是这种情况。在没有运动补偿的情况下,则可能会出现大的视线误差,从而导致眼睛跟踪性能和用户体验显著降低。
关于步骤840和850,第一图像600以及任何第二图像601可以描绘用户的整个眼睛100,或者它可以是眼睛100的一些部分,包括眼睛100的角膜101的至少一部分和由第一照明器112产生的至少一个闪光。
存在用于选择图像的一部分以进行眼睛跟踪处理的方法。在美国专利申请US2010/0328444中找到了一个示例。此专利申请的完整说明书通过援引并入本文。
在步骤860:基于概率估计函数,使用处理电路210从所有可能的多对的第一候选闪光106”和第二候选闪光107”中选择出一对第一和第二候选闪光106”、107”,这对第一和第二候选闪光具有对应于预测的第一和第二闪光位置P1、P2的最高概率。
在一个或多个实施例中,基于概率估计函数从这组候选闪光中选择出具有对应于预测的第一和第二闪光位置P1、P2的最高概率的一对候选闪光106”、107”包括对与每对可能的闪光106”、107”相关的预测的第一和第二闪光位置P1、P2执行统计测试。
在另一个实施例中,基于概率估计函数从这组候选闪光中选择出具有对应于预测的第一和第二闪光位置P1、P2的最高概率的一对候选闪光106”、107”包括在与这组候选闪光中的每对可能的闪光106”、107”相关的预测的第一和第二闪光位置P1、P2之间执行像素距离比较。
图9图示了方法步骤860的具体实施例,针对所有可能的多对的第一候选闪光106”和第二候选闪光107”的每对第一和第二候选闪光106”、107”,包括:
在子步骤861中,确定闪光对中第一和第二候选闪光106”、107”的位置对应于预测的第一和第二闪光位置P1、P2的概率。
闪光对中第一和第二候选闪光106”、107”的位置对应于预测的第一和第二闪光位置P1、P2的概率可以根据在步骤860下描述的任何实施例或者以任何其他合适的方式来确定。
在可选的子步骤862中:确定闪光对与眼睛100的选定部分的接近度。
在一或多个实施例中,眼睛100的选定部分是角膜中心103。
当投影到像平面上时,到角膜中心的距离可以被确定为从候选闪光对106”、107”到角膜中心103的位置的像素距离或其他合适的2D距离(距每个候选闪光106”、107”的距离或距被选择为表示这对闪光的位置的距离的组合)。
作为非限制性示例,马氏距离(Mahalanobis distance)可以用于距离确定。
在可选的子步骤863中:检查是否还有更多的闪光对要被评估。
如果有更多的闪光对要被评估,返回子步骤861,并可选地返回子步骤862。否则,转到子步骤864。
在子步骤864中:基于概率确定和可选地还有接近度确定的结果来从多对闪光中选择一对闪光。
例如,可以基于具有闪光对中第一和第二候选闪光106”、107”的位置对应于预测的第一和第二闪光位置P1、P2的最高概率的闪光对来选择闪光对。
替代地,闪光对的这种选择可以基于这样的闪光对:其既具有一定的概率使得该闪光对中的第一和第二候选闪光106”,107”的位置对应于预测的第一和第二闪光位置P1、P2、又具有确定的接近度使闪光(一起来看)对最可能对应于闪光对中第一和第二候选闪光106”、107”位置的位置对应于预测的第一和第二闪光位置P1、P2
在步骤860中选择之后并且在步骤870之前,该方法可以如图10所示,可选地包括以下子方法:
在子步骤1000中:将所选的一对候选闪光106”、107”的概率与预设阈值VPROB进行比较。
如果所选的一对候选闪光106”、107”的概率超过预设阈值VPROB,则该方法继续进行子步骤1010。
如果所选的一对候选闪光106”、107”的概率不超过预设阈值VPROB,则该子方法结束。
在子步骤1010中:将预测的第一和第二闪光位置P1、P2设定为所选的一对候选闪光106”、107”的位置。
由此,如果足够可靠,则将闪光对的2D位置的最新信息反馈到该方法中,并用于进一步改进3D角膜位置估计结果。
现在返回图8,该方法进一步包括:
在步骤870:基于所选的一对第一和第二候选闪光106”、107”的位置、使用处理电路210来估计角膜的当前3D位置xc、yc、zc。
在步骤880:将角膜中心103的估计的初始3D位置x1、y1、z1设定为角膜中心103的当前3D位置xc、yc、zc。
步骤880可以包括:通过将包括在角膜运动滤波器CMF中的估计的初始3D角膜位置x1、y1、z1设定为角膜中心103的当前3D位置xc、yc、zc、使用处理电路210来更新角膜运动滤波器CMF。在一些实施例中,使用扩展卡尔曼滤波器方程和角膜与闪光对方程的线性化版本来完成角膜运动滤波器CMF的更新。
在可选步骤890中:基于角膜中心103的估计的初始3D位置x1、y1、z1和角膜中心103的当前3D位置xc、yc、zc来确定角膜中心103的当前估计的3D速度vxc、vyc、vzc,之后将角膜中心103的估计的初始3D速度vx1、vy1、vz1设定为角膜中心103的当前估计的3D速度vxc、vyc、vzc。
可选步骤890可以包括:通过将包括在角膜运动滤波器CMF中的估计的初始3D角膜速度vx1、vy1、vz1设定为角膜中心103的当前3D速度vxc、vyc、vzc、使用处理电路210来进一步更新角膜运动滤波器CMF。在一些实施例中,使用扩展卡尔曼滤波器方程和角膜与闪光对方程的线性化版本来完成角膜运动滤波器CMF的更新。
作为可选步骤890的替代性方案,可以假定3D角膜速度随时间的推移是恒定的。这是一种计算上不昂贵且不复杂的解决方案,在许多应用中都可以起到很好的作用。优选地,如本文所述,确定估计的初始3D角膜速度vx1、vy1、vz1的起始值,并且将3D角膜速度保持在此恒定值。
作为可选步骤890的另一替代性方案,可以假设3D角膜速度随着时间的推移减小并接近零。这也是一种在计算上不昂贵且不复杂的解决方案,在许多应用中都可以起到很好的作用,并且与保持速度恒定的替代性方案相比,可以提供改善的性能。
结合图8、图9和图10描述的根据任何实施例的方法都可以重复地执行。这在图8中由分别从步骤880和890引回到步骤810的虚线箭头指示。例如,该方法可以每帧重复、或以某些预设时间间隔重复、或以任何其他合适的方式重复。此设定可以例如预设在眼睛跟踪系统200中。
结合本文给出的用于估计角膜的3D位置的任何实施例,该方法可以进一步包括执行眼睛跟踪。具体地,该方法可以例如包括由眼睛跟踪系统200基于角膜的估计的当前3D位置xc、yc、zc来预测用户的视线。
处理电路210可以相应地被配置为执行本文描述的任何或所有方法实施例。
进一步实施例
在一个或多个实施例中,提供了一种存储指令的非暂时性计算机可读存储介质,这些指令当由系统200的处理电路210执行时使系统200执行如本文(换句话说,在权利要求、发明内容或具体实施方式中)所公开的任何方法实施例中所限定的方法。
非暂时性计算机可读存储介质可以存储指令,这些指令当由系统200的处理电路210执行时使系统200:产生角膜运动滤波器CMF,该角膜运动滤波器包括在第一时刻t1眼睛100的角膜中心103的估计的初始3D位置x1、y1、z1和估计的初始3D速度vx1、vy1、vz1;通过应用角膜运动滤波器CMF来预测在第二时刻t2所捕获的图像中的第一二维2D闪光位置P1,其中,预测的第一闪光位置表示一位置,其中由与眼睛跟踪系统200相关联的第一照明器112导致的第一闪光预测将会产生在该位置;通过应用角膜运动滤波器CMF来预测在第二时刻t2所捕获的图像中的第二2D闪光位置P2,其中,预测的第二闪光位置表示一位置,其中与眼睛跟踪系统200相关联的第二照明器113导致的闪光预测将会产生在该位置;执行图像处理以:识别在第二时刻t2由成像装置110捕获的第一图像600中的至少一个第一候选闪光106”,其中,第一图像600包括眼睛100的角膜101的至少一部分和由第一照明器112产生的至少一个闪光;并且,识别第一图像600或在第三时刻t3由成像装置110捕获的第二图像601中的至少一个第二候选闪光107”,并且该第二图像包括眼睛100的角膜101的至少一部分和由第二照明器113产生的至少一个闪光;基于概率估计函数,从所有可能的多对第一候选闪光106”和第二候选闪光107”中选择出一对第一和第二候选闪光106”、107”,这对第一和第二候选闪光具有对应于预测的第一和第二闪光位置P1、P2的最高概率;基于所选的一对第一和第二候选闪光106”、107”的位置来估计角膜的当前3D位置xc、yc、zc;并且通过将角膜中心103的估计的初始3D位置x1、y1、z1设定为角膜中心103的当前3D位置xc、yc、zc来更新角膜运动滤波器CMF。
非暂时性计算机可读存储介质可以进一步存储指令,这些指令当由系统200的处理电路210执行时使系统基于角膜中心103的估计的初始3D位置x1、y1、z1和角膜中心103的当前3D位置xc、yc、zc来确定角膜中心103的当前估计的3D速度vxc、vyc、vzc,并且将角膜中心103的估计的初始3D速度vx1、vy1、vz1设定为角膜中心103的当前估计的3D速度vxc、vyc、vzc。由此,使用最新估计的角膜速度、当前估计的3D速度vxc、vyc、vzc来更新CMF,下一次操作就使用更新的CMF,这有助于不断地改进角膜位置估计。
在一个或多个实施例中,非暂时性计算机可读存储介质可以进一步存储指令,这些指令当由系统200的处理电路210执行时使系统200执行在任何方法实施例中所限定的方法。
在一些实施例中,非暂时性计算机可读存储介质可以进一步存储指令,这些指令当由系统200的处理电路210执行时使系统200重复执行在任何方法实施例中所限定的方法。
例如,可以在计算机程序产品中提供该非暂时性计算机可读存储介质。换句话说,计算机程序产品可以例如包括存储指令的非暂时性计算机可读存储介质,这些指令当由系统200的处理电路210执行时使系统200执行如任何方法实施例所限定的方法。
如以上参考图2所述,存储介质不必一定包括在系统200中。
本领域技术人员应认识到,本发明决不限于上述优选实施例。相反,在所附权利要求的范围内可以进行许多修改和变化。例如,如本文说明的,以上参考图8、图9和图10描述的实施例可以以不同的顺序执行和/或与附加的方法步骤结合以形成进一步的实施例。进一步地,将认识到,图2、图3和图7中所示的系统200可以仅旨在作为示例,并且其他系统也可以执行以上参照图8、图9和图10描述的方法。例如,系统200可以仅包括处理电路210。
应当理解,处理电路210(或处理器)可以包括微处理器、控制器、微控制器、中央处理单元、数字信号处理器、专用集成电路、现场可编程门阵列或任何其他合适的计算装置、资源中的一个或多个的组合,或可操作用于单独或与其他计算机部件(如存储器或存储介质)结合提供计算机功能的硬件、软件和/或编码逻辑的组合。
还应理解,存储器或存储介质(或计算机可读介质)可以包括任何形式的易失性或非易失性计算机可读存储器,包括但不限于永久存储器、固态存储器、远程安装存储器、磁性介质、光学介质、随机存取存储器(RAM)、只读存储器(ROM)、大容量存储介质(例如,硬盘)、可移动存储介质(例如,闪存驱动器、致密盘(CD)或数字视频磁盘(DVD))和/或任何其他易失性或非易失性、非暂时性装置可读和/或计算机可执行存储装置,这些存储装置存储处理器或处理电路系统可能使用的信息、数据和/或指令。
另外地,在实践所要求保护的发明时,本领域的技术人员可以通过研究附图、公开内容以及所附权利要求来理解和实现所公开实施例的变型。在权利要求中,词语“包括”不排除其他要素或步骤,并且不定冠词“一个(a)”或“一种(an)”并不排除多个。在权利要求中,词语“或者”不应解释为异或(有时被称为“XOR”)。相反,诸如“A或B”等表达涵盖了“A而非B”、“B而非A”以及“A和B”的所有情况,除非另有说明。在彼此不同的从属权利要求中陈述的某些措施的简单事实并不表明这些措施的组合不能被有利地使用。权利要求中的任何附图标记不应被理解为对范围构成限制。

Claims (18)

1.一种眼睛跟踪 方法,所述方法用于当用户的眼睛(100)的角膜中心(103)相对于与远程眼睛跟踪系统(200)相关联的成像装置(110)随着时间的推移而移动时,使用所述眼睛跟踪系统(200)执行所述角膜中心(103)的三维3D位置估计,所述方法包括:
-使用与所述眼睛跟踪系统(200)相关联的处理电路(210)来产生角膜运动滤波器CMF,所述角膜运动滤波器包括在第一时刻所述眼睛(100)的所述角膜中心(103)的估计的初始3D位置和估计的初始3D速度;
-使用所述处理电路(210)来:
-通过应用所述角膜运动滤波器CMF预测在第二时刻所捕获的图像中的第一二维2D闪光位置(P1),其中,所预测的第一闪光位置表示一位置,其中第一闪光被预测为将要由与所述眼睛跟踪系统(200)相关联的第一照明器(112)产生在所述位置;以及
-通过应用所述角膜运动滤波器CMF预测在所述第二时刻所捕获的所述图像中的第二2D闪光位置(P2),其中,所预测的第二闪光位置表示一位置,其中闪光被预测为将要由与所述眼睛跟踪系统(200)相关联的第二照明器(113)产生在所述位置;
-使用所述处理电路(210)来执行图像处理,包括以下步骤:
-识别在所述第二时刻由所述成像装置(110)捕获的第一图像(600)中的至少一个第一候选闪光(106”),其中,所述第一图像(600)包括所述眼睛(100)的角膜(101)的至少一部分和由所述第一照明器(112)产生的至少一个闪光;以及
-识别在所述第一图像(600)中的或在第三时刻由所述成像装置(110)捕获的第二图像(601)中的至少一个第二候选闪光(107”),并且所述第二图像包括所述眼睛(100)的所述角膜(101)的至少一部分和由所述第二照明器(113)产生的至少一个闪光;
-基于概率估计函数,使用所述处理电路(210)从所有可能的多对第一候选闪光(106”)和第二候选闪光(107”)中选择出一对第一和第二候选闪光(106”,107”),所述一对第一和第二候选闪光对应于所预测的所述第一和第二闪光位置(P1,P2)的概率最高;
-基于所选择的一对第一和第二候选闪光(106”,107”)的位置、使用所述处理电路(210)来估计所述角膜的当前3D位置;
-通过将所述角膜中心(103)的所述估计的初始3D位置设定为所述角膜中心(103)的所述当前3D位置、使用所述处理电路(210)来更新所述角膜运动滤波器CMF;
-基于所述角膜中心(103)的所述估计的初始3D位置和所述角膜中心(103)的所述当前3D位置来确定所述角膜中心(103)的当前估计的3D速度;以及
-将所述角膜中心(103)的所述估计的初始3D速度设定为所述角膜中心(103)的所述当前估计的3D速度。
2.如权利要求1所述的方法,包括重复执行如权利要求1所述的方法步骤。
3.如权利要求1所述的方法,其中,所述角膜运动滤波器CMF是卡尔曼滤波器。
4.如权利要求1所述的方法,其中,使用扩展卡尔曼滤波器方程和角膜与闪光对方程的线性化版本来完成所述角膜运动滤波器CMF的更新。
5.如权利要求1所述的方法,其中,使用所述处理电路(210)从所有可能的多对第一候选闪光(106”)和第二候选闪光(107”)中选择出对应于所预测的所述第一和第二闪光位置(P1,P2)的概率最高的所述一对第一和第二候选闪光(106”,107”)包括:
-确定一对闪光中第一和第二候选闪光(106”,107”)的位置对应于所预测的所述第一和第二闪光位置(P1,P2)的概率;
-确定所述一对闪光与所述眼睛(100)的所选择部分的接近度;以及
-基于概率确定和接近度确定的结果从可能的多对闪光中选择所述一对闪光。
6.如权利要求1所述的方法,所述方法进一步包括,如果在所述成像装置(110)在第三时刻捕获的所述第二图像(601)中识别出所述至少一个第二候选闪光(107”),则在更新所述角膜运动滤波器CMF之前,通过应用所述角膜运动滤波器CMF来补偿从所述第二时刻到所述第三时刻所述至少一个第二候选闪光(107”)的运动。
7.如权利要求1所述的方法,进一步包括,在更新所述角膜运动滤波器CMF之前:
-将所选择的一对候选闪光(106”,107”)的概率与预设阈值进行比较;以及
-如果所选择的一对候选闪光(106”,107”)的概率超过所述预设阈值,则将所预测的所述第一和第二闪光位置(P1,P2)设定为所选择的一对候选闪光(106”,107”)的位置。
8.如权利要求1所述的方法,进一步包括,在第一次执行所述方法时,基于所述用户的所述眼睛或头部的相应估计的3D位置和速度来设定所述第一时刻所述眼睛(100)的所述角膜中心(103)的所述估计的初始3D位置和所述估计的初始3D速度的相应起始值。
9.如权利要求1所述的方法,进一步包括由所述眼睛跟踪系统(200)基于所述角膜的估计的当前3D位置来预测所述用户的视线。
10.一种眼睛跟踪系统(200),所述眼睛跟踪系统用于当用户的眼睛(100)的角膜中心(103)相对于与所述眼睛跟踪系统(200)相关联的成像装置(110)随着时间的推移而移动时,执行所述角膜中心(103)的三维3D位置估计,所述眼睛跟踪系统(200)包括处理电路(210),所述处理电路(210)被配置为:
-产生角膜运动滤波器CMF,所述角膜运动滤波器包括在第一时刻所述眼睛(100)的所述角膜中心(103)的估计的初始3D位置和估计的初始3D速度;
-通过应用所述角膜运动滤波器CMF来预测在第二时刻所捕获的图像中的第一二维2D闪光位置(P1),其中,所预测的第一闪光位置表示一位置,其中第一闪光被预测为将要由与所述眼睛跟踪系统(200)相关联的第一照明器(112)产生在所述位置;以及
-通过应用所述角膜运动滤波器CMF来预测在所述第二时刻所捕获的所述图像中的第二2D闪光位置(P2),其中,所预测的第二闪光位置表示一位置,其中闪光被预测为将要由与所述眼睛跟踪系统(200)相关联的第二照明器(113)产生在所述位置;
-执行图像处理以:
-识别在所述第二时刻由所述成像装置(110)捕获的第一图像(600)中的至少一个第一候选闪光(106”),其中,所述第一图像(600)包括所述眼睛(100)的角膜(101)的至少一部分和由所述第一照明器(112)产生的至少一个闪光;以及
-识别在所述第一图像(600)中的或在第三时刻由所述成像装置(110)捕获的第二图像(601)中的至少一个第二候选闪光(107”),并且所述第二图像包括所述眼睛(100)的所述角膜(101)的至少一部分和由所述第二照明器(113)产生的至少一个闪光;
-基于概率估计函数,从所有可能的多对第一候选闪光(106”)和第二候选闪光(107”)中选择出一对第一和第二候选闪光(106”,107”),所述一对第一和第二候选闪光对应于所预测的所述第一和第二闪光位置(P1,P2)的概率最高;
-基于所选择的一对第一和第二候选闪光(106”,107”)的位置来估计所述角膜的当前3D位置;
-通过将所述角膜中心(103)的所述估计的初始3D位置设定为所述角膜中心(103)的所述当前3D位置来更新所述角膜运动滤波器CMF;
-基于所述角膜中心(103)的所述估计的初始3D位置和所述角膜中心(103)的所述当前3D位置来确定所述角膜中心(103)的当前估计的3D速度;以及
-将所述角膜中心(103)的所述估计的初始3D速度设定为所述角膜中心(103)的所述当前估计的3D速度。
11.如权利要求10所述的眼睛跟踪系统(200),其中,所述处理电路(210)被配置为重复执行这些步骤。
12.如权利要求10所述的眼睛跟踪系统(200),其中,所述处理电路(210)被配置为从所有可能的多对第一候选闪光(106”)和第二候选闪光(107”)中选择出对应于所预测的第一和第二闪光位置(P1、P2)的概率最高的所述一对第一和第二候选闪光(106”,107”),选择通过以下步骤实现:
-确定一对闪光中第一和第二候选闪光(106”,107”)的位置对应于所预测的第一和第二闪光位置(P1,P2)的概率;
-确定所述一对闪光与所述眼睛(100)的所选择部分的接近度;以及
-基于概率确定和接近度确定的结果从可能的多对闪光中选择所述一对闪光。
13.如权利要求10所述的眼睛跟踪系统(200),其中,所述处理电路(210)进一步被配置为:
-如果在所述成像装置(110)在第三时刻捕获的所述第二图像(601)中识别出所述至少一个第二候选闪光(107”),则在更新所述角膜运动滤波器CMF之前,通过应用所述角膜运动滤波器CMF来补偿从所述第二时刻到所述第三时刻所述至少一个第二候选闪光(107”)的运动。
14.如权利要求10所述的眼睛跟踪系统(200),其中,所述处理电路(210)进一步被配置为在更新所述角膜运动滤波器CMF之前:
-将所选择的一对候选闪光(106”,107”)的概率与预设阈值进行比较;以及
-如果所选择的一对候选闪光(106”,107”)的概率超过所述预设阈值,则将所预测的第一和第二闪光位置(P1,P2)设定为所选择的一对候选闪光(106”,107”)的位置。
15.如权利要求10所述的眼睛跟踪系统(200),其中,所述处理电路(210)进一步被配置为在第一次执行所述步骤 时,基于所述用户的所述眼睛或头部的相应估计的3D位置和速度来设定在所述第一时刻所述眼睛(100)的所述角膜中心(103)的所述估计的初始3D位置和所述估计的初始3D速度的相应起始值。
16.如权利要求10所述的眼睛跟踪系统(200),其中,所述眼睛跟踪系统(200)进一步被配置为基于所述角膜的估计的当前3D位置来预测所述用户的视线。
17.一种非暂时性计算机可读存储介质,所述非暂时性计算机可读存储介质存储指令,所述指令当由眼睛跟踪系统(200)的处理电路(210)执行时使所述眼睛跟踪系统(200):
-产生角膜运动滤波器CMF,所述角膜运动滤波器包括在第一时刻眼睛(100)的角膜中心(103)的估计的初始3D位置和估计的初始3D速度;以及
-通过应用所述角膜运动滤波器CMF来预测在第二时刻所捕获的图像中的第一二维2D闪光位置(P1),其中,所预测的第一闪光位置表示一位置,其中第一闪光被预测为将要由与所述眼睛跟踪系统(200)相关联的第一照明器(112)产生在所述位置;
-通过应用所述角膜运动滤波器CMF来预测在所述第二时刻所捕获的所述图像中的第二2D闪光位置(P2),其中,所预测的第二闪光位置表示一位置,其中闪光被预测为将要由与所述眼睛跟踪系统(200)相关联的第二照明器(113)产生在所述位置;
-执行图像处理以:
-识别在所述第二时刻由成像装置(110)捕获的第一图像(600)中的至少一个第一候选闪光(106”),其中,所述第一图像(600)包括所述眼睛(100)的角膜(101)的至少一部分和由所述第一照明器(112)产生的至少一个闪光;以及
-识别在所述第一图像(600)中的或在第三时刻由所述成像装置(110)捕获的第二图像(601)中的至少一个第二候选闪光(107”),并且所述第二图像包括所述眼睛(100)的所述角膜(101)的至少一部分和由所述第二照明器(113)产生的至少一个闪光;
-基于概率估计函数,从所有可能的多对第一候选闪光(106”)和第二候选闪光(107”)中选择出一对第一和第二候选闪光(106”,107”),所述一对第一和第二候选闪光对应于所预测的第一和第二闪光位置(P1,P2)的概率最高;
-基于所选择的一对第一和第二候选闪光(106”,107”)的位置来估计所述角膜的当前3D位置;
-通过将所述角膜中心(103)的所述估计的初始3D位置设定为所述角膜中心(103)的所述当前3D位置来更新所述角膜运动滤波器CMF,
-基于所述角膜中心(103)的所述估计的初始3D位置和所述角膜中心(103)的所述当前3D位置来确定所述角膜中心(103)的当前估计的3D速度;以及
-将所述角膜中心(103)的所述估计的初始3D速度设定为所述角膜中心(103)的当前估计的3D速度。
18.如权利要求17所述的非暂时性计算机可读存储介质,进一步存储指令,这些指令当由所述眼睛跟踪系统(200)的所述处理电路(210)执行时使所述系统执行如权利要求2至9中任一项所述的方法步骤。
CN202010585237.6A 2019-06-28 2020-06-24 用于3d角膜位置估计的方法和系统 Active CN112153363B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
SE1950825-8 2019-06-28
SE1950825A SE543455C2 (en) 2019-06-28 2019-06-28 Method and system for 3d cornea position estimation

Publications (2)

Publication Number Publication Date
CN112153363A CN112153363A (zh) 2020-12-29
CN112153363B true CN112153363B (zh) 2022-11-04

Family

ID=71143574

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010585237.6A Active CN112153363B (zh) 2019-06-28 2020-06-24 用于3d角膜位置估计的方法和系统

Country Status (5)

Country Link
US (1) US11308321B2 (zh)
EP (1) EP3757655B1 (zh)
CN (1) CN112153363B (zh)
ES (1) ES2939003T3 (zh)
SE (1) SE543455C2 (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102022108946A1 (de) 2022-04-12 2023-10-12 Kardex Produktion Deutschland Gmbh Verfahren zum Steuern einer Lagervorrichtung
DE102022108944A1 (de) 2022-04-12 2023-10-12 Kardex Produktion Deutschland Gmbh Verfahren zum Steuern einer Lagervorrichtung
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

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109471523A (zh) * 2017-09-08 2019-03-15 托比股份公司 使用眼球中心位置的眼睛追踪

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7206435B2 (en) * 2002-03-26 2007-04-17 Honda Giken Kogyo Kabushiki Kaisha Real-time eye detection and tracking under various light conditions
AU2003901528A0 (en) * 2003-03-31 2003-05-01 Seeing Machines Pty Ltd Eye tracking system and method
WO2006108017A2 (en) * 2005-04-04 2006-10-12 Lc Technologies, Inc. Explicit raytracing for gimbal-based gazepoint trackers
ATE527934T1 (de) 2009-04-01 2011-10-15 Tobii Technology Ab Adaptive kamera und illuminator-eyetracker
US8955973B2 (en) * 2012-01-06 2015-02-17 Google Inc. Method and system for input detection using structured light projection
US9514538B2 (en) * 2012-05-25 2016-12-06 National University Corporation Shizuoka University Pupil detection method, corneal reflex detection method, facial posture detection method, and pupil tracking method
EP3185211B1 (en) * 2014-08-22 2021-06-02 National University Corporation Shizuoka University Corneal reflection position estimation system, corneal reflection position estimation method, corneal reflection position estimation program, pupil detection system, pupil detection method, pupil detection program, gaze detection system, gaze detection method, gaze detection program, face orientation detection system, face orientation detection method, and face orientation detection program
KR101619656B1 (ko) * 2014-12-03 2016-05-10 현대자동차주식회사 시선추적장치 및 그의 동공검출방법
US9785234B2 (en) * 2015-12-26 2017-10-10 Intel Corporation Analysis of ambient light for gaze tracking
JP6870474B2 (ja) * 2017-05-24 2021-05-12 富士通株式会社 視線検出用コンピュータプログラム、視線検出装置及び視線検出方法
US10489648B2 (en) * 2017-08-04 2019-11-26 Facebook Technologies, Llc Eye tracking using time multiplexing
US9940518B1 (en) * 2017-09-11 2018-04-10 Tobii Ab Reliability of gaze tracking data for left and right eye

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109471523A (zh) * 2017-09-08 2019-03-15 托比股份公司 使用眼球中心位置的眼睛追踪

Also Published As

Publication number Publication date
US20210012105A1 (en) 2021-01-14
SE1950825A1 (en) 2020-12-29
EP3757655B1 (en) 2023-01-11
US11308321B2 (en) 2022-04-19
SE543455C2 (en) 2021-02-23
EP3757655A1 (en) 2020-12-30
ES2939003T3 (es) 2023-04-18
CN112153363A (zh) 2020-12-29

Similar Documents

Publication Publication Date Title
JP6577454B2 (ja) 軸上視線追跡システム及び方法
CN112153363B (zh) 用于3d角膜位置估计的方法和系统
CN113729611B (zh) 使用眼球中心位置的眼睛追踪
CN110266916B (zh) 用于在眼睛追踪中处理眩光的方法和系统
JP5529660B2 (ja) 瞳孔検出装置及び瞳孔検出方法
JP5661043B2 (ja) 外光映り込み判定装置、視線検出装置及び外光映り込み判定方法
JP5694161B2 (ja) 瞳孔検出装置及び瞳孔検出方法
US10552675B2 (en) Method and apparatus for eye detection from glints
JP6870474B2 (ja) 視線検出用コンピュータプログラム、視線検出装置及び視線検出方法
CN114391117A (zh) 眼睛跟踪延迟增强
US11163994B2 (en) Method and device for determining iris recognition image, terminal apparatus, and storage medium
US20200187774A1 (en) Method and system for controlling illuminators
WO2015027289A1 (en) Method and apparatus for eye detection from glints
CN111522431B (zh) 使用眼睛跟踪系统对闪光进行分类
WO2019185136A1 (en) Method and system for controlling illuminators
CN111753628B (zh) 训练眼睛跟踪模型
US11156831B2 (en) Eye-tracking system and method for pupil detection, associated systems and computer programs
US20240153136A1 (en) Eye tracking
US11003936B2 (en) Method and system for controlling an eye tracking system

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
GR01 Patent grant
GR01 Patent grant