Poseur:使用Transformer直接进行人体姿态回归.

TL; DR

本文提出了一种基于Transformer的直接人体姿态回归方法——Poseur。该方法将人体姿态估计问题转化为序列预测任务,通过Transformer网络直接从图像回归关键点坐标,避免了传统基于热图方法的复杂性。Poseur通过引入注意力机制,解决了以往回归方法中特征对齐问题,并显著提高了低分辨率图像上的人体姿态估计性能。实验表明,PoseurMS-COCOMPII数据集上显著优于现有的回归方法,并首次与基于热图的SOTA方法相媲美。

1. 背景介绍

人体姿态估计是计算机视觉中的一个核心问题,广泛应用于动作识别、视频增强和人机交互等领域。传统方法主要分为基于热图的方法和回归方法。基于热图的方法通过预测每个关键点的热图来定位人体姿态,虽然精度较高,但存在以下局限性:

回归方法直接从图像回归关键点坐标,避免了热图的复杂性,但以往的回归方法性能较差。本文提出了一种新的回归框架Poseur,通过Transformer网络直接学习从图像到关键点坐标的映射,并引入注意力机制解决特征对齐问题。

2. Poseur模型

Poseur的核心思想是将人体关键点表示为查询(queries),每个查询对应一个关键点。通过Transformer的交叉注意力机制,模型能够自适应地关注与目标关键点最相关的特征,从而提高定位精度。Poseur框架包括以下部分:

⚪ Backbone

Backbone使用卷积层提取卷积特征,经过GAP后用FC来回归坐标值。回归得到的坐标值作为粗略预测用来引导特征匹配;并且不同stage的特征图作为多尺度特征一起送入后面的decoder进行坐标预测。

⚪ Keypoint Encoder

本文用$K$个query token作为可学习的关键点token。关键点编码器用于初始化查询token。每个查询包含两个属性:位置和类别。位置属性通过将Backbone中粗略预测的关键点坐标转换为正弦-余弦位置嵌入来编码;类别属性通过学习可训练的类别嵌入向量来表示。最终,查询token通过位置和类别嵌入的逐元素相加来初始化。

⚪ Query Decoder

查询解码器是Poseur的核心部分,它通过Transformer解码器结构来更新查询token。每个查询token通过自注意力模块和交叉注意力模块逐步更新,最终生成每个关键点的特征表示。交叉注意力模块采用高效的多尺度变形注意力(EMSDA),能够自适应地从Backbone提供的多尺度特征图中采样与查询最相关的特征。

为了增强解码器的能力,本文设计了一个人工噪声的模块,用人工生成的随机坐标作为预测参考点送进Decoder一起训练,要求模型预测正确的结果;在训练结束后扔掉,推理时使用RLE的结果作为参考点。

⚪ Uncertainty Score

本文提出使用预测关键点分布的似然概率函数在均值点附近的积分来作为关键点预测的不确定性得分。用标准Lapalce分布作为概率密度函数的假设:

\[f(x\mid \mu,b) = \frac{1}{2b}\exp\left(-\frac{|x-\mu|}{b}\right)\]

则关键点预测的不确定性得分计算为:

\[s = \int_{\mu-a}^{\mu+a} f(x\mid \mu,b)dx=1-\exp\left(-\frac{a}{b}\right)\]

⚪ Loss Function

Poseur采用Residual Log-likelihood Estimation (RLE)来监督模型训练。模型预测每个关键点的中心位置和尺度参数,通过最大化目标位置的概率来优化网络。损失函数包括两部分:粗略预测的损失和查询解码器的损失,最终通过加权求和得到总损失。

3. 实验分析

实验主要在MS-COCOMPII数据集上进行。MS-COCO包含约25万个人体实例,标注了17个关键点;MPII包含约2.5万张图像,标注了16个关键点。评估指标采用AP(平均精度)和PCK(正确关键点百分比)。

Poseur在使用低分辨率表示的背景网络(如MobileNet-V2ResNet)时表现出色,且计算复杂度更低。

PoseurMS-COCOMPII数据集上均取得了与基于热图的SOTA方法相当的性能。

此外,作者进行了一系列消融实验: