TPAMI 2024 | 桥接动作:在照片之间生成3D姿态和形状

科技   2024-10-23 18:58   广东  

Bridging Actions: Generate 3D Poses and Shapes In-Between Photos

题目:桥接动作:在照片之间生成3D姿态和形状

作者:Wen-Li Wei; Jen-Chun Lin
源码:https://mps-net.github.io/ADAM-Net/


摘要

生成逼真的3D人体运动一直是游戏/动画行业的一个基本目标。本工作提出了一种新颖的转换生成技术,可以通过在照片之间生成3D姿态和形状来桥接人物的动作,允许3D动画师/初级用户轻松创建/编辑3D动作。为此,我们提出了一种自适应运动网络(ADAM-Net),它有效地从掩蔽动作序列中学习人体运动,以在给定的时间稀疏照片中生成运动学一致的3D姿态和形状。ADAM-Net由三个核心学习设计支撑。首先,我们引入了一个随机掩蔽过程,它随机掩蔽动作序列中的图像,并通过对未掩蔽图像的插值来填充掩蔽区域,以模拟给定时间稀疏照片下的各种转换。其次,我们提出了一个长距离自适应运动(L-ADAM)注意力模块,它利用从人体运动中观察到的视觉线索来自适应地重新校准序列中需要关注的范围,并结合多头交叉注意力。第三,我们开发了一个短距离自适应运动(S-ADAM)注意力模块,它加权选择并整合不同层次的相邻特征表示,以加强时间相关性。通过耦合这些设计,结果表明ADAM-Net不仅在生成照片之间的3D姿态和形状方面表现出色,而且在经典的3D人体姿态和形状估计方面也表现出色。

关键字

  • 3D人体姿态和形状估计

  • 动画

  • 注意力机制

  • 深度学习

  • 中间帧生成

  • 转换生成

I. 引言

在游戏和动画行业中,为计算机生成(CG)角色提供令人信服的表现至关重要。关键帧制作是用于创建动画的主要方法之一,尽管工具和技术有所进步,但该过程仍然劳动密集且具有挑战性。动画师仍需遵循非常密集的姿态规范,以确保在关键帧之间绘制身体运动时的自然性。尽管高级运动捕捉(MOCAP)系统在为具有许多自由度的CG角色创建时优于关键帧技术,但它仍然需要专业设备和手动后处理,使得动画制作成本昂贵。因此,设计一种数据驱动的方法,最大限度地利用现有数据自动生成关键帧之间的运动学一致的3D人体运动,对于创建CG角色动画是可取的。

在这项工作中,我们的目标是基于数据驱动的方法(见图1)在照片之间生成3D姿态和形状。用户可以任意编辑(替换/插入/删除)输入照片,并指定转换长度,以获得在给定照片中间运动学一致的3D人体运动序列。与我们的任务相关的是3D人体姿态和形状估计[1]、[2]、[3]、[4]、[5]和中间帧生成[6]、[7]、[8]、[9]。前者侧重于为每个输入RGB图像估计人物的3D姿态和形状,而后者则在给定的3D关节基关键帧和前一帧的上下文信息作为动画约束的情况下生成中间的3D姿态。尽管前者的技术可以从每个输入照片中估计3D人体姿态和形状,但它们不能直接在时间稀疏照片中生成转换。至于后者,通常需要在网络前端添加姿态估计器。然而,这种做法可能会放大整个网络架构,并可能将姿态估计器中的错误传播到后续的中间帧网络中,从而破坏过程的效率和有效性。此外,后者的方法通常在生成姿态转换时不提供形状信息,这在电影和动画行业中塑造和变形角色等应用中是一个显著的限制,形状信息至关重要。与这两项任务不同,我们的方法只接受时间稀疏的照片(基于RGB的关键帧)作为动画约束(条件),允许在不需要过去上下文的情况下生成中间的3D姿态和形状。此外,我们从图像特征空间端到端地执行此任务,通过消除前端姿态估计器的需求来提高效率,并在中间帧生成过程中优化初始估计的关键帧特征,从而提高效果。我们的方法通过在真实世界场景中提供形状信息,进一步提高了适用性。

为了完成这项任务,我们提出了一个自适应运动网络(ADAM-Net),它从现有运动数据中学习,以在给定的时间稀疏照片中生成运动学一致的3D姿态和形状,并精确地遵循它们所描绘的动作。ADAM-Net基于三个核心学习设计。首先,我们引入了一个随机掩蔽过程,它从每个动作序列中采样一组图像,其余的被掩蔽。然后,通过对未掩蔽图像在潜在特征空间中的插值来填充掩蔽区域(图像),以模拟给定时间稀疏照片中的各种转换,以便于ADAM-Net训练。由于整个过程是在基准3D/2D人体运动数据集上进行的,对于掩蔽的图像,我们有相应的真值SMPL参数或3D/2D关节标签,这些可以作为ADAM-Net训练的监督。这使得ADAM-Net能够学习如何在时间稀疏照片中生成合理的运动转换。以下,我们详细描述了ADAM-Net的每个模块。

