三維場景圖:用於統一語義、三維空間和相機的結構

三維場景圖:用於統一語義、三維空間和相機的結構

3D Scene Graph: A structure for unified
semantics, 3D space, and camera
在這裏插入圖片描述

論文鏈接:

http://openaccess.thecvf.com/content_ICCV_2019/papers/Armeni_3D_Scene_Graph_A_Structure_for_Unified_Semantics_3D_Space_ICCV_2019_paper.pdf

摘要

對場景的全面語義理解對於許多應用程序都很重要,但是在什麼樣的空間中,不同的語義信息(如對象、場景類別、材質類型、三維形狀等)應該被固定下來,其結構應該是什麼?我們希望有一個統一的結構,承載不同類型的語義,我們遵循三維場景圖範式,生成一個三維場景圖。給定一個三維網格和註冊的全景圖像,我們構建一個橫跨整個建築的圖形,其中包括對象(例如類、材質、形狀和其他屬性)、房間(例如功能、照明類型等)和相機(例如位置等)的語義,以及這些實體之間的關係。然而,這一過程是令人望而卻步的勞動繁重,如果手動完成。爲了緩解這一問題,我們設計了一個半自動的框架,該框架採用了現有的檢測方法,並使用兩個主要的約束條件對其進行增強:

  1. 在全景圖上採樣的查詢圖像的框架,以最大限度地提高2D檢測器的性能;

  2. 不同攝像機位置的二維檢測的多視圖一致性增強。

  3. Introduction

語義信息應該建立在哪裏,它應該是最有用和不變的結構?這是一個基本問題的內容,佔據了許多領域,如計算機視覺和機器人。

遊戲中有很多組件:物體和空間的幾何結構,其中實體的類別,以及觀察場景的視點(即相機姿勢)。在這些信息可以固定的空間上,最常用的選擇是圖像。然而,爲此目的使用圖像並不理想,因爲它呈現出各種弱點,例如像素對任何參數變化都有很大的變化,缺少對象的整個幾何體,等等。

爲此目的的理想空間應至少(a)儘可能多地保持不變,(b)容易且確定地連接到不同域和任務所需的各種輸出端口,例如圖像或視頻。

爲此,我們闡明,三維空間更穩定和不變,但連接到圖像和其他像素和非像素輸出域(如深度)。因此,我們在那裏建立語義信息,並根據需要將其投影到其他所需的空間(例如,圖像等)。具體來說,這意味着信息是基於建築物的底層三維網格。此方法提供了許多有用的值,如自由三維、amodal、遮擋和開放空間分析。

更重要的是,語義可以投射到任何數量的視覺觀察(圖像和視頻)上,從而爲它們提供註釋,而無需額外的成本。結構應該是什麼?語義存儲庫使用不同的表示,如對象類和自然語言標題。與其他表示方法相比,場景圖的思想具有許多優點,使其成爲理想的候選對象。它能夠包含比對象類(如ImageNet[14])更多的信息,但它比自然語言標題(如CLEVR[22])包含更多的結構和不變性。我們在基本的場景圖結構(如Visual Genome[27]中的場景圖結構)中增加了必要的3D信息,並生成了3D場景圖。

我們將三維場景圖視爲一個分層圖,每個層代表不同的實體:建築、房間、對象和相機。可以添加更多層來表示語義信息的其他來源。與2D場景圖類似,每個實體都增加了幾個屬性,並與其他實體連接,形成不同類型的關係。爲了構建三維場景圖,我們將最新的算法結合在一個主要的自動語義識別方法中。從二維開始,我們使用兩個約束逐步聚合三維信息:框架和多視圖一致性。每個約束都提供更健壯的最終結果和一致的語義輸出。

本文的貢獻可以概括爲:

•我們將[27]中的場景圖思想擴展到三維空間和地面語義信息。這爲各種屬性和關係提供了自由計算。

•我們提出了一種兩步robusti fication方法,利用不完善的現有檢測器優化語義識別,這使得主要是手動任務的自動化成爲可能。

•我們使用3D場景圖作爲附加模式來擴充Gibson Environment的[44]數據庫,並在3dscenegraph.stanford.edu上公開發布。
在這裏插入圖片描述

  1. Related Work

場景圖

