基于多层感知机的人体3D骨架运动预测方法

未命名 08-14 阅读:98 评论:0

基于多层感知机的人体3d骨架运动预测方法
技术领域
1.本发明涉及一种智能机器人导航技术、智能汽车无人驾驶技术,具体是一种基于多层感知机的人体3d骨架运动预测方法,属于计算机视觉领域。


背景技术:

2.人体运动预测的目的是通过给定的历史运动序列预测基于骨架的人体在未来一段时间内的运动趋势,这是一项重要的计算机视觉任务,具有许多潜在的应用前景,如自动驾驶、人机交互、目标跟踪和运动规划。
3.给定人体运动的几个时间步长,能够预测这个人将如何继续运动,并想象他们未来运动的复杂动力学,进行这种预测的能力使我们能够对自己的行为做出反应和计划。同样,人类运动的预测模型是许多现实世界计算机视觉应用的重要组成部分,如监控系统,以及机器人和自动驾驶汽车的防撞。近年来,三维人体运动预测的研究备受关注,深度模型的设计是以几步三维运动轨迹作为输入,以预测未来长期的三维运动轨迹作为输出。


技术实现要素:

4.本发明的目的在于提供一种基于多层感知机的人体3d骨架运动预测方法,以使用远少于现有方法的参数实现最先进的性能。
5.本发明的目的通过以下技术方案实现:
6.一种基于多层感知机的人体3d骨架运动预测方法,包括以下步骤:
7.将3d骨架关节点序列输入第一时空可分离图卷积网络中,输出预测的第一关节坐标序列;
8.将第一关节坐标序列通过第一全连接层线性投影到隐藏维度,生成二维实值输入表;
9.将二维实值输入表输入至少一个多层感知机混合器块,输出人体骨架时空依赖信息矩阵;
10.将人体骨架时空依赖信息矩阵输入第二时空可分离图卷积网络中,输出预测的第二关节坐标序列;
11.将第二关节坐标序列依次送入第二全连接层和第三全连接层,输出预测的3d骨架关节点序列。
12.进一步地,所述第一时空可分离图卷积网络包括第一残差块、第一图卷积网络和第一时间卷积网络,所述将3d骨架关节点序列输入第一时空可分离图卷积网络中,输出预测的第一关节坐标序列,包括:
13.通过第一残差块中的卷积层和归一化层对输入的3d骨架关节点序列中的关节坐标进行编码得到residual;
14.将3d骨架关节点序列输入到第一图卷积网络中,依次对时间邻接矩阵和空间邻接矩阵进行爱因斯坦求和;
15.将求和结果输入到第一时间卷积网络中,利用时空表示预测未来的关节坐标
16.输出第一关节坐标序列
17.进一步地,所述3d骨架关节点序列为th为时间步长,三维人体姿态x
t
∈r3×j,j为人体骨架关节点的个数,预测的第一关节坐标序列为其中k为空间维,k=3*j,每个时间步长x
t
的框架被平化为长度k=3*j的向量;所述将第一关节坐标序列通过第一全连接层线性投影到隐藏维度,生成二维实值输入表,包括:
18.将每个身体骨架x
t
∈rk通过第一全连接层线性投影到隐藏维度c,得到二维实值输入表
19.进一步地,所述多层感知机混合器块包括通道混合mlp、标记混合mlp、第一跳连接层、第二跳连接层、第一se块和第二se块,所述将二维实值输入表输入至少一个多层感知机混合器块,输出人体骨架时空依赖信息矩阵,包括:
20.将二维实值输入表进行仿射变换后输入到通道混合mlp,提取骨架序列中的空间依赖;
21.将提取到的骨架序列空间依赖输入到第一se块中,自动加权时间步的影响,通过第一跳连接层将二维实值输入表与第一se块的输出相结合,得到人体骨架空间依赖矩阵;
22.将人体骨架空间依赖矩阵依次进行转置、仿射变换后输入到标记混合mlp中学习骨架序列时间信息,对标记混合mlp的输出进行转置操作,得到骨架序列的时间依赖;
23.将得到的骨架序列时间依赖输入到第二se块中,自动加权时间步的影响,通过第二跳连接层将人体骨架空间依赖矩阵与第二se块的输出相结合,得到人体骨架时空依赖信息矩阵;
24.若有多个多层感知机混合器块,将得到的人体骨架时空依赖信息矩阵输入下一个多层感知机混合器块,重复上述步骤,直至输出最终的人体骨架时空依赖信息矩阵。
25.进一步地,所述通道混合mlp包括依次连接的第四全连接层、第一gelu激活函数、第一dropout层和第五全连接层,所述将二维实值输入表进行仿射变换后输入到通道混合mlp,提取骨架序列中的空间依赖,包括:
26.通过作用于二维实值输入表的列学习身体关节之间的细粒度空间依赖性,每列编码一个时间步长的空间信息,计算流程为:
27.y1=w2σ1(w1aff(y))
28.式中,y1为骨架序列空间依赖,w1∈rc×c,w2∈rc×c,c为隐藏维度,σ1(
·
)是第一gelu激活函数,aff是仿射变换,y为二维实值输入表。
29.进一步地,所述第一se块包括第一全局最大池化层、第六全连接层、第一relu激活函数、第七全连接层、第一sigmoid激活函数,所述将提取到的骨架序列空间依赖输入到第一se块中,自动加权时间步的影响,计算流程为:
30.31.其中为第一se块的输出,δ1(
·
)和σ
r1
(
·
)分别为第一sigmoid激活函数和第一relu激活函数,权重ws∈rs×e和we∈re×s在空间和时间混合单元之间共享,s、e分别为关节数和帧数;
32.所述通过第一跳连接层将二维实值输入表与第一se块的输出相结合,得到人体骨架空间依赖矩阵,计算流程为:
[0033][0034]
其中ys为人体骨架空间依赖矩阵。
[0035]
进一步地,所述标记混合mlp包括第八全连接层、第二gelu激活函数、第二dropout层和第九全连接层,所述将人体骨架空间依赖矩阵依次进行转置、仿射变换后输入到标记混合mlp中,学习骨架序列时间信息,并对标记混合mlp的输出进行转置操作,计算流程为:
[0036]
y2=(w4σ2(w3aff(y
st
)))
t
[0037]
其中y2为骨架序列时间依赖,th为时间步长,y
st
为ys的转置,σ2(v)为第二gelu激活函数。
[0038]
进一步地,所述第二se块包括第二全局最大池化层、第十全连接层、第二relu激活函数、第十一全连接层、第二sigmoid激活函数,所述将得到的骨架序列时间依赖输入到第二se块中,自动加权时间步的影响,计算流程为:
[0039][0040]
其中为第二se块的输出,δ2(
·
)和σ
r2
(v)分别为第二sigmoid激活函数和第二relu激活函数,权重ws∈rs×e和we∈re×s在空间和时间混合单元之间共享,s、e分别为关节数和帧数;
[0041]
所述通过第二跳连接层将人体骨架空间依赖矩阵与第二se块的输出相结合,得到人体骨架时空依赖信息矩阵,计算流程为:
[0042][0043]
其中y
t
为人体骨架时空依赖信息矩阵。
[0044]
进一步地,所述第二时空可分离图卷积网络包括第二残差块、第二图卷积网络和第二时间卷积网络,所述将人体骨架时空依赖信息矩阵输入第二时空可分离图卷积网络中,输出预测的第二关节坐标序列,包括:
[0045]
通过第二残差块中的卷积层和归一化层对输入的人体骨架时空依赖信息矩阵y
t
进行编码得到residual
(n)

