Stacked Hourglass Networks for Human Pose Estimation網絡
key words:
人體姿態估計 Human Pose Estimation 給定單張RGB圖像,輸出人體某些關鍵點的精確像素位置.
堆疊式沙漏網絡 Stacked Hourglass Networks
多尺度特徵 Features processed across all scales
特徵用於捕捉人體的空間關係 Capture spatial relationships associated with body
中間監督 Intermediate supervisionide
圖 - Stacked Hourglass Networks由多個 stacked hourglass 模塊組成,經過重複進行bottom-up, top-down推斷以估計人體姿態.spa
沙漏設計 Hourglass Design.net
動機:捕捉不一樣尺度下圖片所包含的信息.
局部信息,對於好比臉部、手部等等特徵頗有必要,而最終的姿態估計須要對總體人體一致理解. 不一樣尺度下,可能包含了不少有用信息,好比人體的方位、肢體的動做、相鄰關節點的關係等等.設計
Hourglass設計:3d
圖 - 單個hourglass模塊示例. 圖中個方框分別對應一個residual模塊. 整個hourglass中,特徵數是一致的.rest
hourglass設置:
首先Conv層和Max Pooling層用於將特徵縮放到很小的分辨率;
每個Max Pooling(降採樣)處,網絡進行分叉,並對原來pre-pooled分辨率的特徵進行卷積;
獲得最低分辨率特徵後,網絡開始進行upsampling,並逐漸結合不一樣尺度的特徵信息. 這裏對較低分辨率採用的是最近鄰上採樣(nearest neighbor upsampling)方式,將兩個不一樣的特徵集進行逐元素相加.
整個hourglass是對稱的,獲取低分辨率特徵過程當中每有一個網絡層,則在上採樣的過程當中相應低就會有一個對應網絡層.orm
獲得hourglass網絡模塊輸出後,再採用兩個連續的 1×1 Conv層進行處理,獲得最終的網絡輸出.
Stacked Hourglass Networks輸出heatmaps的集合,每個heatmap表徵了關節點在每一個像素點存在的機率.
Residual模塊提取了較高層次的特徵(卷積路),同時保留了原有層次的信息(跳級路)。不改變數據尺寸,只改變數據深度。能夠把它看作一個保尺寸的高級「卷積」層。blog
中間監督 Intermediate Supervision圖片
Hourglass網絡輸出heatmaps集合(藍色方框部分),與真值進行偏差計算。 其中利用1×1的Conv層對heatmaps進行處理並將其添加回特徵空間中,做爲下一個hourglass model的輸入特徵。每個Hourglass網絡都添加Loss層.Intermediate Supervision的做用在[2]中提到:若是直接對整個網絡進行梯度降低,輸出層的偏差通過多層反向傳播會大幅減少,即發生vanishing gradients現象。
爲解決此問題,[2]在每一個階段的輸出上都計算損失。這種方法稱爲intermediate supervision,能夠保證底層參數正常更新。
堆棧沙漏與中級監督 Stack Hourglass with Intermediate Supervision
正如本文開頭所示,網絡的核心結構爲堆疊多個hourglass model,這爲網絡提供了重複自下而上,自上而下推理的機制,容許從新評估整個圖像的初始估計和特徵。實現這一過程的核心即是預測中級熱度圖並讓中級熱度圖參與loss計算。
若是對單一的Hourglass Model進行Intermediate Supervision,監督放在哪一個位置比較合適呢?若是在網絡進行上採樣後提供監督,那麼在更大的全球堆疊沙漏網絡人類姿式估計上下文中,沒法相對於彼此從新評估這些特徵;若是在上採樣以前監督,此時,給定像素處的特徵是處理相對局部感覺野的結果,所以不知道關鍵的全局線索。本文提供的解決方式是repeated bottom-up,top-down inference with Stacked hourglass(圖解在本文文首),經過該方式, the network can maintain precise local information while considering and then reconsidering the overall coherence of the features。
Reference:
[1] https://blog.csdn.net/shenxiaolu1984/article/details/51094959
[2] Wei, S.E., Ramakrishna, V., Kanade, T., Sheikh, Y.: Convolutional pose machines. Computer Vision and Pattern Recognition (CVPR), 2016 IEEE Conference on (2016)
[3] https://blog.csdn.net/zziahgf/article/details/72732220