基于时空协同关注循环神经网络的人体骨架动作预测方法与流程

专利2022-06-29  56


本发明涉及计算机视觉领域中的动作预测技术,具体涉及一种基于时空协同关注循环神经网络的人体骨架动作预测方法。



背景技术:

随着kinect、psmove、vicon等mocap设备的发展,捕捉人体骨架动作变得简单方便。目前,越来越多的基于mocap的产品出现在各种应用领域,如体感游戏、虚拟现实(vr)、人机交互等。这些产品背后的关键技术之一是人体骨架动作分析。人体骨架动作分析是计算机视觉领域的一个有趣的课题,一般包括动作合成、动作预测、姿态估计等。此外,许多研究者也试图通过将人体骨架动作作为关键的动作信息来理解人类的动作、交互作用甚至活动。

早期,由于人体动作的顺序性和非线性,研究者们利用各种概率模型,如潜在变量模型、马尔科夫模型、生成模型、自动编码器等,来预测基于大量观察到的人体动作。近年来,与传统的方法相比,递归神经网络,尤其是门控递归单元网络(gru)和长短时记忆网络(lstm)在获取序列信息方面表现出了显著的性能。因此,近年来基于rnn的方法利用rnn对随时间的序列动作进行建模,解决了人体动作预测的问题。但在上述基于rnn的人体动作预测方法中,运动信息的直接传播仅存在于相邻帧之间,虽然其预测短期动作的效果较好,但它只通过前一帧来更新运动状态,使得预测长期动作的效果较差。因此,为了提升长期动作的预测准确性,tang等人提出了一种时间关注机制(即骨架关注),根据观察到的每个动作对预测一个未来动作的贡献,动态学习每个动作的关注因子。将所有观测到的动作视为动作环境,利用带骨架关注机制的rnn来预测未来的动作。

基于rnn的运动预测方法大多只在时间域上对人体骨骼运动进行建模,忽略了人体关节在空间域上的空间相干性。例如,在“行走”动作中,左(右)臂和右(左)腿的摆动方向在空间上通常是一致的。



技术实现要素:

本发明的目的在于提供一种基于时空协同关注循环神经网络的人体骨架动作预测方法,解决了人体骨架动作预测的问题。

实现本发明目的的技术解决方案为:一种基于时空协同关注循环神经网络的人体骨架动作预测方法,包括以下步骤:

步骤a.从mocap捕获的骨架动作序列中选取每一时刻下人体骨架中17个关节在3dangleaxis下的数据作为输入的骨架动作序列;

步骤b.对输入的骨架动作序列提取骨架-关节协同关注特征图;

步骤c.建立骨架-关节协同关注网络,并将其训练,将骨架-关节协同关注特征图输入训练好的骨架-关节协同关注网络,得到预测人体骨架动作序列。

本发明与现有技术相比,其显著优点在于:

(1)提出了一种骨架-关节共同关注机制和骨架-关节共同关注循环神经网络,不仅关注骨骼在时间域上的演化,同时关注空间域上关节的相关性。

(2)较人体动作预测的其他方法具有更好地效果。

附图说明

图1是本发明基于时空协同关注循环神经网络的人体骨架动作预测方法流程图。

图2是sc-rnn的人体动作的预测效果图,动作包括指向、讨论、进食、打招呼、打电话、摆姿势、购买、坐下,由上至下每行依次对应观测到的动作、实际的人体动作、erd预测动作、lstm-3lr预测动作、res-gru预测动作、mhu预测动作、sc-rnn预测动作。

具体实施方式

结合图1,一种基于时空协同关注循环神经网络的人体骨架动作预测方法,包括以下步骤:

步骤a.从mocap捕获的骨架动作序列中选取每一时刻下人体骨架中17个关节在三维角轴坐标系(3dangleaxis)下的数据作为输入的骨架动作序列其中xt是t时间步的人体动作,包括k个关节在3dangleaxis下的三维位置参数,t为观测到的骨架动作序列长度,即观测到的时间步总数,k为关节总数,变量d=3×k。其中,17个关节选择为:两个肩关节、两个肘关节、两个腕关节、两个膝关节、两个踝关节、两个髋关节、一个下颌关节、两个椎关节、一个颈关节、一个骶髂关节。