[0046]
将人体骨架时空依赖信息矩阵y
t
同时输入到第二图卷积网络中,依次对时间邻接矩阵和空间邻接矩阵进行爱因斯坦求和;
[0047]
将求和结果输入到第二时间卷积网络中,利用时空表示预测未来的关节坐标x
(n)

[0048]
输出第二关节坐标序列y
(n)
=x
(n)
+residual
(n)

[0049]
进一步地,所述将第二关节坐标序列依次送入第二全连接层和第三全连接层,输出预测的3d骨架关节点序列,包括:
[0050]
通过第二全连接层将第二关节坐标序列y
(n)
的隐藏维度c变换为k=3*j,通过第三
全连接层将y
(n)
的每个投影到一个时间长度为tf的向量上,得到未来的3d骨架关节点序列:
[0051][0052]
其中b
p1
∈r3×j,b
p2
∈rc为全连接层的权值。
[0053]
与现有技术相比,本发明的有益效果是:
[0054]
本发明通过顺序混合两种模式来学习时空3d身体姿势依赖关系,这是一种简单而有效的人体运动预测网络,仅包含三个组件:全连接层、仿射变换和转置操作,用远少于现有方法的参数实现了最先进的性能;多层感知机混合器是一个序列到序列的模型,主要有三个模块:姿态嵌入、时空混合和姿态预测,姿态嵌入和时空混合耦合在一起,编码人体关节的时空依赖性;姿态嵌入由时空可分离图卷积和全连接层组成,对给定的历史3d姿态进行编码,并对给定的历史序列进行时空关系的预学习;在时空混合中,每个姿态首先由一个仿射变换对特征进行线性变换,并给出重复的多层感知混合器块,每个块包含两个具有跳过连接的多层感知机;在一个单一的时空mlp中,通过两个混合操作来模拟身体关节随时间的相互作用,空间混合允许关节空间位置之间的相互作用,而时间混合允许观察到的运动的长期相互作用;在姿态预测中,混合的输出最终被聚合成一个全局矢量,并输入到mlp中预测未来的运动;本发明提出的基于多层感知机的人体3d骨架运动预测方法可以以一种简单的方式建模,而无需显式地融合空间和时间信息,作为一个极端的例子,单个全连接层已经可以实现合理的性能。
[0055]
本发明通过在捕捉时间-空间域特征时引入多层感知机网络和时空可分离图卷积网络,提高了短期和长期预测的最新水平,网络计算复杂度低、耗时短、效率高,对不同人体的尺度差异、运动复杂度差异等难点具有较强鲁棒性,对相似的运动类别有着较强的泛化能力。
附图说明
[0056]
图1为本发明的基于多层感知机的人体3d骨架运动预测方法流程图;
[0057]
图2为本发明中第一时空可分离图卷积网络示意图;
[0058]
图3为本发明中第一squeeze-and-excitation(se)块示意图;
[0059]
图4为人体3d骨架运动预测图。
具体实施方式
[0060]
下面结合具体实施例对本发明作进一步描述。以下实施例仅用于更加清楚地说明本发明的技术方案,而不能以此来限制本发明的保护范围。
[0061]
本发明提供了一种基于多层感知机的人体3d骨架运动预测方法,结合图1所示,包括以下步骤:
[0062]
步骤1:将3d骨架关节点序列数据输入第一时空可分离图卷积网络中,输出预测的第一关节坐标序列;
[0063]
第一时空可分离图卷积网络(sts-gcn)是将邻接矩阵a
st
分解为时间邻接矩阵a
t
和空间邻接矩阵as,计算方式为:
[0064]h(l+1)
=σ(a
s-(l)at-(l)h(l)w(l)
)
[0065]
式中,a
st-(l)
∈r
vt
×
vt
是层l的时空邻接矩阵,a
s-(l)
是层l的空间邻接矩阵,a
t-(l)
是层l的时间邻接矩阵,是层l的可训练图的卷积权值,将每个图节点从c
(l)
维度投影到c
(l+1)
维度,σ是relu、prelu或tanh等激活函数;h
(l)
等于第l-1层图卷积的输出,v为关节点数,t为输入帧数。
[0066]
如图2所示,第一时空可分离图卷积网络包括第一残差块、第一图卷积网络(gcn)和第一时间卷积网络(tcn)。第一残差块包含二维卷积层和batchnorm归一化层,第一时间卷积网络包括卷积层、归一化层和丢弃(dropout)层。
[0067]
人体骨架运动信息是以序列的形式存在的,网络的输入输出都是人体骨架坐标序列信息。
[0068]
将人体运动定义为th+tf个连续帧的序列,其中每个帧参数化了人体关节的角度或3d坐标。设为到当前时间步长th的历史运动序列,三维人体姿态x
t
∈r3×j,j为人体骨架关节点的个数,tf为预测的未来时间长度。
[0069]
将3d骨架关节点序列数据输入第一时空可分离图卷积网络中,首先通过第一残差块中的卷积层和归一化层对给定输入序列中观察到的身体关节坐标进行编码得到residual;同时将姿态序列输入到第一图卷积网络中,依次对时间邻接矩阵a
t
和空间邻接矩阵as进行爱因斯坦求和。最后将求和结果输入到第一时间卷积网络中,利用时空表示来预测未来的关节坐标这样就预学习到了人体运动姿态时空关系,输出结果为第一关节坐标序列
[0070]
步骤2:将第一关节坐标序列通过第一全连接层线性投影到隐藏维度,生成二维实值输入表;
[0071]
对步骤1中得到的第一关节坐标序列x,每个时间步长x
t
的框架被平化为长度k=3*j的向量,这就得到了一个二维张量其中一个时间维th和一个空间维k。为了简单起见,省略下标th,从而用x代替将每个身体骨架x
t
∈rk通过单个全连接层线性投影到隐藏维度c,学习姿态嵌入,生成二维实值输入表
[0072]
其中,用第一全连接层提取预测骨架坐标二维实值输入表进行姿态嵌入,计算方式为:
[0073]
y=w0x+b0[0074]
其中为全连接层的权值。
[0075]
步骤3:将二维实值输入表输入至少一个多层感知机(mlp)混合器块,输出人体骨架时空依赖信息矩阵;
[0076]
其中,多层感知机混合器块可以为一个或多个,每个多层感知机混合器块包括通道混合mlp、标记混合mlp、第一跳连接层、第二跳连接层、第一se块和第二se块。
[0077]
若仅有一个多层感知机混合器块,如图1所示,该步骤具体包括:
[0078]
步骤301:将二维实值输入表进行仿射变换后输入到通道混合mlp,提取骨架序列
中的空间依赖;
[0079]
将二维实值输入表进行仿射变换,进行数据规范化操作,输出规范化的骨架坐标信息aff(y),计算方式为:
[0080]
aff
α,β
(x)=diag(α)x+β
[0081]
其中α和β为可学习权向量,aff是仿射变换,diag为对角矩阵。
[0082]
将经过仿射变换后的骨架坐标信息aff(y)输入到多层感知机混合器块的通道混合mlp,提取骨架序列中的空间依赖,如图1所示,通道混合mlp包含第四全连接层、第一gelu激活函数层、第一dropout层、第五全连接层,计算流程为
[0083]
y1=w2σ1(w1aff(y))
[0084]
式中,y1为骨架序列空间依赖,w1∈rc×c,w2∈rc×c,σ1(
·
)是第一gelu激活函数,aff是仿射变换。
[0085]
即,通过作用于仿射变换后aff(y)的列来学习身体关节之间的细粒度空间依赖性,每列编码一个时间步长的空间信息。
[0086]
步骤302:将提取到的骨架序列空间依赖输入到第一squeeze-and-excitation(se)块中,自动加权时间步的影响,通过第一跳连接层将二维实值输入表与第一se块的输出相结合,得到人体骨架空间依赖矩阵;
[0087]
如图3所示,第一se块包括第一全局最大池化层(globalpooling)、第六全连接层、第一relu激活函数、第七全连接层、第一sigmoid激活函数。
[0088]
将基于通道混合mlp提取到的骨架序列空间依赖y1输入到第一se块中,即依次进行第一全局最大池化、第六全连接层、第一relu激活函数、第七全连接层、第一sigmoid激活函数,来实现自动调节输入重要性,帮助网络重新加权每个时间步的影响,计算流程为:
[0089][0090]
其中为第一se块的输出,δ1(
·
)和σ
r1
(
·
)分别为第一sigmoid激活函数和第一relu激活函数,权重ws∈rs×e和we∈re×s在空间和时间混合单元之间共享,s、e分别为关节数和帧数。
[0091]
在步骤2之后引入了第一跳连接层,如图1所示,通过第一跳连接层将二维实值输入表y与第一se块的输出相结合,得到人体骨架空间依赖矩阵ys,计算流程为:
[0092][0093]
步骤303:将人体骨架空间依赖矩阵依次进行转置、仿射变换后输入到标记混合mlp中学习骨架序列时间信息,对标记混合mlp的输出进行转置操作,得到骨架序列的时间依赖;
[0094]
如图1所示,标记混合mlp,包括第八全连接层、第二激活函数层gelu、第二dropout层和第九全连接层。
[0095]
首先将人体骨架空间依赖矩阵ys进行转置操作,然后进行仿射变换,之后输入到标记混合mlp中学习完骨架序列时间信息,然后再对标记混合mlp的输出进行转置操作,计算流程为:
[0096]
y2=(w4σ2(w3aff(y
st
)))
t
[0097]
其中y2为骨架序列时间依赖,y
st
为ys的转置,σ2(
·
)为第二gelu激活函数。
[0098]
通过作用于仿射变换后aff(y
st
)的列来学习身体关节之间的细粒度时间依赖性。时间混合的每个线性算子将每个时间步长分配为所有帧的线性组合,其中线性权值取决于帧的位置。因此,可以在每个混合步骤中维护时间信息,允许模型通过应用帧之间的长期交互来捕获长期依赖关系。
[0099]
步骤304:将得到的骨架序列时间依赖输入到第二se块中,自动加权时间步的影响,通过第二跳连接层将人体骨架空间依赖矩阵与第二se块的输出相结合,得到人体骨架时空依赖信息矩阵;
[0100]
第二se块的结构与第一se块相同,第二se块包括第二全局最大池化层、第十全连接层、第二relu激活函数、第十一全连接层、第二sigmoid激活函数。
[0101]
将步骤303的输出y2输入到第二se块(即依次进行第二全局最大池化、第十全连接层、第二relu激活函数、第十一全连接层、第二sigmoid激活函数)中进行自动加权时间步的影响,计算流程为:
[0102][0103]
其中为第二se块的输出,δ2(
·
)和σ
r2
(
·
)分别为第二sigmoid激活函数和第二relu激活函数,权重ws∈rs×e和we∈re×s在空间和时间混合单元之间共享,s、e分别为关节数和帧数。
[0104]
在步骤302引入了第二跳连接层,如图1所示,通过第二跳连接层将人体骨架空间依赖矩阵ys与第二se块的输出相结合,得到人体骨架时空依赖信息矩阵y
t
,计算流程为:
[0105][0106]
若有多个多层感知机混合器块,则将得到的人体骨架时空依赖信息矩阵y
t
输入下一个多层感知机混合器块,重复步骤301~304,将得到的新的人体骨架时空依赖信息矩阵继续输入下一个多层感知机混合器块,直至输出最终的人体骨架时空依赖信息矩阵。
[0107]
步骤4:将人体骨架时空依赖信息矩阵输入第二时空可分离图卷积网络中,输出预测的第二关节坐标序列;
[0108]
第二时空可分离图卷积网络与第一时空可分离图卷积网络相同,也是将邻接矩阵a
st
分解为时间邻接矩阵a
t
和空间邻接矩阵as,其结构与第一时空可分离图卷积网络相同,包括第二残差块、第二图卷积网络和第二时间卷积网络。第二残差块包含二维卷积层和batchnorm归一化层,第二时间卷积网络包括卷积层、归一化层和dropout层。
[0109]
将人体骨架时空依赖信息矩阵y
t
输入第二时空可分离图卷积网络中,进行空域卷积的计算,提取空域的高阶特征,之后将空域图卷积的输出特征进行时域图卷积操作。具体为,首先通过第二残差块中的卷积层和归一化层对给定输入y
t
进行编码得到residual
(n)
,同时将y
t
输入到第二图卷积网络中依次对时间邻接矩阵a
t
和空间邻接矩阵as进行爱因斯坦求和,接着将求和结果输入到第二时间卷积网络,利用时空表示来预测未来的关节坐标x
(n)
,得到输出的第二关节坐标序列y
(n)
=x
(n)
+residual
(n)

