掌桥专利:专业的专利平台
掌桥专利
首页

眼睛跟踪设备及其方法

文献发布时间:2023-06-19 12:25:57


眼睛跟踪设备及其方法

技术领域

本发明涉及用于确定眼睛位置和/或观看方向的眼睛跟踪设备和方法。

背景技术

下面列出了被认为作为背景与目前公开的主题相关的参考文献:

1.美国专利申请号2013/120712;

2.国际专利申请号WO9418883;

3.美国专利申请号2014/180162;

4.美国专利申请号2001/035938。

5.Constable PA,Bach M,Frishman LJ,Jeffrey BG,Robson AG,InternationalSociety for Clinical Electrophysiology of Vision.ISCEV Standard for clinicalelectro-oculography(2017update).Doc Ophthalmol.2017;134(1):1-9。

6.McCamy,Michael&Collins,Niamh&Otero-Millan,Jorge&Al-Kalbani,Mohammed&Macknik,Stephen&Coakley,Davis&Troncoso,Xoana&Boyle,Gerard&Narayanan,Vinodh&R Wolf,Thomas&Martinez-Conde,Susana.(2013).Simultaneous recordings ofocular microtremor and microsaccades with a piezoelectric sensor and a video-oculography system.Peer J.1.e14.10.7717/peerj.14。

上述参考文献的承认在本文不应被推断为意指这些以任何方式与目前公开的主题的专利性相关。

背景

现有技术已知存在不同眼睛跟踪设备例如远程眼睛跟踪器或头戴式眼睛跟踪器以及不同的眼睛跟踪方法。第一台眼睛跟踪器被建造于19世纪末。它们很难建造,并给参与者带来不适。专门设计的环状物、接触镜和吸盘附着到眼睛以帮助眼睛运动测量。检查从眼睛的不同部位反射的光的第一台基于摄影的眼睛跟踪器在20世纪初才被引入。它们的侵入性小得多,并开创了眼睛研究的新时代。在20世纪的大部分时间里,研究人员建造了他们自己的眼睛跟踪器,其是昂贵的且具有有限的可用性。第一批市场上可买到的眼睛跟踪器在70年代才出现。从大约50年代开始,由研究人员开发的许多不同的技术今天仍然在使用,例如具有反射镜的接触镜(更精确地,吸盘)、具有线圈的接触镜、眼电描记术(EOG)[5]和压电传感器[6]。然而,这些方法只能够具有有角度的眼睛运动,并且由于它们的性质而不能测量任何横向眼睛移动(反射镜、线圈和EOG只可以测量角度)。此外,这些系统是固定的,且需要用户的头部稳定,因此使它们变得不适合研究在更自然的环境中的眼睛运动。

20世纪的第二部分被小得多的侵入性照明和基于光传感器的方法占主要地位。这种方法的主要限制是,由于提取眼睛运动数据所需的曝光和处理能力,相机相对较慢。位置感测光电探测器(PSD)或基于四芯导线的方法在20世纪中期被发展。双Purkinje成像眼睛跟踪器系统在70年代被发展,且今天仍然在使用中。然而,双Purkinje成像眼睛跟踪器系统是非常昂贵的、固定的、重的无相机(基于PSD的)系统,具有相对低的记录角度。从80年代开始,由于在相机传感器和计算机技术中的改进,眼睛跟踪市场被所谓的视频眼图(VOG)系统占主要地位。VOG系统通常捕获用户的眼睛的图像,并基于所捕获的图像来确定眼睛的某些特征。这些系统是非侵入性的,并且通常依赖于不对用户造成干扰或不适的眼睛的红外照明。它们中的一些依赖于可穿戴的小轻型相机,但更精确的系统是固定的,像上面提到的大多数系统一样。由于良好的照明(但低于安全水平)是需要的并且考虑到相机传感器的曝光要求,这些系统的帧速率是有限的。

组合的瞳孔/角膜反射(第一Purkinje)眼睛跟踪器方法(不仅固定高端而且可穿戴低端)用多个红外光二极管照亮眼睛,并用一个或更多个(通常为了提高帧速率)相机对眼睛的表面成像,分割瞳孔(作为眼睛的最暗部分)和二极管的第一Purkinje图像。瞳孔位置相对于IR二极管的第一Purkinje图像的变化指示眼睛的运动。用户校准必须用于计算真实角度。通常,用户需要聚焦到某个目标上,在已知的路径上移动以校准系统。

这种方法的精度和准确度相对低,因为瞳孔位置被角膜扭曲,瞳孔扩张进一步降低测量精度,并且来自角膜的环境反射使图像处理算法混乱。不同的眼睛颜色、长眼睫毛和接触镜都是额外的因素,进一步使图像处理系统复杂。因此,通常这些系统是有噪声的,并且为角度运动提供小于1度的精度,而没有关于横向眼睛运动的信息。此外,在系统相对于头部移动之后,重新校准是需要的。存在许多其他不太常见的方法,例如使视网膜成像、亮瞳法以及甚至用MRI机器检查眼睛运动。这些方法具有其局限性,并且不是很常见。通常关于眼睛跟踪器和眼睛跟踪方法,始终继续存在对提高准确度、精度、低时延和紧凑尺寸的需要。此外,当眼睛跟踪器变得更多地集成在许多设备例如计算机、汽车、虚拟现实眼镜等中时,还存在对提供非常紧凑的眼睛跟踪设备(提供很大的灵活性)的需要。

