Co-Fusion:物體級別的語義SLAM

點擊上方“3D視覺工坊”,選擇“星標”

乾貨第一時間送達

作者:robot L

https://zhuanlan.zhihu.com/p/137100522

本文僅做學術分享,如有侵權,請聯繫刪除。

主要內容

  • 物體級別的語義SLAM。維護一個背景模型和多物體模型,每個模型由面元地圖表示。

  • 基於運動分割語義信息檢測運動物體。

  • 使用基於ICP對齊的幾何誤差和基於顏色差異的光度誤差跟蹤背景模型(相機位姿)和多個運動物體。

  • 根據[8]的方法更新每個模型的面元地圖。

  • 開源代碼地址:martinruenz/co-fusion

M. Runz, L. Agapito. Co-fusion: Real-time segmentation, tracking and fusion of multiple objects. IEEE International Conference on Robotics and Automation, 2017.

摘要

本文中,我們介紹了Co-Fusion,一種稠密SLAM系統,以RGB-D圖片流爲輸入,並分割場景爲不同物體(使用運動或語義線索)同時實時跟蹤和重建它們的3D形狀。我們使用一個多模型擬合方法,其中每個物體能夠獨立於背景進行運動,並被有效地跟蹤,並且它的形狀使用與該物體標號關聯的像素隨時間被融合。之前試圖解決動態場景的嘗試一般假設運動區域爲外點,並且不建模它們的形狀或跟蹤它們隨時間的運動。相反地,我們讓機器人維護每個物體的3D模型,並通過隨時間的融合提高模型結果。因此,我們的系統能夠使機器人以物體級別描述場景,具有和環境交互的潛力;甚至在動態環境中。

1. 介紹

雖然SLAM取得很大進步,但是大部分假設靜態環境或把動態物體當做外點。但是,在機器人應用中,大多數在前景中運動的物體是機器人感興趣的。如果我們想設計與動態環境交互的機器人,必須配置如下兩個功能:(i)發現場景中的物體(ii)跟蹤並估計物體的3D幾何。這種高層基於物體的場景表示將會極大增強機器人的感知和交互能力。

本文中我們提出了Co-Fusion,一種新的基於RGB-D的SLAM系統,能夠分割場景爲背景和不同的前景物體,使用運動或語義信息,同時跟蹤和重建它們的3D幾何。系統提供兩種可替換的分割策略——運動分割和物體實例分割。分割完成後,物體被添加到一組積極模型中,並被跟蹤和融合。每個物體的跟蹤和融合線程基於最近的基於面元的方法[8][30]。

本文主要貢獻如下:

  • 允許機器人不僅重建周圍環境而且能夠獲得未知物體的詳細3D幾何信息。

  • 系統能夠使得機器人發現場景中的新物體,並通過主動運動學習準確的3D模型。

我們證實Co-Fusion在許多場景下——在桌子上放置之前未看到的不同物體並學習它們的幾何(圖1),手遞手傳遞物體(圖3),手持運動相機跟蹤一個運動物體(圖9)和一個駕駛場景(圖5a)。我們也定量證實了跟蹤和重建的魯棒性。

圖1.  一個序列,證實動態SLAM系統。三個物體被依次放置在桌子上:首先一個小籃子(藍色標籤),一個瓶子(黃色)和一個泰迪熊(綠色)。結果展示了所有物體被成功地分割,跟蹤和建模。

2. 相關工作

微軟Kinect設備和廉價深度相機的到來促進了實時3D掃描的研究。例如KinectFusion[14]的系統首先使得實時準確地建圖任意室內場景幾何變得可能,通過融合深度相機獲得的圖片通過在環境中移動相機。準確和稠密3D幾何的實時獲取開啓了快速掃描或AR/VR和移動機器人的應用,之前通過離線或稀疏技術是不可能做到的。KinectFusion的後繼者快速解決了一些缺點。雖然這些主要關注處理大場景的擴展[7][29][15][31]或包括迴環[30],增強跟蹤的魯棒性[31]或增加的內存和尺度效率通過使用基於點而不是體素表示[8],得到增加的3D重建質量[10]。獲得更高層次的語義場景理解通過使用一個稠密平面表示[21]或者實時3D物體識別[22]進一步提高跟蹤表現同時打開了與場景的虛擬或真實交互。更近的方法例如[25][11]實時組合語義分割甚至識別到SLAM系統中。雖然他們展示了令人印象深刻的表現,他們仍然限制在靜態場景。

