Exemplar Fine-Tuning for 3D Human Model Fitting Towards In-the-Wild 3D Human Pose Estimation 2020阅读理
? ? ? ? 本文通過EFT方法生成偽3D數據集,只使用該數據集,從頭開始訓練3D姿勢回歸器網絡,該網絡在諸如3DPW等野外基準測試上的表現超過當前的最先進水平例如HMR。
? ? ? ? ?EFT方法可以看作SPIN的改良,即在測試階段,通過2d重投影loss?微調HMR的參數,從而間接調整SMPL系數,使得當前測試樣本在盡可能保留HMR的輸出效果的同時,降低2d?重投影誤差。顯然SPIN則是通過SMPLify接在HMR后面,通過2d重投影loss和?pose相關的先驗直接去擬合SMPL系數,達到降低2d?重投影誤差的效果,但是因為這里的pose先驗采用的其他數據統計得到的,使得這里如何平衡2d loss和pose正則化loss有困難,這也是該論文的一個出發點,認為訓練好的回歸網絡隱含著當前輸入圖像的pose先驗。另外SMPLify的輸入是2d關鍵點,而本文因為優化的是CNN參數,因此輸入的是圖像,相比SMPLify,輸入信息更加豐富,至于論文提到他的這種隱含先驗pose比SMPLify用的固定pose先驗好,就需要實驗證明了。
?
SMPLify?和?EFT?具體對比
eft的優化參數是模型空間,而SMPLify則直接優化?SMPL參數。SMPLify中使用了大量的先驗,如身體交叉約束等。這些約束的權重需要大量的調參,并且泛化效果并不理想。而eft利用預訓練模型空間(認為含有隱含先驗)和圖像信息提供了大量豐富的信息,可以得到更好的SMPL參數。
SMPLify?在擬合3d數據的時候,關于3d這方面主要依賴3D先驗,而這個3D先驗,通常是在實驗室條件下單獨學習,缺乏真實感,并且該先驗和數據項(如2D關鍵點錯誤)之間的平衡很困難。另外SMPLify在優化的時候,迭代修改的是SMPL系數。SMPLify使用的別的數據集得到的先驗,且輸入條件是2d關鍵點。
EFT?在擬合3d數據的時候,關于3d這方面也需要依賴3D先驗,但是和SMPLify不同,他認為那些訓練好的3Dmesh重建網絡模型隱含3D先驗,例如HMR,SPIN。在優化的時候,迭代修改的是網絡權重w,而不是SMPL系數。EFT利用神經網絡回歸器學到的隱式先驗。此外,這個先驗條件是特定的RGB輸入圖像,它包含比2D關鍵點位置更多的信息。
EFT數據集的好處:
1:不使用真實的3d數據集,例如3dpw,hm36,只使用EFT數據集,效果也可以達到SOTA級別。
2:使用我們的3D偽注釋簡化了訓練3D姿勢回歸器,并使其更容易合并其他改進,其中我們探討了兩個。首先,我們對數據增強引入極端的圖像裁剪來訓練回歸器,使得網絡更好地適用于截斷的人體(例如,僅上半身)[52]工作。其次,我們證明了輔助輸入,如彩色編碼的分割地圖[31,32]或DensePose IUV編碼[19],可以進一步提高三維人體姿態估計的準確性,優于之前的最先進的方法[27,58,34,12,43],僅僅通過在COCO數據上訓練。與之前的方法[52,53,67,45]相比,這些技術更容易在偽gt數據集上實現。
?3:?作者認為他的EFT數據足夠好,好得都可以作為benchmark了。對當前?Benchmark(例如3dpw,hm36)做補充,因為EFT數據相比他們更加豐富,存在
整個文章的思路:先后分析了目前基于回歸的mesh重建方法(HMR)的好壞和擬合方法(SMPLify)的好壞。既然回歸有回歸的好,依靠學習能力強大的CNN可以針對每一張圖得到更好的pose信息即3d信息,擬合有擬合的好,依靠在測試階段針對單個樣本進行擬合,可以更好的2d信息。既然都有優點,就綜合一下,顯然SPIN做了一個很好的結合,先基于回歸的CNN得到pose還不錯的SMPL系數結果作為下一步擬合的初始值,可以提升擬合的效果。但是2d loss和先驗loss之間的平衡問題依然還在。因此作者提出了EFT。
EFT優點盤點:
與傳統的擬合方法(1)相比,(1)EFT能夠利用2D關節和RGB圖像I進行估計。(2)CNN提供了一個針對當前輸入圖像的先驗,與其他擬合方法使用的輸入不可知的先驗Lprior相比,該先驗更不容易回歸平均姿態。與回歸方法相比,(1)EFT保持了初始回歸位姿的合理性(通過厲害的隱藏先驗),但降低了二維重投影誤差(擬合的時候,基本只需要控制2d loss,不需要去平衡2dloss?和 對輸入不可知的先驗Lprior)。即使是由于遮擋或不尋常的姿勢而挑戰回歸量的樣本也是如此,這里其實2d loss把控不對,也會出現損害3d信息的危害。?
論文簡述:
人體可以被一個低維度參數模型來表示,該模型涵蓋了身體形狀和運動的變化。參數化人體模型通過少量參數表示人體的形狀和姿態,同時捕捉對稱性和肢體比例等約束條件。三維參數化人體模型被廣泛使用,它是估計人體三維姿態和形狀的有力先驗。其主要思想是通過低維參數對三維人體(包括臉、手和身體)的變形進行建模 :SCAPE-》SMPL-〉SMPL-X等。
這里,我們以SMPL模型[3]為例,盡管可以使用任何其他模型。SMPL參數Θ = (θ,?β)由位姿參數θ形狀參數β組成,位姿參數θ控制24個體關節相對于父關節的旋轉,形狀參數β通過10個主變向控制體的形狀。首先利用形狀參數β求出關節在靜止狀態下的構型,然后根據骨骼層次結構應用關節旋轉Θ得到關節的三維位置J。SMPL還包括一個隨骨架變形的網格組件,但我們在這里忽略它,因為主要的損失約束僅是關節的3D位置J。因此,對我們來說,SMPLJ簡化為一個函數J = M (Θ)。
那么對于Fitting的方法具體怎么做:3d pose先驗約束+好的初始化值,針對單個樣本優化。
給定一個人的圖像I,目標是找到SMPL的參數Θ,使SMPL輸出的J它與目標的姿態相匹配。基于擬合的方法[1,2]采用關節、輪廓、零件標簽等二維幾何線索,優化模型參數Θ,使三維模型與二維線索擬合。例如,假設給定了人體關節的2D位置r。設π為攝像機投影函數,將三維點映射到其二維圖像位置。然后,從二維線索重建三維關節J,達到擬合SMPL模型的目的。
可以發現需要優化的參數為SMPL系數和相機參數π。獲得SMPL系數,通過SMPL的LBS相關內部算法的到關節點J,J通過相機參數投影到圖像空間得到2d點,通過最小化這個2d點與其對應標注的gt,可以達到間接優化SMPL系數的效果,但是顯然只是通過2d監督無法約束到3d坐標的z軸,在沒有對應的3d GT情況下,只能使用人們基于實驗室內統計得到的關于3d pose的各種先驗信息,將這些先驗信息作為約束,越多越好。但是這里很明顯這些先驗趨于一種平均pose,甚至可能僅僅代表實驗室里面那些樣本,但是有總比沒有好。另外擬合方法通常只能在局部進行優化,例如通過梯度下降法,因此成功與否很大程度上取決于初始化的質量[1,2]。這需要特別的步驟來避免糟糕的局部極小值。例如目前有一個一個多階段的方法,首先調整軀干,然后優化四肢在一起)和平衡數據項和多個先驗項之間的權重是至關重要的。
?
那么對于回歸的方法具體怎么做:加入圖像信息,收集真實的3D數據集,加入一個CNN,通過優化整個訓練集獲得一個固定的CNN網絡。
基于回歸的方法直接從原始圖像和關鍵點預測SMPL參數Θ。映射是通過神經網絡Θ = Φw(I)實現的,該神經網絡訓練于室內3D數據集和野外數據集2D數據集的結合,這是通過優化來實現的
基于回歸的方法,因為有真實的3D數據集,所以有更加多樣的標簽,例如SMPL系數,3D點,2D點,pose的各種先驗信息或者約束。
?
這樣通過大量的數據集訓練,CNN獲得了可能的人體姿勢的隱式先驗,為三維重建進行了優化。如果將這個當做先驗,比SMPLify等使用的那種先驗Lprior更強。Lprior是在不同3D數據上分別學習統計得到的,傾向于回歸到均值解。但是不可否認的是,擬合和回歸方法的目標都設計到最小化2d,擬合方法對每個樣本都明確地這樣做,獲得更準確的2D擬合,而回歸方法只在訓練時最小化這種損失,這樣擬合的方法得到結果貼合度會更好些。
為了結合兩者的優點,我們的方法Exemplar Fine-Tuning (EFT)將網絡Φ解釋為3D關節J的重新參數化J = M(Θ) = M(Φw(I)),作為網絡參數w(而不是SMPL參數Θ)的函數。這樣,我們可以將Eq.(1)改寫為
?
即將SMPLify中本來是對smpl系數的優化改成CNN參數的優化,同時刪除了之前SMPLify中的Lprior,因為認為pose先驗已經被網絡隱式捕獲(這剛好也解決了前面討論的Lprior和L2D平衡的難題)。另外一個重點是因為認為預訓練好的3Dmesh重建網絡已經隱含pose的先驗信息,因此在微調CNN的參數的時候,通過第二個數據項控制在預訓練參數w?的附近進行優化,即表示被這個約束控制。
問題1:那么如何確保微調時,在w?的附近變化呢?
當γ值較大的時候,EFT回歸到預訓練回歸網絡對觀測輸入位姿的最佳猜測。因此,在EFT中γ的調節更加容易,并且證明了EFT對γ不敏感。在我們的實驗中,我們通過設置γ = 0來使用EFT來生成偽注釋,因為這個約束可以隱含完成,即使用和之前訓練CNN一樣的局部優化器,而不是使用早期停止來進行正則化,在實踐中,我們使用少于100次的EFT迭代。
問題2:使用這個CNN隱含的pose先驗有啥好處?
??(1)傳統的擬合方法將回到預測先驗隱含的平均姿態,忽略了當前圖像信息,只是輸入2d關鍵點。(2)傳統的擬合方法容易回到預測先驗隱含的平均姿態。
?可以發現(2)和 (3)的公式類似,但是(2)是通過訓練大量參數去學習模型參數w,(3)是針對某一個樣本微調模型參數w,針對下個樣本,模型參數w回回到之前的初始值。
4?結果:
我們考慮了EFT的兩個應用:為原本只有2D注釋的野外數據集創建偽地面真實3D注釋,并對現有3D姿態回歸器的輸出進行后處理以改進它。
實現細節:對于姿態回歸器Φ,我們使用了最先進的[8]SPIN網絡,為了魯棒性,我們將SPIN中使用的透視投影模型改為HMR的弱透視投影,這步不會顯著影響模型效果。對于EFT,我們使用Adam[53]和默認的PyTorch參數優化Eq.(3),當平均2D關鍵點重投影誤差小于3像素時(通常少于50次迭代就足夠了),學習率為5*10- 6,這個學習率足以涵蓋好的和壞的初始化, 盡管輸入的2D關鍵點是手工標注的,但它們仍然包含不可忽略的錯誤。特別是,臀部和腳踝的高度沒有得到一致的標注,導致透視縮短,為了補償,在優化eq.(3)時忽略了髖關節的位置,我們添加了一個損失項來匹配小腿的方向,鼓勵重建連接膝蓋和腳踝的向量的方向。最后,我們通過檢查SMPL形狀參數和2D關鍵點損失的最大值來丟棄樣品,如果這些參數分別大于5和0.01,則丟棄。
數據集:我們使用帶有2D姿態標注的野外數據集:COCO[18]、MPII[39]和LSP[40,41]。我們認為默認的分割也是[15]用于訓練的COCO-Part子集,它只包含完整的12個關鍵點注釋集的實例(閉塞的實例經常會錯過關鍵點)。為此,我們添加了COCO-All,其中包含至少5個關鍵點注釋的所有示例。我們還使用帶有3D姿態標注的數據集,包括H36M[19,54]、MPI-INF-3DHP[20]和Panoptic Studio[21]。由于通常需要多視圖設置來捕捉這種地面真相,這些數據集是在實驗室條件下收集的。我們使用H36M和MPI-INF-3DHP的moshed版本[7,8],并使用提供的3D關鍵點為Panoptic Studio DB生產SMPL配件(詳情請參閱附錄)。3DPW數據集[51]是在室外采集的,并帶有使用IMU傳感器和攝像機獲得的3D地面真相。
一波實驗證明:
1 ? ?EFT??VS??SMPLify?誰好?
讓Amazon Mechanical Turk (AMT)投票,一共隨機挑選500張樣本,每一個樣本讓3個人投票,統計方法1:按照票數比較,一共1500票,EFT獲得59.6%;如果每一個樣本有至少2票算贏,500個樣本中,EFT獲得61.8%。
2 ? ?EFT和?SMPLify?做后處理,誰更好?
在表5中,我們對3DPW數據集進行了定量評價。對于初始化,我們使用不同的回歸器Φ在許多不同的數據集上預先訓練,提供不同的初始化狀態。然后,我們使用EFT和SMPLify后處理來擬合同一套由OpenPose檢測器自動獲得的2D關鍵點注釋。關鍵的觀察結果是,SMPLify后處理的性能取決于初始化質量、多階段技巧的使用以及數據和先前項之間的平衡。具體來說,如果初始化已經很好,如表5的最后一行,則SMPLify會降低性能,特別是在使用先前的姿勢時。這說明了平衡數據和以前的術語的困難,這在實踐中可能很難做到。相比之下,EFT不存在這樣的問題,無論初始化質量如何,都能提高準確性。當形狀正則化器被完全移除時,這也是正確的。
?
2.1:?對截斷性,增加魯棒性,為了訓練模型對截斷更具魯棒性,我們建議使用極端裁剪來增強訓練數據。而同樣的挑戰最近正在被【52】解決。我們的方法更直接,因為我們已經有完整的3D注釋,我們只需要隨機裁剪訓練圖像。在實踐中,我們生成隨機作物的方式與第4節中描述的Truncated 3DPW數據集相同。在訓練過程中,我們以30%的幾率觸發作物增加,在圖2 (d)所示的預計算的包圍盒中隨機選擇一個截斷的包圍盒。隨機截斷,隨機bbox,左右隨機縮放,上下隨機縮放?
?
2.2?為當前的pose回歸模型增加額外的輸入:最近的方法表明,其他類型的輸入編碼,如密集姿態或身體部分分割,可以改善三維姿態回歸量。我們的方法允許直接將這些額外的輸入與原先圖像拼接在一起輸入。
為了接受6個信道輸入(RGB與一個彩色編碼的輔助輸入連接),我們通過復制初始權值來修改HMR的第一層(即ResNet50的第一層)。
3 ? ?Pose先驗靠預訓練網絡,擬合階段只上2dloss,不擔心過擬合,破壞了之前的pose?
在我們的EFT優化中,我們沒有使用任何顯式的姿態先驗項(在eq.(3)中,γ = 0),通過對單個樣本過擬合,EFT可能會打破回歸器中最初捕獲的隱式姿態先驗項,潛在地導致結果漂移。
通過對單個樣本進行過擬合,EFT可能會破壞回歸器的泛化能力,從而破壞它捕獲的先驗。為了檢驗這種情況是否可能發生,我們使用相應對單個樣本進行了超擬合。20和100次EFT迭代,然后在整個3DPW測試集上評估過擬合回歸器的準確性,記錄結果的準確性。我們對不同的樣品重復這個實驗500次,并報告結果如圖3所示。同時還比較了SPIN[8]和HMR[7]的性能。值得注意的是,過擬合回歸量總體上仍然表現良好,表明盡管EFT,網絡仍然保持了良好的性質。特別是,性能至少與HMR基線[7]一樣好,偶爾在過擬合單一樣本后整體性能有所提高。通過檢驗,不同樣本的影響是不同的,我們發現更有可能干擾回歸器的樣本包含顯著的遮擋或注釋錯誤。注意,在對單個例子應用EFT后,微調網絡被丟棄,這一分析只是為了說明微調的效果,但對EFT的有效性沒有直接的影響。
?
4 ? ?臀部和腳踝的關鍵點為啥獨立處理?標注短了……
臀部和腳踝的關鍵點由于寬松的衣服和閉塞,比其他關鍵點更難被注釋者正確定位。這也可以通過檢查COCO數據集中注釋的2D關鍵點的標準偏差(稱為OKS sigma值)7來觀察,其中臀部(1.07)和腳踝(0.89)的值高于肩膀(0.79)和手腕(0.62)。我們在圖4中展示了來自COCO數據集的例子,在注釋中小腿長度比它應該的短。我們根據經驗發現,這種嘈雜的2D定位會在3D中產生偽影,這促使我們在下肢部分使用2D定位,而不是GT定位。
?
總結
以上是生活随笔為你收集整理的Exemplar Fine-Tuning for 3D Human Model Fitting Towards In-the-Wild 3D Human Pose Estimation 2020阅读理的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 财务管理【17】
- 下一篇: StoryBoard运用技巧