天天看點

ORB_SLAM 編譯過程詳解

首先貼出github位址:http://webdiis.unizar.es/~raulmur/orbslam/

ORB_SLAM是相對來說比較新的一種SLAM,2015年開發出來,也許很多初學者比較想先運作出效果,然後慢慢了解,是以在這裡貼出編譯運作的過程。

部落客的運作環境Ubuntu14.04+ROS(indigo),首先,這種搭配最為常見,遇到問題也一般都能搜尋出答案出來,是以建議大家使用部落客這個環境。

1、首先ros工作空間,部落客的ROS工作空間為~/catkin_ws/src

首先要把以下兩行寫進你的 .bashrc 裡面(gedit ~/.bashrc 然後複制下面兩行進去,條件是,你的工作空間設定的名字跟我的一樣的話)

source /opt/ros/indigo/setup.bash
source ~/catkin_ws/devel/setup.bash
           

2、安裝boost庫

3、安裝opencv2.4(部落客安裝的是2.4.13版本)這個網上有大量的教程,搜尋即可。

4、 下載下傳ORB_SLAM 到ROS工作空間(catkin_ws/src 目錄下),并解壓

https://github.com/raulmur/ORB_SLAM
           

或者進入~/catkin_ws/src/ 然後終端執行

git clone https://github.com/raulmur/ORB_SLAM.git ORB_SLAM

下載下傳資料集,(同樣放在上述目錄)約800M,解壓得到Example.bag檔案(約1G)

5、在ORB_SLAM 檔案夾下移除 manifest.xml 檔案中對opencv的依賴,(把含有opencv的那行删除,否則第九步會出錯)

6、安裝eigen3,這是安裝g2o的必要條件

7、編譯g2o

進入 Thirdparty/g2o/ 檔案夾 終端執行

mkdir build && cd build
 cmake .. -DCMAKE_BUILD_TYPE=Release
 make 
           

8、同樣方式編譯DBoW2

進入 Thirdparty/g2o/

mkdir build && cd build
 cmake .. -DCMAKE_BUILD_TYPE=Release
 make 
           

9、進入ORB-SLAM檔案夾進行編譯

mkdir build
 cd build
 cmake .. -DROS_BUILD_TYPE=Release
 make
           

10、

(1)啟動roscore

(2)新終端執行

rosrun ORB_SLAM ORB_SLAM PATH_TO_VOCABULARY PATH_TO_SETTINGS_FILE
           

其中PATH_TO_VOCABULARY PATH_TO_SETTINGS_FILE分别是ORBvoc.txt和Settings.yaml的相對路徑,以本例為說明即為:

11、新終端執行

啟動圖檔檢視程式,到時可以看到特征點跟蹤情況

12、新終端執行

rosrun rviz rviz -d Data/rviz.rviz
           

啟動地圖視圖視窗,顯示軌迹及特征點地圖

13、新終端執行(先進入ORB_SLAM 檔案夾

roslaunch ExampleGroovyOrNewer.launch
、新終端先進入資料集檔案夾,執行
           

rosbag play –pause Example.bag

“`

執行圖檔釋出程式,執行後,按空格鍵開始

結果如下圖所示

ORB_SLAM 編譯過程詳解