[0110]
步骤5:将第二关节坐标序列依次送入第二全连接层和第三全连接层,输出预测的
3d骨架关节点序列。
[0111]
基于两层非线性前馈网络,即通过第二全连接层将第二关节坐标序列y
(n)
的隐藏维度c变换为k=3*j,通过第三全连接层将y
(n)
的每个投影到一个时间长度为tf的向量上,进一步传播混合特征,预测得到未来的3d骨架关节点序列:
[0112][0113]
其中b
p1
∈r3×j,b
p2
∈rc为全连接层的权值。
[0114]
实施例
[0115]
a)人体3d骨架姿态嵌入
[0116]
设为到当前时间步长th的历史运动序列,三维人体姿态x
t
∈r3×j,j为人体骨架关节点的个数。本技术的目标是学习历史序列与未来序列的映射。
[0117]
普遍来看,3d人体骨架数据的张量形式为(b,c,t,n),其中,b表示批输入大小,c表示通道维度,t表示人体骨架序列中的时间帧数,n表示人体骨架关节点的个数。所以输入数据张量形式为(50,3,10,22)。
[0118]
将3d骨架关节点序列数据输入到第一时空可分离图卷积网络中,如图2所示,首先通过第一残差块中的二维卷积层和批归一化层对给定输入帧中观察到的身体关节坐标进行编码得到residual(50,3,10,22),同时将输入帧输入到第一图卷积网络中依次对时间邻接矩阵a
t
(22,10,10)和空间邻接矩阵as(10,22,22)进行爱因斯坦求和(einsum),接着将求和结果输入到第一时间卷积网络,利用时空表示来预测未来的关节坐标最终得到未来的第一关节坐标序列
[0119]
给定观察到的第一关节坐标序列张量形式为(50,10,66),每个时间步长x
t
的框架被平化为长度k=3*j的向量,j=22。这就得到了一个二维张量其中一个时间维th和一个空间维k。用x代替张量形式为(50,10,66)。将每个身体骨架x
t
∈rk通过单个全连接层线性投影到隐藏维度c=50,得到姿态嵌入的二维实值输入表张量形式为(50,10,50)。
[0120]
b)人体3d骨架空间依赖学习
[0121]
在得到姿态嵌入的二维实值输入表后,进行仿射变换aff
α,β
(x)=diag(α)x+β,进行数据规范化操作,输出规范化的骨架坐标信息aff(y),张量形式为(50,10,50)。
[0122]
将经过仿射变换后的骨架坐标信息aff(y)输入到多层感知机混合器块的通道混合mlp(如图1所示),提取骨架序列中的空间依赖,通道混合mlp包含第四全连接层、第一gelu激活函数层、第一dropout层、第五全连接层,计算流程为y1=w2σ1(w1aff(y)),张量形式为(50,10,50),即通过作用于仿射变换后aff(y)的列来学习身体关节之间的细粒度空间依赖性,每列编码一个时间步长的空间信息。
[0123]
将基于通道混合mlp提取到的骨架序列空间依赖y1输入到第一se块中(如图3所
示),计算流程为来实现自动调节输入重要性,帮助网络重新加权每个时间步的影响。
[0124]
在步骤2之后引入了第一跳连接层(如图1所示),因此得到人体骨架空间依赖矩阵张量形式为(50,10,50)。
[0125]
c)人体3d骨架时间信息学习
[0126]
在得到人体骨架空间依赖矩阵ys后,首先将ys进行转置操作,张量形式为(50,50,10),然后进行仿射变换aff
α,β
(x)=diag(α)x+β操作,之后输入到标记混合mlp(如图1所示)中学习骨架序列时间信息,然后再对标记混合mlp的输出进行转置操作,张量形式为(50,10,50),计算流程为y2=(w4σ2(w3aff(y
st
)))
t
,即通过作用于归一化操作后aff(y
st
)的列来学习身体关节之间的细粒度时间依赖性,在每个混合步骤中维护时间信息,允许模型通过应用帧之间的长期交互来捕获长期依赖关系,最后输入到第二se块中进行自动加权时间步的影响,计算流程为
[0127]
在步骤b)之后引入了第二跳连接层(如图1所示),因此得到人体骨架时空依赖信息矩阵张量形式为(50,10,50)。
[0128]
d)人体3d骨架姿态预测
[0129]
在得到人体骨架时空依赖信息矩阵y
t
之后,将y
t
输入第二时空可分离图卷积网络中,首先通过第二残差块中的二维卷积层和batchnorm归一化层对给定输入y
t
进行编码得到residual
(n)
,数据形式为(50,10,50),同时将y
t
输入到第二图卷积网络中依次对时间邻接矩阵a
t
(22,10,10)和空间邻接矩阵as(10,22,22)进行爱因斯坦求和(einsum),接着将求和结果输入到第二时间卷积网络,利用时空表示来预测未来的关节坐标x
(n)
(50,10,50),得到输出结果y
(n)
=x
(n)
+residual
(n)