視覺基因組是一個多樣的、結構化的知識庫[27],它由物體和人在野外的二維圖像組成。每幅圖像的語義信息以場景圖的形式進行編碼。除了對象類和位置之外,它還提供屬性和關係。圖中的節點和邊源於手動定義的自然語言標題。爲了解決由於註釋的自由形式而導致的命名不一致,在將條目轉換爲最終場景圖之前對其進行規範化。在我們的工作中,語義信息是以一種自動化的方式生成的,因此更加有效,已經標準化,並且在很大程度上沒有人類的主觀性。儘管使用預先定義的類別可能會受到限制,但它與當前的學習系統兼容。此外,3D場景圖允許從3D計算無限數量的空間一致的2D場景圖,併爲關係提供數值精確的量化。然而,我們目前的設置僅限於室內靜態場景,因此不包括室外相關屬性或動作相關關係,如視覺基因組。使用場景圖跟隨視覺基因組,出現了一些使用或產生場景圖的作品。示例包括場景圖生成[30,46]、圖像字幕/描述[26,3,23]、圖像檢索[24]和視覺問答[17,51]。除了視覺語言任務,還有焦點關係和動作檢測[34,31,47]。除了常見的3D視覺任務外,3D場景圖同樣能夠使其它任務以3D空間、2D-2.5D圖像、視頻流和語言的組合出現。

結構在預測中的應用

將結構添加到預測中(通常以圖表的形式)已經證明對一些任務是有益的。一個常見的應用是用於語義分割的條件隨機場(CRF)[28],通常用於爲局部預測提供全局平滑和一致的結果[43,25]。在機器人導航的情況下,通過使用語義圖來抽象物理地圖,代理可以通過了解獨立於度量空間的語義節點之間的關係來學習,這使得跨空間的泛化更容易[42]。圖形結構也常用於人-對象交互任務[39]和其他時空問題[20],在連續視頻幀內和跨連續視頻幀的節點之間創建連接,因此擴展結構以包括空間和時間。將幾何、提供和外觀結合起來的語法已經被用於圖像中的整體場景解析,其中關於場景和對象的信息被捕獲在層次樹結構中[11、48、21、19]。節點表示場景或對象的組件和屬性,而邊可以表示分解(例如,場景到對象等)或關係(例如,支持等)。類似於這樣的作品,我們的結構結合了不同的語義信息。然而,它可以捕捉建築尺度上的全局3D關係,並通過將元素放置在不同的層中,在圖形的定義中提供更大的自由dom。這消除了它們之間直接依賴關係的需要(例如,場景類型和對象屬性之間)。另一個有趣的例子是Visual Memex[36],它利用一個圖形結構來編碼對象之間的上下文和視覺相似性,而不需要類別的概念,目的是預測對象類放置在一個屏蔽區域之下。朱等人。[50]將知識庫表示用於對象提供推理任務,該任務在對象、屬性和提供的不同節點之間放置邊。這些例子將不同類型的語義信息整合在一個用於多模態推理的單一結構中。上面的內容反映了擁有豐富的結構化信息的價值。

語義數據庫

現有的語義存儲庫被分割成特定類型的視覺信息,其中大多數集中在對象類標籤和空間跨度/位置信息(例如,分段掩碼/邊界框)。這些可以基於視覺形態(例如RGB、RGBD、點雲、3D網格/CAD模型等)和內容場景(例如室內/室外、僅對象等)進一步分組。其中,少數提供基於三維網格的多模式數據(例如,2D-3D-S[6],Matterport3D[10])。最近在[44]中提出的Gibson數據庫由數百個帶有註冊全景圖像的3D網格模型組成。它的平面尺寸大約是2D-3D-S和Matterport3D數據集的35倍和4.5倍,然而,它目前缺乏語義註釋。其他存儲庫專門處理不同類型的語義信息,例如材料(例如,上下文數據庫中的材料(MINC)[8])、視覺/觸覺紋理(例如,描述紋理數據集(DTD)[12])和場景類別(例如,麻省理工學院地點[49])。

自動和半自動語義檢測

