论文翻译——VIBE 基于视频的人体3D形状和姿态估计

目录

摘要

1、介绍

2、相关工作

单个图像的3D姿势和形状

视频中的3D姿势和形状

用于序列建模的GANs

3、方法

3.1 时间编码器(Temporal Encoder)

3.2 运动识别器(Motion Discriminator)

运动先验(MPoser)

自注意机制(Self-Attention Mechanism)

3.3 训练过程

4、实验

训练

评估

4.1 与最新结果的比较

4.2 消融实验

5、结论

6、附录-补充材料

6.1 实现细节

姿势生成器 Pose Generator. 

运动鉴别器 Motion Discriminator.

损失 loss.

6.2 数据集

6.3 评估


摘要

人体运动是理解行为的基础。尽管在单幅图像的3D姿态和形状估计方面取得了进展,但现有的基于视频的方法由于缺乏用于训练的地面真实3D运动数据,而无法产生准确和自然的运动序列。为了解决这个问题,我们提出了“用于人体姿势和形状估计的视频推理”(VIBE),它利用了现有的大规模运动捕获数据集(AMASS)和未配对的、自然场景的2D关键点标注。我们的主要创新点是一个对抗性的学习框架,它利用AMASS来区分真实的人体动作和由我们的时态姿势和形状回归网络产生的动作。 我们定义了一种新的具有自注意机制的时态网络体系结构,并且显示对抗性训练,在序列水平,产生运动上可信的运动序列,没有在自然环境的真实的三维标签。我们进行了大量的实验来分析运动的重要性,并证明了VIBE在挑战3D姿态估计数据集方面的有效性,实现了最先进的性能。代码和预训练模型在https://github.com/mkcabas/VIBE

1、介绍

从单个图像中估计3D人体姿势和形状已经取得了巨大的进展。虽然这对许多应用很有用,但人体在世界上的运动告诉了我们人类的行为。正如Johansson所指出的,在运动中的人体上,即使是一些移动的点光源也会告诉我们行为。在这里,我们将讨论如何利用时间信息从单目视频中更准确地估计人体的三维运动。虽然这个问题已经进行了30多年的研究,但我们可能会问,为什么仍然没有可靠的方法可用。我们的观点是,由于训练数据不足,以前的人体运动时间模型没有捕捉到真实人体运动的复杂性和可变性。我们用一种新的时间神经网络和训练方法来解决这个问题,并表明它能显著改善单目视频中的三维人体姿态估计。

现有的视频姿势和形状估计方法通常无法产生如图1(顶部)所示的准确预测。这背后的一个主要原因是缺乏野外真实的三维标注,即使是对于单个图像,也不容易获得。以前的工作将室内三维数据集与具有二维地面真实或伪地面真实关键点注释的视频相结合。然而,这有几个局限性:(1)室内三维数据集在对象数量、运动范围和图像复杂度方面受到限制;(2)用地面真实二维姿态标记的视频量仍然不足以训练深层网络;(3)伪地面真实二维标签对于三维人体运动建模不可靠。

论文翻译——VIBE 基于视频的人体3D形状和姿态估计

Figure 1:考虑到野生视频的挑战性,最近最新的视频姿势估计方法[31](上图)无法生成精确的三维人体姿势。为了解决这个问题,我们利用一个大规模的运动捕捉数据集来训练一个运动鉴别器。我们的模型(VIBE)(底部)能够产生真实和准确的姿势和形状,优于之前的标准基准工作。

为了解决这个问题,我们从Kanazawa等人那里得到了灵感,他们只使用2D关键点和静态3D人体形状和姿势的未配对数据集,使用对抗性训练方法训练单个图像姿势估计器。对于视频序列,在户外视频中已经存在2D关键点注释。接下来的问题是如何获得逼真的三维人体运动,以满足对抗训练的需要。为此,我们利用了名为AMASS的大规模三维运动捕捉数据集,该数据集足够丰富,可以学习人们如何移动的模型。我们的方法学习从户外视频中估计三维身体形状的姿势序列,这样鉴别器就无法区分估计的运动和AMASS数据集中的运动之间的差异。如[30]所述,我们还使用3D关键点(如果可用)。

我们的方法的输出是一系列的姿势和形状参数,以SMPL身体模型格式,这与AMASS和最近的文献一致。我们的方法了解人们在图像中的出现方式的丰富性,并以AMASS为基础来产生有效的人体运动。具体来说,我们通过训练一个基于序列的生成性对抗网络(GAN)来利用两个为配对的信息源。在这里,给定一个人的视频,我们训练一个时间模型来预测每帧的SMPL身体模型的参数,同时运动鉴别器试图区分真实序列和回归序列。这样做,我们鼓励通过最小化对抗训练的损失来输出代表合理运动的姿势,而鉴别器则是弱监督。运动鉴别器隐式学习使用地面真实运动捕获(mocap)数据来说明运动中人体的静力学,物理学和运动学。我们称我们的方法为VIBE,代表“ Video Inference for Body Pose and Shape Estimation”。