本文的主要贡献可以总结为:为照片之间的转换生成专门设计的新型长短程自适应运动注意力架构,我们为所有相关的设计选择提供了动机并量化了它们。它能够产生高保真度、自然的3D姿态和形状转换,用户可以任意编辑,并且可以根据需要调整转换长度,这大大简化并加快了动画创作过程。据我们所知,这也是首次尝试在时间稀疏的照片中生成3D姿态和形状。

这项工作是我们最近3D人体姿态和形状估计工作的扩展,旨在生成照片中间的3D姿态和形状转换。为了实现这一点,我们显著地将运动姿态和形状网络(MPS-Net)进化为ADAM-Net,具体通过:1)引入随机掩蔽过程和潜在特征插值方案,模拟在给定时间稀疏照片中的各种转换,从而使深度网络模型轻松扩展到中间帧任务;2)将我们的动作连续性注意力(MoCA)模块增强为L-ADAM注意力模块,集成新开发多头交叉注意力以改善时间特征学习;3)将我们的层次注意力特征整合(HAFI)模块升级为S-ADAM注意力模块,整合新设计组级注意力以实现从粗到细的特征整合。

III. 方法

我们的自适应运动网络(ADAM-Net)估计在给定的时间稀疏照片中SMPL模型的姿态、形状和相机参数的转换,用户可以指定转换长度。它由五个模块组成:静态特征提取器、特征插值器、时间编码器、时间特征整合器和SMPL参数回归器。图3显示了我们ADAM-Net的整体流程。

预备知识:人体网格模型。 我们使用SMPL模型来解码3D人体网格。SMPL是一个参数化的3D人体网格模型,将人体身体表示为姿态和形状参数。姿态参数包括全局身体旋转和23个身体关节的旋转,在轴角表示中,形状参数由PCA形状空间的前10个系数组成。本工作中使用了性别中立的形状模型。SMPL模型是一个可微函数,,根据姿态和形状参数输出具有6890个顶点的3D人体网格。当将3D关节投影到2D时,会考虑相机的缩放和平移参数,其中。因此,表示人体3D重建的参数集可以表示为一个85维向量,这是ADAM-Net估计的目标。
随机掩蔽过程: 我们的随机掩蔽过程在时间轴上进行。在训练阶段,对于每个基准的3D/2D人体运动数据集,我们从每个序列中采样一组图像。这些采样的图像被称为“未掩蔽图像”。然后,我们掩蔽(即,移除)剩余的图像,以模拟给定时间稀疏照片下的场景。采用简单的随机采样策略,即我们随机采样图像,不进行替换,遵循均匀分布,这意味着序列中的每个图像都有相同的概率被选中。这防止了对序列中心的潜在偏见,即掩蔽图像过多地出现在序列中心附近。每个序列中总共有75%的图像被掩蔽,以产生高度稀疏的输入(时间稀疏照片的场景)。最后,通过在潜在特征空间中插值对应的未掩蔽图像来填充掩蔽区域,以模拟给定时间稀疏照片中的各种转换,以便ADAM-Net训练。由于整个过程是在基准3D/2D人体运动数据集上进行的,对于掩蔽的图像,我们有相应的真值SMPL参数或3D/2D关节标签,这些可以作为ADAM-Net训练的监督。这使得ADAM-Net能够学习如何在时间稀疏照片中生成合理的运动转换。
以下,我们详细描述ADAM-Net的每个模块。

A. 静态特征提取器 & 特征插值器

给定一个时间稀疏的照片序列,包含帧(见图3)。我们使用在单图像基础的3D人体姿态和形状估计任务上预训练的ResNet-50来提取每帧的静态特征,形成静态特征表示序列,其中,由全局平均池化(GAP)层得到。然后,提取的被发送到特征插值器,以产生一个插值的静态特征表示序列,包含连续帧,其中
这里,使用线性插值来填充时间稀疏照片中间缺失的静态特征,沿着时间维度,插值的静态特征的数量,即转换长度,可以由用户指定。之后,我们将序列长度为的插值静态特征表示序列顺序发送到时间编码器,以计算时间特征表示序列,其中

B. 时间编码器

为了学习非刚性人体运动并重新关联插值的静态特征,我们的L-ADAM注意力模块通过两种方式扩展自注意力模块。首先,我们提出了多头交叉注意力,以关联不同注意力头中不同位置的插值静态特征的表示子空间,并有选择地加权它们。其次,我们引入了归一化自相似矩阵(NSSM),通过计算动作序列中插值静态特征的时间相似性和不相似性的结构来揭示人体运动的连续性。然后,我们将其视为先验知识,与多头交叉注意力生成的注意力图结合起来,以自适应地重新校准动作序列中需要关注的范围。L-ADAM注意力模块的两个主要组件如下所述(见图4)。

