趁着寒假有时间,把之前的论文补完,另外做了一点点笔记,也算是对论文的翻译,尝试探索一条适合自己的论文阅读方法。
这篇笔记基本按照原文的格式来,但是有些地方翻译成中文读起来不太顺,因此添加了一些自己的理解。另外,论文中间引用的论文太多了,不太好链接,确实有兴趣的可以直接参考原文。

人体姿态估计综述(Human Pose Estimation)

Monocular Human Pose Estimation: A Survey of Deep Learning-based Methods

arXiv:2006.01423v1 [cs.CV] 2 Jun 2020

Abstract

基于视觉(vision-based)的单目人体姿态估计(HPE),是计算机视觉(CV)中最为基础且最具有挑战性的任务之一,其旨在利用输入图像和视频序列来获取人体姿态。近年来随着深度学习的不断发展,基于深度学习技术的HPE也取得了显著的进展。这篇调研报告总结回顾了2014年至2020年发表的DL-based 2D 和 3D HPE方法. 也总结了目前遇到的挑战,主流的框架,基准数据集,评价指标,各种方法的性能对比,最后讨论了该领域的研究趋势。

1、介绍

HPE是利用传感器(一般是摄像头)捕获到的数据进行分析人体姿态的一种技术,近年来随着DL在CV领域,如图像分类,目标检测,语义分割等领域的突破性进展,HPE也同样取得了较好的发展,主要体现在数据集,网络结构等方面。这篇文章主要介绍单目DL-based 2D/3D HPE方法,输入数据一般以包含人体的图片,视频片段等。而基于RGB-D和多目等的HPE则未纳入其中。

作为CV最基础的任务之一,HPE有着广泛的用途,例如HPE可以作为动作识别( Action Recognition)检测( Action Detection),行人跟踪(Human Tracking),电影和动画制作(Movie/animation),虚拟现实(VR Virtual Reality),医疗辅助(Medical assistance),自动驾驶(AutoDriving),运动分析(Sports motion analysis)等等广泛的领域。

图1

1.1 电影和动画制作

电影和动画中栩栩如生的虚拟角色的诞生离不开HPE,廉价且稳定准确的HPE可以辅助设计师快速设计并实现虚拟角色。

1.2 虚拟现实

虚拟现实可以被广泛的应用于教育和娱乐行业,非常有发展前景。成熟的HPE技术可以帮助更好地提供虚拟世界与现实世界的交互。

1.3 人机交互

HPE对于人类和机器人的识别、定位和运动等有着非常大的辅助作用,利用HPE提取姿态信息后,计算机可以控制机器人更加智能且高效的完成人类下达的指令。

1.4 视频监控和安防

HPE的早期应用之一就包含监控和安防,利用HPE可以追踪和分析人体动作以及对行人重识别。

1.5 医疗辅助

HPE可以辅助医生定量分析患者的动作数据,在康复训练和身体恢复等医学领域有着极高的应用价值。

1.6 自动驾驶

自动驾驶近年来也取得了不错的进展,利用HPE,自动驾驶汽车可以对行人做出更智能的反应并与交警等协调人员进行更全面的交互。

1.7 体育运动分析

准确地分析运动员的姿态可以较为精确地获取其身体指标,如跑步距离,跳跃次数和高度等等信息。而在运动员训练过程中,HPE也可提供定量的运动统计数据。在体育教学过程中,HPE也同样可以用于定量分析学生身体素质。

相较于多目和基于景深相机(RGB-D)的HPE,单目HPE有着更大的挑战。主要是以下三方面:

  • 人类灵活的身体意味着关键点之间有着更复杂的内在关联和更高自由度的肢体动作,这对模型训练提出了更高的挑战

  • 人体的着装意味着各式各样的的身体外形

  • 复杂的环境可能会导致前景信息难以提取(隐藏在背景中的人),或者是进行多人检测时,不同个体间的相互遮挡会导致检测难度激增;同样地,相机的拍摄位置和角度,都会增加单目估计的难度

近年来关于HPE的研究,利用分类方法的不同可分为:

1)根据是否利用预先设计的身体模型,则可分为generative(model-based) methods, 和 discriminative(model-free) methods 。2)根据模型检测人体关键点的层次( high-level abstraction or low-level pixel evidence ) ,可被分为自顶向下和自底向上两种。

这篇论文与现存其他的论文有所不同的是,其重点总结了近年来HPE领域的里程碑式技术,下面是各章节的分类总结。

2、介绍现存的HPE综述,主要包含HPE实现人体运动分析、利用不同的分类方法对HPE进行归类总结,并介绍了在HPE中人体模型(Human body models)的广泛应用;3、2D HPE,进一步介绍2D单人HPE和2D多人HPE;4、3D HPE,,进一步介绍3D单人HPE和3D多人HPE;5、介绍HPE常用的数据集和评价指标;6、总结近年来的论文并探讨HPE领域具有前景的方向。

2、HPE方法分类以及人体模型(Human Body Models)

2.1 HPE方法分类

根据不同的分类方法,HPE可被分为:

1)Generative VS Discriminative ,即是否利用了human body model,利用预制的模型,对检测出的关键点分类放
2)自顶(top-down)还是自底(bottom-up),先检测出人再检测出关键点还是先将关键点检测出来再拼装成人体(openpose用的就是bottom-up)
3)热力图(heatmap)表示还是坐标(coordinate)表示人体关键点位置,关键点可能的位置表示成概率密度图或直接输出基于图像的关键点坐标
4)one-stage还是multi-stage,检测关键点是单平台一条龙检测还是分工合作

表1

2.1.1 Generative VS Discriminative

Generative和Discriminative的主要区别在于是否利用了人体模型(human body models)。基于对人体模型的表示形式,Generative方法可以通过多种方法实现,其包含预定义信息的身体模型,如根据2D或3D的几何投影或者更高维度的参数空间回归方法。Discriminative则直接利用神经网络来学习一个从输入信息直接到人体姿态空间的映射,或者在现存的样例(example-based)中寻找映射。通常来说,Discriminative方法比Generative方法快一些,但对于没有训练过的身体姿态,其处理效果逊色于Generative。

2.1.2 Top-down VS Bottom-up

对于多人姿态估计,HPE可分为自顶向下和自底向上,即高层次的语义抽象和底层的像素信息。自顶向下的方法从高层次的语义信息,如先检测不同人的位置并对每一个人生成BoundingBox,然后将BBox的图像裁剪出来并分别进行单人姿态估计。自底向上的方法恰恰相反,其先预测每一个输入图像中存在的每个身体小块,就好像做一次目标检测,然后利用human model或者其他的算法将它们分别组装起来,形成完整的姿态估计数据。根据采用的方法,身体小块可以是骨骼关键点,肢体或者其他形式划分的像素块。

随着一张图片中包含的人数增加,top-down方法的计算量快速上涨,而bottom-up的运算量增加很少。然而,当图像中出现较多人重叠时,bottom-up也面临着对不同身体区块(关键点)分类的挑战。

2.1.3 Regression-based VS Detection-based

基于对问题的不同表现形式,HPE可分为基于回归和基于检测两种。基于回归的方法直接将输入信息如图片等映射到一组关键点坐标信息;而基于检测的方法则将身体不同部位看作是检测目标,其将身体部位表示为图像块或者关键点的热力图(即不同位置出现身体的概率密度)。由于HPE问题的高度非线性,使得直接将图像映射到关键点非常困难;而小范围表示(small-region representation)则提供了更多的密集像素(dense pixel information)信息,使基于检测的方法稳定性更强。然而,相较于原始的图像尺寸,小范围表示限制了最终关键点坐标的准确性。

