Title: Convolutional Pose Machines
Authors: Shih-En Wei, Varun Ramakrishna, Takeo Kanade, Yaser Sheikh
Link: https://arxiv.org/abs/1602.00134
Github: https://github.com/CMU-Perceptual-Computing-Lab/convolutional-pose-machines-release
或者原作者 https://github.com/shihenw/convolutional-pose-machines-release (这个更完善)
What:
1. 对人体的结构进行预测,以预测点的形式输出。
2. 使用多个multi-class CNN构建 coarse2fine的框架(不是regression CNN),所以操作都是基于heatmap。
How:
1.Stage 1 input是原图,经过全卷机网络,输出是一个P+1层的2Dmap
Stage 2 input是 StageOutput做处理,并且加上 原图通过几层网络后的中层map。输出同上。
Stage t>2 类似2
(这里相加的话会有一些尺度问题,应该是ψ中操作了,但论文中没有解释ψ。)
2.出现梯度消失的问题:采用中层监督(加入中层loss),加强反向传播。
中层监督的groundtruth来源于对groundtruth中的location point做高斯分布产生。而Loss的形式是简单的每个像素的平方loss。
实验
组建之间可以互相影响(multi task的感觉)
结果
update 9/20:
网络结构可视化分析:(我是用了caffe/python/drawnet.py可视化)
1.这个是作者提供test的结构,所以图上没有loss。但按照paper应该是在
conv7_stage1 和之后的每个conv5上有loss (如 Mconv5_stage2, Mconv5_stage3 )
2.一开始分叉出去3路,
第一路可以对应 x‘ 的那一路。这一路就是常驻的用来concat的。
中间的一路就是x的一路。这一路就是一开始和x‘一样,后期疯狂 conv [11,11] pad 5的尺度不变
下面的一路是原图缩小8倍的一路。这一路也是常驻的用来concat的。