多头交叉注意力: 原始的MHA只考虑每个注意力头内不同位置的表示子空间的非局部上下文关系(长距离依赖),这忽略了不同注意力头之间的长距离依赖。为此,我们提出了多头交叉注意力,以进一步捕获不同注意力头中不同位置的表示子空间的长距离依赖。
给定插值的静态特征表示序列,首先使用参数的可学习变换将嵌入到查询、键和值中。假设有个注意力头(默认为2)。这些嵌入被均匀分割成,其中。然后,由提出的多头交叉注意力产生的第个头的注意力图如下所示(见图4):
其中表示头之间的查询和键的缩放点积,表示所有头的结果的逐元素求和。是键的特征维度(即,2048)。受到SK-Net的启发,我们计算比例向量来选择性地加权以形成融合的。具体来说,表示对所有头的结果进行逐元素求和。AP代表沿行的平均池化。FC是一个共享的全连接层,将维度从降低到,以便为头获得相应的。之后,被加权回每个,以考虑它们对集成的贡献,以获得聚合的注意力图。通过这样做,可以有效地考虑不同注意力头中不同位置的表示子空间的长距离依赖。
归一化自相似矩阵构建: 根据我们的实证发现,尽管自注意力[21]计算在变换特征空间中的相似性可以提供对隐式长距离依赖的洞察,但有时可能是不稳定的,导致注意力被赋予相关性较低的时间位置(见图2)。为此,我们引入NSSM作为先验知识,与注意力图结合起来,使L-ADAM注意力模块可以学习关注动作序列中更适当的范围。

与自注意力操作不同,NSSM直接从插值的静态特征表示序列构建,通过构建自相似性矩阵(SSM)[51]来揭示帧之间的显式依赖关系,其中SSM是通过计算的。通过这种方式,可以更容易地揭示人体运动的连续性,即相似的姿态具有相似的静态特征,因此点积响应大。得到的SSM然后使用行softmax操作进行归一化,形成NSSM,以便与注意力图结合。
关于结合,如图4所示,我们首先将NSSM与连接为,其中。然后,可学习的变换(即,1×1卷积)应用于,以加权求和的方式结合NSSM和。经过行softmax操作后,得到的被归一化,形成运动注意力图(MAP),公式可以总结为MAP。通过联合考虑NSSM和的特点,MAP可以更适当地揭示输入序列的人体运动的非局部上下文关系。因此,非局部上下文响应的第个头可以从矩阵MAP的线性组合中计算如下:
多头交叉注意力的整体非局部上下文响应通过以下方式获得:
其中是一个可学习的变换,。最后,像自注意力模块的设计一样,我们使用残差连接来产生L-ADAM注意力模块的输出时间特征表示序列,如下所示:
其中“+X”表示一个残差连接。残差连接允许L-ADAM注意力模块插入到不同的预训练网络中,而不会破坏它们的初始行为(例如,如果初始化为零)。因此,通过考虑多头交叉注意力的非局部上下文响应可以被视为重新关联的,并且有望更好地考虑非刚性人体运动。

C. 时间特征整合器

给定时间特征表示序列,S-ADAM注意力模块旨在通过加权选择和整合从过去和未来的帧中观察到的相邻时间特征来细化当前帧的时间特征,以加强时间相关性并改善姿态和形状转换生成。具体来说,在S-ADAM注意力模块中,我们考虑个相邻帧(即,)来细化当前帧的时间特征。S-ADAM注意力模块通过粗到细的特征整合策略实现,该策略结合了选择性组级注意力(SGA)和帧级层次注意力特征整合(HAFI)模块,如图5所示。

SGA: 在SGA中,我们将三个相邻帧的时间特征视为一个组(组间的相邻帧不重叠),并使用估计的组级注意力值来细化每个帧的时间特征,如图5所示。值得注意的是,SGA是基于整个组计算注意力的,这意味着同一组内的所有帧共享相同的注意力值,并且这些注意力值仅在组间不同。具体来说,在实现SGA时,我们首先将每个组的时间特征元素相加,以获得组合时间特征,然后使用共享的FC层将其从2048维缩减到256维,以减少计算复杂性。缩减的被连接(),并输入到三个FC层和一个softmax激活中,以通过探索它们之间的依赖关系来计算组级注意力值。最后,注意力值被加权回每个相应的组,以选择性地放大时间特征的贡献,以残差学习风格进行。
HAFI: 在获得SGA的组级细化时间特征后,HAFI探索帧级时间特征之间的相关性,然后以层次注意力的方式整合它们,以获得最终细化的。对于HAFI的每个分支,如图5所示,其操作与SGA类似。然而,与SGA不同,HAFI在组内为每个帧单独计算一个独特的注意力值。具体来说,三个FC层和一个softmax激活首先应用于从计算帧级注意力值。然后,通过矩阵乘法将注意力值加权回每个相应的帧,以获得聚合的时间特征。从底部分支聚合的时间特征将被传递到上层,并以相同的方式整合,以产生最终细化的。通过逐步整合相邻帧的时间特征来加强时间相关性,SMPL参数回归器有望生成准确且时间连贯的3D人体姿态和形状转换。

D. SMPL参数回归器

在这项工作中,我们使用SPIN中提出的SMPL参数回归器来估计每个细化的的姿态、形状和相机参数。SPIN的预训练权重支持SMPL参数回归器的初始化。

E. 损失函数