[0130]
基于两层非线性前馈网络,第二全连接将隐藏维度c=50变换为66=3*22,第三全连接层将y
(n)
的每个投影到一个长度为tf的向量上,进一步传播混合特征,数据张量形式由(50,10,66)变为(50,25,66),得到未来的姿态预测序列如图4所示。
[0131]
通过以上实施例,本发明对于给定观察到的运动序列,利用时空可分离图卷积网络对给定的人体骨架运动信息进行时间-空间关系预学习得到时间邻接矩阵和空间邻接矩阵,再将每个身体骨架通过单个全连接层线性投影到隐藏维度,从而实现姿态嵌入得到一个二维实值输入表;多层感知机混合器中的通道混合mlp首先作用于二维实值输入表的列,学习到人体骨架运动信息的空间依赖,并在所有列中共享,其次标记混合mlp作用于二维实值输入表的行,学习到人体骨架运动信息的时间信息,并在所有行中共享;将二维实值输入表作为类邻接矩阵进行空域图卷积的计算,提取空域的高阶特征,之后将空域图卷积的输出特征进行时域图卷积操作,得到输出结果;mlp的解码器进一步传播混合特征,用于未来的姿态预测。本发明在捕捉时间-空间域特征时引入了多层感知机网络和时空可分离图卷积网络,提高了短期和长期预测的最新水平,网络计算复杂度低、耗时短、效率高,对不同人体的尺度差异、运动复杂度差异等难点具有较强鲁棒性,对相似的运动类别有着较强的泛
化能力。
[0132]
在另一实施例中,本发明提供一种存储一个或多个程序的计算机可读存储介质,所述一个或多个程序包括指令,所述指令当由计算设备执行时,使得所述计算设备执行前述的基于多层感知机的人体3d骨架运动预测方法。
[0133]
在另一实施例中,本发明提供一种计算设备,包括:一个或多个处理器、一个或多个存储器以及一个或多个程序,其中一个或多个程序存储在所述一个或多个存储器中,并被配置为由所述一个或多个处理器执行,所述一个或多个程序包括用于执行前述的基于多层感知机的人体3d骨架运动预测方法。
[0134]
本领域内的技术人员应明白,本技术的实施例可提供为方法、系统、或计算机程序产品。因此,本技术可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本技术可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
[0135]
本技术是参照根据本技术实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
[0136]
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
[0137]
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
[0138]
以上已以较佳实施例公布了本发明,然其并非用以限制本发明,凡采取等同替换或等效变换的方案所获得的技术方案,均落在本发明的保护范围内。