語義檢測是一個非常活躍的領域(本文不包括詳細的概述)。需要強調的一點是,與存儲庫類似,工作的重點是有限的語義信息範圍。對象語義範圍從類識別到空間跨度定義(邊界框/分段掩碼)。最新的工作之一是Mask R-CNN[18],它在RGB圖像中提供對象實例分割遮罩。其他具有類似輸出的是閃電網[15](RGB)和截錐點網[38](RGB-D)。除了檢測方法外,衆包數據註釋也是一種常見的策略,尤其是在構建新的存儲庫時。儘管大多數方法只專注於體力勞動,但有些方法使用自動化來最小化與數據的人工交互量,並提供更快的週轉。類似於我們的方法,Andriluka等人。[4] 使用在COCOStuff數據集上訓練的Mask R-CNN獲取初始對象實例分割遮罩,隨後由用戶驗證和更新。Polygon RNN[9,2]是另一個機器輔助註釋工具,它在給定用戶定義的邊界框的圖像中提供對象的輪廓。兩者都停留在二維世界中,專注於對象類別和分割遮罩。另一些則採用較低級別的自動化來加速3D中的註釋。ScanNet[13]提出了一個web界面,用於手動註釋室內空間的3D網格模型。它首先使用基於圖切割的方法對場景進行過度分割。然後,系統會提示用戶以對象實例分段爲目標標記這些分段。[37]有一個相似的起點;根據幾何和外觀線索,結果的過分段進一步分組爲更大的區域。這些區域由用戶編輯以獲取對象語義註釋。[41]使用來自2D註釋的對象分割遮罩和標籤來自動恢復3D場景幾何體。儘管採用了自動化技術,但上述方法在很大程度上依賴於人與人之間的相互作用,以獲得足夠精確的結果。

  1. 3D Scene Graph Structure

該方法的輸入是三維掃描儀的典型輸出,由三維網格模型、註冊的RGB全景圖和相應的相機參數組成,如Matterport3D[10]或Gibson[44]數據庫中的數據。輸出是掃描空間的三維場景圖,我們將其表示爲四層圖(見圖1)。每個層都有一組節點,每個節點都有一組屬性,節點之間有表示它們關係的邊。第一層是整個建築,包括圖形中給定網格模型的根節點(例如住宅建築)。建築的房間構成了三維場景圖的第二層,每個房間都有一個獨特的節點(如客廳)。房間內的物體形成第三層(如椅子或牆)。

最終層將相機作爲圖形的一部分引入:

每個相機位置是3D中的一個節點,並且可能的觀測(例如RGB圖像)與之關聯。屬性:圖中的每個建築、房間、對象和相機節點(從現在起稱爲元素)都有一組屬性。例如對象類、三維形狀、材質類型、姿勢信息等。

關係:

元素之間的連接是通過邊建立的,可以跨越不同的層(例如,對象對象、相機對象室等)。屬性和關係的完整列表見表1。

  1. Constructing the 3D Scene Graph

要構建三維場景圖,我們需要識別其元素、屬性和關係。在給定元素數量和比例的情況下,用對象標籤標註輸入的RGB和3D網格數據及其空間跨度是構建3D場景圖的主要勞動瓶頸。因此,本文的主要工作是通過提出一種自動方法來解決這個問題,該方法使用現有的語義檢測器引導註釋管道並最小化人工勞動。管道的概述如圖2所示。在我們的實驗(第5節)中,我們使用了性能最好的掩模R-CNN網絡[18],得到的結果僅適用於置信度爲0.7或更高的檢測。然而,由於檢測結果不完善,我們提出了兩種分別在二維和三維域上操作的魯棒機制,即幀和多視圖一致性,以提高其性能。

全景圖像的幀處理

二維語義算法對直線圖像進行操作,其中一個最常見的錯誤與它們的輸出相關,就是對圖像邊界處部分捕獲對象的錯誤檢測。當從一個稍微不同的視角觀察相同的物體時,將它們放在靠近圖像中心的位置,並且不部分捕捉它們,則檢測精度得到提高。使用RGB全景圖作爲輸入,可以制定一種框架方法,從中對直線圖像進行採樣,以最大限度地提高檢測精度。圖3總結了這種方法。它使用了兩種啓發式方法:(a)將對象放在圖像的中心;(b)將圖像適當放大以提供足夠的上下文。

多視圖一致性

在三維網格上註冊RGB全景圖後,我們可以通過在三維曲面上投影二維像素標籤來對其進行註釋。然而,由於全景圖結果不完美(圖4(b)),以及某些對象的常見不良重建或圖像像素與網格表面之間的不對準(相機註冊錯誤),僅投影一個全景圖並不能產生準確的分割。這會導致相鄰對象上的標籤“泄漏”(圖4(c))。但是,場景中的對象可以從多個全景圖中看到,這使得可以使用多視圖一致性來解決此類問題。這就形成了我們的第二個robustification機制。我們首先將所有全景標籤投影到三維網格曲面上。爲了聚合投出的選票,我們根據觀察點離曲面的距離來制定加權多數投票方案,並遵循這樣的啓發:攝像機離物體越近,觀察點就越大,越容易看到。

