天天看點

【論文閱讀筆記】Multi-Scale Structure-Aware Network for Human Pose Estimation

論文位址:https://arxiv.org/abs/1803.09894

論文總結

  本文的主要貢獻是提出了一種結構損失的損失函數,将幾個實體相連的肢體關鍵點連接配接起來,用于人體姿态估計。肢體是我們所認知的人體結構先驗,本文将其利用了起來。可以利用身體結構先驗,從可見關鍵點得到不可見關鍵點的線索。

  本論文的改進了目前的深層conv-deconv的 hourglass 模型,有四點改進:(1)

多尺度監督想法的實踐

,通過結合跨尺度的特征heatmaps來加強身體關鍵點的上下文資訊;(2)

多尺度回歸網絡

,對多尺度特征的結構比對進行全局優化;(3)

結構感覺損失(structure-aware loss)

,用在中間監督和回歸中,用于改進關鍵點和其領域關鍵點的比對,進而推斷出高階的結構比對;(4)關鍵點masking 訓練方案,可有效地增強被遮擋關鍵點的魯棒性,通過相鄰比對。這些改進,有效地在當時提升了算法的尺度變化、遮擋和多人場景存在的問題。

  本文的整體網絡由兩個網絡組成:多尺度監督網絡(multi-scale supervision network,MSS-net)和多尺度回歸網絡(multi-scale regression network)。其中MSS-Net,使用layer-wise loss在每個deconv上,以監督各個layer上的scale-specific特征。其實就是多尺寸監督,而不是hourglass論文使用的相同尺度的監督,用于學習多尺寸特征。MSR-Net,将來自MSS-Net的多個多尺度keypoint heatmap輸出給stacks起來,以得到一個全局關鍵點回歸。

  本文的網絡結構入下圖所示。前面是堆疊的MSS-Net,後面使用MSR-Net回歸關鍵點。

應該是在MSS-Net使用結構損失,作者的假設是MSS-Net的輸出很可能不是高斯的響應,可能對應多個關節點,這是Hourglass的缺陷問題。

在此同時,在MSS-Net的每個deconv上都是用layer-wise的中間監督。

【論文閱讀筆記】Multi-Scale Structure-Aware Network for Human Pose Estimation

論文介紹

  當時最新的hourglss更趨向于過拟合某個特定尺寸,本文介紹的方法可以改善尺寸不穩定問題,利用多尺寸的監督和結合多尺度特征的預測。作者的假設是,在MSS-Net的後面使用結構損失作為中間監督,在MSS-Net的每個deconv上使用多尺寸監督,這樣子,在MSR-Net上就可以得到所有尺度的heatmap,就有了全局一緻的姿态。這樣的MSR-Net不僅比對了單獨的關鍵點,也比對了相鄰關鍵點的成對一緻性。

  低分辨率産生的heatmap可以相當于高分辨率的attention,如下圖所示,可以供以指導refine的方向。這應該也是MSR-Net後面多尺寸監督再concat起來的思想的來源。下圖中,a為各尺度下的heatmap,b為上采樣heatmap的變化,可看到相對于尺度變化,其heatmap響應值變化更集中,這也增加了準确率。c為對應的人類骨骼拓撲圖。

【論文閱讀筆記】Multi-Scale Structure-Aware Network for Human Pose Estimation

  多尺度監督的損失 L M S L_{MS} LMS​,就是所有尺度上的 L 2 L_2 L2​損失的和: L M S = 1 N ∑ n = 1 N ∑ x , y ∥ P n ( x , y ) − G n ( x , y ) ∥ 2 L_{MS}=\frac1N\sum_{n=1}^N\sum_{x,y}\|P_n(x,y)-G_n(x,y)\|_2 LMS​=N1​n=1∑N​x,y∑​∥Pn​(x,y)−Gn​(x,y)∥2​

  下圖是各個結構的某關鍵點的輸出。a是MSS的關鍵點預測,b是對應a預測的MSS的heatmap,c是MSR的關鍵點,d是對應MSR的heatmap。

