一种注视点估计方法、装置、计算机设备和介质

文档序号:31696650发布日期:2022-10-01 05:44阅读:123来源:国知局
一种注视点估计方法、装置、计算机设备和介质

1.本技术涉及计算机视觉领域,特别是涉及一种基于外观的注视点估计方法、装置、计算机设备和存储介质。


背景技术:

2.人类视觉系统是一个复杂的认知过程,眼睛注视分析是计算机视觉和人机交互领域的一个重要研究。因此,从眼睛运动中获得的信息有助于理解复杂心理状态的洞察力,包括视觉注意和人类认知。视觉感知对交通安全至关重要,人类通过眼球运动感知环境,视觉是驾驶人获取外界环境信息的主要手段,是驾驶人行为的前提和基础。而注视估计的主要任务是确定瞳孔的视线,一般将视线估计视为3-d空间中的注视方向或2-d/3-d坐标中的注视点,在少数情况下不需要精确的注视位置。但在一些对个体特征敏感、注视点估计结果要求高的场景下,例如对于驾驶员注视估计,需要判断驾驶人在驾驶场景中面临突发驾驶状况或风险来临时能否做出正确决策、驾驶人的视觉感知系统能否及时捕捉到危险或障碍物的场景,或者对于医疗保健待检测人员的注视估计,需要判断待检测人员的注视机能是否正常的场景等,获取精确的注视位置至关重要。然而,从图像中进行高精度的凝视估计是困难的,且现有的注视点估计需要大量训练图片。因此,现有技术存在准确率低、训练效率低的问题。


技术实现要素:

