訂閱
糾錯
加入自媒體

CVPR2020 Oral: 一張照片三維重建你的房間

作者是來自將門計(jì)算機(jī)視覺社群、香港中文大學(xué)(深圳)GAP實(shí)驗(yàn)室的韓曉光博士,這次分享的是在其指導(dǎo)下團(tuán)隊(duì)在CVPR 2020 Oral的工作:完整三維理解:從單張室內(nèi)場景圖片聯(lián)合重建房間布局、物體姿態(tài)及網(wǎng)格形狀。

三維場景理解與重建

從單張圖片完整地恢復(fù)整個室內(nèi)場景的幾何信息目前仍然是具有挑戰(zhàn)性的任務(wù),完整的三維室內(nèi)場景理解與重建需要預(yù)測房間的布局、相機(jī)的位置與姿態(tài)、圖片中單個物體的姿態(tài)以及物體幾何形狀。

想讓一個網(wǎng)絡(luò)學(xué)好如此多的任務(wù)過于困難,除此之外:

1. 以前的方法或者只解決其中的一個子任務(wù);

2. 或者用多個網(wǎng)絡(luò)去做多個子任務(wù),然后拼接起來,但各個子網(wǎng)絡(luò)的學(xué)習(xí)是獨(dú)立的;

3. 又或者只關(guān)注場景中獨(dú)立的物體,并沒有綜合考慮整個室內(nèi)環(huán)境。

我們針對上述三種情況實(shí)現(xiàn)了“3個Total”:

1. 整合了場景理解與重建,首次提出了一種端到端的方法從單張室內(nèi)圖像完整重建(Total)房間布局、物體及相機(jī)姿態(tài)和實(shí)例級的幾何形狀,并取得了不錯的效果,如圖1;

2. 我們的網(wǎng)絡(luò)也由多個子網(wǎng)絡(luò)組成,但它們并不是獨(dú)立的,我們會對整個網(wǎng)絡(luò)進(jìn)行聯(lián)合訓(xùn)練(Total),讓多個子網(wǎng)絡(luò)分享梯度信息,這是因?yàn)榉块g布局、物體姿態(tài)及三維包圍盒和物體形狀之間有著很強(qiáng)的聯(lián)系,如果分開訓(xùn)練,后面的子網(wǎng)絡(luò)不能向前面的網(wǎng)絡(luò)進(jìn)行反饋;

3. 室內(nèi)物體的姿態(tài)和位置遵循一定的設(shè)計(jì)規(guī)則,各物體之間的關(guān)聯(lián)關(guān)系尤為重要,比如說床頭柜與床、桌椅間以及多把椅子之間的關(guān)系等等。之前的工作在預(yù)測物體的三維包圍盒時,一般只考慮單個物體,或者考慮一對一物體間的關(guān)系。與本文工作較類似的Mesh R-CNN[1]只是在圖片上檢測出物體,然后在各物體的圖像平面分別重建,并沒有考慮物體間的關(guān)聯(lián)關(guān)系。在本文方法中,我們考慮物體與房間中所有其他物體間的關(guān)聯(lián)關(guān)系(Total),并將其應(yīng)用到了三維目標(biāo)檢測子網(wǎng)絡(luò)的設(shè)計(jì)中。

與SOTA的對比以及消融實(shí)驗(yàn)均說明了“3個Total”的重要作用,這使我們的方法在所有子任務(wù)上都達(dá)到了最先進(jìn)的水平,詳見后面實(shí)驗(yàn)分析部分。

三維形狀表示

與我們的工作比較類似的研究大多使用體素(voxel)表示三維形狀,這種表達(dá)方式受限于有限的分辨率,重建出的形狀十分粗糙。其中Mesh-RCNN [1]能重建出網(wǎng)格(mesh),但仍然是以體素為中間媒介,重建網(wǎng)格質(zhì)量差強(qiáng)人意。由于我們在以物體為中心的三維物體網(wǎng)格重建方面有一定的積累,所以我們決定跳過體素,直接來做物體的網(wǎng)格,并且改進(jìn)了最新的TMN[2]方法,這也是除了“3個Total”以外本文最重要的貢獻(xiàn)。在物體網(wǎng)格生成任務(wù)中,我們提出了一種新的密度感知拓?fù)湫薷钠。該方法直接解決了TMN [2]的主要瓶頸問題,即需要嚴(yán)格的距離閾值來刪除與目標(biāo)形狀距離較遠(yuǎn)的面,這使我們的方法對復(fù)雜背景下不同形狀的室內(nèi)物體具有較強(qiáng)的魯棒性。

網(wǎng)絡(luò)結(jié)構(gòu)