2.1.4 One-Stage VS Multi-Stage

One-Stage通过一个端到端的网络直接将输入图像映射到人体姿态,而Multi-Stage则是利用多阶段的方法来预测人体姿态,其中可能包含有分段监督来提升模型性能。例如,一些多人HPE方法首先检测图像中每个人的位置,然后对个体分别做单人HPE;又例如某些3D HPE首先预测2D的坐标信息,然后再利用算法将2D信息转换到3D空间。One-Stage的训练要比Multi-Stage的训练简单,但是缺乏中间层的监督,模型较难收敛。

表2

2.2 Human Body models

人体模型是HPE非常关键的一个组成之一,人类的身体是非常灵活且复杂的,拥有很多特性,例如运动学结构,身体外形,表面纹理,身体各部分的位置等等。优秀的人体模型无需包含所有的身体结构属性,而只需包含能够完成需求的身体信息。基于对预测结果不同维度的表示,主流的有三种形式:

  1. 基于骨骼关键点
  2. 基于外形轮廓
  3. 基于体积(体形)

图2

2.2.1 Skeleton-based Model (点棍人,火柴人)

基于骨骼关键点模型通常是一组10-30个骨骼关键点的集合,关键点之间由肢体相互连接,表示的是人体骨架模型。基于骨架的模型,也可被看作是由关键点和肢体相互连接的图(Graph)。基于骨架的模型非常简单易懂且灵活度高,被广泛应用于2D HPE 和 3D HPE。同样,因为其过于简洁而难以描述人体轮廓信息。

2.2.2 Contour-based Model (平面人,纸片人)

基于轮廓的人体模型被广泛运用于早期的HPE技术中,其包含了人体的肢体和躯干信息。人体的身体部分被大致地表述为矩形框或者粗略的人体轮廓。

2.2.3 Volume-based Model (立体人,米其林)

3D人体模型被广泛地运用于描述基于体积的几何外形或者网格图。早期的人体肢干模型包括圆柱体和圆锥等,现代的基于体积的模型多利用网状图来更精细化地描述人体轮廓。

3 2D Human Pose Estimation (2D人体姿态估计)

2D HPE利用单目图像或者视频来计算人体关键点地位置,在深度学习被广泛应用前,传统的2D HPE利用人工设计的特征提取器和设计精妙的人体模型来提取局部和全局的人体姿态。下面主要根据2D单人HPE和2D多人HPE来介绍。

3.1 2D single person pose estimation

2D single HPE通常将输入图像映射为一组2D关键点坐标(coordinate),如果图像中包含多人,则需要利用预处理将原始图像分割为多张只包含单人的图像。基于对HPE任务的不同表现形式,基于CNN的方法还可以被分为基于回归和基于检测的方法。基于回归的方法尝试利用一个端到端的CNN直接将输入图像映射为人体姿态坐标;基于检测的方法则输出关键点的大致位置如heatmap(热力图)或者利用多个BBox把身体部位框出来。heatmap通常表示的是2D关键点在某一区域的正态分布。由于HPE问题的高度非线性,直接训练一个输出关键点信息的网络非常困难,而heatmap则充分利用了人体姿态的密集像素信息,故而比坐标的方法更稳定。然而,heatmap由于原始图像大小的限制以及CNN中的池化操作,准确率受到限制。利用heatmap获取关键点坐标是一个不可微的过程,这也使得heatmap转coordinate的神经网络难以训练。

3.1.1 Regression-based methods

由于AlexNet的简单结构和令人印象深刻的表现,早期有一些HPE方法就基于AlexNet实现。2014年Toshev和Szegedy首次尝试利用类似于AlexNet来直接提取关键点信息。随后,级联的多端回归提取结构被运用于精炼和提取人体姿态信息并取得了不俗的成果。而在2014年Pfister还尝试利用类AlexNet来将序列信息作为网络输入来提取视频中的人体姿态信息。

图3

只是用关键点而未充分利用环境信息会使得网络的稳定性较差,将heatmap的监督学习转换为数字化关键点位置监督可以保持两种方法的有点。

  • Luvizon et al. 在2017年提出了一种Soft-argmax函数将heatmap转为coordinate,这使得基于检测的网络转换为基于回归的网络这一问题变得可微。
  • Nibali et al. 在2018年提出了DSNT层(Differentiable spatial to numerical transform layer),将heatmap转为coordinate,这一方法在低分辨率的heatmp中有很好的表现。

由于缺乏中间的约束和监督,直接利用输入图像中预测关键点坐标非常困难,因此当前表现良好的网络一般包含精炼(refinement)图像中身体结构信息这一过程。

  • Carreira et al. 在2016年提出了一种基于GoogleNet的迭代误差反馈网络,该网络递归处理输入图像和输出结果的组合,迭代后的最终姿态由初始平均姿态改进而来。
  • Sun et al. 在2017年提出了一个基于Resnet-50的structure-aware回归方法,这种基于骨骼的表示方法(bone-based representation)不使用关节来表示姿势,而是通过包含身体结构信息来实现比仅使用关节位置更稳定的结果。Bone-based representation也同样适用于3D HPE。处理与多人重叠任务的网络可以学习不同的特征,提高骨骼关键点坐标的预测能力。
  • Li et al. 在2014年运用了一个基于回归的、类AlexNet的多人物框架来处理关键点坐标预测任务,而其基于图像块的身体部分的检测则利用滑动窗口检测。
  • Gkioxari et al. 在2014年利用了R-CNN结构来同步地检测人体、估计姿态并分类动作。
  • Fan et al. (2015)提出了一种双源深度CNNs,它以图像块和完整图像为输入,输出热图表示滑动窗口的关键点检测结果,坐标表示关键点定位结果,而最终的姿态由这两种结果结合地表示。
  • Luvizon et al. 在2018年设计了一个网络,可以同时处理视频输入地2D和3D姿态估计,该网络中间层的输出还可用于动作识别。

表3

3.1.2 Detection-based methods

基于检测的方法是在人体部位检测方法的基础上发展起来的。在传统的part-based的HPE方法中,首先从候选图像块中检测出部分人体,然后进行装配以构建人体模型。早期工作中检测到的人体部位比较大,一般用矩形滑动窗口或patch来表示。一些早期方法使用神经网络作为身体部位检测器来区分候选块是否是特定的身体部位(Jain et al. ,2013),在预定义模板中对候选patch进行分类(Chen和Yuille,2014),或预测属于多个类别的置信度图(Ramakrishna et al. ,2014)。人体部位检测方法通常对复杂背景和人体遮挡比较敏感。因此,仅具有局部外观的独立图像块对于身体部位检测可能效果不佳。

为了提供更多的监督信息而不仅仅是关键点坐标,并促进CNN的训练,最近的工作采用了热图来指示关键点位置的Groundtruth(Tompson et al. 2014;Jain et al. 2014)。每个关键点占据以目标关节位置为中心的具有2D高斯分布的热图通道。此外,Papandreou et al. 在2017年提出了一种改进的关键点位置表示法,即二值激活heatmap和相应偏移量的组合。由于基于heatmap的表示方法比基于坐标的表示方法更加稳定,因此当前大多数研究都基于heatmap方法。

神经网络的架构对于提取输入信息很关键,一些方法主要基于经典的网络结构并做了适当的调整。

  • Rafi et al. 在2016年提出的GoogLeNet-based Network采用多尺寸图像作为输入。
  • Xiao et al. 在2018年提出了ResNet-based Network,并利用了反卷积(deconvolutional)层。

