Zhang & Singh LVIO (JFR 2018)
此研究以 3D 雷射掃描儀、相機與 IMU 建立多層次、依序執行的管線,由粗到細估計運動,而非卡爾曼濾波或因子圖:先以 IMU 機械編排(200 Hz)預測運動,再以關鍵影格式視覺慣性里程計(50 Hz)估計運動並為特徵點補上雷射深度,最後以掃描配準(5 Hz)精修位姿,並把點雲配準到以兩層體素管理的地圖。相機與雷射的結果回饋修正 IMU 的速度漂移與偏差;各模組以特徵值判斷退化方向,只在條件良好的方向更新,因此相機或雷射失效時可整段或部分略過該模組。論文另延伸到在既有地圖上定位。本文擴充自作者 2017 年的 ICRA 與 FSR 論文,並把 V-LOAM(ICRA 2015)當作另一個既有方法比較,兩者不是同一方法。
本頁內容
A coarse-to-fine multilayer pipeline (IMU prediction, visual-inertial estimation, LiDAR scan matching) with automatic reconfiguration around failed modules.
技術屬性
欄位內容為文獻擷取紀錄的原文用語(英文),以原文為據;「未查證」表示本研究尚未讀到該資訊,不代表該方法不具備此能力。
| 感測輸入 | 3D LiDAR (Velodyne HDL-32E or Velodyne VLP-16 at 5 Hz; on the handheld Contour a Hokuyo UTM-30LX-EW spun at 1 Hz)、IMU (Xsens MTi-30 at 200 Hz; Xsens MTi-20 on Contour)、monochrome camera (uEye UI-1220SE, 752x480, 76 deg horizontal FoV, 50 Hz) on the two Velodyne suites; on Contour a 640x512 wide-angle camera for motion estimation and a 1600x1200 HD color camera for point colorization |
|---|---|
| 原文測試平台 | passenger vehicle (street driving up to 33 m/s)、utility vehicle (off-road)、handheld, and helmet-mounted with a backpack computer (walking, running, jumping)、custom handheld Contour device、DJI S1000 drone (localization on a ground-built map) |
| 狀態估計 | sequential multilayer coarse-to-fine pipeline, not a Kalman filter or factor graph: IMU mechanization predicts motion; keyframe visual-inertial odometry solves a marginalized 6-DoF problem (landmarks not optimized) by Newton gradient descent with robust fitting; scan matching refines pose with prior-motion constraints; camera and lidar feedback correct IMU velocity drift and biases through a sliding-window average; degenerate directions are found from eigenvalues and only well-conditioned directions are updated, so failed modules are bypassed fully or partially (Secs. 3 to 8) |
| 資料關聯 | visual: up to 300 Harris corners tracked by KLT; depth from a lidar depthmap (three nearest points on a unit sphere in a 2D KD-tree, validity check, planar interpolation) or Bayesian triangulation, and features without depth also used; lidar: edge and planar points selected by local smoothness and matched to map point clusters verified by eigenvalue analysis, with point-to-line and point-to-plane distances (Secs. 5.3, 6.1 to 6.2, 10.1) |
| 時間表示 | discrete poses with IMU prediction at 200 Hz, visual-inertial odometry at 50 Hz and scan matching at 5 Hz (1 Hz on Contour), integrated to output at IMU rate (Secs. 5.2, 7, 10.2) |
| 去畸變 | each scan is locally registered using visual-inertial odometry key-poses with IMU interpolation between them before feature extraction (Sec. 6.1) |
| 迴圈閉合 | none; drift is measured at loop returns, e.g., a building registered twice at the start and end of Accuracy Test 2 (Sec. 10.1.1, Fig. 18) |
| 全域最佳化 | none; the authors avoid full-scale MAP estimation and solve small problems sequentially (Secs. 3.2, 5.2) |
| 地圖表示 | two-level voxel map of edge and planar points truncated around the sensor, with a 3D KD-tree per voxel; map downsampled to constant density after each merge; scan matching on up to four CPU threads (Secs. 6.3 to 6.4, Table 1) |
| 先驗資訊 | none for odometry; optional localization on an existing map by matching stacked scans at 0.5 Hz (Secs. 9, 10.3) |
| 可輸出幾何 | dense registered 3D point cloud maps; Contour colorizes points with its HD camera (Sec. 10.2); export format 原文未報告 |
| 計算需求 | laptop with 2.6 GHz i7 quad-core (8 threads) and integrated GPU under ROS: visual-inertial odometry 4.2 to 5.5 ms per image with GPU feature tracking and 12.9 to 15.2 ms on CPU, scan matching 103 to 267 ms per scan (Table 2); Contour embedded 1.8 GHz i7 dual-core: 6.4 to 18.7 ms per image and 162 to 343 ms per scan at 1 Hz (Table 5) |
使用設備
原文使用的感測器、運算硬體與載具(equipment)。型號保留原文寫法,連結到設備頁中同一型號的歸併名稱;角色依原文用途分為方法輸入、資料集感測器、執行運算平台、參考或真值量測(reference or ground truth)與比較對象設備。
| 類別 | 型號(原文寫法) | 角色 | 資料集 | 原文規格 | 出處 |
|---|---|---|---|---|---|
| LiDAR | Velodyne HDL-32E | 方法輸入 | 未標示 | 360 deg horizontal and 40 deg vertical FoV, 0.7 million points per second at 5 Hz spinning rate | (Zhang & Singh, 2018, Sec. 10.1, Fig. 16a) |
| LiDAR | Velodyne VLP-16 | 方法輸入 | 未標示 | 360 deg horizontal and 30 deg vertical FoV, 0.3 million points per second at 5 Hz spinning rate | (Zhang & Singh, 2018, Sec. 10.1, Fig. 16b) |
| LiDAR | Hokuyo UTM-30LX-EW歸入:Hokuyo UTM-30LX | 方法輸入 | 未標示 | 43.2 thousand points per second; on a motor-encoder shaft spinning at 1 Hz to act as a 3D scanner (Contour) | (Zhang & Singh, 2018, Sec. 10.2, Fig. 27) |
| 行動掃描設備 | Contour | 方法輸入 | 未標示 | handheld device with spinning 2D scanner, wide-angle and HD cameras, Xsens IMU, embedded computer and touch-screen monitor | (Zhang & Singh, 2018, Sec. 10.2, Fig. 27) |
| 慣性量測單元(IMU) | Xsens MTi-30 | 方法輸入 | 未標示 | 200 Hz | (Zhang & Singh, 2018, Sec. 10.1, Fig. 16) |
| 慣性量測單元(IMU) | Xsens MTi-20 | 方法輸入 | 未標示 | on Contour | (Zhang & Singh, 2018, Sec. 10.2, Fig. 27) |
| 相機 | uEye UI-1220SE | 方法輸入 | 未標示 | monochrome, 752 x 480 px, 76 deg horizontal FoV, 50 Hz | (Zhang & Singh, 2018, Sec. 10.1, Fig. 16) |
| 相機 | wide-angle camera (model 原文未報告) | 方法輸入 | 未標示 | 640 x 512 px, used for motion estimation (Contour) | (Zhang & Singh, 2018, Sec. 10.2, Fig. 27) |
| 相機 | HD color camera (model 原文未報告) | 方法輸入 | 未標示 | 1600 x 1200 px, used for point cloud colorization (Contour) | (Zhang & Singh, 2018, Sec. 10.2, Fig. 27) |
| 載具平台 | passenger vehicle歸入:Passenger vehicle | 方法輸入 | 未標示 | street driving; both sensor suites attached | (Zhang & Singh, 2018, Fig. 16c) |
| 載具平台 | utility vehicle歸入:Utility vehicle | 方法輸入 | 未標示 | off-road driving; both sensor suites attached | (Zhang & Singh, 2018, Fig. 16d) |
| 載具平台 | helmet-mounted sensor suite with processing computer in a backpack | 方法輸入 | 未標示 | operator running and jumping over a vehicle | (Zhang & Singh, 2018, Fig. 1) |
| 載具平台 | DJI S1000 | 方法輸入 | 未標示 | drone carrying a sensor suite identical to Fig. 16b; flown at 2 to 3 m/s | (Zhang & Singh, 2018, Sec. 10.3, Fig. 32) |
| 運算硬體 | laptop with 2.6 GHz i7 quad-core processor | 執行運算平台 | 未標示 | 8 threads, integrated GPU, Linux with ROS | (Zhang & Singh, 2018, Sec. 10.1, Table 2) |
| 運算硬體 | embedded computer with 1.8 GHz i7 dual-core processor | 執行運算平台 | 未標示 | four threads, on Contour | (Zhang & Singh, 2018, Sec. 10.2, Table 5) |
作者報告的優勢與限制
優勢
- Relative position error below 0.22% over 9.3 km of street driving, versus 0.39% for LOAM and 0.33% for V-LOAM on the same data (Tables 3 to 4, Fig. 18)
- At doubled data speed (every other frame skipped) the complete pipeline degrades only from 0.22% to 0.26%, while visual-inertial only and IMU plus scan matching reach 1.47% and 0.89% (Table 3)
- Keeps operating in night driving, on open ground, on a flat runway and in a 380 m smooth tunnel by bypassing the camera or the degenerate lidar directions (Sec. 10.1.2, Figs. 20 to 23)
- Handles angular rates above 250 deg/s handheld, up to 370 deg/s with Contour, and linear speed up to 33 m/s (Secs. 10.1.3, 10.2)
- Localization on a prior map with estimated error below 2 cm across summer and winter forest runs, and air-ground map sharing with a drone (Sec. 10.3)
限制
- Accuracy values are upper bounds from satellite-image overlays, loop gaps or map inspection; the authors state precision cannot be guaranteed, and vertical drift could not be evaluated in the high-speed test (Secs. 10.1.1, 10.1.3)
- Contour building maps are only visually inspected because ground truth was hard to obtain (Sec. 10.2)
- Lidar degenerates in planar scenes (open ground, runway, smooth tunnel), where scan matching refines only 3 of 6 DoF (Sec. 10.1.2, Fig. 21)
- The IMU is assumed always reliable; IMU biases are corrected by a non-standard sliding-window average rather than random-walk optimization (Secs. 4.2, 8)
- The map is truncated when the sensor approaches the map boundary (Sec. 6.3)
營建工程相關證據
未在施工工地測試。與營建相關的證據包括:以自製手持裝置 Contour 掃描四層住宅的外部與地下室至三樓室內(約 0.5 m/s,地圖品質僅目視檢查)、另一棟建物的室內地圖,以及 380 m 平滑隧道與機場跑道等雷射退化情境(掃描配準只更新部分自由度)。精度指標多為衛星影像比對或迴圈缺口得到的上限估計,沒有獨立參考量測。
原文驗證環境:地下或隧道、已完工建築、跨場域
報告的性能數據
以下是原文作者報告的性能數值(author-reported results),不是本研究重新量測的結果。每張圖只並列同一個比較組(comparison group,同一張表、同一組實驗設定)內的方法;不同比較組之間的數值不可直接比較,也不構成排名。
本方法共出現在 8 個比較組,合計 39 筆紀錄。以下列出本方法紀錄最多的 4 組,其餘 4 組列在最後,並連到性能比較頁。
Zhang & Singh, 2018 · Table 2 本方法 12 筆
表格設定(擷取紀錄原文):Average CPU processing time with the two Velodyne sensor suites (Zhang & Singh, 2018, Table 2)
time per image frame,authors' data · Figure 16a (HDL-32E)
只並列這張表在相同設定下報告的方法;以「本方法:」開頭者為本頁方法。失敗、未執行與未報告以標記呈現,不是 0。
按 Tab 進入圖表後,用上下方向鍵逐一瀏覽各類別,Esc 關閉提示框;也可開啟表格檢視閱讀全部數值。
這些是 Zhang & Singh, 2018 在此表設定下報告的數值(author-reported results),只能在同一個比較組內對照,不代表方法在其他資料或設定下的表現。
資料來源作者報告值(Zhang & Singh, 2018, Table 2)
| 方法(原文寫法) | 報告值 | 出處 |
|---|---|---|
| Visual-inertial odometry, GPU feature tracking(第 1 筆)本方法原文提出硬體:laptop, 2.6 GHz i7 quad-core (8 threads), integrated GPU, Linux with ROS | 4.8 ms | (Zhang & Singh, 2018, Table 2) |
| Visual-inertial odometry, GPU feature tracking(第 2 筆)本方法原文提出硬體:laptop, 2.6 GHz i7 quad-core (8 threads), integrated GPU, Linux with ROS | 5.5 ms | (Zhang & Singh, 2018, Table 2) |
| Visual-inertial odometry, CPU feature tracking(第 1 筆)本方法原文提出硬體:laptop, 2.6 GHz i7 quad-core (8 threads), integrated GPU, Linux with ROS | 14.3 ms | (Zhang & Singh, 2018, Table 2) |
| Visual-inertial odometry, CPU feature tracking(第 2 筆)本方法原文提出硬體:laptop, 2.6 GHz i7 quad-core (8 threads), integrated GPU, Linux with ROS | 15.2 ms | (Zhang & Singh, 2018, Table 2) |
Zhang & Singh, 2018 · Table 1 本方法 8 筆
資料集與序列authors' data (multiple environments)
表格設定(擷取紀錄原文):Average CPU time of K-D tree operations for map voxel configurations, averaged over datasets from confined, open, structured and vegetated areas (Zhang & Singh, 2018, Table 1)
K-D tree build time per tree,authors' data (multiple environments)
只並列這張表在相同設定下報告的方法;以「本方法:」開頭者為本頁方法。失敗、未執行與未報告以標記呈現,不是 0。
按 Tab 進入圖表後,用上下方向鍵逐一瀏覽各類別,Esc 關閉提示框;也可開啟表格檢視閱讀全部數值。
這些是 Zhang & Singh, 2018 在此表設定下報告的數值(author-reported results),只能在同一個比較組內對照,不代表方法在其他資料或設定下的表現。
資料來源作者報告值(Zhang & Singh, 2018, Table 1)
| 方法(原文寫法) | 報告值 | 出處 |
|---|---|---|
| Scan matching map: One-level voxels, K-D trees for all voxels本方法 | 54 ms | (Zhang & Singh, 2018, Table 1) |
| Scan matching map: One-level voxels, K-D trees for each voxel本方法 | 47 ms | (Zhang & Singh, 2018, Table 1) |
| Scan matching map: Two-level voxels, K-D trees for all voxels本方法 | 24 ms | (Zhang & Singh, 2018, Table 1) |
| Scan matching map: Two-level voxels, K-D trees for each voxel (adopted)本方法原文提出 | 21 ms | (Zhang & Singh, 2018, Table 1) |
Zhang & Singh, 2018 · Table 3 本方法 8 筆
指標Relative position error (% of distance travelled), from the gap of a building registered twice at start and end
表格設定(擷取紀錄原文):Relative position error at the end of Accuracy Test 2, pipeline configurations compared at original and doubled data speed (Zhang & Singh, 2018, Table 3)
Relative position error (% of distance travelled), from the gap of a building registered twice at start and end,authors' data, Accuracy Test 2 (sensor suite Fig. 16a on passenger vehicle) · 1x speed
只並列這張表在相同設定下報告的方法;以「本方法:」開頭者為本頁方法。失敗、未執行與未報告以標記呈現,不是 0。
按 Tab 進入圖表後,用上下方向鍵逐一瀏覽各類別,Esc 關閉提示框;也可開啟表格檢視閱讀全部數值。
這些是 Zhang & Singh, 2018 在此表設定下報告的數值(author-reported results),只能在同一個比較組內對照,不代表方法在其他資料或設定下的表現。
資料來源作者報告值(Zhang & Singh, 2018, Table 3)
| 方法(原文寫法) | 報告值 | 出處 |
|---|---|---|
| Visual-inertial odometry本方法 | 0.93 | (Zhang & Singh, 2018, Table 3, Sec. 10.1.1) |
| IMU + scan matching本方法 | 0.51 | (Zhang & Singh, 2018, Table 3, Sec. 10.1.1) |
| One-step optimization (all constraints in one factor-graph-style problem at 5 Hz)本方法 | 0.48 | (Zhang & Singh, 2018, Table 3, Sec. 10.1.1) |
| Complete pipeline本方法原文提出 | 0.22 | (Zhang & Singh, 2018, Table 3, Sec. 10.1.1) |
Zhang & Singh, 2018 · Table 5 本方法 6 筆
資料集與序列authors' data (Contour) · Contour
表格設定(擷取紀錄原文):Average CPU processing time on the custom handheld Contour device (Zhang & Singh, 2018, Table 5)
time per image frame,authors' data (Contour) · Contour
只並列這張表在相同設定下報告的方法;以「本方法:」開頭者為本頁方法。失敗、未執行與未報告以標記呈現,不是 0。
按 Tab 進入圖表後,用上下方向鍵逐一瀏覽各類別,Esc 關閉提示框;也可開啟表格檢視閱讀全部數值。
這些是 Zhang & Singh, 2018 在此表設定下報告的數值(author-reported results),只能在同一個比較組內對照,不代表方法在其他資料或設定下的表現。
資料來源作者報告值(Zhang & Singh, 2018, Table 5)
| 方法(原文寫法) | 報告值 | 出處 |
|---|---|---|
| Visual-inertial odometry, GPU feature tracking(第 1 筆)本方法原文提出硬體:Contour embedded computer, 1.8 GHz i7 dual-core (four threads) | 6.4 ms | (Zhang & Singh, 2018, Table 5) |
| Visual-inertial odometry, GPU feature tracking(第 2 筆)本方法原文提出硬體:Contour embedded computer, 1.8 GHz i7 dual-core (four threads) | 6.9 ms | (Zhang & Singh, 2018, Table 5) |
| Visual-inertial odometry, CPU feature tracking(第 1 筆)本方法原文提出硬體:Contour embedded computer, 1.8 GHz i7 dual-core (four threads) | 16.7 ms | (Zhang & Singh, 2018, Table 5) |
| Visual-inertial odometry, CPU feature tracking(第 2 筆)本方法原文提出硬體:Contour embedded computer, 1.8 GHz i7 dual-core (four threads) | 18.7 ms | (Zhang & Singh, 2018, Table 5) |
其他比較組
來源
Zhang & Singh, 2018
(2018)Laser–visual–inertial odometry and mapping with high robustness and low driftJournal of Field Robotics, 35(8): 1242-1264
同儕審查已出版已讀全文近十年