眼睛跟踪系统可以尤其跟踪角膜缘(在巩膜和虹膜区域之间的边界)或瞳孔-虹膜边界,以测量相对眼睛旋转。应注意,角膜缘不被角膜的屈光力(optical power)影响,且因此跟踪角膜缘提供了准确的结果。此外,角膜缘创建直平面。角膜缘定义在虹膜的肌肉之间的连接的区域,且因此在角膜缘的三维参数和眼睛的三维参数之间存在直接相关性。不幸的是,角膜缘更是在角膜和巩膜之间的过渡区,而不是尖锐的边界。现有的角膜缘跟踪器并不是成功的,因为角膜缘对于依赖于所谓的特征点或边缘检测的任何技术是差的候选者。因此,看起来由于旋转而变形的不清晰的边缘和形状导致在从噪声提取信号方面的困难。作为结果,依赖于角膜缘的边缘检测或边缘特征点的检测的技术可能缺乏期望准确度和精度。虽然使用具有沿着虹膜/巩膜界面的边缘精确地布置的准确地对准的光电探测器的已知的“针尖式”角膜缘跟踪器,足够的跟踪响应也可以是可能的,但是提供和/或保持这样的对准增加了额外的系统部件和复杂性,特别是在不同患者之间的眼睛几何结构的可变性方面。用于跟踪角膜缘的一些技术依赖于一组两象限探测器作为位置感测光电探测器(PSD)。被角膜缘包围的虹膜比巩膜暗的简单事实允许建造由检查虹膜/巩膜区域的边界(即角膜缘)的一个或更多个四芯导线组成的系统。当眼睛移动时,虹膜的图像也移动通过PSD,因此允许估计引起此的眼睛运动。尽管事实上它允许使角膜区域上的激光稳定,但是它不提供眼睛往哪儿看的直接指示,并且需要用户校准来获得该数据。此外,在眼睛手术期间可以控制的许多因素例如眼睑运动、眼睫毛和甚至最小的照明变化都会影响这种方法的精度,且使它变得不适合于眼睛研究。基于PSD的角膜缘跟踪器测量光斑位置的质心。这是因为在白色巩膜和较暗的虹膜之间存在对比。如果眼睛相对于系统移动,则在PSD上的光斑也相应地移动。这样的系统仅仅控制虹膜的图像位于PSD上的相同光斑上,但是不测量,并且不能够估计实际眼睛位置。

概述

眼睛跟踪指跟踪眼睛的运动并确定用户正在看哪里的过程。上面所述的不同技术大致估计眼睛运动的规模,并可以指示运动已经出现。然而,它们不测量眼睛运动的六个自由度。此外,这些系统不跟踪眼睛的视觉特征。与跟踪眼睛的视觉特征相关的问题之一是眼睛的最明显的特征位于虹膜上。瞳孔和虹膜都被角膜晶状体强烈地扭曲。这个晶体的形状因人而异,因此它带来理解这些特征确切地位于哪里的挑战。散光(角膜不对称性)进一步使这个问题复杂。角膜缘(即,在白色巩膜和较暗虹膜之间的边界)不被角膜扭曲,但它看起来非常均匀,稍微模糊,并且没有经典图像处理算法所寻求的任何突出特征。因此,在本领域中存在对提供基于角膜缘跟踪的眼睛跟踪的技术的需要。发明人已经发现,可以通过对所识别的稳定区域进行三角测量来提供角膜缘眼睛跟踪,所述稳定区域是真实的,即直接对应于一些直接可见的解剖或虚拟特征,即所计算的特征。

根据本发明的广泛方面,提供了一种眼睛跟踪方法,其包括接收指示用户的眼睛的至少两个图像的图像数据,在每个图像中识别与眼睛角膜缘相关的区域;确定角膜缘结构的几何表示,以及通过对至少两个图像的角膜缘结构的几何表示的三角测量来确定用户的眼睛的三维位置和凝视方向(即,眼睛的全部六个自由度)。因为角膜缘相对于角膜的晶状体保持固定关系和闭圆度,所以用户的眼睛的三维位置和凝视方向可以通过对至少两个图像的角膜缘结构的几何表示(即,二维眼睛角膜缘参数)的三角测量来获得。识别并匹配至少两个图像中的形状。可以使用三角测量来确定到匹配区域的三维距离。通常在这个领域中使用的核面几何技术应用于匹配相应的区域,并且可选地确定三维眼睛角膜缘参数。基于三维角膜缘参数来确定用户的眼睛的三维位置和凝视方向。

在这方面,应该理解,通常立体视觉算法依赖于匹配在两个图像之间的对应点或边缘。有两种基本类别的方法:基于强度的技术,其中在每条线的强度值中的信息在每个像素处被匹配,强度的差异被最小化;以及基于特征的技术,其中使用一组像素值及其空间分布来提取信息。常用的特征是简单的特征,例如边缘和角点检测器(Canny、Harris、LoG滤波器)。通常,依赖于上面提到的特征的眼睛跟踪系统遭受几个缺点,例如作为在角膜上的寄生反射的结果由多个光电探测器中的每一个产生的不同噪声以及作为角膜晶状体的曲率的结果的虹膜和瞳孔特征的扭曲。因此,以基于特征的技术为基础的眼睛跟踪不提供足够准确的结果。此外,基于匹配角膜反射与眼睛特征的方法需要用户校准。关于角膜缘跟踪,如上所述,角膜缘没有清晰的特征,且因此经典方法不提供三维眼睛角膜缘参数。应该注意,本发明的技术不需要眼睛跟踪设备的用户校准,并且以在大约1/6度到1/60度的范围内的准确度和精度提供准确的眼睛跟踪。

在一些实施例中,该方法包括在不同角度下捕获用户的眼睛的至少两个图像。

在一些实施例中,确定角膜缘结构的几何表示包括数字图像预处理。数字图像预处理包括基于瞳孔方向来计算角膜缘的图像强度梯度图,在每个图像中识别角膜缘结构的至少一个区域(其中梯度的局部方向实质上是一致的),通过对这样的区域的像素加权来处理指示角膜缘结构的数据,并基于与眼睛角膜缘相关的匹配像素生成角膜缘结构的几何表示。

在一些实施例中,该方法包括确定三维角膜缘参数,其包括角膜缘的中心的三个坐标和角膜缘平面的法线方向、角膜缘的平面的位置和角膜缘的大小中的至少一个。确定用户的眼睛的三维位置和凝视方向可以基于三维角膜缘参数。

在一些实施例中,该方法还包括确定角膜缘的半径和/或角膜缘的扭转旋转。

