专栏首页AI科技大本营的专栏无需3D运动数据训练,最新人体姿势估计方法达到SOTA | CVPR 2020

无需3D运动数据训练,最新人体姿势估计方法达到SOTA | CVPR 2020

作者 | Muhammed Kocabas

译者 | 刘畅

出品 | AI科技大本营(ID:rgznai100)

人体的运动对于理解人的行为是非常重要的。尽管目前已经在单图像3D姿势和动作估计方面取得了进展,但由于缺少用于训练的真实的3D运动数据,因此现有的基于视频的SOTA方法无法产生准确且自然的运动序列。为了解决这个问题,本文提出了“用于人体姿势和形状估计的视频推理”(VIBE)方法,它利用了现有的大规模运动捕捉数据集(AMASS)以及未配对的2D关键点标注数据。

本文最关键的创新在于它是一种对抗性学习框架,该框架利用AMASS数据集来区分真实的人类动作与本文利用时序姿态和动作回归网络产生的动作。本文定义了一个时序网络体系结构,并展示了在没有真实3D标签的情况下,能够产生序列级别的合理的运动序列。本文进行了大量实验,分析了运动性的重要性,并演示了VIBE在非常有挑战性的3D姿态估计数据集上的有效性,达到了SOTA性能。

代码和预训练模型已经开源:

https://github.com/mkocabas/VIBE

引言

从单幅图像估计3D人体姿势和动作方面已经取得了巨大的进展。这对于许多应用程序是十分有用的,通过身体的运动来获取人的行为。正如约翰逊所指出的那样,即使人体仅移动了一丁点也可以得出有关行为的信息。在这里,本文介绍如何利用时间信息来更准确地从单视频中去估算人体的3D运动。尽管这个问题已经研究了30多年,但我们可能会问,为什么仍然没有可靠的方法。本文的见解是,由于训练数据不足,之前的人类运动的时间模型不能够捕获到人类实际运动的复杂性和可变性。作者在这里用一种新的方法解决了这个问题,并且表明我们可以从单视频中显著改善3D人体姿势估计的生成和判别方法。

如图1(上图)所示,现有的视频姿势和动作估计方法无法产生逼真的且运动学上合理的预测结果。造成这种情况的主要原因是缺乏数据的3D标注,对于单个图像都比较难以获得,更不用说对视频而言。之前的一些研究工作,它们将室内3D数据集与具有2D标注或关键点伪标注的视频结合在一起。但是,这有几个限制:(1)室内3D数据集在拍摄对象的数量,运动范围和图像复杂度方面受到限制;(2)带有2D姿势标注的视频数量仍然不足以训练深层的神经网络;(3)伪2D标签对于3D人体运动的建模不可靠。

为了解决这个问题,本文利用了称为AMASS的最新的大规模3D运动捕捉数据集,该数据集足够丰富,可以训练模型学习人们如何移动。本文的方法是从未标注的视频中使用2D关键点去估计3D姿势序列,是为了判别器无法分辨估计运动与AMASS数据集中运动之间的差异。与之前的一些研究工作相同,本文也会使用3D关键点。本文方法的输出是SMPL人体模型格式的一系列姿势和动作参数。

具体来说,本文通过训练基于序列的生成对抗网络来利用两个未配对的信息来源。在这里,给定一个人的视频,作者训练了一个时间模型来预测每帧SMPL人体模型的参数,而运动判别器则试图区分真实序列和回归序列。通过这样做,可以激励回归器通过最小化对抗训练损失来输出表示合理运动的姿势。作者称该方法为VIBE,它表示“用于人体姿态和动作估计的视频推理”。

在训练过程中,“ VIBE”将未标注的图像作为输入,并使用在单个图像的人体姿态估计任务上预训练的卷积神经网络去预测SMPL人体模型参数。然后,运动判别器使用预测的姿态以及从AMASS数据集采样的姿态,为每个序列输出真实/伪造的标签。整个模型由对抗性损失以及回归损失进行监督,以最大程度地减少预测的和标注的关键点,姿态和动作参数之间的误差。本文使用了改进的SPIN方法,该方法使用基于模型的拟合器来训练深度回归器。但是,SPIN是一种单帧方法。为了处理视频序列,作者通过将SMPLify扩展到视频,使得SPIN方法可以融入时序信息。

在测试时,给定一段视频,作者使用预训练的HMR和时间模块来预测每帧的姿势和动作参数。并在多个数据集上进行了大量的实验,超过了所有最新技术;有关VIBE输出的示例,请参见图1(底部)。重要的是,作者证明了基于视频的方法在具有挑战性的3D姿态估计基准数据集3DPW和MPI-INF-3DHP上总是比单帧方法好得多。这清楚地证明了在3D姿势估计中使用视频的好处。

综上,本文的主要贡献如下:首先,作者扩展了Kolotouros等人的基于模型的fitting-in-the-loop训练过程,对视频进行了更准确的监督。其次,作者利用了AMASS运动数据集,以进行VIBE的对抗训练。第三,作者定量比较了不同时间架构的3D人体运动估计。第四,作者使用大型的运动捕捉数据集来训练鉴别器,从而获得了SOTA的结果。

方法

整个VIBE方法的结构如下图2所示,输入是一段单人的视频。对每一帧使用一个预训练的模型去提取特征,接下来使用双GRU组成的编码器去训练。然后特征会被用于回归SMPL人体模型的参数。最后会从AMASS数据集中采样样本,进入动作判别器,去区分真假样本,完成整个流程。