为了得到迭代性的精炼信息,一些研究人员(Tompson et al. 2015, Bulat和Tzimiropoulos et al. 2016, Newell et al. 2016 …)设计了multi-stage的精炼网络(refine network),并利用其将端到端网络粗略的提取结果继续细化。此类网络通常使用中间层的监督来避免梯度消失问题(vanishing gradients)。

图4

  • Newell et al. 在2016年利用残差模块作为基础单元(residual module as the component unit),提出了一种全新的堆叠沙漏结构(stacked hourglass)。
  • Wei et al. 在2016年将图像输入到每一个stage,并提出了一种multi-stage的预测网络。
  • Yang et al. (2017)设计了一个金字塔残差模块(PRMs)来代替沙漏网络的残差模块,通过学习不同尺度上的特征来增强DCNNs的跨尺度不变性。
  • Belagiannis和Zisserman(2017)将一个7层的前馈模块与一个递归模块相结合,以迭代地精炼输出结果。该模型尝试预测关键点和肢体所在位置的heatmap。此外,他们还利用不平衡的ground truth分布进行了HPE。
  • 为了在整个网络中都能保持较高分辨率的特征,Sun et al. (2019)利用多尺度特征融合(Multi-scale feature fusion)提出了一种全新的High-Resolution Net (HRNet)。

与早期的将检测到的人体部位与人体模型相匹配的工作不同,最近的一些工作尝试将人体结构信息编码到Network中。

  • Tompson et al. (2014)训练了一个类似于MRF的空间模型,尝试学习关键点之间典型的空间关系。
  • Lifshitz et al.(2016)将图像离散为以每个关节为中心的对数极坐标,并采用基于VGG的网络预测每个成对关节的类别(二值项)。利用所有相对置信度得分,反卷积网络可以生成每个关节的最终heatmap。
  • Yang et al. (2016)设计了Multi-stage网络。第一阶段是一个卷积神经网络来预测heatmap表示的关键点位置。第二阶段是根据人体结构手动连接的消息传递模型,用max-sum算法寻找最优关节位置。
  • Gkioxari et al.(2016)提出了一种卷积递归神经网络,按照链模型逐个输出关节位置。每一步的输出取决于输入图像和先前预测的输出。该网络可以通过不同的连接策略处理图像和视频。
  • Chu et al.(2016)提出通过二叉树来转换内核,以便在树体模型中的相应关节之间传递信息。
  • Chu et al. (2017)将沙漏网络的残差模块替换为更复杂的模块。条件随机场(CRF)被用于注意图作为学习身体结构信息的中间监督。
  • Ning et al.(2018)设计了一个分形网络,以利用人体结构的先验知识来训练网络。通过学习投影矩阵,将外部知识视觉特征编码到基本网络中。
  • Ke et al.(2018)提出了一种基于沙漏网络的多尺度结构感知网络,该网络具有多尺度监督、多尺度特征组合、结构感知loss和关节掩蔽数据增强等特点。
  • Tang et al. (2018a)在沙漏网络的基本框架上设计了一个用于中间监督的身体部位的层次表示,以替换每个关节的热图。因此,网络学习的是自底向上/自顶向下的身体结构,而不仅仅是分散的关节。
  • Tang and Wu(2019)提出了一种基于零件的分支网络(PBN),用于学习每个零件组的具体表示,而不是预测来自一个分支的所有关节热图。然后,通过计算关节间的信息来拆分数据驱动的零件组。

生成对抗网络(GANs)也被用来为学习身体结构或网络训练提供对抗性监督训练。

  • Chou et al.(2017)引入了对抗性学习,两个沙漏网络分别作为生成器和鉴别器。生成器预测每个关节的热图位置,而鉴别器将Ground Truth heatmap与Generative heatmap区分开来。
  • Chen et al.(2017)提出了一种结构感知卷积网络,其中包含一个生成器和两个鉴别器,以整合人体结构的先验信息。该发生器由沙漏网络设计,用于预测关节热图和遮挡heatmap。姿态鉴别器可以区分合理的身体形态和不合理的身体形态。置信度鉴别器显示预测的置信度得分。
  • Peng et al.(2018)研究了如何有限数据的情况下优化数据扩充和网络训练。他们没有使用随机数据增强,而是应用增强来增加网络损失,同时pose网络从生成的增强中学习。

利用时间信息对单目视频序列中的二维人体姿态估计也非常重要。

  • Jain et al. (2014)设计了一个包含两个分支cnn的框架,以多尺度RGB帧和光流图作为输入。提取的特征在最后一个卷积层之前连接起来。
  • Pfister et al.(2015)使用光流图作为监督信息,根据视频的时间上下文,对齐相邻帧的预测热heatmap。
  • Luo et al.(2018)通过改变LSTM结构的多级结构,利用从CPM重新设计的RNN(Recurrent Neural Network)来利用时间信息。

为了在内存有限的设备上实现HPE,在保持较好性能的同时降低网络参数,

  • Tang et al. (2018b)尝试改进网络结构,提出了密集连接的U-Net和高效使用内存的网络。该网络类似于沙漏网络,同时利用UNet作为每个组件,在每个satge具有更高效的全局连接,从而产生更少的参数和较小的模型尺寸。
  • Debnath et al.(2018)通过在MobileNet的最后两层设计分裂流结构,将MobileNet(Howard et al.2017)用于姿势估计。
  • Feng et al. (2019)设计了沙漏网络的轻量级变体,并通过快速姿势提取(FPD)训练策略使用完整的Hourglass作为教师网络对其进行训练。

总而言之,在基于深度学习的二维单人姿态估计中,heatmap表示比基于检测的coordinate表示更适合于网络训练。

3.2 2D multi-person pose estimation

与单人姿态估计不同,多人姿态估计需要同时处理检测和定位任务,因为输入图像中没有提示有多少人。根据从哪个层次(高层语义抽象或低层像素)开始计算,人体姿态估计方法可以分为自顶向下方法和自底向上方法。自顶向下的方法通常对输入图像中的人做目标检测,然后直接利用现有的单人姿势估计器来预测人体姿势。预测的姿态在很大程度上取决于人体检测的精度。整个系统的运行时间是按人数成比例的。而自底向上的方法直接预测图像中所有人的所有2D关节位置,然后将其组装成独立的骨架。在复杂环境中,关节点的正确分组是一项具有挑战性的研究任务。表4总结了最近在自顶向下和自底向上两个类别中基于深度学习的2D多人姿势估计方法的工作。表4的最后一列是COCO test dev数据集的平均精度(AP)得分。有关数据集和评估指标的更多详细信息,请参见第5节。

3.2.1 Top-down 自顶向下

自顶向下的HPE方法的两个最重要的组成部分是人体区域候选检测器和单人HPE。大部分研究集中在基于现有人体探测器的人体部位估计,例如更快的R-CNN(Ren et al.2015)、Mask R-CNN(He et al.2017)、FPN(Lin et al.2017)。

  • Iqbal和Gall(2016)利用基于Convolutional Pose Machine的姿态估计器生成初始姿态,然后采用整数线性规划(ILP)方法得到最终的输出。
  • Fang et al.(2017)采用了spatial transformer network(STN)、非极大值抑制(NMS Non-Maximum-Suppression)和沙漏网络,以便于利用不准确的人体BBox进行HPE。
  • Huang et al.(2017)开发了以Inception-v2网络(Szegedy et al.2016)为主干的粗-细网络(coarse-fine network CFN)。在多个层次上对网络进行监督,实现粗预测到细预测的训练。
  • Xiao et al.(2018)在ResNet的最后一个卷积层上添加了几个反卷积层,从深度和低分辨率特征生成heatmap。
  • Chen et al.(2018)提出了一种级联金字塔网络(cascade pyramid network CPN),该网络利用不同层次的多尺度特征映射,从局部和全局特征中获得更多推断,并提出了online hard keypoint mining loss来针对较难预测的关键点。
  • 基于不同HPE方法的相似姿态误差分布,Moon et al. (2019)设计了PoseFix网络,以优化各种算法的估计姿态。

