MHFormer论文阅读笔记-CVPR2022
文章题目为:MHFormer: Multi-Hypothesis Transformer for 3D Human Pose Estimation。文章提出了一个基于Transformer的多假设模型,不同于之前单纯的一对多映射,MHFormer在自假设之间进行通信以细化估计,并最终生成一个可信的3D姿态。
大纲
引言
从单目视频中进行3D人体姿态估计是一项具有广泛应用的基本视觉任务。该任务通常通过将其划分为两个分离的子任务来解决,即利用2D姿态检测以定位图像上的关键点,然后利用2D-to-3D提升从2D关键点推断3D空间中的关节位置。由于2D表示中的自遮挡和深度歧义,它仍然是一个固有的不适定问题。
不适定问题就是不满足适定性条件的问题,适定性条件为:
- 有且只有一个解(存在性、唯一性);
- 解连续地依赖于数据,即
(稳定性)。
为了缓解这些问题,大多数方法侧重于探索空间和时间关系。要么使用图卷积网络来估计具有人类骨架的时空图表示的3D姿态,要么应用纯基于Transformer的模型来从2D姿态序列中捕获空间和时间信息。然而,从单目视频中2D-to-3D是一个反问题,其中存在多个可行的解决方案(即假设),因为其在给定缺失深度的情况下具有不适定性。这些方法忽略了这个问题,只估计了一个单一的解决方案,这通常会导致不满意的结果,尤其是当目标产生严重自遮挡的情况下,如图1所示。
最近,针对该反问题提出了两种生成多个假设的方法。这些方法通常依赖于一对多映射,通过向具有共享特征提取器的现有架构中添加多个输出头来实现,但无法建立不同假设特征之间的关系。这是一个重大的缺点,因为这种能力对于提高模型的表现和性能至关重要。鉴于3D HPE是具有歧义的反问题,作者认为,首先进行一对多映射,然后使用各种中间假设进行多对一映射更合理,这种方法可以丰富特征的多样性,并生成更好的最终3D姿态。
本文提出了多假设Transformer(MHFormer),模型的关键是使模型从不同的姿态假设中学习时空表示。为此,本文构建了一个三阶段框架,首先生成多个初始表示,然后以独立和相互的方式在多假设之间进行通信,以合成更精确的估计,如图2所示。
接下来,本文提出了两个新的模块来建模时间一致性,并增强时间域中的粗糙表示。在第二阶段,提出了自我假设细化(Self-Hypothesis Refinement, SHR)模块来细化每个假设特征。SHR由两个块组成。第一个模块是多假设自我关注(Multi-Hypothesis Self-Attention, MH-SA),它独立地对单个假设依赖性进行建模,以构建自假设通信,使信息能够在每个假设内传递以增强特征。第二块是一个假设混合多层感知器(Hypothesis-Mixing MLP),它跨假设交换信息。将多个假设合并为单个收敛表示,然后将该表示划分为几个发散假设。
尽管SHR对这些假设进行了细化,但由于SHR中的MH-SA仅传递假设内信息,因此不同假设之间的联系不够强。为了解决这个问题,在最后阶段,交叉假设交互(Cross-Hypothesis Interaction, CHI)模块对多假设特征之间的交互进行建模。它的关键组成部分是多假设交叉关注(Multi-Hypothesis Cross-Attention, MH-CA),它捕获相互的多假设相关性,以建立跨假设通信,从而实现假设之间的信息传递,从而更好地进行交互建模。随后,使用假设混合多层感知机(Hypothesis-Mixing MLP)来聚合多个假设以合成最终预测。
利用所提出的MHFormer,多假设时空特征层次被明确地纳入Transformer模型,其中身体关节的多假设信息能够以端到端的方式被独立和交叉的处理。潜在地增强了表示能力,并且合成的姿态更加准确。
本文的贡献如下:
- 本文提出了一种新的基于Transformer的用于单目视频3D HPE的方法,称为多假设Transformer(MHFormer)。MHFormer可以以端到端的方式有效地学习多个姿态假设的时空表示。
- 提出了在多假设特征之间独立和相互的交流,提供强大的自假设和跨假设信息传递,以加强假设之间的关系。
- MHFormer在3D HPE的两个具有挑战性的数据集上实现了最先进的性能,超过PoseFormer约3%。
相关工作
3D人体姿态估计
现有的单视图3D姿态估计方法可分为两种主流类型:一阶段方法和两阶段方法。一阶段方法直接从输入图像中推断3D姿态,而不需要中间的2D姿态表示,而两阶段方法首先从预训练的2D姿态检测中获得2D关键点,然后将其送入到2D-to-3D网络中以估计3D姿态。受益于2D人体姿态估计的优异性能,这种2D-to-3D的方法可以使用检测到的2D关键点来高效且准确地回归3D姿态。尽管通过使用全卷积或基于图的架构获取时间相关性有良好的结果,但这些方法在跨帧捕获全局上下文信息方面效率较低。
视觉Transformer
对于基本图像分类任务,ViT提出将标准Transformer架构直接应用于图像patch序列。对于姿势估计任务,PoseFormer应用纯Transformer来捕获人类关节相关性和时间相关性。跨步Transformer(Strided Transformer)引入了一种基于Transformer的架构,该架构具有跨步卷积,以将长2D姿态序列提升为单个3D姿态。
本文的工作受到了它们的启发,同样使用Transformer作为基本架构。但不只是利用具有单一表示的简单架构;相反,多假设和多层次特征层次结构的开创性思想在Transformer中被联系起来,这使得模型不仅具有表现力,而且强大。此外,为有效的多假设学习引入了交叉注意机制。
多假设方法
单视图3D HPE是不适定的,因此只有一个假设的解决方案可能是次优的。一些工作为该反问题生成了不同的假设,并实现了实质性的性能增益。与这些专注于一对多映射的工作不同,本文方法首先学习一对多的映射,然后学习多对一的映射,这允许对与各种假设相对应的不同特征进行有效建模,以提高表示能力。
多假设Transformer
MHFormer的概述如图3a所示。给定由现成的2D姿态检测器从视频中估计的连续2D姿态序列,本文的方法旨在通过充分利用多假设特征层次中的空间和时间信息来重建中心帧的3D姿态。
为了实现本文提出的三阶段框架,MHFormer基于
- 三个主要模块:多假设生成(MHG)、自假设细化(SHR)和交叉假设交互(CHI)
- 两个辅助模块:时间嵌入和回归头。
预备工作
在这项工作中,因为Transformer在长期依赖性建模中表现良好,故作者采用了基于Transformer的架构。首先简要描述Transformer中的基本组件,包括多头自注意力(MSA)和多层感知器(MLP)。
多头自注意力(MSA)
在多头自注意力中,输入
多层感知机(MLP)
MLP由两个线性层组成,用于非线性和特征变换。公式描述为:
多假设生成(MHG)
在空域中,通过设计一个基于Transformer的级联架构来解决该反问题,以在潜在空间的不同深度中生成多个特征。为此,引入多假设生成(MHG)来建模人类关节关系并初始化多假设表示,如图3b所示。假设MHG中有
更具体地说,该模块将每个帧的关节坐标
时间嵌入
MHG有助于在空间域中生成初始多假设特征,而这些特征的能力不够强。考虑到这一限制,本文使用两个模块来构建跨假设特征的关系,并捕获时域中的时间相关性,即自假设细化(SHR)模块和交叉假设交互(CHI)模块,如图3c和3d所示。
为了利用时间信息,首先将空间域转换为时间域。为此,使用换位操作和线性嵌入将每个帧编码后的假设特征
自假设细化(SHR)
在时域中,首先构建SHR以细化单个假设特征。每个SHR层由多假设自注意力(MH-SA)块和假设混合MLP块组成。
多假设自注意力(MH-SA)
Transformer模型的核心是MSA,通过MSA,任意两个元素都可以相互作用,从而建模长期依赖关系。相反,MH-SA旨在独立地捕获每个假设中的单假设依赖性,以进行自假设沟通。具体而言,不同假设的嵌入特征
假设混合多层感知机(Hypothesis-Mixing MLP)
多个假设在MH-SA中独立处理,但假设之间没有信息交换。为了处理该问题,在MH-SA后添加了一个混合假设MLP。将多个假设的特征连结起来并输入到假设混合MLP中合并(即收敛过程)。然后,将收敛的特征沿通道维度均匀地划分为不重叠的块(即发散过程),以形成精炼的假设表示。用公式描述为:
交叉假设交互(CHI)
通过CHI对多假设特征之间的相互作用进行建模,CHI包含两个模块:多假设交叉注意力(MH-CA)和假设混合MLP。
多假设交叉注意力(MH-CA)
MH-SA缺乏跨假设的联系,限制了其交互建模的能力。为了捕获多假设之间的关系以进行跨假设通信,提出了由多个多头交叉注意力(MCA)元素并行组成的MH-CA。
MCA度量交叉假设特征之间的相关性,具有与MSA相似的结构。MCA的常见配置是在键和值之间使用相同的输入。然而,这种配置将导致需要更多的块(例如,3个假设需要6个MCA块)。而本文采用了一种更有效的策略,通过使用不同的输入(只需要3个MCA块)来减少参数量,如图4右半部分所示。
多个假设
假设混合多层感知机(Hypothesis-Mixing MLP)
CHI中的HM-MLP与SHR中的具有相同的功能。MH-CA的输出被送入该HM-MLP中:
回归头
在回归头中,在输出
损失函数
整个模型以端到端的方式进行训练,采用均方误差(MSE)损失来最小化估计和真实姿态之间的误差:
实验
数据集和评价指标
Human3.6M
与之前工作相同,在五个受试者(S1,S5,S6,S7,S8)上训练单个模型,并在两个受试对象(S9和S11)上进行测试。采用协议1的MPJPE和协议2的P-MPJPE。
MPI-INF-3DHP
在训练集中所有的8个演员上进行训练,使用独立的MPI-INF-3DHP测试集上进行测试。
使用MPJPE、阈值为150mm的PCK、曲线下面积(AUC)来评估模型。
实现细节
本文对MHFormer的实现中,包含
与SOTA比较
Human3.6M上的结果
表1展示了MHFormer的结果,该模型具有351帧的感受野。
其中,表中上半部分使用2D姿态检测器的输出作为输入,下半部分使用2D真实姿态作为输入,以探索模型的上界。
图5展示了在一些具有挑战性的姿势上与PoseFormer和基线模型(与ViT相同的架构)的定性比较。
此外,表2中展示了与之前采用多假设的方法比较的结果。由于其他方法采用一对多映射,故这些方法都报告了最佳假设的评价指标,而本文的方法通过学习确定映射来得出评价指标,这在现实中更加使用。且本文的假设数更少。
其中,
MPI-INF-3DHP上的结果
使用9帧的2D姿势序列作为该模型输入,因为与Human3.6M相比,该数据集的样本更少,序列长度更短。表3中的结果表明,本文的方法在所有指标(PCK、AUC和MPJPE)上都达到了最佳性能。它强调了MHFormer在户外场景中提高性能的有效性。
消融实验
消融实验基于Human3.6M数据集的协议1,以MPJPE为评价指标。
感受野的影响
对于基于视频的3D HPE任务,大的感受野对于估计精度至关重要。表4展示了本文的方法在不同输入帧下的结果。
其中,CPN和GT分别表示使用CPN的输出和真实2D姿态作为输入的情况。
接下来的消融实验使用27帧的感受野进行,以平衡计算效率和性能。
MHG中参数的影响
表5上半部分展示了不同数量MHG层的影响。实验表明,在MHG中堆叠更多的层可以稍微提高性能,但参数很少增加,但当层数大于4时,增益消失。
表5的下半部分展示了在MHG中使用不同假设数量的影响。增加假设的数量可以改善结果,但当使用3个假设表示时,性能会饱和。本文的模型与单一假设模型相比有着显著的进步,这表明利用多个姿态假设的不同表示有助于提高模型的性能,从而验证了本文的动机。
其中,
SHR和CHI中参数的影响
表6展示了SHR和CHI的不同参数对该模型的性能和计算复杂性的影响。结果表明,将嵌入维数从256扩展到512可以提高性能,但使用大于512的维数不能带来进一步的改进。此外,通过堆叠更多SHR或CHI层而没有更多的增益。因此,该模型的最佳参数为
其中,
模型组件的影响
表7展示了该模型的各个组件对性能的影响。
其中,
定性结果
虽然本文的方法不旨在产生多个3D姿态预测,但为了更好地观察,添加了额外的回归层,并对模型进行了微调,以可视化中间假设。几个定性结果如图6所示。可以看出,本文的方法能够生成不同的可信3D姿态解决方案,特别是对于具有深度歧义、自遮挡和2D检测器不确定性的模糊身体部位。此外,通过聚合多假设信息合成的最终3D姿态更加合理和准确。
本文方法的一个局限性是相对较大的计算复杂性。Transformer的卓越性能是以高计算成本为代价的。
MHFormer论文阅读笔记-CVPR2022