近期在将人体关键点应用于监控领域,在落地过程中,耗时和精度的平衡及其重要。前期由于基于单人的人体关键点检测网络的精度较好,因此前期的工作主要集中于优化基于单人的人体关键点网络的速度。然而该种方法在人多的场景中的瓶颈非常明显,很难通过优化单个人体的前向速度来限制整体的速度。
因此,基于全图的人体关键点网络的应用必定是未来的趋势。而且openpose也出了第二个版本。本文将对两个版本的openpose进行解读。
1.openpose网络结构演进

如上图所示,openpsoe的训练过程中,两个版本都是基于多stage进行训练的。而且都需要输出两个部分,如下图所示,淡蓝色模块用于输出图像中所有人体的关键点之间的方向。米色模块用于输出图像中人体关键点的置信度图。

但是两个版本的openpose的训练框架是由差别的。在openpose版本1中,每个阶段(stage)都有两个分支,分支一输出置信度图,分支二输出关键点间的方向。而openpose版本2中,前面的stage都是输出关键点的方向,后面的stage都是关键点的置信度。对应版本的公式也展示了这个思想。

openpose版本2之所以提出了这个思想,如上表所示(CM表示置信度图,PAF表示关键点间方向),作者将计算限定在最多6个阶段,分布在PAF和置信图分支上。从上表的结果中,可以得出三个结论:
- 首先,PAF需要更多的阶段来聚合,并从细化阶段获得更多的好处。
- 增加PAF通道的数量主要是改善真阳性的数量,即使它们可能不是太精确(更高的AP50)。但是,增加置信度图通道的数量可以进一步提高定位精度(更高的AP75)。
- 作者证明了将PAF模块放在前面,置信度图放在后面,最终的精度有了很大的提高,相反的结果是绝对精度下降了4%。即使只有4个阶段(3 PAF - 1 CM)的模型也比计算上更昂贵的6个阶段模型(3 CM - 3 PAF)更准确(这就是本文提出改进版本结构的原因)。
未完待续......
网友评论