【光电智造】万字长文!人体姿态估计(HPE)入门教程

今日光电 2024-03-29 18:00

今日光电

     有人说,20世纪是电的世纪,21世纪是光的世纪;知光解电,再小的个体都可以被赋能。追光逐电,光赢未来...欢迎来到今日光电!




----追光逐电 光赢未来----

导读

 

作者总结了人体姿态估计入门需要学习的一些知识,在学习过程中的一些感悟和踩过的坑,列举主要的工作脉络和一些细节

0.前言

自己的研究方向属于人体姿态估计领域,但是学了大概两年了,才感觉刚入门(主要是自己太菜...),一开始对各种各样的名词和网络方法摸不着头脑,没有建立属于自己的研究体系,论文堆积如山,各种方法层出不穷,研究生就这么几年,哪能看的完呢?没有一个指路人,真的太难,而且这个领域的应用和教程属实没有检测和分割多......这里总结一下自己在学习过程中的一些感悟和踩过的坑,列举主要的工作脉络和一些细节,还有前期主要看的论文。主要以帮助后来者入门使用,肯定有一些内容属于自己主观理解,纯属个人经验,若有错误,麻烦一起讨论交流,感谢指正!欢迎留言私信哈~~

1.总述

人体姿态估计按照不同的标准有着各种各样的分类。包括2D/3D/mesh单人/多人自顶向下(top-down)/自底向上(bottom-up)图像(image)/视频(video)坐标/热图(heatmap)检测(detection-based)/回归(regression-based) , 单阶段(single-stage)/多阶段(multi-stage)......等等,各种分类方法之间相互嵌套,每篇文章都有作者按照自己理解划分的类别,真的很让人摸不着头脑。但实际上,很多分类都有着递进的关系,例如:

图 分类关系

大部分论文在讲述的时候,都是继承之前的论文方法,因此很多细节讲的不是很清楚,一篇参考文献就一笔带过,如果没有完整的体系架构,直接看最新的文献会很乱,发现需要补充的知识越来越多,导致知识体系细碎繁杂,看完了也不知道讲的是什么。这里给出姿态估计的几篇综述文献,里面从各个角度讲述了姿态估计的一些经典方法和分类,有助于建立整个框架体系:

[1] Single Person Pose Estimation: A Survey(2021.09)
https://arxiv.org/abs/2109.10056v1

[2] Monocular human pose estimation: A survey of deep learning-based methods(2020.06)  
https://arxiv.org/abs/2006.01423

[3] Deep Learning-Based Human Pose Estimation: A Survey(2020.11) https://arxiv.org/abs/2012.13392v1)

[4] Recent Advances in Monocular 2D and 3D Human Pose Estimation: A Deep Learning Perspective (2021.04)
https://arxiv.org/abs/2104.11536

[5] Recovering 3D Human Mesh from Monocular Images: A Survey(2022.03)
https://arxiv.org/abs/2203.01923v1

在写这篇文章的时候,发现了大神刚出的一篇比较好的总结,链接放到这里,供大家学习参考,可先阅读,对比和本文的异同,以作参考:

人体姿态估计的过去,现在,未来
https://zhuanlan.zhihu.com/p/85506259

还有OpenMMlab有一期卢策吾老师的视频讲解,总结了pose相关的方法,链接如下,建议观看,以作参考:

https://www.bilibili.com/video/BV1kk4y1L7Xb

这里使用上面文献[4]的一张图展示一下相关研究和论文,按照时间顺序展示,清晰明了,推荐阅读这篇综述:

图 里程碑、想法或数据集突破,以及2014年至2021年2D(上)和3D(下)姿态估计的SOTA方法

另外上面文献[5]是关于人体Mesh研究的,也是我研究的一个领域,所以把这篇综述也放了上来,同样有一张图:

图 相关的参数化人体模型和三维人体网格重建方法

建立思路:按照时间建立自己的知识体系,个人认为是一个很好的方式,感受这个领域的方法一步一步的推进过程,一点一点构建自己的知识领域框架,后面读论文不再是一行一行读,而是一块一块地读;而且可以在阅读的过程中,从后面的研究者在Related Work中对早期的文章的见解和描述,是一种感受不同人对某一方法的不同见解的过程,幸运的话甚至可以从中得到启发。从一篇文献中追根溯源,并总结流派和方法,然后再继续关注当前的最新进展,逐步完善自己的领域,是我个人认为比较好的一种科研思维。

2. 体系架构

  • 本文以如下结构进行介绍,包括人体2D,3D,Mesh;分别介绍每个类别的开山之作,主要流派(其中的经典代表网络和方法),以及最新进展,如果有更新的作品,欢迎大家进行补充。
图 文章体系架构
  • 这里推荐OpenMMLAB实验室的mmpose项目:上面有很多总结、经典以及最新方法的实现和讲解,有框架,有代码,有教程,可快速复现,而且维护和更新也很块。

https://github.com/open-mmlab/mmpose

3. 2D姿态估计

3.0 必读论文总览

下图是2D姿态估计领域比较经典的论文,也是我认为必读的一些论文,建议按照时间顺序来阅读,可以从中感受2D姿态估计的层层递进。阅读的时候建议大家关注一下作者,因为很多论文包含了同一作者,说明两篇论文之间是有联系的,例如,Openpose的前身就是CPM,MSPN是基于CPN的修改,另外Hpurglass、CPN、SimpleBaseline2D在HRNet论文中做了比较......这些论文之间的异同以及包含关系,也是比较有趣的。所有论文的题目和链接也一起放在了下面,感兴趣的童鞋可以直接下载阅读。每一篇文章的详细讲解,大家可以在各大分享平台找到,很多大佬也都分享过自己的见解,本文仅对部分文章进行简单的介绍,梳理论文逻辑,详细的内容大家可以自行阅读论文或者搜索参考其他作者讲解的内容。