在训练过程中,VIBE用户外图像作为输入,并使用预先训练的针对单个图像的人体姿态和形状估计卷积神经网络(CNN)预测SMPL人体模型参数,然后使用[30]中的时间编码器和人体参数回归器。然后,运动鉴别器将预测的姿势和从AMASS数据集采样的姿势一起,为每个序列输出真/假标签。我们使用门控循环单元(GRU)实现时间编码器和运动鉴别器,以捕获人类运动的顺序性质。运动鉴别器采用学习的注意力机制来放大独特帧的作用。整个模型由对抗损失以及回归损失进行监督,以最大程度地减少预测的关键点,姿势和形状参数之间的误差。

在测试时间,给定视频,我们使用预先训练的CNN和时间模块来预测每帧的姿势和形状参数。该方法适用于任意长度的视频序列。我们在多个数据集上进行了广泛的实验,并胜过了所有最新技术; 有关VIBE输出的示例,请参见图1(底部)。重要的是,我们证明,在具有挑战性的3D姿态估计基准3DPW和MPI-INF-3DHP上,基于视频的方法总是比单帧方法好得多。这清楚地证明了在3D姿势估计中使用视频的好处。

总之,本文的主要贡献是:首先,我们利用AMASS运动数据集进行VIBE的对抗训练。这鼓励回归器产生逼真和精确的运动。其次,我们在运动鉴别器中采用了一种注意力机制来加权不同帧的贡献,并表明这可以改善我们的基线结果。第三,我们定量比较3D人体运动估计的不同temporal结构。第四,我们在主要的3D姿态估计基准上获得了最新的结果。可在https://github.com/mkocabas/VIBE上获得用于研究目的的代码和预训练模型。

2、相关工作

单个图像的3D姿势和形状

参数化三维人体模型被广泛用作人体姿态估计的输出目标,因为它们捕捉人体形状的统计信息并提供可用于多种任务的三维网格。早期的工作探索了“自下而上”的回归方法、“自上而下”的优化方法,以及使用关键点和轮廓作为输入的多摄像机设置。这些方法很脆弱,需要人工干预,或者不能很好地推广到野外图像。Bogo等人提出了SMPLify,这是第一个端到端方法之一,它使SMPL模型适合CNN关键点检测器的输出。Lassner等人在拟合过程中使用轮廓和关键点。最近,深层神经网络被训练成直接从像素回归SMPL身体模型的参数。由于缺乏户外三维地面真实性标签,这些方法使用从2D关键点重射损失获得的微弱监督信号,使用身体/部位分割作为中间表示,或使用人在回路中。Kolotooros等人通过在训练循环中使用SMPLify,以协作方式将基于回归和基于优化的方法结合起来。在训练的每个步骤中,deep network初始化SMPLify优化方法,将身体模型拟合到2D关节,产生一个用于监督网络的改进拟合。或者,已经提出了几种非参数体网格重建方法。Varol等人使用体素作为输出体表示。Kolotooros等人使用图卷积网络直接回归模板体网格的顶点位置。Saito等人使用像素对齐的隐式函数预测身体形状,然后执行网格重建步骤。尽管从单个图像中捕捉人体,但当应用于视频时,这些方法会产生不稳定、不稳定的结果。

视频中的3D姿势和形状

从视频中捕捉人体运动的历史由来已久。在早期的工作中,Hogg等人将简化的人体模型与行走的人的图像特征相匹配。早期的方法还利用了如PCA和GPLVM这样的方法,来从Mocap数据中学习运动优先级,但这些方法仅限于简单的运动。最近许多从视频估计人体姿势的深度学习方法只关注关节位置。几种方法用分两个阶段将现成的2D关键点“提升”到3D联合位置的方法。相反,Mehta等采用端到端方法直接回归3D关节位置。尽管在诸如Human3.6M的室内数据集上表现出色,但它们在3DPW和MPI-INF-3DHP等野生数据集上却表现不佳。几种最近的方法通过随着时间的推移扩展SMPLify来计算一致的身体形状和平滑的运动,从而从视频中恢复SMPL的姿势和形状参数。特别是,Arnab等说明了带有SMPLify版本的Internet视频在进行微调时有助于改善HMR。金泽等通过预测过去和将来的帧学习人体运动学。他们还展示,使用2D关键点检测器注释的Internet视频可以减轻对户外3D姿势标签的需求。Sun等建议使用transformer-based的时间模型进一步改善性能。他们提出了一种无监督的对抗训练策略,该策略学会排列无序的帧。

