3D human pose 重要论文分类(持续更新)

这篇博客整理了从传统方法到深度学习方法的3D人体姿态估计算法,涵盖从单幅图像直接预测3D pose、2D pose到3D pose的转换以及多视图处理等不同技术。其中,强调了深度学习在3D人体姿态估计领域的进步,包括使用深度网络直接回归3D关键点坐标和结合2D pose信息的方法。

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

3D human pose 重要论文整理(持续更新)

内容较多,提供目录便于查找

传统方法

*[1] Chunyu Wang,Yizhou Wang,Zhouchen Lin,Alan L. Yuille,Wen Gao. Robust Estimation of 3D Human Poses from a Single Image. In the Center for Brains, Minds and Machines(CBMM), 2014(用优化的方法进行2D pose到3D pose的三维重建)

*[2] Atul Kanaujia. Coupling Top-down and Bottom-up Methods for 3D Human Pose and Shape Estimation from Monocular Image Sequences. 2014

*[3] Behnam Babagholami-Mohamadabadi, Amin Jourabloo, Ali Zarghami, and Shohreh Kasaei . A Bayesian Framework for Sparse Representation-Based 3D Human Pose Estimation. In IEEE Signal Processing Letters (SPL), 2014

深度学习方法

3D Pose

从单幅图像直接出3D pose

[1] Sijin Li and Antoni B Chan. 3d human pose estimation from monocular images with deep convolutional neural network. In Asian Conference on Computer Vision (ACCV), pages 332–347, 2014.

第一个利用该思路进行三维人体姿态估计的工作,也是使用深度学习进行三维人体姿态估计的工作。该工作首先使用一个8层的网络做一个目标检测的视觉任务。然后将用来做特征提取部分的CNN层来作为三维人体姿态估计的初始化模型,并丢弃掉目标检测网络头部分进行训练。该方法相对于传统方法明显的提高。

[2] Sijin Li, Weichen Zhang, Antoni B. Chan. Maximum-Margin Structured Learning with Deep Networks for 3D Human Pose Estimation.CVPR, 2015

该网络除了从图像直接回归三维关键点坐标外,还加入了一个新的分支。该分支只在训练时发挥作用,其接收三维姿态的真是标注作为输入,然后经过多层感知机提取特征。然后利用该特征作为监督来训练,整个网络看上去也是一个多任务网络。

[3] Sungheon Park, Jihye Hwang, and Nojun Kwak. 3d human pose estimation using convolutional neural networks with 2d pose information. In Proceedings of the European Conference on Computer Vision (ECCV), pages 156–169, 2016.

提出的整个的网络的结构与[1]类似,不同点在于该网络使用的是二维姿态估计作为另一个任务分支的监督且这两个任务一同训练。

[4] Bugra Tekin, Isinsu Katircioglu, Mathieu Salzmann, Vincent Lepetit, and Pascal Fua. Structured prediction of 3d human pose with deep neural networks. In British Machine Vision Conference (BMVC), 2016.

首先利用三维关键点坐标作为输入和监督来预训练一个自编码-解码器,预训练好后保留解码器。之后在主网络中输入图像经过CNN提取特征不直接回归三维人体关键点坐标,而是来预测解码器输入端的隐向量,该隐向量通过解码器解码出三维人体关键点位置,在这个过程中解码器的参数不会更新。

*[5] Albert Haque, Boya Peng, Zelun Luo, Alexandre Alahi, Serena Yeung, Li Fei-Fei. Towards Viewpoint Invariant 3D Human Pose Estimation. ECCV, 2016.(从单一深度图出3D pose)

[6] 3D Human Pose Estimation in the Wild by Adversarial Learning. CVPR 2018.
在这里插入图片描述

由单幅图的2D pose 出3D pose

[1] Julieta Martinez, Rayat Hossain, Javier Romero, and James J. Little. A simple yet effective baseline for 3d human pose estimation.ICCV 2017.

*[2] Hao-Shu Fang, Yuanlu Xu, Wenguan Wang, Xiaobai Liu, Song-Chun Zhu. Learning Pose Grammar to Encode Human Body Configuration for 3D Pose Estimation. AAAI 2018.
在这里插入图片描述
[3] Unsupervised Adversarial Learning of 3D Human Pose from 2D Joint Locations. 2018.
在这里插入图片描述
[4] Matteo Ruggero Ronchi, Oisin Mac Aodha, Robert Eng, and Pietro Perona. It’s all relative: Monocular 3d human pose estimation from weakly supervised data. In British Machine Vision Conference (BMVC), 2018.

[5] 3D Human Pose Estimation with Relational Networks. BMVC 2018.
在这里插入图片描述
[6] 3D Human Pose Estimation with Siamese Equivariant Embedding. Neurocomputing 2018.

### 3D人体姿态估计算法和技术概述 3D人体姿态估计算法旨在通过输入图像或视频序列来推断人体关节的空间位置。这些技术广泛应用于动作捕捉、虚拟现实以及增强现实等领域。以下是几种主流的3D人体姿态估计技术和其核心原理: #### 基于深度学习的方法 近年来,基于深度学习的技术显著提升了3D人体姿态估计的效果。一种简单而有效的基线模型被提出用于处理这一问题[^1]。该方法利用卷积神经网络(CNNs)提取特征并预测关键点的位置。它强调了回归任务的重要性,并展示了即使是最简单的架构也能达到竞争性的性能。 另一种创新性的工作来自HumanGaussian项目,该项目提出了结合高斯分布建模的人体表示形式,从而实现了由文本驱动的三维人类生成过程[^2]。这种方法不仅能够生成高质量的3D形状,还支持复杂的交互场景下的动态表现。 #### 多阶段细化策略 某些高级框架采用了多阶段的设计思路,在每一层逐步改进初始猜测的质量。例如,有研究者设计了一种两分支结构,其中一个负责局部区域检测,另一个则关注全局关系构建[^3]。这种设置允许系统更精确地定位各个肢体部分的同时保持整体一致性。 此外,为了应对标注不充分的数据集挑战,上述论文引入了空间权重机制调整损失函数项的影响程度。这有助于减轻因缺失标签而导致的学习偏差问题。 ```python import torch from torchvision import models class PoseEstimator(torch.nn.Module): def __init__(self, num_joints=17): super(PoseEstimator, self).__init__() resnet = models.resnet50(pretrained=True) layers = list(resnet.children())[:-2] self.backbone = torch.nn.Sequential(*layers) # Add custom head for keypoint detection self.head = torch.nn.Conv2d(2048, num_joints*2, kernel_size=1) def forward(self, x): features = self.backbone(x) output = self.head(features) return output.view(output.size(0), -1, 2) # (batch_size, num_joints, xy_coords) ``` 此代码片段展示了一个基础版本的姿态估计器定义方式,其中使用ResNet作为骨干网路提取特征向量之后再接上一层全连接操作完成最终坐标输出转换工作流程。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值