1. 程式人生 > >A Benchmark Comparsion of Monocular Visual-Inertial Odometry Algorithms for Flying Robots論文筆記

A Benchmark Comparsion of Monocular Visual-Inertial Odometry Algorithms for Flying Robots論文筆記

模型 fas con patch 最小 耦合 而且 測試平臺 style

摘要:

  本文主要比較單目VIO的算法在飛行機器人上運行的性能,測試使用統一數據集為EuRoC。其中評價指標為:姿態估計精度、每幀處理時間以及CPU和內存負載使用率,同時還有RMSE(運行軌跡與真實軌跡的比較指標)。比較的單目VIO分別為:MSCKF、OKVIS、ROVIO、VINS-Mono、SVO-MSF、SVO-GTSAM。其中運用了四個測試平臺Intel NUC(desktop PC)、laptop、UP Board(embedded system for flying robots)、ODROID(an embedded PC containing a hybrid processing unit)

介紹:

  選擇單目的原因是由於單目是可靠狀態估計所需的最小單元,而且相對於其他傳感器而言,單目更加適合飛行機器人的負載和功耗需求,所以文章選擇比較單目的VIO。因為各個單目VIO算法的性能比較都不全面,而且它們都沒考慮計算能力限制的需求,所以本文將它們統一起來一起比較。

  貢獻:

    1、全面比較了公開的單目VIO算法

    2、提供比較結果的性能

算法介紹:

  1)MSCKF(Multi-state constraint Kalman Filter)主要特點是提出一個測量模型,該模型描述了觀察到特定圖像特征的所有攝像機幀的姿態之間的幾何約束,而不需要維持對該時刻3維特征位置的估計。擴展卡爾曼濾波後端實現了基於事件的相機輸入的MSCKF形式,後面改為標準的相機追蹤模式。

  2)OKVIS(Open Keyframe-based Visual-Inertial SLAM)提出基於關鍵幀處理的思想,對包括關鍵幀位姿的一個滑動窗口進行非線性優化。文中提出一個基於視覺路標加權的投影誤差和加權的慣性誤差項組成的代價函數。前端使用多尺度Harris角點檢測和提取BRISK描述子,後端使用ceres進行非線性優化。

  3)ROVIO(Robust Visual Inertial Odometry)基於EKF的slam算法。提取Fast角特征,以機器人為中心的方位向量和距離參數化3D位姿,從圍繞這些特征的圖像流中攝取多層次的patch特征。在狀態更新中提出光度誤差項。

  4)VINS-Mono提出基於滑動窗口的非線性優化估計器,前端追蹤魯棒的角特征。提出一種松耦合的傳感器數據融合的初始化過程,可以從任意的狀態下引導估計量。IMU測量在優化之前先預積分,提出緊耦合的優化方法。提出4自由度的優化位姿圖和回環檢測線程。

  5)SVO+MSF(Semi-Direct Visual Odometry)MSF是在狀態估計中融合不同傳感器的通用EKF框架。SVO估計的位姿提供給MSF作為通用的位姿傳感器輸出,然後使用MSF融合IMU數據。由於松耦合的數據結合,姿態的尺度必須近似正確,需要手動設置初始化的值。

  6)SVO+GTSAM後端使用iSAM2中執行在線因子圖全平滑優化算法,在位姿圖優化中提出使用預積分的IMU因子。

結論:

  通過額外計算能力可以提高準確性和健壯性,但是在資源受限系統中,需要在計算能力和性能之間找到合適的平衡。在計算能力受限的系統中,ODROID、SVO+MSF算法性能最好,但是犧牲了精度,得出的魯棒的軌跡;在計算能力不受限的系統中,VINS-Mono顯示高精度和很好的魯棒性。兩者折中方案是ROVIO,比ODROID、SVO+MSF有更好的精度,且比VINS-Mono計算需求低。但是ROVIO對每幀處理時間敏感,無法在一些飛行機器人機載系統上使用。

  

A Benchmark Comparsion of Monocular Visual-Inertial Odometry Algorithms for Flying Robots論文筆記