论文笔记--3D human pose estimation in video with temporal convolutions and semi-supervised training

3D human pose estimation in video with temporal convolutions and semi-supervised training(利用时间卷积和半监督训练进行视频中的三维人体姿势估计)

索引

  在这项工作中,我们展示了视频中的3D姿态可以被基于2D关节点的空洞时域的全卷积模型有效的预测,同时引进了反向映射back-projection, 一种可以利用为标记的视频数据的简单而有效的半监督训练方法。我们首先根据未标签的视频预测2D关节点,然后预测3D姿态,最后反向映射回2D关节点。在监督学习设置中,本方法超越了之前最好的结果(在Human3.6M的6mm平均关节点位置错误中mean per-joint position),将错误率减少了11%,模型在HumanEva-I中也有极大的提高。此外,反向映射实验表明,在标签数据稀少的情况下,它的效果也超越这方面之前最好的结果。

1、 简介

在这里插入图片描述

图一:我们的时域卷积模型使用2D关节点序列(底部)作为输入,然后产生3D姿态预测作为输出(顶部)。采用空洞时域卷积去捕捉长期信息

  我们的工作重点是视频中的三维人体姿势估计。我们以最先进的方法为基础,将问题表述为二维关键点检测和三维姿势估计[41, 52, 34, 50, 10, 40, 56, 33]。虽然拆分问题可以说降低了任务的难度,但它本身是模糊的,因为多个三维姿势可以映射到相同的二维关键点。以前的工作通过用递归神经网络对时间信息进行建模来解决这一模糊性问题[16, 27]。另一方面,卷积网络在传统上用RNN处理的任务中对时间信息的建模非常成功,如神经机器翻译[11]、语言建模[7]、语音生成[55]和语音识别[6]。卷积模型能够对多个帧进行并行处理,而这是递归网络所不能做到的。
  在本文中,我们提出了一个完全卷积的架构,在二维关键点上进行时间卷积,以便在视频中进行准确的三维姿势预测(见图1)。我们的方法与任何二维关键点检测器兼容,并可以通过时域卷积来处理大的上下文信息。与依靠RNNs的方法相比[16, 27],它在计算复杂性和参数数量方面提供了更高的准确性、简单性和效率(§3)。
  有了高度准确和高效的架构,我们转向标记训练数据稀缺的环境,并引入一个新的方案,利用未标记的视频数据进行半监督训练。低资源环境对神经网络模型来说特别具有挑战性,因为它需要大量的标记训练数据,而为三维人体姿势估计收集标签需要昂贵的动作捕捉设置以及冗长的记录过程。我们的方法受到无监督机器翻译中周期一致性的启发,在这种情况下,往返翻译到中间语言和返回到原始语言应该接近身份函数[46, 26, 9]。具体来说,我们用一个现成的二维关键点检测器来预测未标记的视频的二维关键点,预测三维姿势。然后再将其映射到二维空间(第4节)。
  总之,本文提供了两个主要的贡献:1.呈现了一种基于2D关节点轨迹的空洞时域卷积方法,简单、有效的预测出视频中的3D人体姿态。此模型在相同精确度水平下比基于RNN的模型更加高效,不论是在计算复杂度方面还是模型参数方面。
  第二,我们引入了一种半监督的方法,它利用了未标记的视频,并且在标记数据稀缺的情况下是有效的。与之前的半监督方法相比,我们只需要摄像机的内在参数,而不是地面真实的二维注释或具有摄像机外在参数的多视图图像。
  与目前的技术水平相比,我们的方法在有监督和半监督的情况下都优于之前表现最好的方法。我们的监督模型比其他模型表现得更好,即使这些模型利用了额外的标记数据进行训练。

