1、2023 03 10计算机应用,Journal of Computer Applications2023,43(3):723-727ISSN 10019081CODEN JYIIDUhttp:/基于循环神经网络的人体运动模型的隐状态初始化方法李南帆1,司文文1,杜思远1,王志勇2,3,钟重阳2,3*,夏时洪2,3(1.国网北京城区供电公司,北京 100034;2.中国科学院计算技术研究所,北京 100190;3.中国科学院大学,北京 100049)(通信作者电子邮箱)摘要:针对基于循环神经网络(RNN)的人体运动合成方法存在首帧跳变,进而影响生成运动的质量的问题,提出一种带有隐状态初始化的人体
2、运动合成方法,将初始隐状态作为自变量,利用神经网络的目标函数作为优化目标,并使用梯度下降的方法进行优化求解,以得到一个合适的初始隐状态。相较于编码器-循环-解码器(ERD)、残差门控循环单元(RGRU)模型,所提方法在首帧的预测误差分别减小63.51%和6.90%,10帧的总误差分别减小50.00%和4.89%。实验结果表明,该方法无论是运动合成质量还是运动预测精度都优于不进行初始隐状态估计的方法;它通过准确估计基于RNN的人体运动模型的首帧隐状态可提升运动合成的质量,并且为实时安全监测中的动作识别模型提供可靠的数据支持。关键词:人体运动合成;循环神经网络;隐状态估计;动作识别;运动模型中图分
3、类号:TP181 文献标志码:AHidden state initialization method for recurrent neural network-based human motion modelLI Nanfan1,SI Wenwen1,DU Siyuan1,WANG Zhiyong2,3,ZHONG Chongyang2,3*,XIA Shihong2,3(1.State Grid Beijing Urban Power Supply Company,Beijing 100034,China;2.Institute of Computing Technology,Chinese
4、 Academy of Sciences,Beijing 100190,China;3.University of Chinese Academy of Sciences,Beijing 100049,China)Abstract:Aiming at the problem of the jump existed in the first frame of human motion synthesis method based on Recurrent Neural Network(RNN),which affects the quality of generated motion,a hum
5、an motion synthesis method with hidden state initialization was proposed.The initial hidden state was used as independent variable,the objective function of the neural network was used as optimization goal,and the gradient descent method was used to optimize and solve the problem to obtain a suitabl
6、e initial hidden state.Compared with Encoder-Recurrent-Decoder(ERD)model and Residual Gate Recurrent Unit(RGRU)model,the proposed method with initial hidden state estimation reduces the prediction error of the first frame by 63.51%and 6.90%respectively,and decreases the total error of 10 frames by 5
7、0.00%and 4.89%respectively.Experimental results show that the proposed method is better than the method without initial hidden state estimation in both motion synthesis quality and motion prediction accuracy.And the proposed method accurately estimates the hidden state of the first frame of RNN-base
8、d human motion model,which improves the quality of motion synthesis and provides reliable data support for action recognition model in real-time security monitoring.Key words:human motion synthesis;Recurrent Neural Network(RNN);hidden state estimation;action recognition;motion model0 引言 人体运动合成是计算机图形
9、学中的重要问题,在自动驾驶、人机交互、目标追踪、运动规划、动作识别等领域被广泛应用,为这些应用提供数据支撑。动作识别方法1在实际生活中有着重要的应用价值,它能自动识别人的动作类型,帮助系统对行人进行安全监测。基于神经网络的动作识别模型的性能相较于传统的统计学习方法有了很大的提升,但是它的准确率和效率严重地依赖人体运动数据的数量和质量。由于传统的运动捕获方法费时费力,越来越多的学者开始研究如何自动高效地捕获人体运动数据2-3。其中一种高效且低成本的方式就是利用已有的运动捕获数据,构建生成模型以自动合成运动数据。不仅能提高运动捕获数据的利用率,还能合成很多难以捕获的人体运动,为识别算法提供数据支撑
10、,提高识别准确率,减少运作成本。近 年 来,研 究 者 们4-8使 用 循 环 神 经 网 络(Recurrent Neural Network,RNN)进行人体运动建模与合成,并取得了较好的效果。然而,基于 RNN 的人体运动模型一直都存在文章编号:1001-9081(2023)03-0723-05DOI:10.11772/j.issn.1001-9081.2022020175收稿日期:20220218;修回日期:20220512;录用日期:20220513。基金项目:国家重点研发计划科技冬奥重点专项(2020YFF0304701);北京市电力公司科技项目(52020220004B)。作者简
11、介:李南帆(1993),男,北京人,工程师,硕士,主要研究方向:人体运动仿真;司文文(1984),女,山东济南人,高级工程师,硕士,主要研究方向:人体运动仿真;杜思远(1994),男,北京人,助理工程师,主要研究方向:人体运动仿真;王志勇(1990),男,天津人,博士,主要研究方向:计算机图形学;钟重阳(1994),男,重庆人,博士,主要研究方向:计算机图形学;夏时洪(1974),男,四川平昌人,研究员,博士,主要研究方向:计算机图形学、虚拟现实、人工智能。第 43 卷计算机应用一个问题:运动合成结果的第一帧与输入的最后一帧之间存在跳变4-5,7-8。如图1所示,圆圈中的膝关节和颈关节在输入末
12、帧与合成首帧之间存在不连续现象。由于该问题只存在于运动合成的第一帧,很多研究者忽略了这一问题。但是首帧跳变不仅影响运动合成的质量,而且无法回避运动去噪、运动插值等应用。因为 RNN 模型在进行运动合成时,首帧的隐状态通常初始化为0或进行随机初始化,然而隐状态代表了 RNN 单元对前面序列的记忆,理论上应该与前面的运动序列相关,正是这种简单的初始化方法导致了跳变的出现。虽然训练数据足够充分和多样时,跳变的影响会得到缓解,但是高质量的运动数据的获取费时费力、成本高昂。为合理估计隐状态,在数据有限的情况下合成高质量的数据,为数据驱动的模型提供数据支撑,本文解释了基于RNN的人体运动合成中输入末帧与合
13、成首帧之间存在跳变的原因,提出一种基于优化的初始隐状态估计的人体运动合成方法。将初始隐状态作为自变量,利用神经网络的目标函数作为优化目标,使用梯度下降法进行优化求解,得到一个合适的初始隐状态,可提高运动合成结果的质量和运动预测的精确率。为验证本文方法的效果,在常用数据集 CMU(http:/mocap.cs.cmu.edu/)和 H3.6m(http:/vision.imar.ro/human3.6m/description.php)上进行大量的定性和定量实验,并且和经典的运动合成与预测工作进行对比。实验结果表明,经过初始隐状态估计的运动合成方法消除了以往基于RNN 的运动模型中输入末帧与合成
14、首帧间的跳变情况,得到了更连续、自然的运动,有效提高了合成运动的质量。1 相关工作 随着深度学习的兴起,很多工作集中于使用深度神经网络建模人体运动中的动态,实现对人体运动的合成和预测。Holden等9-10尝试了其他类型的神经网络进行人体运动建模:1)在一个很大的数据集中训练了一个卷积自编码器,然后用卷积神经网络建立一个从高层参数到角色运动的回归模型。该方法适用于运动编辑,但是不能建模运动的分布,并且需要使用方波生成步态信息,受到的限制较大。2)建 立了一个根据相位改变网络参数的三层神经网络,结合历史运动轨迹和当前的控制输入实时合成当前帧的运动姿态。Zhang 等11使用混合权重的神经网络模型
15、处理四足动物的运动建模与在线控制问题。上述模型虽然能够对控制作出响应,但是实质上仍然不是生成式模型,并且不能预测运动的分布。虽然基于其他神经网络的方法在人体运动合成方面作出了有益的尝试,但是由于 RNN 在处理时序序列上的优势,目前RNN仍是主流的人体运动合成模型。RNN能够处理时序动态关系和长时间的时序依赖关系,能够很好地建模人体运动的动态。Fragkiadaki 等4引入LSTM-3LR(3 层 的 长 短 期 记 忆(Long-Short-Term-Memory,LSTM)和编码器-循环-解码器(Encoder-Recurrent-Decoder,ERD),利用LSTM单元建模人体运动的
16、动态。Jain等5引入结构化的 RNN 模型,将人体关节的图结构与人体运动的序列关系一起引入运动预测。除了在运动预测方面的应用外,Harvey 等12使用 RNN 和半监督学习帮助训练运动分类器,成功地在半监督的条件下利用运动合成结果辅助进行运动分类。然而,现有的 RNN 模型往往在合成长时间的运动时遇到困难。在生成长序列运动时,由于每一帧的误差不断累积,模型的误差会不断变大,并终止于平均姿态。此外,大多数 RNN 模型都会遇到合成首帧与输入末帧不连续的问题。Martinez 等6提 出 残 差 门 控 循 环 单 元(Residual Gate Recurrent Unit,RGRU)模型,使用一个基于残差的序列到序列的方法减小了跳变;但是基于残差的方法会影响系统的稳定性,导致以上方法并不能生成很长的运动序列。Zhou等8成功地训练了一个自适应的 RNN 模型,能够生成很长的运动而不出现崩溃;但是该模型在初始帧处理中与传统的RNN 模型相同,依然会在输入的最后一帧与合成的第一帧之间出现跳变。Lee等13将控制参数加入运动表示,实现了可控制的运动合成;然而控制参数的引入也无法解决首帧跳