自顶向下的HPE方法可以很容易地通过结合现有的检测网络和single HPE网络来实现。同时,这类方法的性能受人体检测结果的影响,运算速度往往不能达到real-time。

表4

3.2.2 Bottom-up 自底向上

自底向上HPE方法的主要组成部分包括人体关键点检测和候选关节分组,大多数算法分别处理这两个过程。

  • Deep Cut(Pishchulin et al.2016)采用基于R-CNN的身体部位快速检测器,首先检测所有身体部位候选,然后将每个部位标记为相应的部位类别,并用整数线性规划将这些部位组装成完整的骨架。
  • DeeperCut(Insafutdinov et al.2016)通过使用基于ResNet的人体部位检测器和更好的增量优化策略来学习候选关节之间的几何和外观约束,从而改进了DeepCut。
  • OpenPose(Cao et al.2016)使用CPM预测具有部分Affnity场(PAFs)的全身关节候选。提出的PAFs可以对肢体的位置和方向进行编码,从而将估计出的关节组合成不同的姿势。
  • Nie et al.(2018)提出了一种姿势划分网络(PPN),用于对关节划分,并进行关键点检测和密集回归。然后PPN对具有关节划分的关节构形进行局部推理。
  • Kreiss et al. (2019)设计了一个与OpenPose类似的PifPaf网络来预测一个部位强度场(PIF)和一个部位关联场(PAF),以表示身体关节位置和身体关节关联。由于PAF的细粒度和Laplace loss的利用,该算法在低分辨率图像上效果良好。

上述方法均遵循联合检测和联合分组相分离的原则。目前,一些方法可以在single stage进行预测。

  • Newell et al. (2017)引入了一种单级深度网络架构,以同时执行检测和分组。该网络可以生成检测每个关键点的heatmap,以及包含每个关键点分组标记的关联嵌入图。

还有些方法采用多任务架构。

  • Papandreou et al. (2018)提出了一种用于姿态估计和实例分割的无框多任务网络。基于ResNet的网络可以同步预测个体各关键点的heatmap及其相对位移。然后分组从置信度最高的检测开始,采用基于树结构运动图的贪心解码过程。
  • Kocabas et al. (2018)提出的网络将多任务模型与一种新的分配方法相结合,以处理HPE、检测和语义分割任务。它的主干网由ResNet和FPN结合而来,具有关键点和人员检测子网的共享特性,将人体检测结果作为人体空间位置的约束条件。
  • 表5

    续表5

目前,自底向上方法的处理速度非常快,有些方法(Cao et al.2016;Nie et al.2018)可以实时运行。然而,复杂的背景和人为遮挡会对图像的表现产生很大的影响。自顶向下的方法在几乎所有的基准数据集中都取得了最先进的性能,而处理速度受到检测到的人数的限制。

4. 3D Human Pose Estimation (3D人体姿态估计)

与2D HPE相比,3D HPE更具挑战性,因为它需要预测人体关节的深度信息。另外,3D HPE的训练数据也不像2D HPE那样容易获得。现有的数据集大多是在受限环境下(实验室等)获得的。对于single HPE,通常提供图像中的人的BBox,因此不需要结合人检测过程。在本节中,我们将single 3D HPE方法分为无模型和基于模型两类,并在表5中总结了近期的研究进展。表5的最后一列是策略1下Human3.6M数据集上,以毫米为单位的每关节位置平均误差(MPJPE)比较。有关数据集和评估指标的更多详细信息,请参见第5节。

4.1.1. Model-free methods

无模型方法不使用人体模型作为预测目标或中间线索。它们大致可分为两类:

  1. 直接将图像映射到3D Pose;
  2. 根据二维姿态估计方法得到的中间预测的2D HPE的深度信息。

直接从图像特征估计3D Pose的方法通常缺少监督条件。

  • Li和Chan(2014)采用浅层网络直接回归三维关节坐标,并使用滑动窗口进行身体部位检测的同步任务。
  • Pavlakos et al. (2017年)提出了一种3D Pose的体积表示法,并采用了从coarse-fine预测方案来细化具有多阶段结构的预测。一些研究人员试图将身体结构信息或人体关节之间的依赖关系融合到网络中。
  • Li et al. (2015b)设计了一种嵌入子网络学习潜在姿势结构信息来指导3D关节坐标映射。该子网络可以为输入图像姿势对分配匹配分数,并具有最大的边际代价函数。
  • Tekin et al. (2016)预先训练了一个无监督的自编码器来学习3D姿势的高维潜在姿势表示,以添加关于人体的隐式约束,然后使用浅层网络来学习高维姿势表示。
  • Sun et al. (2017)提出了一种结构感知回归方法。他们设计了一种基于骨骼的表示方法,它包含了身体结构信息,比仅仅使用关节位置更稳定。
  • Pavlakos et al. (2018a)用人体关节的额外顺序深度作为约束来训练网络,通过这些约束,2D人体数据集也可以输入顺序深度注释。
  • Qammaz和Argyros(2019)提出的MocapNET将2D姿势直接编码为3D BVH(Meredith et al. ,2001)格式,用于后续渲染。通过整合OpenPose(Cao et al.2016),该架构仅使用CPU即可处理实时估计和渲染3D人体姿态。

将2D姿势映射到3D姿势时,可能会应用不同的方法。

  • Chen和Ramanan(2017)使用匹配策略从库中估计2D姿势和3D姿势。
  • Moreno Noguer(2017)将2D和3D 人体关键点的成对距离编码为两个欧氏距离矩阵(EDM),并训练回归网络来学习这两个矩阵间的映射。
  • Wang et al(2018a)预测人类关节的深度排名,作为从2D姿势推断3D关节位置的线索。
  • Yang et al.(2018)采用了(Zhou et al.2017)的生成器,设计了一个具有图像、成对几何结构和联合位置信息的多源鉴别器。

4.1.2. Model-based methods

基于模型的方法通常采用参数化的人体模型或模板来估计图像中的人体姿态和形状。本文不包括早期的几何模型。最近的模型是通过对不同人群的多次扫描(Hasler et al. 2009;Loper et al. 2015;PonsMoll et al. 2015;Zuffi和Black et al. 2015)或不同身体模型的组合(Joo et al. 2018)来估计的。这些模型通常由单独的身体姿势和形状组件参数化而来。一些工作采用了SMPL的身体模型(Loper et al. 2015年),并试图从图像中估计3D参数。

  • Bogo et al.(2016)将SMPL模型拟合到估计的2D关节,并提出了一种基于优化的方法从2D关节恢复SMPL参数。
  • Tan et al.(2017)通过首先训练解码器以使用合成数据从SMPL参数预测轮廓,然后使用训练的解码器学习图像编码器来推断SMPL参数。训练后的编码器可以根据输入图像预测SMPL参数。

直接学习SMPL的参数比较困难,有些研究工作着眼于预测中间线索作为约束条件。

  • 中间层的2D姿势和人体分割(Pavlakos et al. 2018b),身体部位分割(Omran et al. 2018),2D姿势和身体部位分割(Varol et al. 2018)

为了克服人体模型缺乏训练数据的问题

  • Kanazawa et al. 2018采用GAN,使用生成器预测SMPL参数,使用鉴别器区分实际SMPL模型和预测模型。
  • Arnab et al. 2019从视频序列中重建人体模型,探索多视角信息。