2、相关工作

  在深度学习流行起来之前,对3D姿态预测一直是基于特征工程和骨架与关节的流动性方面进行的[48, 42, 20, 18]。最初基于CNN的方法是专注于通过无需中间监督直接从RGB图像预测3D姿态的端到端的重建进行3D姿态预测[28, 53, 51, 41]。
  两步姿态预测。一种新的3D姿态预测家族,首先在图片空间中预测出2D关节点的位置(kepoints),接下来提升到3D空间[21, 34, 41, 52, 4, 16]。因为他们利用了中间监督模式,因此这些方法是比端到端的方法效果更佳。最近的研究表明,对于真实的2D关键点,预测3D姿势相对简单,所以困难之处就在与难以预测准确的2D姿势[34]。 早期方法[21, 4]简单地在多组2D关键点上的预测的一组2D关键点执行最近邻搜索,然后简单地输出相应的3D姿势。 一些方法利用图像特征和2D实际姿态[39, 41, 52]。 或者,可以通过简单地预测其深度来从一组给定的2D关键点预测3D姿势[58]。
  视频姿势估计。以前的大多数工作都是在单帧环境下进行的,但最近有一些人努力利用视频的时间信息来产生更稳健的预测,并对噪声不那么敏感。[53]从时空体积的HoG特征(定向梯度直方图)推断出三维姿势。LSTM已经被用来完善从单一图像预测的3D姿势[30, 24]。然而,最成功的方法是从二维关键点轨迹中学习。我们的工作就属于这个类别。
  最近,LSTM序列到序列的方法已经提出了编码视频中的2D姿态到固定大小的向量,然后解码到3D姿态序列[16]。然而,输入和输出序列都具有相同的长度,并且2D姿势的确定性变换是更自然的选择。我们实验了这种seq2seq模型,发现输出序列是趋向于冗长的序列,[16]处理这样的问题是以时间上的连续性为代价通过每5帧重新初始化编码器。这也被用于基于RNN的方法(考虑之前身体部位上的连接性) [27]。
  半监督的训练。已经有关于多任务网络[3]的工作,用于联合2D和3D姿势估计[36, 33]以及动作识别[33]。一些工作将为二维姿势估计学习的特征转移到三维任务中[35]。无标签的多视图记录已被用于预训练三维姿势估计的表征[45],但这些记录在无监督的情况下并不容易获得。生成对抗网络(GAN)可以在只有二维注释的第二个数据集中区分现实的姿势和不现实的姿势[56],从而提供一种有用的正则化形式。[54]使用GANs从未配对的2D/3D数据集中学习,并包括一个2D投影一致性项。同样地,[8]在将3D姿势随机投影到2D后对生成的3D姿势进行判别。[40]提出了一种基于序数深度注释的弱监督方法,该方法利用了一个带有深度比较的二维姿势数据集,例如 “左腿在右腿后面”。
  三维形状恢复。虽然本文和所讨论的相关工作侧重于重建准确的三维姿势,但一个平行的研究方向旨在从图像中恢复人的全部三维形状[1, 23]。这些方法通常基于参数化的三维网格,对姿势的准确性不太重视。
  我们的工作。与[41, 40]相比,我们不使用热图,而是用检测到的关键点坐标来描述姿势。这允许在坐标时间序列上使用有效的一维卷积,而不是在单个热图上进行二维卷积(或在热图序列上进行三维卷积)。我们的方法还使计算复杂性与关键点的空间分辨率无关。我们的模型可以用较少的参数达到较高的精度,并允许更快的训练和推理。与[34]提出的单帧基线和[16]提出的LSTM模型相比,我们通过对时间维度进行一维卷积来利用时间信息,并且我们提出了几个优化方案,从而降低了重建误差。与[16]不同的是,我们学习的是一个确定性的映射,而不是seq2seq模型。最后,与本节提到的大多数两步模型(使用流行的堆叠沙漏网络[38]进行二维关键点检测)相反,我们表明Mask R-CNN[12]和级联金字塔网络(CPN)[5]检测对三维人体姿势估计更稳健。

3、时态扩张卷积模型

  我们的模型是一种带有残差连接的全卷积结构,采用一个密集2D姿态序列作为输入,并将时域卷积与线性投影层交替。卷积模型可以同时处理2D姿态信息和时间维度信息(RNN无法做到)。在卷积模型中,这个输入、输出的梯度路径有一个固定的长度,无论序列长度的大小,这相较于RNN减少了梯度消失和梯度爆炸的风险。此外,卷积结构对时间感受野有着精确的控制,这有利于3D姿态预测模型的时间依赖性。此外,我们采用扩张卷积[15]来模拟长期依赖性,同时保持效率。扩张卷积的架构在音频生成[55]、语义分割[57]和机器翻译[22]方面都很成功。
在这里插入图片描述

