openmmlab实战营第二期笔记

本文介绍了2D多人姿态估计的几种方法,包括自顶向下的DeepPose及其优化,自底向上的OpenPose,单阶段的SPM和基于Transformer的PPTR与TokenPose。这些方法分别通过目标检测、关键点聚类、单阶段解决和注意力机制来处理人体姿态识别问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

2D多人姿态估计方法

(1) 自顶向下方法

在自顶向下方法中,首先使用目标检测算法来检测每个人体,然后基于单人图像估计每个人的姿态。

整体精度受限于检测器的准确性,速度和计算量与人数成正比。一些新的研究将这两个阶段合并为一个阶段。

DeepPose(2014)是一种自顶向下方法,它使用全身图像作为输入,预测所有关键点的坐标,但位置精度较低。然后,以每个预测点为中心,裁剪局部图像并送入第二级网络,再次回归该点的坐标,从而提高精度。该方法可以级联多级,理论上具有无限精度,并且计算效率更高。然而,由于回归坐标较困难,精度较低,因此自DeepPose之后,2D关键点预测算法主要基于热力图。

Residual Log-likelihood Estimation(RLE)(2021)通过更准确地对关键点位置的概率分布建模,引入重参数和残差似然函数,降低了模型拟合真实分布的难度,提高了位置预测的精度。

经典的回归范式是基于位置回归误差的损失函数,但不一定符合真实分布。RLE采用的范式是,首先模型给出基础分布的参数,然后RLE模块基于标准化流给出位置的分布,通过最大似然估计来拟合最优的位置分布。RLE的思路是用可学习的、表达能力更强的分布替代简单的高斯分布,更好地拟合关键点位置的实际分布。

(2) 自底向上方法

自底向上方法首先使用关键点模型检测出所有人体的关键点,然后根据位置关系或其他辅助信息将关键点组合成不同的人。

自底向上方法的优点是推理速度与人数无关,但合成速度仍然会受到人数的影响。

Part Affinity Fields和OpenPose(2016)是一种典型的自底向上方法。它的基本思路是在图像上同时预测关节位置和四肢走向,利用肢体走向来辅助关键点的聚类。如果两个关键点之间存在肢体连接,则它们属于同一个人。该方法通过预测关键点与肢体之间的关系,以及关键点与关节的预测,通过亲和度匹配关键点来组合它们。

(3) 单阶段方法

单阶段方法实现了人体的检测和姿态估计的一步完成,具有较快的速度。

SPM(2019)首次提出了人体姿态估计的单阶段解决方案,它在保持速度优势的同时,也达到了与两阶段方法相媲美的检测率。该方法可以直接从2D图像扩展到3D图像的人体姿态估计。

Structured Pose Representation(SPR)引入了一个辅助关节,即根关节,它表示人体实例的位置,并统一了人体实例和身体关节的位置信息,为多人姿势估计提供了单阶段解决方案。然而,SPR存在一些明显的缺点,例如在面对较大的姿势变形时,涉及到身体关节和根关节之间的远距离位移,给从图像表示映射到矢量域的位移估计带来困难。因此,在SPR的基础上提出了Hierarchical SPR,通过根据自由度和变形程度将根关节和身体关节划分为四个层次,利用级联的Hourglass作为主干网络,利用置信回归分支回归根节点的热力图,并额外添加了一个位移回归分支来估计身体关节

的位移图。具体的回归策略包括根节点位置和身体节点位移两部分,损失函数设计了两部分的损失。

(4) 基于Transformer的方法

PPTR(2021)是一种基于Transformer的方法,它分为人体检测阶段和关键点检测阶段。在人体检测阶段,它使用DETR模型来检测图像中的不同人体实例。在关键点检测阶段,同样使用DETR结构,但不同之处在于查询(query)用于学习关键点信息,并最终回归关键点的位置。

PPTR的单阶段算法中,人体检测和关键点检测共享一个图像特征网络,它设计了STN模块,从完整特征图中裁剪出与每个人体实例对应的图像特征,用于后续的关键点检测。

TokenPose(2021)是另一种基于Transformer的方法。它将图像经过卷积网络得到一系列视觉tokens,并为每个关键点设置一个可学习的token。然后,将视觉tokens和关键点tokens一起输入到编码器中进行信息交互。类似的方法也被应用于ViT模型中的分类任务。

这些方法利用Transformer的自注意力机制来捕捉关键点之间的关系,实现了准确的人体姿态估计。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值