一种基于自适应加权的视线跟踪方法与流程

专利2022-06-29  108


本发明属于图像处理领域,是一种基于自适应加权的视线跟踪方法。



背景技术:

眼睛是人体最重要的感觉器官之一。视线跟踪通过推断目标的注意点来模拟眼睛和外部信息之间的交流。它在消费者研究、沉浸式vr研究、教育研究等诸多应用中发挥着重要作用。最近提出的视线跟踪方法越来越多,大致可以分为两大类:基于模型的方法和基于外观的方法。

基于模型的视线跟踪方法根据瞳孔中心、虹膜轮廓、角膜红外反射等不变的面部特征计算特定的几何眼睛模型来估计注视方向。然而,这种方法需要复杂的硬件,例如红外光线、高清相机等。这种方法更适合于受控环境,例如实验室中,而不是在日常娱乐场景中。

基于外观的注视跟踪方法从人眼外观图像中提取特征作为输入,然后学习一个注视映射函数,将眼睛图像映射到注视方向从而实现注视估计。与基于模型的注视跟踪方法不同,基于外观的方法通常只需要一个摄像头就可以捕捉到用户的眼睛图像。zhang等人从人眼图像中提取颜色、灰度、方向等低维特征,采用k=13的knn分类器学习图像特征到注视方向的映射。wang等人[7]在传统的视线跟踪方法中增加了深度特征的提取,并应用了随机森林回归的方法。kacete等人利用随机森林回归方法从人脸信息的高维数据中估计注视向量。这种方法可以进行并行处理,训练速度相对较快。wu等人通过使用外观模型的特征定位眼睛区域,并使用支持向量机(svm)对五个注视方向进行分类。

近年来,随着机器学习的发展和海量数据的支持,越来越多的基于学习的注视估计方法被采用。其中,基于cnn的方法非常流行,这种方法有很大的潜力来处理传统方法中遇到的挑战,包括冗余校准过程,复杂的头部姿态,和照明条件的限制。zhang等人建立了一个新颖的野外数据集,利用cnn学习从头部姿态和眼睛图像到注视角度的映射。krafka等人[11]提出了一种针对移动设备的眼球跟踪方法,该方法采用人脸图像、人眼和人脸网格作为输入。zhang等人利用空间权值cnn对人脸图像进行编码,灵活地抑制或增强不同人脸区域的信息。cheng等人提出了双眼对称性的概念来预测三维注视方向,设计了一个评价网络,根据眼睛的性能自适应调整回归网络。palmero等人在cnn中使用人脸、眼区和人脸地标作为单独的信息流来估计静态图像中的凝视。该方法首次考虑了凝视的动态特性。将所有帧的学习特征依次输入多对一递归模块,预测到最后一帧的三维视线向量即所求视线向量。fischer等人为了提高视线估计的鲁棒性,记录了一个不同头部姿态的新数据集,并将语义图像应用于眼镜覆盖区域,消除眼镜的遮挡性,在训练图像和测试图像之间架起了桥梁。yu等人提出了一种新型约束模型,得到眼睛地标位置与注视方向的关系。



技术实现要素:

为了利用神经网络的强大功能提高注视向量预测的精度,本发明提出了一种自适应加权视线估计方法,通过判断人脸图像、左眼图像、右眼图像对最终视线估计结果的影响,根据三者对应的预测值与真实值的误差大小给予相应的权重,从而对图像和视线向量间的回归模型进行调整,实现自适应调权的概念。

本发明解决其技术问题所采用的技术方案是:

一种自适应加权的视线估计方法,所述方法包括以下步骤:

s1.数据预处理,对图像数据进行归一化处理,过程如下:

s1.1.使人脸参考点位于距离相机固定距离的图像中心;

假设a(ax,ay,az)是相机空间下的人脸参考点,旋转后的虚拟相机下的z轴为虚拟相机下的y轴为vy=vz×hx,其中hx是头部姿态旋转矩阵中的x轴.然后x轴就可以通过y轴和z轴得到,vx=vz×vy,因此,旋转矩阵被定义为假设虚拟空间和参考点的距离为d,那么转换矩阵被定义为m=sr,其中s被定义为

s1.2.将人脸转换为特定相机空间下的图像平面;

通过warp矩阵w=camcv-1将人脸转换为特定相机空间下的图像平面,其中ca是原相机的内参数矩阵,cv是虚拟相机的内参数矩阵;除此之外,在训练阶段,原始的视觉标签使用gv=rga进行转换,其中gv代表归一化后的视线向量,ga代表初始视线向量;在测试阶段,对每一个预测结果使用ga=r-1gv从虚拟相机空间转换到原相机空间;

