DensePose:Dense Human Pose Estimation In The Wild 論文閱讀筆記
一、本文主要是Facebook AI 和INRIA 聯合出品,基於RCNN架構,以及Mask RCNN的多工結構,開源http://densepose.org
二、主要工作分為三點
1:標註了一個新的資料集,基於coco資料集,增加了uv標註,該資料集開源。
2:設計了一個框架可以用於輸出uv座標。
3、設計了一個“teacher”結構的監督網路訓練方式。
三:資料集介紹:
1、名稱“COCO-Densepose-dataset”。
2、圖片來源於MSCOCO,挑選了50K個人,標註了近5百萬的標註點。測試集“1.5k images,2.3k humans”,訓練集“48k humans”
3、文章中還介紹了,他們的標註系統,以及標註採集方式,同時也點了下對標註進行評估。他們在對2D影象進行標註的時候,主要是去標註“人體表面的一些‘頂點’”比如右鼻孔外側的左下角.2D與3D體表模型點對應關係如下圖中task2所示。“標註的時候讓標註者 假設透視衣服”,對標註者標註每個部位的時候提供6個參考示意圖。
4、該資料集還包含了人體部位分割。
5、標註上了UV座標之後,可以將一個3D人物的表面經過變換投影到2D影象上,並且會根據2D影象中人物的姿態做適當的變換,從而使得3D模型的表面可以做到緊貼2D人物。
這張圖主要告訴我們,人類標註者標註的平均誤差,以及誤差大小的分佈情況。
三、Densepose Evaluation
Pointwise evaluation:
這個內容主要適用於計算在整個圖片樣本域上的ratio of correct point(RCP),通過設定閾值,如果估計點與gt點的geodesic distance小於閾值就記為正確。同時也計算AUC,分為AUC10,AUC30,AUC10在單人和多人中都有使用。
Per-instance evaluation:
類似於OKS(object keypoint similarity):本文采用了geodesic point similarity(GPS)用於匹配點的打分。
上面公式中,Pj是gt集合對應於每一個人,ip是對於每一個點的估計的位置,k=0.255.
會使用AP以及AR,設定閾值從0.5到0.95,代表了距離大約是0~30cm。
資料集介紹這部分還不是很清楚,等我用過之後,會更新一下。
三、框架
該模型是基於caffe2框架的。
1、輸出三個內容 身體部位分割,U 以及 V
其實就是去將2D影象中人的表面的畫素投影到3D人體表面上,也可以在估計出影象中人體的UV之後,將3Dmodel通過變換,將空間座標轉換為UV座標之後,貼到影象上。
截至到這裡,基本的densepose也就這樣了,在第一階段獲得了ROI之後,經過ROIAlign之後,去迴歸三個部分。
a.首先本文給出了人類標註的錯誤分佈情況圖,也是為了能讓大家意識到資料集存在著一些不可避免地錯誤,也是為了能跟後面的model的結果作比較。
b.正如網路結構圖所示,在densepose這部分採用了FCN結構,這一點也是因為以前有人證明過卷積核擁有著不錯的分類功能。在網路的細節上,採用了局部化處理迴歸,首先進行二分類,得出前景與背景,然後將前景再進行細分成各個不同的身體部位進行分別迴歸,因此也會建立區域性的二維座標系。
其實他迴歸這些UV座標也是分了兩個步驟的,第一個步驟先要去進行身體部位的迴歸分類,分為了24+1類,然後再對每一個去迴歸出U,V兩個feature maps。
c、
利用了多工的Multi-task cascaded architectures結構,將 mask 和 keypoint的輸出特徵 與 densepose 的特徵 互相融合訓練。而且也可以看出來使用了多stage的思想,進行“中繼監督”訓練。
d、“teacher net” 對整體進行輔助訓
五、實驗結果