【論文閱讀筆記】Multi-Scale Structure-Aware Network for Human Pose Estimation

  當網絡較深的時候,會出現梯度消失現象,可以使用中間監督來緩解。本文設計出了

結構損失

,其借鑒來源于人體骨骼拓撲結構,将人體骨骼結構中實體相連的關鍵點結合起來作為連接配接的關節點。結合起來的關鍵點設計如下圖所示,有三元關鍵點結合(手臂和腿部,骨盆可以先不三元)和兩元關鍵點結合。

【論文閱讀筆記】Multi-Scale Structure-Aware Network for Human Pose Estimation

  損失函數就變得如下面公式所示,在兩個地方使用結構損失:(1)在MSS-Net中作為中間監督,去強迫使用全局資訊定位局部關鍵點;(2)MSR-Net尋找全局的姿态配置。下面的公式中, N N N為關鍵點的數量, P n P_n Pn​表示為單獨的關鍵點, P S n P_{S_n} PSn​​表示與此點連接配接的關鍵點對。 L M S = 1 N ∑ n = 1 N ∥ P n i − G n i ∥ 2 + α ∥ P S n i − G S n i ∥ 2 L_{MS}=\frac1N\sum_{n=1}^N\|P_n^i-G_n^i\|_2+\alpha\|P_{S_n}^i-G_{S_n}^i\|_2 LMS​=N1​n=1∑N​∥Pni​−Gni​∥2​+α∥PSn​i​−GSn​i​∥2​

  在訓練的時候,作者開發了新的關鍵點masking資料增強方案來增加訓練網絡的遮擋能力,關鍵點的遮擋是影響姿态估計性能的一個重要方面。如下圖所示,有幾種不同的遮擋:被東西遮擋、自遮擋、被其他人遮擋。(a)表示左手腕被遮擋住了,但可以通過可見關鍵點的連接配接結構來估計左手手腕的關鍵點定位。©表示如果有其他人考的比較近,也會造成很大的麻煩。在這種情況下,傳統的資料增強方法,如常用的flip、随機裁剪、顔色抖動等都是無效的。

為解決這一問題,作者提出了一種關鍵點masking方法,通過在圖檔上複制和粘貼關鍵點的貼片(patches)來增強資料,如下圖(d)所示,其主要思想是生成關鍵點遮擋的訓練樣本和人工插入的關鍵點,進而有效提高網絡對這些極端情況的學習能力。
【論文閱讀筆記】Multi-Scale Structure-Aware Network for Human Pose Estimation

  兩種生成關鍵點遮擋樣本的方法:(1)如上圖(b),複制背景的patch放在一個關鍵點上,這能有效模拟關鍵點遮擋;(2)如上圖(d)所示,複制身體關鍵點patch在人體附近的北京和是哪個,模拟多人存在的情況。但這種資料增強會導緻多個相同的關鍵點patches,是以成功的姿态估計方法必須依賴于某種結構推理和知識。

實驗和分析

  訓練的時候,先用 5 e − 4 5e^{-4} 5e−4的學習率訓練MSS-Net 150 150 150個epoch,當性能不再增長的 8 8 8個epoch後降低 5 5 5倍學習率訓練。在訓練MSR-Net時,需要固定MSS-Net的參數進行訓練。最後,用Keypoint Masking 訓練75個epochs。輸入圖檔通過crop後,采用 256 ∗ 256 256*256 256∗256的像素輸入。

  在FLIC資料集與Graphical model、CPN、Hourglass的對比:

【論文閱讀筆記】Multi-Scale Structure-Aware Network for Human Pose Estimation

  在2018年3月15日的時候,與當時最好的模型,在MPII上的對比。

【論文閱讀筆記】Multi-Scale Structure-Aware Network for Human Pose Estimation

繼續閱讀