为了监督ADAM-Net生成逼真的3D姿态和形状,对于每个估计的,我们施加以下L2损失,以估计和真实的SMPL参数以及估计和真实的3D/2D关节坐标之间:
其中是真实的SMPL参数,代表真实的3D关节坐标,是身体顶点到3D关节的线性回归器,代表真实的2D关节坐标,代表3D关节的相机投影函数。此外,受到Kocabas等人的启发,我们还采用了对抗性损失,即使用AMASS数据集训练一个鉴别器,以区分真实的人体运动和由ADAM-Net的SMPL参数回归器生成的运动,以鼓励生成逼真的3D人体运动。因此,ADAM-Net的总损失为:

F. 实施细节

按照之前的工作,我们将时间编码器的序列长度设置为16,以学习掩蔽动作序列中的长距离依赖。我们使用的SMPL参数回归器有两个FC层,每个层有1024个神经元,后面是一个输出层,输出每个帧的85个姿态、形状和相机参数。我们使用与之前工作相同的鉴别器架构。ADAM-Net和鉴别器的参数使用Adam求解器进行优化,学习率分别为。小批量大小设置为32。在训练期间,如果5个epoch内性能没有改善,ADAM-Net和鉴别器的学习率将减少10倍。整个网络在NVIDIA Titan RTX GPU上训练45个epoch。使用PyTorch进行代码实现。有关更多详细信息,请访问https://mps-net.github.io/ADAM-Net/。

IV. 实验

为了证明所提出的ADAM-Net的有效性,我们将应用于三个任务:在照片之间生成3D人体姿态和形状转换(我们的主要任务),3D关节转换生成插值,以及从单目视频估计3D人体姿态和形状。

A. 在照片之间生成3D人体姿态和形状转换

我们首先说明用于训练和评估的数据集,以及评估指标。由于我们的方法首次生成在照片之间(基于RGB的关键帧)的3D人体姿态和形状(完整的3D身体网格)转换,因此场景(输入和输出)与以前的插值任务不同。具体来说,以前的插值方法需要基于起始和结束姿态的3D关节的几个连续关键帧作为输入,而我们的方法只需要时间稀疏的照片(例如,起始姿态的一张照片和结束姿态的另一张)作为输入,即不需要种子运动,照片可以简单地作为输入。此外,过去的插值方法只能生成3D关节转换作为输出,而我们的方法生成完整的3D身体网格(包括姿态和形状)转换。因此,我们选择并修改与我们场景更接近的方法作为比较对象,即我们引入特征插值器(见第III-A节)到最先进的基于视频的3D人体姿态和形状估计方法,以及我们最近提出的MPS-Net,以便它们可以比较。我们还提供了一个简单的基线(线性插值)方法进行比较。具体来说,我们使用ResNet-50预训练,提取静态特征,并将线性插值的静态特征直接发送到SMPL参数回归器,以生成3D人体姿态和形状转换,而不需要使用时间编码器和时间特征整合器。(见图3。)此外,我们还提供了消融研究,以证明ADAM-Net中每个模块的有效性。最后,我们展示了一些定性评估示例。
1) 数据集: 我们采用混合的3D和2D数据集进行训练,正如3D人体姿态和形状估计方法所做的。对于3D数据集,我们使用了3DPW、MPI-INF-3DHP、Human3.6M和AMASS。对于2D数据集,我们使用了InstaVariety。评估在3DPW、MPI-INF-3DHP和Human3.6M上进行。其中,3DPW和MPI-INF-3DHP包含具有挑战性的户外视频,而Human3.6M仅包含室内视频。每个数据集的详细信息如下。
  • 3DPW:3DPW主要在野外和户外捕获。使用基于肢体的惯性测量单元(IMU)传感器和手持相机的组合来计算真实的SMPL参数。共有60个视频,长度不一。官方拆分用于训练和测试模型,其中24个视频用于训练,12个视频用于验证,24个视频用于测试。
  • MPI-INF-3DHP:MPI-INF-3DHP包括室内和室外场景。使用多视图相机设置以及无标记MOCAP系统捕获数据,并通过多视图方法计算3D关节注释。根据现有方法,模型在S1、S5、S6、S7和S8主题上训练,在S9和S11主题上评估。
  • Human3.6M:Human3.6M包含360万帧以及相关的3D关节注释,是最大的数据集之一。数据在受控的室内环境中收集。根据现有方法,模型在S1、S5、S6、S7和S8主题上训练,在S9和S11主题上评估。
  • AMASS:AMASS是一个大型且多样化的数据库,它通过使用共同的框架和参数化统一了15个MOCAP数据集。SMPL参数是通过使用MoSh++注释运动序列生成的。总共包含42小时的MOCAP数据,346个主题和11,451个人类运动。我们将其作为训练集。
  • InstaVariety:InstaVariety是一个从Instagram上的84个标签中衍生出的2D数据集。总共收集了28,272个视频,平均6秒,使用OpenPose实现2D关节注释。它被用作训练数据集。
