多人姿态识别简介
人体姿态估计有两个主流方案:Two-step framework
和Part-based framework
。第一种方案是检测环境中的每一个人体检测框,然后独立地去检测每一个人体区域的姿态(自顶向下的方法)。第二种方案是首先检测出环境中的所有肢体节点,然后进行拼接得到多人的骨架(自底向上的方法)。第一种方案,姿态检测准确度高度以来目标区域框检测的质量。第二种方案,如果两人离得十分近,容易出现模棱两可的情况,而且由于是依赖两个部件之间的关系,所以失去了对全局的信息获取。
AlphaPose
AlphaPose采用自顶向下的方法,提出了RMPE(区域多人姿态检测)框架。该框架主要包括symmetric spatial transformer network (SSTN)、Parametric Pose Non- Maximum-Suppression (NMS)和Pose-Guided Proposals Generator (PGPG)
。并且使用symmetric spatial transformer network (SSTN)、deep proposals generator (DPG) 、parametric pose nonmaximum suppression (p-NMS) 三个技术来解决野外场景下多人姿态估计问题。
在SPPE结构上添加SSTN,能够在不精准的区域框中提取到高质量的人体区域。并行的SPPE分支(SSTN)来优化自身网络。使用parametric pose NMS来解决冗余检测问题,在该结构中,使用了自创的姿态距离度量方案比较姿态之间的相似度。用数据驱动的方法优化姿态距离参数。最后我们使用PGPG来强化训练数据,通过学习输出结果中不同姿态的描述信息,来模仿人体区域框的生成过程,进一步产生一个更大的训练集。
相关论文
https://arxiv.org/abs/1612.00137
论文代码
https://github.com/MVIG-SJTU/AlphaPose
获取代码
git clone https://github.com/MVIG-SJTU/AlphaPose.git
按照repo的安装说明完成代码库的安装,然后运行下面命令行:
python scripts/demo_inference.py --cfg configs/coco/resnet/256x192_res50_lr1e-3_1x.yaml --checkpoint pretrained_models/fast_res50_256x192.pth --indir examples/demo/
运行结果如下:
one more thing
等过一段时间博主有时间可以详细讲解一下Alphapose这篇论文,里面的许多思想或是技术都是值得我们研究和借鉴的。