3.基于此,有必要针对上述技术问题,提供一种能够提高注视点估计准确性和训练效率的注视点估计方法、装置、计算机设备和存储介质。
4.一种注视点估计方法,所述方法包括:
5.获取人员的凝视图像,对所述凝视图像进行预处理得到训练图像,将所述训练图像输入预先设计的编码-解码网络中;所述编码-解码网络包括编码模块和解码模块;所述训练图像包括人员的注视方向标签;
6.通过所述编码模块对所述训练图像进行处理,得到所述训练图像的潜在空间代码;所述潜在空间代码包括外观特征代码、凝视特征代码和头部姿势代码;
7.对所述凝视特征代码和所述头部姿势代码进行显式旋转,根据显式旋转后的潜在空间代码通过所述解码模块得到所述训练图像的旋转解码图像,根据所述训练图像和所述旋转解码图像学习具有旋转意识的潜在凝视特征;所述旋转解码图像中人员的注视方向与所述训练图像不同;
8.根据多个训练图像、其对应的旋转解码图像,以及对应的潜在凝视特征,通过元学习算法学习得到自适应凝视估计网络及其初始网络权重;
9.获取待检测人员的校准图像信息,通过所述校准图像信息对所述初始网络权重进行调整,得到特定于待检测人员的特定凝视估计网络;所述校准图像信息包括所述待检测人员的两张标注了不同注视方向的图像;
10.获取所述待检测人员的测试图像,将所述测试图像输入所述特定凝视估计网络中,激活输出所述测试图像的三维注视方向向量,进而得到所述测试图像中人员的注视点信息。
11.在其中一个实施例中,还包括:旋转所述凝视图像,使得相机坐标系的x轴垂直于人员头部坐标系的y轴;
12.对旋转后的图像进行缩放,使得相机位于距离眼睛中心固定的距离处。
13.在其中一个实施例中,还包括:所述编码模块为解纠缠变换编码器结构。
14.在其中一个实施例中,还包括:所述自适应凝视估计网络为一个多层感知器;所述多层感知器包括64个隐藏层神经元和selu激活层。
15.在其中一个实施例中,还包括:获取多个训练图像、其对应的旋转解码图像,以及对应的潜在凝视特征作为训练样本;
16.以所述训练样本的训练损失最小化为目标,通过元学习算法有随机梯度下降算法对预先设计的自适应凝视估计网络进行训练,得到自适应凝视估计网络及其初始网络权重。
17.在其中一个实施例中,还包括:激活输出所述测试图像的三维注视方向向量,进而通过射线投影法得到所述测试图像中人员的注视点信息。
18.在其中一个实施例中,还包括:获取人员的双眼中心位置作为起点,以所述三维注视方向向量为方向,向相机坐标系发出射线;
19.根据所述射线与所述相机坐标系xoy平面的交点得到人员的注视点信息。
20.一种注视点估计装置,所述装置包括:
21.预处理模块,用于获取人员的凝视图像,对所述凝视图像进行预处理得到训练图像,将所述训练图像输入预先设计的编码-解码网络中;所述编码-解码网络包括编码模块和解码模块;所述训练图像包括人员的注视方向标签;
22.潜在特征学习模块,用于通过所述编码模块对所述训练图像进行处理,得到所述训练图像的潜在空间代码;所述潜在空间代码包括外观特征代码、凝视特征代码和头部姿势代码;对所述凝视特征代码和所述头部姿势代码进行显式旋转,根据显式旋转后的潜在空间代码通过所述解码模块得到所述训练图像的旋转解码图像,根据所述训练图像和所述旋转解码图像学习具有旋转意识的潜在凝视特征;所述旋转解码图像中人员的注视方向与所述训练图像不同;
23.自适应凝视估计网络学习模块,用于根据多个训练图像、其对应的旋转解码图像,以及对应的潜在凝视特征,通过元学习算法学习得到自适应凝视估计网络及其初始网络权重;
24.特定凝视估计网络校准模块,用于获取待检测人员的校准图像信息,通过所述校准图像信息对所述初始网络权重进行调整,得到特定于待检测人员的特定凝视估计网络;所述校准图像信息包括所述待检测人员的两张标注了不同注视方向的图像;
25.注视点估计模块,用于获取所述待检测人员的测试图像,将所述测试图像输入所述特定凝视估计网络中,激活输出所述测试图像的三维注视方向向量,进而得到所述测试图像中人员的注视点信息。
26.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理
器执行所述计算机程序时实现以下步骤:
27.获取人员的凝视图像,对所述凝视图像进行预处理得到训练图像,将所述训练图像输入预先设计的编码-解码网络中;所述编码-解码网络包括编码模块和解码模块;所述训练图像包括人员的注视方向标签;
28.通过所述编码模块对所述训练图像进行处理,得到所述训练图像的潜在空间代码;所述潜在空间代码包括外观特征代码、凝视特征代码和头部姿势代码;
29.对所述凝视特征代码和所述头部姿势代码进行显式旋转,根据显式旋转后的潜在空间代码通过所述解码模块得到所述训练图像的旋转解码图像,根据所述训练图像和所述旋转解码图像学习具有旋转意识的潜在凝视特征;所述旋转解码图像中人员的注视方向与所述训练图像不同;
30.根据多个训练图像、其对应的旋转解码图像,以及对应的潜在凝视特征,通过元学习算法学习得到自适应凝视估计网络及其初始网络权重;
31.获取待检测人员的校准图像信息,通过所述校准图像信息对所述初始网络权重进行调整,得到特定于待检测人员的特定凝视估计网络;所述校准图像信息包括所述待检测人员的两张标注了不同注视方向的图像;
32.获取所述待检测人员的测试图像,将所述测试图像输入所述特定凝视估计网络中,激活输出所述测试图像的三维注视方向向量,进而得到所述测试图像中人员的注视点信息。
33.一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
34.获取人员的凝视图像,对所述凝视图像进行预处理得到训练图像,将所述训练图像输入预先设计的编码-解码网络中;所述编码-解码网络包括编码模块和解码模块;所述训练图像包括人员的注视方向标签;
35.通过所述编码模块对所述训练图像进行处理,得到所述训练图像的潜在空间代码;所述潜在空间代码包括外观特征代码、凝视特征代码和头部姿势代码;
36.对所述凝视特征代码和所述头部姿势代码进行显式旋转,根据显式旋转后的潜在空间代码通过所述解码模块得到所述训练图像的旋转解码图像,根据所述训练图像和所述旋转解码图像学习具有旋转意识的潜在凝视特征;所述旋转解码图像中人员的注视方向与所述训练图像不同;
37.根据多个训练图像、其对应的旋转解码图像,以及对应的潜在凝视特征,通过元学习算法学习得到自适应凝视估计网络及其初始网络权重;
38.获取待检测人员的校准图像信息,通过所述校准图像信息对所述初始网络权重进行调整,得到特定于待检测人员的特定凝视估计网络;所述校准图像信息包括所述待检测人员的两张标注了不同注视方向的图像;
39.获取所述待检测人员的测试图像,将所述测试图像输入所述特定凝视估计网络中,激活输出所述测试图像的三维注视方向向量,进而得到所述测试图像中人员的注视点信息。
40.上述注视点估计方法、装置、计算机设备和存储介质,通过将人员的凝视图像预处理得到规范化的训练图像后,通过编码-解码模块将外观特征代码、凝视特征代码和头部姿
势代码分离,通过旋转凝视特征代码和头部姿势代码,再根据旋转后的潜在空间特征进行解码,得到与训练图像对应的旋转解码图像,根据多个训练样本的训练图像,旋转解码图像和凝视特征代码,通过元学习得到自适应凝视估计网络及其初始网络权重,再根据待测人员的校准信息对自适应凝视估计网络的初始网络权值权重进行个性化调整,得到特定于人的特定凝视估计网络,由此进行测试图像中注视方向的估计,进而确定注视点信息。本发明使用一种编码器-解码器架构,将视线方向、头部姿势和外观因素分离,方便排除干扰,选取所需的特征进行处理,使用元学习网络,可以在少样本的情况下学习特定于人的注视网络,融合了旋转等变特征学习和元学习的优点,生成准确的个人特定模型,学习效率高,进行注视估计适应性好。
附图说明
41.图1为一个实施例中注视点估计方法的流程示意图;
42.图2为一个实施例中编码-解码网络示意图;
43.图3为一个实施例中射线投影法原理示意图;
44.图4为另一个实施例中注视点估计方法的整体框架图;
45.图5为另一个实施例中注视点估计方法的总体流程图;
46.图6为一个实施例中注视点估计装置的结构框图;
47.图7为一个实施例中计算机设备的内部结构图。
具体实施方式
48.为了使本技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本技术进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本技术,并不用于限定本技术。
49.在一个实施例中,如图1所示,提供了一种注视点估计方法,包括以下步骤:
50.步骤102,获取人员的凝视图像,对凝视图像进行预处理得到训练图像,将训练图像输入预先设计的编码-解码网络中。
51.本发明是一种基于外观的注视点估计方法。外观的特点是能看得着的,显示在表面上的,显而易见的。基于外观的注视点估计是将图像映射到凝视,将图像视为高维空间中的一个点,而不是使用轮廓和角等明确的几何特征。例如,一个20像素
×
20像素强度的图像可以被认为是一个400分量的矢量,或者是400维空间中的一个点。使用这种表示的方法通常被称为基于外观的方法。
52.图像预处理的目的在于将凝视图像和注视标签映射到归一化空间,消除几何可变性,得到规范化的具有真实注视方向的训练图像,能够提高训练效率。
53.数据规范化首先旋转相机以扭曲眼睛图像,从而使相机坐标系的x轴垂直于头部坐标系的y轴,然后对图像进行缩放,使(归一化的)相机位于距离眼睛中心固定的距离处,对于所有不同的数据,最终的眼睛图像在头部姿势中只有2个自由度。
54.如图2所示,编码-解码网络包括编码模块和解码模块。
55.训练图像包括人员的注视方向标签。
56.编码-解码网络中包括旋转等效的编码器-解码器函数。为了确保编码器网络能将
不同外貌但相同注视方向的人的图像嵌入到相似的特征中,引入嵌入一致性损失,通常这需要成对的图像,只改变注视方向。然而,在现实世界中收集这些数据是很困难的,本发明转而利用dt-ed学习等效性,也就是此处的等效旋转。
57.步骤104,通过编码模块对训练图像进行处理,得到训练图像的潜在空间代码。
58.潜在空间代码包括外观特征代码、凝视特征代码和头部姿势代码。
59.编码模块为解纠缠变换编码器体系结构,能够将潜在空间中的外观、凝视和头部姿势等因素分离开。分离注视方向、头部方向等因素可以更好的提取凝视信息,注视方向和头部方向的相对变化有利于网络的学习,相对变化也更容易以独立于人的方式学习凝视特征。
60.步骤106,对凝视特征代码和头部姿势代码进行显式旋转,根据显式旋转后的潜在空间代码通过解码模块得到训练图像的旋转解码图像,根据训练图像和旋转解码图像学习具有旋转意识的潜在凝视特征。
61.显示旋转的潜在代码是后面说的旋转凝视和头部姿势。显式旋转可以转换凝视方向或者转换头部旋转角度。dt-ed结构设置了的三个不同的因素:注视方向、头部方向和与给定图像中眼睛区域的外观相关的其他因素。通过明确地将旋转(眼睛注视和头部方向)中的独立和已知差异应用于各自的子代码,来分离这三个因素,凝视方向的相对变化更容易以独立于人的方式学习。
62.旋转解码图像中人员的注视方向与训练图像不同。
63.由训练图像和旋转解码图像构成成对图像,构成成对图像的目的在于扩充数据集,这样只用少量样本就能学习到凝视方向。
64.步骤108,根据多个训练图像、其对应的旋转解码图像,以及对应的潜在凝视特征,通过元学习算法学习得到自适应凝视估计网络及其初始网络权重。
65.元学习:又称“学习如何学习”,元学习以一种系统的、数据驱动的方式从先前得经验中学习,是一个可用于描述所以基于其他先前任务经验来学习的方法的概念。一般的机器学习任务,是需要学习一个模型f,由输入x得到输出y。而元学习,则是要学习一个f,用它来学习各种任务的f。本发明将元学习融入注视估计中,通过元学习得到一个基础的自适应凝视估计网络及其初始网络权重,允许进行微调,而不会出现少镜头时通常出现的过度拟合问题,对于少量镜头学习,元学习通过标准优化算法(例如随机梯度下降(sgd))将特定主题的几个示例的训练损失最小化后,显式地将网络的泛化损失最小化。之后在此基础上得到特定于人的特定凝视估计网络,可以大大提高整体算法的适应性和效率。
66.步骤110,获取待检测人员的校准图像信息,通过校准图像信息对初始网络权重进行调整,得到特定于待检测人员的特定凝视估计网络。
67.校准图像信息包括待检测人员的两张标注了不同注视方向的图像。
68.步骤112,获取待检测人员的测试图像,将测试图像输入特定凝视估计网络中,激活输出测试图像的三维注视方向向量,进而得到测试图像中人员的注视点信息。
69.本发明使用潜在特征学习及元学习,使用少量图片即可以学习到凝视特征。另外,本发明可以精确的将测试者的注视点映射到测试场景中的屏幕上,即可以得到测试者在测试视频中的视线落点。
70.上述注视点估计方法中,通过将人员的凝视图像预处理得到规范化的训练图像
后,通过编码-解码模块将外观特征代码、凝视特征代码和头部姿势代码分离,通过旋转凝视特征代码和头部姿势代码,再根据旋转后的潜在空间特征进行解码,得到与训练图像对应的旋转解码图像,根据多个训练样本的训练图像,旋转解码图像和凝视特征代码,通过元学习得到自适应凝视估计网络及其初始网络权重,再根据待测人员的校准信息对自适应凝视估计网络的初始网络权值权重进行个性化调整,得到特定于人的特定凝视估计网络,由此进行测试图像中注视方向的估计,进而确定注视点信息。本发明使用一种编码器-解码器架构,将视线方向、头部姿势和外观因素分离,方便排除干扰,选取所需的特征进行处理,使用元学习网络,可以在少样本的情况下学习特定于人的注视网络,融合了旋转等变特征学习和元学习的优点,生成准确的个人特定模型,学习效率高,进行注视估计适应性好。
71.在其中一个实施例中,还包括:旋转凝视图像,使得相机坐标系的x轴垂直于人员头部坐标系的y轴;对旋转后的图像进行缩放,使得相机位于距离眼睛中心固定的距离处。
72.在其中一个实施例中,还包括:编码模块为解纠缠变换编码器结构。
73.在其中一个实施例中,还包括:自适应凝视估计网络为一个多层感知器;多层感知器包括64个隐藏层神经元和selu激活层。
74.在其中一个实施例中,还包括:获取多个训练图像、其对应的旋转解码图像,以及对应的潜在凝视特征作为训练样本;以训练样本的训练损失最小化为目标,通过元学习算法有随机梯度下降算法对预先设计的自适应凝视估计网络进行训练,得到自适应凝视估计网络及其初始网络权重。
75.在其中一个实施例中,还包括:激活输出所述测试图像的三维注视方向向量,进而通过射线投影法得到所述测试图像中人员的注视点信息。如图3所示,具体地,获取人员的双眼中心位置作为起点,以三维注视方向向量为方向,向相机坐标系发出射线;根据射线与相机坐标系xoy平面的交点得到人员的注视点信息。
76.应该理解的是,虽然图1的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图1中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
77.在一个实施例中,如图4所示,提供了一种注视点估计方法的整体框架,在得到自适应凝视估计网络adagen后,由人员a和人员b的校准图像分别对初始网络权重进行调整,得到各自的特定凝视估计网络ps-gen a和ps-gen b。如图5所示,总体流程包括:图像预处理、潜在表征学习、自适应凝视估计网络adagen,特定凝视估计网络ps-gen和注视点估计。
78.在一个实施例中,如图6所示,提供了一种注视点估计装置,包括:预处理模块602、潜在特征学习模块604、自适应凝视估计网络学习模块606、特定凝视估计网络校准模块608和注视点估计模块610,其中:
79.预处理模块602,用于获取人员的凝视图像,对凝视图像进行预处理得到训练图像,将训练图像输入预先设计的编码-解码网络中;编码-解码网络包括编码模块和解码模块;训练图像包括人员的注视方向标签;
80.潜在特征学习模块604,用于通过编码模块对训练图像进行处理,得到训练图像的
潜在空间代码;潜在空间代码包括外观特征代码、凝视特征代码和头部姿势代码;对凝视特征代码和头部姿势代码进行显式旋转,根据显式旋转后的潜在空间代码通过解码模块得到训练图像的旋转解码图像,根据训练图像和旋转解码图像学习具有旋转意识的潜在凝视特征;旋转解码图像中人员的注视方向与训练图像不同;
81.自适应凝视估计网络学习模块606,用于根据多个训练图像、其对应的旋转解码图像,以及对应的潜在凝视特征,通过元学习算法学习得到自适应凝视估计网络及其初始网络权重;
82.特定凝视估计网络校准模块608,用于获取待检测人员的校准图像信息,通过校准图像信息对初始网络权重进行调整,得到特定于待检测人员的特定凝视估计网络;校准图像信息包括待检测人员的两张标注了不同注视方向的图像;
83.注视点估计模块610,用于获取待检测人员的测试图像,将测试图像输入特定凝视估计网络中,激活输出测试图像的三维注视方向向量,进而得到测试图像中人员的注视点信息。
84.预处理模块602还用于旋转凝视图像,使得相机坐标系的x轴垂直于人员头部坐标系的y轴;对旋转后的图像进行缩放,使得相机位于距离眼睛中心固定的距离处。
85.自适应凝视估计网络学习模块606还用于获取多个训练图像、其对应的旋转解码图像,以及对应的潜在凝视特征作为训练样本;以训练样本的训练损失最小化为目标,通过元学习算法有随机梯度下降算法对预先设计的自适应凝视估计网络进行训练,得到自适应凝视估计网络及其初始网络权重。
86.注视点估计模块610还用于激活输出所述测试图像的三维注视方向向量,进而通过射线投影法得到所述测试图像中人员的注视点信息。
87.注视点估计模块610还用于获取人员的双眼中心位置作为起点,以三维注视方向向量为方向,向相机坐标系发出射线;根据射线与相机坐标系xoy平面的交点得到人员的注视点信息。
88.关于注视点估计装置的具体限定可以参见上文中对于注视点估计方法的限定,在此不再赘述。上述注视点估计装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
89.在一个实施例中,提供了一种计算机设备,该计算机设备可以是终端,其内部结构图可以如图7所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口、显示屏和输入装置。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种注视点估计方法。该计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
90.本领域技术人员可以理解,图7中示出的结构,仅仅是与本技术方案相关的部分结构的框图,并不构成对本技术方案所应用于其上的计算机设备的限定,具体的计算机设备
可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
91.在一个实施例中,提供了一种计算机设备,包括存储器和处理器,该存储器存储有计算机程序,该处理器执行计算机程序时实现上述方法实施例中的步骤。
92.在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述方法实施例中的步骤。
93.本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本技术所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(rom)、可编程rom(prom)、电可编程rom(eprom)、电可擦除可编程rom(eeprom)或闪存。易失性存储器可包括随机存取存储器(ram)或者外部高速缓冲存储器。作为说明而非局限,ram以多种形式可得,诸如静态ram(sram)、动态ram(dram)、同步dram(sdram)、双数据率sdram(ddrsdram)、增强型sdram(esdram)、同步链路(synchlink)dram(sldram)、存储器总线(rambus)直接ram(rdram)、直接存储器总线动态ram(drdram)、以及存储器总线动态ram(rdram)等。
94.以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
95.以上所述实施例仅表达了本技术的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本技术构思的前提下,还可以做出若干变形和改进,这些都属于本技术的保护范围。因此,本技术专利的保护范围应以所附权利要求为准。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1