除了AMASS之外的所有数据集都将使用我们的随机掩蔽过程进行重新处理,即我们从每个训练/验证/测试动作序列中随机掩蔽75%的图像,以形成训练/验证/测试集。上述数据将用于以下实验中的比较方法。
2) 评估指标: 在这项工作中,我们应用了在3D人体姿态和形状估计中广泛使用的四个标准指标,作为评估在照片之间生成的姿态和形状转换的指标。它们是每个关节位置的平均误差(MPJPE)、经过Procrustes对齐的每个关节位置的平均误差(PA-MPJPE)、每个顶点位置的平均误差(MPVPE)和加速度误差(ACC-ERR)。具体来说,MPJPE是估计的3D关节位置与真实值在对齐骨盆关节到真实值位置后的平均欧几里得距离。PA-MPJPE的计算方式与MPJPE类似,但在估计的姿态与真实的姿态严格对齐之后。MPVPE是估计的3D网格顶点与真实值之间的平均欧几里得距离。ACC-ERR是估计的3D加速度与每个关节的真实值之间的平均差异。其中,MPJPE、PA-MPJPE和MPVPE主要用于表示每个缺失帧生成的姿态和形状转换的准确性(以毫米(mm)为单位),而ACC-ERR(mm/s²)用于表示生成的3D人体运动的平滑性和时间连贯性。
3) 定量比较: 表I显示了我们的ADAM-Net与基线方法和修改后的最先进的基于视频的3D人体姿态和形状估计方法(VIBE、TCMR和我们最近提出的MPS-Net)在由3DPW、MPI-INF-3DHP和Human3.6M数据集生成的插值测试数据上的性能比较。修改这些方法以解决插值任务只需要简单地在它们的原始框架的静态特征提取器后面插入所提出的功能插值器,就像在ADAM-Net中一样。因此,除了使用我们设计的训练和测试数据外,基本网络架构和训练策略仍然遵循它们原来的协议。

表I中的结果首先证明了通过整合时间编码器和时间特征整合器,TCMR、MPS-Net和ADAM-Net确实比基线方法取得了巨大的性能提升。基线方法中使用的线性插值的静态特征只能生成在给定照片之间均匀分布的3D姿态和形状转换,牺牲了自然运动保真度,即具有更高的PA-MPJPE、MPJPE、MPVPE和ACC-ERR值。然而,尽管直接插值静态特征有局限性,我们使用的预训练静态特征提取器[2]本身捕获了人体姿态和形状,允许线性插值仍然描述关键帧之间基本的人体运动。因此,基线方法在表I中的性能并没有崩溃。在与VIBE的比较中,结果表明,通过引入具有预测策略的时间编码器并使用时间特征整合器,TCMR可以进一步提高生成的姿态和形状转换的准确性(即,更低的PA-MPJPE、MPJPE和MPVPE值)和时间连贯性(即,更低的ACC-ERR值)。这些结果也证实了VIBE,当只考虑单个基于GRU的时间编码器时,不足以重新关联线性插值的静态特征以考虑人体运动的高变异性。在这种情况下,性能有时甚至比没有使用时间编码器的基线方法还要差。这些实验证实了设计更好的时间编码器和时间特征整合器以捕获人体运动动态的重要性。尽管TCMR取得了很大进展,但它仍然受到循环操作(即,GRU)捕获动作序列中长距离依赖的能力的限制,并且通过使用多个时间编码器来过分强调时间连续性(即,更低的ACC-ERR值),导致准确性增益受损。相比之下,我们的ADAM-Net探索了新颖的注意力机制,通过L-ADAM和S-ADAM注意力模块来考虑长距离和短距离依赖,从而在生成姿态和形状转换方面实现了更高的准确性。与MPS-Net中使用的MoCA和HAFI模块相比,结果表明,通过进一步设计多头交叉注意力来关联不同注意力头之间的视觉特征,并引入组级注意力到HAFI模块中以实现粗到细的特征整合过程,L-ADAM和S-ADAM注意力模块为ADAM-Net奠定了坚实的基础。这些结果证实了ADAM-Net在更好地考虑人体运动的高变异性方面的能力。
此外,如表II所示,TCMR的网络参数数量和模型大小约为ADAM-Net的两到三倍,相对较重。尽管ADAM-Net的网络参数数量和模型大小略多于MPS-Net,但其性能,即生成的3D姿态和形状转换的准确性(即PA-MPJPE、MPJPE和MPVPE)要好得多。总体而言,表I中的结果表明ADAM-Net在几乎所有指标和数据集上都优于现有方法。在三个数据集上的比较也证明了我们ADAM-Net的强大泛化能力。

为了分析ADAM-Net生成的3D姿态和形状在关键帧中的保真度,我们特别评估了在生成3D姿态和形状转换后它们的准确性。3DPW数据集上的评估结果在表III中清楚地表明,ADAM-Net在关键帧中生成的3D姿态和形状的准确性超过了包括在评估中的生成的3D姿态和形状转换的准确性。这表明,与通过插值获得的特征相比,直接从原始图像(关键帧)获得的特征可以生成更高保真度的3D姿态和形状。

4) 消融分析: 为了分析ADAM-Net中L-ADAM和S-ADAM注意力模块的有效性,我们在具有挑战性的3DPW数据集上对ADAM-Net进行了消融研究。具体来说,我们首先评估了用MHA或不包括S-ADAM注意力模块的MoCA模块替换L-ADAM注意力模块对ADAM-Net的影响。同样,我们然后在不包括L-ADAM注意力模块的条件下,评估了用HAFI模块替换S-ADAM注意力模块对ADAM-Net的影响。MHA的注意力头数默认为2,与L-ADAM注意力模块相同。
性能比较表明,表IV中的提出的L-ADAM注意力模块(即只有L-ADAM的ADAM-Net)优于多头注意力(即只有MHA的ADAM-Net)和运动连续性注意力模块(即只有MoCA的ADAM-Net)在所有指标上的性能。与不使用多头方案的MoCA模块和不考虑不同注意力头之间长距离依赖关系,并且不采用NSSM来考虑运动连续性的MHA相比,结果证实了通过进一步关联不同注意力头之间的视觉特征,并引入NSSM的先验知识来指导自注意力学习,L-ADAM注意力模块确实可以改善姿态和形状转换生成。另一方面,结果还表明我们的S-ADAM注意力模块(即只有S-ADAM的ADAM-Net)可以通过进一步将组级注意力整合到其中来改善HAFI模块(即只有HAFI的ADAM-Net)的性能,实现粗到细的特征整合过程。与L-ADAM注意力模块相比,具有更低的PA-MPJPE值的S-ADAM注意力模块有助于生成更平滑、连贯的3D人体运动,即具有更低的ACC-ERR值。这些结果证明了L-ADAM模块和S-ADAM模块的互补性。总体而言,消融分析证实了所提出的L-ADAM和S-ADAM注意力模块的有效性。通过耦合它们,ADAM-Net(我们的)可以实现最佳结果。

我们进一步使用3DPW数据集来分析S-ADAM注意力模块中每组帧数的不同设置对完整(包括L-ADAM)ADAM-Net架构性能的影响。表V表明,当将三个相邻帧的时间特征作为一组时,ADAM-Net可以实现最佳的姿态和形状转换。因此,对于所有实验(即,表I、II、III和IV),S-ADAM注意力模块默认将三个帧作为一组。

5) 定性评估: 我们展示了1)与基线方法、TCMR和MPS-Net的视觉比较,以及2)在不同转换长度、插入/替换不同照片、指定身体形状或失败案例下ADAM-Net的视觉效果。
与基线方法、TCMR和MPS-Net的视觉比较:图6、7和8分别展示了各种方法在3DPW数据集、MPI-INF-3DHP数据集和从互联网下载的照片上的定性比较。与基线方法和TCMR相比,图6的结果首先表明ADAM-Net可以在给定的时间稀疏照片(关键帧)之间生成更高保真度的3D姿态和形状转换。基线方法似乎过于专注于生成平滑的3D人体运动,因此产生了从帧到帧相对不准确的的姿态和形状转换,限制了它们生成原始人体运动高变异性的能力。更具体地说,基线方法仅在目标姿态之间均匀分布转换(即,基于线性插值均匀分布静态特征),导致人体运动过于平滑,无法产生可变的、逼真的非刚性3D姿态和形状。另一方面,尽管TCMR结合了多个时间编码器确实增强了生成的3D运动转换的连续性(从而展现出更高程度的运动现实性),但在重新关联线性插值的静态特征方面却不够准确。例如,可能导致位置上的类似线性平移的现象。TCMR在形状估计方面也不够准确。图7展示了TCMR产生形状转换不稳定性的情况,即身体形状逐渐变小。此外,图8的结果表明MPS-Net有时会产生不合理的3D姿态和形状转换结果(例如,手指插入头部),而ADAM-Net可以相对稳定地生成符合人体运动运动学的3D转换。这证实了ADAM-Net进一步关联不同注意力头之间的视觉特征的优势,并通过L-ADAM和S-ADAM注意力模块执行粗到细的特征整合过程。另一方面,与图6中产生过于平滑转换的基线方法类似,图8进一步表明基线方法和TCMR在生成照片之间的准确3D姿态和形状转换方面存在困难。基线方法倾向于产生过于平滑的转换,而TCMR在生成准确跟随给定照片中动作的3D姿态和形状转换方面存在困难。以图8右上角为例,与基线方法相比,TCMR减少了ACC-ERR值0.5 mm/s²,而ADAM-Net减少了PA-MPJPE、MPJPE和MPVPE分别为1 mm、1.8 mm和3.6 mm。这些结果也在PA-MPJPE、MPJPE和MPVPE(见表I)中得到了定量反映。此外,图9的结果进一步表明,即使起始和结束关键帧具有准确的3D人类网格(6890个顶点)估计(来自ADAM-Net),直接在中间的人类网格之间进行线性插值仍然无法产生高保真度的3D姿态和形状转换,导致手部变形(例如,纸状手)和3D姿态和形状转换中的不自然过渡。另一方面,结果还表明仅依赖传统的自注意力机制[21]不足以重新关联线性插值的静态特征以考虑人体运动的高变异性。这种不足直接影响了生成的姿态的精度,导致了头部与相应关键帧的方向不一致等差异,如图9所示。这些结果证明了完全实现ADAM-Net架构(见图3)对于生成3D姿态和形状转换的重要性。

