SLAM - 01 - 分類

前言:

本文針對SLAM(Simultaneous Localization And Mapping,簡稱SLAM)的基本定義和分類進行了討論。


1 SLAM的定義:

通常是指在機器人或者其他載體上,通過對各種傳感器數據進行採集和計算,生成對其自身位置姿態的定位和場景地圖信息的系統。SLAM技術對於機器人或其他智能體的行動和交互能力至爲關鍵,因爲它代表了這種能力的基礎:知道自己在哪裏,知道周圍環境如何,進而知道下一步該如何自主行動。它在自動駕駛、服務型機器人、無人機、AR/VR等領域有着廣泛的應用,可以說凡是擁有一定行動能力的智能體都擁有某種形式的SLAM系統

2 SLAM的分類一:

 一般來講,SLAM系統通常都包含多種傳感器和多種功能模塊。而按照核心的功能模塊來區分,目前常見的機器人SLAM系統一般具有兩種形式:基於激光雷達的SLAM(激光SLAM)和基於視覺的SLAM(Visual SLAM或VSLAM)。

2.1 激光SLAM

激光SLAM脫胎於早期的基於測距的定位方法(如超聲和紅外單點測距)。激光雷達(Light Detection And Ranging)的出現和普及使得測量更快更準,信息更豐富。激光雷達採集到的物體信息呈現出一系列分散的、具有準確角度和距離信息的點,被稱爲點雲。通常,激光SLAM系統通過對不同時刻兩片點雲的匹配與比對,計算激光雷達相對運動的距離和姿態的改變,也就完成了對機器人自身的定位。但激光雷達能更高精度的測出障礙點的角度和距離,方便定位導航。

激光雷達距離測量比較準確,誤差模型簡單,在強光直射以外的環境中運行穩定,點雲的處理也比較容易。同時,點雲信息本身包含直接的幾何關係,使得機器人的路徑規劃和導航變得直觀。激光SLAM理論研究也相對成熟,落地產品更豐富。

激光雷達有單線多線之分,角分辨率及精度也各有千秋。SICK、velodyne、Hokuyo以及國內的北醒光學、Slamtech是比較有名的激光雷達廠商。他們可以作爲SLAM的一種輸入形式。

SLAM的前世今生    終於有人說清楚了  | 硬創公開課

上面這個小視頻裏展示的就是一種簡單的2D SLAM。

 

SLAM的前世今生    終於有人說清楚了  | 硬創公開課

上面這個小視頻是賓大的教授kumar做的特別有名的一個demo,是在無人機上利用二維激光雷達做的SLAM。

 

 


sample google Cartographer,

激光的又分爲2D和3D的, 

 

 


2.2  VSLAM

VSLAM 主要是通過攝像頭來採集數據信息,跟激光雷達一對比,攝像頭的成本顯然要低很多。而則主要用攝像頭來實現,攝像頭品種繁多,主要分爲單目、雙目、單目結構光、雙目結構光、ToF幾大類。他們的核心都是獲取RGB和depth map(深度信息)。簡單的單目和雙目(Zed、leapmotion)


 

2.2.1 基於 RGBD 的深度攝像機

基於深度攝像機的 Vslam,跟激光 SLAM 類似,通過收集到的點雲數據,能直接計算障礙物距離;

結構光原理包括DOE和MEMS兩種,其中,DOE的分辨率比較低,而MEMS的點雲數量比較大.

SLAM的前世今生    終於有人說清楚了  | 硬創公開課

2.2.2 單目、雙目或者魚眼攝像頭

基於單目、魚眼相機的 VSLAM 方案,利用多幀圖像來估計自身的位姿變化,再通過累計位姿變化來計算距離物體的距離,並進行定位與地圖構建; 

 


點雲數量出來後,依據點雲的具體格式和密度,視覺SLAM(也分Sparse、semiDense、Dense)兩類,但其主要思路大同小異。

 SLAM的前世今生    終於有人說清楚了  | 硬創公開課

 Sparse(稀疏)的

SLAM的前世今生    終於有人說清楚了  | 硬創公開課

偏Dense(密集)的


小結: 


3 SLAM的分類二 - 獲取圖片區域的方法:

從獲取圖片那個區域使用的方面講,SLAM系統可以被分爲稀疏和稠密. 

3.1 稀疏/稠密方法

稀疏的SLAM系統僅僅使用一幀圖片的選中的一小部分像素, 然而稠密SLAM系統則使用大部分或者全部像素. 由於使用不同的總量的像素和區域,產生的地圖也不盡相同.由稀疏方法產生地圖通常使用點雲, 這是一種比較粗糙的編碼方式,主要用於跟蹤攝像頭的位姿.另一方面,稠密的方法,更加給力的硬件通常時需要的,大部分稠密的SLAM系統都需要GPU.

稀疏地圖

稀疏,用於姿態的表現 

半稠密地圖

半稀疏,用於自動駕駛比較多

稠密地圖

稠密,用於反向工程


4 SLAM的分類三 - 算法:

根據SLAM系統使用圖像信息的方式(算法的實現方法)可以分爲直接/非直接.

4.1 非直接方式

非直接的方式通常先提出特徵,然後利用這些特徵定位攝像頭和地圖構建. 這些特徵可以是簡單的幾何特徵比如角和邊,更加複雜的特徵描述方法比如:SIFT,SURF,ORB,FAST等等. 

4.2 直接的方式