在一些实施例中,该方法还包括通过使用迭代像素过滤过程并生成指示初始角膜缘区域的数据来识别指示每个图像中的初始角膜缘区域的图像数据。

在一些实施例中,在每个图像中识别指示初始角膜缘区域的图像数据包括下列操作中的至少一个:识别指示眼睛特征例如瞳孔、眼睑、巩膜、虹膜和眼睫毛的图像数据以及基于解剖参数来识别初始角膜缘区域。可以通过使用机器学习来执行识别指示眼睛特征的图像数据。

在一些实施例中,识别指示眼睛特征的图像数据包括分割每个图像用于识别与瞳孔区域相关的像素。

在一些实施例中,该方法还包括在至少两个瞳孔几何表示之间执行三角测量以确定三维瞳孔参数,基于三维瞳孔参数来估计初始眼睛角膜缘区域的位置,以及生成指示在每个图像中的角膜缘的初始区域位置的数据。三维瞳孔参数包括在每个图像中的瞳孔平面的法线的方向、瞳孔的中心的坐标和瞳孔直径中的至少一个。

在一些实施例中,该方法还包括处理用三角测量法测定的三维角膜缘,将用三角测量法测定的角膜缘区域重新投影回到图像平面,以及在每个图像处细化角膜缘区域。

根据本发明的另一个广泛方面,提供了一种包括处理单元的眼睛跟踪设备,该处理单元被配置为并可操作来接收指示用户的眼睛的至少两个图像,在每个图像中识别与眼睛角膜缘相关的区域;确定角膜缘结构的几何表示,以及通过对至少两个图像的角膜缘结构的几何表示的三角测量来确定用户的眼睛的三维位置和凝视方向。处理单元被配置为并可操作来基于三维角膜缘参数来确定用户的眼睛的三维位置和凝视方向。本发明的眼睛跟踪设备可以是头戴式眼睛跟踪设备,如眼睛跟踪眼镜设备或者集成在头盔中或者也集成在头戴式显示设备中、在虚拟现实眼镜中、在增强现实眼镜或其他头戴式设备中的眼睛跟踪器。眼睛跟踪设备也可以是可选地与其他设备例如计算机、显示器、监视器等集成或耦合的远程眼睛跟踪器。

在一些实施例中,眼睛跟踪设备还包括至少两个成像器,每个成像器被配置为在不同的角度下捕获用户的眼睛的至少一个图像。

成像器可以是捕获单元,并且可以包括一个或更多个相机(即,数字相机或摄像机)、光传感器如图像传感器,例如CCD传感器或CMOS传感器。一个成像器可以被使用,并以已知的速度在已知的轨迹上快速移动。可选地,也可以使用具有某种类型的反射镜的光学图像。在一些实施例中,本发明使用立体成像器来使用具有精确地已知的相对偏移的两个或更多个成像器。两个或更多个成像器可以同时或者以已知的时间延迟(例如在交错模式中)拍摄图像。

通常,处理单元可以是处理器、控制器、微控制器或任何种类的集成电路。眼睛跟踪设备可以与光学系统相关联,该光学系统可以包括任何光学元件,例如一个或更多个透镜、棱镜、分束器、反射镜、反射器、光导、准直器等。眼睛跟踪设备还与被配置成产生尽可能多的分散照明的照明源、优选地不在眼睛表面上产生任何图案或使图案的数量最小化的照明源相关联。眼睛跟踪设备包括与至少两个成像器中的每一个进行数据通信以接收至少两个图像的处理单元。

本发明的新技术使用眼睛的两个或更多个所捕获的图像,并且通过迭代像素过滤过程在每个所捕获的图像中检测三维眼睛角膜缘参数,因而通过从图像获得的眼睛角膜缘二维参数的三角测量来确定眼球的定向。该新技术基于在图像数据中的用户眼睛中的角膜缘的识别来确定眼睛定向。两个或更多个成像器可以用于捕获用户的眼睛的相应的两个或更多个图像。每个成像器被配置成从不同的角度捕获用户的眼睛的图像。每个成像器对用户的虹膜以及邻近和周围区域(包括瞳孔、巩膜、眼睑等)成像。对于角膜缘区域的三角测量,优选地在时间上接近地(例如同时)从两个或更多个不同的角度捕获眼睛的多个图像。

在一些实施例中,处理单元包括区域检测器,该区域检测器被配置为接收指示用户的眼睛的至少两个图像中的每个图像,并且通过使用迭代像素过滤过程并且生成指示初始角膜缘区域的数据来在每个图像中识别指示初始角膜缘区域、即一些优选地初始未扭曲(即,未被眼睛光学器件本身例如角膜扭曲)的区域/区(即,真实或虚拟计算区域)或者具有对应于眼睛的相同物理区域的已知扭曲的区域的图像数据。发明人已经发现,这些识别出的稳定区域可以用于三角测量计算。本发明允许生成对应于眼睛的相同物理区域的这样的稳定区域,并在立体图像上识别它们。区域检测器被配置为通过下列操作中的至少一个来识别指示初始角膜缘区域的图像数据:识别指示眼睛特征例如瞳孔、眼睑、巩膜、虹膜和眼睫毛的图像数据以及基于解剖参数来识别初始角膜缘区域。可以通过在每个图像上投影眼睛特征(例如瞳孔)的几何表示来识别这些区域,然后在不同角度下拍摄在图像之间匹配的区域。图像上的这样的区域的尺寸越大,相应物理区域的位置就越精确地用三角测量法被测定,且因此眼睛本身的位置越精确。区域检测器通过使用能够执行三角测量的迭代像素过滤过程来生成定义眼睛上的二维虚拟对象的函数。这种三角测量定义对应于凝视方向的角膜缘方向。角膜缘参数被定义为数学方程,其中变量(x、y、z、α、β和δ)表示刚性主体在三维空间中的六个运动自由度。特别地,x、y、z将位置中的变化定义为在三个垂直轴上的向前/向后(波动)、向上/向下(起伏)、向左/向右(摇摆)平移,结合通过围绕三个垂直轴的旋转的定向中的变化,偏航(法向轴)、俯仰(横轴)和横滚(纵轴)。