在不同转换长度、插入/替换不同照片、指定身体形状或失败案例下ADAM-Net的视觉效果:我们首先可视化了ADAM-Net在不同指定转换长度下生成的3D姿态和形状,如图10所示。结果表明,在给定相同关键帧的情况下,当用户指定的转换长度更长时,ADAM-Net确实可以生成更高粒度的3D姿态和形状插值。此外,结果表明,得到的3D姿态和形状转换也符合人体运动学的连续性。此外,图11展示了用户可以任意编辑(例如,插入或替换)输入照片,并指定转换长度,以获得在给定时间稀疏照片中所需的3D人体运动序列。图12说明了要生成具有一致身体形状的转换,用户只需要指定代表其期望身体形状的照片即可。图13进一步展示了我们可以将得到的3D姿态转换动画化成化身,结果令人印象深刻,这可以简化创建动画或编辑3D人体运动的过程。例如,编舞者可以搜索和编辑不同设想的关键姿势照片,并决定姿态转换的长度,以生成预览编排的舞蹈(即,3D姿态和形状转换),从而更容易地设计新舞蹈。这是非常鼓舞人心的。尽管结果令人鼓舞,但正如图14所示,我们发现ADAM-Net在处理模糊照片或描绘复杂姿势(例如,由于运动模糊或脸部被手遮挡而变得不清晰的肢体)的关键帧时,可能会产生不准确的3D姿态和形状估计,从而影响最终运动转换生成的结果。有关更多实验,请访问我们网站上的演示视频:https://mps-net.github.io/ADAM-Net/。

B. 3D关节转换生成插值

尽管我们方法的场景与现有的插值方法不同,但为了突出ADAM-Net的优势,我们与经典插值方法Robust Motion In-Betweening (RMIB)进行了比较。我们观察到,依赖给定的3D关节基关键帧的当前插值方法主要使用LaFAN1数据集。然而,由于该数据集不包括图像,我们无法在RMIB方法中直接实现我们的ADAM-Net进行直接比较。因此,作为替代方案,我们在3DPW数据集上按照原始设置实现了[7]中的方法,并将其与3D姿态估计器[2]结合使用,以在相同的实验条件下与我们的ADAM-Net进行比较。为了评估不同姿态估计器对方法[7]性能的影响,我们进一步考虑将ADAM-Net作为姿态估计器,这意味着我们采用它生成的3D关节转换,并选择对应于关键帧的关节作为方法[7]中的键框关节。我们采用PA-MPJPE和ACC-ERR作为评估指标,使用LaFAN1[7]中定义的22个关节。鉴于方法[7]需要使用10个过去上下文帧作为运动种子,我们已经排除了在测试阶段选择3DPW测试序列中由随机掩蔽过程生成的前10帧作为关键帧的场景。换句话说,对于每个测试序列我们仅在从第11帧开始的帧被选为关键帧的场景中计算PA-MPJPE和ACC-ERR。
表VI和图15的结果首先表明,姿态估计器的准确性对方法[7]生成的3D关节转换有显著影响。具体来说,与使用图像基础姿态估计器[2]估计的3D关节作为关键帧关节相比,使用ADAM-Net生成的3D关节,后者进一步考虑了时间信息,可以获得更好的3D关节转换生成结果(即,PA-MPJPE和ACC-ERR更低)。结果表明,来自姿态估计器的误差将不可避免地传播到后续的插值网络中。此外,表VI和图15的结果进一步证实,即使方法[7]使用了ADAM-Net生成的关键帧关节,ADAM-Net在关键帧之间产生的3D关节转换仍然比方法[7]更准确、更平滑(即,PA-MPJPE和ACC-ERR更低)。这再次证明了所提出的L-ADAM和S-ADAM注意力模块能够学习并生成在给定时间稀疏照片中运动学一致的3D姿态。另一方面,ADAM-Net的网络参数数量与方法[7]中使用的整个网络架构(包括姿态估计器)相比具有可比性甚至更少,使其成为一个更有效和/或高效(轻量级)的选项。

为了进一步验证我们的发现,我们使用新开发具有挑战性的3D人体姿态估计数据集EMDB进行了额外的实验。具体来说,我们使用高级姿态估计器CLIFF在EMDB数据集上进行了ADAM-Net与RMIB的比较。在EMDB数据集中,我们排除了目标检测器未能检测到某些帧中的人体的数据,并最终选择了每个10个主题的两个序列作为测试数据。实验设计遵循了3DPW实验中采用的方法,包括默认做法,即随机掩蔽每个序列中75%的图像(而剩余的25%的图像被视为关键帧)。
表VII首先揭示了EMDB数据集比3DPW数据集更具挑战性,如更高的PA-MPJPE值所示(参考3DPW结果的表VI)。这主要是因为在EMDB数据集中,主题经常在很短的时间内执行多个动作,导致在两个关键帧之间有更大的时间间隔时,同时出现多个动作。这导致在生成3D关节转换时省略了一些动作。相比之下,3DPW数据集中两个关键帧之间的动作往往更一致和连贯。尽管如此,表VII继续证明了ADAM-Net与RMIB相比的卓越性能,特别是在ACC-ERR方面。这强调了ADAM-Net生成准确和连贯的3D关节转换的能力,如图16所示。图16中RMIB生成的3D关节转换的显著波动和缺乏连贯性也说明了其在定量指标中性能有限的原因。这些比较证实了ADAM-Net直接在图像特征空间中端到端完成此任务的优势,具体来说,消除了模型前端额外姿态估计器的需求,从而使整个网络更有效和/或高效。

