一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

基于注意力机制融合多流图的人体姿态预测方法及系统与流程

2021-11-15 18:57:00 来源:中国专利 TAG:
1.本发明涉及计算机视觉和图像处理领域,具体涉及一种基于注意力机制融合多流图神经网络的人体姿态预测方法及系统。
背景技术
::2.近年来,随着成本较低的消费级深度相机的广泛使用,人体三维运动姿态的低成本、实时采集成为了可能,因此人体姿态预测成为了图形学与计算机视觉交叉的热点问题,并在机器人领域、医疗领域、自动驾驶技术上有着广阔的应用前景和丰富的应用场景。3.在机器人领域,外骨骼机器人相关技术是研究的一大热点,在航空航天中有着非常重要的应用,被认为是开展在轨建造、维修及月面和火星表面活动的关键支撑装备,对于航天出舱任务的完成和应急故障处置都会发挥极为重要的作用。人体姿态预测算法通过对人体运动规律进行识别分析,对航天员的运动意图进行判断和预测,辅助外骨骼机器人完成力柔顺控制,减少外骨骼机器人控制中出现的力突变,从而有效地提高航天服对航天员运动的适应性。4.运动捕捉技术早在五十年前就已问世,广泛应用于影视和游戏等娱乐行业,同时也在医疗健康行业帮助着具有运动障碍的患者。但目前,人们仍然无法脱离真实的运动捕捉数据去生成逼真的、符合人体结构特点和运动平衡状态的云中数据,但是目前主流的运动捕捉技术仍然是基于惯性传感器或复杂的光学传感系统的,存在造价高、需要专业场地等劣势,距离“飞入寻常百姓家”,造福需要依靠辅助器械完成日常运动的患者们,还有很远的距离。人体姿态预测算法应用于运动生成技术中,可以大大提高运动捕捉数据的利用率,降低运动数据的后期处理工作量。通过逐渐普及的飞行时间相机,人体姿态预测算法会更容易应用于人机交互领域,例如,人体姿态预测算法根据采集到的受试者的动作,指导受试者完成正确的动作,从而辅助因罹患神经退行性疾病导致肢体认知缺陷的患者康复。5.因此,人体姿态预测具有重要的应用价值,但由于人体的运动是具有200个以上自由度,而且人体各个关节的自由度之间有着极大的相关性,如逆运动学、动力学等传统方法对人体运动进行模拟非常困难,无法建立一个精确的人体运动模型,并且人体运动规律复杂性非常高,特别是人体运动的平衡协调机制难以模拟。这给基于传统统计学习方法的人体动作预测带来了巨大的困难。6.近年来,随着计算机硬件和机器学习算法的发展,基于深度学习的人体预测方法被提出。在基于深度学习模型方法中,研究者无需关注复杂的运动学约束和参数等不同行为的认知能力,只需构建深度神经网络模型,然后经过大量运动数据的训练,可以学习到人体运动数据中某些潜在的运动特征,并据此预测出一个人接下来的动作轨迹。早期的深度学习模型主要是基于循环神经网络和卷积神经网络,但有一定的缺陷:循环神经网络强调序列的时序关系,忽略空间信息;卷积神经网络的工作则令单帧骨骼数据构造成一维向量,将序列视为二维矩阵,关注于单一关节随时间的位置变化,而忽略了人体各个关节之间的相关性,不能充分利用人体本身的拓扑结构信息。7.作为最近两年才逐渐受到关注的深度学习模型,图神经网络是一种专门用来处理图数据的神经网络,被应用于推荐系统、推理证明、化学、交通、类脑智能等各个研究领域。最新的工作提出基于图神经网络的方法,用图表示人体的三维骨骼,可以很好地利用人体骨架的先验结构信息。现有的基于图神经网络的方法简单地按照人体关节的空间邻接关系构造邻接矩阵,然而并未考虑人体动作的产生方式,因此不能充分表示运动中人体各关节的联系。人体运动是由运动链上相互关联的诸多关节协作完成,而非仅由相邻的少数关节完成。且基于人体工程学的研究已经表明,人体运动链通常包含三自由度的关节和二自由度的关节,且这两种关节往往在运动链中交替分布。在运动链中具有不同自由度的关节在运动中有着不同的受力特性。因此,仅仅按照人体关节的空间邻接关系构造邻接矩阵并不能充分地利用人体关节的结构和运动学上的先验信息。8.因此,如何能够充分利用人体关节的结构和运动学上的先验信息,成了一个亟待的问题技术实现要素:9.为了解决上述技术问题,本发明提供一种基于注意力机制融合多流图神经网络的人体姿态预测方法及系统。10.本发明技术解决方案为:一种基于注意力机制融合多流图神经网络的人体姿态预测方法,包括:11.步骤s1:获取用于训练的人体关键关节的三维位置数据序列,根据预设的输入序列和输出序列的长度,将三维位置数据序列分割为输入序列和输出序列;根据输入序列构建图数据;12.步骤s2:构建基于注意力机制融合多流图神经网络模型;将图数据输入基于注意力机制融合多流图神经网络模型进行训练,得到训练好的基于注意力机制融合多流图神经网络模型;13.步骤s3:获取用于预测的人体关键关节的三维位置数据序列,构建图数据,输入训练好的基于注意力机制融合多流图神经网络模型,得到人体姿态的预测值。14.本发明与现有技术相比,具有以下优点:15.1、本发明提出的基于多流图神经网络的人体姿态预测方法,基于人体关节位置数据及结构特征,构建多个图模型,实现了对人体运动系统的建模,以对人体姿态进行预测,达到了较高的准确率。同时,使用多流图神经网络提取关节运动特征,通过使用注意力模型融合全局信息。16.2、本发明改善了现有的人体姿态预测方法对于剧烈运动和长期运动存在较大误差的缺点,取得了较好的实验结果;本方法网络结构简单,运算具有实时性,可以实现对人体姿态的实时预测,利于实际应用。与现有其它人体姿态预测方法相比,本发明提出的方法在进行500‑1000毫秒的中长期动作预测时和剧烈运动时具有较优的表现。附图说明17.图1为本发明实施例中一种基于注意力机制融合多流图神经网络的人体姿态预测方法的流程图;18.图2为本发明实施例中一种基于注意力机制融合多流图神经网络的人体姿态预测方法中步骤s1:获取用于训练的人体关键关节的三维位置数据序列,根据预设的输入序列和输出序列的长度,将三维位置数据序列分割为所述输入序列和所述输出序列;根据所述输入序列构建图数据的流程图;19.图3为本发明实施例中基于注意力机制融合多流图神经网络模型的结构示意图;20.图4本发明实施例中一种基于注意力机制融合多流图神经网络的人体姿态预测方法中步骤s2:构建基于注意力机制融合多流图神经网络模型;将图数据输入基于注意力机制融合多流图神经网络模型进行训练,得到训练好的基于注意力机制融合多流图神经网络模型的流程图;21.图5本发明实施例中一种基于注意力机制融合多流图神经网络中的注意力模块的结构示意图;22.图6本发明实施例中一种基于注意力机制融合多流图神经网络的人体姿态预测方法中步骤s3:获取用于预测的人体关键关节的三维位置数据序列,构建图数据,输入训练好的基于注意力机制融合多流图神经网络模型,得到人体姿态的预测值的流程图;23.图7本发明实施例中了一种基于注意力机制融合多流图神经网络的人体姿态预测系统的结构框图。具体实施方式24.本发明提供了一种基于注意力机制融合多流图神经网络的人体姿态预测方法,针对现有技术不能充分利用人体关节的结构和运动学上的先验信息的问题,提出基于注意力机制融合多流图神经网络模型来预测人体姿态,实现了对人体运动系统的建模,以对人体姿态进行预测,达到了较高的准确率。25.为了使本发明的目的、技术方案及优点更加清楚,以下通过具体实施,并结合附图,对本发明进一步详细说明。26.实施例一27.如图1所示,本发明实施例提供的一种基于注意力机制融合多流图神经网络的人体姿态预测方法,包括下述步骤:28.步骤s1:获取用于训练的人体关键关节的三维位置数据序列,根据预设的输入序列和输出序列的长度,将三维位置数据序列分割为输入序列和输出序列;根据输入序列构建图数据;29.步骤s2:构建基于注意力机制融合多流图神经网络模型;将图数据输入基于注意力机制融合多流图神经网络模型进行训练,得到训练好的基于注意力机制融合多流图神经网络模型;30.步骤s3:获取用于预测的人体关键关节的三维位置数据序列,构建图数据,输入训练好的基于注意力机制融合多流图神经网络模型,得到人体姿态的预测值。31.如图2所示,上述步骤s1:获取用于训练的人体关键关节的三维位置数据序列,根据预设的输入序列和输出序列的长度,将三维位置数据序列分割为所述输入序列和所述输出序列;根据所述输入序列构建图数据,具体包括:32.步骤s11:获取用于训练的人体关键关节的三维位置的数据序列f×n×3,其中,f表示所述数据序列的帧数,n表示关节数量;33.本发明实施例使用的训练的数据序列既可以使用公开数据集(如human3.6m数据集、cmumocap数据集)中的数据序列,也可以使用基于rgb‑d相机或其它设备采集的人体运动数据序列。获取的关键关节或人体关键点一般包括头部、颈部、胸部、腰部、左右肩关节、左右肘关节、左右腕关节、左右手部、左右髋关节、左右膝关节、左右踝关节、左右脚部等不少于20个位置。一个三维位置数据序列可以表示为一个f×n×3矩阵,其中,f表示序列的帧数,n表示数据中包括的关节数量,一个关节在某一帧中的在世界坐标系下的三维坐标被记为(xw,yw,zw)。对于在采集过程中,由于遮挡或其它原因造成没有被捕捉到的关节,为保证矩阵的大小固定,便于后续处理,将其三维坐标记为(0,0,0)。34.步骤s12:将数据序列的前t帧数据作为输入序列,(f‑t)帧数据作为所述输出序列;其中,输入序列表示为t×n×3;输出序列表示为(f‑t)×n×3;35.根据预先设定的输入序列和输出序列的长度,将三维位置数据序列分割为输入序列和输出序列。举例来说,对于一个用于训练的,大小为f×n×3的人体关键关节的三维位置数据序列,设定其前t帧数据用于输入,产生一个t×n×3的输入序列;期望的输出为(f‑t)帧,将三维位置数据序列的后(f‑t)帧数据作为期望输出,即产生一个(f‑t)×n×3的输出序列。36.步骤s13:根据输入序列t×n×3构建节点矩阵v以及邻接矩阵a,并由此构建全连接图gall=(v,aall)、高自由度关节连接图gmobile=(v,amobile)和低自由度关节连接图gstable=(v,astable);其中,aall表示全部关节间联系关系的全连接邻接矩阵,amobile表示高自由度关节间联系关系的高自由度关节邻接矩阵,astable表示低自由度关节间联系的低自由度关节邻接矩阵。37.将步骤s12得到的t×n×3的输入序列,将其根据关节排列为n×(t×3),构建矩阵v。将每个关节作为图数据的每个节点,即图数据中每个节点的特征可以用t×3的矩阵表示。人体关节的自由度表示该关节可以运动的方向的数量,例如球窝关节、髁状关节等关节的自由度为3,鞍状关节、屈戌关节等关节的自由度为2。这些关节具有不同的运动学和动力学特性。根据人体关节的自由度,可以构建了三个不同的邻接矩阵:分别为表示全部关节间联系关系的全连接邻接矩阵aall、表示高自由度关节间联系关系的高自由度关节邻接矩阵amobile、表示低自由度关节间联系的低自由度关节邻接矩阵astable;邻接矩阵是图数据中用于表示节点之间邻接关系的矩阵,本发明实施例按照下述方式,构建邻接矩阵:38.对n个关节中的第i个关节,如果其自由度为3,即该关节可以在三维空间中进行偏航角,俯仰角,旋转角上的运动,则将视其为高自由度关节,则hofi=1,否则hofi=0,其中,hof为highdegreesoffreedom。39.因此,对大小为n×n的全连接邻接矩阵aall,对aall中的元素aall(i,j)定义如下述公式(1):40.aall(i,j)=1ꢀꢀꢀ(1)41.对大小为n×n的高自由度关节邻接矩阵amobile,对amobile中的元素amobile(i,j)定义如下述公式(2):[0042][0043]对大小为n×n的低自由度关节邻接矩阵astable,对astable中的元素astable(i,j)定义如下述公式(3):[0044][0045]上述三组图数据中,其节点数量和每个节点对应的特征是一致的,区别是这三组图数据对应的邻接矩阵分别是aall、amobile和astable。将n×t×3的输入序列记为节点矩阵v,并根据上述三个邻接矩阵,则可构建的三个图数据分别为全连接图gall=(v,aall),高自由度关节连接图gmobile=(v,amobile),低自由度关节连接图gstable=(v,astable)。[0046]如图3所示,本发明实施例中的基于注意力机制融合多流图神经网络采用编码器和解码器结构,将步骤s1中构建出的图数据输入到编码器中进行特征提取,处理的结果为隐变量h,将隐变量h输入到解码器中,解码器的输出为人体姿态的预测值。将预测值与真实值的平均误差作为损失函数,使用梯度下降法对模型的参数进行训练。具体的训练步骤如下:[0047]如图4所示,在一个实施例中,上述步骤s2:构建基于注意力机制融合多流图神经网络模型;将图数据输入基于注意力机制融合多流图神经网络模型进行训练,得到训练好的基于注意力机制融合多流图神经网络模型,具体包括:[0048]步骤s21:基于注意力机制融合多流图神经网络采用编码器和解码器结构,其中,编码器包含多个编码模块;图数据输入编码器进行特征提取,编码模块的输出如下述公式(4)所示:[0049]outi=atti(gcnalli(gall),gcnstablei(gstable),gcnmobilei(gmobile))ꢀꢀꢀ(4)[0050]其中,多个编码模块串联连接,其第i个编码模块的输出outi=(galli,gstablei,gmobilei)包含三个图数据;其中gcn(·)表示单个图神经网络层;atti(·)表示第i个注意力模块;[0051]步骤s22:单个图神经网络层,其输入g=(v,a),输出x,表示为如下公式(5):[0052]x=relu(avw vu)ꢀꢀꢀ(5)[0053]其中,w和u为可训练的权重矩阵,其大小为(t×3)×d,d为期望图神经网络层的输出的特征维数;[0054]步骤s23:注意力模块的输入为g1=(v1,aall),g2=(v2,astable),g3=(v3,amobile),输出为:x'=(gout1,gout2,gout3),如图5所示,注意力模块结构示意图,表示如下述公式(6)~(8):[0055][0056]vmid4=gcn2(concat(vmid1,vmid2,vmid3))ꢀꢀꢀ(7)[0057][0058]其中,concat(·)表示在特征维度上的矩阵拼接操作;softmax(·)表示归一化指数函数;w1,1w1,2……w3,2等表示不同的线性层的可训练参数;vmid1、vmid2、vmid3、vmid4为中间变量。[0059]以上为编码器中多个串联的编码模块中的一个模块,这些模块的模型结构相同,但参数彼此独立,可以独立训练。[0060]步骤s24:编码器的输出隐变量h,如下述公式(9)所示:[0061]h=λ1vallf λ2vstablef λ3vmobilefꢀꢀꢀ(9)[0062]其中,最后一个编码模块的输出为outf=(gallf,gstablef,gmobilef),gallf=(vallf,aall),gstablef=(vstablef,astable),gmobilef=(vmobilef,amobile);λ1、λ2、λ3分别为可配置参数。[0063]基于注意力机制融合多流图神经网络中的解码器,使用图门控循环网络进行递归地预测,解码器的输入为编码器的输出隐变量h,是一个n×d的矩阵,其中,d为特征维数。[0064]步骤s25:将隐变量h输入解码器,使用解码器对人体姿态进行预测,表示如下述公式(10):[0065]outt 1=outt fpred(gru(outt,ht))ꢀꢀꢀ(10)[0066]其中,在t时刻人体的姿态为outt;fpred(·)为表示多层感知机,gru(·)表示图门控循环网络,ht为此时的隐藏变量;outt 1为对t 1时刻的人体姿态的预测值。[0067]在初始时刻,即t=0的时刻,out0初始化为输入序列的最后一帧,即t×n×3的输入序列中的最后的一个n×3的矩阵,h0初始化为隐变量h。[0068]上述图门控循环网络的工作方式可以使用如下的公式(11)~(14)来表示:[0069]rt=σ(rin(outt) rhid(aallhtwh))ꢀꢀꢀ(11)[0070]ut=σ(uin(outt) uhid(aallhtwh))ꢀꢀꢀ(12)[0071]ct=tanh(cin(outt) rt⊙chid(aallhtwh))ꢀꢀꢀ(13)[0072]ht 1=ut⊙ht (1‑ut)⊙ctꢀꢀꢀ(14)[0073]其中,rin,rhid,uin,uhid,cin,chid表示可训练的线性层;wh表示可训练的权重矩阵;aall是全连接图的邻接矩阵;ht 1为图门控循环网络的输出,即ht 1=gru(outt,ht)。[0074]当输入隐变量h后,由于图门控循环网络的递归特性,解码器将上一个时刻的预测值作为输入,可以递归地生成任意帧数长的人体姿态动作序列预测值,输出(f‑t)帧数据,记为output。[0075]步骤s26:使用梯度下降法对参数进行训练,设置损失函数如下述公式(15):[0076][0077]其中,解码器的输出序列为(f‑t)帧的数据,该数据output大小为(f‑t)×n×3,outputgt为期望输出。[0078]如图6所示,在一个实施例中,上述步骤s3:获取用于预测的人体关键关节的三维位置数据序列,构建图数据,输入训练好的基于注意力机制融合多流图神经网络模型,得到人体姿态的预测值,包括:[0079]步骤s31:根据步骤s1获得用于预测的人体关键关节的三维位置数据序列,并构建所述图数据;[0080]根据步骤s1中获取用于训练的人体关键关节的三维位置数据序列的方式相同,首先获取人体关键关节的三维位置数据序列,表示为一个t×n×3矩阵,将其根据关节排列为n×(t×3),并表示为矩阵v。构建的三个图数据分别为全连接图gall=(v,aall),高自由度关节连接图gmobile=(v,amobile),低自由度关节连接图gstable=(v,astable)。[0081]步骤s32:输入基于步骤s2训练好的基于注意力机制融合多流图神经网络模型,由编码器进行特征提取,得到结果为隐形变量h;将h输入解码器中,输出得到人体姿态的预测值。[0082]如下述表1所示,通过实验验证,使用本发明实施例在公开的数据集cmumocap上对多种动作进行预测都可以获得较高的精度。[0083]表1在cmumocap数据集上本发明的方法与其它方法的平均关节角度误差对比[0084][0085]*下标代表不同方法的预测准确性排名,预测时长单位为毫秒。[0086]如表2所示,通过实验验证,使用本方法在公开的数据集human3.6m上对所有动作的平均精度达到了最优。[0087]表2在human3.6m数据集上本发明的方法与其它方法的平均关节角度误差对比[0088][0089]*下标代表不同方法的预测准确性排名,预测时长单位为毫秒。[0090]本发明提出的基于多流图神经网络的人体姿态预测方法,基于人体关节位置数据及结构特征,构建多个图模型,实现了对人体运动系统的建模,以对人体姿态进行预测,达到了较高的准确率。并使用多流图神经网络提取关节运动特征,通过使用注意力模型融合全局信息。本发明改善了现有的人体姿态预测方法对于剧烈运动和长期运动存在较大误差的缺点,取得了较好的实验结果;本方法网络结构简单,运算具有实时性,可以实现对人体姿态的实时预测,利于实际应用。与现有其它人体姿态预测方法相比,本发明提出的方法在进行500‑1000毫秒的中长期动作预测时和剧烈运动时具有较优的表现。[0091]实施例二[0092]如图7所示,本发明实施例提供了一种基于注意力机制融合多流图神经网络的人体姿态预测系统,包括下述模块:[0093]训练数据获取模块41,用于获取用于训练的人体关键关节的三维位置数据序列,根据预设的输入序列和输出序列的长度,将三维位置数据序列分割为输入序列和输出序列;根据输入序列构建图数据;[0094]模型训练模块42,用于构建基于注意力机制融合多流图神经网络模型;将图数据输入基于注意力机制融合多流图神经网络模型进行训练,得到训练好的基于注意力机制融合多流图神经网络模型;[0095]人体姿态预测模块43,用于获取用于预测的人体关键关节的三维位置数据序列,构建图数据,输入训练好的基于注意力机制融合多流图神经网络模型,得到人体姿态的预测值。[0096]提供以上实施例仅仅是为了描述本发明的目的,而并非要限制本发明的范围。本发明的范围由所附权利要求限定。不脱离本发明的精神和原理而做出的各种等同替换和修改,均应涵盖在本发明的范围之内。当前第1页12当前第1页12
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献