圖2(a)給出了本文方法的概述。該網(wǎng)絡(luò)由三個模塊組成:布局估計(jì)網(wǎng)絡(luò)(Layout Estimation Network-LEN)、三維目標(biāo)檢測網(wǎng)絡(luò)(3D Object Detection Network -ODN)和網(wǎng)格生成網(wǎng)絡(luò)(Mesh Generation Network -MGN)。對于輸入單張圖像,我們首先用2D檢測器(e.g. Faster R-CNN)預(yù)測二維物體包圍盒。LEN將整個圖像作為輸入,生成世界坐標(biāo)系下相機(jī)姿態(tài)和三維房間布局包圍盒。根據(jù)二維目標(biāo)檢測結(jié)果,ODN在相機(jī)坐標(biāo)系中檢測三維物體包圍盒,而MGN在以物體為中心的規(guī)范坐標(biāo)系中生成由網(wǎng)格表示的三維幾何形狀。我們通過將所有網(wǎng)絡(luò)的輸出信息嵌入到場景中,進(jìn)行聯(lián)合訓(xùn)練和推理,從而重建出完整的場景。其中,來自MGN的三維物體網(wǎng)格將根據(jù)ODN及 LEN生成的物體與相機(jī)坐標(biāo)系線性變換,從網(wǎng)格規(guī)范坐標(biāo)系轉(zhuǎn)換至世界坐標(biāo)系進(jìn)行聯(lián)合訓(xùn)練。圖2(b)給出了LEN和ODN坐標(biāo)系轉(zhuǎn)換的參數(shù)化圖示,詳細(xì)內(nèi)容請參考我們的文章和補(bǔ)充材料。

1. 三維目標(biāo)檢測網(wǎng)絡(luò)ODN

ODN網(wǎng)絡(luò)結(jié)構(gòu)如圖3所示。在預(yù)測某個物體的三維包圍盒時,我們考慮該物體與房間中所有其他物體間的關(guān)聯(lián)關(guān)系。對于輸入的圖片,經(jīng)由ResNet對物體包圍盒內(nèi)圖像生成外觀特征,同時利用物體的二維包圍盒之間相對位置產(chǎn)生相對幾何特征。最后通過目標(biāo)物體與其他物體之間的多邊幾何特征,利用注意力機(jī)制 (Attention mechanism) [3],加權(quán)各自外觀特征從而獲得其他物體與目標(biāo)物體之間的關(guān)聯(lián)特征(relational feature),并將其用于最后決策每個物體在相機(jī)坐標(biāo)系下的三維空間位置,尺寸和姿態(tài)。

2. 布局估計(jì)網(wǎng)絡(luò)LEN

與ODN不同,LEN則負(fù)責(zé)預(yù)測房間的布局(房間包圍盒)和相機(jī)姿態(tài)。其中,相機(jī)姿態(tài)由R(β,γ)定義,即相機(jī)的俯仰角β及橫滾角γ。LEN的網(wǎng)絡(luò)結(jié)構(gòu)與ODN相同,只是不會使用關(guān)聯(lián)特征,即,LEN將整個場景看作一個物體包圍盒(而ODN 將每個檢測到的物體視為一個包圍盒),這一步我們則預(yù)測的是場景包圍盒在世界坐標(biāo)系下的位置,尺寸和姿態(tài),以及相機(jī)對于場景世界坐標(biāo)系的旋轉(zhuǎn)。到目前為止,ODN給出了相機(jī)坐標(biāo)系下單個物體的3D包圍盒信息,同時LEN獲得了場景布局在世界坐標(biāo)系下的3D包圍盒,以及相機(jī)外參數(shù)用于統(tǒng)一所有物體坐標(biāo)系進(jìn)行聯(lián)合訓(xùn)練。

3. 網(wǎng)格生成網(wǎng)絡(luò)MGN

我們的MGN解決了TMN的瓶頸問題。TMN通過對模板形狀(單位球)進(jìn)行變形和修改網(wǎng)格拓?fù)鋪肀平鼘ο笮螤睿渲行枰A(yù)定義距離閾值才能從目標(biāo)形狀中移除距離GT較遠(yuǎn)的面。但是,對于不同比例的物體網(wǎng)格,給出一個通用的閾值是非常重要的(見圖4)。通過實(shí)驗(yàn),我們發(fā)現(xiàn)TMN在室內(nèi)物體的形狀預(yù)測上不能很好的刪除細(xì)節(jié)網(wǎng)格面 (見圖5),可能的原因是室內(nèi)物體在不同類別之間有很大的拓?fù)涑叽绮町,并且因(yàn)閺?fù)雜的背景和遮擋常常導(dǎo)致無法準(zhǔn)確估計(jì)距離值。

密度 v.s. 距離

與采用嚴(yán)格距離閾值進(jìn)行拓?fù)湫薷牡腡MN不同,我們發(fā)現(xiàn)判斷網(wǎng)格面是否該刪除應(yīng)該由其局部幾何特征決定。在這一部分中,我們提出了一種基于局部密度的自適應(yīng)網(wǎng)格修改方法。我們將pi設(shè)置為重建網(wǎng)格上的一個點(diǎn),而qi則對應(yīng)于它在GT上的最近鄰(見圖4)。我們設(shè)計(jì)了一個二進(jìn)制分類器f (*) 來預(yù)測pi是否接近GT網(wǎng)格(如下):

