【深度学习】Neural Kinematic Networks for Unsupervised Motion Retargetting

Posted by ShawnD on February 18, 2021

Figure 1: 我们的端到端方法将给定的输入运动(上排)重新定位到具有不同骨骼长度和比例的新角色(中排和下排)。在训练过程中,从未看到目标角色执行输入动作。

Abstract

我们提出了一种具有前向运动学层和基于循环一致性的对抗训练目标的循环神经网络架构,用于无监督运动重定向。我们的网络通过前向运动学层捕获输入动作的高级属性,并将其调整为具有不同骨骼长度(例如,较短,较长的手臂等)的目标角色。从不同的角色收集成对的运动训练序列非常昂贵。 在我们的实验中,我们使用Mixamo动画数据来测试各种运动和角色的方法,并获得最新的结果。我们还演示了使用现成的3D姿势估计器将运动从单眼人类视频重定向到3D角色。

Introduction

模仿是智能体获得运动控制技能的重要学习方案[32]。它通常被表述为从专家演示中学习,并获得状态-动作对的样本轨迹[3,15]。但是,此第一人称模仿假设可能并不总是成立,因为

  • 老师和学习者可能具有不同的物理结构,例如,人与类人机器人[4,33]
  • 学习者只能观察老师的状态,例如 关节位置,而不是产生这些状态的动作[28]。

在例如机器人和计算机动画中,将老师(例如一个人)的运动适应于例如人形机器人[2]或化身 [34、27]的学习者的运动重定向。本文着重于将运动从源重新定向到具有已知但不同运动学结构的目标角色(就骨骼长度和比例而言)。源角色和目标角色之间的骨骼差异使得必须解开源运动的骨骼独立特征,并在一帧中自动将它们适应目标角色,理想情况下无需任何后处理优化和手动调整步骤。 此外,可靠的解决方案需要确保重新定位的动作自然且逼真的外观,这对于动画来说一直是一项长期的挑战。众所周知,深度神经网络具有学习人类可能无法轻易识别的顺序数据中高级特征的能力,并且已经在机器翻译[20]和语音识别[13]中取得了卓越的性能。但是,人体运动是高度非线性的,并且在本质上受到骨骼运动结构的限制。因此,经典序列模型(例如循环神经网络(RNN))可能无法直接应用于运动重定目标。在本文中,我们提出了一种新的神经网络架构,以在具有不同骨架结构(即相同的拓扑结构但具有不同的骨长比例)的角色之间执行运动重定向。我们的架构依赖于一个分析性的正向运动学层和两个RNN,它们共同作用于

  • 将输入的运动数据编码为运动特征
  • 从识别出的特征中解码目标骨骼的关节旋转

正向运动学层将关节旋转和目标骨骼的T姿态作为输入,并渲染结果运动。这个完全可微的层通过允许推理所产生的运动的真实性,迫使网络发现有效的关节旋转。我们使用基于循环一致性原理[44]的对抗训练目标,以无监督的方式学习运动重定向。特别是,重新定向到目标角色的动作应在重新定向回目标时生成源角色的原始运动。此外,对于对抗训练的判别器,所产生的动作应该与目标角色的其他已知动作一样自然。解码器RNN以目标角色为条件,并且与对抗训练一起,也能够为没见过的角色生成自然运动。在我们的实验中,我们证明了所提出的方法可以执行在线运动重定目标,即在接收到新帧时即时调整输入运动序列。我们还使用来自视频序列的3D姿势估计值,例如在人类3.6M数据集[18]中,作为输入到我们的网络的动画Mixamo 3D角色。

我们的工作贡献总结如下:

  • 一种新颖的神经运动网络,由两个RNN和一个正向运动学层组成,可自动发现进行运动重新定向所需的关节旋转(即,解决反向运动学(IK)问题的解决方案),而在训练过程中不需要真实旋转。
  • 用于运动重定目标的无监督学习的序列级对抗周期一致性目标函数,在训练过程中不需要不同骨骼的输入/输出运动对。

Experiments

Dataset. 我们在Mixamo数据集[1]上评估了我们的方法,该数据集包含71个角色(即骨骼)的大约2400个唯一运动序列。为了进行训练,我们收集了7个字符(AJ, Big Vegas, Goblin Shareyko, Kaya, Malcolm, Peasant Man, and Warrok Kurniawan)的非重叠运动序列,这些序列总共产生1646帧训练序列(每秒30帧)的结果产生。

