论文地址:https://arxiv.org/abs/2211.03375
摘要:
准确的全身多人姿态估计和跟踪是计算机视觉中一个重要而又具有挑战性的课题。为了捕捉人类的细微动作以进行复杂的行为分析,包括面部、身体、手和脚的全身姿态估计比传统的仅身体姿态估计是必不可少的。在本文中,我们介绍了AlphaPose,这是一个可以在实时运行时联合执行准确的全身姿势估计和跟踪的系统。为此,我们提出了几种新技术:用于快速和精细定位的对称积分关键点回归(SIKR),用于消除冗余人体检测的参数姿态非最大值抑制(P-NMS)和用于联合姿态估计和跟踪的姿态感知身份嵌入。在训练过程中,我们采用部分引导的建议生成器(PGPG)和多领域知识蒸馏,以进一步提高准确性。我们的方法能够准确地定位全身关键点,并在不准确的边界框和冗余检测的情况下同时跟踪人类。我们在COCO-全身,COCO,PoseTrack和我们提出的Halpe-FullBody姿势估计数据集上的速度和准确性方面都比当前最先进的方法有了显着的改进。我们的模型,源代码和数据集在https://github.com/MVIG-SJTU/AlphaPose上公开提供。
关键词:人体姿态估计,姿态跟踪,全身姿态估计,手部姿态估计,实时,多人
1引言
人体姿态估计是计算机视觉的一个基本挑战。它在人机交互[1],电影工业[2],动作识别[3]等方面有许多应用。在这项工作中,我们专注于多人全身姿态估计问题。在传统的仅身体姿态估计中,识别野外多个人的姿态比识别图像中单个人的姿态更具挑战性[4],[5],[6],[7],[8]。以前的尝试通过使用自顶向下的框架[9],[10]或自底向上的框架[11],[12],[13]来解决这个问题。我们的方法遵循自上而下的框架,首先检测人体边界框,然后独立地估计每个框内的姿势。对于基于自顶向下的方法,尽管它们的性能在常见的基准测试中占主导地位[14],[15],但这种方法有一些缺点。由于检测阶段和姿态估计阶段是分开的,i)如果检测器失败,则姿态估计器没有线索来恢复人类姿态,以及ii)当前研究人员为了准确性而采用强的人类检测器,这使得两步处理在推理中缓慢。为了解决自顶向下框架的这些缺点,我们提出了一种新的方法,使其在实践中有效和可靠。为了减轻遗漏检测问题,我们降低了检测置信度和NMS阈值,以提供更多的候选项用于后续检测姿态估计。
通过引入一种新的位姿距离度量来比较位姿相似性,从而实现了一种参数化位姿NMS。数据驱动的方法被应用到优化的位姿距离参数。我们表明,通过这种策略,一个自上而下的框架与YOLOV3SPP检测器可以实现同等的性能与最先进的检测器,同时实现更高的效率。此外,为了在推理过程中加快自顶向下的框架,我们在AlphaPose中设计了一个多级并发管道,这使得我们的框架能够实时运行。除了仅身体姿态估计之外,野外的全身姿态估计更具挑战性,因为它面临几个额外的问题。对于自顶向下框架和自底向上框架,目前最常用的关键点表示是热图[16]。由于计算资源的限制,热图的大小通常是输入图像的四分之一。然而,为了定位身体、面部和手同时进行,但是这种表示是不合适的,因为它不能处理不同身体部位之间的大尺度变化。一个主要的问题被称为量化误差。如图1所示,由于热图表示是离散的,热图上的两个相邻网格都可能错过正确的位置。这对于身体姿势估计来说不是问题,因为正确的区域通常很大。然而,对于手部和面部上的精细级关键点,很容易错过正确的位置。
图1热图(绿色和蓝色线)导致的量化误差。通过我们的对称积分关键点回归(粉红线),我们可以解决定位误差。
为了解决这个问题,以前的方法要么采用额外的子网络进行手部和面部估计[17],要么采用ROI-Align来放大特征图[18]。 然而,这两种方法都是计算昂贵的,特别是在多人的情况下。本文提出了一种新的对称积分关键点回归方法,可以在不同尺度下精确定位关键点。这是第一种回归方法,可以在消除量化误差的同时具有与热图表示相同的精度。全身姿势估计的另一个问题是缺乏训练数据。与具有丰富数据集的频繁研究的身体姿势估计不同[14],[19],全身姿势估计只有一个数据集[18]。为了促进这一领域的发展,我们为此任务注释了一个名为Halpe的新数据集,其中包括[18]中不可用的额外必要关节。为了进一步提高自顶向下框架在野外全身姿态估计的通用性,引入了两个关键组件。我们采用多领域知识蒸馏,将训练数据从不同的身体部位数据集。为了缓解不同数据集之间的领域差距和不完美的检测问题,我们提出了一种新的部分引导人类建议生成器(PGPG)来增加训练样本。通过学习不同姿势的人体检测器的输出分布,我们可以模拟人体边界框的生成,产生大量的训练数据样本。最后,我们引入了一个姿态感知的身份嵌入,使我们的自顶向下框架内的同步人体姿态跟踪。在姿态估计器上增加了一个人的re-id分支,并联合进行姿态估计和身份识别。借助姿态引导的区域注意,我们的姿态估计器能够准确地识别人。这样的设计使我们能够以统一的方式实现实时姿态估计和跟踪。这份手稿扩展了我们在ICCV 2017 [20]会议上发表的初步工作,沿着以下几个方面:
我们将我们的框架扩展到全身姿态估计场景,并提出了一个新的对称积分关键点定位网络的精细定位。·
- 我们扩展了我们的姿势引导建议生成器,以结合不同身体部位数据集上的多领域知识蒸馏。·
- 我们注释了一个新的全身姿势估计基准(每个人136分),并与以前的方法进行了比较。·
- 我们提出了姿态感知身份嵌入,以统一的方式在我们的自顶向下框架中实现姿态跟踪。
- 这项工作记录了AlphaPose的发布,它实现了准确和实时的性能。我们的图书馆为许多研究人员提供了便利,并在GitHub上获得了超过6,000次的关注。
2相关工作
在本节中,我们首先简要回顾了多人姿态估计方面的论文,这些论文提供了人体姿态估计的背景知识。节中2.2我们回顾了多人全身姿态估计的相关工作,并讨论了当前文献中的一个关键问题。节中2.3我们回顾了基于积分回归的关键点定位,并阐明了我们对以前工作的改进。节中2.4我们回顾了姿态跟踪,并总结了以前的工作和我们的方法之间的联系和区别。
2.1多人位姿估计
自底向上方法,自底向上方法早期也被称为基于部分的方法。这些方法首先检测图像中所有可能的身体部位,然后将它们分组为单独的骨架。[10]、[11]、[12]、[13]、[21]、[22]、[23]等有代表性的著作。Chen等人。[11]提出了一种通过图形模型来解析大部分被遮挡的人的方法,该模型将人类建模为身体部位的灵活组合。Gkiox等人[10]使用k-possible来联合检测人,并通过所有激活的possible的加权平均来预测人姿势的位置。Pishchulin等人[12]提出深切切割首先检测所有身体部位,然后通过积分线性规划对这些部位进行标记、过滤和组装。Insafutdinov等人[13]提出了一种基于ResNet [24]和更好的增量优化策略的更强大的部分检测器,称为DeeperCut。Openpose [17],[25]引入了部分亲和字段(PAF)来编码身体部位与个体之间的关联分数,并通过将其分解为一组二分匹配子问题来解决匹配问题。纽韦尔等人[26]为检测到的每个部分学习一个标识标签,以指示它属于哪个个体,称为关联嵌入。Cheng等人[27]使用强大的多分辨率网络[28]作为骨干和高分辨率特征金字塔来学习尺度感知表示。OpenPifpaf [22],[23]提出了一个部分强度场(PIF)和一个部分关联场(PAF)分别定位和关联身体部位。
虽然自下而上的方法已经证明了良好的性能,但它们的身体部位检测器可能是脆弱的,因为仅考虑小的局部区域,并且当图像中有小人物时面临尺度变化的挑战。
自顶向下的方法我们的工作遵循自顶向下的范式,像其他人一样[9],[20],[28],[29],[30],[31],首先通过对象检测器获得每个人体的边界框,然后对裁剪图像进行单人姿势估计。Fang等人[20]提出了对称空间Transformer网络来解决人体检测器给出的具有巨大噪声的不完美边界框的问题。Mask R-CNN [29]通过添加与现有边界框识别分支并行的姿态估计分支来扩展Faster R-CNN [32],ROIAlign,实现端到端培训。PandaNet [33]提出了一种基于锚的方法,以单次拍摄的方式预测多人3D姿态估计,并实现了高效率。Chen等人[30]使用特征金字塔网络来定位简单的关节,并使用细化网络来集成来自先前网络的所有级别的特征以处理硬关节。一个简单结构的网络[31],其中ResNet [24]作为骨干,一些去卷积层作为上采样头,显示了有效和有竞争力的结果。Sun等人[28]提出了一种功能强大的高分辨率网络,其中在第一阶段建立高分辨率子网络,并在后续阶段中逐个并行添加高到低分辨率子网络,进行重复的多尺度特征融合。Bertasius等人[34]从图像扩展到视频,并提出了一种在稀疏标记的视频上学习姿势扭曲的方法。
虽然最先进的自顶向下的方法在流行的大规模基准测试上取得了显着的精度,但两步范式使它们的推理速度慢于自底向上的方法。此外,缺乏库级框架实现也阻碍了它们应用于行业。因此,我们在本文中提出了AlphaPose,在其中我们开发了一个多级管道,以同时处理耗时的步骤并实现快速推理。
一阶段方法 一些方法既不需要后关节分组,也不需要预先检测人体边界框。他们定位人体和检测自己的关节同时,以改善低效率的两阶段的方法。代表作品包括CenterNet [35],SPM [36],DirectPose [37]和Point-set锚[38]。然而,这些方法并没有达到自顶向下方法的高精度,部分原因是身体中心图和密集关节位移图是高语义非线性的,这使得网络很难学习。
2.2全身关键点定位
多人的身体、脸部、手和脚的关键点的统一检测是一个相对较新的研究课题,目前提出的方法还不多。OpenPose [17]开发了一种级联方法。它首先使用PAF [25]检测身体关键点,然后采用两个单独的网络来估计面部标志和手部关键点。这样的设计使其时间效率低下,并消耗额外的计算资源。Hidalgo等人。[39]提出了一个单一的网络来估计整个身体的关键点。然而,由于其一步机制,输出分辨率有限,从而降低了其在面部和手部等精细关键点上的性能。Jin等人。[18]提出了一个ZoomNet,它使用ROIAlign来裁剪特征图上的手部和面部区域,并预测调整大小的特征图上的关键点。所有这些方法都采用热图表示进行关键点定位,因为它在身体关键点上具有主导性。然而,所提到的热图的量化问题会降低面部和手部关键点的准确性。大尺寸输入的要求也消耗更多的计算资源。在本文中,我们认为,软argmax介绍是更适合于全身姿态估计,并提出了一个改进版本的软argmax,产生更高的精度。Jin等人。[18]还将COCO数据集扩展到全身场景。然而,像头部和颈部这样的一些关节没有出现在这个数据集中,这在网格重建等任务中是必不可少的。同时,面部标注与300 LW中的面部标注不兼容。在本文中,我们贡献了一个新的在野外多人全身姿势估计基准。我们注释来自HICO-DET的40 K图像[40]使用Creative Common license1作为训练集,并扩展COCO关键点验证集(6K实例)作为我们的测试集。在该基准测试和COCOWholebody上的实验证明了该方法的优越性。
2.3整体关键点定位
热图是人体姿态估计领域中关节定位的主要表示。从热图中读出的位置是离