用于序列建模的GANs

生成性对抗网络GANs对图像建模和合成有着重要的影响。最近的研究已经将GANs融入到循环体系结构中,以对机器翻译等序列到序列的任务进行建模。在运动建模方面的研究表明,结合序列结构和对抗性训练,可以根据先前的运动序列预测未来的运动序列,或者生成人体运动序列。相比之下,我们着重于根据序列输入数据对预测姿势进行逆优化。按照这个方向,我们使用了一个运动鉴别器,利用3D-mocap数据,使用递归结构和对抗目标对潜在空间中的姿势和形状参数进行编码。

3、方法

VIBE的总体框架如图2所示。

论文翻译——VIBE 基于视频的人体3D形状和姿态估计

Figure 2:VIBE架构。VIBE使用temporal生成网络估计视频序列中每一帧的SMPL身体模型参数,该网络与运动鉴别器( motion discriminator)一起训练。鉴别器可以访问SMPL格式的大量人体动作语料库。

输入视频为论文翻译——VIBE 基于视频的人体3D形状和姿态估计,长度为T,单个人,我们使用预先训练好的CNN来提取每一帧论文翻译——VIBE 基于视频的人体3D形状和姿态估计的特征。

我们训练一个由双向门控递归单元(GRU)组成的时间编码器,输出包含过去和未来帧的信息的潜在变量。然后,利用这些特征对每一时刻的SMPL体模型参数进行回归。

SMPL用论文翻译——VIBE 基于视频的人体3D形状和姿态估计表示人体的姿态和形状,分别由位姿参数论文翻译——VIBE 基于视频的人体3D形状和姿态估计论文翻译——VIBE 基于视频的人体3D形状和姿态估计组成。姿态参数包括全局身体旋转和23个关节的相对旋转。形状参数是PCA形状空间的前10个系数;这里我们使用genderneutral形状模型,正如之前的工作所述,给定这些参数后,SMPL模型是一个可微函数,论文翻译——VIBE 基于视频的人体3D形状和姿态估计,输出一个定常的三维网格。

给定视频序列,VIBE计算论文翻译——VIBE 基于视频的人体3D形状和姿态估计 ,其中,论文翻译——VIBE 基于视频的人体3D形状和姿态估计是时间点t的姿态参数,论文翻译——VIBE 基于视频的人体3D形状和姿态估计是序列的单一体型预测。具体来说,对于每一帧,我们预测身体形状参数。然后,我们在整个输入序列中,应用平均池化来得到一个单一的形状论文翻译——VIBE 基于视频的人体3D形状和姿态估计。我们将到目前为止描述的模型称为时间生成器论文翻译——VIBE 基于视频的人体3D形状和姿态估计。然后,从g和来自AMASS的样本输出论文翻译——VIBE 基于视频的人体3D形状和姿态估计论文翻译——VIBE 基于视频的人体3D形状和姿态估计被赋予运动识别器(motion discriminator),论文翻译——VIBE 基于视频的人体3D形状和姿态估计为了区分真假例子。

3.1 时间编码器(Temporal Encoder)

使用循环体系结构的直觉是,未来帧可以从过去的视频姿态信息中受益。当一个人的姿势不明确或身体在给定的框架中被部分遮挡时,这很有用。在这里,过去的信息可以帮助解决和约束姿势估计。时间编码器用作发生器generator,给定一系列帧论文翻译——VIBE 基于视频的人体3D形状和姿态估计,在每个帧中输出相应的姿势和形状参数。T帧序列被喂入卷积网络论文翻译——VIBE 基于视频的人体3D形状和姿态估计,该卷积网络用作特征提取器,并为每个帧论文翻译——VIBE 基于视频的人体3D形状和姿态估计 输出一个向量论文翻译——VIBE 基于视频的人体3D形状和姿态估计。 这些被发送到门控循环单元(GRU)层,该层会基于先前的帧为每个帧论文翻译——VIBE 基于视频的人体3D形状和姿态估计产生潜在特征向量论文翻译——VIBE 基于视频的人体3D形状和姿态估计。 然后,我们将论文翻译——VIBE 基于视频的人体3D形状和姿态估计作为具有迭代反馈的T回归器的输入,如[30]所示。回归器用平均姿态论文翻译——VIBE 基于视频的人体3D形状和姿态估计初始化,并在每次迭代k中将当前参数论文翻译——VIBE 基于视频的人体3D形状和姿态估计与特征论文翻译——VIBE 基于视频的人体3D形状和姿态估计一起作为输入。继Kolotouros等我们使用6D连续旋转表示而不是轴角度。