與幀機制類似,在檢測級別上執行投票。我們在一組從全景圖中的同一個對象實例接收投票的面Fobj中尋找標籤的一致性。我們首先對每個人臉進行加權多數投票,以確定Fobj的候選標籤池,因爲它是通過投射所有全景圖得到的,然後使用最常見的標籤池將其分配給組。在3D中查找連接組件的最後一步,爲我們提供了最終實例分割遮罩。這些信息可以投影回全景圖,從而提供一致的二維和三維標籤。

最後,我們對自動提取的結果進行手動驗證。我們開發了web界面,用戶可以根據需要進行驗證和更正。[5]中提供了此步驟的屏幕截圖和更多詳細信息。我們在Amazon Mechanical Turk(AMT)上批量採購驗證。然而,我們並不認爲這是管道的關鍵步驟,因爲沒有任何驗證的自動化結果非常可靠,具有一定的實際用途(見第5.3和[5]節)。手動驗證主要用於評估目的,並形成特定研究用例的無錯誤數據。管道由兩個主要步驟組成(所有操作都在直線圖像上執行)。

驗證和編輯:

在全景圖上投影最終的三維網格標籤後,我們渲染直線圖像,顯示每個找到的對象的中心和最大程度,包括20%的周圍環境。我們要求用戶(a)驗證所示對象的標籤-如果錯誤,圖像將從其餘過程中丟棄;(b)驗證對象的分割掩碼;如果掩碼不符合標準,則用戶(c)添加新的分割掩碼。添加丟失的對象:上一步將重新定義自動結果,但可能仍有丟失的對象。我們將經過驗證的遮罩投射回全景圖,並將其分解爲5個重疊的直線圖像(每張圖像72個偏航差)。此步驟(a)詢問用戶是否缺少對象類別的任何實例,如果發現不完整,(b)用戶遞歸地添加掩碼,直到對象類別的所有實例都被屏蔽。 所描述的方法將圖形的對象元素作爲輸出。爲了計算屬性和關係,我們使用現成的學習和分析方法。有關它們的完整描述和帶有結果的視頻,請參見[5]。
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
5. Experiments

我們在Gibson Environment的[44]數據庫上評估我們的自動流程。

5.1. Dataset Statistics

吉布森環境的數據集由572棟完整的建築物組成。它是從真實的室內空間收集,併爲每棟建築提供相應的三維網格模型、RGB全景圖和相機姿態信息。我們用我們的自動流水線註釋所有的二維和三維模式,並在Gisbon的小分割上手動驗證這個輸出。使用的語義類別來自對象的COCO數據集[33],材質的MINC[8],紋理的DTD[12]。關於數據集和每個屬性和關係的細節分析見[5]。

5.2. Evaluation of Automated Pipeline

我們在二維全景圖和三維網格模型上評估我們的自動化管道。我們遵循COCO評估方案[33]並報告兩種模式的平均精密度(AP)和召回率(AR)。我們使用在COCO數據集上訓練的最好的現成掩模R-CNN模型。具體來說,我們從Detectron[1]中選擇了帶有鈴鐺和口哨的面具R-CNN。根據模型說明,它使用ResNeXt-152(32x8d)[45]與特徵金字塔網絡(FPN)[32]相結合。它在ImageNet-5K上進行了預先訓練,在COCO上進行了調諧。有關實現和培訓/測試的更多詳細信息,請參閱Mask R-CNN[18]和Detectron[1]。

基線:

我們在二維中比較了以下方法:

•Mask R-CNN[18]:我們對全景圖上採樣的6個沒有重疊的直線圖像運行Mask R-CNN。探測結果被投射回全景圖上。

•帶框架的掩模R-CNN:這裏的全景圖結果來自我們的第一個robusti fication機制。 •使用框架和多視圖一致性(MVC)屏蔽R-CNN-我們的:這是我們的自動化方法。應用兩種robusti fication機制得到全景圖結果。

這些是3D的:

•Mask R-CNN[18]和全景投影:Mask R-CNN的全景結果投影在三維網格表面上,每個面都有簡單的多數投票。

•使用框架和全景投影屏蔽R-CNN:我們第一個機制的全景結果遵循類似的二維到三維投影和聚集過程。

•使用框架和多視圖一致性(MVC)屏蔽R-CNN-我們的:這是我們的自動化方法。 如表2所示,我們方法中的每個機制都有助於提高最終精度。這在定性結果中也是可見的,每一步都進一步消除了錯誤的檢測。例如,在圖5的第一欄中,Mask R-CNN(b)檢測到窗戶外的樹木是盆栽植物、繪畫上的花瓶和鏡子中的牀反射。帶有框架(c)的面罩R-CNN能夠移除樹檢測,並恢復高度阻塞的缺失廁所。用框架和多視圖一致性(d)屏蔽R-CNN,進一步去除