当然,只看论文是不够的,因为论文对网络结构的讲解比较抽象,进一步的学习一定要亲自敲一遍网络结构的代码,这一部分后续有时间也可以整理一下(挖坑1...)。

图 2D必读论文总览

3.1 开山之作(DeepPose)

《[DeepPose: Human Pose Estimation via Deep Neural Networks]》(CVPR'2014)
https://arxiv.org/abs/1312.4659

图 DeepPose网络结构(蓝色卷积,绿色全连接)

DeepPose是姿态估估计领域中使用深度学习检测人体关节点的最初的论文,在它之前,很多文章都是基于身体部位(part)检测的。它 (1)继承了AleXNet网络结构,AlexNet 作为 backbone,是第一个DNN姿态估计网络;(2)采用级联(cascade)结构细化(refine)姿态。这对后面的网络结构思想有了很大启发,后续的很多网络也都采用了cascade的这种结构。

这篇文章提出了姿态估计的两个概念:

  • 姿态估计的公式化定义
图 论文描述
  • 级联(cascade)结构

cascade这个单词在后面的很多网络中都会用到,例如Hourglass和CPM,但我一开始并不太明白,后来翻看英文释义,表示“串联,级联”,也就是说,它将一个网络模块重复地使用多次,串在一起,形成multi-stage,相当于加深了层数,第一个stage粗检测,后面逐渐精细,类似于“从粗到细”的策略,逐渐纠正,不断细化。事实证明这种结构的有效性非常好。后续我们也会经常见到这个词,以及这种结构。

与之对应的还有一个词:stacked,堆叠,Hourglass使用了这个词的表述。两个词都表示同样或相似的Block结构多层连接。

论文使用的数据集有两个:FLIC和LSP,评价指标分别为PDJ(=0.9+)和PCP@0.5(=0.61),评价指标和数据集都比较旧了,现在已经很少使用。建议大家看看上面提到的综述论文,里面有数据集和评价指标的详细总结,后期有空,可以单独写一个总结(挖坑2...)。

填坑2:人体姿态估计评价指标见下文。

陌尘小小:【人体姿态估计评价指标】
https://zhuanlan.zhihu.com/p/646159957

3.2 必看论文

  • ResNet:

ResNet就不用多说了,源自何恺明论文《Deep Residual Learning for Image Recognition》。它几乎是现在深度学习框架的基石,几乎所有的backbone都用到它或者它的变体,当然,几乎所有的姿态估计的结构代码中都用到了这种残差结构。在使用代码的时候,主要注意三个函数,这也是后续所有网络结构代码经常用到的三个函数:BasicBlock;Bottleneck;_make-layer方法。具体原理大家可看论文或者其他大佬讲解。

图 ResNet的BasicBlock和Bottleneck结构

具体的代码可以看下面这个博文:

ResNet _make_layer代码理解
https://blog.csdn.net/cangafuture/article/details/113485879

  • FPN
    特征金字塔网络,是常用的Neck网络,后续有它的诸多变体,很多网络会用到它。写到这里大家要注意区分一下:图像金字塔特征金字塔的概念,从下图(a)就可以很明显地看出来了。
图 特征金字塔

具体的代码和讲解可以看这个博文:

FPN网络结构及Pytorch实现
https://blog.csdn.net/qq_41251963/article/details/109398699

下面还有一些方法网络很经典,每一篇都逐渐递进,每一篇都值得去看并且复现其网络结构,例如Hourglass的网络,甚至用了递归的方法构建网络,其中的细节就涉及到算法层面的知识了,但是了解每一种算法的输入输出和整体框架搭建思路,先构建体系,再深入了解细节,注意实际上手和操练,还是很不错的学习过程。这些论文的讲解网上有一大堆,大家可以自行查阅,后续有时间可以对其中的细节进行单独的写作,但是本篇仅作为入门使用。

  • CPM
  • Hourglass
  • CPN
  • MSPN
  • HRNet:HRNet很经典,所以推一个B站的学习教程:

HRNet网络详解
https://www.bilibili.com/video/BV1bB4y1y7qP

以上都是经典的人体姿态估计网络,或许称之为经典的单人姿态估计网络,对于多人姿态估计,分为自顶向下和自底向上,代表作分别是AlphaPose和OpenPose。

  • 自顶向下(top-down) :AlphaPose
  • 自底向上(bottom-up) :OpenPose。参考下面唐宇迪的讲解。

openpose教程人体姿态估计网络
https://www.bilibili.com/video/BV1JD4y1W7jZ

3.3 最新进展

看完这些经典的论文之后自然要有所比较,在数据集那个哪个最优,这一部分可以看上文提到的综述[2],里面有每个方法的亮点和每个数据集相应的精度。进一步的精度对比可以看这个网站paperswithcode,里面有所有最新算法在数据集上的精度比较,记录了论文和代码,非常方便来个示例图,:

图 2DHPE在COCO数据集上的精度指标

链接如下:大家可以看最新的精度和效果在MSCOCO、MPII数据集上的榜单,从而对比自己正在阅读的论文和所做的工作有多大差距。

paperswithcode.com
https://paperswithcode.com/area/computer-vision/pose-estimation

截至写本文的时候,最好的是基于Transformer的ViTPose。《ViTPose: Simple Vision Transformer Baselines for Human Pose Estimation》,讲解可参考下文:

论文阅读:ViTPose27
https://zhuanlan.zhihu.com/p/527877998

4. 3D姿态估计

4.0 必读论文总览

问题本质:

3D人体姿态估计是从图片或视频中估计出关节点的三维坐标 (x, y,z),它本质上是一个回归问题。

挑战:

(1)单视角下2D到3D映射中固有的深度模糊性与不适定性:因为一个2D骨架可以对应多个3D骨架,它具有在单视角下2D到3D映射中固有的深度模糊性与不适定性,这也导致了它本身就具有挑战性。

(2)缺少大型的室外数据集和特殊姿态数据集:这主要由于3D姿态数据集是依靠适合室内环境的动作捕捉(MOCAP)系统构建的,而MOCAP系统需要带有多个传感器和紧身衣裤的复杂装置,在室外环境使用是不切实际的。因此数据集大多是在实验室环境下建立的,模型的泛化能力也比较差。

研究方法:3D姿态估计受限于数据集和深度估计,大部分方法还是和2D姿态估计有着非常强的联系。

感兴趣的同学可以看一下这篇CSDN的博客,有个大致了解,下面的部分内容摘自其中。当然这篇里面的分类只是一种,大家参考综述[4]里面的配图9,也可以作为一种分类,不过大家注意每种分类方法,一些重要的文献总是归在同一类别的。

3D人体姿态估计论文汇总(CVPR/ECCV/ACCV/AAAI)
https://yongqi.blog.csdn.net/article/details/107625327

4.1 开山之作:(DconvMP)

《3D Human Pose Estimation from Monocular Images with Deep Convolutional Neural Network》,第一篇用卷及网络直接回归3D姿态的文章。

图 DconvMP网络结构图
  • 总结:网络框架包含两个任务:(1)a joint point regression task;(2)joint point detection tasks。
  • 输入:包含human subjects的bounding box图片。
  • 输出:N×3(N=17)关节坐标
  • 数据集:Human3.6M;
  • 结果:MPJPE,使用Pearson correlation 和 LP norm探讨了DNN如何编码人体结构的依赖性与相关性。

4.2 必看论文

基于回归

[1]3D Human Pose Estimation from Monocular Images with Deep Convolutional Neural Network》 (2014)
[2]《VNect: Real-time 3D Human Pose Estimation with a Single RGB Camera》 (ACM-2017)
[3]《Coarse-to-Fine Volumetric Prediction for Single-Image 3D Human Pose》(CVPR-2017)
[4]《Integral Human Pose Regression》(CVPR-2018)
[5]《Camera Distance-aware Top-down Approach for 3D Multi-person Pose Estimation from a Single RGB Image》 (ICCV2019)

其中3-4-5是具有相关性的三篇论文

  • 上述论文 [3](CVPR 2017)从2D图片中直接得到体素(Volumetric representation),而不是直接回归关节点的坐标,并取最大值的位置作为每个关节点的输出。体素是从2D姿态估计的heatmap学习而来,其实就是3D heatmap。

    第一步:ConvNet直接回归生成关节体素(传统是直接回归3D坐标),用到了Hourglass;

    第二步:采用从粗到细的Coarse-to-Fine预测策略。

论文3 配图
  • 上述论文 [4] (ECCV 2018)是论文[3]的扩展工作,引入了积分回归(Integral Pose Regression)模块,也叫soft-argmax,将原先的取heatmap最大值对应的位置改成对heatmap求关节点的期望,使这一过程可微。全文就基于Integral Pose Regression模块做了大量的实验并验证其有效性,在3个数据集上分别实验成文。
论文4 配图
  • 上述论文 [5] 是一个Top-Down的多人姿态估计,提出了一个模块化的整体结构:DetectNet+RootNet+PoseNet,DetectNet是目标检测网络,RootNet是本文重点,提出了一个深度估计方法,PoseNet借鉴了上述论文[4]的方法。论文代码在github分别提供了RootNet和PoseNet,便于实际项目应用.
    https://github.com/mks0601/3DMPPE_POSENET_RELEASE
论文5 配图
  • 积分回归的代码讲解可以看我个人的B站视频,感兴趣的同学可以看一下。

ChatGPT助你理解积分人体姿态估计
https://www.bilibili.com/video/BV1oM411A79c

基于2D->3D

  • 《3D Human Pose Estimation = 2D Pose Estimation + Matching》

总结:首先是做2D的人体姿态估计,然后基于Nearest neighbor最近邻的match来从training data中找最像的姿态。2D的姿态估计算法是基于CPM来做的。3D的match方法是KNN(https://blog.csdn.net/u010608296/article/details/120640343)方法,先把training data中的人体3d骨架投射到2D空间,然后把test sample的2d骨架跟这些training data进行对比,最后使用最相近的2d骨架对应的3D骨架当成最后test sample点3D骨架。当training数据量非常多的时候,这种方法可能可以保证比较好的精度,但是在大部分时候,这种匹配方法的精度较粗,而且误差很大。

图 思路框架图
  • SimpleBasline-3D:《A Simple Yet Effective Baseline for 3d Human Pose Estimation》
    https://github.com/weigq/3d_pose_baseline_pytorch

论文动机:论文作者开头就提到,目前最先进的 3d 人体姿态估计方法主要集中在端到端(直接回归)的方法,即在给定原始图像像素的情况下预测 3d 关节位置。尽管性能优异,但通常很难理解它们的误差来源于 2d姿态估计部分过程(visual),还是将 2d 姿势映射到 3d关节的过程。因此,作者将 3d 姿态估计解耦为2d 姿态估计和从2d 到 3d 姿态估计(即,3D姿态估计 = 2D姿态估计 + (2D->3D)),重点关注 (2D->3D)。所以作者提出了一个从2D关节到3D关节的系统,系统的输入是 2d 个关节位置数组,输出是 3d 中的一系列关节位置,并将其误差降到很低,从而证明3D姿态估计的误差主要来源于图像到2D姿态的过程,即视觉理解(visual)的过程。

图 SimpleBasline-3D网络结构

同样,从这个工作的名字可以看出,这个工作提出了一个比较simple的baseline,但是效果还是非常明显。方法上面来讲,就是先做一个2d skeleton的姿态估计,方法是基于Hourglass的,文章中的解释是较好的效果以及不错的速度。基于获得的2d骨架位置后,后续接入两个fully connected的操作,直接回归3D坐标点。这个做法非常粗暴直接,但是效果还是非常明显的。在回归之前,需要对坐标系统做一些操作。

基于时序(视频序列)

  • VideoPose3D:《3D human pose estimation in video with temporal convolutions and semi-supervised training》

    利用这篇是利用视频做姿态估计的比较经典的论文,使用了多帧的图像来估计姿态,直觉上应该比单帧姿态估计要更加准确。两个贡献:

    1. 提出了一种基于2D关节点轨迹的空洞时域卷积方法,简单、有效的预测出视频中的3D人体姿态;
    2. 引入了一种半监督的方法,它利用了未标记的视频,并且在标记数据稀缺的情况下是有效的。

图 temporal convolutional model
图 An instantiation of our fully-convolutional 3D pose estimation architecture.

4.3 最新进展

关于最新进展,大家同样可以在paperswithcode网站去关注数据集Human3.6的榜单。

下面这个榜单是没使用2DGT数据集的:

monocular-3d-human-pose-estimation

https://paperswithcode.com/task/monocular-3d-human-pose-estimation

下面这个榜单是使用2DGT数据集:

Human3.6M Benchmark (3D Human Pose Estimation)

https://paperswithcode.com/sota/3d-human-pose-estimation-on-human36m

5. 3D形态重建(SMPL)

5.0 必读论文总览

3D形态估计是一个更新的任务,旨在恢复人体的三维网格,我的研究课题正好与此相关。研究这个方向的同学应该并不陌生,但是这里我们只介绍有关于SMPL的内容,再次推荐之前提到的综述论文[5] Recovering 3D Human Mesh from Monocular Images: A Survey(2022.03),里面的总结也是非常全的,截止2022年论文如下图所示:

图 Human Mesh

其论文可以归类为两类型:

  • Optimization-based Paradigm 基于优化: Optimization-based approaches attempt to estimate a 3D body mesh that is consistent with 2D image observations.( 2D keypoints, silhouettes, segmentations.)即根据2D检测结果优化生成3Dmseh。代表作:SMPLify(ECCV'2016).
    https://smplify.is.tue.mpg.de/
  • Regression-based Paradigm 基于回归: Regression-based methods take advantage of the thriving deep learning techniques to directly process pixels.即使用深度学习技术直接处理图像像素生成3Dmesh。代表作:HMR(CVPR'2018).
    https://akanazawa.github.io/hmr/
  • 基于优化+回归。代表作: SPIN(ICCV'2019)(相当于HMR+SMPLify)
    https://www.seas.upenn.edu/~nkolot/projects/spin/

5.1 开山之作:《Smpl: A skinned multi-person linear model》

这篇是Michael J. Black实验室的SMPL开山之作,后续的大部分SMPL方法等也是该实验出品,大部分SMPL相关论文均是这个研究所出来的。

图 SMPL流程
  • 核心思想就是将通过网络回归输出的姿态参数θ(_∈24×3_)和形态参数β(_∈10×1_)送入一个基础人体模板(Template mesh)T(_∈6480×3_)然后形成各种姿态和体型的人体姿态。
  • 姿态参数控制(23+1)个关节点。与之前的3D关节点坐标回归不同,每个关节点由3个旋转参数控制,一共有23个,还有一个控制全局旋转,相当于根关节点(root),所以姿态参数θ共有[(23+1)×3]=72个参数;
  • 形态参数控制人的体型,每个参数分别控制包括高矮、胖瘦、身体的局部比例等。1.0版本共有10个参数,后来的1.1版本拓展到300个参数,但是影响明显的仍然是前10个;
  • 基本模板是个固定姿态的人体mesh,也就是[θ=0 和_β=0_ ]的情况,因此这个姿态也被称为“zero pose”[零姿态]。
  • SMPL还训练了一个关节矩阵J ,可以从生成的人体mesh映射得到23个人体关节点坐标(x,y,z),所以基于SMPL的方法通过J 得到关节点坐标和3Dpose的方法对比,例如评价指标MPJPE。
  • 后续论文方法均是致力于恢复更准确的3D Human mesh.
  • 文章总结可参考下面的博文:

SMPL模型学习
https://www.cnblogs.com/sariel-sakura/p/14321818.html

5.2 必看论文

以下必读论文来自商汤OpenMMLAB实验室的mmhuman3d项目,与之前提到的mmpose3d类似:上面有很多总结、经典以及最新方法的实现和讲解,有框架,有代码,有教程,可快速复现,而且维护和更新也很块。

https://github.com/wmj142326/mmhuman3dgithub.com/wmj142326/mmhuman3d

[1] SMPLify(ECCV'2016):《Keep it SMPL: Automatic Estimation of 3D Human Pose and Shape from a Single Image》。 
https://smplify.is.tue.mpg.de/

[2]SMPLify-X (CVPR'2019):《Expressive Body Capture: 3D Hands, Face, and Body from a Single Image》
https://smpl-x.is.tue.mpg.de/

[3]HMR(CVPR'2018) :《End-to-end Recovery of Human Shape and Pose》
https://link.zhihu.com/?target=https%3A//akanazawa.github.io/hmr/

[4] SPIN(ICCV'2019):《 Learning to Reconstruct 3D Human Pose and Shapevia Model-fitting in the Loop 》
https://www.seas.upenn.edu/~nkolot/projects/spin/

[5] VIBE(CVPR'2020):《 Video lnference for Human Body Pose and Shape Estimation》
https://github.com/mkocabas/VIBE

[6] HybrIK (CVPR'2021):《HybrIK: A Hybrid Analytical-Neural Inverse Kinematics Solution for 3D Human Pose and Shape Estimation》  
https://jeffli.site/HybrIK/

[7] PARE (ICCV'2021):《PARE: Part Attention Regressor for 3D Human Body Estimation》  
https://pare.is.tue.mpg.de/

[8] HuMoR (2021) :《3D Human Motion Model for Robust Pose Estimation》

[9] DeciWatch(ECCV'2022):《DeciWatch: A Simple Baseline for 10× Efficient 2D and 3D Pose Estimation》  
https://ailingzeng.site/deciwatch

[10] SmoothNet (ECCV'2022):《SmoothNet:A Plug-and-Play Network for Refining Human Poses in Videos》  
https://ailingzeng.site/smoothnet

[11] ExPose (ECCV'2020):《Monocular Expressive Body Regression through Body-Driven Attention》  
https://expose.is.tue.mpg.de/

[12]BalancedMSE (CVPR'2022):《Balanced MSE for Imbalanced Visual Regression 》
https://sites.google.com/view/balanced-mse/home

对其中的部分论文作简要介绍:

  • SMPLify:基于优化的方法。给定一个图像,使用基于 CNN 的方法来预测 2D 关节位置。然后将 3D 身体模型拟合到此,以估计 3D 身体形状和姿势。
    https://smplify.is.tue.mpg.de/
  • SMPLify奠定了SMPL重建算法的基石,它从单张图像中重建人体的SMPL姿态;
  • 流程分为两步:1)单张图像经过DeepCutc恢复人体的2D关键点,2)然后利用2D关键点恢复SMPL姿态(这有点类似于2D->3D的提升);
  • 提出了SMPL重建的损失函数(objective function),由5部分组成,包括:a joint-based data term and several regularization terms including an interpenetration error term(这个互穿项在SPIN中舍弃了,因为它使得拟合变慢,而且性能并没有提高多少), two pose priors, and a shape prior.后续的方法基本都使用该损失函数或对其进行改进。
图 SMPLify
  • HMR:基于回归的方法。图像 I 通过卷积编码器传递。输入到迭代 3D 回归模块,该模块推断人类的潜在 3D 表示,以最小化联合重投影误差。3D 参数也被发送到鉴别器 D,其目标是判断这些参数是来自真实的人类形状和姿势。这里用到了GAN对抗生成网络。
    https://akanazawa.github.io/hmr/
图 HMR
  • SPIN:基于优化+回归的方法。这篇文章主要是将基于迭代优化的方法(SMPLify)和基于网络回归的方法(HMR)进行结合。网络预测的结果作为优化方法的初始值,加快迭代优化的速度和准确性;迭代优化的结果可以作为网络的一个强先验。两种方法相互辅助,使整个方法有一种自我提升的能力,称之为SPIN(SPML oPtimization IN the loop)。
    https://www.seas.upenn.edu/~nkolot/projects/spin/
  • SPIN算是HMR和SMPLify的结合,分别作为回归网络和优化网络,与SMPLify的区别(改进)如下:
  1. SPIN舍弃了损失函数中的互穿项;
  2. SPIN使用HMR的回归结果作为初始化结果,然后迭代优化一次;SMPLif使用0姿态初始化,迭代优化了4次;
  3. SPIN使用HMR回归的相机参数,SMPLify使用了三角形相似;
  4. SPIN的2D关节点使用了OpenPose, SMPLify使用了DeepCut;
  5. SPIN提供了GPU并行处理图片,SMPLify延时较高不适合处理单张图像。
图 SPIN
  • VIBE:[参考文章:https://zhuanlan.zhihu.com/p/397553879]基于视频帧的方法。提出了一个利用视频进行动作估计的新方法,解决了数据集缺乏预测准确率不佳的问题。本文的主要创新之处在于利用对抗学习框架来区分真实人类动作由回归网络生成的动作。本文提出的基于时间序列的网络结构可以在没有真实3D标签的情况下生成序列级合理的运动序列。这一思想借鉴了2018年提出的HMR模型,这项工作从单张图片重建人体模型,而本文则将这一模型由图片扩展到了视频,在原有模型基础上加入了GRU和motion discriminator。
    https://github.com/mkocabas/VIBE
图 VIBE
  • SmoothNet:解决姿态抖动问题。爱玲姐姐的佳作,解决3Dmesh的视频抖动问题。属于一个后处理操作,去抖动明显,只用了一个简单的全连接层设计,从位置、速度和加速度的三个量进行建模,进行了大量的试验证明其有效性。https://ailingzeng.site/smoothnet
图 SmoothNet的基础模块
图 SmoothNet 流程结构

作者有过一期视频讲解,链接放在这里,大家可以进一步听听,爱玲姐姐还讲了一些姿态的总结知识(人美声甜的大佬~):

【社区开放麦】第 14 期 从时间序列角度破解姿态估计中的两大问题
https://www.zhihu.com/zvideo/1534485957927075840

5.3最新进展:

CLIFF(2022):《CLIFF: Carrying Location Information in Full Frames into Human Pose and Shape Estimation》

[参考链接:https://zhuanlan.zhihu.com/p/556885801]这篇是华为诺亚方舟出品。3D Human mesh中采用Top-Down策略的多人姿态估计。以极其优雅的方式,将原图的信息融合到人体姿态估计的神经网络的输入中,巨大提升了估计的准确度,刷到了3dpw的rank 1,并赢得了ECCV 2022的oral。正如参考的博文所说,他的处理方式极其优雅:

  • 大部分的多人姿态估计都是对图像中的人体目标作裁剪然后运行单人姿态估计方法,这就缺失了每个人体目标在图像中的全局坐标信息;
  • CLIFF在以HMR作为baseline的基础上,仅仅增加了3个输入,,分别为bbox的中心相对于原图中心的距离以及bbox的大小;
  • 即考虑了人体目标在全局图像的信息作为监督,直觉上自然会有更多的监督信息,自然也就会得到更高的精度。最重要的是,这种处理方式就是看起来相当的......优雅!
  • 原论文提供的Github源码貌似只有demo,不过好在mmlab代码仓库已经支持支持了CLIFF,可前往查看Train源码。
图 CLIFF

OSX(CVPR2023-IDEA)《One-Stage 3D Whole-Body Mesh Recovery with Component Aware Transformer》, 2023年CVPR的最新文章,提供了一个Ubody上身数据集。个人感觉,这是个“大团队+工作量+SOTA”的结果。

  • 大团队包括“清华大学和IDEA研究院”,也有港中文大学参与,二作是我前面提到的女神曾爱玲姐姐;
  • 工作量包括全身关节点和mesh网格,而且制作了一个大数据集;
  • SOTA结果,里面用到的算法主要是ViTPose, 基于Transformer的,算是最先进的算法了,当然本论文也取得了SOTA。
模型结构
数据集构建流程

其他的最新进展,大家可以关注3DPW这个数据集的paperswithcode榜单。
https://paperswithcode.com/sota/3d-human-pose-estimation-on-3dpw?metric=MPJPE

6. 应用

那么,问题来了,关于HPE的方法,论文已经这么多了,最终它的应用场景是什么?学习这个领域,最终的目的也是工作,再好的方向跟不上工业界的需要也是瞎扯,闭门造车!这里写一些本人在学习和实习中的一些发现。

前情提要:本人硕士[现在是"菜博"了~:(],没有工作。但是有过相关实习,另外实验室也有相关的师兄弟从事这个方向,简单写一些所见所闻和个人感受,就当交流了,简单滴发表一些个人看法,后期发现说的不对了,再改hhhh~~。

6.1 学术研究

单纯的看姿态估计,它是一个基础任务,目的是从图像中获得信息,更重要的是如何利用这一部分信息,或者说用这一信息可以用在什么地方,所以这一任务在学术界是为其他任务提供数据支撑的,追求的是更高的精度,更快的速度,俗称“打榜”,更注重于方法研究。

现在的方法,层出不穷,但是个人认为,工业界的落地还是不多。学术界与工业界就像是一个狭窄的漏斗的两边,大量的方法研究堵在上头,却因为种种原因难以落地~

6.2 行为识别

自动驾驶的感知领域,行人行为识别、手势识别等是可以看得见的应用。但是,目前的自动驾驶好像并没有做到这一块,因为目前的自动驾驶还在“躲避障碍物”的阶段,检测任务还是应用的主流,行人的行为识别还存在比较远的路,精度、速度都是限制。

6.3 虚拟驱动

数字人、数字驱动、游戏建模,AR,VR,游戏和动画是目前的应用主流,这种限制场景下的姿态有实现的硬件基础;但是,单目的姿态估计感觉还是没有多视角的应用多,因为多一个摄像头不会花很多钱,还能提高精度;但是少一个摄像头的精度下降可能会带来体验感的下降。

6.4 感知皆可,格局打开

其实,人体姿态估计只是深度学习的一个任务罢了,它的基础知识,学习流程和其他的任务没有本质的区别,一通百通,手势的关节点不也是关键点吗?动物的关键点不也是关键点吗?只会一种任务适应不了时代的发展,我们学习的主要是一个领域,不要只把目光限制在“人体”和“姿态”,感知任务,皆可!

7. 总结

这些大概就是关于人体姿态估计入门需要学习的一些知识了,相信看完这些,HPE的体系架构可以建立个七七八八了,其他具体的一些算法层面的知识,大家可以基于这个框架体系流程逐步完善,网上的大佬教程也是相当之多,写此篇的目的:

一算整理,避免资源过多,学习凌乱;
二来帮助后人少走坑,尽量节省时间快速掌握;
三来也算自己的笔记整理,方便日后查询;

来源:新机器视觉



申明:感谢原创作者的辛勤付出。本号转载的文章均会在文中注明,若遇到版权问题请联系我们处理。


 

----与智者为伍 为创新赋能----


【说明】欢迎企业和个人洽谈合作,投稿发文。欢迎联系我们
诚招运营合伙人 ,对新媒体感兴趣,对光电产业和行业感兴趣。非常有意者通过以下方式联我们!条件待遇面谈
投稿丨合作丨咨询

联系邮箱:uestcwxd@126.com

QQ:493826566



评论 (0)
  •   工业自动化领域电磁兼容与接地系统深度剖析   一、电磁兼容(EMC)基础认知   定义及关键意义   电磁兼容性(EMC),指的是设备或者系统在既定的电磁环境里,不但能按预期功能正常运转,而且不会对周边其他设备或系统造成难以承受的电磁干扰。在工业自动化不断发展的当下,大功率电机、变频器等设备被大量应用,现场总线、工业网络等技术也日益普及,致使工业自动化系统所处的电磁环境变得愈发复杂,电磁兼容(EMC)问题也越发严峻。   ​电磁兼容三大核心要素   屏蔽:屏蔽旨在切断电磁波的传播路
    北京华盛恒辉软件开发 2025-04-07 22:55 238浏览
  • HDMI从2.1版本开始采用FRL传输模式,和2.0及之前的版本不同。两者在物理层信号上有所区别,这就需要在一些2.1版本的电路设计上增加匹配电路,使得2.1版本的电路能够向下兼容2.0及之前版本。2.1版本的信号特性下面截取自2.1版本规范定义,可以看到2.1版本支持直流耦合和交流耦合,其共模电压和AVCC相关,信号摆幅在400mV-1200mV2.0及之前版本的信号特性HDMI2.0及之前版本采用TMDS信号物理层,其结构和参数如下:兼容设计根据以上规范定义,可以看出TMDS信号的共模电压范
    durid 2025-04-08 19:01 160浏览
  • 文/Leon编辑/侯煜‍就在小米SU7因高速交通事故、智驾性能受到质疑的时候,另一家中国领先的智驾解决方案供应商华为,低调地进行了一场重大人事变动。(详情见:雷军熬过黑夜,寄望小米SU7成为及时雨)4月4日上午,有网友发现余承东的职务发生了变化,华为官网、其个人微博认证信息为“常务董事,终端BG董事长”,不再包括“智能汽车解决方案BU董事长”。余承东的确不再兼任华为车BU董事长,但并非完全脱离华为的汽车业务,而是聚焦鸿蒙智行。据悉,华为方面寻求将车BU独立出去,但鸿蒙智行仍留在华为终端BG部门。
    华尔街科技眼 2025-04-09 15:28 72浏览
  • 文/Leon编辑/cc孙聪颖‍转手绢、跳舞、骑车、后空翻,就在宇树、智元等独角兽企业率领“机器人大军”入侵短视频时,却有资本和科技大佬向此产业泼了一盆冷水。金沙江创投管理合伙人朱啸虎近日突然对人形机器人发难,他表示“最近几个月正在批量退出人形机器人公司”。“只是买回去做研究的,或者买回去做展示的,这种都不是我们意义上的商业化,谁会花十几万买一个机器人去干这些活?”朱啸虎吐槽。不过,朱啸虎的观点很快就遭到驳斥,众擎机器人的创始人、董事长赵同阳回怼道:“(朱啸虎)甚至问出了人形机器人在这个阶段有什么
    华尔街科技眼 2025-04-07 19:24 150浏览
  • 曾几何时,汽车之家可是汽车资讯平台领域响当当的“扛把子”。2005 年成立之初,它就像一位贴心的汽车小助手,一下子就抓住了大家的心。它不仅吸引了海量用户,更是成为汽车厂商和经销商眼中的“香饽饽”,广告投放、合作推广不断,营收和利润一路高歌猛进,2013年成功在纽交所上市,风光无限。2021年更是在香港二次上市,达到了发展的巅峰,当年3月15日上市首日,港股股价一度高达184.6港元,市值可观。然而,如今的汽车之家却陷入了困境,业务下滑明显。业务增长瓶颈从近年来汽车之家公布的财报数据来看,情况不容
    用户1742991715177 2025-04-07 21:48 113浏览
  • 在人工智能技术飞速发展的今天,语音交互正以颠覆性的方式重塑我们的生活体验。WTK6900系列语音识别芯片凭借其离线高性能、抗噪远场识别、毫秒级响应的核心优势,为智能家居领域注入全新活力。以智能风扇为起点,我们开启一场“解放双手”的科技革命,让每一缕凉风都随“声”而至。一、核心技术:精准识别,无惧环境挑战自适应降噪,听懂你的每一句话WTK6900系列芯片搭载前沿信号处理技术,通过自适应降噪算法,可智能过滤环境噪声干扰。无论是家中电视声、户外虫鸣声,还是厨房烹饪的嘈杂声,芯片均能精准提取有效指令,识
    广州唯创电子 2025-04-08 08:40 185浏览
  •   卫星图像智能测绘系统全面解析   一、系统概述   卫星图像智能测绘系统是基于卫星遥感技术、图像处理算法与人工智能(AI)技术的综合应用平台,旨在实现高精度、高效率的地理空间数据获取、处理与分析。该系统通过融合多源卫星数据(如光学、雷达、高光谱等),结合AI驱动的智能算法,实现自动化、智能化的测绘流程,广泛应用于城市规划、自然资源调查、灾害监测等领域。   应用案例   目前,已有多个卫星图像智能测绘系统在实际应用中取得了显著成效。例如,北京华盛恒辉和北京五木恒润卫星图像智能测绘系统
    华盛恒辉l58ll334744 2025-04-08 15:04 94浏览
  • 文/郭楚妤编辑/cc孙聪颖‍伴随贸易全球化的持续深入,跨境电商迎来蓬勃发展期,物流行业 “出海” 成为不可阻挡的必然趋势。加之国内快递市场渐趋饱和,存量竞争愈发激烈。在此背景下,国内头部快递企业为突破发展瓶颈,寻求新的增长曲线,纷纷将战略目光投向海外市场。2024 年,堪称中国物流企业出海进程中的关键节点,众多企业纷纷扬帆起航,开启海外拓展之旅。然而,在一片向好的行业发展表象下,部分跨境物流企业的经营状况却不容乐观。它们受困于激烈的市场竞争、不断攀升的运营成本,以及复杂的国际物流环境,陷入了微利
    华尔街科技眼 2025-04-09 15:15 77浏览
  •     在研究Corona现象时发现:临界电压与介电材料表面的清洁程度有关。表面越清洁的介电材料,临界电压越高;表面污染物越多的地方,越容易“爬电”。关于Corona现象,另见基础理论第007篇。    这里说的“污染物”,定义为——可能影响介电强度或表面电阻率的固体、液体或气体(电离气体)的任何情况。    IEC 60664-1 (对应GB/T 16935.1-2023) 定义了 Pollution Degree,中文术语是“污染等
    电子知识打边炉 2025-04-07 22:06 103浏览
  •   物质扩散与污染物监测系统软件:多领域环境守护的智能中枢   北京华盛恒辉物质扩散与污染物监测系统软件,作为一款融合了物质扩散模拟、污染物监测、数据分析以及可视化等多元功能的综合性工具,致力于为环境科学、公共安全、工业生产等诸多领域给予强有力的技术支撑。接下来,将从功能特性、应用场景、技术实现途径、未来发展趋势等多个维度对这类软件展开详尽介绍。   应用案例   目前,已有多个物质扩散与污染物监测系统在实际应用中取得了显著成效。例如,北京华盛恒辉和北京五木恒润物质扩散与污染物监测系统。这
    华盛恒辉l58ll334744 2025-04-09 14:54 94浏览
  • ## DL/T645-2007* 帧格式:* 帧起始字符:68H* 地址域:A0 A1 A2 A3 A4 A5* 帧起始字符:68H* 控制码:1字节* 主站:* 13H:请求读电能表通信地址* 11H:请求读电能表数据* 1CH:请求跳闸、合闸* 从站:* 91H:正常应答读电能表* 9CH:正常应答跳闸、合闸* 数据域长度:1字节* 数据域:DI0 DI1 DI2 DI3* 发送方:每字节+33H* 接收方:每字节-33H* 数据标识:* 电能量* 最大需量及发生时间* 变量* 事件记录*
    四毛打印店 2025-04-09 10:53 51浏览
  •     根据 IEC术语,瞬态过电压是指持续时间几个毫秒及以下的过高电压,通常是以高阻尼(快速衰减)形式出现,波形可以是振荡的,也可以是非振荡的。    瞬态过电压的成因和机理,IEC 60664-1给出了以下四种:    1. 自然放电,最典型的例子是雷击,感应到电力线路上,并通过电网配电系统传输,抵达用户端;        2. 电网中非特定感性负载通断。例如热处理工厂、机加工工厂对
    电子知识打边炉 2025-04-07 22:59 142浏览
  •   卫星图像智能测绘系统:地理空间数据处理的创新引擎   卫星图像智能测绘系统作为融合卫星遥感、地理信息系统(GIS)、人工智能(AI)以及大数据分析等前沿技术的综合性平台,致力于达成高精度、高效率的地理空间数据采集、处理与应用目标。借助自动化、智能化的技术路径,该系统为国土资源管理、城市规划、灾害监测、环境保护等诸多领域输送关键数据支撑。   应用案例   目前,已有多个卫星图像智能测绘系统在实际应用中取得了显著成效。例如,北京华盛恒辉北京五木恒润卫星图像智能测绘系统。这些成功案例为卫星
    华盛恒辉l58ll334744 2025-04-08 16:19 77浏览
  •   物质扩散与污染物监测系统:环境守护的关键拼图   一、物质扩散原理剖析   物质扩散,本质上是物质在浓度梯度、温度梯度或者压力梯度等驱动力的作用下,从高浓度区域向低浓度区域迁移的过程。在环境科学范畴,物质扩散作为污染物在大气、水体以及土壤中迁移的关键机制,对污染物的分布态势、浓度动态变化以及环境风险程度有着直接且重大的影响。   应用案例   目前,已有多个物质扩散与污染物监测系统在实际应用中取得了显著成效。例如,北京华盛恒辉和北京五木恒润物质扩散与污染物监测系统。这些成功案例为物质
    华盛恒辉l58ll334744 2025-04-09 11:24 53浏览
  • 在万物互联时代,智能化安防需求持续升级,传统报警系统已难以满足实时性、可靠性与安全性并重的要求。WT2003H-16S低功耗语音芯片方案,以4G实时音频传输、超低功耗设计、端云加密交互为核心,重新定义智能报警设备的性能边界,为家庭、工业、公共安防等领域提供高效、稳定的安全守护。一、技术内核:五大核心突破,构建全场景安防基座1. 双模音频传输,灵活应对复杂场景实时音频流传输:内置高灵敏度MIC,支持环境音实时采集,通过4G模块直接上传至云端服务器,响应速度低至毫秒级,适用于火灾警报、紧急呼救等需即
    广州唯创电子 2025-04-08 08:59 145浏览
我要评论
0
0
点击右上角,分享到朋友圈 我知道啦
请使用浏览器分享功能 我知道啦