CN113808160B - 视线方向追踪方法和装置 - Google Patents
视线方向追踪方法和装置 Download PDFInfo
- Publication number
- CN113808160B CN113808160B CN202110897215.8A CN202110897215A CN113808160B CN 113808160 B CN113808160 B CN 113808160B CN 202110897215 A CN202110897215 A CN 202110897215A CN 113808160 B CN113808160 B CN 113808160B
- Authority
- CN
- China
- Prior art keywords
- light source
- calibration
- parameters
- coordinates
- cameras
- 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
- 238000000034 method Methods 0.000 title claims abstract description 157
- 230000003287 optical effect Effects 0.000 claims abstract description 114
- 210000001508 eye Anatomy 0.000 claims abstract description 71
- 230000000007 visual effect Effects 0.000 claims abstract description 69
- 238000005457 optimization Methods 0.000 claims abstract description 28
- 210000000887 face Anatomy 0.000 claims abstract description 13
- 239000000523 sample Substances 0.000 claims description 155
- 210000004087 cornea Anatomy 0.000 claims description 109
- 210000005252 bulbus oculi Anatomy 0.000 claims description 88
- 238000003384 imaging method Methods 0.000 claims description 84
- 238000004088 simulation Methods 0.000 claims description 67
- 210000001747 pupil Anatomy 0.000 claims description 65
- 238000012549 training Methods 0.000 claims description 43
- 239000003550 marker Substances 0.000 claims description 41
- 238000012795 verification Methods 0.000 claims description 22
- 230000004438 eyesight Effects 0.000 claims description 21
- 238000004458 analytical method Methods 0.000 claims description 17
- 238000012216 screening Methods 0.000 claims description 14
- 230000036544 posture Effects 0.000 claims description 11
- 238000007619 statistical method Methods 0.000 claims description 11
- 238000003860 storage Methods 0.000 claims description 10
- 238000006243 chemical reaction Methods 0.000 claims description 9
- 238000004140 cleaning Methods 0.000 claims description 9
- 241000287181 Sturnus vulgaris Species 0.000 claims description 8
- 238000012360 testing method Methods 0.000 claims description 8
- 239000012521 purified sample Substances 0.000 claims description 4
- 238000007670 refining Methods 0.000 claims 1
- 238000012546 transfer Methods 0.000 claims 1
- 238000004422 calculation algorithm Methods 0.000 abstract description 15
- 238000013507 mapping Methods 0.000 description 15
- 230000008569 process Effects 0.000 description 14
- 238000010586 diagram Methods 0.000 description 10
- 238000001514 detection method Methods 0.000 description 8
- 230000001419 dependent effect Effects 0.000 description 6
- 238000012545 processing Methods 0.000 description 6
- 238000001028 reflection method Methods 0.000 description 6
- 239000013598 vector Substances 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 5
- 230000002159 abnormal effect Effects 0.000 description 4
- 238000013461 design Methods 0.000 description 4
- 238000000605 extraction Methods 0.000 description 4
- 238000003672 processing method Methods 0.000 description 4
- 238000004519 manufacturing process Methods 0.000 description 3
- 238000000746 purification Methods 0.000 description 3
- 238000013528 artificial neural network Methods 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000012937 correction Methods 0.000 description 2
- 230000008878 coupling Effects 0.000 description 2
- 238000010168 coupling process Methods 0.000 description 2
- 238000005859 coupling reaction Methods 0.000 description 2
- 210000000695 crystalline len Anatomy 0.000 description 2
- 238000007405 data analysis Methods 0.000 description 2
- 238000013135 deep learning Methods 0.000 description 2
- 238000009826 distribution Methods 0.000 description 2
- 238000002474 experimental method Methods 0.000 description 2
- 239000000284 extract Substances 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000001179 pupillary effect Effects 0.000 description 2
- 230000011514 reflex Effects 0.000 description 2
- 230000009466 transformation Effects 0.000 description 2
- 230000006978 adaptation Effects 0.000 description 1
- 230000003190 augmentative effect Effects 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000004424 eye movement Effects 0.000 description 1
- 210000000744 eyelid Anatomy 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/20—Analysis of motion
- G06T7/246—Analysis of motion using feature-based methods, e.g. the tracking of corners or segments
-
- 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
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/80—Analysis of captured images to determine intrinsic or extrinsic camera parameters, i.e. camera calibration
-
- 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
-
- 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/30196—Human being; Person
- G06T2207/30201—Face
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Multimedia (AREA)
- General Engineering & Computer Science (AREA)
- Human Computer Interaction (AREA)
- Image Analysis (AREA)
- Eye Examination Apparatus (AREA)
Abstract
本发明公开了一种视线方向追踪方法和装置。其中,该视线方向追踪方法包括:使用多个光源对用户的眼睛提供角膜反射,使用多个相机捕获包含用户人脸的图像;通过从包含人脸的图像获取的人眼特征集结合硬件标定参数,确定世界坐标系中的光源反射点坐标和瞳孔中心坐标;根据光源反射点坐标和瞳孔中心坐标确定视线光轴,视线光轴通过补偿角度重建视线视轴;根据视线视轴和目标对象在世界坐标系的位置,确定在目标对象上的视点。本发明解决了视线追踪硬件成本高、算法优化效率低和估计精度低的技术问题。
Description
技术领域
本发明涉及图像处理技术领域,具体而言,涉及一种视线方向追踪方法和装置。
背景技术
在相关技术中,实时检测驾驶员的视线方向和视线的落点位置,可以为辅助驾驶和各种产品应用提供重要的信息输入。比如,视线的角度方向可以用于判断当前驾驶员的观察区域,检测驾驶员分心的危险驾驶行为等,视线的落点位置可以用于判断当前用户的注意目标,从而调整增强现实抬头显示器系统的显示位置等。
现有技术中视线方向追踪方法通过获取的包含人眼的图像,通过分析中人眼的特征估计视线方向和视点,上述视线追踪方法通常分为基于外观法和基于角膜反射法。基于外观法一般依赖人眼图像或人脸图像中包含的外观特征,包括眼睑位置、瞳孔位置、虹膜位置、内/外眼角、人脸朝向等特征估计视线方向和视点,基于外观的方法不是利用几何映射关系,而是将人眼图像对应于高维空间的点,进而学习从给定特征空间的点到屏幕坐标的映射关系。基于角膜反射法,则除了依赖外观法的部分图像特征,还依赖光源在角膜上的反射形成的普尔钦斑,通过眼睛运动特征建立从几何模型的瞳孔中心到凝视校准点的映射,一般来说,角膜反射法比外观法有更高的精度,因此几乎所有的成熟商业产品都基于角膜反射法,但是角膜反射法还需要复杂的设备以及精确的校准过程,并不具有普遍适用性。针对角膜反射法硬件制作成本高、算法优化效率低和视线估计精度低的问题,目前尚未提出有效的解决方案。
发明内容
本发明实施例提供了一种视线方向追踪方法和装置,以至少解决视线追踪硬件成本高、算法优化效率低和估计精度低的技术问题。
根据本发明实施例中的一个方面,提供了一种视线方向追踪方法,包括:使用多个光源对用户的眼睛提供角膜反射,使用多个相机捕获包含上述用户人脸的图像;通过从上述包含人脸的图像获取的人眼特征集结合硬件标定参数,确定世界坐标系中的光源反射点坐标和瞳孔中心坐标;根据上述光源反射点坐标和上述瞳孔中心坐标确定视线光轴,上述视线光轴通过补偿角度重建视线视轴;根据上述视线视轴和目标对象在上述世界坐标系的位置,确定在上述目标对象上的视点。
可选的,上述人眼特征集包括:光源成像点,瞳孔成像点。
可选的,上述世界坐标系可选取以下任意一种:光源坐标系、相机坐标系、目标对象坐标系。
可选的,上述方法还通过预设眼球参数、上述补偿角度、上述硬件标定参数和预设视点进行仿真验证、分析和优化。
可选的,上述多个相机、上述多个光源和上述目标对象朝向用户,且上述多个相机的视野不包括上述多个光源和上述目标对象。
可选的,上述硬件标定参数包括:上述多个相机坐标系的内外参和几何位置关系,其中上述几何位置关系包括以下:上述多个光源坐标系和上述多个相机坐标系之间的第一位置关系,上述多个光源坐标系和上述目标对象坐标系之间的第二位置关系,上述多个相机坐标系和上述目标对象坐标系之间的第三位置关系。
可选的,上述几何位置关系通过结合上述多个相机的内外参,利用平面镜和辅助相机中的至少一项传递标定信息标定获得。
可选的,通过从上述包含人脸的图像获取的人眼特征集结合硬件标定参数,确定世界坐标系中的光源反射点坐标和瞳孔中心坐标,包括:若上述世界坐标系为上述光源坐标系,上述人眼特征集通过上述多个相机的内外参,结合上述第一位置关系,或结合上述第二位置关系和上述第三位置关系,确定上述光源坐标系中的上述光源反射点坐标和上述瞳孔中心坐标;若上述世界坐标系为上述相机坐标系,上述人眼特征集通过上述多个相机的内外参,确定上述多个相机坐标系中的上述光源反射点坐标和上述瞳孔中心坐标;若上述世界坐标系为上述目标对象坐标系,上述人眼特征集通过上述多个相机的内外参,结合上述第三位置关系,或结合上述第一位置关系和上述第二位置关系,确定上述目标对象坐标系中的上述光源反射点坐标和上述瞳孔中心坐标。
可选的,根据上述光源反射点坐标和上述瞳孔中心坐标确定视线光轴,包括:根据上述光源反射点坐标和角膜曲率半径,确定角膜曲率中心的坐标;根据上述瞳孔中心坐标和上述角膜曲率中心的坐标,确定上述瞳孔中心与上述角膜曲率中心连线的上述视线光轴。
可选的,上述几何位置关系通过结合上述多个相机的内外参,利用平面镜和辅助相机传递标定信息标定获得,包括:第一辅助相机获取上述平面镜以多个不同姿态反射的含有第一标记的上述目标对象的多张第一标记图像;结合上述多个相机的内外参,根据多张上述第一标记图像基于正交约束计算上述第三位置关系;第二辅助相机获取包含上述多个光源的第二标记图像,结合上述多个相机的内外参并基于上述第二标记图像获取上述第一位置关系,其中,上述第二辅助相机为立体视觉系统;根据上述第一位置关系和上述第三位置关系确定上述第二位置关系。
可选的,上述几何位置关系通过结合上述多个相机的内外参,利用辅助相机传递标定信息标定获得,包括:第三辅助相机获取包含上述多个光源的第三标记图像,结合上述多个相机的内外参并基于上述第三标记图像获取上述第一位置关系,其中,上述第三辅助相机为立体视觉系统;第四辅助相机设置为其视野包括上述多个相机和上述第三辅助相机,在上述第三辅助相机旁设置标定板,上述多个相机采集包含上述标定板区域的第四标记图像,同时上述第三辅助相机获取含有第五标记的上述目标对象的第五标记图像;将上述第四辅助相机和上述多个相机的位置关系作为姿态转换桥梁,结合第三辅助相机和上述多个相机的内外参,根据上述第四标记图像和上述第五标记图像确定上述第三位置关系;根据上述第一位置关系和上述第三位置关系确定上述第二位置关系。
可选的,上述几何位置关系通过结合上述多个相机的内外参,利用平面镜传递标定信息标定获得,包括:利用粘有不少于4个标记点的上述平面镜作为辅助,上述多个相机获取带有上述多个光源、上述目标对象且包含上述标记点的反射图像;依据上述反射图像分别计算各个上述标记点、上述多个光源和上述目标对象在上述多个相机坐标系中的标记点坐标,镜面光源坐标和镜面目标对象坐标;根据所有上述标记点坐标重建镜面平面,并依据镜面反射原理,结合上述镜面光源坐标和上述镜面目标对象坐标确认上述第一位置关系和上述第三位置关系;根据上述第一位置关系和上述第三位置关系确定上述第二位置关系。
可选的,上述视线光轴通过补偿角度重建视线视轴之前,上述方法还包括:上述用户凝视每一个预设的凝视点时获取一组样本图像;根据每组上述样本图像提取的样本特征确定第一补偿角度样本;遍历所有上述第一补偿角度样本,通过筛选和提纯获取上述补偿角度。
可选的,根据每组上述样本图像提取的样本特征确定第一补偿角度样本,包括:针对每组上述样本图像提取样本特征,并根据上述样本特征重建出第一视线光轴;基于上述预设的凝视点的真实坐标反推出第一视线视轴;根据上述第一视线光轴和上述第一视线视轴,获取上述第一补偿角度样本。
可选的,遍历所有上述第一补偿角度样本,通过筛选和提纯获取上述补偿角度,包括:求取所有上述第一补偿角度样本的中心点,筛选并去除不在第一阈值范围内的样本;继续遍历筛选和提纯剩余所有样本直至当前中心点与上一次的中心点的差值低于第二阈值,从提纯后的所有样本中获取上述补偿角度。
可选的,上述视线光轴通过补偿角度重建视线视轴之前,上述方法还包括:对采集的数据通过动态补偿模型确定预测视线观测点和真实视线观测点的偏差,根据上述偏差获取上述补偿角度。
可选的,在使用上述动态补偿模型以前对上述动态补偿模型初始化,包括:上述用户凝视每一个预设初始点时获取一组初始样本图像;针对每组上述初始样本图像提取初始样本特征,并根据上述初始样本特征通过小样本学习初始化获得与当前上述用户契合的上述动态补偿模型。
可选的,训练上述动态补偿模型包括:采集多个用户分别凝视预设校准点时的多组样本数据;对上述多组样本数据清洗,并对清洗后的上述多组样本提取训练样本特征;根据上述训练样本特征使用小样本学习训练初始动态补偿模型,获取训练后的上述动态补偿模型。
可选的,上述通过预设眼球参数、上述补偿角度、上述硬件标定参数和预设视点进行仿真验证、分析和优化,包括:针对上述预设视点,根据上述眼球参数、上述补偿角度和上述硬件标定参数仿真计算重建光源成像点和重建瞳孔成像点;根据上述重建光源成像点和上述重建瞳孔成像点,依据上述视线方向追踪方法确定预测视点;根据上述预设视点和上述预测视点的比较值统计分析,并根据分析结果实施验证和优化。
可选的,针对上述预设视点,根据上述预设眼球参数、上述补偿角度和上述硬件标定参数仿真计算重建光源成像点和重建瞳孔成像点,包括:根据上述预设眼球参数中的角膜中心和上述硬件标定参数确定光源角膜相机角度,基于上述光源角膜相机角度和上述预设眼球参数中的角膜曲率半径,结合球面反射原理确定重建光源反射点坐标,根据上述重建光源反射点坐标结合上述硬件标定参数计算上述重建光源成像点;根据上述预设视点的坐标和上述预设眼球参数中的角膜中心确定第一视轴,基于上述第一视轴和上述补偿角度反推出第一光轴,依据上述第一光轴并结合上述预设眼球参数的瞳孔角膜中心距离确定重建瞳孔中心坐标,根据上述瞳孔中心坐标结合上述硬件标定参数计算上述重建瞳孔成像点。
可选的,上述预设视点可提前预设或随机生成于多个不同位置以仿真多种视线角度追踪。
可选的,根据上述预设视点和上述预测视点进行统计分析,并根据分析结果实施验证和优化,包括:验证上述视线方向追踪方法的实现是否正确,测试添加扰动对视点误差的影响和确定上述多个光源、上述多个相机和目标对象配置方法。
根据本发明实施例的另一个方面,还提供了一种视线方向追踪装置,包括:采集模块,用于使用多个光源对用户的眼睛提供角膜反射,使用多个相机捕获包含上述用户人脸的图像;关键点确定模块,用于通过从上述包含人脸的图像获取的人眼特征集结合硬件标定参数,确定世界坐标系中的光源反射点坐标和瞳孔中心坐标;视线重建模块,用于根据上述光源反射点坐标和上述瞳孔中心坐标确定视线光轴,上述视线光轴通过补偿角度重建视线视轴;视点确定模块,用于根据上述视线视轴和目标对象在上述世界坐标系的位置,确定在上述目标对象上的视点。
可选的,上述装置还包括仿真模块,用于通过预设眼球参数、上述补偿角度、上述硬件标定参数和预设视点进行仿真验证、分析和优化。
可选的,上述硬件标定参数包括:上述多个相机坐标系的内外参和几何位置关系,其中上述几何位置关系包括以下:上述多个光源坐标系和上述多个相机坐标系之间的第一位置关系,上述多个光源坐标系和上述目标对象坐标系之间的第二位置关系,上述多个相机坐标系和上述目标对象坐标系之间的第三位置关系。
可选的,上述关键点确定模块包括:标定单元,用于通过结合上述多个相机的内外参,利用平面镜和辅助相机中的至少一项传递标定信息标定获得上述几何位置关系。
可选的,上述关键点确定模块包括:第一确定单元,用于若上述世界坐标系为上述光源坐标系,上述人眼特征集通过上述多个相机的内外参,结合上述第一位置关系,或结合上述第二位置关系和上述第三位置关系,确定上述光源坐标系中的上述光源反射点坐标和上述瞳孔中心坐标;第二确定单元,用于若上述世界坐标系为上述相机坐标系,上述人眼特征集通过上述多个相机的内外参,确定上述多个相机坐标系中的上述光源反射点坐标和上述瞳孔中心坐标;第三确定单元,用于若上述世界坐标系为上述目标对象坐标系,上述人眼特征集通过上述多个相机的内外参,结合上述第三位置关系,或结合上述第一位置关系和上述第二位置关系,确定上述目标对象坐标系中的上述光源反射点坐标和上述瞳孔中心坐标。
可选的,上述视线重建模块包括:第一重建单元,用于根据上述光源反射点坐标和角膜曲率半径,确定角膜曲率中心的坐标;第二重建单元,用于根据上述瞳孔中心坐标和上述角膜曲率中心的坐标,确定上述瞳孔中心与上述角膜曲率中心连线的上述视线光轴。
可选的,上述标定单元包括第一标定单元,用于通过结合上述多个相机的内外参,利用平面镜和辅助相机传递标定信息标定获得上述几何位置关系,其中,上述第一标定单元包括:第一标定子单元,用于第一辅助相机获取上述平面镜以多个不同姿态反射的含有第一标记的上述目标对象的多张第一标记图像;第二标定子单元,用于结合上述多个相机的内外参,根据多张上述第一标记图像基于正交约束计算上述第三位置关系;第三标定子单元,用于第二辅助相机获取包含上述多个光源的第二标记图像,结合上述多个相机的内外参并基于上述第二标记图像获取上述第一位置关系,其中,上述第二辅助相机为立体视觉系统;第四标定子单元,用于根据上述第一位置关系和上述第三位置关系确定上述第二位置关系。
可选的,上述标定单元包括第二标定单元,用于通过结合上述多个相机的内外参,利用辅助相机传递标定信息标定获得上述几何位置关系,其中,上述第二标定单元包括:第五标定子单元,用于第三辅助相机获取包含上述多个光源的第三标记图像,结合上述多个相机的内外参并基于上述第三标记图像获取上述第一位置关系,其中,上述第三辅助相机为立体视觉系统;第六标定子单元,用于第四辅助相机设置为其视野包括上述多个相机和上述第三辅助相机,在上述第三辅助相机旁设置标定板,上述多个相机采集包含上述标定板区域的第四标记图像,同时上述第三辅助相机获取含有第五标记的上述目标对象的第五标记图像;第七标定子单元,用于将上述第四辅助相机和上述多个相机的位置关系作为姿态转换桥梁,结合第三辅助相机和上述多个相机的内外参,根据上述第四标记图像和上述第五标记图像确定上述第三位置关系;第八标定子单元,用于根据上述第一位置关系和上述第三位置关系确定上述第二位置关系。
可选的,上述标定单元包括第三标定单元,用于通过结合上述多个相机的内外参,利用平面镜传递标定信息标定获得上述几何位置关系,其中,上述第三标定单元包括:第九标定子单元,用于利用粘有不少于4个标记点的上述平面镜作为辅助,上述多个相机获取带有上述多个光源、上述目标对象且包含上述标记点的反射图像;第十标定子单元,用于依据上述反射图像分别计算各个上述标记点、上述多个光源和上述目标对象在上述多个相机坐标系中的标记点坐标,镜面光源坐标和镜面目标对象坐标;第十一标定子单元,用于根据所有上述标记点坐标重建镜面平面,并依据镜面反射原理,结合上述镜面光源坐标和上述镜面目标对象坐标确认上述第一位置关系和上述第三位置关系;第十二标定子单元,用于根据上述第一位置关系和上述第三位置关系确定上述第二位置关系。
可选的,上述视线重建模块包括:第三重建单元,用于上述用户凝视每一个预设的凝视点时获取一组样本图像;第四重建单元,用于根据每组上述样本图像提取的样本特征确定第一补偿角度样本;第五重建单元,用于遍历所有上述第一补偿角度样本,通过筛选和提纯获取上述补偿角度。
可选的,上述视线重建模块还包括:动态补偿单元,用于对采集的数据通过动态补偿模型确定预测视线观测点和真实视线观测点的偏差,根据上述偏差获取上述补偿角度。
可选的,上述动态补偿单元包括初始化子单元,用于在使用上述动态补偿模型以前对上述动态补偿模型初始化,其中,上述初始化子单元包括:第一初始化子单元,用于上述用户凝视每一个预设初始点时获取一组初始样本图像;第二初始化子单元,用于针对每组上述初始样本图像提取初始样本特征,并根据上述初始样本特征通过小样本学习初始化获得与当前上述用户契合的上述动态补偿模型。
可选的,上述动态补偿单元包括训练子单元,用于训练上述动态补偿模型,其中,上述训练子单元包括:第一训练子单元,用于采集多个用户分别凝视预设校准点时的多组样本数据;第二训练子单元,用于对上述多组样本数据清洗,并对清洗后的上述多组样本提取训练样本特征;第三训练子单元,用于根据上述训练样本特征使用小样本学习训练初始动态补偿模型,获取训练后的上述动态补偿模型。
可选的,上述仿真模块包括:第一仿真单元,用于针对上述预设视点,根据上述眼球参数、上述补偿角度和上述硬件标定参数仿真计算重建光源成像点和重建瞳孔成像点;第二仿真单元,用于根据上述重建光源成像点和上述重建瞳孔成像点,依据上述视线方向追踪方法确定预测视点;第三仿真单元,用于根据上述预设视点和上述预测视点的比较值统计分析,并根据分析结果实施验证和优化。
可选的,上述第一仿真单元包括:第一仿真子单元,用于根据上述预设眼球参数中的角膜中心和上述硬件标定参数确定光源角膜相机角度,基于上述光源角膜相机角度和上述预设眼球参数中的角膜曲率半径,结合球面反射原理确定重建光源反射点坐标,根据上述重建光源反射点坐标结合上述硬件标定参数计算上述重建光源成像点;第二仿真子单元,用于根据上述预设视点的坐标和上述预设眼球参数中的角膜中心确定第一视轴,基于上述第一视轴和上述补偿角度反推出第一光轴,依据上述第一光轴并结合上述预设眼球参数的瞳孔角膜中心距离确定重建瞳孔中心坐标,根据上述瞳孔中心坐标结合上述硬件标定参数计算上述重建瞳孔成像点。
可选的,上述第三仿真单元包括:第三仿真子单元,用于验证上述视线方向追踪方法的实现是否正确,测试添加扰动对视点误差的影响和确定上述多个光源、上述多个相机和目标对象配置方法。
根据本发明实施例的另一个方面,还提供了一种存储介质,其特征在于,上述存储介质包括存储的程序,其中,在上述程序运行时控制上述存储介质所在设备执行上述的视线方向追踪方法。
根据本发明实施例的另一个方面,还提供了一种电子设备,其特征在于,包括:处理器;以及存储器,用于存储上述处理器的可执行指令;其中,上述处理器配置为经由执行上述可执行指令来执行上述的视线方向追踪方法。
在本发明实施例中,通过执行以下步骤:使用多个光源对用户的眼睛提供角膜反射,使用多个相机捕获包含上述用户人脸的图像;通过从上述包含人脸的图像获取的人眼特征集结合硬件标定参数,确定世界坐标系中的光源反射点坐标和瞳孔中心坐标;根据上述光源反射点坐标和上述瞳孔中心坐标确定视线光轴,上述视线光轴通过补偿角度重建视线视轴;根据上述视线视轴和目标对象在上述世界坐标系的位置,确定在上述目标对象上的视点。本发明实施例中,从而解决视线追踪硬件成本高、算法优化效率低和估计精度低的技术问题。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是根据本发明实施例的一种可选的视线方向追踪方法的流程图;
图2是根据本发明实施例的一种可选的视线追踪方法的应用场景图;
图3是根据本发明实施例的一种可选的视线跟踪系统设置示意图;
图4是根据本发明实施例的一种可选的标定场景图;
图5是根据本发明实施例的一种可选的标定方法的流程图;
图6是根据本发明实施例的另一种可选的标定场景图;
图7是根据本发明实施例的另一种可选的标定方法的流程图;
图8根据本发明实施例的另一种可选的标定场景图;
图9根据本发明实施例的另一种可选的标定方法的流程图;
图10是根据本发明实施例的一种可选的重建光源反射点方法的原理图;
图11是根据本发明实施例的一种可选的视线方向追踪装置的结构框图;
图12是根据本发明实施例的另一种可选的视线方向追踪装置的结构框图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系数、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
根据本发明实施例,提供了一种视线方向追踪方法实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系数中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
本发明实施例提供了一种视线方向追踪方法,该视线方向追踪方法可以适用于多种应用场景中,包括:透明A柱,视线亮屏,抬头显示系统等应用产品中,本发明实施例提出了一种硬件成本低、处理精度高、处理速度快、可实时、可应用于绝大部分的实际使用场景的视线方向追踪方法。
下面通过详细的实施例来说明本发明。
根据本发明的一个方面,提供了一种视线方向追踪方法。参考图1,是根据本发明实施例的一种可选的视线方向追踪方法的流程图。如图1上述,该方法包括以下步骤:
S100,使用多个光源对用户的眼睛提供角膜反射,使用多个相机捕获包含上述用户人脸的图像;
S200,通过从包含人脸的图像获取的人眼特征集结合硬件标定参数,确定世界坐标系中的光源反射点坐标和瞳孔中心坐标;
S300,根据光源反射点坐标和瞳孔中心坐标确定视线光轴,视线光轴通过补偿角度重建视线视轴;
S400,根据上述视线视轴和目标对象在上述世界坐标系的位置,确定在上述目标对象上的视点。
在本发明实施例中,使用多个光源对用户的眼睛提供角膜反射,使用多个相机捕获包含上述用户人脸的图像;通过从包含人脸的图像获取的人眼特征集结合硬件标定参数,确定世界坐标系中的光源反射点坐标和瞳孔中心坐标;根据光源反射点坐标和瞳孔中心坐标确定视线光轴,视线光轴通过补偿角度重建视线视轴;根据上述人眼特征集和上述几何位置关系确定视线光轴,上述视线光轴通过补偿角度重建视线视轴;根据上述视线视轴和目标对象在上述世界坐标系的位置,确定在上述目标对象上的视点目标对象。通过上述步骤,解决视线追踪硬件成本高、算法优化效率低和估计精度低的技术问题。
下面结合上述各实施步骤进行详细说明。
S100,使用多个光源对用户的眼睛提供角膜反射,使用多个相机捕获包含上述用户人脸的图像;
具体的,用户注视目标对象,使用多个光源向用户的眼睛发射红外光源,使用多个相机可以实时捕获包含瞳孔成像点和红外光源经角膜反射得到光源反射点位置的图像。使用多个相机可实时地捕获用户注视场景时人脸的图像,上述用户人脸的图像并非指只包括用户人脸区域的图像,捕获的图像中包含用户人脸区域的图像即可。为了提高后续特征检测和特征提取的精度,多个相机捕获用户人脸的图像时可重点采集用户人脸区域以获得包含清晰的人脸特征的人脸的图像。用户注视目标可以为显示设备,用于输出图像内容、文字内容的屏幕,例如屏幕、显示器和头戴式显示器等,也可以为非显示设备,例如挡风玻璃等。
图2是根据本发明实施例的一种可选的视线追踪方法的应用场景图。如图2上述,该视线追踪方法的应用场景,包括通过网络进行通信的视线追踪系统10和终端处理器30,其中,视线追踪系统10包括相机10a和光源10b。用户注视目标对象20时,光源10b生成射向用户眼睛的红外光源,相机10a捕获包含用户眼睛的图像,上述眼睛图像包括瞳孔成像点和光源成像点。目标对象20可以为显示设备,用于输出图像内容、文字内容的屏幕,例如屏幕、显示器和头戴式显示器等,也可以为非显示设备,例如挡风玻璃等。
根据现有技术可知,在眼球模型参数未知的情况下,双相机双光源是求取角膜中心的最小系统也是实现视线追踪的最小系统,在眼球模型参数已知的情况下,则单相机双光源是求取角膜中心的最小系统也是实现视线追踪的最小系统。本发明适用于不同用户使用,不同用户眼球模型参数未知且各异,故多个相机10a包括至少两个相机,多个光源10b包括至少两个光源,应用场景中包括目标对象。
在一种可选的实施例中,多个相机、多个光源和目标对象朝向用户,且多个相机的视野不包括多个光源和上述目标对象。实际视线跟踪系统中将上述多个光源,上述多个相机和上述目标对象配置在同一侧,其中,本发明并不限制相机、光源和目标对象的具体数目,以及设备之间具体排布方式和位置。上述视线追踪系统中多个光源、多个相机和目标对象两两之间位置关系可以预设,亦可以基于标定获得。
终端处理器30获取包含人脸的图像,对包含人脸的图像进行检测和特征提取,获得人眼特征集,包括确定眼睛图像中瞳孔成像点以及光源成像点在目标对象20的三维坐标系中的坐标。终端处理器30根据输入的人眼特征集确定视线光轴,并通过补偿角度重建视线视轴,最后根据视线视轴和几何位置关系确定用户的视点。终端处理器30可以是固定终端或移动终端,移动终端可包括以下设备中的至少一种,笔记本、平板电脑、手机和车载设备等。
S200,通过从上述包含人脸的图像获取的人眼特征集结合硬件标定参数,确定世界坐标系中的光源反射点坐标和瞳孔中心坐标;
对上述包含人脸的图像进行检测和特征提取,获得人眼特征集。在一种可选的实施例中,上述人眼特征集包括:光源成像点,瞳孔成像点。本实施例利用现有技术实现对中对于包含人脸的图像进行检测和特征特征提取,本申请对获得人眼特征集的具体技术不限制,可利用传统图像处理方法和基于深度学习的图像处理方法等。
在一种可选的实施例中,上述硬件标定参数包括:多个相机坐标系的内外参和几何位置关系,其中几何位置关系包括以下:多个光源坐标系和多个相机坐标系之间的第一位置关系,多个光源坐标系和目标对象坐标系之间的第二位置关系,多个相机坐标系和目标对象坐标系之间的第三位置关系。且当获取几何位置关系中的任意两种位置关系时,通过空间变换关系以及已知的两种位置关系可确定剩余一种位置关系。通过硬件标定参数,可获得任意像素坐标和世界坐标系的映射关系,任意硬件所在坐标系和世界坐标系的映射关系。
基于角膜瞳孔反射确定视线光轴方法中,根据人眼特征集确定世界坐标系中的光源反射点坐标和瞳孔中心坐标需要结合基于多个相机和多个光源在同一个世界坐标系下的位置,根据硬件标定参数中包含的映射关系可分别确定多个光源和多个相机在世界坐标系中的位置。
此外,光源反射点,是光源中心发出的光线在角膜表面的反射点。光源成像点,是光源反射点在被采集的包含用户人脸的图像中的成像。瞳孔中心,是瞳孔区域的中心点。瞳孔成像点,是瞳孔中心经角膜折射后的瞳孔折射点在被采集的包含用户人脸的图像中的成像。将人眼的角膜建模为球体,角膜曲率中心即为该球体的球体中心,角膜半径是角膜曲率中心到角膜球体的表面的距离,光轴方向是瞳孔中心与角膜曲率中心连线的方向。同样,人的眼球亦可以建模为眼球中心,眼球中心则为该眼球的球体中心,且眼球中心也位于光轴上。根据光学原理,结合光源的位置和光源成像点可获取角膜曲率半径。
光源成像点是光源反射点在被采集的包含用户人脸的图像中的成像,按照相机成像原理,结合采集图像的多个相机的位置坐标和内外参,确定在世界坐标系中的光源反射点的坐标。需要说明的是,光源可以为一个也可以为多个。当多个光源都工作时,每个光源都含有对应的光源反射点,则确定每个光源在世界坐标系中的坐标与方法与上述一致。同理,瞳孔成像点是瞳孔中心经角膜折射后的瞳孔折射点在被采集的包含用户人脸的图像中的成像,按照相机成像原理,结合采集图像的相机的位置坐标和内外参,确定在世界坐标系中的瞳孔中心的坐标。
在一种可选的实施例中,上述世界坐标系可选取以下任意一种:光源坐标系、相机坐标系、目标对象坐标系。即该世界坐标系可以为指定的任一光源、任一相机或目标对象的立体坐标系。
由上可知,通过硬件标定参数可获得任意像素坐标和世界坐标系的映射关系,任意硬件所在坐标系和世界坐标系的映射关系。人眼特征集为像素坐标系下的二维信息,通过上述任意像素坐标和世界坐标系的映射关系,可获得世界坐标系下光源反射点坐标和瞳孔中心坐标,且根据指定的世界坐标系不同,存在以下几种情况。
在一种可选的实施例中,从上述包含人脸的图像获取的人眼特征集结合硬件标定参数,确定世界坐标系中的光源反射点坐标和瞳孔中心坐标,包括:
若上述世界坐标系为上述光源坐标系,上述人眼特征集通过上述多个相机的内外参,结合上述第一位置关系,或结合上述第二位置关系和上述第三位置关系,确定上述光源坐标系中的上述光源反射点坐标和上述瞳孔中心坐标;
若上述世界坐标系为上述相机坐标系,上述人眼特征集上述多个相机的内外参,确定上述多个相机坐标系中的上述光源反射点坐标和上述瞳孔中心坐标;
若上述世界坐标系为上述目标对象坐标系,上述人眼特征集通过上述多个相机的内外参,结合上述第三位置关系,或结合上述第一位置关系和上述第二位置关系,确定上述目标对象坐标系中的上述光源反射点坐标和上述瞳孔中心坐标。
进一步的,本申请不限制确定多个相机的内外参的方法,可通过预设的出厂参数获取,亦可通过标定获取多个相机的内外参,本申请同样不限制标定多个相机内外参的方法,例如,采用标定板标定多个相机的内外参。
在一种可选的实施例中,几何位置关系通过结合多个相机的内外参,利用平面镜和辅助相机中的至少一项传递标定信息标定获得。
由于,多个相机的视野不包括多个光源和上述目标对象,故利用平面镜和辅助相机中的至少一项传递标定信息,基于标定信息求取几何位置关系。
具体的,标定过程旨在获得多个相机、多个光源和目标对象的几何位置关系,然而在本实施例中,由于反射光路存在的限制,视线跟踪系统包含的多个光源,多个相机和目标对象配置在同一侧,故相机无法直接观察目标对象,或者只能观察到光目标对象的一部分,本申请结合多个相机的内外参,利用平面镜和辅助相机中的至少一项传递标定信息标定获得几何位置关系。
图3根据本发明实施例的一种可选的视线跟踪系统设置示意图,视线跟踪系统以两个相机在外侧,两个光源在内侧的设置。如图3所示,视线追踪系统100包括相机110和116,光源112和114,光源用于对用户105的眼睛发射光线提供角膜反射。相机用于捕获包含用户105人脸的图像。视线追踪系统100采用光源在内侧,相机在外侧的排布方式,本发明并不限制相机和光源具体排布方式,例,还可采用相机在内侧光源在外侧的排布,或相机和光源间隔放置的排布方式。相机和光源分别固定于云台103,104,101和102,云台可调整各部件在水平以及垂直方向。固定后的部件安装于底座107,并且部件之间的距离可通过调整其固定位置而实现。在本实施例中将目标对象配置为显示器106,可用于显示标定记号。
在本申请的示例性实施例中,提供三种可行的标定方法,以图3所示的视线跟踪系统为例对标定方法进行说明。
标定方法一:
图4是根据本发明实施例的一种可选的标定场景图。如图4所示,在显示器106前侧放置平面镜320,显示器106上方固定第一辅助相机318,视线跟踪系统前方设置第二辅助相机,第二辅助相机为立体视觉系统,包括相机322和324,显示器106显示第一标记。辅助相机318获取平面镜320中显示器106投射的全部第一标记的像,立体视觉系统的视野包含全部相机和光源。
图5是根据本发明实施例的一种可选的标定方法的流程图。如图5所示,在一种可选的实施例中,结合多个相机的内外参,并利用平面镜和辅助相机传递标定信息,获得几何位置关系,可以包括:
S310第一辅助相机获取平面镜以多个不同姿态反射含有第一标记的上述目标对象的多张第一标记图像;
具体地,平面镜320以多个不同姿态反射,使第一标记在镜面中的虚像在辅助相机318的视野中,其中,平面镜的多个姿态的数目至少为三个,且平面镜所在的平面在不同姿态下互不平行。
S311结合多个相机的内外参,根据多张第一标记图像基于正交约束计算第三位置关系;
具体地,多个相机的内外参包括相机、第一辅助相机和第二辅助相机的内外参数,本实施例采用现有技术实现对多相机进行标定,对多相机的内外参标定的具体技术不限制。
根据上述多张第一标记图像,结合平面镜镜面反射原理,恢复全部第一标记点相对于辅助相机的相对位置。采用不同位姿的平面镜反射标记点的像,即为针对固定的显示器提供不同第一辅助相机坐标系。针对所有第一标记图像使用P3P求解出多个候选镜像第一标记点组合,结合镜面点存在的正交约束筛选出一个最终组合,上述正交约束即在辅助相机坐标系下,任意两个不同镜面的轴向量与同一标记点在对应镜面下投射坐标的差向量正交。根据最终组合恢复全部第一标记点相对于辅助相机的相对位置,进一步地,结合上述标定获得多个相机的内外参结果,计算多个相机和显示器之间位置关系,即第三位置关系。
S312第二辅助相机获取包含多个光源的第二标记图像,结合多个相机的内外参并基于第二标记图像获取第一位置关系,其中,第二辅助相机为立体视觉系统;
第二辅助相机为立体视觉系统,且立体视觉系统的视野包含全部相机和光源,通过立体视觉系统采集并处理包含全部光源的第二标记图像,由于立体视觉系统采集的数据包含三维信息,故根据第二标记图像中确定各光源在立体视觉系统下的位姿,进一步地,结合多个相机的内外参,确定多个光源和多个相机之间的位置关系,即第一位置关系。
S313根据第一位置关系和第三位置关系确定第二位置关系。
通过上述步骤可以获得具有高准确性和高稳健性的标定结果。基于平面镜对目标对象反射成像,根据建立的目标对象和其在平面镜中虚像的位姿关系基于正交约束求解确定系统位姿关系。由于需要多次改变平面镜的位置,相机需要采集多幅镜面反射的图像,并且平面镜的移动需要获取满足预设条件的,操作较为复杂,效率较低,此外上述镜面标定法中基于正交约束线性求解通常对噪声敏感,系统位置关系标定结果的精度与平面镜到相机的距离和平面镜转动角度均有关系。
标定方法二则引入了多个辅助相机,避免多次改变平面镜的位置,将多个辅助相机作为转换桥梁,通过姿态转换确定最终几何位置关系。
标定方法二:
图6是根据本发明实施例的另一种可选的标定场景图。如图6所示,在显示器106前侧放置平面镜320,视线跟踪系统前方设置第三辅助相机,第三辅助相机为立体视觉系统,包括相机422和424,在第三辅助相机边设置标定板428,相机110和116的视野包含标定板区域,显示器106显示第四标记图像,设置第四辅助相机426使其视野包括相机和第三辅助相机,立体视觉系统的视野包含全部相机、光源以及含有第五标记的显示器。
图7是根据本发明实施例的另一种可选的标定方法的流程图。在一种可选的实施例中,结合上述多个相机的内外参,并利用辅助相机传递标定信息,获得上述几何位置关系,可以包括:
S320第三辅助相机获取包含上述多个光源的第三标记图像,结合上述多个相机的内外参并基于上述第三标记图像获取上述第一位置关系,其中,上述第三辅助相机为立体视觉系统;
步骤与上述S312中获取第一位置关系的步骤一致,在此不再详细描述。
S321第四辅助相机设置为其视野包括多个相机和第三辅助相机,在上述第三辅助相机旁设置标定板,上述多个相机采集包含上述标定板区域的第四标记图像,同时上述第三辅助相机获取含有第五标记的上述目标对象的第五标记图像;
如图6所示,在显示器106上显示包含第四标记的标定板图像,使得第三辅助相机能拍摄到绝大部分的标定图像区域。在第三辅助相机边上放置一块标定板,使得相机110和116能够拍摄到绝大部分同时出现在两个相机的标定板区域,设置第四辅助相机使其视野包括相机和第三辅助相机。相机采集包含标定板区域的第四标记图像,同时第三辅助相机获取含有第五标记的目标对象的第五标记图像。
S322将上述第四辅助相机和上述多个相机的位置关系作为姿态转换桥梁,结合第三辅助相机和上述多个相机的内外参,根据上述第四标记图像和上述第五标记图像确定上述第三位置关系;
具体地,多个相机的内外参包括相机、第三辅助相机和第四辅助相机的内外参数,本实施例采用现有技术实现对多相机进行标定,对多相机的内外参标定的具体技术不限制。
根据获取的第四标记图像确定相机与标定板之间的位置关系,根据第五标记图像确定第三辅助相机和显示器之间的位置关系,由于第四辅助相机同时拍摄相机和第三辅助相机,故利用第四辅助相机作为姿态转换的桥梁,实现显示器和相机的位姿关系标定,确定第三位置关系。
S323根据上述第一位置关系和上述第三位置关系确定上述第二位置关系。
上述实施例中为实现标定引入额外的辅助相机和一块标定板,将标定板置于多个相机的工作范围内,经辅助相机和标定板的坐标系转换,最终实现多个相机、多个光源和目标对象的位姿关系标定,这种方法原理简单、理论精度高,但在实际操作的过程中,由于多个相机和目标对象的位置关系已经固定,且多个相机无法拍摄目标对象,按照上述要求布置标定板和辅助相机时,辅助相机光轴与标定板法向量和显示器法向量之间夹角均过大,可能导致采集到的标定图案不理想,标记点提取误差较大,难以保证转换的精度。
辅助相机的引入增加了成本,且使得标定过程变得复杂。标定方法三则仅依赖固定的平面镜,避免多次移动引起的操作复杂,未依赖辅助相机,避免了辅助相机采集的对象之间夹角范围过大等问题,且简化了标定流程并降低了成本。
标定方法三:
图8是根据本发明实施例的另一种可选的标定场景图。如图8所示,在显示器106前侧放置平面镜320,在平面镜320上粘贴多个标记图案,标记图案可以是圆点、棋盘格、同心圆或其他易于区分的图案,且数量不少于4个,标记图案在显示器上的分布不做具体限制。平面镜反射显示器106、相机110和相机116、光源112和光源114,相机的视野包含投影在平面镜上全部相机、光源以及含有标记的显示器的像。
图9是根据本发明实施例的另一种可选的标定方法的流程图。
在一种可选的实施例中,结合上述多个相机的内外参,利用平面镜传递标定信息,获得上述几何位置关系,可以包括:
S330利用粘有不少于4个标记点的上述平面镜作为辅助,上述多个相机获取带有上述多个光源、上述目标对象且包含上述标记点的反射图像;
S331依据上述反射图像分别计算各个上述标记点、上述多个光源和上述目标对象在上述多个相机坐标系中的标记点坐标,镜面光源坐标和镜面目标对象坐标;
S332根据所有上述标记点坐标重建镜面平面,并依据镜面反射原理,结合上述镜面光源坐标和上述镜面目标对象坐标确认上述第一位置关系和上述第三位置关系;
S333根据上述第一位置关系和上述第三位置关系确定上述第二位置关系。
在本申请的实施例中,标定方法三的基本思路可以为在平面镜320上粘贴多个标记图案,标记图案可以是圆点、棋盘格、同心圆或其他易于区分的图案,且数量不少于4个,标记图案在显示器上的分布不做具体限制。多个相机无法直接获取目标对象和光源,基于镜面反射原理,例如图8,平面镜反射显示器106、相机110和相机116、光源112和光源114。相机朝向镜面采集反射图像,上述图像包含投影在平面镜上全部相机、光源以及含有标记的显示器的像。依据包含全部标记点的反射图像确定各个上述标记点在上述多个相机坐标系中的标记点坐标,依据反射图像中包含镜面投影的光源和目标对象,确定光源虚像在多个相机坐标系中的镜面光源坐标和目标对象在多个相机坐标系中的镜面目标对象坐标。根据上述至少4个标记点坐标重建在多个相机坐标系下的镜面平面,依据镜面反射原理,镜面光源和实际光源在多个相机坐标系下对应。根据镜面光源坐标,结合镜面平面,确定第一位置关系,同理基于镜面目标对象坐标分别第三位置关系,根据第一位置关系和第三位置关系确定第二位置关系。标定方法三则仅依赖固定的平面镜,避免多次移动引起的操作复杂,未依赖辅助相机,避免了辅助相机采集的对象之间夹角范围过大等问题,且有效降低了标定流程和成本。
S300,根据上述光源反射点坐标和上述瞳孔中心坐标确定视线光轴,上述视线光轴通过补偿角度重建视线视轴;
在一种可选的实施例中,上述光源反射点坐标和上述瞳孔中心坐标确定视线光轴,包括:
根据光源反射点坐标和角膜曲率半径,确定角膜曲率中心的坐标;
根据瞳孔中心坐标和角膜曲率中心的坐标,确定上述瞳孔中心与上述角膜曲率中心连线的上述视线光轴。
按照相机成像原理、光反射和折射原理,结合采集图像的相机的位置坐标和内外参和光源位置,可计算确定在世界坐标系中角膜曲率中心。光轴方向是瞳孔中心与角膜曲率中心的连线,将瞳孔中心的坐标和角膜曲率中心的坐标的简单计算,可以确定光轴方向,例如将瞳孔中心与角膜曲率中心的坐标相减取模后可确定光轴方向。
具体的,根据光学原理,针对每组采集相机,角膜曲率中心,瞳孔中心,与该相机成像平面上的瞳孔成像点和该相机的光心坐标共面。当存在两组共面关系,两个共面的面相交的交线的单位向量即为视线光轴,并且瞳孔中心与上述角膜曲率中心连线为视线光轴。基于上述平面几何关系和光学原理确定视线光轴。
基于角膜瞳孔反射的视线估计方法,往往只能求出眼球光轴,根据人眼的实际构造,用户视线是由视轴决定的,并且视轴与光轴之间存在补偿角度,本申请并不考虑眼睛变形或者发生异常时可能会对用户的补偿角度带来影响。但在真实情况中,眼球和角膜并非球体,从而导致当凝视不同位置时,基于角膜瞳孔反射的视线估计方法重建眼球光轴时存在不同的重建误差。
在本申请的示例性实施例中,提供两种可行的基于补偿角度从视线光轴重建视线视轴的方法。
重建方法一:
人眼构造决定了视线光轴和视线视轴有一个补偿角度,称为Kappa角。假设视线光轴和视线视轴之间的补偿角度是个不随个体变化的常量,则使用Kappa角作为光轴到视轴之间的固定补偿,在此假设下,可以无需通过校正估算个体的Kappa补偿,本实施例可以不校准补偿角度,或较简单地通过很少的点校准补偿角度,从而更简易实现视线追踪。
在一种可选的实施例中,视线光轴通过补偿角度重建视线视轴之前,上述方法还包括:用户凝视每一个预设的凝视点时获取一组样本图像;根据每组上述样本图像提取的样本特征确定第一补偿角度样本;遍历所有第一补偿角度样本,通过筛选和提纯获取上述补偿角度。
在一种可选的实施例中,针对每组样本图像提取样本特征,根据每组样本图像提取的样本特征确定第一补偿角度样本,包括:
针对每组样本图像提取样本特征,并根据样本特征重建出第一视线光轴;
基于预设的凝视点的真实坐标反推出第一视线视轴;
根据第一视线光轴和上述第一视线视轴,获取第一补偿角度样本。
在一种可选的实施例中,遍历所有上述第一补偿角度样本,遍历所有第一补偿角度样本,通过筛选和提纯获取补偿角度,包括:
求取所有上述第一补偿角度样本的中心点,筛选并去除不在第一阈值范围内的样本;
继续遍历筛选和提纯剩余所有样本直至当前中心点与上一次的中心点的差值低于第二阈值,从提纯后的所有样本中获取上述补偿角度。
具体的,预设的的位置已知,并且凝视点在空间中均匀分布。用户凝视已知位置的凝视点,依据采集的样本图像包含的样本特征,基于上述角膜瞳孔方法重建出视线光轴,结合瞳孔中心坐标和预设的凝视点恢复视线视轴,进一步获得该凝视点对应的补偿角度样本。基于预设凝视点获取补偿角度样本集过程中会存在误差,例如检测误差,本发明对补偿角度样本进行提纯,剔除异常样本,保留阈值范围中的高质量且合理分布的样本,一定程度上保证了补偿角度的准确度的同时保证最终补偿角度的适用性。本申请可以不校准,或较简单地通过很少的点校准,从而更简易实现视线追踪。
在实际的场景中,由于使用视线追踪系统的用户眼球参数各异,若采用固定的补偿角度,将影响视线追踪方法在更高精度视线追踪场景的应用。在重建方法二中通过引入了动态补偿模型,在使用上述动态补偿模型以前针对不同用户分别进行个性化补偿标定,以追踪到更高准确度的视线方向。
重建方法二
在一种可选的实施例中,视线光轴通过补偿角度重建视线视轴之前,上述方法还包括:对采集的数据通过动态补偿模型确定预测视线观测点和真实视线观测点的偏差,根据上述偏差获取上述补偿角度。
具体的,在实际视线方向的追踪方法的应用中,将采集的数据中每一帧数据输入至已训练好的动态补偿模型以预测偏差,偏差即为预测视线观测点和真实视线观测点之间的偏差,并且根据上述偏差获取补偿角度。预测视线观测点可通过上述重建视线光轴的方法计算,此外,本发明实施例不限制动态补偿模型的类型,可以为神经网络、随机模型森林等。
进一步的,为实现针对不同用户个性化的补偿标定,在使用上述训练好的动态补偿模型以前需要进行初始化,以获得与当前用户契合的动态补偿模型。
在一种可选的实施例中,在使用上述动态补偿模型以前对上述动态补偿模型初始化,包括:
上述用户凝视每一个预设初始点时获取一组初始样本图像;
针对每组初始样本图像提取初始样本特征,并根据上述初始样本特征通过小样本学习初始化获得与当前上述用户契合的上述动态补偿模型。
具体的,当前使用用户凝视预设的初始点,预设的初始点的位置已知并且在空间中均匀分布。针对每一个预设的初始点获取一组样本图像,采集的凝视点数目至少为3个。进一步的,针对每组初始样本图像提取初始样本特征,并初始样本特征通过小样本学习初始化获得与当前上述用户契合的上述动态补偿模型。针对样本图像提取的初始样本特征包括但不限于:角膜球中心的三维坐标、眼球光轴欧拉角、基于光轴计算的视线观测点、人脸偏转角等。通过小样本学习使动态补偿模型在较短时间内即可具备学习类别变化的情况下模型的泛化能力,利用当前使用用户的先验知识初始化后的动态补偿模型,对后续当前使用用户采集的数据提供好的搜索方向,减少了预测误差的同时提高了预测偏差的效率,本发明实施例不限小样本学习的方法,例如MAML方法。
在一种可选的实施例中,上述训练动态补偿模型包括:
采集多个用户分别凝视预设校准点时的多组样本数据;
对上述多组样本数据清洗,并对清洗后的上述多组样本提取训练样本特征;
根据上述训练样本特征使用小样本学习训练初始动态补偿模型,获取训练后的上述动态补偿模型。
此外,初始动态补偿模型通过上述步骤获取已训练好的动态补偿模型,采集多组样本数据,每个测试者要求分别凝视目标对象上均匀分布的若干个点位预设校准点,并对应地采集同样数量的样本。获得初始样本数据后清洗样本数据,去除不满足视线估计算法需求的样本,如光源反射点不全、图片严重模糊等。进一步的,针对清洗提纯后的每组样本图像提取样本特征,根据训练样本特征使用小样本学习训练初始动态补偿模型,获取训练后的动态补偿模型。针对多组样本数据提取的训练样本特征包括但不限于:角膜球中心的三维坐标、眼球光轴欧拉角、基于光轴计算的视线观测点、人脸偏转角等。训练好的动态补偿模型输入采集的数据后可获取预测视线观测点和真实视线观测点之间具有高准确的偏差,从而得到高精度的补偿角度。
上述视线光轴通过补偿角度重建视线视轴重建方法,在实际视线方向追踪场景中,先初始化生成与当前用户契合的动态补偿模型,随后对于当前用户采集的数据使用生成的动态补偿模型预测偏差,进一步获得更好的补偿角度,最终重建出高精度的视线视轴。
S400,根据上述视线视轴和目标对象在上述世界坐标系的位置,确定在上述目标对象上的视点。
上述视线视轴位于世界坐标系中,若要确定视轴在上述目标对象上的视点,需确定目标对象上在世界坐标上的位置,上述几何位置关系可提供目标对象在世界坐标上的位置,进一步确定目标对象在世界坐标上的而平面。具体地,确定用户视点的问题,即转化为同一坐标系中视线视轴向量和目标对象所在平面的交点问题,本发明不限制解决交点问题的方法。
为了降低硬件制作成本和算法优化的效率,本发明实施例还包括建立仿真系统,用以仿真在各种硬件条件、眼球状态以及算法设计等因素下,视线追踪系统的追踪精度以及抗干扰能力。
在一种可选的实施例中,上述方法还通过预设眼球参数、上述补偿角度和上述硬件标定参数和预设视点进行仿真验证、分析和优化。
在一种可选的实施例中,上述通过预设眼球参数、上述补偿角度和上述硬件标定参数和预设视点进行仿真验证和优化,包括:
针对上述预设视点,根据上述眼球参数、上述补偿角度和上述硬件标定参数仿真计算重建光源成像点和重建瞳孔成像点;
根据上述重建光源成像点和上述重建瞳孔成像点,依据上述视线方向追踪方法确定预测视点;
根据上述预设视点和上述预测视点的比较值统计分析,并根据分析结果实施验证和优化。
具体的,根据需要仿真视线追踪的场景,预设眼球参数和几何位置关系。眼球参数包括但不限于:眼球中心三维坐标、眼球半径、角膜球中心三维坐标、角膜球半径、眼球中心到角膜球中心的距离、瞳孔中心三维坐标、虹膜中心三维坐标、虹膜半径、角膜折射率、晶状体折射率、眼球光轴、眼球视轴和Kappa角等用于建模眼球三维模型的参数。硬件标定参数包括但不限于:相机内参数、相机外参数、相机畸变参数、相机立体标定参数、相机三维坐标、光源三维坐标和目标对象的三维坐标等。通过上述预设参数根据设定视点仿真基于角膜瞳孔反射确定视线方向需要的图像数据,包括重建光源在角膜上的反射点三维坐标(重建光源反射点)、光源反射点在相机图像平面的投影坐标(重建光源成像点)以及瞳孔中心在相机图像平面的投影坐标(重建瞳孔成像点)。进一步地,仿真系统根据输入的实际参数,验证上述视线方向追踪方法的实现是否正确,测试输入参数添加扰动对视点误差的影响和寻找最优的上述多个光源、上述多个相机和目标对象配置方法。
在一种可选的的实施例中,针对预设视点,根据预设眼球参数、补偿角度和硬件标定参数仿真计算重建光源成像点和重建瞳孔成像点,包括:
根据预设眼球参数中的角膜中心和硬件标定参数确定光源角膜相机角度,基于光源角膜相机角度和预设眼球参数中的角膜曲率半径,结合球面反射原理确定重建光源反射点坐标,根据重建光源反射点坐标结合硬件标定参数计算重建光源成像点;
根据上述预设视点的坐标和上述预设眼球参数中的角膜中心确定第一视轴,基于上述第一视轴和上述补偿角度反推出第一光轴,依据上述第一光轴并结合上述预设眼球参数的瞳孔角膜中心距离确定重建瞳孔中心坐标,根据上述瞳孔中心坐标结合上述硬件标定参数计算上述重建瞳孔成像点。
图10是根据本发明实施例的一种可选的重建光源反射点方法的原理图。如图10所示,根据预设参数获取世界坐标系下的角膜中心C,相机光心O和光源中心l。光源照射的角膜区域所对应的角膜球,其中心在眼球光轴上,且半径Rc固定。根据球面反射原理,光源中心发出的光线,在角膜表面的反射点q发出全反射,反射光线经过相机中心o投影到图像平面。根据反射定理可知,以角膜中心为原点建立坐标系TCS,将/>作为新的X轴/>作为新的Z轴/> 作为新的Y轴/>则坐标系TCS相对于世界坐标系,存在/>T=-R·C,有/>将TCS转换到世界坐标系,/>将世界坐标系转换到TCS。接下来,使用MWT将C、O、l转换到TCS。计算TCS下的∠lCO,进而求得θ2,从而得出q=(Rc·cosθ2,Rc·sinθ2,0),最后使用MTW将q转换到世界坐标系,最终获得重建光源反射点的坐标。
仿真系统支持多个预设凝视点定位以辅助验证验证视线方向追踪方法的实现是否正确。具体的,以仿真系统中包含的目标对象是屏幕为例,屏幕中出现多个位置已知的凝视点,当仿真系统中仿真眼球凝视某个凝视点时候,根据凝视点的位置和预设眼球参数包含的角膜球中心坐标,可计算出视线视轴,接着根据预设的补偿角度推理出光轴,最后根据预设的瞳孔中心到角膜球中心的距离,重建瞳孔中心的坐标,
在一种可选的实施例中,预设视点可提前预设或随机生成于多个不同位置以仿真多种视线角度追踪。具体的,生成多个不同个位置预设点从而仿真眼球看向目标对象的不同位置时,视线追踪的误差情况。
在一种可选的实施例中,根据预设视点和预测视点进行统计分析,并根据分析结果实施验证和优化,包括:验证视线方向追踪方法的实现是否正确,测试输入参数添加扰动对视点误差的影响和确定多个光源、多个相机和目标对象配置方法。具体的,通过仿真计算。
在仿真过程中,并不涉及实际硬件参数和实际图像像素处理。通过预设视点,结合仿真系统包含的眼球参数和硬件标定参数计算重建光源反射点和重建瞳孔成像点,再根据上述基于角膜瞳孔反射的视线方向追踪方法确定预测视点,根据正向和反向验证视线方向追踪方法的实现的正确性,在该过程中,仿真系统中涉及多个变量,包括几何位置关系、眼球参数和视点等,任何一个变量的异常都会导致验证正确性失败,若得到验证失败的结果,进一步通过控制变量等方法筛查出异常变量,可提高视线追踪方法优化效率。
此外,上述仿真系统针对上述输入参数添加扰动后计算预测视点,通过比较上述预测视点与真实视点检验上述扰动对于视点误差的影响。
仿真系统可以对各个参数施加任意类型的扰动,以仿真所设计的视线追踪系统在实际使用中性能。通过将使用扰动后的参数所计算的视点预测值,同视点真值做比较,包括对欧式距离、角度误差、方差等做统计学分析,从而可以有针对性地指导后面的视线追踪系统设计和算法优化。如,对于相机标定参数施加扰动,可以检验标定误差对于系统的影响程度;对于光源反射点和瞳孔中心等关键点在图像像素施加扰动,可以检验关键点检测算法误差对于系统的影响程度。此外,通过仿真系统的大量实验和数据分析,用于寻找实现高精度视线追踪方法时最优的硬件配置方法,大幅减少了硬件成本的同时提高了优化视线追踪方法的效率。
在本实施例中还提供了一种视线方向追踪装置实施例,该装置用于实现上述实施例及优选实施方式,已经进行过说明的不再赘述。如以下所使用的,术语“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
参考图11,是根据本发明实施例的一种可选的视线方向追踪装置的结构框图。如图11所示,视线方向追踪装置1100包括采集模块1101、关键点确定模块1102、视线重建模块1103和视点确定模块1104。
下面对视线方向追踪装置1100包含的各个单元进行具体描述。
采集模块1101,用于使用多个光源对用户的眼睛提供角膜反射,使用多个相机捕获包含上述用户人脸的图像;
具体的,用户注视目标对象,使用多个光源向用户的眼睛发射红外光源,使用多个相机可以实时捕获包含瞳孔成像点和红外光源经角膜反射得到光源反射点位置的图像。使用多个相机可实时地捕获用户注视场景时人脸的图像,上述用户人脸的图像并非指只包括用户人脸区域的图像,捕获的图像中包含用户人脸区域的图像即可。为了提高后续特征检测和特征提取的精度,多个相机捕获用户人脸的图像时可重点采集用户人脸区域以获得包含清晰的人脸特征的人脸的图像。用户注视目标可以为显示设备,用于输出图像内容、文字内容的屏幕,例如屏幕、显示器和头戴式显示器等,也可以为非显示设备,例如挡风玻璃等。
在一种可选的实施例中,多个相机、多个光源和目标对象朝向用户,且多个相机的视野不包括多个光源和上述目标对象。实际视线跟踪系统中将上述多个光源,上述多个相机和上述目标对象配置在同一侧,其中,本发明并不限制相机、光源和目标对象的具体数目,以及设备之间具体排布方式和位置。上述视线追踪系统中多个光源、多个相机和目标对象两两之间位置关系可以预设,亦可以基于标定获得。
关键点确定模块1102,用于通过从上述包含人脸的图像获取的人眼特征集结合硬件标定参数,确定世界坐标系中的光源反射点坐标和瞳孔中心坐标;
对上述包含人脸的图像进行检测和特征提取,获得人眼特征集。在一种可选的实施例中,上述人眼特征集包括:光源成像点,瞳孔成像点。本实施例利用现有技术实现对中对于包含人脸的图像进行检测和特征特征提取,本申请对获得人眼特征集的具体技术不限制,可利用传统图像处理方法和基于深度学习的图像处理方法等。
在一种可选的实施例中,上述硬件标定参数包括:多个相机坐标系的内外参和几何位置关系,其中几何位置关系包括以下:多个光源坐标系和多个相机坐标系之间的第一位置关系,多个光源坐标系和目标对象坐标系之间的第二位置关系,多个相机坐标系和目标对象坐标系之间的第三位置关系。且当获取几何位置关系中的任意两种位置关系时,通过空间变换关系以及已知的两种位置关系可确定剩余一种位置关系。通过硬件标定参数,可获得任意像素坐标和世界坐标系的映射关系,任意硬件所在坐标系和世界坐标系的映射关系。
基于角膜瞳孔反射确定视线光轴方法中,根据人眼特征集确定世界坐标系中的光源反射点坐标和瞳孔中心坐标需要结合基于多个相机和多个光源在同一个世界坐标系下的位置,根据硬件标定参数中包含的映射关系可分别确定多个光源和多个相机在世界坐标系中的位置。
此外,光源反射点,是光源中心发出的光线在角膜表面的反射点。光源成像点,是光源反射点在被采集的包含用户人脸的图像中的成像。瞳孔中心,是瞳孔区域的中心点。瞳孔成像点,是瞳孔中心经角膜折射后的瞳孔折射点在被采集的包含用户人脸的图像中的成像。将人眼的角膜建模为球体,角膜曲率中心即为该球体的球体中心,角膜半径是角膜曲率中心到角膜球体的表面的距离,光轴方向是瞳孔中心与角膜曲率中心连线的方向。同样,人的眼球亦可以建模为眼球中心,眼球中心则为该眼球的球体中心,且眼球中心也位于光轴上。根据光学原理,结合光源的位置和光源成像点可获取角膜曲率半径。
光源成像点是光源反射点在被采集的包含用户人脸的图像中的成像,按照相机成像原理,结合采集图像的多个相机的位置坐标和内外参,确定在世界坐标系中的光源反射点的坐标。需要说明的是,光源可以为一个也可以为多个。当多个光源都工作时,每个光源都含有对应的光源反射点,则确定每个光源在世界坐标系中的坐标与方法与上述一致。同理,瞳孔成像点是瞳孔中心经角膜折射后的瞳孔折射点在被采集的包含用户人脸的图像中的成像,按照相机成像原理,结合采集图像的相机的位置坐标和内外参,确定在世界坐标系中的瞳孔中心的坐标。
在一种可选的实施例中,世界坐标系可选取以下任意一种:光源坐标系、相机坐标系、目标对象坐标系。即该世界坐标系可以为指定的任一光源、任一相机或目标对象的立体坐标系。
由上可知,通过硬件标定参数可获得任意像素坐标和世界坐标系的映射关系,任意硬件所在坐标系和世界坐标系的映射关系。人眼特征集为像素坐标系下的二维信息,通过上述任意像素坐标和世界坐标系的映射关系,可获得世界坐标系下光源反射点坐标和瞳孔中心坐标,且根据指定的世界坐标系不同,存在以下几种情况。
在一种可选的实施例中,上述关键点确定模块1102包括:
第一确定单元11021,用于若上述世界坐标系为上述光源坐标系,上述人眼特征集通过上述多个相机的内外参,结合上述第一位置关系,或结合上述第二位置关系和上述第三位置关系,确定上述光源坐标系中的上述光源反射点坐标和上述瞳孔中心坐标;
第二确定单元11022,用于若上述世界坐标系为上述相机坐标系,上述人眼特征集通过上述多个相机的内外参,确定上述多个相机坐标系中的上述光源反射点坐标和上述瞳孔中心坐标;
第三确定单元11023,用于若上述世界坐标系为上述目标对象坐标系,上述人眼特征集通过上述多个相机的内外参,结合上述第三位置关系,或结合上述第一位置关系和上述第二位置关系,确定上述目标对象坐标系中的上述光源反射点坐标和上述瞳孔中心坐标。
进一步的,本申请不限制确定多个相机的内外参的方法,可通过预设的出厂参数获取,亦可通过标定获取多个相机的内外参,本申请同样不限制标定多个相机内外参的方法,例如,采用标定板标定多个相机的内外参。
在一种可选的实施例中,上述关键点确定模块1102包括:标定单元11024,用于通过结合上述多个相机的内外参,利用平面镜和辅助相机中的至少一项传递标定信息标定获得上述几何位置关系。
由于,多个相机的视野不包括多个光源和上述目标对象,故利用平面镜和辅助相机中的至少一项传递标定信息,基于标定信息求取几何位置关系。具体的,标定过程旨在获得多个相机、多个光源和目标对象的几何位置关系,然而在本实施例中,由于反射光路存在的限制,视线跟踪系统包含的多个光源,多个相机和目标对象配置在同一侧,故相机无法直接观察目标对象,或者只能观察到光目标对象的一部分,本申请结合多个相机的内外参,利用平面镜和辅助相机中的至少一项传递标定信息标定获得几何位置关系。
在一种可选的实施例中,上述标定单元11024包括第一标定单元24100,用于通过结合上述多个相机的内外参,利用平面镜和辅助相机传递标定信息标定获得上述几何位置关系,其中,上述第一标定单元24100包括:
第一标定子单元24101,用于第一辅助相机获取上述平面镜以多个不同姿态反射的含有第一标记的上述目标对象的多张第一标记图像;
第二标定子单元24102,用于结合上述多个相机的内外参,根据多张上述第一标记图像基于正交约束计算上述第三位置关系;
第三标定子单元24103,用于第二辅助相机获取包含上述多个光源的第二标记图像,结合上述多个相机的内外参并基于上述第二标记图像获取上述第一位置关系,其中,上述第二辅助相机为立体视觉系统;
第四标定子单元24104,用于根据上述第一位置关系和上述第三位置关系确定上述第二位置关系。
通过上述单元可以获得具有高准确性和高稳健性的标定结果。基于平面镜对目标对象反射成像,根据建立的目标对象和其在平面镜中虚像的位姿关系基于正交约束求解确定系统位姿关系。由于需要多次改变平面镜的位置,相机需要采集多幅镜面反射的图像,并且平面镜的移动需要获取满足预设条件的,操作较为复杂,效率较低,此外上述镜面标定法中基于正交约束线性求解通常对噪声敏感,系统位置关系标定结果的精度与平面镜到相机的距离和平面镜转动角度均有关系。
在一种可选的实施例中,上述标定单元11024包括第二标定单元24200,用于通过结合上述多个相机的内外参,利用辅助相机传递标定信息标定获得上述几何位置关系,其中,上述第二标定单元包括:
第五标定子单元24201,用于第三辅助相机获取包含上述多个光源的第三标记图像,结合上述多个相机的内外参并基于上述第三标记图像获取上述第一位置关系,其中,上述第三辅助相机为立体视觉系统;
第六标定子单元24202,用于第四辅助相机设置为其视野包括上述多个相机和上述第三辅助相机,在上述第三辅助相机旁设置标定板,上述多个相机采集包含上述标定板区域的第四标记图像,同时上述第三辅助相机获取含有第五标记的上述目标对象的第五标记图像;
第七标定子单元24203,用于将上述第四辅助相机和上述多个相机的位置关系作为姿态转换桥梁,结合第三辅助相机和上述多个相机的内外参,根据上述第四标记图像和上述第五标记图像确定上述第三位置关系;
第八标定子单元24204,用于根据上述第一位置关系和上述第三位置关系确定上述第二位置关系。
上述实施例中为实现标定引入额外的辅助相机和一块标定板,将标定板置于多个相机的工作范围内,经辅助相机和标定板的坐标系转换,最终实现多个相机、多个光源和目标对象的位姿关系标定,这种方法原理简单、理论精度高,但在实际操作的过程中,由于多个相机和目标对象的位置关系已经固定,且多个相机无法拍摄目标对象,按照上述要求布置标定板和辅助相机时,辅助相机光轴与标定板法向量和显示器法向量之间夹角均过大,可能导致采集到的标定图案不理想,标记点提取误差较大,难以保证转换的精度。辅助相机的引入增加了成本,且使得标定过程变得复杂
在一种可选的实施例中,上述标定单元11024包括第三标定单元24300,用于通过结合上述多个相机的内外参,利用平面镜传递标定信息标定获得上述几何位置关系,其中,上述第三标定单元24300包括:
第九标定子单元24301,用于利用粘有不少于4个标记点的上述平面镜作为辅助,上述多个相机获取带有上述多个光源、上述目标对象且包含上述标记点的反射图像;
第十标定子单元24302,用于依据上述反射图像分别计算各个上述标记点、上述多个光源和上述目标对象在上述多个相机坐标系中的标记点坐标,镜面光源坐标和镜面目标对象坐标;
第十一标定子单元24303,用于根据所有上述标记点坐标重建镜面平面,并依据镜面反射原理,结合上述镜面光源坐标和上述镜面目标对象坐标确认上述第一位置关系和上述第三位置关系;
第十二标定子单元24304,用于根据上述第一位置关系和上述第三位置关系确定上述第二位置关系。
上述第三标定单元24300通过相机朝向镜面采集反射图像,上述图像包含投影在平面镜上全部相机、光源以及含有标记的显示器的像。依据包含全部标记点的反射图像确定各个上述标记点在上述多个相机坐标系中的标记点坐标,依据反射图像中包含镜面投影的光源和目标对象,确定光源虚像在多个相机坐标系中的镜面光源坐标和目标对象在多个相机坐标系中的镜面目标对象坐标。根据上述至少4个标记点坐标重建在多个相机坐标系下的镜面平面,依据镜面反射原理,镜面光源和实际光源在多个相机坐标系下对应。根据镜面光源坐标,结合镜面平面,确定第一位置关系,同理基于镜面目标对象坐标分别第三位置关系,根据第一位置关系和第三位置关系确定第二位置关系。标定方法三则仅依赖固定的平面镜,避免多次移动引起的操作复杂,未依赖辅助相机,避免了辅助相机采集的对象之间夹角范围过大等问题,且有效降低了标定流程和成本。
视线重建模块1103,用于根据上述光源反射点坐标和上述瞳孔中心坐标确定视线光轴,上述视线光轴通过补偿角度重建视线视轴;
在一种可选的实施例中,上述视线重建模块1103包括:
第一重建单元11031,用于根据上述光源反射点坐标和角膜曲率半径,确定角膜曲率中心的坐标;
第二重建单元11032,用于根据上述瞳孔中心坐标和上述角膜曲率中心的坐标,确定上述瞳孔中心与上述角膜曲率中心连线的上述视线光轴。
按照相机成像原理、光反射和折射原理,结合采集图像的相机的位置坐标和内外参和光源位置,可计算确定在世界坐标系中角膜曲率中心。光轴方向是瞳孔中心与角膜曲率中心的连线,将瞳孔中心的坐标和角膜曲率中心的坐标的简单计算,可以确定光轴方向,例如将瞳孔中心与角膜曲率中心的坐标相减取模后可确定光轴方向。
具体的,根据光学原理,针对每组采集相机,角膜曲率中心,瞳孔中心,与该相机成像平面上的瞳孔成像点和该相机的光心坐标共面。当存在两组共面关系,两个共面的面相交的交线的单位向量即为视线光轴,并且瞳孔中心与上述角膜曲率中心连线为视线光轴。基于上述平面几何关系和光学原理确定视线光轴。
基于角膜瞳孔反射的视线方向追踪装置,往往只能求出眼球光轴,根据人眼的实际构造,用户视线是由视轴决定的,并且视轴与光轴之间存在补偿角度,本申请并不考虑眼睛变形或者发生异常时可能会对用户的补偿角度带来影响。但在真实情况中,眼球和角膜并非球体,从而导致当凝视不同位置时,基于角膜瞳孔反射的视线估计方法重建眼球光轴时存在不同的重建误差。
人眼构造决定了视线光轴和视线视轴有一个补偿角度,称为Kappa角。假设视线光轴和视线视轴之间的补偿角度是个不随个体变化的常量,则使用Kappa角作为光轴到视轴之间的固定补偿,在此假设下,可以无需通过校正估算个体的Kappa补偿,本实施例可以不校准补偿角度,或较简单地通过很少的点校准补偿角度,从而更简易实现视线追踪。
在一种可选的实施例中,上述视线重建模块1103包括:
第三重建单元11033,用于上述用户凝视每一个预设的凝视点时获取一组样本图像;
第四重建单元11034,用于根据每组上述样本图像提取的样本特征确定第一补偿角度样本;
第五重建单元11035,用于遍历所有上述第一补偿角度样本,通过筛选和提纯获取上述补偿角度。
在一种可选的实施例中,第四重建单元11034包括:针对每组样本图像提取样本特征,并根据样本特征重建出第一视线光轴;基于预设的凝视点的真实坐标反推出第一视线视轴;根据第一视线光轴和上述第一视线视轴,获取第一补偿角度样本。
在一种可选的实施例中,第五重建单元11035包括:求取所有上述第一补偿角度样本的中心点,筛选并去除不在第一阈值范围内的样本;继续遍历筛选和提纯剩余所有样本直至当前中心点与上一次的中心点的差值低于第二阈值,从提纯后的所有样本中获取上述补偿角度。
具体的,预设的的位置已知,并且凝视点在空间中均匀分布。用户凝视已知位置的凝视点,依据采集的样本图像包含的样本特征,基于上述角膜瞳孔反射重建出视线光轴,结合瞳孔中心坐标和预设的凝视点恢复视线视轴,进一步获得该凝视点对应的补偿角度样本。基于预设凝视点获取补偿角度样本集过程中会存在误差,例如检测误差,本发明对补偿角度样本进行提纯,剔除异常样本,保留阈值范围中的高质量且合理分布的样本,一定程度上保证了补偿角度的准确度的同时保证最终补偿角度的适用性。本申请可以不校准,或较简单地通过很少的点校准,从而更简易实现视线追踪。
在实际的场景中,由于使用视线追踪系统的用户眼球参数各异,若采用固定的补偿角度,将影响视线方向追踪装置在更高精度视线追踪场景的应用。上述视线重建模块通过引入了动态补偿模型,在使用上述动态补偿模型以前针对不同用户分别进行个性化补偿标定,以追踪到更高准确度的视线方向。
在一种可选的实施例中,上述视线重建模块1103还包括:动态补偿单元11036,用于对采集的数据通过动态补偿模型确定预测视线观测点和真实视线观测点的偏差,根据上述偏差获取上述补偿角度。
具体的,在实际视线方向的追踪装置的应用中,将采集的数据中每一帧数据输入至已训练好的动态补偿模型以预测偏差,偏差即为预测视线观测点和真实视线观测点之间的偏差,并且根据上述偏差获取补偿角度。预测视线观测点可通过上述重建视线光轴的装置计算,此外,本发明实施例不限制动态补偿模型的类型,可以为神经网络、随机模型森林等。
进一步的,为实现针对不同用户个性化的补偿标定,上述动态补偿单元11036包括初始化子单元,以获得与当前用户契合的动态补偿模型。
在一种可选的实施例中,上述动态补偿单元11036包括初始化子单元36100,用于在使用上述动态补偿模型以前对上述动态补偿模型初始化,其中,上述初始化子单元36100包括:第一初始化子单元36110,用于上述用户凝视每一个预设初始点时获取一组初始样本图像;第二初始化子单元36120,用于针对每组上述初始样本图像提取初始样本特征,并根据上述初始样本特征通过小样本学习初始化获得与当前上述用户契合的上述动态补偿模型。
具体的,当前使用用户凝视预设的初始点,预设的初始点的位置已知并且在空间中均匀分布。针对每一个预设的初始点获取一组样本图像,采集的凝视点数目至少为3个。进一步的,针对每组初始样本图像提取初始样本特征,并初始样本特征通过小样本学习初始化获得与当前上述用户契合的上述动态补偿模型。针对样本图像提取的初始样本特征包括但不限于:角膜球中心的三维坐标、眼球光轴欧拉角、基于光轴计算的视线观测点、人脸偏转角等。通过小样本学习使动态补偿模型在较短时间内即可具备学习类别变化的情况下模型的泛化能力,利用当前使用用户的先验知识初始化后的动态补偿模型,对后续当前使用用户采集的数据提供好的搜索方向,减少了预测误差的同时提高了预测偏差的效率,本发明实施例不限小样本学习的方法,例如MAML方法。
在一种可选的实施例中,上述动态补偿单元11036包括训练子单元36200,用于训练上述动态补偿模型,其中,上述训练子单元36200包括:第一训练子单元36210,用于采集多个用户分别凝视预设校准点时的多组样本数据;第二训练子单元36220,用于对上述多组样本数据清洗,并对清洗后的上述多组样本提取训练样本特征;第三训练子单元,用于根据上述训练样本特征使用小样本学习训练初始动态补偿模型,获取训练后的上述动态补偿模型。
此外,初始动态补偿模型通过上述训练子单元36200获取已训练好的动态补偿模型,采集多组样本数据,每个测试者要求分别凝视目标对象上均匀分布的若干个点位预设校准点,并对应地采集同样数量的样本。获得初始样本数据后清洗样本数据,去除不满足视线估计算法需求的样本,如光源反射点不全、图片严重模糊等。进一步的,针对清洗提纯后的每组样本图像提取样本特征,根据训练样本特征使用小样本学习训练初始动态补偿模型,获取训练后的动态补偿模型。针对多组样本数据提取的训练样本特征包括但不限于:角膜球中心的三维坐标、眼球光轴欧拉角、基于光轴计算的视线观测点、人脸偏转角等。训练好的动态补偿模型输入采集的数据后可获取预测视线观测点和真实视线观测点之间具有高准确的偏差,从而得到高精度的补偿角度。
上述视线重建模块在实际视线方向追踪场景中,先初始化生成与当前用户契合的动态补偿模型,随后对于当前用户采集的数据使用生成的动态补偿模型预测偏差,进一步获得更好的补偿角度,最终重建出高精度的视线视轴。
视点确定模块1104,用于根据上述视线视轴和目标对象在上述世界坐标系的位置,确定在上述目标对象上的视点。
上述视线视轴位于世界坐标系中,若要确定视轴在上述目标对象上的视点,需确定目标对象上在世界坐标上的位置,上述几何位置关系可提供目标对象在世界坐标上的位置,进一步确定目标对象在世界坐标上的而平面。具体地,确定用户视点的问题,即转化为同一坐标系中视线视轴向量和目标对象所在平面的交点问题,本发明不限制解决交点问题的方法。
为了降低硬件制作成本和算法优化的效率,参考图12,提供了根据本发明实施例的另一种可选的视线方向追踪装置的结构框图。如图12所示,该视线方向追踪装置还包括仿真模块1105,用以仿真在各种硬件条件、眼球状态以及算法设计等因素下,视线追踪系统的追踪精度以及抗干扰能力。
在一种可选的实施例中,上述装置还包括仿真模块1105,用于通过预设眼球参数、上述补偿角度、上述硬件标定参数和预设视点进行仿真验证、分析和优化。
在一种可选的实施例中,上述仿真模块1105包括:第一仿真单元11051,用于针对上述预设视点,根据上述眼球参数、上述补偿角度和上述硬件标定参数仿真计算重建光源成像点和重建瞳孔成像点;第二仿真单元11052,用于根据上述重建光源成像点和上述重建瞳孔成像点,依据上述视线方向追踪方法确定预测视点;第三仿真单元11053,用于根据上述预设视点和上述预测视点的比较值统计分析,并根据分析结果实施验证和优化。
在一种可选的实施例中,上述第一仿真单元11051包括:
第一仿真子单元51100,用于根据上述预设眼球参数中的角膜中心和上述硬件标定参数确定光源角膜相机角度,基于上述光源角膜相机角度和上述预设眼球参数中的角膜曲率半径,结合球面反射原理确定重建光源反射点坐标,根据上述重建光源反射点坐标结合上述硬件标定参数计算上述重建光源成像点;
第二仿真子单元51200,用于根据上述预设视点的坐标和上述预设眼球参数中的角膜中心确定第一视轴,基于上述第一视轴和上述补偿角度反推出第一光轴,依据上述第一光轴并结合上述预设眼球参数的瞳孔角膜中心距离确定重建瞳孔中心坐标,根据上述瞳孔中心坐标结合上述硬件标定参数计算上述重建瞳孔成像点。
具体的,根据需要仿真视线追踪的场景,预设眼球参数和几何位置关系。眼球参数包括但不限于:眼球中心三维坐标、眼球半径、角膜球中心三维坐标、角膜球半径、眼球中心到角膜球中心的距离、瞳孔中心三维坐标、虹膜中心三维坐标、虹膜半径、角膜折射率、晶状体折射率、眼球光轴、眼球视轴和Kappa角等用于建模眼球三维模型的参数。硬件标定参数包括但不限于:相机内参数、相机外参数、相机畸变参数、相机立体标定参数、相机三维坐标、光源三维坐标和目标对象的三维坐标等。通过上述预设参数根据设定视点仿真基于角膜瞳孔反射确定视线方向需要的图像数据,包括重建光源在角膜上的反射点三维坐标(重建光源反射点)、光源反射点在相机图像平面的投影坐标(重建光源成像点)以及瞳孔中心在相机图像平面的投影坐标(重建瞳孔成像点)。进一步地,仿真系统根据输入的实际参数,验证视线方向追踪方法的实现是否正确,测试输入参数添加扰动对视点误差的影响和寻找最优的上述多个光源、上述多个相机和目标对象配置方法。
仿真模块1105支持多个预设凝视点定位以辅助验证验证视线方向追踪方法的实现是否正确。具体的,以仿真系统中包含的目标对象是屏幕为例,屏幕中出现多个位置已知的凝视点,当仿真模块1105中仿真眼球凝视某个凝视点时候,根据凝视点的位置和预设眼球参数包含的角膜球中心坐标,可计算出视线视轴,接着根据预设的补偿角度推理出光轴,最后根据预设的瞳孔中心到角膜球中心的距离,重建瞳孔中心的坐标,
在一种可选的实施例中,预设视点可提前预设或随机生成于多个不同位置以仿真多种视线角度追踪。具体的,生成多个不同个位置预设点从而仿真眼球看向目标对象的不同位置时,视线追踪的误差情况。
在一种可选的实施例中,上述第三仿真单元11053包括:第三仿真子单元,用于验证上述视线方向追踪方法的实现是否正确,测试添加扰动对视点误差的影响和确定上述多个光源、上述多个相机和目标对象配置方法。
在仿真过程中,并不涉及实际硬件参数和实际图像像素处理。通过预设视点,结合仿真模块1105包含的眼球参数和硬件标定参数计算重建光源反射点和重建瞳孔成像点,再根据上述基于角膜瞳孔反射的视线方向追踪方法确定预测视点,根据正向和反向验证视线方向追踪方法的实现的正确性,在该过程中,仿真模块1105中涉及多个变量,包括几何位置关系、眼球参数和视点等,任何一个变量的异常都会导致验证正确性失败,若得到验证失败的结果,进一步通过控制变量等方法筛查出异常变量,可提高视线追踪方法优化效率。
此外,上述仿真模块1105针对上述输入参数添加扰动后计算预测视点,通过比较上述预测视点与真实视点检验上述扰动对于视点误差的影响。仿真模块1105可以对各个参数施加任意类型的扰动,以仿真所设计的视线追踪系统在实际使用中性能。通过将使用扰动后的参数所计算的视点预测值,同视点真值做比较,包括对欧式距离、角度误差、方差等做统计学分析,从而可以有针对性地指导后面的视线追踪系统设计和算法优化。如,对于相机标定参数施加扰动,可以检验标定误差对于系统的影响程度;对于光源反射点和瞳孔中心等关键点在图像像素施加扰动,可以检验关键点检测算法误差对于系统的影响程度。此外,通过仿真模块1105的大量实验和数据分析,用于寻找实现高精度视线方向追踪装置时最优的硬件配置方法,大幅减少了硬件成本的同时提高了优化视线追踪装置的效率。
根据本发明实施例的另一方面,还提供了一种电子设备,包括:处理器;以及存储器,用于存储处理器的可执行指令;其中,处理器配置为经由执行可执行指令来执行任意一项的视线方向追踪方法。
根据本发明实施例的另一方面,还提供了一种存储介质,存储介质包括存储的程序,其中,在程序运行时控制存储介质所在设备执行任意一项的视线方向追踪方法。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的技术内容,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如上述单元的划分,可以为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系数,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
上述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
上述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例上述方法的全部或部分步骤。而前述的存储介质包括:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (37)
1.一种视线方向追踪方法,其特征在于,包括:
使用多个光源对用户的眼睛提供角膜反射,使用多个相机捕获包含所述用户人脸的图像;
通过从包含人脸的图像获取的人眼特征集结合硬件标定参数,确定世界坐标系中的光源反射点坐标和瞳孔中心坐标,所述世界坐标系包括光源坐标系;
所述通过从包含人脸的图像获取的人眼特征集结合硬件标定参数,确定世界坐标系中的光源反射点坐标和瞳孔中心坐标包括:若所述世界坐标系为所述光源坐标系,所述人眼特征集通过所述多个相机的内外参,结合第一位置关系,或结合第二位置关系和第三位置关系,确定所述光源坐标系中的所述光源反射点坐标和所述瞳孔中心坐标,其中,所述硬件标定参数包括:多个相机坐标系的内外参和几何位置关系,其中所述几何位置关系包括以下:多个光源坐标系和所述多个相机坐标系之间的第一位置关系,所述多个光源坐标系和目标对象坐标系之间的第二位置关系,所述多个相机坐标系和所述目标对象坐标系之间的第三位置关系;
根据所述光源反射点坐标和所述瞳孔中心坐标确定视线光轴,所述视线光轴通过补偿角度重建视线视轴;
根据所述视线视轴和目标对象在所述世界坐标系的位置,确定在所述目标对象上的视点。
2.根据权利要求1所述的视线方向追踪方法,其特征在于,所述人眼特征集包括:光源成像点,瞳孔成像点。
3.根据权利要求1所述的视线方向追踪方法,其特征在于,所述方法还通过预设眼球参数、所述补偿角度、所述硬件标定参数和预设视点进行仿真验证、分析和优化。
4.根据权利要求1所述的视线方向追踪方法,其特征在于,所述多个相机、所述多个光源和所述目标对象朝向用户,且所述多个相机的视野不包括所述多个光源和所述目标对象。
5.根据权利要求1所述的视线方向追踪方法,其特征在于,所述几何位置关系通过结合所述多个相机的内外参,利用平面镜和辅助相机中的至少一项传递标定信息标定获得。
6.根据权利要求1所述的视线方向追踪方法,其特征在于,所述世界坐标系还包括相机坐标系、目标对象坐标系;
通过从包含人脸的图像获取的人眼特征集结合硬件标定参数,确定世界坐标系中的光源反射点坐标和瞳孔中心坐标,还包括:
若所述世界坐标系为所述相机坐标系,所述人眼特征集通过所述多个相机的内外参,确定所述多个相机坐标系中的所述光源反射点坐标和所述瞳孔中心坐标;
若所述世界坐标系为所述目标对象坐标系,所述人眼特征集通过所述多个相机的内外参,结合所述第三位置关系,或结合所述第一位置关系和所述第二位置关系,确定所述目标对象坐标系中的所述光源反射点坐标和所述瞳孔中心坐标。
7.根据权利要求1所述的视线方向追踪方法,其特征在于,根据所述光源反射点坐标和所述瞳孔中心坐标确定视线光轴,包括:
根据所述光源反射点坐标和角膜曲率半径,确定角膜曲率中心的坐标;
根据所述瞳孔中心坐标和所述角膜曲率中心的坐标,确定所述瞳孔中心与所述角膜曲率中心连线的所述视线光轴。
8.根据权利要求1所述的视线方向追踪方法,其特征在于,所述几何位置关系通过结合所述多个相机的内外参,利用平面镜和辅助相机传递标定信息标定获得,包括:
第一辅助相机获取所述平面镜以多个不同姿态反射的含有第一标记的所述目标对象的多张第一标记图像;
结合所述多个相机的内外参,根据多张所述第一标记图像基于正交约束计算所述第三位置关系;
第二辅助相机获取包含所述多个光源的第二标记图像,结合所述多个相机的内外参并基于所述第二标记图像获取所述第一位置关系,其中,所述第二辅助相机为立体视觉系统;
根据所述第一位置关系和所述第三位置关系确定所述第二位置关系。
9.根据权利要求1所述的视线方向追踪方法,其特征在于,所述几何位置关系通过结合所述多个相机的内外参,利用辅助相机传递标定信息标定获得,包括:
第三辅助相机获取包含所述多个光源的第三标记图像,结合所述多个相机的内外参并基于所述第三标记图像获取所述第一位置关系,其中,所述第三辅助相机为立体视觉系统;
第四辅助相机设置为其视野包括所述多个相机和所述第三辅助相机,在所述第三辅助相机旁设置标定板,所述多个相机采集包含所述标定板区域的第四标记图像,同时所述第三辅助相机获取含有第五标记的所述目标对象的第五标记图像;
将所述第四辅助相机和所述多个相机的位置关系作为姿态转换桥梁,结合第三辅助相机和所述多个相机的内外参,根据所述第四标记图像和所述第五标记图像确定所述第三位置关系;
根据所述第一位置关系和所述第三位置关系确定所述第二位置关系。
10.根据权利要求1所述的视线方向追踪方法,其特征在于,所述几何位置关系通过结合所述多个相机的内外参,利用平面镜传递标定信息标定获得,包括:
利用粘有不少于4个标记点的所述平面镜作为辅助,所述多个相机获取带有所述多个光源、所述目标对象且包含所述标记点的反射图像;
依据所述反射图像分别计算各个所述标记点、所述多个光源和所述目标对象在所述多个相机坐标系中的标记点坐标,镜面光源坐标和镜面目标对象坐标;
根据所有所述标记点坐标重建镜面平面,并依据镜面反射原理,结合所述镜面光源坐标和所述镜面目标对象坐标确认所述第一位置关系和所述第三位置关系;根据所述第一位置关系和所述第三位置关系确定所述第二位置关系。
11.根据权利要求1所述的视线方向追踪方法,其特征在于,所述视线光轴通过补偿角度重建视线视轴之前,所述方法还包括:
所述用户凝视每一个预设的凝视点时获取一组样本图像;
根据每组所述样本图像提取的样本特征确定第一补偿角度样本;
遍历所有所述第一补偿角度样本,通过筛选和提纯获取所述补偿角度。
12.根据权利要求11所述的视线方向追踪方法,其特征在于,根据每组所述样本图像提取的样本特征确定第一补偿角度样本,包括:
针对每组所述样本图像提取样本特征,并根据所述样本特征重建出第一视线光轴;
基于所述预设的凝视点的真实坐标反推出第一视线视轴;
根据所述第一视线光轴和所述第一视线视轴,获取所述第一补偿角度样本。
13.根据权利要求11所述的视线方向追踪方法,其特征在于,遍历所有所述第一补偿角度样本,通过筛选和提纯获取所述补偿角度,包括:
求取所有所述第一补偿角度样本的中心点,筛选并去除不在第一阈值范围内的样本;
继续遍历筛选和提纯剩余所有样本直至当前中心点与上一次的中心点的差值低于第二阈值,从提纯后的所有样本中获取所述补偿角度。
14.根据权利要求1所述的视线方向追踪方法,其特征在于,所述视线光轴通过补偿角度重建视线视轴之前,所述方法还包括:
对采集的数据通过动态补偿模型确定预测视线观测点和真实视线观测点的偏差,根据所述偏差获取所述补偿角度。
15.根据权利要求14所述的视线方向追踪方法,其特征在于,在使用所述动态补偿模型以前对所述动态补偿模型初始化,包括:
所述用户凝视每一个预设初始点时获取一组初始样本图像;
针对每组所述初始样本图像提取初始样本特征,并根据所述初始样本特征通过小样本学习初始化获得与当前所述用户契合的所述动态补偿模型。
16.根据权利要求14所述的视线方向追踪方法,其特征在于,训练所述动态补偿模型包括:
采集多个用户分别凝视预设校准点时的多组样本数据;
对所述多组样本数据清洗,并对清洗后的所述多组样本提取训练样本特征;
根据所述训练样本特征使用小样本学习训练初始动态补偿模型,获取训练后的所述动态补偿模型。
17.根据权利要求3所述的视线方向追踪方法,其特征在于,所述通过预设眼球参数、所述补偿角度、所述硬件标定参数和预设视点进行仿真验证、分析和优化,包括:
针对所述预设视点,根据所述眼球参数、所述补偿角度和所述硬件标定参数仿真计算重建光源成像点和重建瞳孔成像点;
根据所述重建光源成像点和所述重建瞳孔成像点,依据所述视线方向追踪方法确定预测视点;
根据所述预设视点和所述预测视点的比较值统计分析,并根据分析结果实施验证和优化。
18.根据权利要求17所述的视线方向追踪方法,其特征在于,针对所述预设视点,根据所述预设眼球参数、所述补偿角度和所述硬件标定参数仿真计算重建光源成像点和重建瞳孔成像点,包括:
根据所述预设眼球参数中的角膜中心和所述硬件标定参数确定光源角膜相机角度,基于所述光源角膜相机角度和所述预设眼球参数中的角膜曲率半径,结合球面反射原理确定重建光源反射点坐标,根据所述重建光源反射点坐标结合所述硬件标定参数计算所述重建光源成像点;
根据所述预设视点的坐标和所述预设眼球参数中的角膜中心确定第一视轴,基于所述第一视轴和所述补偿角度反推出第一光轴,依据所述第一光轴并结合所述预设眼球参数的瞳孔角膜中心距离确定重建瞳孔中心坐标,根据所述瞳孔中心坐标结合所述硬件标定参数计算所述重建瞳孔成像点。
19.根据权利要求17所述的视线方向追踪方法,其特征在于,所述预设视点可提前预设或随机生成于多个不同位置以仿真多种视线角度追踪。
20.根据权利要求17所述的视线方向追踪方法,其特征在于,根据所述预设视点和所述预测视点进行统计分析,并根据分析结果实施验证和优化,包括:
验证所述视线方向追踪方法的实现是否正确,测试添加扰动对视点误差的影响和确定所述多个光源、所述多个相机和目标对象配置方法。
21.一种视线方向追踪装置,其特征在于,包括:
采集模块,用于使用多个光源对用户的眼睛提供角膜反射,使用多个相机捕获包含所述用户人脸的图像;
关键点确定模块,用于通过从包含人脸的图像获取的人眼特征集结合硬件标定参数,确定世界坐标系中的光源反射点坐标和瞳孔中心坐标,所述世界坐标系包括光源坐标系,所述关键点确定模块包括第一确定单元,用于若所述世界坐标系为所述光源坐标系,所述人眼特征集通过所述多个相机的内外参,结合第一位置关系,或结合第二位置关系和第三位置关系,确定所述光源坐标系中的所述光源反射点坐标和所述瞳孔中心坐标,其中,所述硬件标定参数包括:多个相机坐标系的内外参和几何位置关系,其中所述几何位置关系包括以下:多个光源坐标系和所述多个相机坐标系之间的第一位置关系,所述多个光源坐标系和目标对象坐标系之间的第二位置关系,所述多个相机坐标系和所述目标对象坐标系之间的第三位置关系;
视线重建模块,用于根据所述光源反射点坐标和所述瞳孔中心坐标确定视线光轴,所述视线光轴通过补偿角度重建视线视轴;
视点确定模块,用于根据所述视线视轴和目标对象在所述世界坐标系的位置,确定在所述目标对象上的视点。
22.根据权利要求21所述的装置,其特征在于,所述装置还包括仿真模块,用于通过预设眼球参数、所述补偿角度、所述硬件标定参数和预设视点进行仿真验证、分析和优化。
23.根据权利要求21所述的装置,其特征在于,所述关键点确定模块包括:
标定单元,用于通过结合所述多个相机的内外参,利用平面镜和辅助相机中的至少一项传递标定信息标定获得所述几何位置关系。
24.根据权利要求21所述的装置,其特征在于,所述世界坐标系包括光源坐标系;相机坐标系、目标对象坐标系;
所述关键点确定模块还包括:
第二确定单元,用于若所述世界坐标系为所述相机坐标系,所述人眼特征集通过所述多个相机的内外参,确定所述多个相机坐标系中的所述光源反射点坐标和所述瞳孔中心坐标;
第三确定单元,用于若所述世界坐标系为所述目标对象坐标系,所述人眼特征集通过所述多个相机的内外参,结合所述第三位置关系,或结合所述第一位置关系和所述第二位置关系,确定所述目标对象坐标系中的所述光源反射点坐标和所述瞳孔中心坐标。
25.根据权利要求21所述的装置,其特征在于,所述视线重建模块包括:
第一重建单元,用于根据所述光源反射点坐标和角膜曲率半径,确定角膜曲率中心的坐标;
第二重建单元,用于根据所述瞳孔中心坐标和所述角膜曲率中心的坐标,确定所述瞳孔中心与所述角膜曲率中心连线的所述视线光轴。
26.根据权利要求23所述的装置,其特征在于,所述标定单元包括第一标定单元,用于通过结合所述多个相机的内外参,利用平面镜和辅助相机传递标定信息标定获得所述几何位置关系,其中,所述第一标定单元包括:
第一标定子单元,用于第一辅助相机获取所述平面镜以多个不同姿态反射的含有第一标记的所述目标对象的多张第一标记图像;
第二标定子单元,用于结合所述多个相机的内外参,根据多张所述第一标记图像基于正交约束计算所述第三位置关系;
第三标定子单元,用于第二辅助相机获取包含所述多个光源的第二标记图像,结合所述多个相机的内外参并基于所述第二标记图像获取所述第一位置关系,其中,所述第二辅助相机为立体视觉系统;
第四标定子单元,用于根据所述第一位置关系和所述第三位置关系确定所述第二位置关系。
27.根据权利要求23所述的装置,其特征在于,所述标定单元包括第二标定单元,用于通过结合所述多个相机的内外参,利用辅助相机传递标定信息标定获得所述几何位置关系,其中,所述第二标定单元包括:
第五标定子单元,用于第三辅助相机获取包含所述多个光源的第三标记图像,结合所述多个相机的内外参并基于所述第三标记图像获取所述第一位置关系,其中,所述第三辅助相机为立体视觉系统;
第六标定子单元,用于第四辅助相机设置为其视野包括所述多个相机和所述第三辅助相机,在所述第三辅助相机旁设置标定板,所述多个相机采集包含所述标定板区域的第四标记图像,同时所述第三辅助相机获取含有第五标记的所述目标对象的第五标记图像;
第七标定子单元,用于将所述第四辅助相机和所述多个相机的位置关系作为姿态转换桥梁,结合第三辅助相机和所述多个相机的内外参,根据所述第四标记图像和所述第五标记图像确定所述第三位置关系;
第八标定子单元,用于根据所述第一位置关系和所述第三位置关系确定所述第二位置关系。
28.根据权利要求23所述的装置,其特征在于,所述标定单元包括第三标定单元,用于通过结合所述多个相机的内外参,利用平面镜传递标定信息标定获得所述几何位置关系,其中,所述第三标定单元包括:
第九标定子单元,用于利用粘有不少于4个标记点的所述平面镜作为辅助,所述多个相机获取带有所述多个光源、所述目标对象且包含所述标记点的反射图像;
第十标定子单元,用于依据所述反射图像分别计算各个所述标记点、所述多个光源和所述目标对象在所述多个相机坐标系中的标记点坐标,镜面光源坐标和镜面目标对象坐标;
第十一标定子单元,用于根据所有所述标记点坐标重建镜面平面,并依据镜面反射原理,结合所述镜面光源坐标和所述镜面目标对象坐标确认所述第一位置关系和所述第三位置关系;
第十二标定子单元,用于根据所述第一位置关系和所述第三位置关系确定所述第二位置关系。
29.根据权利要求21所述的装置,其特征在于,所述视线重建模块包括:
第三重建单元,用于所述用户凝视每一个预设的凝视点时获取一组样本图像;
第四重建单元,用于根据每组所述样本图像提取的样本特征确定第一补偿角度样本;
第五重建单元,用于遍历所有所述第一补偿角度样本,通过筛选和提纯获取所述补偿角度。
30.根据权利要求21所述的装置,其特征在于,所述视线重建模块还包括:
动态补偿单元,用于对采集的数据通过动态补偿模型确定预测视线观测点和真实视线观测点的偏差,根据所述偏差获取所述补偿角度。
31.根据权利要求30所述的装置,其特征在于,所述动态补偿单元包括初始化子单元,用于在使用所述动态补偿模型以前对所述动态补偿模型初始化,其中,所述初始化子单元包括:
第一初始化子单元,用于所述用户凝视每一个预设初始点时获取一组初始样本图像;
第二初始化子单元,用于针对每组所述初始样本图像提取初始样本特征,并根据所述初始样本特征通过小样本学习初始化获得与当前所述用户契合的所述动态补偿模型。
32.根据权利要求30所述的装置,其特征在于,所述动态补偿单元包括训练子单元,用于训练所述动态补偿模型,其中,所述训练子单元包括:
第一训练子单元,用于采集多个用户分别凝视预设校准点时的多组样本数据;
第二训练子单元,用于对所述多组样本数据清洗,并对清洗后的所述多组样本提取训练样本特征;
第三训练子单元,用于根据所述训练样本特征使用小样本学习训练初始动态补偿模型,获取训练后的所述动态补偿模型。
33.根据权利要求22所述的装置,其特征在于,所述仿真模块包括:
第一仿真单元,用于针对所述预设视点,根据所述眼球参数、所述补偿角度和所述硬件标定参数仿真计算重建光源成像点和重建瞳孔成像点;
第二仿真单元,用于根据所述重建光源成像点和所述重建瞳孔成像点,依据视线方向追踪方法确定预测视点;
第三仿真单元,用于根据所述预设视点和所述预测视点的比较值统计分析,并根据分析结果实施验证和优化。
34.根据权利要求33所述的装置,其特征在于,所述第一仿真单元包括:
第一仿真子单元,用于根据所述预设眼球参数中的角膜中心和所述硬件标定参数确定光源角膜相机角度,基于所述光源角膜相机角度和所述预设眼球参数中的角膜曲率半径,结合球面反射原理确定重建光源反射点坐标,根据所述重建光源反射点坐标结合所述硬件标定参数计算所述重建光源成像点;
第二仿真子单元,用于根据所述预设视点的坐标和所述预设眼球参数中的角膜中心确定第一视轴,基于所述第一视轴和所述补偿角度反推出第一光轴,依据所述第一光轴并结合所述预设眼球参数的瞳孔角膜中心距离确定重建瞳孔中心坐标,根据所述瞳孔中心坐标结合所述硬件标定参数计算所述重建瞳孔成像点。
35.根据权利要求33所述的装置,其特征在于,所述第三仿真单元包括:
第三仿真子单元,用于验证所述视线方向追踪方法的实现是否正确,测试添加扰动对视点误差的影响和确定所述多个光源、所述多个相机和目标对象配置方法。
36.一种存储介质,其特征在于,所述存储介质包括存储的程序,其中,在所述程序运行时控制所述存储介质所在设备执行权利要求1至20中任意一项所述的视线方向追踪方法。
37.一种电子设备,其特征在于,包括:
处理器;以及
存储器,用于存储所述处理器的可执行指令;
其中,所述处理器配置为经由执行所述可执行指令来执行权利要求1至20中任意一项所述的视线方向追踪方法。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110897215.8A CN113808160B (zh) | 2021-08-05 | 2021-08-05 | 视线方向追踪方法和装置 |
EP22852052.4A EP4383193A1 (en) | 2021-08-05 | 2022-07-29 | Line-of-sight direction tracking method and apparatus |
KR1020247007410A KR20240074755A (ko) | 2021-08-05 | 2022-07-29 | 시선 방향 추적 방법 및 장치 |
PCT/CN2022/108896 WO2023011339A1 (zh) | 2021-08-05 | 2022-07-29 | 视线方向追踪方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110897215.8A CN113808160B (zh) | 2021-08-05 | 2021-08-05 | 视线方向追踪方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113808160A CN113808160A (zh) | 2021-12-17 |
CN113808160B true CN113808160B (zh) | 2024-01-16 |
Family
ID=78942947
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110897215.8A Active CN113808160B (zh) | 2021-08-05 | 2021-08-05 | 视线方向追踪方法和装置 |
Country Status (4)
Country | Link |
---|---|
EP (1) | EP4383193A1 (zh) |
KR (1) | KR20240074755A (zh) |
CN (1) | CN113808160B (zh) |
WO (1) | WO2023011339A1 (zh) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113808160B (zh) * | 2021-08-05 | 2024-01-16 | 虹软科技股份有限公司 | 视线方向追踪方法和装置 |
CN114356482B (zh) * | 2021-12-30 | 2023-12-12 | 业成科技(成都)有限公司 | 利用视线落点与人机界面互动的方法 |
CN114500839B (zh) * | 2022-01-25 | 2024-06-07 | 青岛根尖智能科技有限公司 | 一种基于注意力跟踪机制的视觉云台控制方法及系统 |
CN114862990B (zh) * | 2022-04-22 | 2024-04-30 | 网易(杭州)网络有限公司 | 一种镜像参数获取方法、装置、电子设备及存储介质 |
CN117666706A (zh) * | 2022-08-22 | 2024-03-08 | 北京七鑫易维信息技术有限公司 | 一种电子设备 |
CN115933172B (zh) * | 2022-11-29 | 2023-09-12 | 大连海事大学 | 一种基于偏振多光谱成像的人眼视线追踪装置及方法 |
CN117635600B (zh) * | 2023-12-26 | 2024-05-17 | 北京极溯光学科技有限公司 | 视网膜中央凹的位置确定方法、装置、设备及存储介质 |
CN117648037B (zh) * | 2024-01-29 | 2024-04-19 | 北京未尔锐创科技有限公司 | 一种目标视线跟踪方法及系统 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014194617A (ja) * | 2013-03-28 | 2014-10-09 | Advanced Telecommunication Research Institute International | 視線方向推定装置、視線方向推定装置および視線方向推定プログラム |
CN106547341A (zh) * | 2015-09-21 | 2017-03-29 | 现代自动车株式会社 | 注视跟踪器及其跟踪注视的方法 |
JP2017213191A (ja) * | 2016-05-31 | 2017-12-07 | 富士通株式会社 | 視線検出装置、視線検出方法、及び視線検出プログラム |
CN107767421A (zh) * | 2017-09-01 | 2018-03-06 | 北京七鑫易维信息技术有限公司 | 视线追踪设备中光斑光源匹配方法和装置 |
EP3363346A2 (de) * | 2017-01-27 | 2018-08-22 | Carl Zeiss Vision International GmbH | Computerimplementiertes verfahren zur detektion eines hornhautscheitels |
CN108985210A (zh) * | 2018-07-06 | 2018-12-11 | 常州大学 | 一种基于人眼几何特征的视线追踪方法及系统 |
CN109696954A (zh) * | 2017-10-20 | 2019-04-30 | 中国科学院计算技术研究所 | 视线追踪方法、装置、设备和存储介质 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9329683B2 (en) * | 2010-12-08 | 2016-05-03 | National University Corporation Shizuoka University | Method for detecting point of gaze and device for detecting point of gaze |
CN107358217B (zh) * | 2017-07-21 | 2020-01-07 | 北京七鑫易维信息技术有限公司 | 一种视线估计方法及装置 |
CN113808160B (zh) * | 2021-08-05 | 2024-01-16 | 虹软科技股份有限公司 | 视线方向追踪方法和装置 |
-
2021
- 2021-08-05 CN CN202110897215.8A patent/CN113808160B/zh active Active
-
2022
- 2022-07-29 WO PCT/CN2022/108896 patent/WO2023011339A1/zh unknown
- 2022-07-29 EP EP22852052.4A patent/EP4383193A1/en active Pending
- 2022-07-29 KR KR1020247007410A patent/KR20240074755A/ko unknown
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014194617A (ja) * | 2013-03-28 | 2014-10-09 | Advanced Telecommunication Research Institute International | 視線方向推定装置、視線方向推定装置および視線方向推定プログラム |
CN106547341A (zh) * | 2015-09-21 | 2017-03-29 | 现代自动车株式会社 | 注视跟踪器及其跟踪注视的方法 |
JP2017213191A (ja) * | 2016-05-31 | 2017-12-07 | 富士通株式会社 | 視線検出装置、視線検出方法、及び視線検出プログラム |
EP3363346A2 (de) * | 2017-01-27 | 2018-08-22 | Carl Zeiss Vision International GmbH | Computerimplementiertes verfahren zur detektion eines hornhautscheitels |
CN107767421A (zh) * | 2017-09-01 | 2018-03-06 | 北京七鑫易维信息技术有限公司 | 视线追踪设备中光斑光源匹配方法和装置 |
CN109696954A (zh) * | 2017-10-20 | 2019-04-30 | 中国科学院计算技术研究所 | 视线追踪方法、装置、设备和存储介质 |
CN108985210A (zh) * | 2018-07-06 | 2018-12-11 | 常州大学 | 一种基于人眼几何特征的视线追踪方法及系统 |
Non-Patent Citations (2)
Title |
---|
A Novel Multi-Camera Global Calibration Method for Gaze Tracking System;Jiannan Chi et al.;《IEEE TRANSACTIONS ON INSTRUMENTATION AND MEASUREMENT》;第2093-2104页 * |
基于头戴式眼动仪的视线跟踪算法研究;周晓荣;《中国优秀硕士学位论文全文数据库信息科技辑》;第1-54页 * |
Also Published As
Publication number | Publication date |
---|---|
KR20240074755A (ko) | 2024-05-28 |
CN113808160A (zh) | 2021-12-17 |
EP4383193A1 (en) | 2024-06-12 |
WO2023011339A1 (zh) | 2023-02-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113808160B (zh) | 视线方向追踪方法和装置 | |
JP6902075B2 (ja) | 構造化光を用いた視線追跡 | |
CN107004275B (zh) | 确定实物至少一部分的3d重构件空间坐标的方法和系统 | |
US9628697B2 (en) | Method and device for measuring an interpupillary distance | |
Noureddin et al. | A non-contact device for tracking gaze in a human computer interface | |
EP3339943A1 (en) | Method and system for obtaining optometric parameters for fitting eyeglasses | |
Brolly et al. | Implicit calibration of a remote gaze tracker | |
Hennessey et al. | Noncontact binocular eye-gaze tracking for point-of-gaze estimation in three dimensions | |
WO2015190204A1 (ja) | 瞳孔検出システム、視線検出システム、瞳孔検出方法、および瞳孔検出プログラム | |
JP4692526B2 (ja) | 視線方向の推定装置、視線方向の推定方法およびコンピュータに当該視線方向の推定方法を実行させるためのプログラム | |
WO2020110121A1 (en) | Systems and methods for anatomy-constrained gaze estimation | |
JP2016173313A (ja) | 視線方向推定システム、視線方向推定方法及び視線方向推定プログラム | |
US11181978B2 (en) | System and method for gaze estimation | |
JP7168953B2 (ja) | 自動キャリブレーションを行う視線計測装置、視線計測方法および視線計測プログラム | |
CN108259887B (zh) | 注视点校准方法及装置、注视点标定方法及装置 | |
WO2009043927A1 (en) | Apparatus for acquiring and processing information relating to human eye movements | |
WO2020157746A1 (en) | Eye tracking device and a method thereof | |
JP2018099174A (ja) | 瞳孔検出装置及び瞳孔検出方法 | |
CN108537103B (zh) | 基于瞳孔轴测量的活体人脸检测方法及其设备 | |
CN108235778B (zh) | 基于云端计算的标定方法、装置、电子设备和计算机程序产品 | |
CN109828663A (zh) | 瞄准区域的确定方法及装置、瞄准目标物的操作方法 | |
CN113260299A (zh) | 用于眼睛追踪的系统和方法 | |
CN112183160A (zh) | 视线估计方法及装置 | |
JP2018101211A (ja) | 車載器 | |
CN116382473A (zh) | 一种基于自适应时序分析预测的视线校准、运动追踪及精度测试方法 |
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: 310052 19th Floor, No. 392, Binxing Road, Changhe Street, Binjiang District, Hangzhou City, Zhejiang Province (Hongsoft Building) Applicant after: Rainbow Software Co.,Ltd. Address before: 310012 22nd and 23rd Floors of Building A, Paradise Software Park, No. 3 Xidoumen Road, Xihu District, Hangzhou City, Zhejiang Province Applicant before: Rainbow Software Co.,Ltd. |
|
CB02 | Change of applicant information | ||
GR01 | Patent grant | ||
GR01 | Patent grant |