Rethinking on Multi-Stage Networks for Human Pose Estimation

COCO 2018 关键点检测第一名。

  pose estimation里面一个常用的trick是multi-stage。代表是8 stacks的houglass network。这可以解释为多stage可以实现coarse-to-fine的逐步优化过程。但是在多人位姿估计中,multi-stage效果是不如single-stage的。比如现在coco上领先的方法CPN, simple baseline等都是single-stage的。实验表明,如hourglass等,简单想通过stack来增大模型容量,实现精度提升是很难的。因此本文从网络结构设计, 特征传递和loss几个方面改善来提升multi-stage模型在多人位姿估计的表现。 达到了state-of-the-art效果。

  首先是single-stage的设计,这是multi-stage的基础。回想hourglass的设计,每个stack中降采样和上采样分别4次,但是特征的channel是始终维持256不变。这似乎是不合理的。因为降采样过程中我们想提取不同尺度丰富的信息,丢失的信息在上采样中很难恢复。所以在降采样分辨率下降时,channel适当增加才能减少信息丢失。本文采取的方法是每降采样一次,channel翻倍。

 

  然后是stages之间的信息传递。前一个stage的信息如何传给下一个stage?

我们可以看到,当前stage的降采样后特征有3个部分, 第一个是当前stage实际降采样的特征,第二个和第三个分别是前一个stage对应scale的降采样和上采样特征, 当然分别用1*1卷积处理后才传递。这样当前stage可以充分利用前面的信息去提取更有效的特征。

最后, 在loss function上下功夫。首先是各个stage分别要加监督。这个监督的形式可以参考CPN, 是在上采样的各个scale的预测上做监督,此外最大的scale上,使用了OHKM, 对hard keypoint做处理。

还有一点小的trick是不同的stage, ground truth的heatmap采用不同大小的高斯核来生成,具体是前面satge 的kernel大, 后面的stage kernel小。也是一种coarse-to-fine的思想吧。

代码也开源了,有时间看一看细节, 看看有没有什么补充的吧。

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值