总体而言,当时间编码器可用时,其损失由2D(x)、3D(X)、pose(θ)和shape(β)损失组成。这与对抗性论文翻译——VIBE 基于视频的人体3D形状和姿态估计损失相结合。具体而言,g的总损失为:

论文翻译——VIBE 基于视频的人体3D形状和姿态估计

其中每项计算如下:

论文翻译——VIBE 基于视频的人体3D形状和姿态估计

其中论文翻译——VIBE 基于视频的人体3D形状和姿态估计是下文解释的对抗性损失。

为了计算2D关节点损失,我们需要SMPL 3D关节位置论文翻译——VIBE 基于视频的人体3D形状和姿态估计,它们是使用预训练的线性回归因子W从身体顶点计算得出的。我们使用具有缩放和平移参数的弱透视相机模型论文翻译——VIBE 基于视频的人体3D形状和姿态估计。这样我们就可以计算3D关节的2D投影论文翻译——VIBE 基于视频的人体3D形状和姿态估计论文翻译——VIBE 基于视频的人体3D形状和姿态估计,其中论文翻译——VIBE 基于视频的人体3D形状和姿态估计是全局旋转矩阵,论文翻译——VIBE 基于视频的人体3D形状和姿态估计表示正投影。

3.2 运动识别器(Motion Discriminator)

[30]中使用的身体识别器( body discriminator)和重投影损失( reprojection loss)迫使生成器(generator)产生与2D关节位置对齐的可行的真实世界姿势。但是,单图像约束不足以说明姿势序列。当忽略运动的时间连续性时,多个不正确的姿势可能会被视为有效。为了减轻这种情况,我们使用运动识别器论文翻译——VIBE 基于视频的人体3D形状和姿态估计来判断生成的姿势序列是否对应于现实序列。生成器的输出论文翻译——VIBE 基于视频的人体3D形状和姿态估计作为输入提供给图3所示的多层GRU模型论文翻译——VIBE 基于视频的人体3D形状和姿态估计,该模型在论文翻译——VIBE 基于视频的人体3D形状和姿态估计的每个时间步长 论文翻译——VIBE 基于视频的人体3D形状和姿态估计 估计潜在编码论文翻译——VIBE 基于视频的人体3D形状和姿态估计。为了聚合隐藏状态 论文翻译——VIBE 基于视频的人体3D形状和姿态估计,我们使用下面阐述的自注意。最后,一个线性层预测一个值论文翻译——VIBE 基于视频的人体3D形状和姿态估计,该值表示论文翻译——VIBE 基于视频的人体3D形状和姿态估计属于合理的人类运动集合的概率。反向传播到g的对抗损失项为:

论文翻译——VIBE 基于视频的人体3D形状和姿态估计

论文翻译——VIBE 基于视频的人体3D形状和姿态估计的目标是:

论文翻译——VIBE 基于视频的人体3D形状和姿态估计

其中论文翻译——VIBE 基于视频的人体3D形状和姿态估计是来自AMASS数据集的真实运动序列,而论文翻译——VIBE 基于视频的人体3D形状和姿态估计是生成的运动序列。由于论文翻译——VIBE 基于视频的人体3D形状和姿态估计是根据地面真实姿势训练的,它还可以学习合理的身体姿势配置,因此减少了对分离的单帧鉴别器的需要。

论文翻译——VIBE 基于视频的人体3D形状和姿态估计

Figure 3:运动鉴别器. 论文翻译——VIBE 基于视频的人体3D形状和姿态估计由GRU层和self attention 层组成。论文翻译——VIBE 基于视频的人体3D形状和姿态估计为每个输入序列输出一个真/假概率。

运动先验(MPoser)

除了论文翻译——VIBE 基于视频的人体3D形状和姿态估计,我们还实验了一个运动先验模型,我们称之为MPoser。

它是变体姿态先验模型VPoser到时间序列的扩展。我们在大量数据集AMASS上将MPoser训练为序列VAE,以学习可能的人体运动的潜在表示。然后,我们使用MPoser作为正则化来惩罚不可信序列。MPoser编码器和解码器由GRU层组成,这些GRU层在每个时间步长论文翻译——VIBE 基于视频的人体3D形状和姿态估计 都输出潜在矢量论文翻译——VIBE 基于视频的人体3D形状和姿态估计。当我们使用MPoser时,我们禁用论文翻译——VIBE 基于视频的人体3D形状和姿态估计,并在论文翻译——VIBE 基于视频的人体3D形状和姿态估计中添加一个先验损失论文翻译——VIBE 基于视频的人体3D形状和姿态估计

自注意机制(Self-Attention Mechanism)

当递归网络按顺序处理输入时,它们会更新隐藏状态。结果,最终的隐藏状态将保留序列中信息的摘要。我们使用一种自注意机制来放大最重要帧在最终表示中的贡献,而不是使用最终隐藏状态 论文翻译——VIBE 基于视频的人体3D形状和姿态估计 或整个序列的隐藏状态特征空间的硬选择池化。通过使用注意机制,输入序列论文翻译——VIBE 基于视频的人体3D形状和姿态估计的表示 论文翻译——VIBE 基于视频的人体3D形状和姿态估计 是隐藏状态的组合。权值 论文翻译——VIBE 基于视频的人体3D形状和姿态估计 由线性MLP层 论文翻译——VIBE 基于视频的人体3D形状和姿态估计 学习,然后用softmax规范化,形成概率分布。正式地:

论文翻译——VIBE 基于视频的人体3D形状和姿态估计

我们将动态特性权重与静态池化模式进行比较。具体地说,代表每帧隐藏状态的特征 论文翻译——VIBE 基于视频的人体3D形状和姿态估计 被平均化并最大化。然后,将这两种表示形式 论文翻译——VIBE 基于视频的人体3D形状和姿态估计 和 论文翻译——VIBE 基于视频的人体3D形状和姿态估计连接起来,构成最终的静态向量论文翻译——VIBE 基于视频的人体3D形状和姿态估计,用于论文翻译——VIBE 基于视频的人体3D形状和姿态估计 真假决策。

3.3 训练过程

我们使用ResNet-50网络作为图像编码器,对输出论文翻译——VIBE 基于视频的人体3D形状和姿态估计的单帧位姿和形状估计任务进行预训练。与[31]相似,我们预先计算每帧的 论文翻译——VIBE 基于视频的人体3D形状和姿态估计,而不更新ResNet50。我们使用 论文翻译——VIBE 基于视频的人体3D形状和姿态估计 作为序列长度,小批量大小为32,这使得在单个Nvidia RTX2080ti GPU上训练我们的模型成为可能。尽管我们用论文翻译——VIBE 基于视频的人体3D形状和姿态估计 进行了实验,但我们选择了论文翻译——VIBE 基于视频的人体3D形状和姿态估计,因为它产生了最好的结果。对于时间编码器(temporal encoder),我们使用一个隐藏大小为1024的2层GRU。SMPL回归器有2个全连接层,每层有1024个神经元,最后一层输出 论文翻译——VIBE 基于视频的人体3D形状和姿态估计 ,包含姿势、形状和摄像机参数。生成器(generator)的输出作为伪样本输入到论文翻译——VIBE 基于视频的人体3D形状和姿态估计,地面真实运动序列作为真样本输入论文翻译——VIBE 基于视频的人体3D形状和姿态估计。运动识别器(motion discriminator)结构与时间编码器相同。对于 self attention,我们使用2个MLP层,每个层有1024个神经元,并用tanh**函数来学习attention权重。最后的线性层为每个样本预测一个假/真概率。我们还使用Adam优化器,g和论文翻译——VIBE 基于视频的人体3D形状和姿态估计的学习率分别为5×10−5和1×10−4。最后,损失函数中的每个项都有不同的加权系数。我们在 Sup. Mat.为读者提供了更多详细的信息。

4、实验

我们首先描述用于训练和评估的数据集。接下来,我们将我们的结果与以前的基于帧和基于视频的最新方法进行比较。我们还进行了消融实验,以显示我们的贡献的效果。最后,我们在图4中给出定性结果。

训练

在先前的工作之后,我们使用了混合的2D和3D数据集的批次。 PennAction 和PoseTrack是我们使用的仅有的地面真实2D视频数据集,而InstaVariety 和Kinetics-400 是使用2D关键点检测器标注的伪地面真实数据集。对于3D标注,我们使用MPI-INF-3DHP 和Human3.6M的3D联合标签。在使用时,3DPW和Human3.6M提供了用于计算论文翻译——VIBE 基于视频的人体3D形状和姿态估计的SMPL参数。AMASS用于对抗训练,以获得3D人体运动的真实样本。我们还使用3DPW训练集执行消融实验; 这证明了我们的模型在实时数据上的优势。

评估

为了进行评估,我们使用3DPW,MPIINF-3DHP和Human3.6M。我们报告经过和未经过3DPW训练的结果,以便与不使用3DPW进行训练的先前工作进行直接比较。我们报告Procrustes-aligned的平均每个关节位置误差(PA-MPJPE),平均每个关节位置误差(MPJPE),正确关键点的百分比(PCK)和每个顶点误差(PVE)。我们将VIBE与最新的单图像和时间方法进行比较。对于3DPW,我们报告加速度误差(mm / s 2),该误差通过地面和预测的3D关节之间的加速度差计算得出。

