LOCUS
LOCUS 是以 LiDAR 為主的里程計:每顆 LiDAR 的點先依 IMU 或其他里程計做運動畸變校正,再依已知外參合併,經體素與隨機降採樣後,以多執行緒 GICP 依序做掃描對掃描與掃描對子地圖配準。其他感測來源(VIO、KIO、輪式慣性里程計或 IMU 旋轉)不做緊耦合,而是由健康監測依固定優先順序挑出仍健康者,只提供 GICP 的初始值;所有來源失效時退回純 LiDAR 里程計。系統另可依情境啟用平地假設以抑制 Z 向與俯仰、滾轉誤差,並曾是 CoSTAR 團隊贏得 DARPA SubT Urban Circuit 解決方案的關鍵元件。
本頁內容
LiDAR-centric odometry that motion-corrects and merges multiple LiDARs, filters the cloud and runs multithreaded GICP scan-to-scan and scan-to-submap registration, with a health-aware priority queue that loosely injects the best available VIO, KIO, WIO or IMU estimate as the GICP prior and falls back to pure LiDAR odometry when all sources fail.
技術屬性
欄位內容為文獻擷取紀錄的原文用語(英文),以原文為據;「未查證」表示本研究尚未讀到該資訊,不代表該方法不具備此能力。
| 感測輸入 | one or more 360-degree 3D LiDARs (two Velodyne VLP16 on Husky, one flat and one pitched forward 30 deg; one VLP16 on Spot)、IMU (Vector Nav 100 on Husky), used for rotation priors and motion distortion correction、external odometry used loosely: wheel-inertial (WIO), visual-inertial (VIO) and kinematic-inertial (KIO) odometry |
|---|---|
| 原文測試平台 | wheeled UGV (Clearpath Husky, skid-steer)、legged (Boston Dynamics Spot) |
| 狀態估計 | loosely coupled: a health monitor (in this implementation a message-rate check above 1 Hz) selects the highest-priority healthy source from a static priority queue (Spot: VIO, KIO, IMU, none; Husky: VIO if present, WIO, IMU, none); its relative motion interpolated at LiDAR timestamps seeds multithreaded GICP scan-to-scan and then scan-to-submap registration; the odometry is the integration of the incremental transforms (Sec. II-B) |
| 資料關聯 | dense GICP on point clouds filtered by a 0.1 m voxel grid and a random downsampling filter (90%); scan-to-submap against a local region of the global map (Sec. II-A, II-B) |
| 時間表示 | discrete per-scan poses; the selected odometry source is buffered and interpolated at LiDAR timestamps (Sec. II-B1) |
| 去畸變 | motion distortion correction of each point informed by the IMU or an external odometry source, before multi-LiDAR merging (Sec. II-A) |
| 迴圈閉合 | none inside LOCUS; loop closures of all compared methods were disabled; in the competition the LOCUS output fed a robust odometry aggregator and a separate back-end SLAM (footnote 9, Sec. III-C2) |
| 全域最佳化 | none within LOCUS |
| 地圖表示 | global point-cloud map stored in an octree (minimum resolution 0.001 m) accumulated every 1 m of translation or 30 deg of rotation (Sec. II-B3) |
| 先驗資訊 | optional flat ground assumption (FGA), activated from context (e.g., single-floor exploration) or from an IMU monitor of near-zero roll and pitch; known rigid transforms between LiDARs for merging (Sec. II-A, II-C) |
| 可輸出幾何 | 6-DoF odometry and an accumulated 3D point-cloud map (Figs. 1, 5) |
| 計算需求 | per-scan timing and CPU load profiled on an Intel Hades Canyon NUC8i7HVKVA (4 x 1.9 GHz, 32 GB RAM, Ubuntu 18.04); LOCUS mean CPU load 2.72 cores, the highest of the compared methods; on the robots Husky used an AMD Ryzen 9 3900X (12 cores, 3.8 GHz) and Spot an Intel NUC7i7DN (4 cores, 1.9 GHz); GICP normal computation is over 70% of the computation and uses 4 threads by default (Sec. II-B4, III-B3, III-C1; Table II) |
使用設備
原文使用的感測器、運算硬體與載具(equipment)。型號保留原文寫法,連結到設備頁中同一型號的歸併名稱;角色依原文用途分為方法輸入、資料集感測器、執行運算平台、參考或真值量測(reference or ground truth)與比較對象設備。
| 類別 | 型號(原文寫法) | 角色 | 資料集 | 原文規格 | 出處 |
|---|---|---|---|---|---|
| LiDAR | Velodyne VLP16歸入:Velodyne VLP-16 | 方法輸入 | DARPA SubT Husky datasets (CoSTAR) | two units on Husky, one flat and one pitched forward 30 deg; scans recorded at 10 Hz; about 0.1 s per scan | (Palieri et al., 2021, Sec. III dataset description; footnote 1) |
| LiDAR | Velodyne VLP16歸入:Velodyne VLP-16 | 方法輸入 | 未標示 | one unit on Spot | (Palieri et al., 2021, Sec. III-C1) |
| 慣性量測單元(IMU) | Vector Nav 100 | 方法輸入 | DARPA SubT Husky datasets (CoSTAR) | recorded at 50 Hz in the Urban datasets and 100 Hz in the Tunnel dataset | (Palieri et al., 2021, Sec. III dataset description) |
| 輪式或腿式里程計 | wheel-inertial odometry (WIO) of the Husky | 方法輸入 | DARPA SubT Husky datasets (CoSTAR) | recorded at 50 Hz in the Urban datasets | (Palieri et al., 2021, Sec. III dataset description) |
| 載具平台 | Clearpath Husky | 方法輸入 | 未標示 | skid-steer wheeled ground rover | (Palieri et al., 2021, Sec. III; Fig. 1) |
| 載具平台 | Spot | 方法輸入 | 未標示 | legged robot | (Palieri et al., 2021, Sec. III-C1; Fig. 1) |
| 運算硬體 | Intel Hades Canyon NUC8i7HVKVA | 執行運算平台 | 未標示 | 4 x 1.9 GHz, 32 GB RAM, Ubuntu 18.04 LTS; used for the efficiency comparison | (Palieri et al., 2021, Sec. III-B3) |
| 運算硬體 | AMD RYZEN 9 3900X | 執行運算平台 | 未標示 | 12 cores, 3.8 GHz, onboard Husky | (Palieri et al., 2021, Sec. III-C1) |
| 運算硬體 | Intel NUC7i7DN | 執行運算平台 | 未標示 | 4 cores, 1.9 GHz, onboard Spot | (Palieri et al., 2021, Sec. III-C1) |
| 其他 | Spot VIO and KIO from the Boston Dynamics API | 方法輸入 | 未標示 | VIO chosen for Spot because it was more accurate than KIO in the authors' tests | (Palieri et al., 2021, Sec. III-C1) |
作者報告的優勢與限制
優勢
- Equal to or better than the compared open-source LiDAR odometry systems on all three field datasets, by APE and by map error against the DARPA ground-truth map (Sec. III-B1; Table II)
- Only method with negligible degradation under WIO and IMU failure, WIO failure and a 10 s LiDAR gap (Table III; Sec. III-B2)
- Husky dropped no LiDAR scans in the four live competition runs (Table V)
- Live Spot run in Urban Alpha 2: mean APE 0.586 m and maximum APE 2.599 m (Sec. III-C2)
限制
- Highest CPU load among the compared methods (mean 2.72 cores; Table II; Sec. III-B3; Sec. IV)
- LOAM-type feature filtering can give greater accuracy but needs about 25% more CPU and was not real time on the test computer (Sec. III-A)
- Spot drops about 2 scans per second on its less powerful onboard computer (Table V; Sec. III-C2)
- The health check used in the reported implementation is only a message-rate check (Sec. II-B1)
- The reference trajectories were produced by running LOCUS scan matching on the DARPA ground-truth map, so the APE reference is not independent of the evaluated method family (dataset description, Sec. III) (inference)
營建工程相關證據
場域為停用的 Satsop 發電廠(Urban Alpha 與 Beta 課程,長而缺乏特徵的走廊與大空間)與 Bruceton 研究礦坑(Tunnel 課程),屬既有工業建築與地下環境,並非施工中工地。地圖誤差是先以 ICP 把重建地圖對齊 DARPA 提供的真值地圖,再計算雲到雲誤差的 RMSE,屬於有獨立幾何參考的地圖評估;軌跡參考則由 LOCUS 在真值地圖上配準產生。多感測器健康監測與逐級退回純 LiDAR 的設計,可供長時間巡檢或施工機器人參考(推論)。
原文驗證環境:地下或隧道、已完工建築、獨立參考量測、任務層驗證
報告的性能數據
以下是原文作者報告的性能數值(author-reported results),不是本研究重新量測的結果。每張圖只並列同一個比較組(comparison group,同一張表、同一組實驗設定)內的方法;不同比較組之間的數值不可直接比較,也不構成排名。
本方法共出現在 4 個比較組,合計 43 筆紀錄。
Palieri et al., 2021 · Table II 本方法 28 筆
表格設定(擷取紀錄原文):Husky field datasets from the SubT Urban (Alpha, Beta courses at the Satsop power plant) and Tunnel (Safety Research course, Bruceton mine) circuits; APE via evo against a reference from LOCUS scan matching on the DARPA ground-truth map; ME = RMSE of cloud-to-cloud error after ICP alignment of the map to the DARPA ground-truth map; loop closures disabled; FLOAM and LIO-Mapping ran with one LiDAR in Urban Alpha, LIO-SAM with one LiDAR; CPU loads from Urban Beta (LIO-SAM from Tunnel) (Palieri et al., 2021, Table II)
APE max,DARPA SubT Husky datasets (CoSTAR) · Urban Alpha course
只並列這張表在相同設定下報告的方法;以「本方法:」開頭者為本頁方法。失敗、未執行與未報告以標記呈現,不是 0。
- 失敗
按 Tab 進入圖表後,用上下方向鍵逐一瀏覽各類別,Esc 關閉提示框;也可開啟表格檢視閱讀全部數值。
這些是 Palieri et al., 2021 在此表設定下報告的數值(author-reported results),只能在同一個比較組內對照,不代表方法在其他資料或設定下的表現。
資料來源作者報告值(Palieri et al., 2021, Table II)
| 方法(原文寫法) | 報告值 | 出處 |
|---|---|---|
| LOCUS本方法原文提出 | 1.69 m | (Palieri et al., 2021, Table II) |
| LOCUS FGA本方法原文提出 | 0.63 m | (Palieri et al., 2021, Table II) |
| BLAM | 3.44 m | (Palieri et al., 2021, Table II) |
| ALOAM | 4.33 m | (Palieri et al., 2021, Table II) |
| FLOAM | 29.49 m | (Palieri et al., 2021, Table II) |
| Cartographer | 5.84 m | (Palieri et al., 2021, Table II) |
| LIO-Mapping | 2.12 m | (Palieri et al., 2021, Table II) |
| LIO-SAM | 無數值失敗註記(擷取紀錄):failed (authors could not get LIO-SAM working on the Urban datasets, likely because the 50 Hz IMU rate is below the recommended 200 Hz) | (Palieri et al., 2021, Table II) |
Palieri et al., 2021 · Table V 本方法 10 筆
指標number of dropped LiDAR scans per second
表格設定(擷取紀錄原文):Average number of LiDAR scans dropped per second during the four live competition runs (10 Hz input, no buffering, so a drop means processing exceeded 0.1 s); Husky integrated WIO with 2 LiDARs, Spot integrated VIO with 1 LiDAR (Table IV settings) (Palieri et al., 2021, Table V)
number of dropped LiDAR scans per second,DARPA SubT Urban Circuit competition runs · Alpha 1
只並列這張表在相同設定下報告的方法;以「本方法:」開頭者為本頁方法。失敗、未執行與未報告以標記呈現,不是 0。
按 Tab 進入圖表後,用上下方向鍵逐一瀏覽各類別,Esc 關閉提示框;也可開啟表格檢視閱讀全部數值。
這些是 Palieri et al., 2021 在此表設定下報告的數值(author-reported results),只能在同一個比較組內對照,不代表方法在其他資料或設定下的表現。
資料來源作者報告值(Palieri et al., 2021, Table V)
| 方法(原文寫法) | 報告值 | 出處 |
|---|---|---|
| LOCUS (Husky, live)本方法原文提出硬體:AMD Ryzen 9 3900X, 12 cores, 3.8 GHz | 0 scans/s | (Palieri et al., 2021, Table V) |
| LOCUS (Spot, live)本方法原文提出硬體:Intel NUC7i7DN, 4 cores, 1.9 GHz | 2.082 scans/s | (Palieri et al., 2021, Table V) |
Palieri et al., 2021 · Table III 本方法 3 筆
指標robustness test result (categorical)
表格設定(擷取紀錄原文):Robustness tests on the Urban datasets: WIO and IMU streams cut after 1200 s, WIO cut after 1200 s, or a 10 s LiDAR gap while moving; OK = negligible degradation, NA = sensor not used by the method, Errors = substantial errors, Stops = no odometry output after the failure (Palieri et al., 2021, Table III)
robustness test result (categorical),DARPA SubT Husky datasets (CoSTAR) · WIO/IMU failure
只並列這張表在相同設定下報告的方法;以「本方法:」開頭者為本頁方法。失敗、未執行與未報告以標記呈現,不是 0。
- 未報告(沒有數值,不是 0)
按 Tab 進入圖表後,用上下方向鍵逐一瀏覽各類別,Esc 關閉提示框;也可開啟表格檢視閱讀全部數值。
這些是 Palieri et al., 2021 在此表設定下報告的數值(author-reported results),只能在同一個比較組內對照,不代表方法在其他資料或設定下的表現。
資料來源作者報告值(Palieri et al., 2021, Table III)
| 方法(原文寫法) | 報告值 | 出處 |
|---|---|---|
| LOCUS本方法原文提出 | 無數值未報告註記(擷取紀錄):OK | (Palieri et al., 2021, Table III) |
| BLAM | 無數值未報告註記(擷取紀錄):NA | (Palieri et al., 2021, Table III) |
| ALOAM | 無數值未報告註記(擷取紀錄):NA | (Palieri et al., 2021, Table III) |
| FLOAM | 無數值未報告註記(擷取紀錄):NA | (Palieri et al., 2021, Table III) |
| Cartographer | 無數值未報告註記(擷取紀錄):Stops | (Palieri et al., 2021, Table III) |
| LIO-Mapping | 無數值未報告註記(擷取紀錄):Stops | (Palieri et al., 2021, Table III) |
| LIO-SAM | 無數值未報告註記(擷取紀錄):Stops | (Palieri et al., 2021, Table III) |
Palieri et al., 2021 · Text Sec.III-C2 本方法 2 筆
資料集與序列DARPA SubT Urban Circuit competition runs · Alpha 2
表格設定(擷取紀錄原文):Live LOCUS on Spot during the Urban Alpha 2 competition run (multi-level exploration) (Palieri et al., 2021, Text Sec.III-C2)
mean APE,DARPA SubT Urban Circuit competition runs · Alpha 2
這張表在此指標與資料序列只列出本方法一筆,沒有可並列的其他方法,因此不畫圖,數值與出處見下表。這是 Palieri et al., 2021 在此表設定下報告的數值(author-reported results),不代表方法在其他資料或設定下的表現。
| 方法(原文寫法) | 報告值 | 出處 |
|---|---|---|
| LOCUS (Spot, live)本方法原文提出 | 0.586 m | (Palieri et al., 2021, Sec. III-C2) |
來源
Palieri et al., 2021
(2021)LOCUS: A Multi-Sensor Lidar-Centric Solution for High-Precision Odometry and 3D Mapping in Real-TimeIEEE Robotics and Automation Letters, 6(2):421-428
DOI 10.1109/lra.2020.3044864arXiv 2012.14447程式碼
同儕審查已出版已讀全文近十年
相關版本
- 預印本:LOCUS (arXiv v1, accepted version) https://arxiv.org/abs/2012.14447
- correction:Corrections to 'LOCUS: A Multi-Sensor Lidar-Centric Solution for High-Precision Odometry and 3D Mapping in Real-Time' [Apr 21 421-428], RA-L 6(2):3760; corrects the affiliations of Morrell, Ebadi, Nash and Agha-mohammadi, who had been wrongly listed with the Polytechnic University of Bari; no technical content changed https://doi.org/10.1109/LRA.2021.3062780
- successor:LOCUS 2.0: Robust and Computationally Efficient Lidar Odometry for Real-Time 3D Mapping (Reinke et al., RA-L 2022; corpus id Reinke et al., 2022), whose line the public repository follows https://doi.org/10.1109/LRA.2022.3181357
- 程式碼釋出:NeBula-Autonomy/LOCUS (repository README asks users to cite LOCUS 2.0 and LOCUS) https://github.com/NeBula-Autonomy/LOCUS
程式碼:https://github.com/NeBula-Autonomy/LOCUS(授權:MIT (GitHub license metadata and LICENSE header, copyright 2022 NeBula Autonomy); public code follows the LOCUS 2.0 line)。有公開程式碼不等於已被重現,也不代表目前版本與論文版本相同。