身体姿态估计旨在识别出给定图像中人或者动物实例身体的关键点,除了典型的身体骨骼关键点,还可以包括手、脚、脸部等关键点,是计算机视觉领域的基本任务之一。目前,视觉transformer已经在识别、检测、分割等多个视觉任务上展现出来很好的性能。在身体姿态估计任务上,使用CNN提取的特征,结合定制化的transformer模块进行特征增强,视觉transformer取得了很好的效果。然而,简单的视觉transformer本身在姿态估计任务上是否能有很好的表现呢?
京东探索研究院联合悉尼大学在这方面做出了探索,提出了基于简单视觉transformer的姿态估计模型ViTPose和改进版本ViTPose+。ViTPose系列模型在MS COCO多个人体姿态估计数据集上达到了新的SOTA和帕累托前沿。其中,ViTPose已收录于Neurips 2022。ViTPose+进一步拓展到多种不同类型的身体姿态估计任务,涵盖动物、人体以及典型的身体骨骼、手、脚、脸部等关键点类型,在不增加推理阶段模型复杂度和计算复杂度的情况下,实现了多个数据集上的最佳性能。
一、研究背景
ViTPose和ViTPose+的性能和速度对比图,圆圈大小代表了模型大小
近年来,视觉transformer在多个视觉领域展现出了极佳的性能。在姿态估计领域,也涌现出许多基于transformer的方案,并取得了很好的效果。如TokenPose等工作,使用CNN进行特征提取,并使用transformer作为后处理模块来建模多个关键点之间的关系。尽管他们展现了很好的效果,但是仍然依赖CNN提取特征,很难充分挖掘transformer在姿态估计领域的潜力。
为了减少CNN的影响,HRFormer等工作仅使用transformer来进行特征提取和建模人体关键点。为了提升模型性能,模型采用了一些特殊的设计,如多尺度建模、多层级结构等方式。这些结构在CNN模型设计和transformer模型设计中都表现出很好的结果。然而,我们是否需要为姿态估计任务定制化的设计Transformer网络结构呢?为此,京东探索研究院联合悉尼大学提出了基于简单视觉transformer的姿态估计基线ViTPose,充分挖掘transformer在姿态估计领域的潜力。基于常见的无监督预训练技术并结合非常简单的解码器,ViTPose展示了视觉transformer在姿态估计方面的简单性,可扩展性,灵活性,和可迁移性,并在人体,动物,全身关键点检测等方面达到SOTA性能。