在这方面,应该理解,三维角膜缘参数的确定能够定位这样的未扭曲的区域或者对应于眼睛的相同物理区域的具有已知扭曲的区域,因为角膜缘的尺寸很大,并且实际上不被角膜扭曲。然而,如上面所提到的,角膜缘本身具有看起来稍微模糊并且未被很好地限定的边界,它在每个图像上看起来不同,并且它没有可以用作这样的匹配的锚点的可区分的特征。因此,在两个或更多个不同的图像上匹配角膜缘区域本身带来挑战。发明人已经发现,不是试图匹配角膜缘区域本身的特征,数字图像预处理可以被执行以允许基于确实很好地对应于眼睛的相同物理区域的每个图像的角膜缘三维参数来计算一些虚拟区域。数字图像预处理包括复杂算法例如分类、特征提取、多尺度信号分析、模式识别或投影数学变换的使用。虚拟区域应该对应于眼睛的相同物理区域,而不依赖于图像被拍摄的角度。区域检测器因此被配置为和可操作来识别指示在每个图像中的角膜缘区域的图像数据,并生成指示角膜缘区域的数据。这可以通过借助于使用在对应于某些眼睛特征的所识别的虚拟区域和角膜缘之间的解剖关系估计角膜缘区域来实现。例如,瞳孔的位置和中心可以通过对在两个图像之间的瞳孔区域(即,具有所定义的圆形对比度的区域)的三角测量来计算,且然后角膜缘区域可以被定义为围绕瞳孔的中心的具有某个半径范围(例如,大约5.5mm至6.5mm)的圆形区域。半径范围可以基于定义在角膜缘和瞳孔的中心之间的距离的高斯分布的统计数据。

在一些实施例中,模式识别工具用于在每个图像中识别瞳孔的像素和眼睑的像素。由于在图像中的某个对比度,可以识别瞳孔的图像像素。对应于瞳孔的识别出的图像区域被丢弃,并且眼睑的图像区域可以用于确定校准数据(例如,每个成像器的距离/角度、瞳孔/角膜缘中心和大致方向)。更特别地,与在眼睑和所估计的角膜缘区域之间的可能交叉相关的数据图像被丢弃,因此进一步减少了潜在角膜缘像素的数量。然后基于校准数据和眼睛的三维模型来识别二维眼睛角膜缘参数。然后,迭代过滤过程用于在两个或更多个所捕获的图像中的每一个中丢弃位于角膜缘的边界处的像素。角膜缘结构的几何表示包括环形或椭圆形结构。当假设角膜缘是圆形的时,从每个图像获得的角膜缘二维参数然后用于为每个图像定义完整的角膜缘环/椭圆结构函数(在丢弃隐藏角膜缘区域的眼睑区域之后被重建),并且眼睛定向通过从每个图像获得的所定义的角膜缘环/椭圆结构的三角测量来被确定。过滤掉对应于某些眼睛特征的图像数据能够丢弃某些像素,并提高分辨率。如果该技术没有成功地确定眼睛定向,则过程再次重复,同时角膜缘区域被增加以潜在地容纳角膜缘相关像素。

在一些实施例中,该方法包括以下步骤:首先,隔离角膜缘区域,然后执行数学变换,例如在图像中的每个上找到角膜缘结构的几何表示(例如,通过投影贯穿(go through)角膜缘环的中间的一组椭圆函数),以及在与物理眼睛强烈对准的六个自由度(6DOF)中对相应的圆进行三角测量。

在一些实施例中,处理单元包括角膜缘检测器,该角膜缘检测器被配置为并可操作来接收指示角膜缘区域的数据,并通过数字图像预处理来确定角膜缘结构的几何表示,例如对每个图像执行角膜缘识别过程和/或执行数学变换,包括使用强度梯度图。更特别地,数字图像预处理可以包括计算角膜缘区域的图像强度梯度图,识别角膜缘结构的至少一个区域(其中梯度的局部方向实质上是一致的),通过使这些区域的像素加权并基于与眼睛角膜缘相关的匹配像素确定角膜缘结构的几何表示来处理指示角膜缘结构的数据。

更特别地,在已经估计了角膜缘区域之后,环形区域在所估计的角膜缘区域处被投影到眼睛表面上。然后基于正常眼睛的所估计的解剖属性和可选地所计算的三维瞳孔位置来丢弃图像的大部分像素,如瞳孔、大部分虹膜、大部分巩膜和大部分眼睑,仅留下在潜在角膜缘位置周围的环。然而,由于瞳孔图像的角膜扭曲,额外的估计误差是可能的。这个扭曲导致角膜缘区域的初始估计的增加。

在一些实施例中,区域检测器被配置为通过使用机器学习来识别指示眼睛特征的图像数据。迭代像素过滤过程用于训练神经网络以识别在每个所获取的图像中的角膜缘区域。区域检测器可以被配置为和可操作来通过分割每个图像用于识别与瞳孔区域相关的像素来识别指示眼睛特征的图像数据。因此,神经网络可以用于直接分割近似的角膜缘区域。更特别地,为了估计角膜缘区域,可以跟踪瞳孔。此外或可选地,神经网络也可以用于直接估计其他眼睛特征(例如眼睑和巩膜)的位置,而不经历瞳孔跟踪。神经网络可以被应用在图像本身上或者在数学地变换的图像、即梯度图上。可以例如基于其他眼睛跟踪技术(其中眼睛特征特性以前被定义)的结果对传统的机器学习算法训练神经网络。

在一些实施例中,处理单元被配置为并可操作来确定角膜缘的大小。

在一些实施例中,识别出的眼睑区域的像素用三角测量法被测定,以改善眼睛的位置的估计。

