Simple Baselines for Human Pose Estimation and Tracking
介紹
微軟神作,pose track 的新base line
比ICCV Pose track 冠軍在mAP上高15個點,在MOTA上高6個點
姿態估計
一個簡單的ResNet 結構
- 三個卷積層+BN+ReLU
- 中間一個1*1的卷積層產生pose的heatmap
- 後面接了3個反捲積和卷積交替的網路獲得高解析度的heatmat
- 使用Mean Squared Error(MSE) loss, 目標的heatmat 是通過在目標位置附近使用一個2D高斯分佈。
對比另外兩種主流獲取關鍵點heatmap 的架構:
左邊的是Hourglass框架:
Newell, A., Yang, K., Deng, J.: Stacked hourglass networks for human pose estimation. In: European Conference on Computer Vision, Springer (2016) 483-499
右邊的是Cascaded pyramid network(CPN), COCO2017 關鍵點挑戰的領先方案:
Chen, Y., Wang, Z., Peng, Y., Zhang, Z., Yu, G., Sun, J.: Cascaded pyramid network for multi-person pose estimation. arXiv preprint arXiv:1711.07319 (2017)
論文中,作者指出這三種框架中,本文所提更簡潔,從結果來看,本文方法雖然簡單,但是結果棒棒的。作者沒有指明為嘛他們的簡單網路實現姿態估計的效果更好。結果對比如下圖所示
姿態跟蹤
問題描述:
前一幀檢測結果以及ID已經確定:
當前幀的檢測結果已經有了,確定當前幀的ID:
論文裡首先分析了ICCV'17 PoseTrack 挑戰冠軍是怎麼做的:
Girdhar, R., Gkioxari, G., Torresani, L., Paluri, M., Tran, D.: Detect-and-track:Efficient pose estimation in videos. arXiv preprint arXiv:1712.09184 (2017)
- 首先對每一幀用Mask-RCNN估計人體姿態
- 然後在幀間進行線上的跟蹤,使用的是一個貪婪的二分匹配演算法:
- 對於前一幀和當前幀的結果進行相似計算
- 對進行排序,選擇相似度最高一對,繼承的ID,然後這兩個結果從集合中剔除
- 在剩下的集合元素中繼續找相似度最高的匹配,重複2,直到沒有了
- 在當前幀的結果中,如果還有剩餘沒有匹配的,就各自發一個新的ID
本文參考這種做法,但在細節上又兩點不同:
- 本文的人體框有兩種來源,一種是當前幀的檢測結果(Mask-RCNN),另外一種的上一幀的結果,通過光流wrap到當前幀的,如下圖所示,右邊圖中,黑色框的當前幀檢測結果,藍色的是上一幀wrap過來的。這樣做是為了彌補當前幀檢測漏檢問題。
給定上一幀的結果,以及兩幀間的光流,估計上一幀的目標在當前幀的結果:
- 通過光流把上一幀的關節點wrap到當前幀
- 用一個適當擴大的邊界框包含該目標在當前幀的關鍵點
- 另外是兩個框的相似計算,提出使用一個基於流的姿態相似度量指標
首先介紹兩種可以參考的相似度度量:
- 使用邊界框的IOU去定義,會在目標快速運動時產生問題,IOU比較低
- 一個更細粒的度量是姿態相似,姿態相似計算兩個人體之間同一關節的距離 , One Keypoint Similarity(OKS),這方法的問題在於人的姿態是會變化的和前面的IOU相似
從上面的warp結果,我們得到了幀k目標在幀l的目標,顯然這個通過光流wrap得到的蘊含了該目標在當前幀應有的位置以及樣子
給定幀k的一系列目標,和幀l的一系列目標,基於流的姿態相似度度量定義為:
由於遮擋問題,相鄰兩幀的wrap並不能很好的解決由於遮擋產生的丟失問題,因此需要通過多相隔幀進行wrap。
最後的演算法流程圖
結果:
COCO-Pose Estimation:達到頂尖,提升不多
Pose-Track - Pose Estimation: 達到頂尖,高10個點,重新整理了baseline
Pose-Track - Pose Track: 達到頂尖,比baseline高6個點
重點看這個warp對於結果的影響從結果上看,通過wrap雖然不能改善精度,但是召回提升還是特別明顯的,在不同的檢測框架下均有5到6個點的提升