利索能及
我要发布
收藏
专利号: 2023111730581
申请人: 南通大学
专利类型:发明专利
专利状态:已下证
更新日期:2025-09-11
缴费截止日期: 暂无
联系人

摘要:

权利要求书:

1.一种基于GRU的连续性视线估计深度学习方法,其特征在于,包括如下步骤:步骤S1、定义图像特征空间和GRU的隐藏状态空间维度,用于模型训练的基础参数设定;

步骤S2、利用预训练的ResNet‑50模型,对输入的人脸图像I进行特征提取,得到特征向量F,并通过线性变换层进行特征降维处理,得到图像特征向量F′;

步骤S3、通过全连接层FC1处理图像特征向量F′,产生模型的隐藏状态H;

步骤S4、将隐藏状态H输入到GRU进行时间序列建模,生成GRU的输出向量G;

步骤S5、通过全连接层FC2对GRU的输出向量G进行特征映射,得到新的特征向量G′;

步骤S6、通过全连接层FC3将新的特征向量G′映射为三维输出向量O,三维输出向量O代表了预测的视线方向以及预测的不确定性;

步骤S7、对三维输出向量O的前两个元素进行双曲正切变换,得到预测的视线方向;

步骤S8、对三维输出向量的第三个元素通过sigmoid函数变换,得到视线预测的不确定性;

步骤S9、利用PinBall损失函数度量预测结果与真实值之间的误差,然后反向传播误差,更新网络参数。

2.根据权利要求1所述的基于GRU的连续性视线估计深度学习方法,其特征在于,所述步骤S1中,设定图像特征空间维度为d,GRU的隐藏状态空间维度为h,其中d=h=256。

3.根据权利要求2所述的基于GRU的连续性视线估计深度学习方法,其特征在于,所述步骤S2中包含:使用预训练的ResNet‑50模型作为卷积神经网络的基础模型,对输入的人脸图像I进行深度特征提取得到特征向量F;之后,通过线性变换层进行特征降维处理得到图像特征向量F′公式如下:F′=WL1·F+BL1

其中WL1和BL1分别为线性变换层的权重矩阵和偏置向量。

4.根据权利要求3所述的基于GRU的连续性视线估计深度学习方法,其特征在于,所述步骤S3中,包含:得到隐藏状态H的公式如下:

其中 和 分别为全连接层FC1的权重矩阵和偏置向量。

5.根据权利要求4所述的基于GRU的连续性视线估计深度学习方法,其特征在于,所述步骤S4中包含以下步骤:步骤S401、选择一个全零向量作为初始状态;

步骤S402、通过sigmoid函数和隐藏状态H与输入特征向量F'的线性变换得到更新门和重置门,计算公式如下所示:Z=sigmoid(WZ·[H,F′]+BZ)R=sigmoid(WR·[H,F′]+BR)其中Z表示GRU的更新门,R表示GRU的重置门,WZ,WR,BZ,BR是训练过程中学习的权重和偏置参数;

步骤S403、利用重置门R的信息得到一个候选隐藏状态H′,计算公式如下所示:H'=tanh(WH'·[R⊙H,F']+BH')其中WH'和BH'是训练过程中学习的权重和偏置参数,⊙表示对应元素乘积,tanh为双曲正切函数;

步骤S404、通过更新门和候选隐藏状态H′,以及上一时刻的隐藏状态,计算得到当前时刻的隐藏状态H,计算公式如下:H=(1‑Z)⊙H+Z⊙H'

最后一个时间步的隐藏状态H作为当前序列的输出向量G。

6.根据权利要求5所述的基于GRU的连续性视线估计深度学习方法,其特征在于,所述步骤S5中包含:得到新的特征向量G'的公式如下:

其中 和 分别为全连接层FC2的权重矩阵和偏置向量;新的特征向量G'包含了原始输入人脸图像的深度特征和时间序列信息。

7.根据权利要求6所述的基于GRU的连续性视线估计深度学习方法,其特征在于,所述步骤S6中包含:通过全连接层FC3将新的特征向量G′映射为三维输出向量O的公式如下:其中 和 分别为全连接层FC3的权重矩阵和偏置向量。

8.根据权利要求7所述的基于GRU的连续性视线估计深度学习方法,其特征在于,所述步骤S7中包含:将输出向量O的前两个元素进行双曲正切变换,得到视线的水平角度Oh和垂直角度Ov,计算公式如下:Oh=π·tanh(O[0])

Ov=π/2·tanh(O[1])

其中tanh为双曲正切函数,O[0]、O[1]分别表示输出向量O的第一个和第二个元素;经过双曲正切变换后将视线角度的预测值范围限制在区间[‑π,π]和 之间,与实际的视线角度范围相符。

9.根据权利要求8所述的基于GRU的连续性视线估计深度学习方法,其特征在于,所述步骤S8中包含:将输出向量O的第三个元素通过sigmoid函数变换并乘以π,得到视线预测的不确定性σ,公式如下:σ=π·sigmoid(O[2])

其中σ的范围为[0,π],O[2]表示输出向量O的第三个元素。

10.根据权利要求9所述的基于GRU的连续性视线估计深度学习方法,其特征在于,所述步骤S9中包含:将PinBall损失函数目标值与预测值的10%和90%分位数的差值作为基础,计算出每个样本在这两个分位数上的损失,接着求出这两个分位数的平均损失,并将其相加得到最终的损失;最后,将这个最终的损失反向传播到网络,用于更新网络参数;

损失函数如下式所示:

L1=1/N∑(q1*max(t‑(o‑σ),0)+(1‑q1)*max((o‑σ)‑t,0))L2=1/N∑(q9*max(t‑(o+σ),0)+(1‑q9)*max((o+σ)‑t,0))L=L1+L2

其中,L1表示计算10%分位数的平均损失,L2表示计算90%分位数的平均损失,L表示最终损失,L是在训练过程中试图最小化的量,N表示样本的总数量;o代表预测值,是模型预测的结果;t代表真实值,是预测的实际目标值;σ代表预测的不确定性区间,在给定预测值的基础上,预测可能的偏移范围;q1和q9是定义的两个分位数,分别为0.1和0.9,这两个分位数定义了预测误差的区间。