在一些实施例中,眼睛跟踪设备还包括角膜缘三角测量仪,其被配置为和可操作来对于每个图像接收指示角膜缘结构的几何表示的数据,并且执行至少两个图像的几何表示的三角测量以确定三维角膜缘参数。三维角膜缘参数包括角膜缘的中心的三个坐标和角膜缘平面的法线的方向、角膜缘的平面的位置和角膜缘的大小中的至少一个。角膜缘三角测量仪可以被配置为和可操作来确定角膜缘的半径和/或角膜缘的扭转旋转。

在一些实施例中,角膜缘三角测量仪被配置为在至少两个瞳孔几何表示之间执行三角测量以确定三维瞳孔参数,三维瞳孔参数包括瞳孔平面的法线的方向、瞳孔的中心的坐标和瞳孔直径中的至少一个;基于三维瞳孔参数来估计初始眼睛角膜缘区域的位置;并生成指示在每个图像中的角膜缘的初始区域位置的数据。

在一些实施例中,角膜缘三角测量仪被配置为处理用三角测量法测定的三维角膜缘,将用三角测量法测定的角膜缘区域重新投影回到图像平面,并在每个图像处细化角膜缘区域。

附图简述

为了更好地理解本文中所公开的主题并且举例说明如何可以在实践中执行该主题,现在将参考附图仅通过非限制性示例的方式来描述实施例,在附图中:

图1是表示本发明的眼睛跟踪设备的主要功能部分的示意性框图;

图2是表示本发明的眼睛跟踪方法的主要步骤的示意性流程图;

图3示出了在不同角度下捕获的眼睛的两个立体图像;

图4A-图4D是根据本发明的一些实施例的瞳孔检测阶段的例子;

图5是根据本发明的一些实施例的在图3的图像上例示的眼睛特征检测阶段的例子;

图6是根据本发明的一些实施例的在图3的图像上例示的角膜缘圆的投影的例子;

图7是例示根据本发明的一些实施例的眼睛跟踪设备的可能的功能部分的示意性框图;

图8表示通过使用本发明的教导获得的二维眼睛跟踪轨迹;

图9表示作为时间的函数的在方位角和节距方面的眼睛跟踪定向轨迹的两个角度自由度(即角度测量);以及

图10A-图10B表示通过使用本发明的教导获得的眼睛跟踪轨迹的五个自由度。

实施例的详细描述

参考图1,其例示说明本发明的眼睛跟踪设备的主要功能部分的框图。眼睛跟踪设备100包括处理单元106,其被配置为和可操作来接收指示用户的眼睛的至少两个图像,在每个图像中识别与眼睛角膜缘相关的区域,确定角膜缘结构的几何表示,以及通过至少两个图像的角膜缘结构的几何表示的三角测量来确定用户的眼睛的三维位置和凝视方向。在这方面,应该注意,如上面所详述的,本发明对形状(几何表示)而不是单独的相应点或边缘进行三角测量。

处理单元106通常被配置为计算/电子实用工具,其尤其包括实用工具例如数据输入和输出模块/实用工具106A和106B、存储器106D(即非易失性计算机可读介质)和分析器/数据处理实用工具106C。因此,处理单元106的实用工具可以由合适的电路和/或由软件和/或硬件部件实现,软件和/或硬件部件包括被配置为实现图2中示出并在下面描述的方法200的操作的计算机可读代码。

本发明的特征可以包括通用或专用计算机系统,该通用或专用计算机系统包括下面被更详细讨论的各种计算机硬件部件。在本发明的范围内的特征还包括计算机可读介质,其用于执行或具有存储在其上的计算机可执行指令、计算机可读指令或数据结构。这样的计算机可读介质可以是由通用或专用计算机系统可访问的任何可用介质。作为例子而非限制,这样的计算机可读介质可以包括物理存储介质,例如RAM、ROM、EPROM、闪存盘、CD-ROM或其他光盘存储、磁盘存储或其他磁存储设备或可以用于以计算机可执行指令、计算机可读指令或数据结构的形式携带或存储期望程序代码方式并且可以由通用或专用计算机系统可访问的任何其他介质。计算机可读介质可以包括通过网络例如是广域网(WAN)、例如因特网可下载到计算机系统的计算机程序或计算机应用。

在本说明书中和在接下来的权利要求中,“处理单元”被定义为一起工作以对电子数据执行操作的一个或更多个软件模块、一个或更多个硬件模块或其组合。例如,处理实用工具的定义包括个人计算机的硬件部件以及软件模块,例如个人计算机的操作系统。模块的物理布局并不是相关的。计算机系统可以包括经由计算机网络耦合的一个或更多个计算机。同样,计算机系统可以包括单个物理设备,其中内部模块(例如存储器和处理器)一起工作以对电子数据执行操作。虽然任何计算机系统可以是移动的,但是如本文使用的术语“移动计算机系统”或术语“移动计算机设备”尤其包括膝上型计算机、上网本计算机、蜂窝电话、智能手机、无线电话、个人数字助理、具有触敏屏幕的便携式计算机和诸如此类。处理单元106可以由嵌在其中的运行计算机程序的或者附接到其的处理器组成。计算机程序产品可以被体现在一个或更多个计算机可读介质中,计算机可读介质具有在其上体现的计算机可读程序代码。计算机可读介质可以是计算机可读信号介质或计算机可读存储介质。用于执行本发明的方面的操作的计算机程序代码可以用一种或更多种编程语言的任何组合来编写。程序代码可完全在用户的计算机上、部分地在用户的计算机上、作为独立软件包、部分地在用户的计算机上并且部分地在远程计算机上、或者完全在远程计算机上或服务器上被执行。在后者的方案中,远程计算机可通过任何类型的网络连接到用户的计算机,包括局域网(LAN)或广域网(WAN),或者可连接到外部计算机(例如,通过使用互联网服务提供商的互联网)。这些计算机程序指令可被提供到通用计算机的、专用计算机的处理器或其他可编程数据处理装置以产生机器,使得经由计算机的处理器或其他可编程数据处理装置执行的指令创建用于实现在流程图和/或框图的一个或更多个块中指定的功能/行动的装置(means)。处理器的指定功能可以由执行指定功能或行动的基于专用硬件的系统或者专用硬件和计算机指令的组合来实现。

