在這項工作中,我們建立了RGB圖像和人體surface-based的表示之間的密集對應關系,我們稱之為密集人體姿態估計。我們首先通過引入高效的annotation pipeline來收集出現在COCO數據集中的5萬人的密集對應關系。然后,我們使用我們的數據集來訓練基於CNN的系統,“in the wild”實現密集的對應關系,也就是背景,遮擋和尺度變化。我們通過訓練能夠填補缺失的ground truth值的“inpainting”網絡來提高我們的訓練集的有效性,並報告過去可以實現的最佳結果方面的明顯改進。我們試驗用全卷積網絡和region-based的模型,並觀察后者的優越性;我們通過cascading進一步提高准確性,獲得實時提供高精度結果的系統。
這項工作旨在通過建立從2D圖像到3D人體surface-based的密集對應關系,進一步推動人類對圖像理解的包絡。我們可以將此任務理解為涉及其他幾個問題,例如物體檢測,姿態估計,局部和實例分割,作為特殊情況或先決條件。解決這個問題的應用需要超越平面標志性定位(如圖形,增強現實或人機交互)的問題,也可能成為實現基於3D物體理解的基石。
將單個RGB圖像視為輸入,基於此我們建立了surface points和image pixels之間的對應關系。
我們的工作集中在可以說是最重要的視覺類別 - 人類。
https://www.jiqizhixin.com/articles/20180209 機器之心
該論文的方法:采用全面的監督學習方法,ground-truth是correspondences(RGB圖像與人體的surface model)翻譯成一對聯系???我們發明了一種標注流程(annotation pipeline)來收集ground-truth,來源於COCO數據集中的5萬個人,標注后的數據集稱作DensePose-COCO。
DenseReg針對人臉,DensePose則針對復雜度更高、更靈活的人體姿態。與Mask-RCNN相結合,實時性很高。包含數十個人的復雜場景:在GTX 1080 GPU上,我們的系統運行對於240×320圖像為每秒20-26幀或對於800×1100圖像為每秒4-5幀。
該工作的貢獻點:
- 第二節。DensePose-COCO數據集。發明一種標注流程(annotation pipeline)來手動收集COCO數據集人體與SMPL模型之間的對應關系,即ground-truth。3D信息。
- 第三節。?。我們使用結果數據集來訓練基於CNN的系統,通過回歸任何image pixels處的身體surface coordinates,在in the wild提供密集的coordinates關系。基於DeepLab(語義分割)與MaskRCNN(目標檢測),觀察region-based模型在完全卷積網絡上的優越性????改進現有模型。
- 第四節。探索建構數據集的不同方式?。監督信號被定義在每個訓練樣本隨機選擇的圖片像素子集上,使用這些稀疏的對應關系來訓練‘teacher’網絡,該網絡可以在圖像域的其余部分“inpaint(恢復、去水印)”監督信號,有效提高了性能。
我們的實驗表明,密集的人體姿態估計在很大程度上是可行的,但仍有改進空間。我們用一些定性結果和方向來總結我們的論文,說明該方法的潛力。
二、DensePose-COCO數據集
5萬個人,500萬個手工標注(對應關系)。
2.1標注系統
目標:建立2D圖像到surface-based的對應關系。該論文提出一種標注流程(annotation pipeline)能高效率地收集image-to-surface的對應關系(即標簽)。
第一階段:,如圖2所示,標注着描繪身體區域(語義分割,頭部、軀干、上/下臂、上/下腿、手、腳),為了簡化UV參數化,將各區域設計成與平面同構,將肢體和軀干分成下/上和前/后部分。
對於頭、手、腳,使用SMPL模型提供的UV場。對於其他部分,通過應用於成對測地距離的多維縮放獲得展開。得到24區域的UV場,如圖1右側所示。
標注者只需關注服裝背后的身體部分,這樣標注不會隨着服裝變化而復雜化。第二階段:使用Kmeans獲得一組大致等距的點對每個區域進行采樣,標注者將這些點與surface對應。采樣點的數量根據區域大小而變化,最多為14。為了簡化任務,通過相同身體部位的6個預渲染視圖來展開surface,並允許在任何一個上面放置標志,如圖3所示。這樣便於標注者選擇一個最為方便的視角。
當標注者在任何一個視圖上標點時,對應坐標點會同時顯示在其他視圖上。
通過我們的工作,區域分割與image-to-surface對應,他們的標注工作的耗費差不多,而后者明顯有更高的復雜度。效果如圖4所示。
2.2標注者的准確性
根據黃金標准來評估標注系統的准確性。給標注者提供合成圖像,讓其標注,測試他們的准確率。圖像k的第i個點,真實值與標注值的誤差:
g是測地線距離(geodesic distance)。誤差情況如圖5,可以看出頭、手、腳等可以幫助定位的地方誤差較小,被衣服覆蓋住的地方誤差較大。
2.3評估
逐點評估。通過正確點比例(RCP,Ratio of Correct Point)評估整個圖像的准確率,如果測地線距離小於某個閾值則定義為正確點。
逐實例評估。通過關鍵點相似度(OSK,object keypoint similarity)評估一個人的姿態。引入測地線點相似度(GPS,geodesic point similarity),作為對應點的匹配分數。
Pj是實體j的點集,k是歸一化參數。k=0.255,使得誤差大於30cm的時候,單點GPS=0.5。
三、Dense Human Pose Estimation密集人體姿態估計
目標:訓練一個能預測image pixels和surface points之間密集對應關系的深層網絡。
DenseReg方法 + Mask-RCNN架構 + 改進 = DensePose-RCNN系統
級聯拓展,進一步提高准確率。基於interpolation(插補、添加)的方法,允許我們將稀疏監督信號變為更密集更有效的變體。
3.1Fully-convolutional dense pose regression全卷積密集姿態回歸
最簡單的架構使用完全卷積網絡(FCN),該網絡結合了分類和回歸任務,類似於DenseReg。在第一步中,我們將一個pixel歸類為屬於背景或者幾個區域部分中的一個,它們提供surface coordinates的粗略估計。這相當於使用標准交叉熵損失進行訓練的標簽任務。第二步,回歸系統指出每個區域中的pixel的確切coordinates(坐標)。由於人體結構復雜,因此我們將其分解為多個獨立的身體區域,並使用局部二維coordinates系對每個區域進行參數化,以識別該表面部分上任何節點的位置。
首先粗略估計像素所屬的位置,然后通過一些小規模校正將其與精確位置對齊。具體地,圖像位置i處的坐標回歸可以如下公式化
在第一階段,將位置i分配給身體區域c*(要滿足最高后驗概率),由分類分支計算得到。在第二階段,使用回歸器Rc* 把點i放置於區域c*的UV坐標參數化中?。在該任務的例子中,c可以取25個值(包括背景),意味着Px是一個25路分類器,之后訓練24個回歸函數Rc,每個回歸函數提供點i在這個身體區域上的2D坐標。在訓練時,我們使用交叉熵損失進行區域分類,並使用平滑的L1損失來訓練每個回歸器。如果像素在特定身體區域內,則僅對該區域考慮回歸損失。
3.2Region-based Dense Pose Regression基於區域的密集姿態回歸
使用FCN(全卷積網絡)使得該系統特別容易訓練,但需加載相同的多任務深度網絡,包括區域分割和關鍵點定位,同時需要尺度不變性(這對於COCO圖像人體來說變得很有挑戰性)。所以該論文采用region-based的方法,其中包括級聯的提案區域(ROI,regions-of-interest)[34,15],通過ROI-pooling提取區域自適應特征[16,15],並將結果特征提供給一個區域特定的分支。復雜的體系結構被分解為可控模塊,並通過ROI-pooling實現尺度選擇機制(scale-selection)。同時,他們也可以以端到端的方式聯合訓練[34]。
我們采用[15]中介紹的設置,涉及構建特征金字塔網絡[25]的特征以及ROI-Align pooling(這些對於需要空間精度的任務來說非常重要)。我們將這種架構適應於我們的任務,以便在每個選定區域內獲得密集的區域標簽(part labels)和坐標(coordinates)。
如圖7所示,在ROI-pooling之上引入一個完全卷積網絡FCN,生成一個分類(classification)和一個回歸器(regression head),用於提供區域分配(part assignment)和坐標預測(part coordinates predictions),如DenseReg。為簡單起見,我們使用與MaskRCNN的關鍵點分支完全相同的體系結構,由8個交替的3×3完全卷積和512個通道的ReLU層組成。在這個分支的頂部,有與FCN baseline 類似的分類和回歸損失,但在此處是proposed region內裁剪的監督信號。
預測時,我們的系統使用GTX1080顯卡在320x240圖像上以25fps運行,在800x1100圖像上以4-5fps運行。
3.3Multi-task cascaded architectures多任務級聯架構
迭代細化的思想已廣泛應用[ 45,30 ],所以該處也采用級聯架構。級聯結構為后續階段提供更好的上下文context,並通過深度監督的好處提升效果[24]。
如圖8所示,並不僅僅局限於單個任務中的級聯,而是利用來自相關任務的信息,例如關鍵點估計和實體區域分割(這些信息已經被Mask-RCNN架構成功解決[15])。這使我們能夠利用任務協同作用和不同監督來源的互補優點。
3.4Distillation-based ground-truth interpolation
基於升華的ground-truth插值(把ground-truth進行插值,變為密集型,比喻成升華Distillation)
盡管我們的目標是在測試時進行密集的姿態估計,但在每個訓練樣本中,我們僅注釋pixel的稀疏子集,大約每個人100-150個。這在訓練過程中並不一定會造成問題,因為我們可以使得我們的分類/回歸損失忽略了不收集 ground-truth對應點的點,只需將它們不包含在每pixel點損失的總和中[39]。但是,我們注意到,通過對監督信號的數值“inpainting(恢復)”原本未注釋的位置,我們獲得了更好的結果。為此,我們采用了一種基於學習的方法,首先訓練一個“teacher”網絡(如圖9所示),在觀察到的地方重建ground truth值,然后將其部署在完整圖像域上,產生密集的監督信號。特別是,我們只保留網絡對標記為前景的區域的預測,如人類收集的部分mask所示,以便忽略背景區域上的網絡錯誤。
四、實驗
訓練集48K人,測試集2.3k人(1.5k張圖像)。
訓練集:COCO-train partition,測試集:COCO keypoints-minival partition。。。作者團隊目前正在收集COCO數據集的其余部分的注釋標簽,將允許進行競爭模式評估。
在評估4.3中的“in the wild”密集姿態估計之前。在4.1節使用受限的“單人”設置,使用ground-truth boxes裁剪的輸入圖像。這會影響檢測性能,並為我們提供受控設置,以評估COCO-DensePose數據集的有用性。
4.1 Single-Person Dense Pose Estimation單人密集姿態估計
在4.1.1小節將COCO-DensePose 數據集與其他密集姿態估計監督源進行比較,然后在4.1.2小節比較基於模型的系統[2]與我們經過有區別訓練系統的性能。[2]的系統沒有使用與我們的模型相同數量的數據進行訓練; 因此,這種比較主要是為了顯示我們用於判別訓練的大規模數據集的優點。
4.1.1 Manual supervision versus surrogates
首先評估COCO-DensePose相對於現有半自動或合成監督信號而言,是否提高了密集姿態估計的准確性。
半自動方法用於[22]的“Unite the People”(UP)數據集,其中人類標注者驗證了將SMPL 3D可變形模型[27]擬合到2D圖像的結果。然而,模型擬合通常在存在遮擋或極端姿勢時失敗,並且永遠不能保證完全成功-例如,即使在去掉大部分擬合結果之后,腳仍然經常在[22]中未對准。由於ground-truth本身可能存在系統誤差,因此這既模糊了訓練集,又模糊了評估集。
合成的ground-truth可以通過繪制圖像使用基於表面的模型來建立 [ 32,31,35,11,5,29 ]。這最近已應用於[ 43 ]的SURREAL數據集中的人體姿勢,其中SMPL模型 [ 27 ]使用CMU Mocap數據集構成 [ 28 ]。然而,由於渲染圖像和自然圖像的統計數據不同,協變量偏移可能會出現。
由於這兩種方法都使用與我們工作中使用的相同的SMPL曲面模型,因此我們可以直接比較結果,也可以組合數據集。我們在SMPL模型上為UP數據集和60k SURREAL模型的所有8514個圖像渲染我們的密集坐標和密集部分標簽以進行比較。
在圖11中,我們使用Deeplab類型的架構,評估了使用不同數據集訓練的stride=8的ResNet-101 FCN的測試性能。在訓練期間,我們使用縮放,裁剪和旋轉來擴充來自所有數據集的樣本。我們觀察到替代數據集的性能較差,而它們的組合能產生更好的結果。盡管如此,它們的性能遠低於通過我們的DensePose數據集訓練獲得的性能,而將DensePose與SURREAL相結合會導致網絡性能的適度下降。基於這些結果,我們完全依靠DensePose數據集進行剩余實驗中的訓練,即使域適應可能在未來使用[9] 利用合成的監督來源。
圖11表格中的最后一行(DensePose*)表示我們通過使用COCO人工分割掩模獲得額外的性能提升,以便在訓練和測試期間以平均強度替換背景強度,並且還通過在多個尺度上評估網絡並對結果取平均值。顯然,使用其他方法的結果不能直接比較,因為我們使用其他信息來刪除背景結構。盡管如此,由此產生的預測與人類表現更接近 - 因此我們將其作為“teacher網絡”來獲得對Sec4.2中實驗的密集監督。
4.1.2 FCNN- vs Model-based pose estimation
在圖 11中, 我們將我們的方法與[2]的SMPLify流水線進行比較,該流水線將3D SMPL模型擬合到基於預先計算的一組地標點的圖像。我們使用[ 22 ]提供的代碼,將DeeperCut姿態估計界標檢測器[ 17 ]用於14個標志性結果,並使用[ 22 ]中提出的91個標志性替代方案。請注意,這些標志性探測器是在MPII數據集上訓練的。由於整個身體在MPII數據集中可見,為了公平比較,我們分別評估可見16/17或17/17地標的圖像以及整個測試集。我們觀察到,雖然速度快了幾個數量級(0.04-0.25“對比60-200”),但自下而上的前饋方法在很大程度上優於迭代的模型擬合結果。如上所述,這種准確性的差異表明我們可以使用DensePose-COCO進行歧視性訓練。
4.2. Multi-Person Dense Pose Estimation多人姿態估計
確定了DensePose-COCO數據集的優點后,我們現在轉向研究網絡架構對in-the-wild密集姿態估計的影響。在圖 12是總結結果。
我們首先觀察到,基於FCN的in-the-wild表現(曲線'DensePose-FCN')現在顯着低於圖12中的DensePose曲線。即使我們應用多尺度測試策略,使用不同尺度的輸入圖像融合多次運行的概率[47],FCN也不足以處理對象尺度的變化。
然后我們通過切換到基於區域的系統,在曲線'DensePose-RCNN'中觀察到性能的巨大提升。到目前為止的網絡已經使用手動注釋的稀疏點集進行了訓練。在曲線'DensePose-RCNN-Distillation(升華)'中,我們看到使用由我們的DensePose傳遞的密集監督信號訓練集上的系統產生了實質性的改進(由稀疏信息插值出密集信息)。最后,在'DensePose-RCNN-Cascade'中,我們展示了由於引入級聯而實現的性能:Sec3.3幾乎匹配'DensePose* '圖12的曲線 。
這是一個非常積極的結果:如4.1節所述,'DensePose* '曲線對應於一項非常特殊的評估,包括:(a)在ground-truth盒周圍裁剪物體並修復它們的比例(b)通過使用ground-truth物體mask來消除訓練和測試中的背景(c)尺度上的集合。因此,它可以理解為我們在in-the-wild操作時可以獲得的上限。我們看到我們最好的系統略低於該性能水平,這清楚地揭示了我們引入的三個修改的功效,即基於區域的處理,修復監督信號和級聯。
在表1中,我們報告了第2節中描述的AP和AR指標。 因為我們在架構中改變了不同的選擇。我們使用ResNet-50和ResNet-101骨架進行了實驗,並觀察到大型網絡(表1中的前兩行)的性能僅有微不足道的提升 。因此,我們的其余實驗基於Resense-50-FPN版本的DensePose-RCNN。表1中間部分顯示的以下兩個實驗 表明了對多任務學習的影響。
使用掩碼或關鍵點分支擴充網絡可以改善這兩個輔助任務中的任何一個。表1的最后一部分 報告了通過使用圖8的網絡設置級聯獲得的密集姿態估計的改進 。特別是從關鍵點分支中加入額外的指導可以顯着提高性能。
4.3. Qualitative Results定性結果
在本節中,我們提供了額外的定性結果,以進一步證明我們方法的性能。在圖 13中,我們顯示了由我們的方法產生的定性結果,其中對應性是根據“魚網”可視化的,即疊加在人體上的估計的UV坐標的等值線。正如這些結果所表明的,我們的方法能夠處理大量的咬合,縮放和姿勢變化,同時還能成功地將衣服或衣服等衣服背后的人體產生幻覺。
在圖14中,我們演示了一個簡單的面向圖形的應用程序,我們將從[ 43 ]取得的紋理RGB強度映射到估計的UV身體坐標 - 整個視頻可以在我們項目的網站http://densepose.org上找到。
5. Conclusion結論
在這項工作中,我們使用有區別的訓練模型解決了密集的人體姿勢估計的任務。我們引入了COCO-DensePose,這是一個大型的地面實況圖像表面對應數據集,並開發了新的架構,使我們能夠以每秒多幀的速度恢復圖像與體表之間高度精確的密集對應關系。我們預計這將為增強現實或圖形中的下游任務鋪平道路,同時也幫助我們解決將圖像與語義3D對象表示相關聯的一般問題。