視覺SLAM的方案總結
MoNoSLAM:https://github.com/hanmekim/SceneLib2
以擴展卡爾曼濾波為後端,追蹤前端非常稀疏的特征點,以相機的當前狀態和所有路標點為狀態量,更新其均值和協方差。
優點:在2007年,隨著計算機性能的提升,以及該系統用稀疏的方式處理圖像,使得該方案使得SLAM系統能夠在線運行。(之前的SLAM系統是基本不能在線運行的,只能靠機器人攜帶相機采集的數據,再離線進行定位和建圖。)
缺點:MoNoSLAM存在應用場景窄,路標數量有限,系數特征點非常容易丟失等缺點,現在已經停止了對其開發。
PTAM( Parallel Tracking And Mapping )http://www.robots.ox.ac.uk/~gk/PTAM
主要原理是: 從攝影圖像上捕捉特征點,然後檢測出平面,在檢測出的平面上建立虛擬的3D坐標,然後合成攝影圖像和CG。其中,獨特之處在於,立體平面的檢測和圖像的合成采用並行處理。
優點:提出並實現了跟蹤與建圖過程的並行化,將前後端分離,使用非線性優化方案,既可以實時的定位與建圖,也可以在虛擬平面上疊加物體。
缺點:場景小,跟蹤容易丟失。
ORB-SLAM(繼承並改進PTAM)http://webdiis.unizar.es/~raulmur/orbslam/
優點:泛用性:支持單目,雙目,RGB-D三種模式。整個系統圍繞ORB特征進行計算,在效率與精度之間做到了平衡,並圍繞特征點進行了優化。其回環檢測算法可以有效地防止誤差的積累。使用三個線程完成SLAM,取得了較好的跟蹤和建圖效果,能夠保證軌跡和地圖的全局一致性。
缺點:對於每幅圖像都需要計算ORB特征耗時大。三線程給CPU帶來較大負擔,在一直到嵌入式設備上有一定的困難,ORB-SLAM的建圖為稀疏特征點,只能滿足定位功能。
LSD-SLAM(Large Scale Direct monocular SLAM)
將單目直接發應用到了半稠密的單目SLAM中,不需要計算特征點,還能構建版稠密地圖.
優點:直接法是針對像素進行的;對特征缺失區域不敏感,半稠密追蹤可以保證追蹤的實時性和穩定性;在cpu上實現了半稠密地圖的重建。
缺點:對相機內參和曝光非常敏感,並且在相機快速運動時容易丟失,在回環檢測部分,沒有直接基於直接發實現,依賴特征點方程進行回環檢測,尚未完全擺脫特征點的計算。
SVO( Semi-direct Visual Odoemtry )
基於稀疏直接法的視覺裏程計,在實現中,使用了4x4的小塊進行塊匹配,估計相機資自身的運動。
優點:速度極快,在低端計算平臺上也能達到實時性,適合計算平臺受限的場合。
缺點:在平視相機中表現不佳;舍棄了後端優化和回環檢測部分,SVO的位姿估計存在累計誤差,並且丟失後不太容易進行重定位。
RTAB-MAP(RGB-D傳感器上的SLAM方案)
給出了一套完整的RGB-D SLAM方案,目前可以直接從ROS中獲得其二進制程序,在Google Project Tango上可以獲得其APP直接使用。
優點:原理簡單;支持RGB-D和雙目傳感器,且提供實時的定位和建圖功能。
缺點:集成度高,龐大,在其上進行二次開發困難,適合作為SLAM應用而非研究使用。
視覺SLAM的方案總結