眼睛跟踪设备100可以包括至少两个成像器110,每个成像器被配置为在不同的角度下捕获用户的眼睛的至少一个图像。每个成像器可以聚焦在用户的虹膜上。在这方面,应该注意,本发明的角膜缘跟踪针对每只眼睛被独立地执行。

在一些实施例中,处理单元106包括角膜缘检测器102,其被配置为和可操作来接收指示角膜缘区域的数据,并通过数字图像预处理来确定角膜缘结构(例如环形或椭圆形结构)的几何表示。在特定且非限制性的例子中,角膜缘检测器102被配置为并可操作来对每个图像执行角膜缘识别过程,和/或执行图像的数学变换,包括使用强度梯度图以及然后对变换后的图像运行角膜缘区域识别过程。换句话说,角膜缘检测器102可以将图像变换成强度梯度图,然后角膜缘区域在变换后的图像上被搜索。代替梯度图或者除了梯度图之外,熵图也可以被使用,或者处理可以直接在图像上被执行。如果强度梯度图被使用,则角膜缘检测器102可以计算角膜缘区域的图像强度梯度图,识别角膜缘结构的至少一个区域(其中梯度的局部方向实质上是一致的),通过对这样的区域的像素加权来处理指示角膜缘结构的数据,并基于与眼睛角膜缘相关的匹配像素确定角膜缘结构的几何表示。除了共线性之外,还可以使用角膜缘的解剖形式的知识,即共线向量应该从角膜缘的中心径向地延伸,并且整个角膜缘区域是连续的。更特别地,通过识别局部一致性来确定角膜缘结构的区域,即每个点的梯度方向仅与它的邻近点共线。

处理单元106的每个模块例如角膜缘检测器102不限于特定数量的模块,并且可以被配置为独立地、同时地或不这样处理多个图像。角膜缘三角测量仪108被配置为和可操作来执行在至少两个图像中的角膜缘结构的几何表示的三角测量以确定三维角膜缘参数。角膜缘三角测量仪108也可以被配置为和可操作来确定角膜缘的半径和/或角膜缘的扭转旋转。三维角膜缘参数定义角膜缘的位置和方向的至少五个自由度。三维角膜缘参数包括角膜缘的平面的位置和/或角膜缘平面的法线的方向和/或角膜缘的大小和/或角膜缘的中心或其任一组合。

在一些实施例中,处理单元106包括区域检测器104,该区域检测器被配置为和可操作来接收指示每个用户的眼睛的至少两个图像中的每个图像,并且通过使用迭代像素过滤过程并生成指示初始角膜缘区域的数据来识别指示每个图像中的初始角膜缘区域的图像数据。这可以通过识别指示眼睛特征例如瞳孔、眼睑、巩膜、虹膜和眼睫毛的图像数据和/或基于解剖参数识别初始角膜缘区域来实现。更特别地,识别初始角膜缘区域可以包括基于解剖和/或眼睑区域估计和/或没有眼睑区域的角膜缘区域估计的瞳孔分割和瞳孔的三角测量和/或角膜缘区域估计。这可以通过角膜缘三角测量仪108或任何其他处理模块来实现。然而,本发明不限于处理单元106的任何特定模块配置。处理单元106可以包括瞳孔检测器、瞳孔三角测量仪和其他模块。例如,对指示眼睛特征的图像数据的识别可以包括瞳孔分割。因此,区域检测器104可以是旨在提供初始角膜缘环的瞳孔检测器。假设这两个区域——瞳孔和角膜缘——是共中心的且在同一个平面中。瞳孔分割可以通过分割每个图像用于识别与瞳孔区域相关的像素、在至少两个图像之间执行三角测量以确定三维瞳孔参数、基于三维瞳孔参数估计初始眼睛角膜缘区域的位置、以及生成指示在每个图像中的角膜缘的初始区域位置的数据来实现。三维瞳孔参数包括瞳孔平面的法线的方向和/或瞳孔的中心的坐标和/或瞳孔直径。三维瞳孔参数用于估计三维角膜缘参数,因而定义可以进一步被细化的初始角膜缘区域。对指示眼睛特征的图像数据的识别还可以包括眼睑的识别和过滤掉该图像数据,因为与眼睑相关的图像数据阻挡了角膜缘环的一部分。本发明不限于识别指示初始角膜缘的图像数据的特定方式。基于神经网络的方法可用于识别指示初始角膜缘的图像数据。例如,角膜缘区域估计可以用神经网络来执行,但是瞳孔检测器可以用于用经典算法来估计眼睑区域。可选地,角膜缘区域估计和眼睑区域估计可以用基于神经网络的方法来执行。可选地,神经网络可以仅用于瞳孔分割。

在一些实施例中,区域检测器104被配置为通过使用机器学习来识别指示眼睛特征的图像数据。机器学习能够自分类/学习与眼睛特征相关的输入数据的特性。区域检测器104可以使用基于神经网络的数据识别模型来预测三维眼睛角膜缘参数。可以基于经典方法的分割结果或者通过使用用于训练的现有系统来训练该网络。此外或可选地,由本发明的眼睛跟踪设备获得的三维眼睛角膜缘参数可以用于训练神经网络。由区域检测器104实现的深度学习网络(DLN)例如人工神经网络(ANN)可以基于一系列图像来生成角膜缘的表示。例如,由DLN生成的表示可以包括关于角膜缘的放置的概率。这个表示用于生成使识别分类器适应于人的角膜缘的模型。

在角膜缘检测器102已经确定三维角膜缘参数之后,区域检测器104可以接收三维角膜缘参数以进一步生成指示角膜缘区域的更精确的数据。例如,角膜缘三角测量仪108被配置为处理用三角测量法测定的三维角膜缘,将用三角测量法测定的角膜缘区域重新投影回到图像平面,并在每个图像处细化角膜缘区域。

