Transformer解碼真實場景!Meta推出70M參數(shù)SceneScript模型 精華
拋棄傳統(tǒng)方法,只采用Transformer來解碼真實場景!
近日,來自Meta的研究人員推出了SceneScript,只需要70M參數(shù),僅采用編碼器解碼器架構(gòu),就能將真實世界的場景轉(zhuǎn)化為幾何表示。
論文地址:https://arxiv.org/pdf/2403.13064.pdf
SceneScript是一種用于表示和推斷場景幾何圖形的方法,使用自回歸結(jié)構(gòu)化語言模型和端到端學(xué)習(xí)。
SceneScript可以助力AR和AI設(shè)備理解物理空間的幾何形狀,比如下面這個演示,利用Aria眼鏡拍攝的素材,SceneScript可以獲取視覺輸入并估計場景元素(墻壁、門窗等)。
是不是感覺一下子走到了虛擬和現(xiàn)實的交界?
用這個技術(shù)來幫助開發(fā)AR或者MR游戲應(yīng)該是妥妥的,小編表示期待地搓搓手。
再看下面這個,將SceneScript技術(shù)疊加到Meta Quest的顯示畫面上,現(xiàn)實世界瞬間變得方方正正,還挺萌的。
同時我們也可以發(fā)現(xiàn),SceneScript預(yù)測的場景元素可以任意擴展,不斷包含進來新的建筑特征、對象,甚至還可以將對象進行分解。
SceneScript是Meta RealityLabs Research的一個研究項目,整個模型分為編碼器和解碼器兩個部分。
其中,點云編碼器由一系列3D稀疏卷積塊組成,這些卷積塊將大點云匯集到少量特征中。
隨后,Transformer解碼器利用編碼器的特征作為交叉注意力的上下文,自回歸生成token。
編碼器和解碼器都只有大約35M參數(shù),整個模型訓(xùn)練了3天,大約200k次迭代。
模型在實際應(yīng)用中的推理速度也很不錯,即使直接使用PyTorch中原始的Transformer(未經(jīng)優(yōu)化),解碼256個token(相當于一個包含墻壁、門、窗和對象邊界框的中等大小的場景),也只需要大約2-3秒。
SceneScript是完全在模擬器中訓(xùn)練的,使用Project Aria眼鏡上捕獲的內(nèi)容序列,而沒有使用真實世界的數(shù)據(jù)。訓(xùn)練完成之后,模型又在真實場景中進行了驗證。
另外,在適應(yīng)其他設(shè)備時,也可以針對不同類型鏡頭的不同相機型號對模型進行微調(diào)。
不過作者也表示,SceneScript僅在室內(nèi)場景中進行了訓(xùn)練,因此對室外場景的推斷可能會導(dǎo)致不可預(yù)測的輸出。
目前,SceneScript僅供Meta的內(nèi)部研究團隊使用。
SceneScript
區(qū)別于傳統(tǒng)的將場景描述為網(wǎng)格(meshes),體素網(wǎng)格(voxel grids),點云(point clouds)或輻射場(radiance fields)的傳統(tǒng)方法,
SceneScript使用場景語言編碼器-解碼器架構(gòu),直接從編碼的視覺數(shù)據(jù)中推斷出結(jié)構(gòu)化語言命令集。
工作流程
如上圖所示,給定一個以自我為中心的環(huán)境視頻,SceneScript直接預(yù)測由結(jié)構(gòu)化場景語言命令組成的3D場景表示。
第一行表示整個工作流程,放大一下就是下面這樣子:
SceneScript先從VR眼鏡等設(shè)備中,拿到圖像或點云表示的視覺信息,
然后將視覺信息編碼為描述物理空間的潛在表示形式,
再將潛在表示解碼為簡潔、參數(shù)化且可解釋的語言(類似CAD),
最后,3D解釋器將上面的語言轉(zhuǎn)換為物理空間的幾何表示。
優(yōu)勢
SceneScript以純文本形式自回歸地預(yù)測手工設(shè)計的結(jié)構(gòu)化語言命令,這種形式有幾個明顯的優(yōu)點:
首先,作為純文本,占用空間很小,將大型場景的內(nèi)存要求降低到只需要幾個字節(jié)。
其次,這種命令旨在產(chǎn)生清晰且定義明確的幾何圖形,并且,模型所使用的make_door(*door_parameters)等高級參數(shù)命令,在設(shè)計上是可解釋、可編輯和語義豐富的。
另外,可以通過簡單地向語言中添加新的結(jié)構(gòu)化命令,來無縫集成新的幾何實體。
最后,這種解決方式也為未來一些潛在的新應(yīng)用提供了參考,例如編輯場景、查詢場景或者聊天交互。
另外,由于語言模型需要大量數(shù)據(jù)來訓(xùn)練響應(yīng)的結(jié)構(gòu)化語言命令,而對于當前應(yīng)用沒有合適的數(shù)據(jù)集。
為了訓(xùn)練SceneScript,研究人員于是自己造了一個名為Aria Synthetic Environments的大規(guī)模合成數(shù)據(jù)集,該數(shù)據(jù)集由100k個高質(zhì)量的室內(nèi)場景組成,包括以自我為中心的逼真場景演練和對應(yīng)的標簽。
對于每個場景,使用來自Project Aria的一整套傳感器數(shù)據(jù)來模擬以自我為中心的軌跡,還包括深度和實例分割,而架構(gòu)布局的基本事實采用上面提到的自定義的結(jié)構(gòu)化語言命令給出。
上圖展示了Aria生成場景的隨機樣本,顯示了布局、燈光和物體放置的多樣性,以及俯視圖、模擬軌跡(藍色路徑)、深度、RGB和對象實例的渲染,最后是場景點云。
SceneScript可以輕松擴展到新任務(wù),同時保持視覺輸入和網(wǎng)絡(luò)架構(gòu)的固定性。
網(wǎng)絡(luò)架構(gòu)
SceneScript 的管道是一個簡單的編碼器-解碼器體系結(jié)構(gòu),它使用視頻序列并以標記化格式返回SceneScript語言。
作者研究了三種編碼器變體:點云編碼器、擺姿勢圖像集編碼器和組合編碼器,結(jié)果表明,解碼器在所有情況下都保持不變。
編碼器從場景的視頻演練中以1D序列的形式計算潛在場景代碼。解碼器設(shè)計為將這些1D序列用作輸入。這樣就可以在一個統(tǒng)一的框架內(nèi)整合各種輸入模式。
上圖展示了SceneScript的核心管線。原始圖像和點云數(shù)據(jù)被編碼為潛在代碼,然后自回歸解碼為描述場景的一系列命令。使用自定義構(gòu)建的解釋器顯示可視化效果。
值得注意的是,對于本文中的結(jié)果,點云是使用Aria MPS從圖像中計算出來的,沒有使用專用的RGB-D / 激光雷達傳感器。
實驗結(jié)果
上圖為在Aria Synthetic Environments測試集上,SceneScript模型和SOTA方法之間的定性比較。
像SceneCAD這樣的分層方法會受到錯誤級聯(lián)的影響,這會導(dǎo)致邊緣預(yù)測模塊中缺少元素。而RoomFormer(一種拉伸為3D的2D方法)主要受到輕微捕獲的場景區(qū)域的影響,這些區(qū)域在密度圖中留下了不明顯的信號。
表中數(shù)據(jù)給出了Aria合成環(huán)境的布局估計,SceneScript方法與近期相關(guān)工作之間的定量比較。
本文轉(zhuǎn)自 新智元 ,作者:新智元