其中,N (qi)為qi在GT曲面的所有近鄰點(diǎn),而D用于定義局部密度。我們認(rèn)為,在形狀逼近中,如果一個點(diǎn)屬于GT的N鄰域,就應(yīng)該保留它,否則刪除。在實(shí)驗(yàn)中,我們觀察到該分類器在不同的網(wǎng)格尺度下比使用距離閾值具有更好的魯棒性。

移除邊 v.s. 移除面

相對于移除網(wǎng)格面,我們選擇移除網(wǎng)格邊的方式進(jìn)行拓?fù)湫薷。我們隨機(jī)抽取網(wǎng)格邊上的點(diǎn),并使用分類器f (*) 來移除平均分類分?jǐn)?shù)較低的邊。較移除網(wǎng)格面,移除多余的邊可以減少在計(jì)算邊損失函數(shù)時(edge loss [2] )因多余邊存在而受到的懲罰,并創(chuàng)建緊湊的網(wǎng)格邊界。

圖4中給出了MGN網(wǎng)絡(luò)架構(gòu)。它以二維物體檢測為輸入,使用ResNet-18生成圖像特征。我們將檢測到的物體類別編碼為one-h(huán)ot向量,并將其與圖像特征連接起來。在我們的實(shí)驗(yàn)中,我們觀察到類別編碼提供了形狀先驗(yàn),有助于更快地逼近目標(biāo)形狀。我們將擴(kuò)展后的特征向量和模板球輸入到AtlasNet [4]的解碼器中,以預(yù)測球的形變,并在第一階段拓?fù)洳蛔兊那闆r下輸出合理的物體形狀。在此基礎(chǔ)上通過我們的邊分類器進(jìn)行第二階段的拓?fù)湫薷,最后?jīng)過邊界優(yōu)化完成形狀的預(yù)測。邊分類器與AtlasNet形狀解碼器具有相似的網(wǎng)格結(jié)構(gòu),其中最后一層替換為全連接層進(jìn)行分類。它根據(jù)圖像特征,將變形網(wǎng)格作為輸入,預(yù)測f(*)以移除冗余網(wǎng)格邊。

4. 聯(lián)合學(xué)習(xí)

LEN和ODN中采用的損失函數(shù)主要涉及相機(jī)參數(shù),包圍盒尺寸,位置與姿態(tài)的回歸問題。而MGN使用Chamfer距離損失、邊損失 (edge loss) 、邊界損失 (boundary loss) 和用于剪邊分類器的cross-entropy loss,詳見文章。

在聯(lián)合訓(xùn)練時,損失函數(shù)的設(shè)計(jì)建立在以下兩點(diǎn):一是相機(jī)姿態(tài)估計(jì)精度的提高可以提升三維物體包圍盒的預(yù)測結(jié)果,反之亦然;二是場景中的物體形狀預(yù)測可以提供物體的空間占有信息(spatial occupancy),這對三維物體檢測有積極影響,反之亦然。根據(jù)第一點(diǎn),我們采用cooperative loss Lco [5]來保證預(yù)測出的房間布局/物體包圍盒與GT間的世界坐標(biāo)系下坐標(biāo)值的一致性。第二,我們要求重建出的物體靠近場景中點(diǎn)云,即,對齊世界坐標(biāo)系下物體的網(wǎng)格與場景點(diǎn)云,展現(xiàn)出全局坐標(biāo)的約束。對于此,我們根據(jù)Chamfer距離定義global loss Lg:

以下是用于聯(lián)合訓(xùn)練的loss,前三項(xiàng)分別是ODN,LEN和MGN的loss,后兩項(xiàng)分別為cooperative loss和global loss。其中,

為各項(xiàng)loss的權(quán)重。

1  2  3  下一頁>  
聲明: 本文由入駐維科號的作者撰寫,觀點(diǎn)僅代表作者本人,不代表OFweek立場。如有侵權(quán)或其他問題,請聯(lián)系舉報(bào)。

發(fā)表評論

0條評論,0人參與

請輸入評論內(nèi)容...

請輸入評論/評論長度6~500個字

您提交的評論過于頻繁,請輸入驗(yàn)證碼繼續(xù)

  • 看不清,點(diǎn)擊換一張  刷新

暫無評論

暫無評論

人工智能 獵頭職位 更多
掃碼關(guān)注公眾號
OFweek人工智能網(wǎng)
獲取更多精彩內(nèi)容
文章糾錯
x
*文字標(biāo)題:
*糾錯內(nèi)容:
聯(lián)系郵箱:
*驗(yàn) 證 碼:

粵公網(wǎng)安備 44030502002758號