s2.建立回归模型,用左眼、右眼、脸的图像作为输入,视线向量的真实值作为标签来训练模型,过程如下:

s2.1.建立主网络并设计对应loss函数;

主网络是一个六流的卷积神经网络,使用简化版的alexnet卷积层作为每个分支的基本网络,设计前三组数据分别从人脸、左眼、右眼中提取64维的深层特征,后三组数据产生了一个关节64维的特征;然后通过一个全连接层将6组数据组合起来,并经过一个dropout层防止过拟合问题,最后通过六维的全连接层得到对应的视线向量结果;

对于训练主网络,设计了对应的策略进行调整,过程如下:

首先计算目前预测的脸和双眼的三维注视方向的角度误差:

其中,f(i)代表视线向量的预测值(注视回归),g代表视线向量真实值。然后,计算三者的加权平均误差:

e=λf·ef λl·el λr·er

其中,权重λf,λl,λr决定了脸和双眼的准确度哪个更重要。如要其中哪个区域的图像更容易产生更小的误差,就应该在优化网络时加大它的权重,因此设计如下:

考虑到三个区域的图像在输入模型后分别得到的预测值与实际目标值的误差会有所不同,计算预测值与目标值间的均方差;

结合公式(4)、(5)、(6),得到最终的损失函数:

s2.2建立子网络并通过子网络调整主网络的训练策略;

主网络可以预测得到视线向量通过输入高质量的脸部和眼部图像,设计了调权网络来学习预测回归网络的选择,并且在优化过程中体现其对不同区域特征的依赖;

调权网络是一个三流的卷积神经网络,每个分支分别从人脸、左眼、右眼中提取64维的深层特征,alexnet卷积层作为每个分支的基本网络,后面跟着一个三维全连接层,最后通过softmax得到对应的脸部和双眼的概率偏重向量[pf,pl,pr]t

为了能够训练调权函数来预测回归函数的选择,设置了以下loss函数:

其中,pf是回归函数在预测过程中依赖于脸部区域的概率,pl是依赖于左眼的概率,pf是依赖于右眼的概率;

在训练过程中,p的真实值由回归网络中的视线向量误差决定,以脸部概率为例,ptf为1当ef<el且ef<er时,其他情况时ptf为0.换句话说,当脸部区域在回归网络中的误差最小时,应当选择最大化pf来学习这一事实从而实现调整回归网络;同理,当el的值最小时,ptl为1否则为0;当er的值为最小时,ptr为1否则为0;

调权网络的目的是调整回归网络从而提高视线估计的精度,为了达到这个目的,回归网络的loss函数被调整为:

视线向量依赖于输入回归网络的图像,其中,w能够平衡左眼、右眼和脸部区域的权重的学习。当视线向量的真实值gf,gl和gr近似一致时,在网络学习的过程中无需加大任意一块区域的权重;而当gf,gl和gr的数值区别较大时,应该更偏向于训练在回归网络中误差较小的某块区域;w可以实现自适应调节,由调权网络的输出(pf,pl,pr)决定,计算如下:

如果ef<el并且ef<er时,a为1,否则a为0;如果er<el并且er<ef时,b为1,否则b为0.在实验过程中,w为0到1之间的十进制数;

模型经过训练得到最终结果,反映输入图像与视线向量间的映射关系。

本发明的有益效果为:可以在不同光照,不同头部姿态下保持高精度并具有一定的健壮性。

附图说明

图1是所提三维视线向量的整体结构。

图2是数据预处理的基础概念。

图3是所提自适应加权模型的整体结构。

图4是主网络的结构图

图5是子网络的结构图。

具体实施方式

下面结合附图对本发明作进一步描述。

参照图1~图5,一种自适应加权的视线跟踪方法,首先,对记录的图像进行数据预处理;然后,提出自适应加权模型的网络架构;最后,通过所提网络进行训练并使用对应的策略进行调整,得到最终的模型。

所述自适应加权的视线跟踪方法包括以下步骤:

s1.数据预处理

头部姿态对注视估计结果有显著影响,为减弱该因素的影响,对图像数据进行归一化处理;

如图2所示,归一化处理过程如下:

s1.1.使人脸参考点位于距离相机固定距离的图像中心;

假设a(ax,ay,az)是相机空间下的人脸参考点,旋转后的虚拟相机下的z轴为虚拟相机下的y轴为vy=vz×hx,其中hx是头部姿态旋转矩阵中的x轴。然后x轴就可以通过y轴和z轴得到,vx=vz×vy,因此,旋转矩阵被定义为假设虚拟空间和参考点的距离为d,那么转换矩阵被定义为m=sr,其中s被定义为