4.1 与最新结果的比较

表1将VIBE与以前的最新基于帧和时间的方法进行了比较。VIBE(direct comp)对应于我们的模型,该模型使用与Temporal-HMR相同的数据集进行训练,而VIBE还使用3DPW训练集。作为标准做法,以前的方法不使用3DPW,但是我们想证明使用3DPW进行训练可以提高模型的实时性能。表1中的模型使用SPIN 中的预训练HMR作为特征提取器。我们观察到我们的方法改善了SPIN的结果,这是以前的最新技术。此外,在具有挑战性的3DPW和MPI-INF-3DHP数据集上,VIBE的性能大大优于以前的所有基于帧和时间的方法,同时与在Human3.6M上的SPIN取得了可比的结果。请注意,Human3.6M 是室内数据集,具有有限的目标数和极小的背景变化,而3DPW和MPI-INF-3DHP包含具有挑战性的户外视频。

论文翻译——VIBE 基于视频的人体3D形状和姿态估计

Tabel 1:3DPW、MPI-INF-3DHP和Human3.6M数据集的最新模型评估。VIBE(direct comp.)是我们提出的在视频数据集上训练的模型,类似于[31,56],而VIBE是用来自3DPW训练集的额外数据训练的。VIBE在具有挑战性的户外数据集(3DPW和MPI-INF-3DHP)上优于包括SPIN在内的所有最新模型,并在Human3.6M上获得可比结果。“-”显示了不可用的结果。

我们观察到MPJPE和PVE指标的显著改进,因为我们的模型鼓励时间姿势和形状一致性。这些结果证实了我们的假设,即利用人体运动对改善视频的姿势和形状估计很重要。除了重建指标外,例如 MPJPE,PA-MPJPE,我们还报告了加速度误差(表1)。与基于基线框架的方法相比,尽管我们获得了更平滑的结果,但Temporal-HMR 产生了更加平滑的预测。但是,我们注意到,Temporal-HMR会采用激进的平滑处理,从而导致快速运动或极端姿势的视频准确性下降。在精度和平滑度之间需要权衡。我们在图5中的VIBE和Temporal-HMR之间进行了定性比较,证明了这一发现。该图描述了Temporal-HMR如何在保持准确性的同时使姿态预测过分平滑。从图4中其他观点的可视化结果表明,我们的模型能够恢复正确的整体身体旋转,这对于以前的方法来说是一个重大问题。MPJPE和PVE误差的改善进一步证明了这一点。有关视频结果,请参见GitHub页面。

论文翻译——VIBE 基于视频的人体3D形状和姿态估计

Figure 4:VIBE对户外挑战的定性结果。对于每个视频,顶行显示一些裁剪的图像,中间行显示摄影机视图中的预测实体网格,而底部行显示从另一个视图点预测的网格。

论文翻译——VIBE 基于视频的人体3D形状和姿态估计

Figure 5:VIBE(顶部)和Temporal-HMR(底部)之间的定性比较。这个具有挑战性的视频包含快速运动、极端姿势和自遮挡。VIBE产生的姿势比 Temporal HMR更精确。

4.2 消融实验

表2显示了使用和不使用运动识别器 论文翻译——VIBE 基于视频的人体3D形状和姿态估计 的模型的性能。首先,我们使用[30]提出的原始HMR模型作为特征提取器( feature extractor)。一旦我们加入我们的生成器 论文翻译——VIBE 基于视频的人体3D形状和姿态估计,由于缺乏足够的视频训练数据,我们得到的结果比基于帧的模型稍差,但更平滑。这种效应在Temporal HMR方法中也被发现。使用 论文翻译——VIBE 基于视频的人体3D形状和姿态估计 有助于提高 论文翻译——VIBE 基于视频的人体3D形状和姿态估计 的性能,同时产生更平滑的预测。
当我们使用[37]中的预训练HMR时,我们观察到在仅使用 论文翻译——VIBE 基于视频的人体3D形状和姿态估计 的情况下使用 论文翻译——VIBE 基于视频的人体3D形状和姿态估计 时有类似的提高。我们还用MPoser作为一个强大的基线来对抗论文翻译——VIBE 基于视频的人体3D形状和姿态估计

论文翻译——VIBE 基于视频的人体3D形状和姿态估计

