文章出自2019ICCV,颜水成团队。

提出的SPM算法跳出传统top-downbottom-up的思路,直接预测每个人的位置和keypoints。

感觉是将yolov3CSP行人检测的思路进行了融合。

Structured Pose Representation (SPR)

  • 将人体实例和身体关节的位置信息进行统一。
  • 人体关节分级表示。
 

先前的方法之所以需要两个阶段,主要是由于关节位姿的表示需要基于人体实例的位置来进行。颜水成团队从这个角度出发,探索了新的关节位姿表达方式SPR。

想要单阶段实现多人位姿估计,就需要一个统一人体位置和关节位置的表达。SPR提出了一个很具有启发的观点,它在常规的关节位置外引入了一个辅助关键位置——基准关节,这个基准关节就代表了人体实例的位置。

  • 基本SPR表示

每个人体关键就可以表示为基于这一基准关节的偏移。在这样的表达下,检测问题就被转换为了预测每个人体对应的基准关节以及各个关节相对于基准关节的偏移量,两阶段为题就可以通过统一的关节表达而简化为单阶段问题:

”Single-Stage Multi-Person Pose Machines“—— bottom-up多人姿态估计新思路

”Single-Stage Multi-Person Pose Machines“—— bottom-up多人姿态估计新思路

因此,网络只要预测出基准关节的位置和每个关节点相对于基准关节的偏移,即可得到所有关节点的位置。

  • 改进的SPR表示

人在运动时,有些关节离中心的基准关节偏移太大,直接从图像中回归出这些关节的偏移量难度较大误差也大。针对这个为题,作者借鉴了人体关节自身的天然结构,将关节的位移分为了四个层级,将相对于基准关节的偏移转换为了相对于上一级关节的偏移。

改进SPR之后,减小了偏移估计的难度同时也充分利用了躯干构造的结构信息。

”Single-Stage Multi-Person Pose Machines“—— bottom-up多人姿态估计新思路

”Single-Stage Multi-Person Pose Machines“—— bottom-up多人姿态估计新思路

”Single-Stage Multi-Person Pose Machines“—— bottom-up多人姿态估计新思路

”Single-Stage Multi-Person Pose Machines“—— bottom-up多人姿态估计新思路

 

如何实施

思路非常清晰明了,那么如何构造label和网络的输出呢?

首先从原始SPR表示来讲:

  • root target

”Single-Stage Multi-Person Pose Machines“—— bottom-up多人姿态估计新思路
 
采用高斯核平滑,首先得到第 个人的root joint map:
”Single-Stage Multi-Person Pose Machines“—— bottom-up多人姿态估计新思路
对于图中所有的人,若根节点离得很近,高斯区域有重叠,则该点处的值取每个人最大值:
”Single-Stage Multi-Person Pose Machines“—— bottom-up多人姿态估计新思路
 
  • joint target

”Single-Stage Multi-Person Pose Machines“—— bottom-up多人姿态估计新思路

以 joint j 的 label map 为例

首先对于第 个人,”Single-Stage Multi-Person Pose Machines“—— bottom-up多人姿态估计新思路表示关节 j 的label map上根据第 i 个人得到的 (x,y) 点的取值

”Single-Stage Multi-Person Pose Machines“—— bottom-up多人姿态估计新思路

其中:

”Single-Stage Multi-Person Pose Machines“—— bottom-up多人姿态估计新思路

”Single-Stage Multi-Person Pose Machines“—— bottom-up多人姿态估计新思路

”Single-Stage Multi-Person Pose Machines“—— bottom-up多人姿态估计新思路

进一步对于图中所有人,若点(x,y)处有多个人的关节表示,则取所有人的均值

”Single-Stage Multi-Person Pose Machines“—— bottom-up多人姿态估计新思路

 

举个例子看一下,以图中只有一个人为例,多人同理:

设root点坐标为(5,5),joint_1坐标为(8,10),joint_2坐标为(6,7),平滑范围设为5,输出feature map大小为10*10.

则root map为: (5,5)处取值

0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0.8 0.8 0.8 0.8 0.8 0 0 0
0 0 0.8 0.9 0.9 0.9 0.8 0 0 0
0 0 0.8 0.9 1 0.9 0.8 0 0 0
0 0 0.8 0.9 0.9 0.9 0.8 0 0 0
0 0 0.8 0.8 0.8 0.8 0.8 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0

joint_1 的 x map 为(y map同理):

0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0.355 0.284 0.213 0.142 0.071 0 0 0
0 0 0.355 0.284 0.213 0.142 0.071 0 0 0
0 0 0.355 0.284 0.213 0.142 0.071 0 0 0
0 0 0.355 0.284 0.213 0.142 0.071 0 0 0
0 0 0.355 0.284 0.213 0.142 0.071 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0

joint_2 的 x map 为(y map同理):

0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0.213 0.142 0.071 0 -0.071 0 0 0
0 0 0.213 0.142 0.071 0 -0.071 0 0 0
0 0 0.213 0.142 0.071 0 -0.071 0 0 0
0 0 0.213 0.142 0.071 0 -0.071 0 0 0
0 0 0.213 0.142 0.071 0 -0.071 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0

joint_1joint_2的父节点,对于改进后的分层SPR,root map joint_1map 同上,joint_2x map 变为 (y map同理) :

0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 -0.142 -0.142 -0.142 -0.142 -0.142 0 0 0
0 0 -0.142 -0.142 -0.142 -0.142 -0.142 0 0 0
0 0 -0.142 -0.142 -0.142 -0.142 -0.142 0 0 0
0 0 -0.142 -0.142 -0.142 -0.142 -0.142 0 0 0
0 0 -0.142 -0.142 -0.142 -0.142 -0.142 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0

之所以中间5*5区域内取值全部为 -0.142 ( ”Single-Stage Multi-Person Pose Machines“—— bottom-up多人姿态估计新思路 ),考虑到在预测时若中心点预测发生偏移,则不会影响后面关节点预测。

 

网络结构和loss

paper中采用了多stage的Hourglass作为主干网络。

”Single-Stage Multi-Person Pose Machines“—— bottom-up多人姿态估计新思路

Root jointL2 Loss

Body jointsmooth L1 Loss

”Single-Stage Multi-Person Pose Machines“—— bottom-up多人姿态估计新思路

 

效果

”Single-Stage Multi-Person Pose Machines“—— bottom-up多人姿态估计新思路

”Single-Stage Multi-Person Pose Machines“—— bottom-up多人姿态估计新思路

”Single-Stage Multi-Person Pose Machines“—— bottom-up多人姿态估计新思路

”Single-Stage Multi-Person Pose Machines“—— bottom-up多人姿态估计新思路

FAQ

预测关节点偏移map的同时,同时再预测一个关节点存在性heatmap
人形检测姿态估计放在同一个网络中进行预测,采用CSP的方式预测人形框的宽和高?

 

相关文章: