3D人体姿态估计简述
前言
3D Human Pose Estimation(以下简称 3D HPE )的目标是在三维空间中估计人体关键点的位置。
3D HPE 的应用非常广泛,包括人机交互、运动分析、康复训练等,它也可以为其他计算机视觉任务(例如行为识别)提供 skeleton 等方面的信息。
关于人体的表示一般有两种方式:第一种以骨架的形式表示人体姿态,由一系列的人体关键点和关键点之间的连线构成;另一种是参数化的人体模型(如 SMPL [2]),以 mesh 形式表示人体姿态和体型。
主要问题
一方面,受数据采集难度的限制,目前大多数方法都是基于单目图像或视频的,而从 2D 图像到 3D 姿态的映射本就是一个多解问题。另一方面,深度学习算法依赖于大量的训练数据,但由于 3D 姿态标注的难度和成本都比较高,目前的主流数据集基本都是在实验室环境下采集的,这势必会影响到算法在户外数据上的泛化性能。另外,2D HPE 面临的一些难题(例如自遮挡)同样也是 3D HPE 亟待解决的问题。
主流算法
基于单目图像的方法
直接预测
不依赖 2D HPE,直接从图像回归得到 3D 关键点坐标
例如 C2F-Vol (Coarse-to-Fine Volumetric Prediction for Single-Image 3D Human Pose) 借鉴了 2D HPE 中的 Hourglass 网络结构,并以 3D Heatmap 的形式表示 3D pose。为了降低三维数据带来的巨大存储消耗,采用了在 depth 维度上逐渐提升分辨率的方法。
2D-to-3D Lifting
以 2D HPE 作为中间步骤,根据 2D pose(和原始图像特征)去估计 3D pose。
例如 SimpleBaseline3D (A simple yet effective baseline for 3d human pose estimation) 以 2D 关键点坐标作为输入,通过残差连接的全连接层直接将 2D pose 映射到 3D 空间。
基于多目图像的方法
从多目图像中重建 3D pose
关键在于如何确定场景中同一个点在不同视角下的位置关系
例如 (Weakly-Supervised Discovery of Geometry-Aware Representation for 3D Human Pose Estimation) 同时输入两个视角的图像,对于其中某一个视角的 2D pose 输入,根据两个视角间的转换关系,预测另一个视角的 3D pose 输出。
基于视频的方法
引入时间维度上的信息
相邻帧提供的上下文信息可以帮助我们更好地预测当前帧的姿态,对于遮挡情况,也可以根据前后几帧的姿态做一些合理推测。
其他方法
除了 RGB 图像以外,也有越来越多的传感器被应用于 3D HPE 任务中。常见的有深度相机、雷达、IMU(惯性测量单元)等。深度相机和雷达都提供了三维空间上的信息,这对于 3D HPE 来说非常重要,可以帮助缓解或消除深度不确定性问题。IMU 设备可以提供关节方向信息,它不依赖于视觉信号,因此可以帮助解决遮挡问题。
- Title: 3D人体姿态估计简述
- Author: CGC
- Created at: 2024-03-01 15:16:54
- Updated at: 2024-06-30 15:24:17
- Link: https://redefine.ohevan.com/2024/03/01/3D人体姿态估计简述/
- License: This work is licensed under CC BY-NC-SA 4.0.