Tabel 2:使用运动识别器 论文翻译——VIBE 基于视频的人体3D形状和姿态估计 的消融实验。我们用几个模型进行实验,使用HMR和SPIN作为预训练的特征提取器,并将我们的时间生成器 论文翻译——VIBE 基于视频的人体3D形状和姿态估计论文翻译——VIBE 基于视频的人体3D形状和姿态估计一起添加。论文翻译——VIBE 基于视频的人体3D形状和姿态估计 在所有基线上提供一致的改进。

MPoser在损失函数中充当正则化器,以确保有效的姿势序列预测。尽管MPoser的性能比仅使用 论文翻译——VIBE 基于视频的人体3D形状和姿态估计 要好,但它比使用论文翻译——VIBE 基于视频的人体3D形状和姿态估计更差。对此,一个直观的解释是,尽管AMASS是可用的最大的mocap数据集,但它无法涵盖户外视频中所有可能的人体运动。由于KL散度项的过度正则化,VAEs无法捕捉到在AMASS中表现不佳的真实运动。相比之下, GANs没有这个问题。请注意,在AMASS上训练时,MPoser在一个测试集上给出了4.5mm的PVE,而基于帧的VPoser给出了6.0mm的PVE误差;因此,对运动建模很重要。总的来说,表1所示的结果表明,在所有情况下引入 论文翻译——VIBE 基于视频的人体3D形状和姿态估计 可以提高性能。虽然有人可能会认为运动识别器可能会强调运动平滑而不是单姿势正确性,但我们仅对一个姿势、一个动作和两个模块进行的实验表明,该运动识别器能够在产生平滑运动的同时提炼单个姿势。

如表3所示,与静态池化(论文翻译——VIBE 基于视频的人体3D形状和姿态估计-concat)相比,论文翻译——VIBE 基于视频的人体3D形状和姿态估计 中的动态特征聚合显著改善了最终结果。self-attention机制使 论文翻译——VIBE 基于视频的人体3D形状和姿态估计 能够了解帧如何在时间上关联,而不是硬性合并它们的特征。在大多数情况下,使用self-attention会产生更好的结果。即使MLP隐藏大小为512,再增加一层仍优于静态聚合。attention机制之所以能够产生更好的结果,是因为它可以通过加权来自每个单独帧的特征来学习运动序列的更好表示。相反,平均和最大池化特征会生成序列的粗略表示,而无需详细考虑每个帧。self-attention涉及学习每个帧的系数,以重新加权其在最终向量(r)中的贡献,从而产生更细粒度的输出。 这证明了我们的直觉,即attention有助于对人体运动序列中的时间依赖性进行建模。

论文翻译——VIBE 基于视频的人体3D形状和姿态估计

表3: self-attention的消融实验。我们尝试了几种 self-attention的配置,并将我们的方法与静态池化方法进行了比较。我们在3DPW数据集上报告了具有不同隐藏大小和MLP网络层数的结果。

5、结论

虽然目前的3D人体姿势方法工作得很好,但大多数方法都没有被训练去估计视频中的人体运动。这样的运动对于理解人类行为至关重要。在这里,我们探索了几种新的方法来将静态方法扩展到视频中:(1)我们引入了一种随时间传播信息的递归结构;(2)我们利用AMASS数据集对运动序列进行判别训练;(3)我们在识别器中引入了self-attention,使它学习关注人体运动的重要时间结构;(4)我们还从AMASS中学习了一种新的运动先验(MPoser),并表明它也有助于训练,但不如识别器强大。 我们仔细评估我们在消融研究中的贡献,并展示每个选择如何对我们在视频基准数据集上的最先进性能做出贡献。这为视频训练的价值提供了明确的证据。
未来的工作应该探索使用视频通过微调HMR功能来监督单帧方法,检查密集的运动线索(光流)是否有帮助,使用运动来消除多人情况的歧义,并利用运动来跟踪遮挡。此外,我们的目标是试验其他attentional编码技术,如转换器transformers,以更好地估计身体运动学。
致谢:我们感谢Joachim Tesch在Blender渲染方面的帮助。我们感谢所有有洞察力的系统部门成员的反馈和富有成效的讨论。这项研究得到了马克斯·普朗克ETH学习系统中心和马克斯·普朗克计算机与信息科学研究生中心的部分支持。
发展:MJB已经收到了来自英特尔、英伟达、Adobe、Facebook和亚马逊的研究捐赠基金。虽然MJB是亚马逊的一名兼职员工,但他的研究完全是在MPI进行的,并且完全由MPI提供资金。MJB在亚马逊和Meshcapade GmbH拥有财务权益。

6、附录-补充材料

6.1 实现细节

姿势生成器 Pose Generator. 

