0
本文作者: 黃善清 | 2018-09-14 18:11 |
雷鋒網(wǎng)AI研習(xí)社按:隨著增強(qiáng)現(xiàn)實(shí),家務(wù)機(jī)器人等應(yīng)用的普及,室內(nèi)場(chǎng)景重建研究正在得到越來(lái)越廣泛的關(guān)注。與傳統(tǒng)底層密集重建方法不同,講者的研究集中在分析重建場(chǎng)景中的高層結(jié)構(gòu)化信息。
在本次AI研習(xí)社大講堂上,來(lái)自圣路易斯華盛頓大學(xué)的計(jì)算機(jī)系在讀博士劉晨分享了其結(jié)構(gòu)化重建的最新工作。
分享嘉賓:
劉晨,圣路易斯華盛頓大學(xué)計(jì)算機(jī)系在讀博士,導(dǎo)師是Yasutaka Furukawa教授,主要研究方向?yàn)槿S視覺(jué),場(chǎng)景理解等。其研究工作曾在 CVPR、ICCV、ECCV等會(huì)議發(fā)表。
公開(kāi)課回放地址:
分享主題:室內(nèi)場(chǎng)景的結(jié)構(gòu)化重建
分享提綱:
結(jié)構(gòu)化場(chǎng)景重建的定義及意義
單目結(jié)構(gòu)化重建
俯視圖結(jié)構(gòu)化重建
多目結(jié)構(gòu)化重建
雷鋒網(wǎng)AI研習(xí)社將其分享內(nèi)容整理如下:
非常高興能在這個(gè)平臺(tái)上和大家分享我們組的最新研究成果,這次的分享題目是《室內(nèi)場(chǎng)景的結(jié)構(gòu)化重建》。
大家都知道,從一個(gè)場(chǎng)景中理解分析三維的幾何信息是一個(gè)非常重要的計(jì)算機(jī)視覺(jué)問(wèn)題。傳統(tǒng)的方法多是用一些底層次的三維表示,比如說(shuō)密集的點(diǎn)云、密集網(wǎng)格模型或者是深度圖。這些低層次的三維表示雖然看起來(lái)很美觀,但是卻不好分析和理解,因此并不是很實(shí)用。
我們的研究希望出一個(gè)中看也中用的表示。作為人類,我們會(huì)及時(shí)辨別一個(gè)場(chǎng)景中哪些部分是完整的地面,哪些部分是完整的墻,我們希望計(jì)算機(jī)也能做到。
在俯視圖結(jié)構(gòu)化重建上,由于墻和地面往往是垂直的,所以俯視圖能夠給我們提供非常多的信息,我們的目標(biāo)是希望能夠得到矢量圖形平面圖,主要是基于墻角的點(diǎn)以及所有墻角之間的連線,這將對(duì)我們理解整個(gè)室內(nèi)結(jié)構(gòu)提供非常多的有用信息。
為了獲得矢量圖形平面圖,我們會(huì)考慮使用 PNG 圖像、點(diǎn)云、鐳射掃描作為輸入。
對(duì)于結(jié)構(gòu)化的定義,有以下這三點(diǎn):
一、 場(chǎng)景與結(jié)構(gòu)的表示是簡(jiǎn)潔的
二、 場(chǎng)景是根據(jù)語(yǔ)義來(lái)分割的
三、 分析理解的方式與人類保持一致
結(jié)構(gòu)化表示可以在機(jī)器人導(dǎo)航、室內(nèi)裝飾、虛擬購(gòu)房導(dǎo)航以及虛擬現(xiàn)實(shí)效果優(yōu)化等方面起作用。
單目結(jié)構(gòu)化重建
目前實(shí)現(xiàn)結(jié)構(gòu)化表示方面我們遇到哪些挑戰(zhàn)呢?
首先,高層次的場(chǎng)景理解需要提取整個(gè)平面;
其次,室內(nèi)存在許多造成干擾的遮擋物體;
最后,室內(nèi)場(chǎng)景的平面往往缺乏紋理。
為了應(yīng)對(duì)挑戰(zhàn),我們提取了室內(nèi)場(chǎng)景的特性:平面性與正交性,利用這兩點(diǎn)來(lái)做單目結(jié)構(gòu)化重建的工作。我們?cè)噲D從照片中提取出所需要的平面,并估計(jì)每個(gè)平面的三維參數(shù),進(jìn)而確定平面的三維結(jié)構(gòu)信息。
過(guò)去雖然有一些底層次的三維重建工作也取得了不錯(cuò)的效果,卻面臨著不夠直觀和平滑的問(wèn)題。
在我們的工作中,我們假定一個(gè)圖像擁有十個(gè)平面,每個(gè)平面分別用三維空間中的三個(gè)參數(shù)來(lái)表示,最終確定三維結(jié)構(gòu);為了進(jìn)一步確認(rèn)在三維空間中的范圍,我們會(huì)計(jì)算 segmentation masks;至于非平面區(qū)域,則估算 pixel-wise 的 depth map。
這三種信息合起來(lái)便是圖片的三維場(chǎng)景信息。
這樣做會(huì)遇到什么挑戰(zhàn)呢?那就是我們無(wú)法確認(rèn)第一個(gè)輸出的平面長(zhǎng)什么樣,因?yàn)槲覀兪歉鶕?jù) geometry 來(lái)做分割。
于是我們使用 set matching 解決以上問(wèn)題——在確認(rèn) prediction 以后,我們?cè)?Ground truth 里為每個(gè) prediction 找到最近零作為監(jiān)督。為了進(jìn)一步提升重建效果,我們還用 ground truth 的 text 來(lái)做監(jiān)督學(xué)習(xí)。
此外,我們使用了包含多種三維模型的 ScanNet 數(shù)據(jù)集作為訓(xùn)練網(wǎng)絡(luò),結(jié)合相機(jī)參數(shù),將三維空間中的平面投映到二維上來(lái),以獲得最終需要的訓(xùn)練數(shù)據(jù)——plane parameters, segmentation masks 和非平面區(qū)域的 depth map。
這份工作的意義在于,我們可以在平面圖上添加一些虛擬元素(電視、動(dòng)態(tài) logo、游戲),以增強(qiáng)虛擬現(xiàn)實(shí)的呈現(xiàn)效果。
從上圖來(lái)看,我們的算法對(duì)于大平面的檢測(cè)質(zhì)量還是比較穩(wěn)定的,只是在一些邊緣部分或者小平面還存在一些問(wèn)題。
另外,我們最終獲得的 depthmap,不單能夠保證內(nèi)部的絕對(duì)平滑,且在精度上也不比其他算法差。
關(guān)于這項(xiàng)工作,我們未來(lái)試圖探索的方向有:
一、 如何將單幅圖像結(jié)構(gòu)重建拓展到多幅圖像;
二、 考慮分析遮擋信息;
三、 用于室外場(chǎng)景;
四、 考慮更復(fù)雜的表面表示信息。
俯視圖結(jié)構(gòu)化重建
關(guān)于俯視圖結(jié)構(gòu)化重建,我將著重分享如何從 Jpeg 圖像和點(diǎn)云中進(jìn)行恢復(fù)重建。
這種矢量圖的價(jià)值在于:
可以幫助我們對(duì)建筑做出直觀的分析理解;
在有需要時(shí)可以將結(jié)構(gòu)圖轉(zhuǎn)成三維空間實(shí)現(xiàn)渲染效果;
如果你是一名建筑師,還可以隨時(shí)修改自己的設(shè)計(jì)圖。
為了獲取矢量圖,我們借鑒了 Human pose estimation 方法,并解決了所面臨的任意拓?fù)涮魬?zhàn)。在我們的工作中,會(huì)先通過(guò)深度網(wǎng)絡(luò)找到圖中的關(guān)鍵元素(墻角、門、物體……),然后再利用 Integar Programming(IP)進(jìn)行優(yōu)化。總的來(lái)說(shuō),前者構(gòu)成了我們的中間層表示,后者最終優(yōu)化出最終的結(jié)構(gòu)圖。
【更多關(guān)于 Integar Programming 的優(yōu)化細(xì)節(jié),請(qǐng)回看視頻 00:25:20 處,http://www.mooc.ai/open/course/538?=Leiphone】
以下都是我們的工作成果。
我們和其他的算法進(jìn)行了比較,結(jié)果顯示,在不同結(jié)構(gòu)化信息的 accuracy 和 recall 上,我們的算法基本上達(dá)到了 90 分,效果甚至比一些傳統(tǒng)的算法要好。
此外,為了達(dá)到簡(jiǎn)化生成俯視結(jié)構(gòu)圖流程的目的,我們后續(xù)做了通過(guò)點(diǎn)云生成矢量圖的工作,也就是說(shuō),只要一部可以拍出包含深度信息照片的手機(jī),我們就可以輕易獲得空間的點(diǎn)云,進(jìn)而生成俯視結(jié)構(gòu)圖。
生成流程方面,我們只是將之前的輸入從 Jpeg 圖像換成了點(diǎn)云。
這項(xiàng)工作的挑戰(zhàn)在于如何從點(diǎn)云中提取出中間層表示,原因有三:
一、 現(xiàn)有的三維學(xué)習(xí)方法不擅長(zhǎng)處理大規(guī)模的點(diǎn)云;
二、 全局的分析理解需要基于整體點(diǎn)云的理解;
三、 如何將 3D 信息與圖像信息結(jié)合到一起。
【更多關(guān)于點(diǎn)云中間層提取的細(xì)節(jié),請(qǐng)回看視頻 00:36:44 處,http://www.mooc.ai/open/course/538?=Leiphone】
以下是我們最終的工作成果,結(jié)果顯示我們的 Prediction 和 Ground Truth 很接近:
在下一步的工作中,我們會(huì)著重在以下三個(gè)方面進(jìn)行拓展:
一、 擺脫 primitive detection 的框架
二、 用深度網(wǎng)絡(luò)取代 Integer Programming(IP)
三、 直接使用 rgb 圖像進(jìn)行重建
多目結(jié)構(gòu)化重建
多目結(jié)構(gòu)化重建希望可以實(shí)現(xiàn)用戶拍攝一組 rgb 照片,結(jié)合照片和機(jī)位信息,就可以完美重建結(jié)構(gòu)化模型。
這項(xiàng)工作的難點(diǎn)在于:
一、 缺少三維信息的數(shù)據(jù);
二、 難以找到兩幅圖像之間的對(duì)應(yīng)關(guān)系;
三、 當(dāng)前的分析可能會(huì)基于早先的發(fā)現(xiàn)。
作為進(jìn)行中的工作,我們先提出了一些 baselines 模型:
一項(xiàng)是基于 Wireframe3D 的表示,可以檢測(cè)出二維空間里的角點(diǎn)和連線信息,進(jìn)而獲得三維空間中的 Wireframe 表示。
另外一項(xiàng)則是增強(qiáng)了魯棒性的 LayoutNet++,網(wǎng)絡(luò)先對(duì)兩幅圖像的共同之處做聚類,再根據(jù)聚類對(duì)信息進(jìn)行單獨(dú)處理,最后將所有輸出拼到一起。
【更多關(guān)于 LayoutNet++的操作原理,請(qǐng)回看視頻 00:44:50 處,http://www.mooc.ai/open/course/538?=Leiphone】
我今天的分享就這么多,謝謝大家。
以上就是本期嘉賓的全部分享內(nèi)容。更多公開(kāi)課視頻請(qǐng)到雷鋒網(wǎng)AI研習(xí)社社區(qū)(https://club.leiphone.com/)觀看。關(guān)注微信公眾號(hào):AI 研習(xí)社(okweiwu),可獲取最新公開(kāi)課直播時(shí)間預(yù)告。
雷峰網(wǎng)原創(chuàng)文章,未經(jīng)授權(quán)禁止轉(zhuǎn)載。詳情見(jiàn)轉(zhuǎn)載須知。