許多傳統SLAM和稠密重建系統的核心潛在假設是場景大部分靜態。這些稠密系統如何被擴展到跟蹤和重建更多的模型而不妥協實時表現?SLAMMOT項目[28]向動態環境中的SLAM框架邁出了重要的一步通過組合運動物體的檢測和分割到SLAM操作中。它主要在駕駛場景中驗證並限制爲稀疏重建。最近稠密動態環境的實時重建問題才被解決。大多數工作致力於實時捕捉非剛體幾何通過RGB-D相機。假設是相機觀測的單個物體隨着時間自由分解。DynamicFusion[13]是彈幕實時系統的一個主要例子,其融合來自深度傳感器的可分解物體的幀而不需要任何預訓練模型或形狀模板。通過使用多個RGB-D傳感器,4DFusion[2]能夠捕捉實時可分解形狀以非常細節的層次,並能夠處理較大的分解和拓撲變化。另一方面,基於模板的技術也能夠獲得高度真實的結果,但是它們限制在需要增加模板的獲取步驟[32]或者致力於跟蹤特定的物體通過使用手工設計的或預訓練的模型[26]。這些包括一般的人工跟蹤方法,或者需要物體在某個位姿下的幾何模板[27],或者骨架結構的先驗知識[23]。

相反地,捕捉動態場景的全幾何可能包含更多運動物體,但是仍然沒有收到很大關注。Ren等人[18]提出一種同時跟蹤和重建3D物體的方法通過精修一個初始簡單形狀實體。但是,與我們的方法相反,它只能跟蹤一個運動物體並需要一個手工初始化。[12]提出一個組合的方法用於估計人造物的位姿,形狀和運動學結構基於運動分割。雖然它業績預聯合跟蹤和分割,關注點在於發現人造物,只有前景物體被重建,並且它的表現不是實時的。Stuckler和Behnke[24]提出了一個稠密剛體運動分割算法用於RGB-D序列。他們只分割RGB-D圖片並估計運動但是不同時重建物體。最終[3]構建一個環境模型並使用變化檢測考慮場景中變得與模型不一致的新物體部分。但是,該方法需要一個人在環中來獲得一個已知的正確的分割並且不提供實時操作。

一些最近的純RGB方法也解決了動態場景的單目3D重建問題。例如[20][4][9]的工作類似我們的同時分割,跟蹤和重建方法。Russell等人[20]執行多模型擬合來分解場景爲逐片剛體部分,被組合以形成單個物體。他們方法的優點是處理非剛體,剛體或人造物混合的靈活性。Fragkiadaki等人[4]跟隨一個流程方法,首先執行長期跟蹤並聚類爲不同物體,然後執行非剛體重建。但是,這些方法都執行稀疏跟蹤,並且都是批處理方法,需要提前知道所有幀。我們的方法也和[19]的稠密RGB多目標重建方法有相似之處,其執行同時分割,跟蹤和多剛體模型的3D重建,不同的是我們的方法是在線實時的,而他們的方法是批處理方法,每幀需要幾秒來執行。

3. 方法綜述

圖2.  方法綜述

Co-Fusion是一個在線RGB-D SLAM系統,能夠實時處理每個新幀。同時維護一個背景的細節幾何全局模型和每個物體的模型,並跟蹤每個物體的運動。每個模型存儲爲一組點。我們的系統維護兩組物體模型:積極模型是當前可見的物體,消極模型是曾經可見的物體。

圖2展示了我們系統的逐幀操作。在一開始,場景被初始化單個積極模型——背景。一旦融合的背景3D模型和相機位姿穩定後,對每個新幀,接下來的步驟被執行:

跟蹤。首先,我們跟蹤每個積極模型在當前幀的6DoF位姿。這通過對每個物體最小化一個基於稠密ICP對齊的幾何誤差和基於當前幀中的點和存儲3D模型中的點之間的顏色差的光度代價的目標函數。