粉刷花瓶和牀上用品,效果非常接近地面的真實感。

類似的改進可以在3D中看到(圖6)。儘管它們在數量上看起來可能沒有那麼大,但它們對於獲得一致的三維結果和大多數與一致的局部區域和更好的對象邊界相關的變化來說是至關重要的。

人力勞動:

我們進行了一項用戶研究,將檢測性能與人類勞動(花費的時間)聯繫起來。結果見表3。請注意,完全手動3D註釋[7]報告的工時是針對12個對象類(與我們的62個對象類相比)和專家3D註釋器(與我們的非熟練工人相比)計算的。 使用不同的檢測器:

在此之前,我們一直在使用性能最好的面具R-CNN網絡,在COCO上有41.5個美聯社報道[18]。我們想進一步瞭解當使用不太精確的檢測器時兩種robusti fication機制的行爲。

爲此,我們使用BlitzNet[15]進行了另一組實驗,BlitzNet是一個推理速度較快但在COCO數據集上報告性能較差的網絡(AP 34.1)。我們注意到,兩個檢測器的結果在不同基線之間提供了相似的AP相對增加(表4)。這表明,無論初始預測如何,robusti fication機制在提高標準檢測器性能和糾正錯誤方面都能提供類似的價值。

5.3. 2D Scene Graph Prediction

到目前爲止,我們關注的是自動檢測結果。下一步將自動生成最終的三維場景圖,並計算屬性和關係。這方面的結果見[5]。我們將此輸出用於二維場景圖預測的實驗。二維場景圖(SG)[35]有3個標準評估設置:(a)SG檢測,(b)SG分類,和(c)關係分類(用於解釋見[5])。與僅存在稀疏和實例特定關係的視覺基因組相比,我們的圖是密集的,因此一些評估(例如,關係檢測)不適用。我們專注於關係分類,並提供以下結果:(a)空間順序和(b)相對體積分類,以及(c)作爲遮擋關係應用的amodal掩模分割。

空間順序:

給定一個RGB直線圖像和一個對象對的(可見的)分割遮罩,我們預測查詢對象是否在另一個對象的前/後、左/右。我們使用由我們的方法自動生成的分割掩碼訓練ResNet34,並使用中等吉布森數據分割。基線是從訓練數據中提取的統計信息猜測。

相對體積:

我們遵循相同的設置並預測查詢對象的體積是小於還是大於另一個對象。圖7顯示了兩項任務的預測結果,而定量評估則在表5中。

Amodal掩碼分段:

在給定攝像機位置的情況下,我們預測了部分被其他物體遮擋的物體的二維非對稱分割。由於我們的語義信息存在於三維空間中,因此考慮到以往工作中數據收集的困難,我們可以在不附加註釋的情況下,以完全自動的方式推斷出對象遮擋的全部範圍[29、52、16]。我們訓練一個U-Net[40]不可知到語義類,以預測以RGB圖像爲中心的對象的可見/遮擋掩模的每像素分割(Amodal Prediction(Ours))。

作爲基線,我們取一個模態掩碼的平均值(a)超過訓練數據(平均a modal掩碼)和(b)假設每個語義類在測試時擁有完美的知識(平均類特定Amodal掩碼)。關於數據生成和實驗設置的更多信息見[5]。我們將f1分數和交叉重疊合並作爲三個語義類(空、遮擋和可見)的每像素分類以及宏平均值(表6)。儘管由於空類的嚴重偏差,性能差距看起來並不顯著,但我們的方法在預測閉塞區域方面始終顯示出顯著的性能提升,表明它成功地學習了不同於基線的模態感知(圖8)。
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述

  1. Conclusion

我們討論了多模態三維語義信息在建立物體、三維空間和相機之間關係的單一結構中的基礎。我們發現這樣的設置可以提供對現有任務的洞察,並允許在語義信息源的交叉中出現新的任務。爲了構建三維場景圖,我們提出了一種主要的自動方法,該方法在框架和多視圖一致性的情況下提高了當前學習系統的魯棒性。我們在Gibson數據集上演示了這一點,該數據集的3D場景圖結果是公開的。我們計劃擴展對象類別以包含更多通常出現在室內場景中的對象,因爲當前註釋在某些地方往往很稀疏。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章