参考图2,其例示说明本发明的眼睛跟踪方法的主要步骤的流程图。用于眼睛跟踪的方法200包括在204中接收指示用户的眼睛的至少两个图像的图像数据;在206中在每个图像中识别与眼睛角膜缘相关的区域;在208中确定角膜缘结构的几何表示;以及在210中执行至少两个图像的角膜缘结构的几何表示的三角测量,从而在212中确定用户的眼睛的三维位置和凝视方向。

在一些实施例中,步骤210包括执行在至少两个图像中的角膜缘结构的几何表示的三角测量,以如上所述确定三维角膜缘参数。确定三维角膜缘参数可以包括确定角膜缘的半径和/或角膜缘的扭转旋转。

在一些实施例中,在210中的至少两个图像的角膜缘结构的几何表示的三角测量之后,方法200可以包括通过处理三维角膜缘参数以生成指示角膜缘区域的更精确的数据来确定角膜缘结构的几何表示。

在一些实施例中,方法200还可以包括在202中在不同角度下捕获每个用户的眼睛的至少两个图像。

在一些实施例中,在208中确定角膜缘结构的几何表示可以包括在218中的数字图像预处理,例如在每个图像上执行角膜缘识别过程或者执行图像的数学变换,包括使用强度梯度图,以及然后在变换后的图像上运行角膜缘区域识别过程。在218中的数字图像预处理步骤可以包括计算角膜缘区域的图像强度梯度图,识别角膜缘结构的至少一个区域(其中梯度的局部方向实质上是一致的),通过对这样的区域的像素加权来处理指示角膜缘结构的数据,以及基于与眼睛角膜缘相关的匹配像素确定角膜缘结构的几何表示。更特别地,数字图像预处理可以包括通过识别局部一致性(即每个点的梯度的方向仅与其邻近点共线)来确定角膜缘结构的区域。如上所述,熵图也可以用作强度梯度图(代替梯度图或除了梯度图之外),或者处理可以直接在图像上被执行。

在一些实施例中,在206中在每个图像中识别与眼睛角膜缘相关的区域可以包括识别指示眼睛特征例如瞳孔、眼睑、巩膜、虹膜和眼睫毛的图像数据,和/或通过使用迭代像素过滤过程并生成指示初始角膜缘区域的数据基于解剖参数来识别初始角膜缘区域。例如,眼睑区域估计可以与瞳孔和角膜缘区域并行地实现。本发明不限于不同区域的估计的顺序。可以基于任何几何形状模型(例如椭圆或圆)来确定不同的眼睛特征区域。

在一些实施例中,识别初始角膜缘区域可以包括基于解剖和/或眼睑区域估计和/或没有眼睑区域的角膜缘区域估计的瞳孔分割和瞳孔的三角测量和/或角膜缘区域估计。该方法可以包括分割每个图像用于识别与瞳孔区域相关的像素,在至少两个图像之间执行三角测量以确定三维瞳孔参数,基于三维瞳孔参数来估计初始眼睛角膜缘区域的位置,以及生成指示每个图像中的角膜缘的初始区域位置的数据。识别指示眼睛特征的图像数据还可以包括识别眼睑并过滤掉该图像数据,因为与眼睑相关的图像数据阻挡了角膜缘环的一部分。如上所述,本发明不限于识别指示初始角膜缘的图像数据的任何特定方式。基于神经网络的方法可用于识别指示初始角膜缘的图像数据。也可以用基于神经网络的方法来执行角膜缘区域估计和眼睑区域估计。神经网络也可以仅用于瞳孔分割。

在一些实施例中,可以通过使用机器学习来实现识别指示眼睛特征的图像数据。确定(即预测)三维眼睛角膜缘参数可以包括使用基于神经网络的数据识别模型。该方法可以包括基于经典方法的分割结果或者通过使用用于训练的现有系统来训练网络。可以通过使用深度学习网络(DLN)例如人工神经网络(ANN)来获得基于该系列图像生成角膜缘的表示。例如,生成角膜缘的表示可以包括计算关于角膜缘的放置的概率和/或生成角膜缘的模型,使识别分类器适应人。

参考图3,其示出了在不同角度下拍摄的用户的眼睛的两个立体图像。

参考图4A-图4D,示出了根据本发明的一些实施例的用于瞳孔区域检测的图3的两个立体图像的数据处理的例子。图4A示出了分割阶段,其中每个图像被分割以识别与瞳孔区域相关的像素。与瞳孔区域不相关的像素被丢弃,并且分辨率被增强,如图4B所示。图4C示出了基于每个图像的强度图的瞳孔边界的分割。图4D示出了基于瞳孔的几何表示(例如环状形状)在每个图像上的投影的瞳孔边界细化。然后在图像和瞳孔直径之间用三角测量法测定图4D的区域,并确定3D位置和方向。

参考图5,其示出了根据本发明的一些实施例的图3的两个立体图像的眼睛特征的数据识别的例子。所标记的区域表示图像强度梯度的局部方向实质上是一致的区域。

参考图6,其示出了根据本发明的一些实施例的基于椭圆函数在图3的两个立体图像的每个图像上的投影的角膜缘识别过程的例子。

参考图7,其例示说明本发明的眼睛跟踪设备的可能的功能部分的框图。在这个特定且非限制性的例子中,眼睛跟踪设备300包括在本文被称为cam 1和cam 2的两个成像器,其被配置为在不同的角度下捕获用户的每只眼睛的至少一个图像。每个成像器聚焦在用户的虹膜上。眼睛跟踪设备300包括处理单元310,其包括瞳孔检测器302和角膜缘检测器304。瞳孔检测器302是上面关于图1所定义的区域检测器的特定例子。瞳孔检测器302包括多个模块,并且被配置为和可操作来接收指示用户的每只眼睛的至少两个图像中的每个图像,并且识别指示在每个图像中的角膜缘区域的图像数据,并且生成指示角膜缘区域的数据。这可以通过使用眼睛特征检测例如瞳孔区域检测或者通过使用神经网络来实现。每个图像由分割模块分割以识别与瞳孔区域相关的像素。与瞳孔区域不相关的像素在每个图像中被丢弃,并且分辨率被增强。然后,每个椭圆模块Ell计算与在每个图像上的瞳孔区域对应的椭圆曲线以找到匹配的椭圆曲线。为每个图像生成指示三维瞳孔区域的三维方程。然后,当在捕获两个立体图像的两个成像器之间的距离是已知的时,执行匹配两个立体图像的三维方程的第一三角测量以提供瞳孔的方向。在此之后,使用角膜缘的平均尺寸,并且假设瞳孔和角膜缘是共中心的并在同一平面上,该算法产生三维角膜缘参数估计。这个三维角膜缘区域被投影到每个图像上,在本文被称为如图3中所示的掩模方程。例如,角膜缘区域可以由两条椭圆曲线划界。掩模方程由给出在每个图像上的角膜缘投影的第一估计的共线性映射模块使用。掩模方程也由权重模块使用。

