Tightly Coupled Sensor Fusion
- 又稱: tight coupling
- 類別: State estimation & navigation › Localisation
- 標籤: sensor-fusion, state-estimation, slam, imu, lidar
直接從各感測器的低階量測(例如特徵觀測與原始 IMU 資料)估測一個共享狀態來融合感測器,而不是把各感測器分別算出的姿態組合起來。
定義
在緊耦合感測器融合(Tightly coupled sensor fusion)中,單一估測器接收每個感測器的低階量測(影像特徵位置、光達點對平面距離、IMU 加速度與角速率、GNSS 虛擬距離),並求解一個共享的狀態。在鬆耦合融合中,每個感測器或子系統先各自產生估測,例如視覺里程計流程算出的姿態,或 GNSS 接收器提供的定位解,再由第二階段把這些輸出融合。兩者都是感測器融合的形式;差別在於量測是在哪個層級交會。
緊耦合利用了鬆耦合所捨棄的資訊。當只看得到少數視覺特徵時,IMU 仍能約束狀態,並協助預測特徵應出現的位置;追蹤到的衛星太少、無法算出定位解的 GNSS 接收器,仍可貢獻有用的虛擬距離;感測器之間的相關性會被建模,而不是被忽略。MSCKF、OKVIS 與 VINS-Mono 等視覺慣性系統屬於緊耦合。在光達系統中,LOAM 與 LeGO-LOAM 通常被描述為鬆耦合,因為 IMU 只用來對掃描去歪斜並提供初始猜測;LIO-SAM 與 LVI-SAM 則把 IMU 預積分因子與光達約束(LVI-SAM 還加上視覺約束)放在同一個最佳化中。
代價是複雜度與脆弱性。緊耦合估測器需要每個感測器的精確模型、謹慎的外部參數校正與時間偏移,以及可靠的初始化;某個感測器量測中的故障,除非被偵測並排除,否則會直接進入共享的估測。鬆耦合設計較容易建構、除錯與修改,也能隔離故障,因此許多已部署的系統會混用兩者:例如一個緊耦合的視覺慣性核心,其輸出再與 GNSS 或輪式里程計以鬆耦合方式融合。這些術語描述的比較像是一段連續光譜,而不是兩個界線分明的類別,各篇論文劃分界線的位置也不盡相同。
為何重要
一個系統是緊耦合還是鬆耦合,決定了某個感測器表現薄弱時(在黑暗場景、缺乏特徵的走廊中,或衛星涵蓋不完整時)它會如何反應。了解兩者的差異,有助工程師讀懂狀態估測論文,並選擇符合其精度、強健性與維護需求的架構。
主要應用
- 用於無人機與 AR 頭戴裝置的視覺慣性里程計
- 光達慣性與光達-視覺-慣性 SLAM
- 車輛中使用原始虛擬距離的 GNSS/INS 整合
- 融合腿部運動學與 IMU 資料的足式機器人狀態估測
- 在隧道、黑暗或煙霧等劣化條件下的導航
實際應用
一個打造光達慣性建圖背包的團隊,一開始採用鬆耦合設計:光達里程計模組輸出姿態,再由擴展卡爾曼濾波器把這些姿態與 IMU 姿態角融合。行走中快速轉身時,掃描匹配失敗,濾波器沒有可用的資訊可以融合。他們改採緊耦合設計,把 IMU 預積分因子與光達掃描匹配因子放在同一個因子圖中,線上估測 IMU 偏差,並在光達短暫失效時由 IMU 維持狀態。這項改變也提高了對校正的要求:聯合最佳化對光達與 IMU 之間的外部參數與時間戳記偏移很敏感,因此團隊在每次硬體變更後都加入一個校正步驟。
常見誤解
- 緊耦合一定勝過鬆耦合 — 它使用更多資訊,但對校正誤差與故障感測器更敏感,建構良好的鬆耦合系統可能更強健
- 任何同時使用相機或光達與 IMU 的系統都是緊耦合 — 如果 IMU 只提供初始猜測或去歪斜,而不在估測器之中,該系統就是鬆耦合
- 這些術語有單一的精確定義 — 各論文的用法不同,許多系統同時結合緊耦合與鬆耦合的部分
誰需要了解
- 狀態估測與 SLAM 工程師
- 自駕車導航團隊
- 無人機與足式機器人開發者
- GNSS/INS 整合工程師
相關技術
- 擴展卡爾曼濾波器(Extended Kalman Filter)
- GTSAM
- MSCKF
- VINS-Mono
- LIO-SAM
- GNSS/INS 整合(GNSS/INS Integration)
相關術語
- Sensor Fusion
- Visual-Inertial Odometry
- IMU Preintegration
- Factor Graph
- Extended Kalman Filter
- LiDAR Odometry
相關專案
- LingBot-Map: Streaming 3D reconstruction from one camera: pose and depth for every frame, live
- oomwoo: Open-source DIY robot vacuum: 3D-printed, ROS2 + 2D LiDAR, fully local.
- Cartographer: Google's real-time 2D and 3D SLAM system for multi-platform robotics
- OpenCat: An open-source Arduino and Raspberry Pi-based quadruped robot pet framework
- FAST-LIVO2: Fast, direct LiDAR-inertial-visual odometry from HKU-MARS, published in IEEE T-RO
- DimOS: Python robotics runtime with agents, SLAM and teleop, no ROS required