C. 从单目视频估计3D人体姿态和形状

为了更全面地评估所提出的ADAM-Net的有效性,我们进行了从单目视频估计3D人体姿态和形状的实验。由于任务是估计每个输入RGB图像的3D姿态和形状,没有缺失帧,因此不需要执行静态特征插值,因此我们从ADAM-Net架构中移除了特征插值器(见图3)。也不需要随机掩蔽过程。除了上述修改外,对于训练和评估,我们遵循了TCMR的原始实验设置,该设置最初是为基于视频的3D人体姿态和形状估计提出的。具体来说,我们使用3DPW、MPI-INF-3DHP、Human3.6M、AMASS和InstaVariety数据集进行训练,并使用3DPW、MPI-INF-3DHP和Human3.6M数据集进行评估。ADAM-Net训练的详细信息描述在第III-F节。比较方法的值来自TCMR,但我们独立验证了它们。
与表I中的3D人体姿态和形状转换生成结果类似,表VIII中的结果也表明我们的ADAM-Net在几乎所有指标和数据集上都优于现有的基于视频的3D人体姿态和形状估计方法,如VIBE、TCMR和MPS-Net。关于VIBE,结果表明单个基于GRU的时间编码器未能有效地捕获时间信息,导致准确性差(即,更高的PA-MPJPE、MPJPE和MPVPE值)和平滑性差(即,更高的ACC-ERR值)。尽管TCMR结合了几个时间编码器可以取得进展,特别是在ACC-ERR方面,但它倾向于牺牲姿态和形状估计的准确性。以具有挑战性的3DPW实验为例,当TCMR将ACC-ERR比ADAM-Net减少0.5 mm/s²时,ADAM-Net将PA-MPJPE、MPJPE和MPVPE分别减少了1 mm、1.8 mm和3.6 mm。与MPS-Net相比,结果再次证明了通过整合L-ADAM和S-ADAM注意力模块来进一步关联不同注意力头之间的视觉特征,并实现粗到细的特征整合过程,ADAM-Net确实可以实现更优越的性能。关于MEVA,如表VIII所示,它至少需要90个输入帧,这意味着短视频不能用于训练和测试。这限制了实际应用。TCMR、MPS-Net和ADAM-Net之间的定性比较也表明,ADAM-Net可以更准确地估计人体的3D姿态和形状,特别是在肢体上,如图17所示。总体而言,ADAM-Net在从单目视频估计3D人体姿态和形状方面实现了准确性和平滑性之间的更好平衡。

V. 结论和未来工作

我们提出了ADAM-Net,用于在给定的时间稀疏照片中生成3D人体姿态和形状转换。这项工作的主要贡献在于设计了L-ADAM和S-ADAM注意力模块。前者利用多头交叉注意力和NSSM更好地关联视觉特征,并捕获具有运动连续性依赖关系的非局部上下文关系,而后者使我们的模型可以加权选择和整合不同层次的相邻特征表示,以加强时间相关性并细化每帧的特征表示。此外,我们引入了随机掩蔽过程和特征插值器,以便将3D人体姿态和形状估计方法轻松扩展到解决插值(即,3D人体姿态和形状转换生成)任务。与现有方法相比,L-ADAM和S-ADAM注意力模块的整合展示了我们的ADAM-Net在生成照片之间的3D姿态和形状方面的优越性。我们还展示了这样的系统如何允许动画师/初级用户快速生成在给定时间稀疏照片中的质量姿态和形状转换。同时,ADAM-Net在经典的3D人体姿态和形状估计任务上也表现良好。
虽然我们的ADAM-Net可以从提供的照片生成运动学一致的3D运动转换,但它目前只能为同一组照片产生相同的3D运动转换。虽然我们可以通过在原始照片之间插入不同姿势的照片并调整转换长度来缓解这一局限性,但我们认识到这是一个需要在未来改进的问题。在未来的工作中,我们计划在训练和测试阶段将随机性元素整合到模型中。这些元素可能包括应用于特征的技术,如扰动,或在概率分布下的采样策略,使模型能够学习可能的运动序列的多模态分布,从而直接从给定的照片生成多样化的3D运动转换。此外,我们发现我们的ADAM-Net在生成超出训练集的动作的转换时表现不足;我们打算开发数据增强技术来解决未来研究工作中的这一问题。在低分辨率或模糊图像下的3D姿态和形状估计也将作为我们未来研究方向之一。

声明

本文内容为论文学习收获分享,受限于知识能力,本文对原文的理解可能存在偏差,最终内容以原论文为准。本文信息旨在传播和学术交流,其内容由作者负责,不代表本号观点。文中作品文字、图片等如涉及内容、版权和其他问题,请及时与我们联系,我们将在第一时间回复并处理。

机器学习算法那些事
号主是大厂人工智能专家,专注于机器学习,深度学习以及计算机视觉等研究方向,每天会更新人工智能最前沿知识和分享自己的论文总结和学习笔记,让你系统化的学习每个知识点,每天进步一点点。
 最新文章