技术特征:
1.一种基于多层感知机的人体3d骨架运动预测方法,其特征在于,包括以下步骤:将3d骨架关节点序列输入第一时空可分离图卷积网络中,输出预测的第一关节坐标序列;将第一关节坐标序列通过第一全连接层线性投影到隐藏维度,生成二维实值输入表;将二维实值输入表输入至少一个多层感知机混合器块,输出人体骨架时空依赖信息矩阵;将人体骨架时空依赖信息矩阵输入第二时空可分离图卷积网络中,输出预测的第二关节坐标序列;将第二关节坐标序列依次送入第二全连接层和第三全连接层,输出预测的3d骨架关节点序列。2.根据权利要求1所述的基于多层感知机的人体3d骨架运动预测方法,其特征在于,所述第一时空可分离图卷积网络包括第一残差块、第一图卷积网络和第一时间卷积网络,所述将3d骨架关节点序列输入第一时空可分离图卷积网络中,输出预测的第一关节坐标序列,包括:通过第一残差块中的卷积层和归一化层对输入的3d骨架关节点序列中的关节坐标进行编码得到residual;将3d骨架关节点序列输入到第一图卷积网络中,依次对时间邻接矩阵和空间邻接矩阵进行爱因斯坦求和;将求和结果输入到第一时间卷积网络中,利用时空表示预测未来的关节坐标输出第一关节坐标序列3.根据权利要求1所述的基于多层感知机的人体3d骨架运动预测方法,其特征在于,所述3d骨架关节点序列为t
h
为时间步长,三维人体姿态x
t
∈r3×
j
,j为人体骨架关节点的个数,预测的第一关节坐标序列为其中k为空间维,k=3*j,每个时间步长x
t
的框架被平化为长度k=3*j的向量;所述将第一关节坐标序列通过第一全连接层线性投影到隐藏维度,生成二维实值输入表,包括:将每个身体骨架x
t
∈r
k
通过第一全连接层线性投影到隐藏维度c,得到二维实值输入表4.根据权利要求1所述的基于多层感知机的人体3d骨架运动预测方法,其特征在于,所述多层感知机混合器块包括通道混合mlp、标记混合mlp、第一跳连接层、第二跳连接层、第一se块和第二se块,所述将二维实值输入表输入至少一个多层感知机混合器块,输出人体骨架时空依赖信息矩阵,包括:将二维实值输入表进行仿射变换后输入到通道混合mlp,提取骨架序列中的空间依赖;将提取到的骨架序列空间依赖输入到第一se块中,自动加权时间步的影响,通过第一跳连接层将二维实值输入表与第一se块的输出相结合,得到人体骨架空间依赖矩阵;将人体骨架空间依赖矩阵依次进行转置、仿射变换后输入到标记混合mlp中学习骨架序列时间信息,对标记混合mlp的输出进行转置操作,得到骨架序列的时间依赖;
将得到的骨架序列时间依赖输入到第二se块中,自动加权时间步的影响,通过第二跳连接层将人体骨架空间依赖矩阵与第二se块的输出相结合,得到人体骨架时空依赖信息矩阵;若有多个多层感知机混合器块,将得到的人体骨架时空依赖信息矩阵输入下一个多层感知机混合器块,重复上述步骤,直至输出最终的人体骨架时空依赖信息矩阵。5.根据权利要求4所述的基于多层感知机的人体3d骨架运动预测方法,其特征在于,所述通道混合mlp包括依次连接的第四全连接层、第一gelu激活函数、第一dropout层和第五全连接层,所述将二维实值输入表进行仿射变换后输入到通道混合mlp,提取骨架序列中的空间依赖,包括:通过作用于二维实值输入表的列学习身体关节之间的细粒度空间依赖性,每列编码一个时间步长的空间信息,计算流程为:y1=w2σ1(w1aff(y))式中,y1为骨架序列空间依赖,w1∈r
c
×
c
,w2∈r
c
×
c
,c为隐藏维度,σ1(
·
)是第一gelu激活函数,aff是仿射变换,y为二维实值输入表。6.根据权利要求5所述的基于多层感知机的人体3d骨架运动预测方法,其特征在于,所述第一se块包括第一全局最大池化层、第六全连接层、第一relu激活函数、第七全连接层、第一sigmoid激活函数,所述将提取到的骨架序列空间依赖输入到第一se块中,自动加权时间步的影响,计算流程为:其中为第一se块的输出,δ1(
·
)和σ
r1
(
·
)分别为第一sigmoid激活函数和第一relu激活函数,权重w
s
∈r
s
×
e
和w
e
∈r
e
×
s
在空间和时间混合单元之间共享,s、e分别为关节数和帧数;所述通过第一跳连接层将二维实值输入表与第一se块的输出相结合,得到人体骨架空间依赖矩阵,计算流程为:其中y
s
为人体骨架空间依赖矩阵。7.根据权利要求6所述的基于多层感知机的人体3d骨架运动预测方法,其特征在于,所述标记混合mlp包括第八全连接层、第二gelu激活函数、第二dropout层和第九全连接层,所述将人体骨架空间依赖矩阵依次进行转置、仿射变换后输入到标记混合mlp中,学习骨架序列时间信息,并对标记混合mlp的输出进行转置操作,计算流程为:y2=(w4σ2(w3aff(y
st
)))
t
其中y2为骨架序列时间依赖,t
h
为时间步长,y
st
为y
s
的转置,σ2(
·
)为第二gelu激活函数。8.根据权利要求7所述的基于多层感知机的人体3d骨架运动预测方法,其特征在于,所述第二se块包括第二全局最大池化层、第十全连接层、第二relu激活函数、第十一全连接层、第二sigmoid激活函数,所述将得到的骨架序列时间依赖输入到第二se块中,自动加权时间步的影响,计算流程为:
其中为第二se块的输出,δ2(
·
)和σ
r2
(
·
)分别为第二sigmoid激活函数和第二relu激活函数,权重w
s
∈r
s
×
e
和w
e
∈r
e
×
s
在空间和时间混合单元之间共享,s、e分别为关节数和帧数;所述通过第二跳连接层将人体骨架空间依赖矩阵与第二se块的输出相结合,得到人体骨架时空依赖信息矩阵,计算流程为:其中y
t
为人体骨架时空依赖信息矩阵。9.根据权利要求8所述的基于多层感知机的人体3d骨架运动预测方法,其特征在于,所述第二时空可分离图卷积网络包括第二残差块、第二图卷积网络和第二时间卷积网络,所述将人体骨架时空依赖信息矩阵输入第二时空可分离图卷积网络中,输出预测的第二关节坐标序列,包括:通过第二残差块中的卷积层和归一化层对输入的人体骨架时空依赖信息矩阵y
t
进行编码得到residual
(n)
;将人体骨架时空依赖信息矩阵y
t
同时输入到第二图卷积网络中,依次对时间邻接矩阵和空间邻接矩阵进行爱因斯坦求和;将求和结果输入到第二时间卷积网络中,利用时空表示预测未来的关节坐标x
(n)
;输出第二关节坐标序列y
(n)
=x
(n)
+residual
(n)
。10.根据权利要求9所述的基于多层感知机的人体3d骨架运动预测方法,其特征在于,所述将第二关节坐标序列依次送入第二全连接层和第三全连接层,输出预测的3d骨架关节点序列,包括:通过第二全连接层将第二关节坐标序列y
(n)
的隐藏维度c变换为k=3*j,通过第三全连接层将y
(n)
的每个投影到一个时间长度为t
f
的向量上,得到未来的3d骨架关节点序列:其中b
p1
∈r3×
j
,b
p2
∈r
c
为全连接层的权值。

技术总结
本发明公开了一种基于多层感知机的人体3D骨架运动预测方法。将3D骨架关节点序列数据输入第一时空可分离图卷积网络中,输出预测的第一关节坐标序列;将第一关节坐标序列通过第一全连接层线性投影到隐藏维度,生成二维实值输入表;将二维实值输入表输入至少一个多层感知机混合器块,输出人体骨架时空依赖信息矩阵;将人体骨架时空依赖信息矩阵输入第二时空可分离图卷积网络中,输出预测的第二关节坐标序列;将第二关节坐标序列依次送入第二全连接层和第三全连接层,输出预测的3D骨架关节点序列。本发明提高了短期和长期预测的最新水平,网络计算复杂度低、耗时短、效率高,对不同人体的尺度差异、运动复杂度差异等难点具有较强鲁棒性。棒性。棒性。


技术研发人员:高浩 黄海涛 李昊伦
受保护的技术使用者:南京邮电大学
技术研发日:2023.05.16
技术公布日:2023/8/13
版权声明

本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

飞行汽车 https://www.autovtol.com/

分享:

扫一扫在手机阅读、分享本文

相关推荐