一、今年ICCV2019刚出炉的文章,颜水成教授团队的,非官方代码:https://github.com/murdockhou/Single-Stage-Multi-person-Pose-Machines

二、这篇文章核心思想

      1、点评了下目前多人姿态估计中的现状:大多数人都在多two-stage,很多模型都是但人姿态估计结合上人体检测,这也是这两年的主要内容,效果虽然好,但是缺点也是很明显“效率低”;one-stage也有不少工作,但是类似于pif,paf,embedding之类,也是在逐年提升,embedding的方法出来之后,不少团队把这个用于目标检测提升了one-stage的目标检测结果。

      2、提出了一个算是全新的结构:single-stage的多人姿态估计模型,不同于以往的one-stage,本文的模型没有复杂的后续处理(比如openpose需要后续处理利用paf生成图,做2部图的划分,再组装成每个人),本文的直接会预测人。(这里也推荐下另一篇文章ECCV2018的,pose proposal Network)去年自己也想这么做,可惜~~~

      3、对提出的结构进行优化,减轻网络预测的难度,提升“打跨度”关键点之间的预测能力。

      4、这个方法可以直接用到3D多人姿态估计中,只需要增加一个坐标位置就ok。

三、算法的总体结构

                    

    这个图可能不太清楚,但是结构还是那么回事,正常的回归。Root Conf.Map 还是我们熟悉的Heatmap,只不过这个用来回归一个叫root joint的关键点,可以理解成“人物中心”用来代表每个人物instance!而且是多人的,因此肯定是使用的NMS了。Joint DisP.Map 是偏移量,可以当成offset,因为我们知道了root joint的位置,然后在root joint这个位置上去取对应关节的offset,加到root joint的x,y上面就能得到比如肩膀的x,y了。一个一个加就能得到每个instance的全部pose了。

四、Structured pose representation (SPR)和 Hierarchical SPR

    在“三”里面,我们说的其他全部关键点的推理建立在 root joint+对应offset的基础之上,算是SPR,这种虽然可以解决问题,但是不能很好的解决,因为有的身体关键点偏离root joint较远,这对网络来说自然是有难度的直接去回归。

    对于这个问题,作者提出了Hierarchical SPR,看下图可以一目了然:

      文章中分了四个等级:Here, the root joint is placed in the first hierarchy; torso joints including neck, shoulders and hips are in the second one; head, elbows and knees are put in the third; wrists and ankles are put in the fourth.这样一来的好处就是减轻了网络预测的压力,关键点依赖于他相邻的关节,一层套一层,因此这里的offset也是一层套一层,因此可以简化成如下的公式:

     

      从这里可以看出,这个模型,除了root joint是直接预测外,其他的都是预测的偏移。

   这里网络模型采用的是hourglass * 8.

五、实验设置

  label的生成,root joint依然是采用的2d 高斯 heatmap,sigma=7.其他的关键点都是offset,直接预测的值了:

    这个tao其实就是一个label的范围限制,对应热度图中热度稍微高的地方有label,其他地方就没有了。

   这个是用来解决同一个位置可能有多个关键点的的话,利用这个公式进行平均。

   第一部分用的MESLoss,第二部分就是smooth L1了,采用了每个stage都有中继监督,用于防治梯度消失。

Logo

瓜分20万奖金 获得内推名额 丰厚实物奖励 易参与易上手

更多推荐