为了进行测试,我们收集了6个角色(Malcolm,Mutant,Warrok Kurniawan,Sporty Granny,Claire和Liam)的运动序列,并在以下四种情况下执行了重新定位:

  • 在训练过程中可以看到输入运动,在训练过程中也可以看到目标角色,但目标运动序列却没有。
  • 在训练过程中可以看到输入动作,但是在训练过程中看不到目标角色。
  • 在训练过程中看不到输入运动,但在训练过程中看到目标角色。
  • 在训练过程中,既看不到输入动作也看不到目标角色。

Online Motion Retargetting From Character

在本节中,我们评估了在线重定位目标任务的方法,即在接收到新的运动帧时将运动从一个角色重定位到目标角色。我们提出了一项消融研究,以证明我们方法的不同组成部分的益处,并与先前描述的基准进行比较。在表1中,我们报告了在针对不同目标训练网络时重新定位运动的平均MSE:

  • 我们的骨架条件运动合成网络(第4.1节)仅使用自动编码器目标(即输入重建)和骨骼扭曲约束条件进行了训练。
  • 我们的网络以周期一致性目标进行了训练,而无需进行对抗训练。具体而言,等式13中的“否则”分支返回0。
  • 3)我们的网络使用完整的对抗周期一致性目标函数进行训练,该函数需要骨骼B进行的运动示例,但不与训练过程中用作输入的任何运动配对。

如表1所示,仅在RNN中使用建议的FK层并使用自动编码器目标进行训练(我们的:自动编码器目标),其性能优于所有基于标准神经网络的基准。一种解释是,基线极有可能忽略目标骨骼的骨骼长度,并学习依赖于输入骨骼的运动表示。在使用我们的对抗周期一致性目标进行训练后,无法从输入骨架上解开运动属性更加明显,这仍然导致性能不佳。判别器网络的输入是速度,即相邻时间步长和全局运动之间的局部运动差异。尽管此输入包含有关关节位置随时间变化的信息,但它没有捕获有关空间结构的任何信息。结果,优化基线以欺骗判别器网络并没有施加骨骼长度约束。此外,在没有这种约束的情况下,鼓励速度类似于真实数据会导致进一步的骨长度降低(即过度拉伸或收缩)。另一方面,我们的架构旨在学习可通过FK层直接传递到目标骨架的骨架不变运动表示。当训练我们的运动合成网络时,我们的方法的性能得到了改善,该运动合成网络具有建议的周期一致性和对抗性周期一致性目标。

当训练我们的运动合成网络时,我们的方法的性能得到了改善,该运动合成网络具有建议的周期一致性和对抗性周期一致性目标。虽然使用自动编码器目标进行训练会产生合理的性能,但网络经常会尝试匹配 end-effector 执行器的位置,但无法完全捕获输入运动的属性。

Online Motion Retargetting from Human Video

在本节中,我们仅使用从Mixamo数据训练的模型,介绍从人类视频输入到角色的运动重定向。我们使用人类3.6M视频作为输入,使用[26]中的算法来估计每个帧的3D姿势,以及地面真实情况3D骨骼根部位移(3D姿势估计算法通常假定人物居中)。视频被二次采样为25 FPS,估计的3D姿势的处理类似于我们之前的实验。[26]中的算法仅输出17个关节,而我们的网络需要22个关节。因此,通过将人类3.6M中的以下关节位置复制到相应的Mixamo关节,我们手动将17个关节映射到22个关节:Spine 分成Spine 和Spine1,LeftShoulder成LeftShoulder和LeftArm,RightShoulder成RightShoul der和RightArm,LeftFoot成LeftFoot和LeftToeBase ,将RightFoot分为RightFoot和RightToeBase。请注意,此映射将在测试期间创建零长度的骨骼。因此,我们的网络基本上只看到17个关节,但使用22个关节作为输入。在可视化期间,我们不会旋转我们的网络无法预测的关节(即手指)。如图6所示,我们的网络能够推广到从单眼人类视频中估计的从未见过的骨骼和运动。补充材料中包含更多视频结果和分析。