ECCV 2020 | 基于分割一致性的單目自監督三維重建
概述
本文主要從二維圖像及其輪廓的集合中,學習一個自監督的、單視圖的三維重建模型,預測目標物體的3D網格形狀、紋理和相機位姿。提出的方法不需要3D監督、注釋的關鍵點、物體的多視圖或者一個先驗的網格模板。關鍵之處在于,物體可以表示為可形變部分的集合,在同一類別的不同實例中,每個部分在語義上是一致的。
利用這一點,可以有效地增強重構網格與原始圖像之間的語義一致性,這大大減少了在預測物體的形狀、相機位姿以及紋理時的模糊性。實驗結果表明,這是第一個嘗試解決單視圖三維重建問題、沒有使用特定類別的網格模型或者語義關鍵點的方法。
簡介
同時從2D圖像中恢復3D形狀、紋理和相機位姿是一個高度不適定的問題,因為其固有的歧義。現存有很多方法解決這個問題,但是這些監督信息需要大量工作,因此將其泛化到許多缺乏此類注釋的對象類別時非常具有挑戰性。另一方面,只使用特定類別的單視圖圖像集合,而不使用其他監督信號學習重建仍然存在挑戰。
原因在于,沒有監督信號將導致錯誤的三維重建,一個典型的故障案例是由“相機-形狀歧義”引起的。錯誤預測的相機位姿和形狀導致渲染圖像和物體邊界與輸入的2D圖像和其輪廓非常匹配,如下圖(c)和(d)所示。
有趣的是,人類可以通過聯合部分來重建整體,例如鳥有兩條腿、兩只翅膀和一個頭。通過觀察物體的一部分,人類就可以粗略地推斷出任何物體的相機位姿和3D形狀。在計算機視覺中,相似的思想是通過變形模型的部分表達的,物體被表示為一組可以變形的零件。
受到這個idea的啟發,作者實現了從圖像和輪廓的集合中學習單視圖的重建模型。利用二維和三維空間中的語義部分,以及它們的一致性來正確估計形狀和相機姿態。
上圖展示了語義一致性的自監督,(a)是相同類別的不同物體,(b)是通過自監督對每個部分進行語義分割,(c)是特定類別的規范語義UV映射,(d)是網格上的語義分割,后面表示單視圖的3D網格重建和不同視角的重建結果。
總的來說,本文的主要貢獻之處在于:進行單視圖重建而不需要其他形式的監督信號;利用特定類別實例對象的語義部分不變性屬性作為可變形的部件模型;通過迭代學習從頭開始學習一個類別級的3D形狀模板。
相關工作
3D形狀表示:對于3D模型有很多表示方法,例如點云、隱式曲面、三角網格和體素。其中,盡管體素和點云更適合深度學習框架,但是它們存在內存受限或者不能夠渲染等問題。因此,本文選擇三角網格作為3D模型的表示方法。
單視圖三維重建:單視圖三維重建旨在通過給定的單張輸入圖像重建3D模型,有很多工作在不同監督的程度下探討這一問題。例如利用圖像和真實3D網格作為監督,或者使用可微渲染器和綜合分析的方法。
為了進一步減少監督的限制,Kanazawa等[1]探索了從不同實例的圖像集合中進行3D重建,但是他們的方法仍然需要標注的2D關鍵點來正確的推斷相機位姿。其他方法中也使用了類似的方法,但是受限于剛體或者結構化的物體,不能泛化到其他模型。
自監督對應學習:本文的工作還涉及到自監督的學習,利用自監督的協同部分分割來加強語義一致性,這最初是純粹針對2D圖像提出的。[2]學習一個映射函數,該函數以自監督的方式將2D圖像中的像素映射到預定義的類別級的模板,但是沒有學習對應的三維重建。
方法
為了從單張圖像中完全重建物體實例的三維網格,網絡應該能夠同時預測物體的形狀、紋理和圖像的相機位姿。用現有網絡(CMR)[1]作為初始的重建網絡。輸入一張圖片,CMR使用編碼器E提取出圖像特征,使用三個****Dshape、Dcamera和Dtexture分別預測網格模型、相機位姿和網格紋理。
CMR方法效果比較好的關鍵原因之一是利用了標注的關鍵語義點精確地估計了每個實例的相機位姿,并且有模板網格作為先驗知識。但是,注釋關鍵點非常繁瑣,對于新的類別不適用。因此,作者提出了一種更容易擴展、更具有挑戰性的自監督方法,如下圖所示。
其中,(1)綠色的框表示重建網絡,和[1]中的架構相同。(2)紅色的框表示語義一致性約束,它規范了模塊(1)的學習,并在很大程度上解決了上述問題中提到的“相機-形狀歧義”。(3)藍色的框表示從頭開始學習規范語義UV圖和類別級模板,使用模板(1)迭代訓練。
3.1 通過語義一致性解決相機-形狀歧義
解決“相機-形狀歧義”的關鍵是在3D和2D中充分利用物體實例的語義部分。具體來說,在二維空間中,自監督即可實現大多數物體的正確分割,即使是那些形狀變化很大的實例。在三維空間中,語義部分對于網格變形是不變的,網格表面上特定點的語義部分標簽在一個類別的所有重構實例中是一致的。
使用這種語義部分不變性可以建立一個類別級的語義UV映射,即規范語義UV映射,它由所有的實例共享,反過來又允許為網格上的每個點分配語義部分標簽。通過在二維空間中加強規范語義映射與實例部分分割的一致性,可以在很大程度上解決“相機-形狀歧義”問題。
首先在二維圖像中通過SCOPS[3]獲得實體分割,然后通過規范語義UV映射獲得三維模型中的分割后,利用2D和3D之間的分割一致性,得到正確的模型。如下圖所示,(i)表示錯誤的重建,其中沒有用到語義一致性;(ii)表示使用一致性后的表現。
3.2循序漸進的訓練
逐漸訓練網絡出于兩個方面的考慮:第一,構建規范語義UV圖需要可靠的紋理流將SCOPS從2D圖像映射到UV空間。因此,只有當重建網絡能夠很好地預測紋理流時,才能得到規范的語義UV映射。第二,一個規范的三維形狀模板是可取的,因為它加快了網絡的收斂速度,也避免了退化的解決方案。
但是,同時學習類別級三維形狀模板和實例級重建網絡會得到不希望的平凡解。因此,作者將網絡分成兩部分,E步驟使用固定的模板和規范語義UV映射訓練重建網絡,M步驟使用前面訓練好的網絡不斷更新模板和UV映射。
其中,模型的更新方法如下所示。Vt和Vt-1是更新的和當前的模板,I表示輸入的圖像,傳遞到圖像編碼器和形狀****中,Q是一組具有一致網格預測的選定樣本。
3.3 紋理循環一致性約束
如下圖所示,學習到的紋理流的一個問題是,具有相似顏色(例如黑色)的3D網格面的紋理可能從圖像的單個像素位置錯誤地采樣。因此,作者引入了一個紋理循環一致性目標使預測的紋理流和攝像機投影的一致。
考慮輸入圖像上黃色的點,可以通過紋理流和預定義的函數φ將其映射到網格表面。同時,可以通過渲染器將網格上的點重新投影到圖像中,如輸入圖像上的綠色點。如果預測的紋理流與預測的相機姿態一致,黃色和綠色的點重疊,形成2D-3D-2D的循環。
3.4 通過重建實現更好的部分分割
提出的三維重建模型可用于改進自監督分割的學習,關鍵點在于類別級的規范語義UV映射在很大程度上減少了基于實例的語義UV映射中的噪聲。結合實例網格重建和相機位姿,為SCOPS方法提供了可靠的監督。
通過將標準UV映射到每個重建網格的表面,并用預測的相機位姿進行渲染,就可以得到“真實”的分割圖作為SCOPS訓練的監督。使用語義一致性約束作為度量,選擇具有高語義一致性的可靠重建來訓練SCOPS。改進的SCOPS反過來可以為網格重建網絡提供更好的正則化,形成一個迭代和協作的學習循環。
實驗效果
參考文獻:
Kanazawa, A., Tulsiani, S., Efros, A.A., Malik, J.: Learning category-specific mesh reconstruction from image collections. In: ECCV (2018)
Kulkarni, N., Gupta, A., Tulsiani, S.: Canonical surface mapping via geometric cycle consistency. In: ICCV (2019)
Hung, W.C., Jampani, V., Liu, S., Molchanov, P., Yang, M.H., Kautz, J.: Scops: Self-supervised co-part segmentation. In: CVPR (2019)
*博客內容為網友個人發布,僅代表博主個人觀點,如有侵權請聯系工作人員刪除。