运动学模型广泛用于三维HPE。

  • Mehta et al. (2017a)根据运动学树体模型从2D heatmap预测相对关节位置。
  • Nie et al. (2017)利用LSTM,根据运动学树体模型,利用全局2D关节位置和局部身体部位图像,这是关节深度估计的两个线索。
  • Zhou et al. (2016) 将运动学对象模型嵌入到网络中,用于提供方向和旋转约束的一般铰接对象姿势估计。
  • Mehta et al. (2017c) 提出了一种用于实时运行的3D单HPE管道。利用时间信息和人体运动模型分别进行平滑滤波和骨架拟合。
  • Rhodin et al. (2018a) 使用编码器-解码器网络在自我监督下学习没有2D或3D注释的潜在可变身体模型,然后使用预先训练的编码器预测3D姿势。

除了这些经典的人体模型外,从数据中学习的潜在3D姿态模型也被用于3D HPE:

  • Tome et al.(2017) 提出了一种多级类CPM网络,包括一个预先训练的概率3D姿势模型层,该层可以从2D heatmap生成3D pose。

4.2 3D multi-person pose estimation

单目3D multi HPE是在3D single HPE和其他深度学习方法的基础上发展起来的。这是一个较新的研究领域,目前提出的方法不多。表6总结了这些方法。

  • Mehta et al. (2017b)提出了一种自下而上的方法,通过使用2D姿势和部分相似性字段来推断人物实例。提出了一种遮挡鲁棒姿态映射(ORPM)算法,该算法可以在不受人数影响的情况下提供多种类型的遮挡信息。
  • Rogez et al. (2017)提出了一个局部分类回归网络(LCR-Net),经过三个阶段的处理。首先,采用更快的R-CNN来检测人的位置。第二,每个姿势候选被分配一个分类器评分的最近锚姿势。最后的姿态分别用一个回归器进行细化。
  • Zanfir et al. (2018)提出了一个具有前馈和反馈阶段的框架,用于3D multi HPE和形状估计。前馈过程包括身体部位的语义分割和基于DMHS的3D姿势估计(Popa et al. 2017)。然后,反馈过程细化SMPL的姿势和形状参数(Loper et al. 2015)。
  • Mehta et al. (2019)通过三个阶段实时估计多个姿势。首先,SelecSLS网络为可见的身体关节推断2D姿势和中间3D姿势编码。然后基于每个检测到的人,重建完整的三维姿态,包括遮挡的关节。最后,对时间稳定性和运动骨架拟合作出了改进。

5 Datasets and evaluation protocols

数据集在基于深度学习的HPE中起着重要的作用。数据集不仅是公平比较不同算法的必要条件,而且扩展和改进数据集也给HPE带来了更多的挑战。随着商业运动捕捉系统和众包服务的成熟,最近的数据集不再受数据量和实验室环境的限制。本节讨论了目前流行的用于评价2D和3D HPE算法的公开人体姿态数据集,并介绍了这些数据集的特点和评估方法,以及在几种流行数据集上的最新研究成果。除了这些基本数据集,一些研究人员还以自己的方式扩展了现有数据集(Pavlakos et al. 2018a;Lassner et al. 2017)。此外,一些相关的人体数据集也在本节的范围内(G¨uler et al. 2018)。还简要介绍了研究人员如何收集每个数据集的所有带标注的图像,以给希望制作自己的数据集的读者带来启发。

5.1 Datasets for 2D human pose estimation

在深度学习为2D-HPE带来重大进展之前,已有许多针对特定场景和任务的2D人体姿势数据集。上身姿势数据集包括Buffiy Stickmen(Ferrari et al.2008)(正面视图,来自室内电视节目)、ETHZ PASCAL Stickmen(Eichner et al.2009)(正面视图,来自PASCAL VOC(Everingham et al. 2010))、We Are Family(Eichner and Ferrari,2010)(合影场景)、视频姿势2(Sapp et al.2011)(来自室内电视节目),同步。活动(Eichner and Ferrari. 2012b)(运动、全身图像、上半身注释)。全身姿势数据集包括PASCAL Person Layout(Everingham et al.2010)(daily scene,来自PASCAL VOC(Everingham et al. 2010))、Sport(Wang et al. 2011)(Sport scenes)和UIUC people(Li和Fei Fei et al. 2007)(Sport scenes)。有关这些数据集的详细说明,感兴趣的读者可以参阅几篇总结良好的论文(Andriuka et al.2014)和(Gong et al. 2016)。

早期的二维人体姿态估计数据集存在场景少、视角单调、缺乏多样性、图像数量有限等缺点。数据集的规模是评价深度学习方法数据集的最重要指标, 小的训练集不足以学习具有健壮性的特征,不适合具有深层次和复杂设计的网络,且容易导致过拟合。因此,在本节中,我们只介绍训练图像数超过1000的2D人体姿势数据集。表7总结了这些选定的2D HPE数据集的特征,图5显示了一些带有注释的示例图像。

  • Frames Labeled In Cinema Dataset (FLIC) 中标记的帧包含从popularHollywood电影中收集的5003张图像。在30部电影的每10帧中,就有一个人体检测器被用来获得大约20万张的候选。然后所有的候选都被送到Amazon Mechanical Turk获得10个上身关节的Ground Truth标记。最后,手动删除有人遮挡或严重非正面视图的图像。未删除的原始集合称为FLIC-full,由闭塞的、非正面的或仅仅是简单的错误标记的例子(20928个例子)组成。此外,FLIC full数据集被进一步清理为FLIC plus,以确保训练子集不包括来自与测试子集相同场景的任何图像。

  • Leeds Sports Pose Dataset(LSP)(Johnson和Everingham,2010)包含2000张通过下载8个运动标签(田径、羽毛球、棒球、体操、跑酷、足球、网球和排球)从Flickr收集的全身姿势图像。每个图像都带有多达14个可见关节位置的注释。此外,LSP-extended 训练数据集(Johnson和Everingham,2011),以扩展LSP数据集,仅用于训练。它包含从Flickr搜索中收集的10000张图片,其中有3个最具挑战性的标签(跑酷、体操和田径)。注释是通过Amazon Mechanical Turk进行的,其精度无法保证。

表6

  • Max Planck Institute for Informations Human Pose Dateset(MPII)(Andriluka et al. 2014)是目前最先进的评估关节式人体姿势估计的基准之一,具有丰富的标签。首先,在two-level 人类活动层次结构的筛选下,从YouTube下载了3913个视频,涵盖491个不同的活动。然后,手动选择包含视频中不同人物或同一人姿势非常不同的帧,结果得到24920帧。标签包括16个身体关节,头部和躯干的3D 视点以及眼睛和鼻子的位置,都由in-house 员工和AMT(Amazon Mechanical Turk)标记。对于相应的关节,可见性和左/右标签也以人为中心的方式进行注释。MPII图像具有多种人体姿态,适用于2D single / multi HPE、动作识别等任务。

