CVPR 2019 | 基于骨架表达的单张图片三维物体重建方法
現(xiàn)有的單視角三維物體重建方法通過采用不同的幾何形狀表達方式取得了不同程度的成功,但它們都難以重建出拓撲復(fù)雜的物體形狀。為此,華南理工大學(xué),香港中文大學(xué)(深圳)以及微軟亞研院聯(lián)合提出一種以骨架(meso-skeleton)為橋梁融合多種形狀表達方式優(yōu)點的深度學(xué)習(xí)算法,非常有效地解決了這一難題。?
為了能夠準(zhǔn)確地抓住物體的拓撲結(jié)構(gòu),本文引入了骨架做為橋梁,因其具有保護拓撲而又易于學(xué)習(xí)的優(yōu)點。為了能夠從圖片中準(zhǔn)確地推斷出對應(yīng)物體的骨架,他們設(shè)計了一個全新的骨架合成網(wǎng)絡(luò)架構(gòu),利用平行雙分支結(jié)構(gòu)分別合成曲線狀和曲面狀骨架。?
同時,他們采用了分階段學(xué)習(xí)的方式以融合多種形狀表達方式(體素,點云,三角網(wǎng)格)各自的優(yōu)點。圖像的多階段層級利用有助于減小各階段學(xué)習(xí)時累計的預(yù)測誤差。實驗結(jié)果表明,這一方法在定量和可視化對比均優(yōu)于現(xiàn)有的重建方法。這項工作受到會議評審者的一致好評,三位評審者均給出了強烈接(Strong Accept)的意見,已收錄為 CVPR 2019 Oral 論文。
Introduction
從單張圖片恢復(fù)出三維物體形狀這一研究課題在許多應(yīng)用中扮演著重要的角色,例如增加現(xiàn)實,圖像編輯。但是由于物體的拓撲結(jié)構(gòu)復(fù)雜多變,這一課題也頗具挑戰(zhàn)性。目前,基于體素表達的方法受限于三維卷積網(wǎng)絡(luò)計算和內(nèi)存的限制而難以得到高分辨率的輸出。基于點云表達的方法又很難生成平滑而又干凈的表面。
三角網(wǎng)格表達對物體形狀提供了一種更有效,更自然的離散化逼近方式。最近的一些方法嘗試直接從輸入圖像中恢復(fù)物體的網(wǎng)格表達。這些方法本質(zhì)上是在對一個給定拓撲連接關(guān)系的初始網(wǎng)格變形,比較有代表性的初始網(wǎng)格有單位平面,球。盡管它們有一定的效果,但是仍然難以恢復(fù)具有復(fù)雜拓撲結(jié)構(gòu)的物體表面,例如圖 1 所表示的具有細長的桿的椅子。
▲?圖1. 本文提出的方法能從單視角圖像中重建完整的三維物體,而且能正確地恢復(fù)拓撲
因此,本文提出了一種基于骨架表達的分階段學(xué)習(xí)方法,來實現(xiàn)從單張圖片恢復(fù)物體表面網(wǎng)格表達,對于重構(gòu)桌子椅子這些具有細長結(jié)構(gòu)的物體效果尤為顯著。他們引入了骨架,因其能很好地保護拓撲,而且相比于復(fù)雜的表面更易于學(xué)習(xí)。
他們的方法具體分為以下三個階段:
第一階段是從輸入圖像中學(xué)習(xí)生成骨架點云。為此他們設(shè)計了平行的雙分支網(wǎng)絡(luò)架構(gòu),被命名為 CurSkeNet 和 SurSkeNet,分別用于曲線狀和曲面狀骨架點云的合成。為了 CurSkeNet 和 SurSkeNet 的訓(xùn)練,他們針對 ShapeNet 的物體模型處理了骨架數(shù)據(jù)集來當(dāng)做 ground truth 用于訓(xùn)練。
在第二個階段,他們通過將合成的骨架點云體素化,然后用三維卷積網(wǎng)絡(luò)對粗糙的骨架體素進行修復(fù)提取出一個初始網(wǎng)格。此處為了減小高清體素輸出時的網(wǎng)絡(luò)復(fù)雜度,采取了用全局結(jié)構(gòu)引導(dǎo)分塊體素修復(fù)的方式。
最后一個階段使用圖卷積神經(jīng)網(wǎng)絡(luò)來對前面獲得的初始網(wǎng)格進行變形以得到最后表面網(wǎng)格表達。
Approach
▲?圖2. 算法流程圖總覽
Overview?
圖 2 展示了他們方法的整個流程圖。輸入物體的單視角圖像 I , 本文的目標(biāo)是重構(gòu)出網(wǎng)格表達的完整物體形狀,同時能正確地抓住三維物體的拓撲結(jié)構(gòu)。為了解決這一難題,本文基于骨架表達,提出了以下分三個階段的物體重構(gòu)過程。
在第一階段,他們采用編碼器-解碼器的網(wǎng)絡(luò)結(jié)構(gòu)從輸入圖片 I 學(xué)習(xí)出對應(yīng)的骨架 K,它本質(zhì)上是一個更簡潔緊湊的點云表達。
在第二個階段,他們把獲得的骨架 K 先轉(zhuǎn)成一個粗糙的體素表達的 Vk,然后用三維卷積神經(jīng)網(wǎng)絡(luò)對其進行修復(fù),得到一個更精細化的體素 V。
在最后一個階段,他們先從體素 M 中提取出一個粗糙的初始網(wǎng)格 Mb,然后再用圖神經(jīng)網(wǎng)絡(luò)對網(wǎng)格的頂點位置進一步優(yōu)化,得到最后的輸出網(wǎng)格 M。每個階段都有一個圖像編碼器來提取所各自需要的信息,因此輸入圖片 I 引導(dǎo)著三個階段的學(xué)習(xí)過程。
Learning of Meso-Skeleton?
CurSkeNet 和 SurSkeNet:給定輸入圖像 I,他們采用 ResNet-18 做為編碼器將提取的特征映射成高維空間的向量,然后設(shè)計譯碼器同于生成骨架點云,而譯碼器的網(wǎng)絡(luò)架構(gòu)是基于 CurSkeNet 和 SurSkeNet 的平行雙分支結(jié)構(gòu)。
這樣的設(shè)計方法,可使曲線狀和曲面狀的骨架區(qū)域的合成得以獨立完成,互不干擾。SurSkeNet 通過對一些 2D 平面進行變形,來逼近曲面狀骨架。CurSkeNet 對一些 1D 直線進行變形,通過實施仿射變換來形成曲線,然后學(xué)習(xí)如何將這些曲線聚集成曲線狀的骨架部分。?
Network Training:本文用曲線狀和曲面狀的骨架點云分別去訓(xùn)練 CurSkeNet 和 SurSkeNet,所以采用 Chamfer Distance(CD 距離)做為損失函數(shù)的一部分,其定義如下:
為了保證變形的局部一致性,防止出現(xiàn)過大的變形,他們還在骨架學(xué)習(xí)過程中加上了拉普拉斯平滑正則化項。它被定義為:
From Skeleton to Base Mesh
▲?圖3.?高清體素表達的骨架合成方法流程圖
Sub-volume Synthesis with Global Guidance:為了保護骨架 K 所抓住的拓撲結(jié)構(gòu)以及得到粗糙的初始網(wǎng)格,他們需要將 K 進行修復(fù)以得到一個高分辨率的體素表達。
具體地做法如下,先把骨架K體素化,得到兩種分辨率下的體素表達,被記做,,分辨率為。
如圖 3 所示,他們采用兩個三維卷積網(wǎng)絡(luò)用于骨架體素的全局結(jié)構(gòu)和局部子塊合成。全局結(jié)構(gòu)合成網(wǎng)絡(luò)用于對的修復(fù),產(chǎn)生一個分辨率為的骨架體素表達。局部子塊合成網(wǎng)絡(luò)用從中均勻切割出來的子塊做輸入,對這些子塊獨立地進行修復(fù)。當(dāng)修復(fù)每個子塊的時候,全局網(wǎng)絡(luò)的輸出中對應(yīng)的對應(yīng)的子塊也被一起輸入,使得每個子塊修復(fù)后的結(jié)果仍然保持全局一致性。
▲?圖4.?(a) 輸入圖片(b) 學(xué)習(xí)到的骨架點云 (c) 只分子塊進行修復(fù) (d) 加上全局結(jié)構(gòu)引導(dǎo) (e) 加上圖像的引導(dǎo)
Image-guided Volume Correction:為了糾正在骨架生成階段時的預(yù)測誤差,我們再次利用輸入圖像 I,從中學(xué)習(xí)一個低分辨率的骨架體素表達,將其集成到我們前面提到的全局結(jié)構(gòu)合成網(wǎng)絡(luò),得到一個更準(zhǔn)確的全局結(jié)構(gòu) 。這最終將有助于我們得到一個更好的修復(fù)結(jié)果 V。如圖 4 所示,圖像 I 的使用大大提高了修復(fù)后的骨架體素 V 的效果。?
Base Mesh Extraction:得到修復(fù)后的體素 V 后,我們用 Marching Cubes 算法來產(chǎn)生初始網(wǎng)格 Mb,它仍然保留著和骨架 K 一樣的拓撲結(jié)構(gòu)。為了減輕后續(xù)的計算負擔(dān),我們對 Mb 進行了簡化。
Mesh Refinement
▲?圖5.?三角網(wǎng)格變形網(wǎng)絡(luò)
到目前為止他們獲得了抓住潛在物體拓撲結(jié)構(gòu)的初始網(wǎng)格 Mb,但是還缺乏物體表面的細節(jié)。他們利用圖卷積神經(jīng)網(wǎng)絡(luò)結(jié)合輸入圖像對粗糙的初始網(wǎng)格進行變形,達到在 Mb 的表面處補充細節(jié)的目的。
圖 5 所示是他們的網(wǎng)格變形網(wǎng)絡(luò)。本文的圖神經(jīng)卷積網(wǎng)絡(luò)由一些圖卷積層組成,每個層對 Mb 的每個頂點以及其局部鄰域?qū)嵤┛臻g濾波操作。圖卷積層的定義如下:
與 Pixel2Mesh 類似,我們也將從圖像 I 提取出來的特征結(jié)合到對應(yīng)的頂點位置上來促進學(xué)習(xí)過程。關(guān)于損失函數(shù)選擇,此階段再次使用了 CD 距離來訓(xùn)練。同時加上了平滑正則項來規(guī)范網(wǎng)格變形過程。一個是 edge regularization,用于防止邊長過長,避免大的變形,造成形狀畸變。另外一個是 normal loss,用于保證輸出物體表面的平滑。
Experiments
Single-view Reconstruction?
為證明所提出方法在單視角重構(gòu)這個任務(wù)上的有效性,本文挑選了 ShapeNet 中有代表性的五個物體種類(plane, bench, chair, table, firearm)來進行實驗說明。?
Qualitative results
▲?圖6
圖 6 展示了我們方法與現(xiàn)有方法的視覺對比結(jié)果。 可以看出,我們的方法(f)已經(jīng)超過了其他方法(b-e),因為我們生成的是完整的物體形狀網(wǎng)格表達,而且能抓住正確的拓撲結(jié)構(gòu),以及刻畫更多的細節(jié)。
Quantitative Results?
通過使用網(wǎng)格上采出具有 10000 個點的點云,本文采用 CD 和 EMD 來評估重建質(zhì)量。表 1 展示了與其他方法量化對比的結(jié)果。
▲?表1. 單視角重建方法的 CD EMD 對比結(jié)果
Generalization on real images?
圖 7 所示是我們的方法在三張真實圖片上的重構(gòu)結(jié)果。 可以看到重建結(jié)果的質(zhì)量與合成圖片的結(jié)果十分相似。特別是圖 7(a) 所示,該圖片雖然與 ShapeNet 無關(guān),但是我們?nèi)匀荒軐⒖床坏降募殫U很好地重構(gòu)出來。這一結(jié)果也證明了我們方法優(yōu)秀的泛化能力。
▲?圖7.?真實圖像測試結(jié)果
Evaluation on Skeleton Inference?
在這一節(jié),我們對我們骨架學(xué)習(xí)方法的幾個變種進行比較,用此來說明我們最后所選用的模型是最優(yōu)的。
它們是:1)“Point-only fitting”方式直接采用PointSetGeneration 去回歸骨架點坐標(biāo);2)“Line-only fitting”方式移除了我們方法中的面擬合分支,只通過對多根直線變形來逼近骨架;3)“Square-only fitting”方式則移除了線擬合分支,只通過對多個平面變形來逼近骨架 ;4)“Line-and-Square fitting”則是只用一個 MLP 來同時學(xué)習(xí)線和面的變形;5)“Ours w/o laplacian”代表我們的模型但沒有加拉普拉斯平滑項。?
Quantitative Results
▲?表2. 骨架學(xué)習(xí)方法的CD對比結(jié)果
由表 2 可以看出我們最終的骨架學(xué)習(xí)模型比其它的幾個變種方法更優(yōu)。另外一個發(fā)現(xiàn)是我們的拉普拉斯正則化項有助于骨架預(yù)測得更加準(zhǔn)確。?
Qualitative Results
▲?圖8
圖 8 用一個例子展示了這些骨架學(xué)習(xí)方法的視覺對比結(jié)果。由此圖可以觀察到利用雙平行預(yù)測分支用于曲線狀和曲面狀骨架獨立合成這一設(shè)計方法和拉普拉斯平滑項的有效性。
總結(jié)
從單個視角恢復(fù)一個物體的三維形狀是計算機視覺領(lǐng)域中一項基礎(chǔ)性而又具有挑戰(zhàn)性的任務(wù)。本文提出的框架將這一任務(wù)分成三個階段,它首先恢復(fù)點云表達的 3D 骨架,然后這些骨架點被轉(zhuǎn)為體素表達,通過三維卷積網(wǎng)絡(luò)合成一個更?
可靠的體素用于提取粗糙的初始網(wǎng)格。最后,一個圖神經(jīng)網(wǎng)絡(luò)被用于學(xué)習(xí)網(wǎng)格變形來產(chǎn)生表面細節(jié)。正如文中的實驗所示,這一方法在可視化和量化上均優(yōu)于現(xiàn)有其他方法。但是這也有兩個將來可以改進的方向:1)如何將全部流程整合成一個端到端訓(xùn)練的網(wǎng)絡(luò);2)在骨架學(xué)習(xí),體素生成,網(wǎng)格變形每個過程嘗試使用對抗學(xué)習(xí),以更一步提高最后輸出結(jié)果的質(zhì)量。
點擊以下標(biāo)題查看更多往期內(nèi)容:?
CVPR 2019 | 無監(jiān)督領(lǐng)域特定單圖像去模糊
圖神經(jīng)網(wǎng)絡(luò)綜述:模型與應(yīng)用
近期值得讀的10篇GAN進展論文
小樣本學(xué)習(xí)(Few-shot Learning)綜述
萬字綜述之生成對抗網(wǎng)絡(luò)(GAN)
可逆ResNet:極致的暴力美學(xué)
小米拍照黑科技:基于NAS的圖像超分辨率算法
AAAI 2019 | 基于區(qū)域分解集成的目標(biāo)檢測
#投 稿 通 道#
?讓你的論文被更多人看到?
如何才能讓更多的優(yōu)質(zhì)內(nèi)容以更短路徑到達讀者群體,縮短讀者尋找優(yōu)質(zhì)內(nèi)容的成本呢? 答案就是:你不認識的人。
總有一些你不認識的人,知道你想知道的東西。PaperWeekly 或許可以成為一座橋梁,促使不同背景、不同方向的學(xué)者和學(xué)術(shù)靈感相互碰撞,迸發(fā)出更多的可能性。?
PaperWeekly 鼓勵高校實驗室或個人,在我們的平臺上分享各類優(yōu)質(zhì)內(nèi)容,可以是最新論文解讀,也可以是學(xué)習(xí)心得或技術(shù)干貨。我們的目的只有一個,讓知識真正流動起來。
??來稿標(biāo)準(zhǔn):
? 稿件確系個人原創(chuàng)作品,來稿需注明作者個人信息(姓名+學(xué)校/工作單位+學(xué)歷/職位+研究方向)?
? 如果文章并非首發(fā),請在投稿時提醒并附上所有已發(fā)布鏈接?
? PaperWeekly 默認每篇文章都是首發(fā),均會添加“原創(chuàng)”標(biāo)志
? 投稿郵箱:
? 投稿郵箱:hr@paperweekly.site?
? 所有文章配圖,請單獨在附件中發(fā)送?
? 請留下即時聯(lián)系方式(微信或手機),以便我們在編輯發(fā)布時和作者溝通
?
現(xiàn)在,在「知乎」也能找到我們了
進入知乎首頁搜索「PaperWeekly」
點擊「關(guān)注」訂閱我們的專欄吧
關(guān)于PaperWeekly
PaperWeekly 是一個推薦、解讀、討論、報道人工智能前沿論文成果的學(xué)術(shù)平臺。如果你研究或從事 AI 領(lǐng)域,歡迎在公眾號后臺點擊「交流群」,小助手將把你帶入 PaperWeekly 的交流群里。
▽ 點擊 |?閱讀原文?| 下載論文
總結(jié)
以上是生活随笔為你收集整理的CVPR 2019 | 基于骨架表达的单张图片三维物体重建方法的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 小样本学习(Few-shot Learn
- 下一篇: CVPR 2019 | 旷视研究院提出M