1.一种基于自适应加权的视线跟踪方法,其特征在于,所述方法包括以下步骤:S1.数据预处理,对输入图像进行归一化处理,过程如下:S1.1.使人脸参考点位于距离相机固定距离的图像中心;
假设a(ax,ay,az)是相机空间下的人脸参考点,旋转后的虚拟相机下的z轴为vz=az/az,虚拟相机下的y轴为vy=vz×hx,其中hx是头部姿态旋转矩阵中的x轴;然后通过y轴和z轴得到x轴,vx=vz×vy,旋转矩阵被定义为 假设虚拟空间和参考点的距离为d,那么转换矩阵被定义为M=SR,其中S被定义为S=diag(1,1,d/a2);
S1.2.将人脸转换为特定相机空间下的图像平面;
‑1
通过warp矩阵W=CaMCv 将人脸转换为特定相机空间下的图像平面,其中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 (4)其中,权重λf,λl,λr决定了脸和双眼的准确度哪个更重要,因此设计如下:考虑到三个区域的图像在输入主网络后分别得到的预测值与目标值的误差会有所不同,计算预测值与目标值间的均方差;
结合公式(4)、(5)、(6),得到最终的损失函数:S2.2建立子网络并通过子网络调整主网络的训练策略;
主网络预测得到视线向量通过输入高质量的脸部和眼部图像,设计了子网络来学习预测回归网络的选择,并且在优化过程中体现其对不同区域特征的依赖,该子网络是一个三个网络流的卷积神经网络,每个分支分别从人脸、左眼、右眼中提取64维的深层特征,ALexnet卷积层作为每个分支的基本网络,后面跟着一个三维全连接层,最后通过SoftmaxT得到对应的脸部和双眼的概率偏重向量[pf,pl,pr];
为了能够训练调权函数来预测回归函数的选择,设置了以下loss函数:其中,pf是回归函数在预测过程中依赖于脸部区域的概率,pl是依赖于左眼的概率,pr是依赖于右眼的概率;
调权网络的目的是调整回归网络从而提高视线估计的精度,为了达到这个目的,回归网络的Loss函数被调整为:视线向量依赖于输入回归网络的图像,其中,w能够平衡左眼、右眼和脸部区域的权重的学习并且实现自适应调节,由调权网络的输出(pf,pl,pr)决定,计算如下:如果ef