直接的方法試着恢復環境深度和結構信息,攝像頭的位姿通過優化地圖和攝像頭信息參數共同得到. 由於特徵提取會花費大量的時間,當維持與間接方法同樣的幀率,直接方法潛在的好處在於可以有更多的時間進行其他計算.另一方面,間接方法基於特徵可以提供更好的容錯能力當光照條件改變時, 因爲間接方法不直接使用像素強度.


結合上述兩種分類的方法: 

 

結合上述兩種分類的方法, 又分爲兩種概率的框架:

一、概率方法

      採用概率框架的方法的思路大致爲:假設從初始時刻到當前 時刻的觀測數據和控制輸入已知,那麼就可以聯合後驗概率來構建一個後驗概率密度函數,這個函數用來描述相機姿態 和 地圖中的特徵的空間位置,進而通過遞歸的貝葉斯濾波算法 來對構建的概率密度函數進行估計,從而完成SLAM問題的解決。

      在基於KF的方法中,假設滿足高斯分佈並且系統的非線性較小時可以得到不錯的效果,另外從後驗概率的不同可以分爲EKF-SLAM方法、擴展信息濾波(EIF)方法、UKF-SLAM方法、SEIF方法等,例如,Davison等提出的單目視覺SLAM系統(MonoSLAM)和Roussillon[提出的實時單目視覺SLAM系統(RTSLAM)就是建立在擴展卡爾曼濾波(EKF)的基礎上的。

     再基於PF的方法中,主要有Doucet[7]提出的基於Rao-Blackwellized粒子濾波器(RBPF)的方法 和在此基礎上Montemerlo[8]提出的 FastSLAM方法等,其中FastSLAM方法可以用於非線性的系統。

      優點: 基於概率框架的方法的計算框架類似,其中基於EKF的單目視覺,一般可以分爲運動模型和觀測模型並在一階HMM 的假設下可以實現系統狀態的預測和觀測更新。地圖也可以在線更新。

      缺點:但是這種方法多采用增量式的地圖創建方法,複雜度是n^2的。另外故在系統不穩定和觀測的不確定性的影響下造成誤差的累積,在大規模場景時會導致最終地圖的不一致性,難於保持準確度和魯棒性。

二、非概率方法

   在非概率框架的方法中,Klein等在基於關鍵幀的基礎上提出的PTAM系統(Parallel Tracking andMapping),該系統會在後文給出詳細的分析和優化措施。基於圖優化的SLAM方法[9]在採取了全局優化的基礎上,在大規模場景下可以取得好的效果。在國外,基於圖優化的方法大都被劃分爲前端和後端的問題,

得到算法和分相相關因子的相關圖。


參考:

1 激光SLAM與視覺SLAM的現狀與趨勢

https://yq.aliyun.com/articles/236369

2 激光 SLAM與VSLAM,最穩定、最主流的定位導航方法誰主沉浮?

https://www.eefocus.com/sensor/390426

https://www.eefocus.com/sensor/436867

3 Google 

https://google-cartographer.readthedocs.io/en/latest/

4 SLAM的前世今生 終於有人說清楚了 | 硬創公開課

https://www.leiphone.com/news/201605/5etiwlnkWnx7x0zb.html

5 不同類型的視覺SLAM系統

https://blog.csdn.net/yangziluomu/article/details/61912557


論文連接:

相關論文和演示視頻

DSO: Koltun, V. and Cremers, D., 2016. Direct sparse odometry. arXiv preprint arXiv:1607.02565. 
https://www.youtube.com/watch?v=C6-xwSOOdqQ

DTAM: Newcombe, R.A., Lovegrove, S.J. and Davison, A.J., 2011, November. DTAM: Dense tracking and mapping in real-time. In Computer Vision (ICCV), 2011 IEEE International Conference on (pp. 2320-2327). IEEE. 
https://www.youtube.com/watch?v=Df9WhgibCQA

LSD-SLAM: Engel, J., Schöps, T. and Cremers, D., 2014, September. LSD-SLAM: Large-scale direct monocular SLAM. In European Conference on Computer Vision pp. 834-849). Springer International Publishing. 
https://www.youtube.com/watch?v=GnuQzP3gty4&t=1s

MonoSLAM: Davison, A.J., Reid, I.D., Molton, N.D. and Stasse, O., 2007. MonoSLAM: Real-time single camera SLAM. IEEE transactions onpattern analysis and machine intelligence, 29(6) 
https://www.youtube.com/watch?v=mimAWVm-0qA

ORB-SLAM: Mur-Artal, R., Montiel, J.M.M. and Tardos, J.D., 2015. ORB-SLAM: a versatile and accurate monocular SLAM system. IEEE Transactions on Robotics 31(5), pp.1147-1163. 
https://www.youtube.com/watch?v=_9VcvGybsDA

PTAM: Klein, G. and Murray, D., 2007, November. Parallel tracking and mapping for small AR workspaces. In Mixed and Augmented Reality, 2007. ISMAR 2007. 6th IEEE and ACM International Symposium on (pp. 225-234). IEEE. 
https://www.youtube.com/watch?v=F3s3M0mokNc

SVO: Forster, C., Pizzoli, M. and Scaramuzza, D., 2014, May. SVO: Fast semi-direct monocular visual odometry. In Robotics and Automation (ICRA), 2014 IEEE International Conference on (pp. 15-22).IEEE. 
https://www.youtube.com/watch?v=2YnIMfw6bJY&t=2s

Monday, 13. March 2017 08:52AM 
原文地址Different Types of Visual SLAM Systems

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章