VoxelMap++
VoxelMap++ 延伸 VoxelMap:每個 0.5 m 體素只以三自由度參數(a、b、d)與其共變異數表示平面,並以可累加的和式遞增最小平方擬合,降低計算與記憶體。體素內平面在累積 50 點收斂後即丟棄原始點,並以 union-find 與鄰近體素平面做共面檢定(馬氏距離配合卡方 95% 門檻),將多個「子平面」視為同一「父平面」的量測,以共變異數跡加權融合,使整面牆或地板共享一個更準確、共變異數更小的平面。狀態估計沿用 FAST-LIO 與 VoxelMap 的迭代誤差狀態卡爾曼濾波。
本頁內容
VoxelMap extension that stores a 3DOF plane with covariance per 0.5 m hashed voxel, fitted incrementally by least squares, and merges converged coplanar voxel planes through union-find with a Mahalanobis test and trace-weighted fusion, so large walls and floors share one lower-uncertainty plane used in a FAST-LIO style iterated error-state Kalman filter.
技術屬性
欄位內容為文獻擷取紀錄的原文用語(英文),以原文為據;「未查證」表示本研究尚未讀到該資訊,不代表該方法不具備此能力。
| 感測輸入 | 3D LiDAR, spinning or non-repetitive solid-state (Velodyne VLP-32C in M2DGR; Livox HAP in the authors' data)、IMU (Realsense D435i IMU in M2DGR; ZED 2i built-in IMU in the authors' data) |
|---|---|
| 原文測試平台 | ground robot (M2DGR)、trolley (pushed cart with Livox HAP and ZED 2i) |
| 狀態估計 | iterated error-state Kalman filter as in FAST-LIO and VoxelMap, with point-to-plane observations whose noise combines point and merged-plane covariances (Sec. III-A, III-D) |
| 資料關聯 | each point is hashed to its 0.5 m voxel and matched point-to-plane to the root (father) plane of that voxel's union-find node (Sec. III-C, III-D) |
| 時間表示 | discrete scan poses with FAST-LIO style IMU propagation (Sec. III-A) |
| 去畸變 | FAST-LIO style preprocessing of raw points (backward propagation implied by 'similar to FAST-LIO'; not detailed) (Sec. III-A) |
| 迴圈閉合 | none |
| 全域最佳化 | none |
| 地圖表示 | hash table of 0.5 m voxels, each holding a 3DOF plane (a, b, d) with 3x3 covariance fitted incrementally by least squares; converged planes (after 50 points, raw points discarded) are merged with coplanar neighbours by union-find using a Mahalanobis chi-square test and trace-weighted fusion, so many voxels share one father plane (Sec. III-B, III-C) |
| 先驗資訊 | LiDAR-IMU extrinsic calibrated with LI-Init; sensors synchronized by IEEE 1588-2008 in the authors' data (Sec. IV) |
| 可輸出幾何 | odometry and a compact plane map (merged planes plus unmerged voxel planes); raw points are not kept after voxel convergence |
| 計算需求 | CPU: average 4.88 ms and 126 MB on a 203 m corridor loop and 13.83 ms and 196 MB on a 329 m unstructured loop, lower than VoxelMap, Faster-LIO and FAST-LIO2, on a laptop with a 2.9 GHz 8-core CPU and 16 GiB memory (Table IV, Sec. IV) |
使用設備
原文使用的感測器、運算硬體與載具(equipment)。型號保留原文寫法,連結到設備頁中同一型號的歸併名稱;角色依原文用途分為方法輸入、資料集感測器、執行運算平台、參考或真值量測(reference or ground truth)與比較對象設備。
| 類別 | 型號(原文寫法) | 角色 | 資料集 | 原文規格 | 出處 |
|---|---|---|---|---|---|
| LiDAR | Livox HAP歸入:Livox Hap | 方法輸入 | VoxelMap++ own datasets (UESTC forest, grassland and corridors) | solid-state non-repetitive LiDAR, 120 x 25 deg FOV, 10 Hz; described as the first automotive-grade LiDAR for serial production | (Wu et al., 2024b, Sec. IV; Fig. 4) |
| LiDAR | Velodyne VLP-32C | 資料集感測器 | M2DGR | 360 x 40 deg FOV, 10 Hz | (Wu et al., 2024b, Sec. IV) |
| 慣性量測單元(IMU) | ZED 2i camera built-in IMU (written 'built-in Next-Gen IMU') | 方法輸入 | VoxelMap++ own datasets (UESTC forest, grassland and corridors) | IMU with gyroscope, accelerometer, barometer and magnetometer; 500 Hz; synchronized with the LiDAR by IEEE 1588-2008 | (Wu et al., 2024b, Sec. IV; Fig. 4) |
| 慣性量測單元(IMU) | Realsense D435i IMU (written 'VI-sensor Realsense d435i') | 資料集感測器 | M2DGR | 200 Hz | (Wu et al., 2024b, Sec. IV) |
| GNSS 接收器 | GNSS-IMU system with real-time kinematic signals (model not stated) | 參考或真值量測 | M2DGR | ground truth | (Wu et al., 2024b, Sec. IV-A) |
| 載具平台 | trolley (pushed cart) | 方法輸入 | VoxelMap++ own datasets (UESTC forest, grassland and corridors) | sensors strapped down on the trolley | (Wu et al., 2024b, Sec. IV; Fig. 4) |
| 運算硬體 | laptop, 2.9 GHz 8-core CPU (model not stated) | 執行運算平台 | 未標示 | 16 GiB memory | (Wu et al., 2024b, Sec. IV) |
作者報告的優勢與限制
優勢
- Lowest ATE on 5 of the 7 M2DGR sequences (all except Street07 and the failed Lift04), e.g. Street02 1.16 m versus 1.74 m for VoxelMap and 2.32 m for FAST-LIO2 (Table I)
- End-to-end error 0.03 to 0.07 m on five unstructured forest and grassland loops of 284 to 520 m (Table II)
- End-to-end error 0.25 to 1.45 m on five indoor corridor loops where other methods reached up to 19.7 m, attributed to merging floor and ceiling into large planes that constrain pitch drift (Table III, Fig. 8)
- Lowest computation time and memory among FAST-LIO2, Faster-LIO, VoxelMap and VoxelMap++ on the tested loops (Table IV)
限制
- Fails in dynamic scenes: on M2DGR lift04 the converged voxels of the elevator doors do not update when the doors close and the estimate diverges (Sec. IV-A, V)
- Street07 ATE (12.85 m) was worse than FAST-LIO2, Faster-LIO and LINS (Table I)
- On unstructured loopH VoxelMap had a lower end-to-end error than VoxelMap++ (0.0492 vs 0.0734 m) (Table II)
- Own datasets have no RTK ground truth; only start-to-end errors of loops that return to the origin are reported (Sec. IV-B)
- Baseline values for A-LOAM, LeGO-LOAM, LIO-SAM and LINS are copied from the M2DGR paper (Sec. IV-A)
- Voxels stop updating after 50 points, so later changes are not absorbed (Sec. III-C-2) (inference from the design and the lift04 failure)
營建工程相關證據
論文未在營建工地驗證;自建資料為 UESTC 校園森林草地與具長走廊的既有建物,只以回到原點的端點誤差評估。把整面地板、天花板與牆合併為大平面來抑制走廊漂移,對施工中建物的長走廊與樓板場景有直接參考價值;但作者指出場景變動(如電梯門關閉)會使已收斂的體素平面失效而發散,而施工現場的臨時構件、模板與材料堆置持續變動,這項限制可能更明顯(推論)。
原文驗證環境:公開基準、已完工建築、跨場域
報告的性能數據
以下是原文作者報告的性能數值(author-reported results),不是本研究重新量測的結果。每張圖只並列同一個比較組(comparison group,同一張表、同一組實驗設定)內的方法;不同比較組之間的數值不可直接比較,也不構成排名。
本方法共出現在 4 個比較組,合計 21 筆紀錄。
Wu et al., 2024b · Table I 本方法 7 筆
指標ATE
表格設定(擷取紀錄原文):M2DGR structured urban sequences; ATE (m); A-LOAM, LeGO-LOAM, LIO-SAM and LINS copied from the M2DGR paper; FAST-LIO2, Faster-LIO, VoxelMap and VoxelMap++ computed with evo; same parameters for all sequences; X = failed (Wu et al., 2024b, Table I)
ATE,M2DGR · Street02 (1484.62 m, day, long-term)
只並列這張表在相同設定下報告的方法;以「本方法:」開頭者為本頁方法。失敗、未執行與未報告以標記呈現,不是 0。
按 Tab 進入圖表後,用上下方向鍵逐一瀏覽各類別,Esc 關閉提示框;也可開啟表格檢視閱讀全部數值。
這些是 Wu et al., 2024b 在此表設定下報告的數值(author-reported results),只能在同一個比較組內對照,不代表方法在其他資料或設定下的表現。
資料來源作者報告值(Wu et al., 2024b, Table I)
| 方法(原文寫法) | 報告值 | 出處 |
|---|---|---|
| A-LOAM | 5.299 m | (Wu et al., 2024b, Table I) |
| LeGO-LOAM | 20.021 m | (Wu et al., 2024b, Table I) |
| LIO-SAM | 4.063 m | (Wu et al., 2024b, Table I) |
| LINS | 5.636 m | (Wu et al., 2024b, Table I) |
| FAST-LIO2 | 2.3236 m | (Wu et al., 2024b, Table I) |
| Faster-LIO | 2.6667 m | (Wu et al., 2024b, Table I) |
| VoxelMap | 1.7408 m | (Wu et al., 2024b, Table I) |
| VoxelMap++本方法原文提出 | 1.1608 m | (Wu et al., 2024b, Table I) |
Wu et al., 2024b · Table II 本方法 5 筆
指標end-to-end error
表格設定(擷取紀錄原文):Own Livox HAP data pushed on a cart around closed loops; end-to-end error between start and terminal point (no RTK available) (Wu et al., 2024b, Table II)
end-to-end error,VoxelMap++ own datasets · loopE (329.4 m)
只並列這張表在相同設定下報告的方法;以「本方法:」開頭者為本頁方法。失敗、未執行與未報告以標記呈現,不是 0。
按 Tab 進入圖表後,用上下方向鍵逐一瀏覽各類別,Esc 關閉提示框;也可開啟表格檢視閱讀全部數值。
這些是 Wu et al., 2024b 在此表設定下報告的數值(author-reported results),只能在同一個比較組內對照,不代表方法在其他資料或設定下的表現。
資料來源作者報告值(Wu et al., 2024b, Table II)
| 方法(原文寫法) | 報告值 | 出處 |
|---|---|---|
| LIO-Livox | 5.9141 m | (Wu et al., 2024b, Table II) |
| FAST-LIO2 | 3.2134 m | (Wu et al., 2024b, Table II) |
| Faster-LIO | 5.7331 m | (Wu et al., 2024b, Table II) |
| VoxelMap | 1.6847 m | (Wu et al., 2024b, Table II) |
| VoxelMap++本方法原文提出 | 0.0336 m | (Wu et al., 2024b, Table II) |
Wu et al., 2024b · Table III 本方法 5 筆
指標end-to-end error
表格設定(擷取紀錄原文):Own Livox HAP data pushed on a cart around closed loops; end-to-end error between start and terminal point (Wu et al., 2024b, Table III)
end-to-end error,VoxelMap++ own datasets · loop1 (202.9 m)
只並列這張表在相同設定下報告的方法;以「本方法:」開頭者為本頁方法。失敗、未執行與未報告以標記呈現,不是 0。
按 Tab 進入圖表後,用上下方向鍵逐一瀏覽各類別,Esc 關閉提示框;也可開啟表格檢視閱讀全部數值。
這些是 Wu et al., 2024b 在此表設定下報告的數值(author-reported results),只能在同一個比較組內對照,不代表方法在其他資料或設定下的表現。
資料來源作者報告值(Wu et al., 2024b, Table III)
| 方法(原文寫法) | 報告值 | 出處 |
|---|---|---|
| LIO-Livox | 7.1192 m | (Wu et al., 2024b, Table III) |
| FAST-LIO2 | 2.3812 m | (Wu et al., 2024b, Table III) |
| Faster-LIO | 2.3488 m | (Wu et al., 2024b, Table III) |
| VoxelMap | 9.3457 m | (Wu et al., 2024b, Table III) |
| VoxelMap++本方法原文提出 | 0.5305 m | (Wu et al., 2024b, Table III) |
Wu et al., 2024b · Table IV 本方法 4 筆
表格設定(擷取紀錄原文):Resource usage: average computation time per scan and memory usage (Wu et al., 2024b, Table IV)
Avg. comp. time,VoxelMap++ own datasets · small scale (loop1, 202.9 m)
只並列這張表在相同設定下報告的方法;以「本方法:」開頭者為本頁方法。失敗、未執行與未報告以標記呈現,不是 0。
按 Tab 進入圖表後,用上下方向鍵逐一瀏覽各類別,Esc 關閉提示框;也可開啟表格檢視閱讀全部數值。
這些是 Wu et al., 2024b 在此表設定下報告的數值(author-reported results),只能在同一個比較組內對照,不代表方法在其他資料或設定下的表現。
資料來源作者報告值(Wu et al., 2024b, Table IV)
| 方法(原文寫法) | 報告值 | 出處 |
|---|---|---|
| FAST-LIO2硬體:laptop, 2.9 GHz 8 cores, 16 GiB | 11.5985 ms | (Wu et al., 2024b, Table IV) |
| Faster-LIO硬體:laptop, 2.9 GHz 8 cores, 16 GiB | 7.3461 ms | (Wu et al., 2024b, Table IV) |
| VoxelMap硬體:laptop, 2.9 GHz 8 cores, 16 GiB | 5.683 ms | (Wu et al., 2024b, Table IV) |
| VoxelMap++本方法原文提出硬體:laptop, 2.9 GHz 8 cores, 16 GiB | 4.8763 ms | (Wu et al., 2024b, Table IV) |
來源
Wu et al., 2024b
(2024)VoxelMap++: Mergeable Voxel Mapping Method for Online LiDAR(-Inertial) OdometryIEEE Robotics and Automation Letters, 9(1):427-434
DOI 10.1109/lra.2023.3333736arXiv 2308.02799程式碼
同儕審查已出版已讀全文近十年查證後修正
相關版本
- 預印本:arXiv 2308.02799 v1 (2023-08-05), only version; six authors in a different order and without Kaiyong Zhao https://arxiv.org/abs/2308.02799
- 程式碼釋出:uestc-icsp/VoxelMapPlus_Public https://github.com/uestc-icsp/VoxelMapPlus_Public
- 前身方法:VoxelMap (Yuan et al., RA-L 2022) yuan2022voxelmap
程式碼:https://github.com/uestc-icsp/VoxelMapPlus_Public(授權:not_stated (no LICENSE file found on main or master branch))。有公開程式碼不等於已被重現,也不代表目前版本與論文版本相同。