2018.9.20 個人學習筆記,如有錯誤請指正。
orbslam是一套比較成功的,完整的基於特徵點的的SLAM系統,具有代表性,所以先學習這個。其原論文目前讀了一半左右,後續會接着就進行學習,今天先對orbslam在ros下運行的環境進行配置。
主要參考:
*Ubuntu 16.04+ROS+ORB-SLAM2配置以及相關問題
在ROS中使用ORB-SLAM(1)
運行ORB-SLAM筆記_編譯篇(一)
ORB-slam的配置和使用
-
orb-slam概覽
下載orbslam:https://github.com/OpenSLAM-org/openslam_orbslam
解壓之後:
首先應該關注它的README.txt,基本上是按照這裏邊的介紹進行安裝的,但是過程中可能會出現問題。 -
安裝依賴庫
sudo apt-get install libboost-all-dev
sudo apt-get install libsuitesparse-dev
sudo apt-get install libblas-dev
sudo apt-get install liblapack-dev
sudo apt-get install libeigen3-dev
以上是需要的依賴庫,應該沒什麼問題。
- 編譯orb-slam
如果要用自己的攝像頭運行,需要安裝ROS,配置環境變量的過程遇到了一些問題,這裏具體講講
安裝好ROS後,需要將ROS的PACKAGE加入到環境變量中:
進入.bashrc文件(這個文件是在home目錄下的隱藏文件,在文件夾下按ctrl+h就可以看到)
sudo gedit ~/.bashrc
在文件最下邊添加:
export ROS_PACKAGE_PATH=${ROS_PACKAGE_PATH}:orb-slam的絕對路徑
然後執行下句,使其生效:
source ~/.bashrc
然後就可以對orbslam進行編譯了:
mkdir build
cd build
cmake .. -DROS_BUILD_TYPE=Releasemake
make
但是在編譯過程中出現了錯誤。提示沒有安裝opencv2什麼的
忘記在哪個博客裏邊看到了它的解決辦法:
打開orbslam目錄下的manifest.xml文件將其中的opencv那一句刪除或者註釋掉就可以了。
直接打開的話刪不掉,所以使用
vi manifest.xml
在命令行窗口進行刪除,之後再最後一行輸入
:wq
保存並退出,之後再進行編譯即可。