概述
將多種傳感器和深度學習集成到SLAM系統中是當前研究的重要領域。Maplab 2.0提供了一個更加通用的開源平臺,最初的Maplab用于創建和管理視覺慣性地圖。Maplab 2.0集成了多種新模態,例如 LiDAR、GPS、車輪編碼器、語義對象等。除此之外,還提供了易于集成外部組件的接口,例如添加不同視覺特征或閉環約束。這些功能使新平臺非常適合作為基于深度學習的特征點檢測和閉環的研究工具。
由于加入了子地圖管理功能,在線協作 SLAM可以在 Maplab 2.0中使用,支持多個機器人在線構建、優化和協同定位。這是通過一個集中式服務器節點實現的,該節點聚合來自多個機器人的數據,并且可以將協作構建的地圖回傳給機器人以提高性能。文末附文章和源碼鏈接。
圖1 Maplab2.0:一個靈活且通用的多機器人和多模態SLAM框架。可以集成多個機器人(彩色線)、視覺地圖點(彩色點)和 LiDAR掃描(黑色點)。
主要功能
(1)開源的、多模態和多機器人SLAM框架,與其他現有方法相比,該框架允許集成和融合大量不同的數據。
(2)一個在線協作建圖系統,它利用子地圖和中央服務器來合并和分發全局一致的、特征豐富的地圖。
(3)為自定義特征點、場景描述符和閉環集成接口。實驗展示了它們在基于語義對象的閉環實驗中的靈活性。
廣泛的實驗表明Maplab2.0的定位精度可以與基準測試中的最新技術相媲美。系統框架如圖2所示。
圖 2:maplab 2.0框架及其三個主要組件的概述,即建圖節點、集中式服務器和離線控制臺。
在圖2中,建圖節點在每個機器人上運行,并將傳感器數據收集到子地圖中,這些子地圖被傳遞到集中式服務器,將它們合并成全局一致的地圖。然后,可以在稍后階段使用離線控制臺提供的工具對該地圖進行細化或與其他地圖合并。
Maplab 2.0
A. 地圖結構
我們將地圖表示為一個或多個任務的集合,其中每個任務都基于單個連續的建圖線程。地圖的底層結構是一個由頂點和邊組成的因子圖,其中包含所有機器人信息和不同任務的測量值。機器人在某個時間點t的狀態被參數化為一個頂點(姿態、速度、IMU偏置)。地標也表示為圖中的頂點,其狀態定義為3D位置。3D地標可以用作環境中具有3D位置的任何事物的基礎表示,例如,視覺地標、3D 地標,語義對象。
1) 約束:頂點通過不同類型的邊連接,這些邊基于觀測(例如,關鍵點、 imu測量和閉環)對其狀態變量施加約束。IMU邊包含連接頂點之間的預積分,因此僅連接時間順序的頂點。相對位姿約束邊在兩個頂點之間施加剛性6 DoF變換,并用于表示相對運動(即里程計)或跨越較大時間間隔或任務的閉環。為觀測分配協方差以量化測量噪聲,通常將其設置為預定義的常數值。我們認為閉環邊是相對位姿約束邊的特例。為了提高魯棒性并考慮異常值,可以將閉環邊緣作為可切換約束。如果某些邊與其他約束沖突太多,則優化器可以從圖中丟棄這些邊。最后,邊將地圖點連接到觀察到的姿態,并根據估計和觀察到的地標位置之間計算殘差。
在優化過程中,約束也可以直接施加在所選頂點的內部狀態上。例如,絕對約束以給定的不確定性在頂點上約束全局3D位置,允許我們整合GPS 測量或絕對基準地標觀察。
2) 地標: 在Maplab 2.0 中,增加了同時將任意數量的不同類型的要素包含到地圖中的功能。既可以使用ORB特征/LK光流跟蹤,也可以自己提供軌跡信息。此外,擴展了匹配器以支持浮點描述符,能夠使用最新開發的描述符實現閉環。浮點描述符使用近似最近鄰(FLANN)的快速庫進行匹配。
Maplab 2.0還可以用3D觀測處理地標。來自RGB-D 相機的視覺特征具有相關深度,或者來自直接在3D點云中檢測特征。顯著的區別是這些地標不是使用多視圖幾何來三角化的。類似地,誤差項不是基于重投影誤差,而是基于觀察到的3D位置與地標的3D位置之間的歐氏距離。
B. 建圖節點
建圖節點在每個機器人上運行,并使用外部輸入源和原始傳感器數據以多模態因子圖的形式創建地圖。在地圖構建期間使用6 DoF里程計輸入來初始化底層因子圖的機器人姿勢頂點。映射節點與里程計方法無關,因此可以在各種機器人和傳感器設置中輕松使用。Maplab 2.0可以在運行時合并任意數量3D地圖點。此外,可以無縫添加相對約束(例如里程計或外部閉環)和絕對6 DoF約束(例如GPS)。
C. 地圖服務器
地圖服務器支持協作和在線建圖。作為獲勝團隊 (CERBERUS) 多機器人測繪系統的一部分,該方法已成功部署在DARPA地下挑戰賽中。服務器節點可以在專用機器上運行,也可以在機器人上運行。建圖節點將它們的地圖以規則的間隔劃分為塊,稱為子圖。子圖立即傳輸到地圖服務器,并連接到先前從同一機器人傳輸的相應子圖。通過在拆分時將每個子圖的最后一個頂點復制到下一個子圖中來完成的。這避免了特征軌跡的不連續性。并行地,服務器通過閉環檢測將來自不同機器人的地圖到全局一致的地圖。
1)子圖預處理:傳入的子圖不直接合并,而是先單獨處理,以保證局部精度。其中包括局部地圖優化、特征質量評估和地圖內閉環。
2)多機器人處理:地圖服務器持續在全局多機器人地圖上運行并執行可配置操作(閉環、特征質量評估、捆綁調整、可視化、絕對約束異常值拒絕等)。
實驗
A. 驗證和比較
我們使用 HILTI SLAM Challenge 2021數據集提出的框架與最先進的方法進行比較。對于maplab 2.0,我們可以使用數據集中提供的五個攝像頭、ADIS IMU 和 OS0-64 LiDAR。我們使用三種不同的里程計展示Maplab 2.0的三個用例:ROVIO 、OKVIS和 FASTLIO2。除了標準的BRISK描述符外,我們還使用外部接口包括SuperPoint和SIFT。
表 1顯示了與其他SLAM 基線(LVI-SAM、ORB-SLAM3、RTAB-Map 和maplab1.0)的性能。Maplab 2.0 是唯一能夠使用所有五個相機進行環路閉合的方法。在所有視覺的方法中,顯著優于基線。所有方法計時在Intel i7-8700和Nvidia RTX 2080 GPU的機器上。
表1:絕對位置誤差 (APE)RMSE比較。SP + B代表SuperPoint和BRISK視覺特征。圖標代表使用的傳感器:單目、多攝像頭、LiDAR 和 IMU
B. 大規模多機器人多會話建圖
使用帶有五個攝像頭的手持設備和一個Ouster OS0-128 記錄了23 次個人跑步,其中包含大約10 公里的兩個多小時的數據以及多個室內-室外過渡。每次運行都使用OKVIS里程計。圖3展示了多機器人地圖。
定量評估我們在公共EuRoC基準上測試多機器人服務器。使用建圖服務器、ROVIO在多機器人實驗中同時運行所有11個序列。實現了0.043 m的平均RMSE,并行地圖服務器只需要3分27秒即可完成所有操作。
圖3包含23次建圖運行的全局多機器人地圖的可視化建圖結果
C.基于語義的地圖
本節通過使用語義信息擴充地圖并說明其在現實場景中的潛在應用。使用Mask R-CNN 在圖像中檢測語義對象,對于每次檢測,我們使用NetVLAD提取掩碼實例分割的描述符。所有檢測到的對象都使用Deep SORT進行跟蹤,語義對象也是3D 地標,但具類標簽,可用于語義環路閉合檢測。
我們使用 RGB 慣性傳感器在具有多個對象的辦公環境中收集了室內數據集。我們兩次觀察帶有物體的辦公桌,同時留出一些時間來累積漂移(見圖4a和4c)。圖4b 顯示了語義地標集群和檢測到的回環候選。將語義對象的閉環邊添加到全因子圖后,漂移顯著減少,改進后的圖如圖4c 所示。
(a)(b)
(c)
圖4:語義建圖
文章鏈接:https://arxiv.org/abs/2212.00654
代碼鏈接:https://github.com/ethz-asl/maplab
審核編輯 :李倩
-
傳感器
+關注
關注
2551文章
51194瀏覽量
754411 -
機器人
+關注
關注
211文章
28476瀏覽量
207416 -
SLAM
+關注
關注
23文章
425瀏覽量
31860
原文標題:Maplab 2.0發布:多傳感器融合的SLAM框架,支持多機器人、語義回環檢測功能(文末附源碼)
文章出處:【微信號:3D視覺工坊,微信公眾號:3D視覺工坊】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論