s1.2.将人脸转换为特定相机空间下的图像平面;

通过warp矩阵w=camcv-1将人脸转换为特定相机空间下的图像平面,其中ca是原相机的内参数矩阵,cv是虚拟相机的内参数矩阵,除此之外,在训练阶段,原始的视觉标签使用gv=rga进行转换,其中gv代表归一化后的视线向量,ga代表初始视线向量,在测试阶段,对每一个预测结果使用ga=r-1gv从虚拟相机空间转换到原相机空间;

s2.建立回归模型

本发明中,提出了一种自适应调权的回归模型用于对基于外观的视线估计预测;在实践中,我们观察到在不同的场景下,左眼、右眼和脸部区域对回归的精度是有影响的,不同的图片区域无法达到同样的精度值;因此,在训练回归模型时,我们期望能够更好地依赖高质量图像从而训练更高效的模型;如图3所示,这个模型主要由一个主网络和一个子网络组成,主网络实现图像到视线向量的回归预测,子网络实现主网络loss函数的调整从而达到自适应调权的目的;所提的网络用左眼、右眼、脸的图像作为输入,视线向量的真实值作为标签来训练模型;

s2.1.建立主网络并设计对应loss函数;

为实现自适应调权的思想,人脸和双眼的分离特征和联合特征都应被提取和利用;如图4所示,该网络是一个六流的卷积神经网络,使用简化版的alexnet卷积层作为每个分支的基本网络,设计前三组数据分别从人脸、左眼、右眼中提取64维的深层特征,后三组数据产生了一个关节64维的特征;然后通过一个全连接层将6组数据组合起来,并经过一个dropout层防止过拟合问题,最后通过六维的全连接层得到对应的视线向量结果;

对于训练主网络,设计了对应的策略进行调整,过程如下:

首先计算目前预测的脸和双眼的三维注视方向的角度误差:

其中,f(i)代表视线向量的预测值(注视回归),g代表视线向量真实值。然后,计算三者的加权平均误差:

e=λf·ef λl·el λr·er

其中,权重λf,λl,λr决定了脸和双眼的准确度哪个更重要,如要其中哪个区域的图像更容易产生更小的误差,就应该在优化网络时加大它的权重,因此设计如下:

考虑到三个区域的图像在输入模型后分别得到的预测值与实际目标值的误差会有所不同,计算预测值与目标值间的均方差。

结合公式(4)、(5)、(6),得到最终的损失函数:

s2.2建立子网络并通过子网络调整主网络的训练策略;

主网络可以预测得到视线向量通过输入高质量的脸部和眼部图像。本发明设计了调权网络来学习预测回归网络的选择,并且在优化过程中体现其对不同区域特征的依赖;

如图5所示,该网络是一个三流的卷积神经网络。每个分支分别从人脸、左眼、右眼中提取64维的深层特征,alexnet卷积层作为每个分支的基本网络,后面跟着一个三维全连接层,最后通过softmax得到对应的脸部和双眼的概率偏重向量[pf,pl,pr]t

为了能够训练调权函数来预测回归函数的选择,设置了以下loss函数:

其中,pf是回归函数在预测过程中依赖于脸部区域的概率,pl是依赖于左眼的概率,pf是依赖于右眼的概率;

在训练过程中,p的真实值由回归网络中的视线向量误差决定,以脸部概率为例,ptf为1当ef<el且ef<er时,其他情况时ptf为0,换句话说,当脸在回归网络中的误差最小时,应当选择最大化pf来学习这一事实从而实现调整回归网络;同理,当el的值最小时,ptl为1否则为0;当er的值为最小时,ptr为1否则为0;

调权网络的目的是调整回归网络从而提高视线估计的精度。为了达到这个目的,回归网络的loss函数被调整为:

视线向量依赖于输入回归网络的图像,其中,w能够平衡左眼、右眼和脸部区域的权重的学习;当视线向量的真实值gf,gl和gr近似一致时,在网络学习的过程中无需加大任意一块区域的权重;而当gf,gl和gr的数值区别较大时,应该更偏向于训练在回归网络中误差较小的某块区域,w可以实现自适应调节,由调权网络的输出(pf,pl,pr)决定,计算如下:

如果ef<el并且ef<er时,a为1,否则a为0;如果er<el并且er<ef时,b为1,否则b为0.在实验过程中,w为0到1之间的十进制数;

模型经过训练得到最终结果,反映输入图像与视线向量间的映射关系。


技术特征:

