1. 程式人生 > >SLAM學習筆記(二)

SLAM學習筆記(二)

《視覺SLAM十四講》

書本地址:http://www.broadview.com.cn/book/4938

書本程式碼:https://github.com/gaoxiang12/slambook

經典視覺SLAM的框架

可以看出整個視覺SLAM被分成了六個部分。

1.感測器資訊讀取。在視覺SLAM中主要為相機影象資訊的讀取和預處理。

2.視覺里程計(Visual Odometry,VO)。視覺里程計的任務是估算相鄰影象間相機的運動,以及區域性地圖的樣子。VO又稱為前端(Front End)

3.後端優化(Optimization)。後端接受不同時刻視覺里程計測量的相機位姿,以及迴環檢測的資訊,對它們進行優化,得到全域性一致的軌跡和地圖,由於接在VO之後,又稱後端。

4.迴環檢測(Loop Closing)。判斷機器人是否到達過先前的位置。如果檢測到迴環,它會把資訊提供給後端進行處理。

5.建圖(Mapping)。根據估計的軌跡,建立與任務要求對應的地圖。

一些名詞:

累計漂移:每次估計都會有帶有一定的誤差,而由於里程計的工作方式,前一時刻的誤差將會傳遞到下一時刻,經過一段時間後,估計的誤差將不再準確。漂移導致我們無法建立一致的地圖。為了解決漂移問題,我們還需要兩種技術:後端優化和迴環檢測。迴環檢測負責把“機器人回到初始位置”的事情檢測出來,而後端優化則根據該資訊校正整個軌跡的形狀。

SLAM問題的本質:對運動主體自身和周圍環境空間不確定性的估計。