时序编码器(Temporal Encoder)

作者在训练该编码器的时候,使用了4个损失函数,如下,包括2D损失、3D损失、姿态损失和动作损失。

每一项的具体计算方法如下:

其中L_adv是动作判别器的损失。

动作判别器(Motion Discriminator)

作者使用动作判别器来判断生成的姿态序列是否对应于真实的序列。如下图所示:

判别器的损失项计算方式如下:

而动作判别器的目标函数如下:

实验

作者首先介绍了训练和测试用的数据集,接下来,将本文方法的结果与之前的基于帧和基于视频的最新方法(SOTA)进行比较,如表格1所示。此外还做了消融实验,展示本文的贡献。最后,图4展示了可视化的结果。

本文方法与SOTA方法对比

作者证明了使用3DPW训练集,是有助于改善模型对in-the-wild数据的处理能力。由于本文方法保持了时序姿态和动作的一致性,因此MPJPE和PVE指标得到了显著的提升。

消融实验(关于动作判别器)

可以观察到,一旦添加了生成器G,由于缺少足够的视频训练数据,与基于帧的模型相比,本文获得的效果会稍差一些,但视觉效果会更平滑。在Temporal-HMR方法中也观察到了这种效果。另外,使用动作判别器可以有助于改善G的性能,同时仍会产生更加平滑的预测结果。

消融实验(关于自注意力机制)

如表3所示,与静态池化相比,动作判别器中的动态特征聚合可显著的改善最终结果。使用自注意力机制,可以加强动作判别器在时间上的相关性。在大多数情况下,使用自注意力机制会产生更好的结果。

下面图4和图5是本文方法的可视化结果,可以发现它能够正确复原全局旋转,这个是之前的方法都难以解决的一个问题。

总结

尽管当前的3D人体姿态方法效果很好,但是其中大多数都是未经过训练去估计视频中的人体运动。这种运动对于理解人体行为至关重要。

在这里,本文探索了几种将静态方法扩展到可以处理视频的方法:(1)介绍了一种随时间传播信息的循环体系结构;(2)介绍了使用AMASS数据集引入运动序列的判别训练;(3)本文在判别器中引入了自注意力机制,使它学会了关注人体运动的时间结构;(4)本文还从AMASS学习了一种新的人体先验序列信息(MPoser),并表明它也有助于训练结果,虽然能力不如判别器。未来的工作,作者会探索使用视频来监督单帧的方法,比如看看光流信息是否可以帮助提升结果。

原文链接:

https://arxiv.org/abs/1912.05656

【end】

本文分享自微信公众号 - AI科技大本营(rgznai100),作者:CSDN App

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2020-03-09

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • ImageNet时代将终结?何恺明新作:Rethinking ImageNet Pre-training

    Google 最新的研究成果 BERT 的热度还没褪去,大家都还在讨论是否 ImageNet 带来的预训练模型之风真的要进入 NLP 领域了。如今,Facebo...

    AI科技大本营
  • Tensorflow框架是如何支持分布式训练的?

    大数据时代的互联网应用产生了大量的数据,这些数据就好比是石油,里面蕴含了大量知识等待被挖掘。深度学习就是挖掘数据中隐藏知识的利器,在许多领域都取得了非常成功的应...

    AI科技大本营
  • “神奇女侠”Gal Gadot穿性感粉色吊带乱伦?原来都是深度学习惹的祸

    图片来源于网络 翻译 | 刘畅 编辑 | 波波 最近,“神奇女侠”Gal Gadot的乱伦主题私情视频传遍外网,引起轩然大波。 影片中,Gal Gadot穿着桃...

    AI科技大本营
  • 米斯特白帽培训讲义 实战篇 WordPress

    我们在“姓名简拼”中输入“hzw”,“英文名”中输入“hzwer”,姓名全拼中输入“huangzhewen”,“QQ 号”中输入“598460606”,“历史密...

    ApacheCN_飞龙
  • 剑指offer--从上往下打印二叉树

    AI那点小事
  • 预训练BERT,官方代码发布前他们是这样用TensorFlow解决的

    本文介绍的两个 BERT 实现项目分别基于 TensorFlow 和 Keras,其中基于 TensorFlow 的项目会使用中等数据集与其它技巧降低计算力,并...

    机器之心
  • 页面性能优化的利器 — Timeline

    网页中的重绘过程是影响整体性能下降的关键点之一,因而网站开发者应该更多地去避免在站点中进行不必要以及不适时的重绘步骤,本文主要讲述如何借助Inspector中的...

    陈泽钦
  • 【DB笔试面试535】在Oracle中,数据库处于RESTRICT、QUIESCE和SUSPEND状态的区别是什么?

    在Oracle中,数据库处于RESTRICT、QUIESCE和SUSPEND状态的区别是什么?

    小麦苗DBA宝典
  • C++程序控制结构

    case 后面没break 就会一直执行下去的,所以break是为了跳出switch。比如:

    ppjun
  • 开发 | 谷歌更强NLP模型XLNet开源:20项任务全面碾压BERT!

    与基于自回归语言建模的预训练处理方法相比,基于自编码的预训练处理方法(比如BERT)具有良好的双向上下文建模能力。然而,由于依赖于使用掩码破坏输入,BERT忽略...

    AI科技评论

扫码关注云+社区

领取腾讯云代金券