【CV论文笔记】Stacked Hourglass Networks for Human Pose Estimation(Stacked Hourglass网络详解)

本文主要用于介绍Alejandro Newell等人于2016年提出的用于关键点检测的Stacked Hourglass网络的论文。本笔记主要为方便初学者快速入门,以及自我回顾。

论文链接:https://arxiv.org/pdf/1603.06937.pdf
源码地址:http://www-personal.umich.edu/~alnewell/pose

基本目录如下:

  1. 摘要
  2. 核心思想
  3. 总结

------------------第一菇 - 摘要------------------

1.1 论文摘要

本论文提出了一种新的卷积网络架构用于人体关键点识别。为了捕获到各种人体关键点之间的空间关联关系,该网络将在各个尺度上提取特征。我们发现重复使用自上而下,自下而上的处理架构,并同时运用中间监督学习(intermediate supervision)的方法能够显著提高模型的准确率。我们将这一网络架构命名为:stacked hourglass,该架构在FLIC和MPII数据集上的表现均超过了以往的方法。

------------------第二菇 - 核心思想------------------

2.1 Stacked Hourglass网络架构详解
2.1.1 Hourglass Design详解

我们从名字就可以看出,整体的Stacked Hourglass是由多个Hourglass模块集成的,因此,我们直接来了解一下单个Hourglass的架构。

设计Hourglass的初衷就是为了能够更好的捕获多个尺度的信息,从而能精确的预测出每一个关键点的关键信息。因此,该网络必须能够有效的处理各个尺度的信息,并能加以融合运用。这里我们直接先上一张Hourglass的架构图,

Hourglass架构图.jpg

从结构图我们可以看出,整体的网络架构先利用卷积和池化操作将特征降到一个很低的分辨率(4*4)。在每一步最大池化操作的时候,网络都会加上一个新的卷积分支,用于直接对池化前的原始分辨率提取特征(类似残差操作),并与后面上采样操作后提取出的特征相融合。在到达最低分辨率之后,网络就开始对特征进行上采样(最近邻插值),并结合不同尺度下的信息,之后再与前面连接过的特征按元素位置相加。在到达输出分辨率的时候,再在后面接2个1*1的卷积来进行最后的检测。最终网络的输出就是一组heatmap,用于预测每一个关键点在每一个像素点存在的概率。

2.1.2 Layer Implementation

上图只是描述出了整体的架构,但并未对其中的每一块进行细致的描述(上图一个方框,就代表了一组卷积网络架构)。因此,接下来,跟随文章的节奏,我们还得好好探索一下每一块的具体网络设计。

作者强调,不同的网络结构设计会对结果产生不同程度的影响。最终,作者采用的是最流行的残差模块(residual modules),具体的模块示意图如下,

残差模块示意图.jpg

当然,原作者对其的描述并不清晰,只是强调了卷积核大于3*3的不用,利用了瓶颈层(1*1卷积)来控制整体参数的个数等,这里从网上盗了张示意图【1】,方便大家理解,

Residual Module网络示意图.jpg

简单理解一下,上面一行就是传统的卷积层提取特征,下面一行其实就是跳级层,只包含了一个卷积核为1*1的。所有的卷积核不改变尺寸,只改变通道数。其实这里已经体现了模块化的思想,即上面的一组卷积操作,就是一个模块。该模块再嵌入到更大的架构中,从而完成更多的任务。

当然直接操作256*256会需要很多的计算资源,因此,输入进一个Hourglass的图像尺寸只有64*64,只不过在进入到每一个Hourglass之前,图像会先经过1个7*7的卷积,再加最大池化操作,用以将图像分辨率从256降到64.

2.1.3 Stacked Hourglass with Intermediate Supervision

了解清楚了Residual Module后,我们再回过头来看Hourglass Module,显然其是一个递归结构,因此我们先来看一下一阶的模块示意图【1】,

一阶示意图.jpg

其中Res就是上面说的Residual Module,Up Sample就是上采样。这个图大家应该很好理解了~而且可以发现,整一个图就是一个翻版的Residual Module,而多阶的Hourglass Module就是把虚线框中的块递归的替补为一个一阶的Hourglass Module,这里再盗一张4阶的示意图【1】,

四阶示意图.jpg

因此整一个栈结构的Hourglass,就达到了一种重复自上而下,自下而上提取特征的目的,当然,整个架构的核心关键点就是如何在中间生成的热图上去计算损失(The key to this approach is the prediction of intermediate heatmaps upon which we can apply a loss.)

这里作者是在每一个Hourglass模块后面都添加了一个中间监督,用于计算loss,如下图所示,

中间监督的位置.jpg

而最终的预测也是在经过各个阶段的Hourglass模块后,再生成的。因此该预测的结果能同时结合局部和全局的信息。至于loss的返向传播问题,这里我的理解一开始也不到位,具体看知乎上大神们的讨论如下,

loss函数传播问题.jpg

这里也借用论文中的话,来说明运用这种栈结构的好处,

Local and global cues are integrated within each hourglass module, and asking the network to produce early predictions requires it to have a high-level understanding of the image while only partway through the full network

还有值得一提的就是,Hourglass模块之间的参数是不共享的,但是每一次计算loss的时候,用的是一个GT。

至此,整一套Stacked Hourglass网络就已经解释清楚了。

2.2 训练细节

具体的训练细节本文不展开说了,有兴趣的同学可以深入研究一下,总的来说问题还是有的,比如多人问题,遮挡点问题等,这里贴一张该架构在MPII数据集上的表现,

实验结果呈现.jpg

------------------第三菇 - 总结------------------

3.1 总结

到这里,整篇论文的核心思想已经说清楚了。本论文主要是提出了一种可以用于人体关键点检测的Stacked Hourglass网络架构,并实验证明了其可行性,为后续发展奠定了基础

简单总结一下本文就是先罗列了一下该论文的摘要,再具体介绍了一下本文作者的思路,也简单表述了一下,自己对整个Stacked Hourglass网络架构的理解。希望大家读完本文后能进一步加深对该论文的理解。有说的不对的地方也请大家指出,多多交流,大家一起进步~😁

参考文献:
【1】https://zhuanlan.zhihu.com/p/45002720

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 158,117评论 4 360
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 66,963评论 1 290
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 107,897评论 0 240
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 43,805评论 0 203
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 52,208评论 3 286
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 40,535评论 1 216
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 31,797评论 2 311
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,493评论 0 197
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,215评论 1 241
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,477评论 2 244
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 31,988评论 1 258
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,325评论 2 252
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 32,971评论 3 235
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 26,055评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,807评论 0 194
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 35,544评论 2 271
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 35,455评论 2 266

推荐阅读更多精彩内容