为了确定三维角膜缘参数,在本文被称为共线性映射的共线性模块执行数学变换。在特定且非限制性的例子中,这样的数学变换可以包括基于瞳孔方向来计算角膜缘的图像强度梯度图,识别角膜缘结构的至少一个区域(其中梯度的方向实质上是一致的),通过对这样的区域的像素加权来处理指示角膜缘结构的数据,并基于与眼睛角膜缘相关的匹配像素确定三维角膜缘参数。可选地,这样的数学变换可以包括使用图像的熵。在特定且非限制性的例子中,共线性映射模块从由所估计的角膜缘区域(从瞳孔3D参数和平均角膜缘大小计算)掩模的原始图像生成梯度共线性映射。角膜缘检测器304接收指示三维角膜缘区域和角膜缘的方向的三维方程。环形区域然后被投影到每个眼睛图像上以产生所估计的角膜缘区域。然后,基于正常眼睛的所估计的解剖属性通过使用掩模方程来丢弃图像的大部分像素,例如瞳孔、大部分虹膜、大部分巩膜和大部分眼睑,仅留下在潜在角膜缘位置周围的环。

基于共线性映射模块的模块权重给每个像素分配该像素属于角膜缘区域的概率的权重。然后模块权重用于细化潜在的角膜缘区域,并向寻找角膜缘的匹配椭圆估计的Ell模块提供输入。

为了执行第二次三角测量,可以实现若干技术,例如圆锥体的三角测量或二次估计(线性的或非线性的)。处理单元310被配置为并可操作来通过借助于使用线性或非线性二次估计对至少两个图像的角膜缘结构的几何表示进行三角测量来确定用户的眼睛的三维位置和凝视方向。在这个特定且非限制性的例子中,圆锥体的三角测量可以如下被执行:每个椭圆模块Ell生成定义在对应于某些眼睛特征(例如,具有对应于瞳孔中心的中心的椭圆)的所识别的虚拟区域之间的解剖关系的角膜缘的几何表示的数学函数/方程,且角膜缘针对每个图像被计算。每个图像的椭圆结构被比较,且在由椭圆结构定义的圆锥体之间的交叉在空间中定义椭圆,其投影与两个图像的椭圆结构匹配。这定义在本文被称为角膜缘R、Cx、Cy、Cz、方位角和节距的三维角膜缘参数。在这方面,应该注意,在本发明中通过椭圆的三角测量而不是通过像素三角测量来获得三维角膜缘参数。如上所述,角膜缘的像素三角测量实际上是不可能的,因为在不同图像的像素之间的对应是未知的(因为沿着第二图像的核线的大多数像素看起来太相似)。在经典的计算机视觉中,使用特殊的近像素区域特性,例如不同的颜色、角、线交叉或纹理面片,这些特性允许表征在来自不同图像的沿核线的两个像素之间的匹配。由于通常被定义为宽区域的角膜缘的粗糙边界,这样的特征在角膜缘区域中缺少,因而不允许经典的自然特征跟踪算法的使用。然后,掩模用于丢弃与眼睛特征相关的区域。然后使用迭代像素过滤过程,重复与上面所述的相同的过程以更准确地定义角膜缘区域并减小角膜缘区域大小。

可选地或此外,迭代像素过滤过程可以通过使用线性二次估计例如卡尔曼滤波器或非线性二次估计例如扩展卡尔曼滤波器和无迹卡尔曼滤波器来实现。卡尔曼滤波器产生五个自由度(例如椭圆结构)的角膜缘方程的估计,作为眼睛的预测状态的平均值和使用加权平均值的新测量值的平均值。从协方差——眼睛的状态的预测的所估计的不确定性的度量——计算权重。加权平均的结果是位于预测状态和测量状态之间的新状态估计,并且具有比单独地采用的任一状态更好的所估计的不确定性。这个过程在每个时间步长处重复,新的估计和它的协方差为在下一次迭代中使用的预测提供信息。

在该过程结束时,处理单元310基于三维角膜缘参数来确定用户的眼睛的三维位置和凝视方向。

参考图8,其例示通过使用本发明的教导获得的二维眼睛跟踪位置轨迹,其中不同的颜色区分开轨迹的不同部分,即颜色在时间上的变化。轴Xc和Yc以毫米为单位被测量。

参考图9,其例示作为时间(以毫秒为单位)的函数的在方位角和节距方面的图8的眼睛跟踪定向轨迹的两个角度自由度(即,以度为单位测量的角度测量)。图8、9和10都示出来自同一记录的数据。

参考图10A-10B,其例示图8的眼睛跟踪轨迹的五个自由度。更特别地,图10A示出了作为时间的函数的在方位角和节距方面的眼睛跟踪定向轨迹的两个角度自由度(即,以度为单位测量的角度测量)。图10A是上面图9的曲线图的部分节段的放大图。图10B示出了作为时间(以毫秒为单位被测量)的函数的在笛卡尔坐标空间中的眼睛跟踪位置轨迹的三维自由度。

相关技术
  • 眼睛跟踪设备和用于操作眼睛跟踪设备的方法
  • 眼睛跟踪设备和用于操作眼睛跟踪设备的方法
技术分类

06120113293619