架构如图6所示。使用ResNet50提取特征后,我们使用2层GRU网络,后跟一个线性投影层。然后由SMPL参数回归器估计姿态和形状参数。在训练期间,我们使用残差连接来帮助网络。用来自HMR的预先训练的权重初始化SMPL参数回归器。如果重建没有提高5个epoch,我们会降低学习率。

论文翻译——VIBE 基于视频的人体3D形状和姿态估计

Figure 6: Pose generator,论文翻译——VIBE 基于视频的人体3D形状和姿态估计,架构被使用在实验中。它将一系列帧作为输入,并输出一个向量论文翻译——VIBE 基于视频的人体3D形状和姿态估计

运动鉴别器 Motion Discriminator.

我们使用2个GRU层,其隐藏大小为1024。为获得最准确的结果,我们使用了具有2个MLP层的 self-attention机制,每个MLP层具有1024个神经元,且dropout率为0.1。 对于消融实验,我们保留相同的参数,仅更改神经元的数量和MLP层的数量。

损失 loss.

对于损失函数的每个时期,我们使用不同的权重系数。当论文翻译——VIBE 基于视频的人体3D形状和姿态估计时,2D和3D关键点损失系数分别为论文翻译——VIBE 基于视频的人体3D形状和姿态估计。我们将运动识别器对抗损失项论文翻译——VIBE 基于视频的人体3D形状和姿态估计设置为论文翻译——VIBE 基于视频的人体3D形状和姿态估计。我们使用2个GRU层,其隐藏尺寸为1024。

6.2 数据集

以下是我们用于训练和测试的不同数据集的详细摘要。

MPI-INF-3DHP 是使用无标记运动捕获系统捕获的多视图(主要是室内)数据集。我们使用作者建议的训练集,该训练集包括8个主题和每个主题16个视频。我们评估官方测试集。

Human3.6M 包含在受控环境中捕获的几个人的15个动作序列。有150万张带有3D标注的训练图像。我们使用由MoSh计算的SMPL参数进行训练。在先前的工作之后,我们的模型在5个主题(S1,S5,S6,S7,S8)上进行了训练,并在其他2个主题(S9,S11)上进行了测试。我们将数据集二次采样到每秒25帧进行训练。

3DPW 是一个户外的3D数据集,它使用IMU传感器和手持摄像机捕获SMPL的身体姿势。它包含60个视频(24个火车,24个测试,12个验证),涉及一些户外和室内活动。我们将其用于评估和培训。

PennAction 数据集包含2326个视频序列,其中包含15个不同的动作以及每个序列的2D人类关键点标注。序列标注包括类标签,人体关节(二维位置和可见性),二维边界框和训练/测试标签。

InstaVariety 是最近策划的数据集,使用带有特定动作标签的Instagram视频。它包含大约24小时视频的2D标注。在多人场景中,使用OpenPose提取了2个标注,并使用[Detect and Track] 提取了这两个标注。

PoseTrack 是视频中多人姿势估计和跟踪的基准。它包含1337个视频,分为792、170和375个视频,分别用于训练,验证和测试。在训练拆分中,标记了视频中心的30帧。 为了进行验证和测试集,除上述30帧外,每四帧也有一个标注。标注包括15个身体关键点位置,唯一的人物ID,每个视频中每个人物实例的头部和人物边界框。我们在训练期间使用PoseTrack。

6.3 评估

在这里,我们描述了我们在实验中使用的评估指标和程序。为了直接比较,我们使用与[37]中完全相同的设置。通过在训练循环中包含3DPW训练数据集的模型可以达到最佳效果。即使没有3DPW训练数据,我们的方法也比以前的SOTA更准确。为了与以前的工作保持一致,我们在评估Human3.6M测试集时会使用Human3.6M训练集。在3DPW上表现最好的模型中,我们不使用Human3.6M训练数据。但是,我们观察到,Human3.6M的强大性能并不能转化为强大的户外姿势估计。

指标

我们对每个数据集使用标准评估指标。首先,我们报告广泛使用的MPJPE(每个关节位置误差的平均值),它是将骨盆关节以地面真实位置为中心后,在地面真相与预测关节位置之间的欧几里得距离的平均值来计算的(通常实践)。我们还报告了PA-MPJPE(Procrustes Aligned MPJPE),其计算方法与MPJPE相似,但是在将预测姿势与地面姿势进行严格对准之后。此外,我们计算逐顶点误差(PVE),该误差由地面真值和作为SMPL层输出的预测网格顶点之间的欧式距离表示。我们还使用正确关键点百分比指标(PCK)。 PCK将实际关节位置与预测关节位置之间的欧几里得距离低于预定阈值的情况视为正确。最后,我们报告了加速度误差,该误差已在[31]中报告。加速度误差是每个关节的地面真相与预计3D加速度之间的平均差(mm / s 2)。