分割。在該步驟,我們分割當前幀的像素屬於某一個積極模型/物體。我們的系統基於運動和語義標號進行分割。

1)運動分割。我們將運動分割構建爲一個使用全連接條件隨機場的標號問題,並使用[9]中的高效方法在CPU上實時優化。標號後是連通區域提取。如果連通區域大部分被外點佔據,則認爲該區域對應一個物體,並建立一個新模型。

2)多類別圖片分割。使用[16]基於語義的方法分割圖片。

融合。使用新估計的6DOF位姿,每個積極模型的稠密3D幾何被更新通過融合屬於該模型的標號點。我們使用基於面元的融合方法[8][30]。

注:論文[8]的詳細分析詳見

https://zhuanlan.zhihu.com/p/137460969

4 記號和預備知識

使用 表示2D圖片域,由像素座標 組成,齊次形式爲 。一幀RGB-D包含深度圖 和一個彩色圖 。灰度值記作 。3D點 到像素的投影表示爲 ,其中

反投影爲

本文將每個物體用一個面元地圖進行表示。一個面元地圖記作 ,其中每個面元 ,分別表示位置,法向量,顏色,權重,半徑和兩個時間戳(最舊和最新)。

本文使用 表示 時刻的物體位姿集合。 將面元地圖 中的點變換到全局參考系中。特別地,我們使用 表示背景模型的位姿變換(即相機在全局參考系中的位姿)。

5 跟蹤積極模型

A 能量

對於每個面元地圖 ,最小化一個代價函數,其包括基於點面ICP的幾何項和光度彩色項

(1)

B 幾何項

對於每個面元地圖 ,我們想最小化(i)當前深度地圖的3D反投影和(ii)來自前一幀 的預測深度地圖之間的點面ICP配準誤差:

(2)

其中 是當前幀深度圖中的點, 時刻的預測深度點, 是對齊 時刻模型的變換。

C 光度顏色項

(2)

爲了提高效率,採用四層金字塔策略。GPU應用採用[30]的開源代碼。

6 運動分割

在跟蹤步驟結束後,我們有了跟蹤物體們的位姿的新估計

接下來,我們需要將當前 時刻的像素分類,屬於跟蹤的某個物體或者不屬於任何物體。假設跟蹤的物體個數有 個,現在我們需要尋找一個映射 ,分配一個標號 給每個像素點 ,其中 是外點標號(不屬於任何跟蹤物體)。

爲了在CPU上實時進行運動分割,我們首先過分割當前幀圖片爲SLIC超像素使用[17]的快速應用,並在這些超像素上使用標號算法。超像素的位置,顏色和深度被估計通過平均內部所有像素的結果。

然後遵循[9]的能量最小化方法,優化超像素的標號集合

(4)

其中 遍歷所有的超像素(超像素一共有 個)。

後處理。首先融合所有相連的具有相似幾何變換的模型。其次抑制不相連的具有相同標號的模型,除了該標號模型的最大的連通塊之外。

7 物體實例分割

使用物體實力分割[16]中排名靠前的SOTA方法來分割感興趣物體。

8 融合

使用類似[8]的方法融合並更新面元模型。

9 評估

我們執行一個定量的評估同時在具有真值數據的仿真和真實序列中。合適的具有Kinect類似噪聲的仿真序列[6]被特別地創建爲該工作(ToyCar3和Room4)並且已經公開可用了,伴隨着評測工具。爲了得到真是數據的真值,我們在一組物體上貼上了標籤如圖10所示,並且使用NextEngine 3D掃描儀準確地重建它們。該場景被記錄使用一個運動捕捉系統(OptoTrack)以獲得軌跡的真值數據。一個Asus Xtion被使用以獲取真實序列。雖然在我們的流程中每個階段的質量依賴其他階段的表現,即較差的分割也許導致較差的重建,評估不同的模塊還是有價值的。

位姿估計。我們比較了估計和真值軌跡通過計算絕對軌跡(AT)均方根誤差(RMSE)對於場景中的每個物體。在仿真數據中的結果被展示在表2和圖7中。在真實序列中的結果被放在補充材料中。

表2.  估計軌跡的AT-RMSEs用於我們的仿真序列(毫米)。