1.一种基于自适应加权的视线跟踪方法,其特征在于,所述方法包括以下步骤:

s1.数据预处理,对图像数据进行归一化处理,过程如下:

s1.1.使人脸参考点位于距离相机固定距离的图像中心;

假设a(ax,ay,az)是相机空间下的人脸参考点,旋转后的虚拟相机下的z轴为vz=az/||az||,虚拟相机下的y轴为vy=vz×hx,其中hx是头部姿态旋转矩阵中的x轴;然后x轴就可以通过y轴和z轴得到,vx=vz×vy,假设虚拟空间和参考点的距离为d,那么转换矩阵被定义为m=sr,其中s被定义为s=diag(1,1,d/||a||2);

s1.2.将人脸转换为特定相机空间下的图像平面;

通过warp矩阵w=camcv-1将人脸转换为特定相机空间下的图像平面,其中ca是原相机的内参数矩阵,cv是虚拟相机的内参数矩阵;除此之外,在训练阶段,原始的视觉标签使用gv=rga进行转换,其中gv代表归一化后的视线向量,ga代表初始视线向量;

s2.建立回归模型

本发明中,提出了一种自适应调权的回归模型用于对基于外观的视线估计预测,这个模型由一个主网络和一个子网络组成,主网络实现图像到视线向量的回归预测,子网络实现主网络loss函数的调整从而达到自适应调权的目的;

s2.1.建立主网络并设计对应loss函数;

该网络是一个六流的卷积神经网络,设计前三组数据分别从人脸、左眼、右眼中提取64维的深层特征,后三组数据产生了一个关节64维的特征;然后通过一个全连接层将6组数据组合起来,并经过一个dropout层防止过拟合问题,最后通过六维的全连接层得到对应的视线向量结果;

对于训练主网络,本发明设计了对应的策略进行调整,过程如下:

首先计算目前预测的脸和双眼的三维注视方向的角度误差:

其中,f(i)代表视线向量的预测值,即注视回归,g代表视线向量真实值,然后,计算三者的加权平均误差:

e=λf·ef λl·el λr·er

其中,权重λf,λl,λr决定了脸和双眼的准确度哪个更重要,因此设计如下:

考虑到三个区域的图像在输入模型后分别得到的预测值与实际目标值的误差会有所不同,我们计算预测值与目标值间的均方差;

结合公式(4)、(5)、(6),我们得到最终的损失函数:

s2.2建立子网络并通过子网络调整主网络的训练策略;

主网络可以预测得到视线向量通过输入高质量的脸部和眼部图像,设计了子网络来学习预测回归网络的选择,并且在优化过程中体现其对不同区域特征的依赖,该网络是一个三流的卷积神经网络,每个分支分别从人脸、左眼、右眼中提取64维的深层特征,alexnet卷积层作为每个分支的基本网络,后面跟着一个三维全连接层,最后通过softmax得到对应的脸部和双眼的概率偏重向量[pf,pl,pr]t

为了能够训练调权函数来预测回归函数的选择,设置了以下loss函数:

其中,pf是回归函数在预测过程中依赖于脸部区域的概率,pl是依赖于左眼的概率,pf是依赖于右眼的概率,在训练过程中,p的真实值由回归网络中的视线向量误差决定;

调权网络的目的是调整回归网络从而提高视线估计的精度,为了达到这个目的,回归网络的loss函数被调整为:

视线向量依赖于输入回归网络的图像,其中,w能够平衡左眼、右眼和脸部区域的权重的学习并且可以实现自适应调节,由调权网络的输出(pf,pl,pr)决定,计算如下:

如果ef<el并且ef<er时,a为1,否则a为0;如果er<el并且er<ef时,b为1,否则b为0.在实验过程中,w为0到1之间的十进制数,

模型经过训练得到最终结果,反映输入图像与视线向量间的映射关系。

技术总结
一种基于自适应加权的视线跟踪方法,包括以下步骤:1)对输入的图像进行数据归一化预处理:1.1)使人脸参考点位于距离相机固定距离的图像中心;2)建立图像与视线向量间的回归函数:2.1)建立主网络并设计对应loss函数;2.2)建立子网络并通过子网络调整主网络的训练策略,求得最终的模型。本发明可以在不同光照,不同头部姿态下保持高精度并具有一定的健壮性。

技术研发人员:周小龙;产思贤;姜嘉琪;陈胜勇
受保护的技术使用者:浙江工业大学
技术研发日:2019.09.16
技术公布日:2020.06.09

转载请注明原文地址: https://bbs.8miu.com/read-19110.html

最新回复(0)