表7

  • Microsoft Common Objects in Context(COCO) 数据集(Lin et al.2014)是一个大型数据集,最初用于自然环境中的日常对象检测和分割。通过改进和扩展,COCO的使用范围涵盖了图像字幕和关键点检测。图像是从Google, Bing和Flickr图像搜索中收集的,并带有独立或成对的对象类别。标注工作在AMT上进行。整个数据集包含超过200000个图像和250000个标签人物实例。选择合适的例子进行人体姿态估计,从而形成两个数据集:COCO keypoints 2016和COCO keypoints 2017,分别对应两个公共关键点检测挑战。这两个版本之间唯一的区别是基于社区反馈的train/val/测试分割策略(如表7所示),跨年结果可以直接比较,因为测试集中的图像是相同的。COCO关键点检测挑战的目标是在不受控制的图像中定位人的关键点。每个人的注释包括17个具有可见性和左/右标签的身体关节,以及实例人体分割。注意COCO数据集包含约120K个未标记图像,这些图像与标记图像具有相同的类分布,可用于无监督或半监督学习。

  • AI Challenger Human Keypoint Detection(AIC-HKD) 数据集(Wu et al. 2017)拥有最多的训练示例。它包含210000、30000、30000和30000个图像,分别用于训练、验证、测试A和测试B。这些图片集中于人们的日常生活,是从互联网搜索引擎收集的。然后,在去除不适当的例子(例如政治、暴力和色情内容;人像太小或太密集)后,图像中的每个人都用一个边界框和14个关键点进行注释。每个关键点都有可见性和左/右标签。除了上述静态图像样式的数据集之外,在更接近实际应用场景中收集具有密集注释视频帧的数据集,这些场景提供了利用时间信息的可能性,并且可以用于动作识别。其中一些关注于单个个体(Zhang et al. 2013;Jhuang et al. 2013;Charles et al. 2016),另一些关注于多人的姿势标注(Insafutdinov et al. 2017;Iqbal et al. 2016;Andriluka et al. 2018)。

  • Penn Action Dataset (Zhang et al. 2013)由2326个视频组成,这些视频从YouTube下载,涵盖15个动作:棒球投球、棒球挥杆、板凳压、保龄球、挺举、高尔夫挥杆、跳绳、跳高、引体向上、俯卧撑、仰卧起坐、下蹲、弹吉他、网球正手和网球发球。每个框架的注释由AMT的VATIC(Vondrick et al. 2013)(注释工具)标注。每个视频包含一个动作类标签,每个视频帧包含一个人体和13个关节位置的边界框,具有可见性和左/右标签。

  • Joint-annotated Human Motion Database (J-HMDB) (J-HMDB)(Jhuang et al. 2013)基于最初收集用于动作识别的HMDB51。首先,从HMDB51中原有的51个动作中选取21个动作类别,包括:刷毛、接球、拍手、爬楼梯、高尔夫、跳跃、踢球、挑、倒、上拉、推、跑、射球、射弓、射枪、坐、站、挥棒、抛、走、挥。然后,在选择和清洁过程之后,选择928个剪辑,包括31838个带注释的帧。最后,使用一个2D关节人偶模型(Zuff et al.2012)使用AMT生成所有需要的注释。2D木偶模型是一种关节化的人体模型,它为人类提供了尺度、姿态、分割、粗视点和密集的光流。注释包括15个关节位置和关系、与人体运动相对应的二维光流、人体分割掩模。70%的图像用于训练,30%的图像用于测试。J-HMDB还可以用于动作识别和人体检测任务。

还有些视频数据集只包含人体上半身姿势注释。

  • BBC Pose(Charles et al.2014)包含20个视频(train/val/test为10/5/5,共150万帧),其中有9个手语签名者。2000帧用于验证和测试的帧被手动注释,其余的帧利用半自动方法注释。扩展的BBC Pose数据集(Pfister et al. 2014)为BBC Pose添加了72个额外的训练视频,总共约700万帧。

  • MPII cooking(Rohrbach et al. 2012)数据集包含1071帧用于训练,1277帧用于测试,带有手动注释的烹饪活动关节位置。

  • YouTube Pose 数据集(Charles et al. 2016)包含50个单人YouTube视频在。在活动包括舞蹈、单口喜剧、指导、体育、音乐骑师、表演艺术和舞蹈以及手语姿势。每个视频的100帧被手动标注了上半身的关节位置。这些数据集的场景相对简单,具有静态视图,角色通常处于较小的运动范围内。

从未标记的MPII人类姿势(Andriluka et al. 2014)视频数据来看,有几个扩展的数据集版本作为视频帧的密集标注。一般的方法是用前后连接的帧来扩展原始标记帧,并用与标记帧相同的方法对未标记帧进行注释。

  • MPII Video Pose数据集(Insafutdinov et al.2017)通过从MPII数据集中选择具有挑战性的标记图像和未标记的相邻+/-10帧,提供28个视频,每个视频包含21帧。在 Multi-Person PoseTrack Dataset(Iqbal et al. 2016)中,每个选定的标记帧都用范围为+/-20帧的未标记剪辑进行扩展,每个人都有一个唯一的ID。此外,还为更长和可变长度的序列提供了超过41帧的附加视频。总的来说,它包含60个视频和额外的视频超过41帧更长和可变长度的序列。

  • PoseTrack Dataset(Andriluka et al.2018)是上述两个数据集的集成扩展,是目前最大的多人姿态估计和跟踪数据集。视频中的每个人都有一个唯一的轨迹ID,带有头部边界框和15个身体关节位置的注释。所有姿势标注都由VATIC标注。PoseTrack包含550个视频序列,在日常各种各样的人类活动中,帧主要在41到151帧之间,按照最初的MPII分割策略,分为292、50和208份视频分别用于训练、验证和测试。

5.2 Evaluation Metrics of 2D human pose estimation