圖7.  估計軌跡和真值的比較對於每個物體在(a)ToyCar3和(b)Room4序列中。IoU測量對於每個標籤和每幀在(c)ToyCar3和(d)Room4序列中。car1和car2的圖開始較晚,因爲之前該物體還沒有被分割。

運動分割。因爲分割階段的結果是純2D的,分割質量的傳統度量被使用。我們計算交併比(IoU)測量對於每個編號對於仿真序列的每幀(我們沒有真值分割對於真實序列)。圖7展示了在ToyCar3和Room4序列中的IoU。

融合。爲了獲取融合質量,我們可以分別或聯合檢驗每個物體的3D重建誤差,通過在同一個座標系統中輸出幾何。該誤差強烈依賴跟蹤,但是很好地突出了整個系統的質量。對於積極模型的統一地圖中的每個面元,我們計算到真值網格上最近點的距離,在對齊兩個表示之後。圖8可視化了重建誤差通過一個熱度圖,並突出了與ElasticFusion的差異。對於真實場景Esone1我們獨立地計算每個物體的3D重建誤差。結果展示在表1和圖10中。

圖10.  Esone1序列的圖示。標記被添加到真實3D物體上,並使用OptiTrack系統跟蹤。高度準確的3D掃描儀被用於獲取物體幾何的真值數據以允許定量評估。

定性結果。我們執行一組定性實驗來證實Co-Fusion的能力。它的一個優點是放寬了3D掃描過程,因爲我們不需要依賴靜態世界假設。特別地,用戶可以一隻手手持並旋轉一個物體,另一隻手在物體周圍移動深度傳感器。這種操作模式提供了更多的靈活性,與需要轉盤的方法相比。圖9展示了實驗結果。

圖9.  手持泰迪熊的重建結果。左手需要旋轉熊,右手移動RGB-D傳感器,需要跟蹤兩個獨立的運動。

我們的最終證實展示了Co-Fusion連續跟蹤和精修物體當它們被一個接着一個被放置到桌面上時,如圖1所示。成功分割的結果被展示在圖1(b)中。

部分參考文獻

[8] M. Keller, D. Lefloch, M. Lambers, S. Izadi, T. Weyrich, and A. Kolb. Real-time 3d reconstruction in dynamic scenes using point-based fusion. In International Conference on 3D Vision, 3DV, Washington, DC, USA, 2013. IEEE Computer Society.

[9] P. Krahenbuhl and V. Koltun. Efficient inference in fully connected crfs with gaussian edge potentials. In Advances in Neural Information Processing Systems. Curran Associates, Inc., 2011.

推薦閱讀

重磅!3DCVer-學術論文寫作投稿 交流羣已成立

掃碼添加小助手微信,可申請加入3D視覺工坊-學術論文寫作與投稿 微信交流羣,旨在交流頂會、頂刊、SCI、EI等寫作與投稿事宜。

同時也可申請加入我們的細分方向交流羣,目前主要有3D視覺CV&深度學習SLAM三維重建點雲後處理自動駕駛、CV入門、三維測量、VR/AR、3D人臉識別、醫療影像、缺陷檢測、行人重識別、目標跟蹤、視覺產品落地、視覺競賽、車牌識別、硬件選型、學術交流、求職交流等微信羣,請掃描下面微信號加羣,備註:”研究方向+學校/公司+暱稱“,例如:”3D視覺 + 上海交大 + 靜靜“。請按照格式備註,否則不予通過。添加成功後會根據研究方向邀請進去相關微信羣。原創投稿也請聯繫。

▲長按加微信羣或投稿

▲長按關注公衆號

3D視覺從入門到精通知識星球:針對3D視覺領域的知識點彙總、入門進階學習路線、最新paper分享、疑問解答四個方面進行深耕,更有各類大廠的算法工程人員進行技術指導。與此同時,星球將聯合知名企業發佈3D視覺相關算法開發崗位以及項目對接信息,打造成集技術與就業爲一體的鐵桿粉絲聚集區,近1000+星球成員爲創造更好的AI世界共同進步,知識星球入口:

學習3D視覺核心技術,掃描查看介紹,3天內無條件退款

 圈裏有高質量教程資料、可答疑解惑、助你高效解決問題

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