图二:一个全卷积3D姿态预测模型结构的实例。这个输入包含了243帧(B = 4 块)的2D关节点感受野, 每帧有J=17的关节点。卷积层是绿色的,其中 2 J , 3 d 1 , 1024 2J, 3d1, 1024 2J,3d1,1024 分别代表2 x J 个输入通道、一个过滤器大小为3的空洞卷积和1024个输出通道。一帧的3D预测需要 ( 243 , 34 ) (243, 34) (243,34), 这代表243帧和34个通道。因为卷积的效果,我们需要在残差连接中间切割,去匹配这卷积生成的张量。

  输入层获取每一帧J关节的串联(x,y)坐标,并应用核大小为W的时间卷积和C输出通道。接下来是B个ResNet风格的块,它们被一个跳过连接[13]所包围。每个区块首先执行一个核大小为W、扩张因子D=WB的一维卷积,然后是核大小为1的卷积。卷积(除了最后一层)之后是批量归一化[17]、整顿线性单元[37]和剔除[49]。每个区块都以指数方式增加感受野的系数W,而参数的数量只以线性方式增加。滤波器的超参数W和D的设置是为了使任何输出帧的感受野形成一个覆盖所有输入帧的树(见第1节)。最后,最后一层输出对输入序列中所有帧的三维姿势的预测,使用过去和未来的数据来利用时间信息。为了评估实时场景,我们还尝试了因果卷积,即只访问过去帧的卷积。附录A.1说明了扩张卷积和因果卷积。

半监督的方法

  我们引入了一种半监督的训练方法,以提高在标记的三维真实姿态数据有限的情况下的准确性。我们利用未标记的视频与现成的二维关键点检测器相结合,用一个背投损失项来扩展监督损失函数。我们解决了无标签数据的自动编码问题:编码器(姿势估计器)从二维关节坐标进行三维姿势估计,解码器(投影层)将三维姿势投影到二维关节坐标。当来自解码器的二维关节坐标与原始输入相差甚远时,训练会受到惩罚。
在这里插入图片描述

图3:用一个3D姿势模型进行半监督训练,该模型将可能预测的2D姿势序列作为输入。我们对人的三维轨迹进行回归,并添加一个软约束,使未标注的预测值的平均骨长与标注的预测值相匹配。一切都是联合训练的。WMPJPE代表 “加权的MPJPE”。

  图3代表了我们的方法,它结合了我们的监督部分和我们的非监督部分,后者作为一个正则器发挥作用。这两个目标是共同优化的,标记的数据占据了一个批次的前半部分,而未标记的数据则占据了后半部分。对于标记的数据,我们使用地面真实三维姿势作为目标,并训练一个监督损失。未标记的数据被用来实现自动编码器损失,其中预测的三维姿势被投射回二维,然后检查与输入的一致性。
  轨迹模型。由于透视投影,屏幕上的二维姿势既取决于轨迹(即人体根部关节的全球位置),也取决于三维姿势(所有关节相对于根部关节的位置)。如果没有全局位置,主体将总是以固定的比例重新投射在屏幕的中心。因此,我们也对人的三维轨迹进行回归,以便正确地进行背投到二维。为此,我们优化了第二个网络,对相机空间中的全局轨迹进行回归。后者在投射回二维之前被添加到姿态中。这两个网络具有相同的结构,但不共享任何权重,因为我们观察到,当以多任务方式训练时,它们会相互产生负面影响。由于如果主体离摄像机更远,回归一个精确的轨迹会变得越来越困难,我们对轨迹的加权平均每关节位置误差(WMPJPE)损失函数进行了优化。
在这里插入图片描述
也就是说,我们使用相机空间中地面真实深度(yz)的倒数来加权每个样本。对于我们的目的来说,对远处的主体进行精确的轨迹回归也是不必要的,因为相应的二维关键点往往集中在一个小区域周围。
  骨骼长度L2损失。我们希望激励预测合理的三维姿势,而不是仅仅复制输入。为了做到这一点,我们发现添加一个软约束是有效的,即把未标记批次中的受试者的平均骨长与已标记批次中的受试者的平均骨长大致匹配。(图3中的 “骨长L2损失”)。正如我们在第6.2节中所展示的,这个术语在自我监督中起着重要作用。
  讨论。我们的方法只需要相机的固有参数,这些参数通常可用于商业相机。 该方法不受任何特定网络结构的约束,可以应用于任何以二维关键点为输入的三维姿势检测器。在我们的实验中,我们使用§3中描述的架构将二维姿势映射到三维。为了将3D姿势投射到2D,我们使用了一个简单的投影层,它考虑了线性参数(焦距、主点)以及非线性镜头失真系数(切向和径向)。我们发现Human3.6M中使用的相机的镜头失真对姿势估计指标的影响可以忽略不计,但我们还是包括了这些条款,因为它们总是能提供一个更准确的真实相机投影的模型。

缺点:没有考虑二维关键点预测的准确度对三维动作预测准确度的影响

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值