CN106662917B - 眼睛跟踪校准系统和方法 - Google Patents

眼睛跟踪校准系统和方法 Download PDF

Info

Publication number
CN106662917B
CN106662917B CN201580030330.8A CN201580030330A CN106662917B CN 106662917 B CN106662917 B CN 106662917B CN 201580030330 A CN201580030330 A CN 201580030330A CN 106662917 B CN106662917 B CN 106662917B
Authority
CN
China
Prior art keywords
eye
user
information
parameters
display
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
CN201580030330.8A
Other languages
English (en)
Other versions
CN106662917A (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.)
Meta Platforms Technologies LLC
Original Assignee
Facebook Technologies LLC
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 Facebook Technologies LLC filed Critical Facebook Technologies LLC
Publication of CN106662917A publication Critical patent/CN106662917A/zh
Application granted granted Critical
Publication of CN106662917B publication Critical patent/CN106662917B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/16Constructional details or arrangements
    • G06F1/1613Constructional details or arrangements for portable computers
    • G06F1/1626Constructional details or arrangements for portable computers with a single-body enclosure integrating a flat display, e.g. Personal Digital Assistants [PDAs]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/16Constructional details or arrangements
    • G06F1/1613Constructional details or arrangements for portable computers
    • G06F1/1632External expansion units, e.g. docking stations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/16Constructional details or arrangements
    • G06F1/1613Constructional details or arrangements for portable computers
    • G06F1/1633Constructional details or arrangements of portable computers not specific to the type of enclosures covered by groups G06F1/1615 - G06F1/1626
    • G06F1/1684Constructional details or arrangements related to integrated I/O peripherals not covered by groups G06F1/1635 - G06F1/1675
    • G06F1/1686Constructional details or arrangements related to integrated I/O peripherals not covered by groups G06F1/1635 - G06F1/1675 the I/O peripheral being an integrated camera
    • 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/193Preprocessing; Feature extraction

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Ophthalmology & Optometry (AREA)
  • Multimedia (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • User Interface Of Digital Computer (AREA)
  • Eye Examination Apparatus (AREA)

Abstract

由计算装置上的或与计算装置耦合的装置上的相机捕捉的用户的眼睛和/或面部的图像,可以使用计算机视觉算法,例如眼睛跟踪和视觉检测算法进行分析,以确定用户的眼睛的位置,并估算与用户相关联的视线信息。可进行用户校准过程,以计算与用户相关联的校准参数。可考虑这些校准参数,以准确地确定用户的眼睛的位置,并估算用户正在观看的显示器上的位置。校准过程可包括确定用户的眼睛会聚在的平面,并使该平面与校准目标显示在的屏幕的平面相关。

Description

眼睛跟踪校准系统和方法
技术领域
本发明一般及眼睛跟踪控制,更具体地,涉及便于眼睛跟踪控制校准的系统和方法。
背景技术
由相机和显示器组成的眼睛跟踪系统跟踪用户的眼睛运动,以确定显示器上的位置,该显示器上的位置是用户视线的目标。用户视线在屏幕上的位置,用于控制显示器上存在的应用程序。相机相对于显示器的位置是预定的。
附图说明
通过举例的方式说明一些实施例但不限于附图。
图1是根据一些示例实施例的一个示例计算装置的装置图,该示例计算装置耦合到能够便于眼睛跟踪控制的对接装置;
图2是根据一些示例实施例的另一示例计算装置的装置图,该另一示例计算装置耦合到能够便于眼睛跟踪控制的对接装置;
图3A-3D是根据一些示例实施例的示例计算装置的装置图,该示例计算装置能够便于眼睛跟踪控制;
图4是根据一些示例实施例的示例软件构架的框图,该示例软件构架用于便于眼睛跟踪控制;
图5是根据一些示例实施例的示例数据流的框图,该示例数据流用于便于眼睛跟踪控制;
图6A-6B是根据一些示例实施例的示意图,该示意图描述与显示器有关的眼睛跟踪技术;
图7是根据一些示例实施例的便于眼睛跟踪校准的示例方法的流程图;
图8是根据一些示例实施例的最小化成本函数的示例方法的流程图,该成本函数与便于眼睛跟踪校准有关;
图9A-9B示出了根据一些示例实施例的计算的校准前后的视线坐标;
图10是根据一些示例实施例的以计算机系统示例形式的机器的框图,该计算系统有一套指令,可以让该机器执行在此讨论的任何一个或多个方法。
具体实施例
以下阐述了便于眼睛跟踪控制校准的示例系统和方法。在下面的描述中,出于解释的目的,详细陈述了许多具体的细节,以助于对具体实施例有透彻的理解。但是,对于本领域技术人员显而易见的是,不需要这些具体细节也能使用本技术。
计算装置的用户可以通过用户的眼睛运动与在计算装置上显示的对象和应用程序交互并控制该对象和该应用程序。计算装置上的或耦合到该计算装置的设备上的相机捕捉的用户的眼睛和/或面部的图像,可采用计算机视觉算法,例如眼睛跟踪和视觉检测算法进行分析。例如,可以处理所捕捉的图像,以提取与该用户的眼睛和/或面部的特征有关的信息。然后,计算装置可使用所提取的信息来确定该用户的眼睛的位置,并估算与该用户相关联的视线信息。用户的视线信息可以是对用户正在观看的位置的估算,并可包括如用户的视线、注视点信息(例如,用户正在观看的显示器上的位置)、用户视线的方向等信息。例如,计算装置也许能够估算用户正在观看显示器上的哪个图标。用户正在观看的位置的估算可用于指示一个或多个对象、应用程序等,以执行特定操作。例如,根据用户正在观看的计算装置的显示器上的位置,用户可指导并控制对象在屏幕上的运动,包括控制滚动功能、在虚拟游戏中对象的运动、控制指针和光标的位置等。对用户正在观看的位置的估算还可用于分析显示在屏幕上似乎要吸引用户的注意力的区域或对象,或者,该估算可用于研究用户观看的图形用户界面上的对象。例如,眼睛跟踪信息表示吸引用户注意力的区域或对象,通过眼睛跟踪信息,可改进应用程序用户界面的设计,因而当与应用程序交互时,用户可以有更好的体验。
当用户开始使用计算装置时,可进行用户校准过程,以计算与该用户相关联的校准参数。可考虑这些校准参数以准确地确定用户的眼睛的位置并估算该用户正在观看的该显示器上的位置。还可考虑该校准参数以确定三维(3-D)空间(例如,视线)中作为三维矢量的用户的眼睛视线的方向。在这种情况下,在用户视线的方向确定过程中,可以使用关于硬件几何结构(例如相机参数、屏幕相对于相机的位置或它们的任何合适的组合)。
图1是示例计算装置102的装置图100。该计算装置102与对接装置104耦合,该对接装置104能够便于眼睛跟踪控制。该计算装置102可以是任何类型的计算装置,包括但不限于智能电话、掌上电脑(PDA)、移动电话、平板电脑、电子阅读器、电视机、笔记本电脑、台式计算机、显示装置、头盔式显示器或它们的任何合适的组合。在眼睛跟踪控制的过程中,用户可用一只或两只手握住计算装置102来使用该计算装置102,或当该计算装置102放置在支架上或支撑在表面上时,用户可使用该计算装置102。
对接装置104可与计算装置102以任何方式耦合,例如通过计算装置102上的通用串行总线(USB)接口、计算装置102上的微型USB端口等。虽然图1中描述的对接装置104设置在计算装置102的底部,但是本领域的普通技术人员可理解该对接装置104可位于相对于该计算装置102的任何合适位置。该对接装置104可包括相机模块108和一个或多个LED(发光二极管)106。出于解释的目的,整个本发明描述和记载了LED 106。然而,对本领域的普通技术人员显而易见的是可使用任何合适的发光源(例如,红外激光器)。
该对接装置104可包括任何数量的红外LED 106,该红外LED 106可以任何方式放置在该对接装置104中的合适位置(例如,倾斜一定角度,使其指向用户的面部)。在一个特定的实施例中,一个或多个LED 106可以与一个或多个相机同步,同步的方式是:当该一个或多个相机正在抓帧时,打开该一个或多个LED 106,否则关闭。在一些实施例中,如果没有检测到任何运动,或者如果该对接装置104和/或计算装置102进入睡眠模式,可关闭LED。
在一些实施例中,该对接装置104还可包括适合类型的通滤波器(例如,有源的、机械的、高通的、带通的等)。在一些实施例中,使用了阻止800nm以下的光并允许800nm以上的光通过的高通滤波器。在一些实施例中,红外带通滤波器可能仅允许800-900nm的光进入该相机模块108的一个或多个相机中。
该相机模块108包括一个或多个前置摄像头,该前置摄像头以任何方式放置在对接装置104中的任何合适位置(例如,倾斜一定角度,使其指向用户的面部),且可用于捕捉用户的眼睛和/或面部的图像。一个或多个相机可被放置在与LED 106保持合适距离的位置,以优化红外光的适宜捕捉。在一些实施例中,计算装置102上的相机与立体声模式的相机模块108结合使用。在一些实施例中,相机模块108可包括以下各项中的任何一项或多项:以合适的每秒帧速率(例如,,以每秒30帧的高清)运行的黑白(例如,单色)、彩色(例如,RGB(红绿蓝))或IR-RGB(红外-红绿蓝)传感器、没有红外线屏蔽过滤器而有适合的视野和景深(如,移动设备情况下约30-80cm,电视机情况下约2-5m)的镜头等。相机模块108中的一个或多个相机可被定位成使该一个或多个相机朝向用户的面部倾斜。
相机捕捉的图像可以由眼睛跟踪软件来旋转,图像的处理可适于补偿输入方向(input orientation),或它们的任何合适的组合。例如,眼睛跟踪软件可使用计算装置102上的传感器(例如,加速度计,磁力计等)探测计算装置102的方向并旋转该图像,或应用预处理设置来补偿该装置的方向,从而可以适当地处理该图像。
LED 106发出光(例如,红外光),该光可以聚焦并集中朝向用户的眼睛。LED 106发出的光在用户的瞳孔中和角膜上映出,并由相机模块108中的相机记录。在一些示例实施例中,LED 106与一个或多个相机同步,这样当一个或多个相机正在抓取图像时,LED 106才亮。在一些示例实施例中,采用红外通过滤过器过滤掉800nm以下的可见光,这样的过滤可提高图像质量。相机模块108中的一个或多个相机的镜头的视野和景深可允许用户进行移动,以适应用户不同的头部姿势。眼睛跟踪控制软件可以分析相机模块108拍摄的图像,以提供用户正在观看的计算装置102的显示器上的位置的屏幕坐标(例如,(x,y)或(x,y,z))。这些坐标可用于很多应用(例如,滚动、移动对象、选择图标、玩游戏等等)。
LED 106和相机模块108可以任何方式打开和/或关闭,例如通过利用外部滑块、计算装置102或对接装置104的侧面上或背面上的专用开关按钮,由屏幕上的应用程序或数字按钮控制,由计算装置102和/或对接装置104的运动或震动控制、由语音命令、屏幕上的电容式按钮、触摸板(多个),生物信号(例如,肌电图(EMG),脑电图(EEG))等)、远程控制、手势和/或人物姿势,或它们的任何合适的组合控制。这样,在一些示例实施例中,仅当LED 106和相机打开时(例如,当用户正在使用眼睛跟踪功能时),眼睛跟踪组件才会消耗功率。
在一些实施例中,当相机位于计算装置102的底部(如,与用户的视角(perspective)有关)时,眼睛跟踪功能被优化。用户可使与对接装置104耦合的计算装置102旋转,以正确地定位该相机模块108,使其位于计算装置102的底部。在一些实施例中,根据计算装置102和对接装置104的方向,计算装置102的一个或多个加速计和/或磁力计、LED、通滤波器和相机打开和/或关闭。例如,从用户的角度看,当计算装置102和对接装置104旋转,使相机模块108位于计算装置102的顶部时,LED和相机可关闭。
当在预定的时间(例如,5-10秒)内不能探测出用户的面部时,LED和相机可关闭,且当探测出用户的面部或用户的面部部分(如,用户的眼)时,LED和相机可再次打开。
图2是计算设备202的另一实施例的装置图200,该计算设备与能便于眼睛跟踪控制的对接装置204耦合。图2所示的实施例的操作可以与图1所示的实施例的操作类似,并且可包含图1描述的任何一个或组合特征。然而,如图2所示,对接装置204可与LED 206集成,且可使用计算装置202的相机模块(代替或增加与对接装置204集成的相机模块208)。在使用USB、微USB接口或专用端口将计算装置202与对接装置204耦合的一些实施例中,由于计算装置202的相机用于捕捉图像,因而图2描述的配置可更快地传送来自相机的图像。当同时使用一个或多个前置和后置摄像头时,可使用用于眼睛跟踪控制的前置摄像头。
图3A-3D是示例计算装置的装置图,该计算装置能够便于眼跟踪控制。图3A-3C所示的实施例的操作与图1所示的实施例的操作类似,并且可包含图1描述的任何一个或组合特征。然而,LED和相机模块集成到计算装置中(而不是成为对接装置的一部分)。图3A-3C分别描述了计算装置300、310和320,在不同的示例配置中,LED 302、312和322和相机模块304、314和324集成到计算装置300、310和320中(与用户的视角有关)。
计算装置300、310和320上的LED 302、312和322和相机模块304、314和324可位于计算装置300、310、320上的多个配置的任何一个中。图3A示出了LED 302和相机模块304位于计算装置300的底部。图3B示出了LED 312位于计算装置310的一侧,而相机模块314位于计算装置310的相对一侧。图3C示出了LED 322和相机模块324位于计算装置320的同一侧。
图3D展示了眼睛跟踪装置。其中,相机模块334和LED 332未与计算装置330的屏幕连接。当眼睛跟踪装置相对于显示屏不在固定的位置时,可用附加校准来补偿。
图4是便于眼睛跟踪控制的示例软件架构400的框图。软件架构400的任何一个或多个组件可在计算装置(例如,计算装置102、202、300、310、320或330)的控制处理单元(CPU)上,或在CPU和计算装置的图形处理单元(GPU)的组合上运行。在一些示例实施例中,软件架构400的一个或多个组件在专用芯片上运行。该软件可作为后台程序(例如,作为操作系统(OS)的一部分或在网页浏览器内),并可提供其他应用程序可以访问的应用程序接口(API)。API可以触发事件,或使用其他一些类似机制将用户正在观看的屏幕上的位置的信息发送给其他应用程序。本领域的普通技术人员将理解到,图4所示的示例软件架构400可包括更多或更少的元件。
软件架构400可分成不同的层。底层可以包括对应各自的硬件的相机模块480和照明模块490。为了进行相机操作,比如打开相机、捕捉图像、控制相机属性、触发传感器以抓取图像,或者它们任何合适的组合,相机层可以包括相机控制模块460,该相机控制模块460负责与每个相机通信。相机控制模块460还可以包括电路,以处理由相机模块480传送的图像。例如,相机控制模块460可以包括处理器(例如,内部存贮程序(ISP),该处理器可以优化图像质量,检测图像上感兴趣的区域,裁剪由相机模块480传送的图像等。相机层还可以包括相机和光同步模块470,该相机和光同步模块470与相机和发射源(例如,红外线发射源)同步,因而以这样的方式控制光:改进用户的眼睛的跟踪、提高视线精度、最小化能量消耗,或它们的任意组合。在一些示例实施例中,根据眼睛跟踪引擎或相机控制模块460发出的参数降低或增加光的数量,采用眼睛跟踪算法来优化照明。在一些示例实施例中,相机层被配置为在相机触发输出的频率上闪光(例如,红外线LED)。在一些示例实施例中,这种同步通过使用由相机层提供的一个或多个触发信号到相机模块480和照明模块490来实现。
一旦相机模块480的传感器捕捉到图像,图像被发送到眼睛跟踪电路,以进一步处理(例如,眼睛特征的检测和视线方向或注视点的计算)。在一些实施例中,相机层将图像传送给相机控制模块460,相机控制模块460在将图像传送到眼睛跟踪层之前处理该图像。在眼睛跟踪层中,眼睛探测和跟踪模块440可处理图像以找到特征,例如眼睛区域位置、瞳孔中心、瞳孔大小、角膜反射位置、眼角、虹膜中心、虹膜大小或它们任何合适的组合。在视线估算阶段,视线估算模块430可使用这些特征,视线估算模块430可能是负责计算用户的注视点。视线估算模块430还可计算用户的眼睛的光轴和视轴,并基于用户的具体特征校准该计算。
API层可用于眼睛跟踪层与使用眼睛视线信息的应用程序之间的通信。API模块420可发送眼睛跟踪层计算的数据,例如注视点的坐标、用户的眼睛方向的三维(3D)矢量、瞳孔大小、闪烁速率或它们任何合适的组合。该API模块420还可接受来自眼睛跟踪层的应用程序的命令(例如,启动和/或停止眼睛跟踪引擎、查询特定信息、改变眼睛跟踪引擎工作的模式等)。应用程序模块410可以连接到眼睛跟踪器的API模块420,并为了任何合适的目的使用眼睛视线信息(例如,控制应用程序或游戏、以供将来使用而记录眼睛数据、确定驾驶员的睡意水平、测量一个人对特定对象的兴趣,或它们任何合适的组合)。
图5是用于便于眼睛跟踪控制的示例数据流的框图。一个或多个相机和照明模块510(例如,通过红外LED提供照明)可捕捉用户一个眼睛或多个眼睛的图像。眼睛特征探测模块520可使用所捕捉的数据探测眼部特征(例如,眼(多个)、瞳孔、角膜反射的位置等)。使用探测到的眼部特征,视线估算模块530可估算用户的注视点,然后通过眼睛控制模块540,该用户的注视点可用于控制应用的各方面。
当用户刚开始使用眼睛跟踪功能时,可进行校准过程,以计算特定于用户的校准参数(例如,光轴与视轴之间的垂直和水平偏移)和/或计算映射函数的参数,该映射函数可以将图像坐标系统上的眼睛特征映射到屏幕坐标系统。然后通过视线估算算法,这些校准参数以及面部和眼睛的信息用于估算用户正在观看的屏幕上的位置和/或用户的视线的位置。可使用任何适合的校准过程以计算特定于用户的校准参数。特定于用户的校准参数可包括任何有关的参数,例如光学角度与视觉角度之间的偏移、角膜半径、角膜中心与瞳孔中心之间的距离等。在一些实施例中,可使用通用的回归多项式以将图像数据映射到屏幕坐标系统,且该校准参数可包括该多项式的系数。
在保证估算的视线坐标(gaze coordinates)的准确性的同时,为了允许用户移动,可以使用硬件校准设置,使3-D空间中的硬件组件的相对尺寸、位置和特征是已知的,包括屏幕大小、一个或多个相机相对屏幕的位置和相对角度、光源的位置、固有相机参数等等。
图6A和6B是眼睛跟踪技术系统610相对于屏幕620的示意图。屏幕620可以是具有高度h和宽度w的矩形屏幕。眼睛跟踪技术系统610包括一个或多个光源L1—Ln。在图6A中,O是坐标系统XYZ的中心。在一些实施例中,一个或多个相机和一个或多个光源L1—Ln相对于中心O的位置是已知的。在一些实施例中,屏幕620相对于中心O的位置是已知的。在一些实施例中,一些相机参数是已知的,包括焦距、光学中心等等。使用已知的参数,可以确定未知的值。
在一些实施例中,如上所述,眼睛跟踪系统可嵌入到屏幕中,或者可以装载在屏幕上的特定位置中。在这种情况下,硬件组件是固定的,对于硬件校准来说一次测量可能是足够的。当眼睛跟踪装置不固定到屏幕时,用户可能需要手动测量以及输入该装置与该屏幕之间的距离,以使眼睛跟踪软件在用户校准后可以正确计算屏幕上的视线坐标。
眼睛跟踪系统可以捕捉关于用户的眼睛和面部特征的信息,包括瞳孔中心、瞳孔椭圆(pupil ellipse)、角膜反射、眼角、面部方向等。瞳孔中心是位于被探测瞳孔的中心的点。瞳孔椭圆是(圆形)瞳孔图像的椭圆表示法(elliptical representation)。瞳孔椭圆的偏心率与一角度有关,该角度是用户视线的方向与相机和眼睛的连线之间的角度。角膜反射是从角膜反射的光。当已知光源L与相机O之间的关系时,相对于瞳孔中心测量的光源的角膜反射的位置,可以用于识别视线方向。
在用户校准过程中,可以在屏幕上显示一个或多个对象,当它们正被显示时,用户可以观看这些对象。如果在任何给定时间两个或多个校准对象被显示,则系统可以识别用户正在观看哪一个,通过例如将校准对象所循的路径与当他们观看对象时眼睛所循的路径进行对比。在一些实施例中,当用户被指示观看屏幕的一部分时,例如屏幕的角部,光源处等等,用户校准可以发生。当校准对象被显示时,眼睛跟踪软件捕捉眼睛信息,包括瞳孔中心、瞳孔椭圆、角膜反射、眼角、面部方向等等。
图6B示出了要在3-D空间中相对于原点O计算的眼睛特征,这样可以计算视轴,并且视轴可以与屏幕平面相交。角膜反射在图像平面上的位置g可以与3-D空间中光源L的位置结合使用,根据一个或多个相机以及相机的固有参数,计算3-D空间中角膜中心C的位置。例如,可以从每个光源L经由角膜到每个相机来跟踪光线。每个光源相机对提供单独的光线,并且识别角膜表面上的点。通过在这些点之间进行三角测量,可以确定角膜半径和C的位置。当使用多个相机或光源时,可以提高测量的准确性。
瞳孔中心在图像平面上的位置p可以与3-D空间中角膜中心C的位置、眼睛和空气的光学性质以及相机的固有参数结合使用,以计算3-D空间中瞳孔中心E的位置。例如,相机捕捉瞳孔的图像,但是瞳孔中心的实际位置与图像直接指示的位置不同,因为瞳孔位于角膜的后方,并且光在角膜与空气的交界处被折射。因此,考虑到该折射,瞳孔中心的显示位置(apparent position)要调整。
3-D空间中瞳孔中心E的位置和角膜中心C的位置定义一个矢量,称为光轴。实际视线,也可称为视轴,具有相对于光轴的角偏移,该角偏移可以通过用户校准来计算。x和y方向上的角偏移称为α和β,并且通常在水平方向上大约5°,在垂直方向上大约1.5°,但是这些值是针对个人的,因此需要基于每个用户来计算。
通过要求用户观看屏幕上和3-D空间中的已知位置上显示的校准目标序列,可以计算α和β(在硬件校准的设置中,屏幕相对于相机(多个)的位置和大小是已知的,因此3-D空间中校准目标的位置是已知的)。
一旦视轴已知,则光线可以与屏幕平面相交。相交点提供用户正在观看的屏幕上的视线坐标。在用户校准过程中,也可以计算其它眼睛参数,例如角膜半径或瞳孔中心与角膜中心之间的距离,以提高屏幕上的视线坐标的计算的准确性(由于角膜中心的较佳估算,和所产生的光轴和视轴)。否则,可以使用平均值(例如,角膜半径为7.8mm)。
为了减少硬件设置的人工测量的需要,在用户特定校准参数的计算期间,在保证头部运动的公差(tolerance)的同时,可以计算3-D空间中屏幕相对于眼睛跟踪装置的位置和方向。
本文描述的视线估算包括校准过程中硬件参数的这种计算(该硬件参数用于计算用户特定参数),并且在用户特定校准之前硬件设置未知的情况下可能是相关的。例如,它可用于眼睛跟踪装置是外围设备的情况下,或者在用户能够将眼睛跟踪装置连接到不同类型的计算装置(例如,笔记本电脑、计算机屏幕、平板电脑等)的情况下。用户可以将该外围设备放置在相对于计算装置的各种位置。在每一种情况下,硬件配置(例如,眼睛跟踪装置相对于屏幕的位置和角度)可以不同,并且用户可能另外需要对每个不同的计算装置进行硬件校准(例如人工测量某些预定义元素之间的距离,诸如装置的左上角、屏幕的左上角、装置与屏幕之间的角度等)。
在上述用户校准期间,要校准的未知量的总集合可以包括任何未知信息,例如眼睛参数(例如,光轴和视轴α和β之间的偏移、角膜半径Rc、瞳孔中心与角膜中心之间的距离h、折射率n等)和硬件参数(例如,3D空间中相对于眼睛跟踪装置S的屏幕位置和方向、以及屏幕大小(宽度w、高度h))。在校准之前已知的信息可以包括光源相对于一个或多个相机L1—Ln的位置、一个或多个相机的相机参数(例如,焦距、光学中心等)等等。
在一些示例实施例中,屏幕大小(w,h)可以是已知的,或者可以通过软件(例如,通过操作系统API)以编程方式获取,并用作现有已知的信息。在一些实施例中,一些眼睛参数可以采用常数值以减小未知量的维度空间。
图7是便于眼睛跟踪校准的示例方法700的流程图。在操作702中,在计算系统的显示设备上显示用户特定校准目标组中的一个用户特定校准目标。用户特定校准目标可以以任何合适的方式显示。
在操作704中,在显示校准目标的同时,收集与所显示的校准目标相关联的眼睛信息。眼睛信息的收集可以包括检测和存储信息,例如瞳孔中心、瞳孔椭圆、虹膜中心、虹膜椭圆、由相机(多个)捕捉的图像(多个)上的角膜反射等等。在一些实施例中,如果要校准的唯一的眼睛参数是α和β,则在该阶段可以计算3D空间中相对于相机的瞳孔中心(多个)和角膜中心(多个)。
在操作706中,眼睛跟踪应用程序确定要显示的校准目标组是否已经被显示。如果存在该校准目标组中的附加校准目标还未被显示,则眼睛跟踪应用程序返回操作702以呈现下一个校准目标,并且相应地收集与该校准目标相关联的眼睛信息(操作704)。
在操作708中,当校准目标组内的所有校准目标已经被显示时,眼睛跟踪应用程序使用所收集的图像数据(例如,眼睛信息)计算眼睛参数和几何参数。可以计算眼睛参数和几何参数以最小化成本函数F。成本函数F使用所估算的注视坐标(使用眼睛参数和几何参数计算)并使用校准目标的坐标计算度量(metric)。成本函数F可以通过使用该眼睛参数组计算3-D空间中的角膜中心(多个)和瞳孔中心(多个)来计算度量。使用当前眼睛参数组的α和β来计算光轴和视轴。在示例实施例中,计算3-D空间中眼睛的视轴会聚的点。计算会聚点与校准目标之间的几何关系(例如,平面P、旋转和变换矩阵RT、线性或非线性映射H等)并将其存储为几何参数。在另一示例性实施例中,可以计算使给定校准目标的所有视轴之间的距离最小化的3-D点c。计算每个目标i的点Ci与校准目标之间的几何关系(例如,平面P、旋转和变换矩阵RT、线性或非线性映射H等)并将其存储为几何参数。在又一示例实施例中,全局优化找到使视线与校准目标的理论3-D位置之间的累积距离最小化的变换。该变换可以包括平面P、旋转和变换矩阵RT以及线性或非线性映射H,并且被存储为几何参数。在一些示例实施例中,上述全局优化还通过同时最小化所有校准参数的成本函数F来优化眼睛参数EP。
在操作710中,使用操作708中所计算的眼睛参数和几何参数来计算后续眼睛跟踪阶段的视线坐标。使用视轴和几何参数(例如,作为视轴与平面P的交点)来计算视线坐标(也称为注视点(PoR))。
图8是最小化成本函数的示例方法800的流程图。该成本函数与便于眼睛跟踪校准有关。方法800能够执行图7的操作708中描述的优化例程(optimization routine)。该优化例程用于计算计算眼睛参数(EP)组和几何参数(GP)组。该计算眼睛参数(EP)组和几何参数(GP)组根据视轴的会聚点与校准目标之间的距离最小化成本函数F。
在操作802中,从给定眼睛参数组中计算所收集的样本组的视轴。例如,在该操作中,使用当前眼睛参数组(例如角膜半径以及瞳孔中心与角膜中心之间的距离)的其它参数,可以计算3-D空间中的瞳孔中心(多个)和角膜中心(多个)。
使用当前眼睛参数,为每个样本计算3-D空间中视轴会聚的点(操作804)。可替代地或另外地,使用当前眼睛参数,可以为每个样本计算沿着单个眼睛(或每只眼睛)的视轴的用户视线。例如,操作704中显示的样本的眼睛信息和对象位置数据,可以被存储以及使用当前眼睛参数被重新估算,以生成用户视线的方向的更新估算。
找到会聚点(convergence point)与校准目标坐标之间的几何关系(操作806)。可选地或另外地,用户视线的当前估算与屏幕平面的当前估算的交集可用作所估算的3-D聚集点,并且可以找到所估算的3-D聚集点与校准目标坐标之间的几何关系。该几何关系可以包括找到代表3-D空间中屏幕的平面P、旋转和变换矩阵RT、非线性映射H等等。在一些示例性实施例中,通过最小化每个目标i的会聚点(或相交点)ci与屏幕位置和方向的给定变换M的理论目标位置T之间的累积距离来计算几何关系。例如,下面的等式可以用于确定几何参数GP。
GP=min{Transformation Mi|M(Ti)-ci|}
找到的关系存储为几何参数。
在操作808中,使用视轴和几何参数GP计算视线坐标。在一些示例性实施例中,视线坐标被计算为视轴与平面P的交点。
在操作810中,计算成本函数F。成本函数F可以基于视线坐标与校准目标坐标之间的误差度量。
在操作812中,如果成本函数F未被最小化,并且尚未达到最大迭代次数,则算法更新操作814中的眼睛参数和几何参数,使成本函数F最小化,并返回到操作802。
在操作816中,如果成本函数F最小化,则返回使成本函数F最小化的所计算的眼睛参数组和几何参数组。
图9A示出了对于给定校准目标的眼睛参数和几何参数的计算的起始点。对于给定眼睛参数组,相对于装置902计算视觉的视线向量904。然后估算由初始几何参数定义的给定屏幕位置906,并且计算基于理论目标位置908与注视点910之间的屏幕上的距离的度量。该度量将被最小化以减小视线坐标与理论目标位置908之间的距离。
图9B示出了方法800所描述的过程的结束部分。一旦度量已经被优化,所计算的眼睛参数组(例如,每只眼睛的视轴和光轴之间的偏移)和几何参数组(例如,相对于装置902的屏幕位置和方向)使给定校准目标的视线坐标与理论目标位置908之间的距离最小化。
尽管图9A-9B示出了使用用户的两只眼睛的两个视轴的会聚点来确定在3D空间中显示器相对于相机的位置的实施例,但是也可构思使用单眼的实施例。例如,一旦眼睛的α和β已知,且从眼睛的图像中可以准确地确定眼睛的视轴,则每当用户观看所显示的对象时,显示器表面上的点是确定的。通过确定对象在平面显示器上的位置(例如,三个非共线点),可以确定几何参数(例如,显示器的平面)。此外,当这些点与显示器的边缘之间的距离和方向已知时,也可以确定显示器的方向。在一些示例性实施例中,使用三个以上的显示对象。例如,附加对象可以使用,以增加所确定的几何参数的置信度(confidence),或以提供将在校准参数确定过程中使用的附加数据,或两者。
在此某些具体实施例被描述为包括逻辑或若干组件、模块或机制。模块可以构成软件模块(比如,体现在机器可读媒体上或传输信号中的代码)或者硬件模块。硬件模块是有形单元,该单元能够进行某些操作并且可以以某种方式进行配置或安排。在一些具体实施例中,一个或多个计算机系统(比如,单机、客户端或服务器计算机系统)或者计算机系统(比如,一个处理器或一组处理器)的一个或多个硬件模块可以通过软件(比如,应用程序或应用程序部分)配置成硬件模块,该硬件模块运转以执行此处所述描述的某些操作。
在各种实施例中,硬件模块可以机械化或电子化实现。例如,硬件模块可以包括专有电路或逻辑电路,该专有电路或逻辑电路被永久配置(例如,作为专用处理器,例如现场可编程门阵列(FPGA)或特定用途集成电路(ASIC)),以执行某些操作。硬件模块还可以包括可编程逻辑或电路(例如,被包含在通用处理器或其他可编程处理器内),该可编程逻辑或电路通过软件临时配置以执行某些操作。应当理解的是,决定在在专用且永久配置的电路里或在临时配置的电路(例如,通过软件配置)里,机械化执行硬件模块,可能是出于成本和时间的考虑。
因此,术语“硬件模块”应被理解为包含有形实体,即一种物理构造的、永久配置的(如,硬连线的)或临时配置的(例如,程序化的)的实体,以便以特定方式操作和/或执行此处公开的某些操作。考虑到临时配置的(如,程序化的)硬件模块的实施例,在任何一个实施例中,各个硬件模块都不需要及时进行配置或实例化。例如,当硬件模块包含使用软件配置的通用处理器时,可以在不同时间将通用处理器配置成各自不同的硬件模块。相应地,例如,软件可以相应地配置一个处理器,例如,在一个时间的例子构成一个特别的硬件模块,并且在另一个时间的例子里构成一个不同的硬件模块。
硬件模块可将信息提供给其他硬件模块并从其他硬件模块处接收信息。因此,可以认为所描述的硬件模块是通信耦合的。当多个这样的硬件模块同时存在时,通过连接该硬件模块的信号传输(例如,通过合适的电路和总线)可以实现通信。在实施例中,多个硬件模块在不同的时间配置或实例化,可实现该硬件模块之间的通信,例如,通过存储和检索多个硬件模块可以访问的存储结构中的信息。例如,一个硬件模块可以进行一项操作,存储其通信连接的存储设备中的操作输出。然后,另一硬件模块稍后可以访问该存储设备,检索和处理存储的输出。硬件模块还可以开始与输入或输出装置的通信,并可以在资源上操作(比如,信息收集)。
可以进行此处描述的示例方法的各种操作,至少部分地,通过临时配置(例如,通过软件)或永久配置的一个或多个处理器进行相关操作。不论是临时还是永久配置,该处理器可构成处理器实现模块,该处理器实现模块执行一个或多个操作或功能。在一些示例实施例中,本文所指的模块可以包括处理器实现模块。
类似地,本文描述的方法可至少部分地由处理器实现。例如,该方法的至少某些操作可由一个或多个处理器或处理器实现模块执行。这些操作的执行可以分配到一个或多个处理器,不仅在单个机器里,而且部署到若干机器里。在一些示例实施例中,处理器或多个处理器可位于一个位置(例如,在家庭环境中、办公室环境中或作为服务器机群),而在其他实施例中,多个处理器可分布在若干位置。
一个或多个处理器还可以进行支持“云计算”环境中相关操作的运行,或者作为软件即服务运行。比如,至少一些操作可以通过一组计算机进行(作为包括处理器的机器的例子),这些操作通过网络(比如,互联网)和通过一个或多个适当的接口(比如,应用程序接口(APIs))实现。
示例性实施例可在数字电子电路,或在计算机硬件、固件、软件或它们的组合中执行。采用计算机程序产品可实现实施例,该计算机程序产品例如有形地包含在信息载体中的计算机程序,例如在机器可读的媒体中,以便于数据处理设备的执行或控制数据处理装置的操作,该数据处理装置如可编程处理器、计算机或多个计算机。
计算机程序可以用任何形式的编程语言编写,包括编译或解释型语言,且它可以任何形式部署,包括作为独立程序或作为适合在计算环境中使用的模块、子程序或其它单元。计算机程序可部署为在一个地点的一台或多台计算机上运行,或分散在多个地点并通过通信网络互相联系。
在示例实施例中,通过一个或多个可编程处理器执行操作,该可编程处理器通过操作输入数据和生成输出执行计算机程序以实现多个功能。通过专用逻辑电路(例如,现场可编程门阵列(FPGA)或专用集成电路(ASIC))也可以实现方法操作。示例实施例的设备可以作为专用逻辑电路。
计算系统可以包括客户端和服务器。客户端和服务器通常彼此远离,并且通常情况下是通过通信网络进行互动。客户端和服务器之间的关系通过计算机程序形成,该计算机程序在各自的计算机上运行并且彼此间形成客户端和服务器关系。在配置可编程计算系统的实施例中,可以理解的是,需要考虑硬件和软件架构。具体地,可以理解的是,是否在永久配置的硬件(如,ASIC)中、在临时配置的硬件(如,软件和可编程处理器的组合)中、或永久和临时配置相组合的硬件中实施某些功能的选择可以是设计选择。在各种示例具体实施例中,硬件(例如,机器)和软件架构的部署如下。
图10为计算机系统1000的示例形式的机器的框图,该计算机系统1000中的指令可以被执行,该指令使该机器运行本文所讨论的任何一个或多个方法。在替代的实施例中,该机器作为一个独立的设备运行或者可以与其他机器连接(例如,网络连接)。在联网部署中,该机器可以在服务器—客户端网络环境中作为服务器或客户端机器,或者在对等(或分布式)网络环境中作为对等机运行。该机器可以是个人电脑(PC)、平板电脑、机顶盒(STB)、个人数字助理(PDA)、蜂窝电话、网络设备、网络路由器、交换机或桥接器,或任何能够执行指令的机器(时序或其他方式),该指令使由该机器采取的动作具体化。此外,虽然仅描述了单个机器,但是术语“机器”也被认为包括任何机器群,该机器将被认为单独地或联合地执行一组(或多组)指令,以执行本文所讨论的任何一个或多个方法。
示例计算机系统1000包括处理器1002(例如,中央处理器(CPU)、图形处理器(GPU)或两者)、主存储器1004和静态存储器1006,彼此间通过总线1008通信。计算机系统1000还可以包括视频显示设备1010(例如,液晶显示器(LCD)或阴极射线管(CRT))。计算机系统1000还包括字母数字输入设备1012(例如,键盘)、用户界面(UI)导航设备1014(例如,鼠标或触控式显示器)、磁盘驱动单元1016、信号生成设备1018(例如,扬声器),以及网络接口设备1020。
磁盘驱动单元1016包括机器可读媒体1022,在该机器可读媒体1022上存储了一组或多组数据结构和指令1024(例如,软件),该数据结构和指令体现此处描述的任何一种或多种方法或功能,或者由此处描述的任何一种或多种方法或功能利用。指令1024还可以,全部或至少部分,存储在主存储器1004里、静态存储器1006里和/或在计算机系统1000执行指令期间的处理器1002里,主存储器1004和处理器1002还构成机器可读媒体。
虽然示例实施例中图示了机器可读媒体1022为单媒体,但是术语“机器可读媒体”可以包括单个媒体或存储一个或多个指令或数据结构的多个媒体(例如,集中式或分布式数据库和/或相关联的高速缓存和服务器)。术语“机器可读媒体”还应被理解为包括任何有形媒体。该媒体能够存储、编码或携带通过机器运行的指令,使机器运行本技术的任何一种或多种方法,或能够存储、编码或携带此类指令利用的数据结构或与此类指令相关联的数据结构。术语“机器可读媒体”应相应地被理解为包括,但不限于,固态存储器和光磁媒体。机器可读媒体的具体实施例包括非易失性存储器,举例来说包括半导体存储设备,如,可擦除可编程只读存储器(EPROM)、电可擦除可编程只读存储器(EEPROM)和闪存设备、磁盘如内部硬盘和移动磁盘、磁光盘和CD-ROM和DVD-ROM盘。
采用传输媒体,通过通信网络1026可以进一步发送或接收指令1024。使用网络接口设备1020和任何一个公知的传输协议(例如,超文本传输协议(HTTP))可以传输指令1024。通信网络的例子包括局域网(LAN)、广域网(WAN)、互联网、移动电话网、普通老式电话业务(POTS)网络和无线数据网络(例如,无线局网(WiFi)和全球微波互联接入网络(WiMAX))。术语“传输媒体”应被理解为包括任何无形媒体,该媒体能够存储、编码或携带通过机器运行的指令,并包括便于这类软件通信的数字或模拟通信信号或其它无形媒体。
虽然已经描述了具体的示例实施例,但明显的是,可以对这些实施例进行各种修改和改变。因此,说明书和附图被认为是说明性的而不是限制性的。附图构成本文的一部分,以说明而非限定的方式,展示实践本主题的具体实施例。对实施例进行足够详细地描述,以使本领域的技术人员能够实施此处公开的教学。可以利用和推断出其他实施例,因而在不超出本发明范围的情况下,可以进行结构和逻辑的替换和改变。因此,该具体实施例不应被理解为是限制性的,且各种实施例的范围仅通过所附权力要求限定,连同这些权力要求赋予的等同形式的全部范围。
如果实际上公开了不止一个,本发明主题的这些实施例在本文中可以通过术语“发明”单独地和/或共同地提及,仅仅为了方便而不是想主动将本应用的范围限定为任何单个发明或发明概念。因此,虽然本文已经说明和描述了具体实施例,但是应当理解的是,实施以实现相同目的任何方案可以替代图示的具体实施例。本发明目的在于涵盖任何和所有的各种实施例的修改或变型。通过回顾上面的说明,上述实施例的组合,以及在此文中没有具体描述的其他实施例,对于本领域技术人员是显而易见的。

Claims (17)

1.一种眼睛跟踪校准的方法,包括:
在与眼睛跟踪装置通信的计算装置的显示器上显示对象,所述对象与眼睛参数的计算相关联,所述眼睛参数与所述计算装置的用户的视线信息的计算的校准有关,所述视线信息表示与所述用户正在观看的位置有关的信息;
当所述对象被显示时,接收来自所述眼睛跟踪装置的所述用户的至少一只眼睛的图像;
确定眼睛信息与所述用户相关联,所述眼睛信息基于所述图像,并与眼睛特征有关,所述眼睛特征与所述用户的所述至少一只眼睛相关联;
根据所述眼睛信息计算一个或多个所述眼睛参数和一个或多个几何参数,所述一个或多个几何参数表示与相对于所述眼睛跟踪装置的所述显示器相关联的信息;以及
通过使基于所计算的所述眼睛参数和几何参数而计算的成本函数最小化,更新所计算的所述眼睛参数和几何参数。
2.如权利要求1所述的方法,还包括:
在所述计算装置的所述显示器上显示第二对象;
当所述第二对象被显示时,接收来自所述眼睛跟踪装置的所述用户的所述至少一只眼睛的第二图像;
确定第二眼睛信息与所述用户相关联,所述第二眼睛信息基于所述第二图像,并与所述眼睛特征有关,所述眼睛特征与所述用户的所述至少一只眼睛相关联,
其中,所述一个或多个所述眼睛参数和所述一个或多个几何参数的计算还基于所述第二眼睛信息。
3.如权利要求1所述的方法,还包括:
在所述计算装置的所述显示器上显示第二对象;
当所述第二对象被显示时,接收来自所述眼睛跟踪装置的所述用户的所述至少一只眼睛的第二图像;
确定第二眼睛信息与所述用户相关联,所述第二眼睛信息基于所述第二图像、所述一个或多个眼睛参数以及所述一个或多个几何参数;以及
根据所述第二眼睛信息和所述第二对象在所述计算装置的所述显示器上的位置,调整一个或多个所述眼睛参数或所述几何参数。
4.如权利要求1至3中任一项权利要求所述的方法,还包括:
根据所述一个或多个眼睛参数、所述一个或多个几何参数、所述用户的所述眼睛信息以及所述对象在所述显示器上的位置,计算误差度量;
确定所述误差度量超过阈值;以及
以所述误差度量超过所述阈值为前提,
在所述计算装置的所述显示器上显示附加对象,所述附加对象与所述眼睛参数的所述计算相关联;
当所述附加对象被显示时,接收来自所述眼睛跟踪装置的所述用户的所述至少一只眼睛的附加图像;
确定附加眼睛信息与所述用户相关联,所述附加眼睛信息基于所述附加图像,并与所述眼睛特征有关,所述眼睛特征与所述用户的所述至少一只眼睛相关联;以及
根据所述附加眼睛信息,计算所述一个或多个所述眼睛参数和所述一个或多个几何参数。
5.如权利要求1所述的方法,其特征在于,所述成本函数的所述最小化使所估算的注视点与所述对象的显示器坐标之间的误差最小化。
6.如权利要求1所述的方法,其特征在于,所述成本函数的所述最小化使视轴组与所述对象的三维坐标之间的距离最小化。
7.一种存储指令的机器可读存储媒体,当由一个或多个处理器执行时,所述指令使所述一个或多个处理器执行操作,所述操作包括:
在与眼睛跟踪装置通信的计算装置的显示器上显示对象,所述对象与眼睛参数的计算相关联,所述眼睛参数与所述计算装置的用户的视线信息的计算的校准有关,所述视线信息表示与所述用户正在观看的位置有关的信息;
当所述对象被显示时,接收来自所述眼睛跟踪装置的所述用户的至少一只眼睛的图像;
确定眼睛信息与所述用户相关联,所述眼睛信息基于所述图像,并与眼睛特征有关,所述眼睛特征与所述用户的所述至少一只眼睛相关联;
根据所述眼睛信息计算一个或多个所述眼睛参数和一个或多个几何参数,所述一个或多个几何参数表示与相对于所述眼睛跟踪装置的所述显示器相关联的信息;以及
通过使基于所计算的所述眼睛参数和几何参数而计算的成本函数最小化,更新所计算的所述眼睛参数和几何参数。
8.如权利要求7所述的机器可读存储媒体,其特征在于,所述操作还包括:
在所述计算装置的所述显示器上显示第二对象;
当所述第二对象被显示时,接收来自所述眼睛跟踪装置的所述用户的所述至少一只眼睛的第二图像;
确定第二眼睛信息与所述用户相关联,所述第二眼睛信息基于所述第二图像,并与所述眼睛特征有关,所述眼睛特征与所述用户的所述至少一只眼睛相关联,
其中,所述一个或多个所述眼睛参数和所述一个或多个几何参数的计算还基于所述第二眼睛信息。
9.如权利要求7所述的机器可读存储媒体,其特征在于,所述操作还包括:
在所述计算装置的所述显示器上显示第二对象;
当所述第二对象被显示时,接收来自所述眼睛跟踪装置的所述用户的所述至少一只眼睛的第二图像;
确定第二眼睛信息与所述用户相关联,所述第二眼睛信息基于所述第二图像、所述一个或多个眼睛参数以及所述一个或多个几何参数;以及
根据所述第二眼睛信息和所述第二对象在所述计算装置的所述显示器上的位置,调整一个或多个所述眼睛参数或所述几何参数。
10.如权利要求7至9任一项权利要求所述的机器可读存储媒体,其特征在于,所述操作还包括:
根据所述一个或多个眼睛参数、所述一个或多个几何参数、所述用户的所述眼睛信息以及所述对象在所述显示器上的位置,计算误差度量;
确定所述误差度量超过阈值;以及
以所述误差度量超过所述阈值为前提,
在所述计算装置的所述显示器上显示附加对象,所述附加对象与所述眼睛参数的所述计算相关联;
当所述附加对象被显示时,接收来自所述眼睛跟踪装置的所述用户的所述至少一只眼睛的附加图像;
确定附加眼睛信息与所述用户相关联,所述附加眼睛信息基于所述附加图像,并与所述眼睛特征有关,所述眼睛特征与所述用户的所述至少一只眼睛相关联;以及
根据所述附加眼睛信息,计算所述一个或多个所述眼睛参数和所述一个或多个几何参数。
11.如权利要求7至9任一项权利要求所述的机器可读存储媒体,其特征在于,所述成本函数的所述最小化使所估算的注视点与所述对象的显示器坐标之间的误差最小化。
12.如权利要求7至9任一项权利要求所述的机器可读存储媒体,其特征在于,所述成本函数的所述最小化使视轴组与所述对象的三维坐标之间的距离最小化。
13.一种眼睛跟踪校准的装置,包括:
显示器;
硬件实现显示模块,被配置为:
在与眼睛跟踪装置通信的计算装置的显示器上显示对象,所述对象与眼睛参数的计算相关联,所述眼睛参数与所述计算装置的用户的视线信息的计算的校准有关,所述视线信息表示与所述用户正在观看的位置有关的信息;
硬件实现眼睛跟踪模块,被配置为:
当所述对象被显示时,接收来自所述眼睛跟踪装置的所述用户的至少一只眼睛的图像;
确定眼睛信息与所述用户相关联,所述眼睛信息基于所述图像,并与眼睛特征有关,所述眼睛特征与所述用户的所述至少一只眼睛相关联;
根据所述眼睛信息计算一个或多个所述眼睛参数和一个或多个几何参数,所述一个或多个几何参数表示与相对于所述眼睛跟踪装置的所述显示器相关联的信息;以及
通过使基于所计算的所述眼睛参数和几何参数而计算的成本函数最小化,更新所计算的所述眼睛参数和几何参数。
14.如权利要求13所述的装置,其特征在于,
所述硬件实现显示模块还被配置为:
在所述计算装置的所述显示器上显示第二对象,所述硬件实现眼睛跟踪模块还被配置为:
当所述第二对象被显示时,接收来自所述眼睛跟踪装置的所述用户的所述至少一只眼睛的第二图像;
确定第二眼睛信息与所述用户相关联,所述第二眼睛信息基于所述第二图像,并与所述眼睛特征有关,所述眼睛特征与所述用户的所述至少一只眼睛相关联,
其中,所述一个或多个所述眼睛参数和所述一个或多个几何参数的计算还基于所述第二眼睛信息。
15.如权利要求13所述的装置,其特征在于,
所述硬件实现显示模块还被配置为:
在所述计算装置的所述显示器上显示第二对象,
所述硬件实现眼睛跟踪模块还被配置为:
当所述第二对象被显示时,接收来自所述眼睛跟踪装置的所述用户的所述至少一只眼睛的第二图像;
确定第二眼睛信息与所述用户相关联,所述第二眼睛信息基于所述第二图像、所述一个或多个眼睛参数以及所述一个或多个几何参数;以及
根据所述第二眼睛信息和所述第二对象在所述计算装置的所述显示器上的位置,调整一个或多个所述眼睛参数或所述几何参数。
16.如权利要求13至15任一项权利要求所述的装置,其特征在于,
所述硬件实现显示模块还被配置为:
根据所述一个或多个眼睛参数、所述一个或多个几何参数、所述用户的所述眼睛信息以及所述对象在所述显示器上的位置,计算误差度量;
确定所述误差度量超过阈值;以及
以所述误差度量超过所述阈值为前提,
在所述计算装置的所述显示器上显示附加对象,所述附加对象与所述眼睛参数的所述计算相关联;
当所述附加对象被显示时,接收来自所述眼睛跟踪装置的所述用户的所述至少一只眼睛的附加图像;
确定附加眼睛信息与所述用户相关联,所述附加眼睛信息基于所述附加图像,并与所述眼睛特征有关,所述眼睛特征与所述用户的所述至少一只眼睛相关联;以及
根据所述附加眼睛信息,计算所述一个或多个所述眼睛参数和所述一个或多个几何参数。
17.如权利要求13至15任一项权利要求所述的装置,其特征在于,所述成本函数的所述最小化使所估算的注视点与所述对象的显示器坐标之间的误差最小化。
CN201580030330.8A 2014-04-11 2015-04-10 眼睛跟踪校准系统和方法 Active CN106662917B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201461978366P 2014-04-11 2014-04-11
US61/978,366 2014-04-11
PCT/EP2015/000755 WO2015154882A1 (en) 2014-04-11 2015-04-10 Systems and methods of eye tracking calibration

Publications (2)

Publication Number Publication Date
CN106662917A CN106662917A (zh) 2017-05-10
CN106662917B true CN106662917B (zh) 2020-06-12

Family

ID=52991684

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201580030330.8A Active CN106662917B (zh) 2014-04-11 2015-04-10 眼睛跟踪校准系统和方法

Country Status (4)

Country Link
US (1) US9785233B2 (zh)
EP (1) EP3129849B1 (zh)
CN (1) CN106662917B (zh)
WO (1) WO2015154882A1 (zh)

Families Citing this family (60)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2956844B1 (en) 2013-02-14 2017-05-24 Facebook, Inc. Systems and methods of eye tracking calibration
US9451162B2 (en) 2013-08-21 2016-09-20 Jaunt Inc. Camera array including camera modules
US11019258B2 (en) 2013-08-21 2021-05-25 Verizon Patent And Licensing Inc. Aggregating images and audio data to generate content
CN106662917B (zh) 2014-04-11 2020-06-12 脸谱科技有限责任公司 眼睛跟踪校准系统和方法
US9911454B2 (en) 2014-05-29 2018-03-06 Jaunt Inc. Camera array including camera modules
US9696801B2 (en) * 2014-06-26 2017-07-04 Thomas Alan Donaldson Eye-controlled user interface to control an electronic device
US11108971B2 (en) 2014-07-25 2021-08-31 Verzon Patent and Licensing Ine. Camera array removing lens distortion
US10440398B2 (en) * 2014-07-28 2019-10-08 Jaunt, Inc. Probabilistic model to compress images for three-dimensional video
US9774887B1 (en) * 2016-09-19 2017-09-26 Jaunt Inc. Behavioral directional encoding of three-dimensional video
US9363569B1 (en) 2014-07-28 2016-06-07 Jaunt Inc. Virtual reality system including social graph
US10701426B1 (en) 2014-07-28 2020-06-30 Verizon Patent And Licensing Inc. Virtual reality system including social graph
WO2016075532A1 (en) 2014-11-14 2016-05-19 The Eye Tribe Aps Dynamic eye tracking calibration
WO2016147499A1 (ja) * 2015-03-17 2016-09-22 ソニー株式会社 情報処理装置、情報処理方法及びプログラム
US10761601B2 (en) * 2015-03-23 2020-09-01 Controlrad Systems Inc. Eye tracking system including an eye tracker camera and a positioning camera
US10115205B2 (en) 2016-03-11 2018-10-30 Facebook Technologies, Llc Eye tracking system with single point calibration
CN108780223B (zh) * 2016-03-11 2019-12-20 脸谱科技有限责任公司 用于生成眼睛模型的角膜球跟踪
US10109067B2 (en) 2016-03-11 2018-10-23 Oculus Vr, Llc Corneal sphere tracking for generating an eye model
US10772561B2 (en) 2016-04-01 2020-09-15 Thomas Alan Donaldson Sensors to determine neuronal activity of an organism to facilitate a human-machine interface
US11032536B2 (en) 2016-09-19 2021-06-08 Verizon Patent And Licensing Inc. Generating a three-dimensional preview from a two-dimensional selectable icon of a three-dimensional reality video
US10681341B2 (en) 2016-09-19 2020-06-09 Verizon Patent And Licensing Inc. Using a sphere to reorient a location of a user in a three-dimensional virtual reality video
US11032535B2 (en) 2016-09-19 2021-06-08 Verizon Patent And Licensing Inc. Generating a three-dimensional preview of a three-dimensional video
US20180335839A1 (en) * 2017-05-22 2018-11-22 Htc Corporation Eye tracking method, electronic device, and non-transitory computer readable storage medium
US11573630B2 (en) * 2017-10-10 2023-02-07 Xiaochun Nie Systems and methods for calibrating an eye tracking system
CN108038884B (zh) * 2017-11-01 2020-12-11 北京七鑫易维信息技术有限公司 校准方法、装置、存储介质和处理器
US11194161B2 (en) 2018-02-09 2021-12-07 Pupil Labs Gmbh Devices, systems and methods for predicting gaze-related parameters
US11556741B2 (en) 2018-02-09 2023-01-17 Pupil Labs Gmbh Devices, systems and methods for predicting gaze-related parameters using a neural network
WO2019154510A1 (en) 2018-02-09 2019-08-15 Pupil Labs Gmbh Devices, systems and methods for predicting gaze-related parameters
US10558895B2 (en) * 2018-03-30 2020-02-11 Tobii Ab Deep learning for three dimensional (3D) gaze prediction
US10534982B2 (en) * 2018-03-30 2020-01-14 Tobii Ab Neural network training for three dimensional (3D) gaze prediction with calibration parameters
US10528131B2 (en) * 2018-05-16 2020-01-07 Tobii Ab Method to reliably detect correlations between gaze and stimuli
CN109044263A (zh) * 2018-07-13 2018-12-21 北京七鑫易维信息技术有限公司 眼睛视线的检测方法、装置、设备及存储介质
US10795435B2 (en) * 2018-07-19 2020-10-06 Samsung Electronics Co., Ltd. System and method for hybrid eye tracker
CN109284002B (zh) * 2018-08-29 2020-12-29 北京七鑫易维信息技术有限公司 一种用户距离估算方法、装置、设备及存储介质
US10627901B2 (en) * 2018-09-14 2020-04-21 Facebook Technologies, Llc Vergence determination
US10846876B2 (en) * 2018-11-02 2020-11-24 Yu-Sian Jiang Intended interest point detection method and system thereof
EP3656285B1 (en) * 2018-11-15 2023-04-19 Tobii AB Method and device for calibrating an eye tracker
TWI676821B (zh) * 2018-12-11 2019-11-11 國立臺灣大學 適應性視線追蹤的校正方法
ES2924701T3 (es) * 2018-12-11 2022-10-10 Tobii Ab Estimación de posición en pantalla
US10694167B1 (en) 2018-12-12 2020-06-23 Verizon Patent And Licensing Inc. Camera array including camera modules
EP3894995A2 (en) * 2018-12-14 2021-10-20 Apple Inc. Gaze-driven recording of video
CN112805670B (zh) * 2018-12-19 2024-02-09 徕卡生物系统成像股份有限公司 用于数字病理学的眼睛跟踪的图像查看器
US10996751B2 (en) * 2018-12-21 2021-05-04 Tobii Ab Training of a gaze tracking model
CN111513670B (zh) * 2018-12-21 2023-10-10 托比股份公司 用于眼睛追踪中的角膜半径的估计
US11537202B2 (en) 2019-01-16 2022-12-27 Pupil Labs Gmbh Methods for generating calibration data for head-wearable devices and eye tracking system
US20200252585A1 (en) * 2019-02-05 2020-08-06 Shijian Tech (Hangzhou) Ltd. Systems, Algorithms, and Designs for See-through Experiences With Wide-Angle Cameras
US10936057B2 (en) 2019-04-09 2021-03-02 Samsung Electronics Co., Ltd. System and method for natural three-dimensional calibration for robust eye tracking
EP3979896A1 (en) 2019-06-05 2022-04-13 Pupil Labs GmbH Devices, systems and methods for predicting gaze-related parameters
CN110377158B (zh) * 2019-07-22 2023-03-31 北京七鑫易维信息技术有限公司 基于变化视场范围的眼球追踪的校准方法及电子设备
US10788893B1 (en) * 2019-08-06 2020-09-29 Eyetech Digital Systems, Inc. Computer tablet augmented with internally integrated eye-tracking camera assembly
CN110458104B (zh) * 2019-08-12 2021-12-07 广州小鹏汽车科技有限公司 人眼视线检测系统的人眼视线方向确定方法和系统
CN110572632A (zh) * 2019-08-15 2019-12-13 中国人民解放军军事科学院国防科技创新研究院 一种基于视线跟踪的增强现实显示系统、头盔和方法
CN110780742B (zh) * 2019-10-31 2021-11-02 Oppo广东移动通信有限公司 眼球追踪处理方法及相关装置
CN111208905A (zh) * 2020-01-08 2020-05-29 北京未动科技有限公司 一种多模组视线追踪方法、系统和视线追踪设备
FI130748B1 (en) 2020-02-21 2024-02-26 Seetrue Tech Oy Gaze tracking
CN113534945A (zh) * 2020-04-17 2021-10-22 北京七鑫易维信息技术有限公司 眼球追踪校准系数的确定方法、装置、设备及存储介质
US20210350550A1 (en) * 2020-05-11 2021-11-11 Nvidia Corporation Gaze estimation using one or more neural networks
CN113052064B (zh) * 2021-03-23 2024-04-02 北京思图场景数据科技服务有限公司 基于面部朝向、面部表情及瞳孔追踪的注意力检测方法
SE545345C2 (en) * 2021-06-30 2023-07-11 Tobii Ab Method and system for alignment of data
SE546205C2 (en) * 2022-06-21 2024-07-02 Tobii Ab Method and system for determining a current gaze direction
CN116661587B (zh) * 2022-12-29 2024-04-12 荣耀终端有限公司 眼动数据处理方法及电子设备

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012021967A1 (en) * 2010-08-16 2012-02-23 Tandemlaunch Technologies Inc. System and method for analyzing three-dimensional (3d) media content
CN102662476A (zh) * 2012-04-20 2012-09-12 天津大学 一种视线估计方法

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE19953835C1 (de) * 1999-10-30 2001-05-23 Hertz Inst Heinrich Rechnerunterstütztes Verfahren zur berührungslosen, videobasierten Blickrichtungsbestimmung eines Anwenderauges für die augengeführte Mensch-Computer-Interaktion und Vorrichtung zur Durchführung des Verfahrens
US7963652B2 (en) * 2003-11-14 2011-06-21 Queen's University At Kingston Method and apparatus for calibration-free eye tracking
US7809160B2 (en) * 2003-11-14 2010-10-05 Queen's University At Kingston Method and apparatus for calibration-free eye tracking using multiple glints or surface reflections
US7577925B2 (en) 2005-04-08 2009-08-18 Microsoft Corporation Processing for distinguishing pen gestures and dynamic self-calibration of pen-based computing systems
US8793620B2 (en) * 2011-04-21 2014-07-29 Sony Computer Entertainment Inc. Gaze-assisted computer interface
US7986816B1 (en) 2006-09-27 2011-07-26 University Of Alaska Methods and systems for multiple factor authentication using gaze tracking and iris scanning
FR2935822B1 (fr) * 2008-09-05 2010-09-17 Commissariat Energie Atomique Procede de reconnaissance de formes et systeme mettant en oeuvre le procede
WO2010071928A1 (en) 2008-12-22 2010-07-01 Seeing Machines Limited Automatic calibration of a gaze direction algorithm from user behaviour
US8982160B2 (en) 2010-04-16 2015-03-17 Qualcomm, Incorporated Apparatus and methods for dynamically correlating virtual keyboard dimensions to user finger size
US8593375B2 (en) 2010-07-23 2013-11-26 Gregory A Maltz Eye gaze user interface and method
WO2012052061A1 (en) * 2010-10-22 2012-04-26 Institut für Rundfunktechnik GmbH Method and system for calibrating a gaze detector system
US8686943B1 (en) * 2011-05-13 2014-04-01 Imimtek, Inc. Two-dimensional method and system enabling three-dimensional user interaction with a device
US8885882B1 (en) * 2011-07-14 2014-11-11 The Research Foundation For The State University Of New York Real time eye tracking for human computer interaction
US20150084864A1 (en) 2012-01-09 2015-03-26 Google Inc. Input Method
US20140085198A1 (en) 2012-09-26 2014-03-27 Grinbath, Llc Correlating Pupil Position to Gaze Location Within a Scene
EP2956844B1 (en) 2013-02-14 2017-05-24 Facebook, Inc. Systems and methods of eye tracking calibration
CN103366381A (zh) * 2013-08-06 2013-10-23 山东大学 基于空间位置的视线跟踪校正方法
CN106662917B (zh) 2014-04-11 2020-06-12 脸谱科技有限责任公司 眼睛跟踪校准系统和方法
WO2016075532A1 (en) 2014-11-14 2016-05-19 The Eye Tribe Aps Dynamic eye tracking calibration

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012021967A1 (en) * 2010-08-16 2012-02-23 Tandemlaunch Technologies Inc. System and method for analyzing three-dimensional (3d) media content
CN102662476A (zh) * 2012-04-20 2012-09-12 天津大学 一种视线估计方法

Also Published As

Publication number Publication date
CN106662917A (zh) 2017-05-10
WO2015154882A1 (en) 2015-10-15
US20160011658A1 (en) 2016-01-14
EP3129849A1 (en) 2017-02-15
US9785233B2 (en) 2017-10-10
EP3129849B1 (en) 2020-02-12

Similar Documents

Publication Publication Date Title
CN106662917B (zh) 眼睛跟踪校准系统和方法
US9791927B2 (en) Systems and methods of eye tracking calibration
US9952666B2 (en) Systems and methods of eye tracking control on mobile device
US10013056B2 (en) Dynamic eye tracking calibration
US9836639B2 (en) Systems and methods of light modulation in eye tracking devices
US10156899B2 (en) Dynamic camera or light operation
US9829971B2 (en) Systems and methods of eye tracking control
US20160248971A1 (en) Illumination system synchronized with image sensor
US20140306882A1 (en) Systems and methods of eye tracking data analysis
CN108369744B (zh) 通过双目单应性映射的3d注视点检测
IL295191A (en) Method and system for determining gaze direction
CN117372475A (zh) 眼球追踪方法和电子设备

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
TA01 Transfer of patent application right

Effective date of registration: 20170510

Address after: California, USA

Applicant after: Facebook, Inc.

Address before: Copenhagen

Applicant before: Eyeball Control Technology Co.,Ltd.

TA01 Transfer of patent application right
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
TA01 Transfer of patent application right
TA01 Transfer of patent application right

Effective date of registration: 20190326

Address after: California, USA

Applicant after: Facebook Technologies, LLC

Address before: California, USA

Applicant before: Facebook, Inc.

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
CB03 Change of inventor or designer information

Inventor after: Benjamin Anthony Georgios Lefordks

Inventor after: Javier Saint Agustin Lopez

Inventor before: Benjamin Anthony Georgios Lefordks

Inventor before: Javier Sanagustin Lopez

CB03 Change of inventor or designer information