步骤b.对输入的骨架动作序列提取骨架-关节协同关注特征,具体如下:

b-1.由骨架动作序列构成骨架-关节特征图f;

其中,j表示时间步序号。

b-2.由骨架-关节特征图计算骨架关注因子用于表示观测的骨架动作f(:,j)与t′-1时间步的骨架预测状态ht'-1的一致程度;

其中,τ1是softmax函数的温度参数,是双曲正切函数即tanh(·),上标t是向量或矩阵的转置操作运算符,ueh、uef均为权值矩阵,we是权值向量,be是偏置向量,是中间变量,t′ 1是待预测时间步。

b-3.根据骨架关注因子计算在t′时间步上的骨架关注特征图和t′时间步的骨架关注特征

b-4.由骨架-关节特征图f计算关节关注因子用于表示第k个关节与第l个关节的相关度;

其中,为时间步序列{1,…,t,t'}上的骨架-关节特征图,t′为待预测人体骨架动作序列的长度,预测骨架状态ht'由骨架关注网络得到,为中间变量,1为t 1维、元素值均为1的向量,索引下标k*=3×(k-1) *,索引下标l*=3×(l-1) *,*=1,2,3,关节k的关节动作关节l的关节动作τ2是softmax函数中的温度参数,ucb、ucm均为权值矩阵,wc是权值向量,bl是偏置向量。

b-5.由ft'计算得到骨架-关节协同关注特征图

其中,l=1,…,k,且l≠k。

b-6.计算第k个关节在时间步序列{1,…,t,t'}上的协同关注动作上下文okt'

其中,为中间变量。

步骤c.建立骨架-关节协同关注网络,其架构由gru结构的循环神经网络构成,包括骨架关注网络和关节关注网络,并将其训练:

c-1.建立骨架-关节协同关注网络,具体如下:

c-1-1.建立骨架关注网络

骨架关注网络的结构如下:

ht'=(1-zt')⊙ht'-1 zt'⊙ct',t'=1,…,t'

其中zt'、rt'、ct'和ht'分别表示d维度的更新门、重置门、记忆单元和t'时间步的骨架预测状态,σ(·)是sigmoid函数,⊙是逐元素相乘的操作符,是双曲正切函数tanh(·),w**是权值矩阵,b*是权值向量,ht'-1是t'-1时间步的骨架预测状态,是t′时间步的骨架关注特征,是已预测得到的t′时间步的人体动作。

c-1-2.建立关节关注网络

通过整合协同关注动作上下文来学习s关节的动作状态

其中,分别为输入的关节动作、更新门、重置门、记忆单元和关节动作状态,索引下标s=1,…,k,w**是权值矩阵,b*是权值向量,为s-1关节的动作状态。

c-1-3.由骨架关注网络和关节关注网络整合为骨架-关节关注网络,得到最终预测的t′ 1时间步的人体动作:

其中,γt'是t'时间步的空间置信门,γt'由预测的关节动作状态与输入的关节动作的差值激活,计算公式如下:

其中,函数是逐元素激活函数,ρ是控制激活函数带宽的参数,θ为函数的输入变量。w**是权值矩阵,b*是权值向量。

c-2.训练上述骨架-关节协同关注网络,具体方法如下:

c-2-1.损失函数l采用加权格拉姆矩阵损失:

其中,||·||f是·的f范数,分别为t′时间步上预测的和实际的人体动作,分别是格拉姆矩阵,定义如下:

其中,是用来计算不同时间步的骨架动作之间的修正量的系数矩阵,其中||·||2是·的2范数,τ是rbf核的参数。

c-2-2.对骨架-关节协同关注网络进行训练

步骤c-2-2-1.从mocap捕获的骨架动作序列中选取人体骨架中17个关节的三维角轴参数数据,作为训练使用的动作序列,序列分割为2秒的观测到的动作和400毫秒或1000毫秒的未来动作;

步骤c-2-2-2.对观测到的序列计算每一时间步的观测到的动作的骨架-关节协同关注特征图;

步骤c-2-2-3.将骨架-关节协同关注特征图输入到相应时间步的骨架-关节协同关注循环神经网络中,得到预测的动作序列。

步骤c-2-2-4.使用加权的格拉姆矩阵损失作为损失函数,计算预测得到的动作序列与实际动作序列的误差,通过后向误差传播算法来优化损失值,更新步骤c-2-2-3中的网络参数。

如图2所示,本发明所述的基于时空协同关注循环神经网络的人体骨架动作预测方法较人体动作预测的其他方法具有更好地效果。


技术特征:

1.一种基于时空协同关注循环神经网络的人体骨架动作预测方法,其特征在于,包括以下步骤:

步骤a.从mocap捕获的骨架动作序列中选取每一时刻下人体骨架中17个关节在3dangleaxis下的数据作为输入的骨架动作序列;

步骤b.对输入的骨架动作序列提取骨架-关节协同关注特征图;

步骤c.建立骨架-关节协同关注网络,并将其训练,将骨架-关节协同关注特征图输入训练好的骨架-关节协同关注网络,得到预测人体骨架动作序列。

2.根据权利要求1所述的基于时空协同关注循环神经网络的人体骨架动作预测方法,其特征在于:

步骤a中,17个关节指:两个肩关节、两个肘关节、两个腕关节、两个膝关节、两个踝关节、两个髋关节、一个下颌关节、两个椎关节、一个颈关节、一个骶髂关节。

3.根据权利要求1所述的基于时空协同关注循环神经网络的人体骨架动作预测方法,其特征在于:

步骤b中,由骨架动作序列构成骨架-关节特征图;由骨架-关节特征图计算骨架关注因子,从而得到骨架关注特征图;由骨架-关节特征图计算关节关注因子,由骨架关注特征图和关节关注因子计算得到骨架-关节协同关注特征图。

4.根据权利要求1所述的基于时空协同关注循环神经网络的人体骨架动作预测方法,其特征在于:

步骤c中,建立骨架-关节协同关注网络,其架构由gru结构的循环神经网络构成,包括骨架关注网络和关节关注网络,其中,骨架关注网络中记忆节点和输出节点均设置为51个,关节关注网络中记忆节点和输出节点均设置为t 1个,t为观测到的骨架动作序列长度,骨架关注网络和关节关注网络整合为骨架-关节协同关注网络。

5.根据权利要求1所述的基于时空协同关注循环神经网络的人体骨架动作预测方法,其特征在于:

步骤c中,训练骨架-关节协同关注网络的方法是:选取骨架动作序列中的2秒作为已观测到的动作,进行短期预测和长期预测,分别预测未来400毫秒和1000毫秒中的动作序列,使用加权的格拉姆矩阵损失作为损失函数,通过后向误差传播算法来优化损失值。

技术总结
本发明公开了一种基于时空协同关注循环神经网络的人体骨架动作预测方法,步骤如下:由MOCAP捕获人体骨架动作序列,选取人体骨架中的17个关节;对每一未来时间步,提取骨架‑关节协同关注特征;将骨架‑关节协同关注特征输入到已使用加权格拉姆损失函数训练好的骨架‑关节协同关注的循环神经网络中,生成未来的人体骨架动作。本发明可以通过已观测到的人体骨架动作预测未来一定时间内的人体骨架动作,同时关注骨骼在时间域上的演化和空间域上关节的相关性,较其他方法具有更好的人体骨架动作预测效果。

技术研发人员:舒祥波;蒋茜;张嘉超;宋砚;唐金辉
受保护的技术使用者:南京理工大学
技术研发日:2020.01.15
技术公布日:2020.06.05

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

最新回复(0)