不同的数据集具有不同的特征(如不同的人体尺寸范围、上/全身)和不同的任务要求(单/多姿态估计),因此二维人体姿态估计有多种评价指标。表8列出了常用的不同评价指标的摘要。

  • Percentage of Correct Parts (PCP)广泛用于早期研究。报告了肢体的定位精度。如果肢体的两个端点在与相应的地面真值端点的阈值范围内,则肢体被正确定位。阈值可以是肢体长度的50%。除了平均PCP外,一些肢体PCP(躯干、大腿、小腿、上臂、前臂、头部)通常也有报道(Johnson和Everingham,2010)。每个肢体的百分比曲线可以通过度量中阈值的变化获得(Gkioxari et al.2013)。来自(Andriluka et al.2014)的类似度量PCPm使用整个测试集平均地面真线段长度的50%作为匹配阈值。

  • Percentage of Correct Keypoints (PCK)(Yang和Ramanan,2013)衡量身体关节定位的准确性。如果候选身体关节落在地面真关节的阈值像素内,则认为它是正确的。阈值可以是人边界框大小(Yang和Ramanan,2013)的一小部分,像素半径由每个测试样本的躯干高度标准化(Sapp和Taskar,2013)(表示为(Toshev和Szegedy,2014)中检测到的关节百分比(PDJ)),每个测试图像头部节段长度的50%(表示为PCKh@0.5此外,随着阈值的变化,可以生成曲线下面积(AUC)以供进一步分析。
    表8

  • The Average Precision (AP) 对于只有关节位置但没有人体/头部或图像中的人数作为地面真实值的标注边界框的系统,检测问题也必须得到解决。与目标检测类似,本文提出了一种平均精度(AP)评价方法,首次将其称为关键点平均精度(APK)(Yang和Ramanan,2013)。在AP度量中,如果预测的关节落在地面真关节位置的阈值内,则将其记为正确的预测。注意,对于每个关键点,候选点和地面真实姿态之间的对应关系是分别建立的。对于多人姿态评估,根据PCKh评分顺序,将所有预测的姿态逐一分配给Ground truth姿态,而未分配的预测则被视为误报(Pishchulin et al. ,2016)。平均精度(mAP)由每个身体关节的AP报告。

  • Average Precision (AP), Average Recall (AR) and variants.平均精度(AP)、平均找回(AR)及其变体。在(Lin et al.2014)中,进一步设计了将多人姿态估计结果作为目标检测问题的评估。AP、AR及其变体基于一个类似的相似性度量:对象关键点相似性(OKS),它与交并比(IoU)起着相同的作用。另外,COCO数据集中还提供了不同人体尺度的AP/AR。表8总结了所有上述评价指标。

帧率( Frame Rate)、参数量(Number of weight)和每秒千兆浮点运算次数(GFLOPs) 等计算性能指标对于HPE也非常重要。FR表示输入数据的处理速度,通常表示为每秒帧数(FPS)或每幅图像的秒数(s/image)。参数量和GFLOPs的值表明网络的效率,主要与网络架构和特定使用的处理器如GPU/CPU有关(Sun et al. ,2019),而这些计算性能指标也适用于3D HPE。

5.3. Datasets for 3D human pose estimation

为了更好地理解3D空间中的人体,有多种不同的现代设备描述人体。3D人体形状扫描,如SCAPE(Anguelov et al. ,2005年)、INRIA4D(INRIA4D,2019年获得)和FAUST(Bogo et al. ,2014年、2017年)、Time of flight(TOF)深度传感器的三维人体表面点云(cloud points)(Shahroudy et al. ,2016年)、使用运动捕捉系统(MoCap)捕捉三维人体反射标记(Sigal et al. ,2010年;Ionescu et al. ,2010年)al.2014),惯性测量单元(IMU)记录人体运动的3D方向和加速度(von Marcard et al.2016,2018)。本文总结了涉及RGB图像和三维关键点坐标的数据集。表9总结了所选3D数据集的细节,图6显示了一些带有标注的示例图像。

  • HumanEva-I&II数据集(Sigal et al. ,2010)。这两个数据集的地面真值注释是用ViconPeak的商业MoCap系统捕获的。HumanEva-I数据集包含与3D身体姿势同步的7视图视频序列(4个灰度和3个颜色)。在3米x 2米的捕捉区域内,有4名受试者身上有标记,他们执行6种常见动作(例如步行、慢跑、手势、投球和接球、拳击、组合)。HumanEva II是HumanEva-I测试数据集的扩展,包含两个执行动作组合的受试者。

  • Human3.6M数据集(Ionescu et al.2014)是在室内实验室中使用基于准确标记的MoCap系统收集的,有11名专业演员(5名女性和6名男性)穿着普通的衣服。它包含360万张3D人体姿势图像和来自4个不同视角的相应图像。日常进行的17项活动包括讨论、吸烟、拍照、通话等,主要拍摄设备包括4台数码摄像机、1台飞行时间传感器、10台同步工作的运动摄像机。拍摄区域约为4m * 3m。提供的标签包括3D关节位置、关节角度、人物边界框以及每个演员的3D激光扫描。对于测试环节,有三种策略将训练和测试数据进行不同的分割(策略1、策略2和策略3)。

表9

  • TNT15数据集(von Marcard et al.2016)由来自8个RGB相机和10个IMU的同步数据流组成。它被记录在一个办公环境中。该数据集记录了4名演员进行的5项活动(如步行、原地跑步、旋转手臂、跳跃和滑雪练、dynamic punching),包含约13000帧,包括通过背景去除、3D激光扫描获得的二值分割图像和每个演员的registered meshes。

  • MPI-INF-3DHP(Mehta et al. ,2017a)是通过无标记多摄像机MoCap系统在室内和室外场景中采集的。它包含超过1.3M的框架,从14个不同的视角。记录了8名受试者(4名女性和4名男性)进行的8项活动(例如:行走/站立、运动、坐、蹲下/伸展、在地板上、运动等等)

  • TotalCapture数据集(Trumble et al.2017)是在室内拍摄的,空间大约为8m * 4m,使用8台校准高清摄像机,帧率为60Hz。共有4名男性和1名女性受试者分别表演4种不同的表演,重复3次:Range of Motion(ROM)、行走、表演和自由泳。共有1892176帧同步视频、IMU和Vicon数据。动作和自由泳序列中包含的变化和身体动作非常具有挑战性,比如瑜伽、指路、弯腰和爬行等动作都是在训练和测试数据中进行的。

  • MARCOnI Dataset(Elhayek et al. ,2017)是一个测试数据集,包含各种不受控制的室内和室外场景中的序列。序列根据捕获的不同数据模式(多视角视频、视频+相机位置)、要跟踪的演员数量和身份、运动的复杂度、使用的摄像机的数量、背景中运动物体的存在和数量以及照明条件(即一些身体部位处于亮光,一些身体部位暗光)而变化阴影)。摄像机的类型(手机和视觉摄像机等)、帧分辨率和帧速率也有所不同。

  • Panoptic Dataset(Joo et al.2017)是使用多视角系统(包含480个VGA摄像机视图、31个高清视图、10个RGB-D传感器和基于硬件的同步系统)进行无标记运动捕捉的。它包含65个序列(5.5小时)的社交互动和150万的3D关键点。标注包括三维关键点、云点、光流等。

图6

  • 3DPW数据集(von Marcard et al.2018)是在自然环境中用一台手持相机拍摄的。该方法利用附着在被试肢体上的IMUs图像,利用视频惯性姿态估计三维标注。所有受试者都有3D扫描模型。这个数据集由60个视频序列(超过51000帧)组成,其中包括在城市里散步、上楼梯、喝咖啡或坐公共汽车等日常活动。

除了使用MoCap系统收集的数据集之外,还有其他方法可以创建用于3D人体姿势估计的数据集。JTA(Joint Track Auto)(Fabbri et al.2018)是一个完全人工合成的数据集,由具有高逼真的视频游戏GTA5生成。它包含近10000带标注的身体姿势和超过460800个带密集注释的帧。在Human3D+(Chen et al. ,2016)中,训练图像是通过将真实背景图像和SCAPE模型(Anguelov et al. ,2005)生成的三维纹理模型与不同的纹理变形相结合得到的。生成基本景观模型的参数可以从MoCap系统中获取,也可以从人类标注的2D姿势中推理。超现实(真实的合成人)(Varol et al. ,2017)包含真实背景不变的单个合成人的视频。它包含身体部位分割、深度、光流和曲面法线的注释。数据集使用SMPL身体模型来生成身体姿势和形状。LSP MPII Ordinal(Pavlakos et al.2018a)是两个2D人体姿势数据集(LSP和MPII)的扩展,通过添加每对关节的顺序深度关系。UP-3D(Lassner et al.2017)是来自2D人体姿势基准的彩色图像的组合,如LSP和MPII以及人体模型SMPL。三维人体形状候选对象通过人体标注器与彩色图像相匹配。DensePose(Guler et al.2018)是50K COCO人物图像的延伸。所有的RGB图像都是用基于表面的人体表示来手工标注的。AMASS数据集(Mahmood et al.2019)将15个不同的基于光学标记的人体运动捕捉数据集与SMPL Loper et al.(2015)身体模型统一为人体骨架和表面网格的标准拟合表示。在这个丰富的数据集中,每个身体关节有3个旋转自由度(DoF),这些自由度用指数坐标参数化。

5.4 Evaluation Metrics of 3D human pose estimation

3D HPE的评价指标有多种,限制因素也不尽相同。下面只列出最广泛使用的评估指标。

  • Mean Per Joint Position Error(MPJPE)是评价三维姿态估计性能最常用的指标。它计算从估计的三维关节到地面真值的欧几里德距离,单位为毫米,在一幅图像中所有关节的平均值。在一组帧的情况下,平均误差是所有帧的平均值。对于不同的数据集和不同的协议,在计算MPJPE之前,对估计的关节有不同的数据后处理。例如,在Human3.6M的方案#1中,MPJPE是在对齐根关节(通常是骨盆关节)的深度后计算的,也称为NMPJPE。HumanEva-I中的MPJPE和Human3.6M的策略2和3是在使用Procrustes analysis(普式分析)将预测和Ground truth与刚性变换对齐后计算的,这也称为重建误差、P-MPJPE或PA-MPJPE。

  • Percentage of Correct Keypoints (PCK) and Area Under the Curve (AUC), 由Mehta et al. 认为可以用于3D姿势评估,类似于MPII中用于2D姿势评估的PCK和AUC。PCK计算在阈值(也称为3DPCK)中下降的点的百分比,AUC由一系列PCK阈值计算。3D空间中的一般阈值为150mm,大约相当于头部大小的一半。除了3D关节坐标的评估指标外,还有另一个评估测量平均逐顶点误差来报告3D身体形状的结果,该结果报告了预测和地面真实meshes之间的误差(Varol et al.2018;Pavlakos et al.2018b)。

6. Conclusion and Future Research Directions

人体姿态估计是近年来随着深度学习的兴起而发展起来的计算机视觉领域的一个研究热点。由于硬件设备能力以及训练数据的数量和质量的限制,早期网络相对较浅,使用方式非常简单,只能处理较小的图像或补丁。最近的网络更强大、更深入、更有效。本文回顾了近年来基于深度学习的单目图像或视频中二维/三维人体姿态估计问题的研究,并根据具体任务将方法分为四类:

  1. 二维单人姿态估计 (2D single HPE)
  2. 二维多人姿态估计 (2D multi HPE)
  3. 三维单人姿态估计(3D single HPE)
  4. 三维多人姿态估计(3D multi HPE)

此外,还总结了常用的人体姿势数据集和评价指标。

尽管单目人体姿态估计在深度学习的基础上有了很大的发展,但在研究和实际应用中仍然存在一些尚未解决的挑战和差距,如人体遮挡和密集人群的估计等。有效的网络和足够的训练数据是基于深度学习方法的最关键的方面。

未来的网络应该探索全局和局部环境,以获得更具区别性的人体特征,同时利用人体结构进入网络以获得先验约束。现有的网络已经验证了一些有效的网络设计技巧,如多阶段结构、中间监督、多尺度特征融合、多任务学习、身体结构约束等。网络效率也是将算法应用于实际应用的一个非常重要的因素。

多样性数据可以提高网络处理复杂场景的健壮性,这些场景包括不规则的姿势、遮挡的肢体和密集的人群。为特定的复杂场景收集数据是一种选择,还有其他方法可以扩展现有的数据集。合成技术理论上可以产生无限量的数据,而合成数据和真实数据之间存在一定的差异。交叉数据集补充,特别是用2D数据集补充3D数据集,可以缓解训练数据多样性不足的问题。

论文中间引用的论文太多了,不太好链接,确实有兴趣的可以直接参考原文。

论文阅读笔记--Monocular Human Pose Estimation: A Survey of Deep Learning-based Methods 人体姿态估计综述相关推荐

  1. 论文阅读笔记:Improving Attacks on Speck32 / 64 using Deep Learning

    论文阅读笔记:Improving Attacks on Speck32 / 64 using Deep Learning 本文通过神经网络利用了减少轮数的 Speck 的差分性质.为此,作者对神经网络 ...

  2. 论文阅读:(2020版)A Survey on Deep Learning for Named Entity Recognition 命名实体识别中的深度学习方法

    A Survey on Deep Learning for Named Entity Recognition 命名实体识别中的深度学习方法 目录 A Survey on Deep Learning f ...

  3. 【论文阅读笔记】Real-Time Video Super-Resolution on Smartphones with Deep Learning, Mobile AI 2021 Challenge

    论文地址:https://arxiv.org/abs/2105.08826 论文小结   这比赛的目标是在移动手机上得到实时运行的视频超分算法,目标在480p(实际上是180∗30180*30180∗ ...

  4. 姿态估计入门-2020综述《The Progress of Human Pose Estimation: A Survey and Taxonomy of Models Applied in 2D》

    <The Progress of Human Pose Estimation: A Survey and Taxonomy of Models Applied in 2D Human Pose ...

  5. 3D人体姿态估计综述 - 《3D Human pose estimation: A review of the literature and analysis of covariates》

    <3D Human pose estimation: A review of the literature and analysis of covariates> CVIU 2016 论文 ...

  6. 论文笔记--3D human pose estimation in video with temporal convolutions and semi-supervised training

    3D human pose estimation in video with temporal convolutions and semi-supervised training(利用时间卷积和半监督 ...

  7. 2020人体姿态估计综述(Part4:3D Human Pose Estimation from Image)

    承接之前的博文: A 2020 Human Pose Estimation Review (Part1:2D Single Person) A 2020 Human Pose Estimation R ...

  8. Human Pose Estimation人体姿态估计综述调研

    给定一幅图像或一段视频,人体姿态估计就是去恢复其中人体关节点位置的过程. 数据集 LSP 地址:http://sam.johnson.io/research/lsp.htm 样本数:2K 关节点个数: ...

  9. 论文:DensePose: Dense Human Pose Estimation In The Wild 阅读笔记

    一.论文简介: 基于密集点的一个姿态估计模型 作者: 本文主要是Facebook AI 和INRIA(法国国家信息与自动化研究所)联合出品 效果: 关键点对应  2d imageà3d surface ...

最新文章

  1. 北京地区的网络人口调查
  2. 关于JAVA中子类和父类的构造方法
  3. 互联网1分钟 |1119
  4. python复杂网络点图可视化_Python学习工具:9个用来爬取网络站点的 Python 库
  5. Spring 事务使用详解
  6. 微课|中学生可以这样学Python(5.1.3节):列表常用方法
  7. Arm发布v9体系架构:Cortex-X2、Cortex-A710和Cortex-A510
  8. SpringMVC_跟踪请求
  9. mindray心电监护仪使用说明_界面张力仪的使用步骤以及画面清晰度相关说明
  10. 如何用计算机放出音乐,如何录制电脑内部播放的声音及音乐 - 楼月语音聊天录音软件...
  11. asp.net core部署在docker容器中运行
  12. ios数据恢复工具:Mac FoneLab for Mac
  13. 区块链组适应不断变化的监管环境
  14. 输入远程计算机地址后,不提示输入用户名密码直接进入计算机怎么回事,解决Windows远程桌面连接每次都提示输入密码的问题...
  15. MapX研究——MapX核心技术剖析(五)
  16. NOAA气象监测数据下载(可下载最新及每日气象数据)
  17. 深入理解Java虚拟机(周志明第三版)- 第十二章:Java内存模型与线程
  18. 克尼汉的c程序设计语言,c程序设计语言 英文版
  19. database changed是什么意思_itunes其他是什么 itunes其他清除方法介绍【图文教程】...
  20. 【Wikipedia爬虫工具包的使用】请求超时、代理错误、SSLError

热门文章

  1. 无人出租赛道洗牌开启?这家公司为什么会黄?
  2. python边缘坐标提取_python-从Shapely中的多边形中提取点/坐标
  3. 基于Python打印文字到桌面壁纸上的提醒学习小程序
  4. [021] Android应用“易查查”上线推广,请同行多多指教、多多支持
  5. echart 折线从左到右动画效果_echarts多条折线图动态分层的实现方法
  6. 视频断点续传+java视频
  7. 高仿微信抢红包动画特效
  8. 【运行报错】Centos 6 无法使用 yum
  9. checkstyle配置规格说明
  10. 谷歌 ARCore 就是低配版 Tango,它比苹果 ARKit 好在哪?