ubuntu 14.04調試ORB-SLAM2


1  具備的條件:

(1)ubuntu 14.04

(2)ROS indigo(可選)


 

 

2  安裝依賴

(1)Pangolin:https://github.com/stevenlovegrove/Pangolin

安裝依賴:

sudo apt-get install libglew-dev

sudo apt-get install cmake

sudo apt-get install libboost-dev libboost-thread-dev libboost-filesystem-dev

sudo apt-get install libpython2.7-dev

安裝Pangolin:

git clone https://github.com/stevenlovegrove/Pangolin.git

cd Pangolin

mkdir build

cd build

cmake -DCPP11_NO_BOOSR=1 ..

make -j

(2)OpenCV:http://opencv.org/(我使用的是OpenCV 2.4.10)

安裝步驟:參考:http://blog.csdn.net/csqingchen/article/details/43968925

(3)Eigen3:http://eigen.tuxfamily.org/

直接在終端:sudo apt-get install libeigen3-dev

(4)BLAS and LAPACK

安裝步驟:

    sudo apt-get install libblas-dev

    sudo apt-get install liblapack-dev


 

 

3  安裝ORB-SLAM2

  git clone https://github.com/raulmur/ORB_SLAM2.git ORB_SLAM2(我直接放在Home文件夾下)

  cd ORB_SLAM2

  chmod +x build.sh

  ./build.sh

    碰到問題:

找不到<Eigen/Core>,但是eigen3已經安裝,

解決——運行指令:sudo ln -s /usr/include/eigen3/Eigen /usr/local/include/Eigen


 

 

4  下載並運行TUM(慕尼黑工業大學)的數據集

目前為止,我實際跑了單目、RGB-D的一個數據集作為調試用。

下載TUM的數據集:http://vision.in.tum.de/rgbd/dataset/freiburg1/rgbd_dataset_freiburg1_xyz.tgz

解壓放到~/ORB_SLAM2/Examples下

運行單目的指令:Monocular Examples TUM Dataset

cd ~/ORB_SLAM2/

  ./Examples/Monocular/mono_tum Vocabulary/ORBvoc.txt Examples/Monocular/TUM1.yaml Examples/rgbd_dataset_freiburg1_xyz

運行RGB-D的指令: RGB-D Example TUM Dataset

      cd ~/ORB_SLAM2/

./Examples/RGB-D/rgbd_tum Vocabulary/ORBvoc.txt Examples/RGB-D/TUM1.yaml Examples/rgbd_dataset_freiburg1_xyz Examples/RGB-D/associations/fr1_xyz.txt

以上均不需要ROS,在ubuntu 14.04下就能實現。

 

繼續跑TUM(慕尼黑工業大學)的數據集:

初始化失敗的數據集:(不完全統計)

rgbd_dataset_freiburd1_floor

rgbd_dataset_freiburd2_pioneer_slam

rgbd_dataset_freiburd3_nostructure_notexture_near_withloop


 

 

 5  在ROS下跑ORB-SLAM2,使用外接攝像機

 

(1)安裝ROS indigo,

(2)到路徑Examples/ROS/ORB_SLAM2下,執行:

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

完成了ROS indigo下ORB-SLAM2的調試,使用的是索尼的PS3攝像機,效果不錯。

ORB-SLAM2的ROS節點,以雙目為例,在路徑: path/to/ORB_SLAM2/Examples/ROS/ORB_SLAM2/src的ros_stereo.cc中,可以看到訂閱左右攝像機的Topic:

    message_filters::Subscriber<sensor_msgs::Image> left_sub(nh, "/stereo/left/image_raw", 1);
    message_filters::Subscriber<sensor_msgs::Image> right_sub(nh, "/stereo/right/image_raw", 1);

發布對應的Tocpic上,就能夠運行ORB-SLAM2的Stereo版。

(3)基於VSLAM的四旋翼飛行器自主懸停控制

 

 


 

 6  后記

按理說,下載作者開源代碼(https://github.com/raulmur/ORB_SLAM2),根據README的說明安裝依賴關系,一步一步按照說明進行下去,順利的話就能完成。一開始,我是在ubuntu 12.04.5上進行,Map Viewer不能顯示內容,一直是黑屏,嘗試解決未果,並在運行sudo autoremove的時候,破壞了ubuntu系統。后來,轉到ubuntu 14.04.3+indigo上繼續搞。在ubuntu12.04上搞的時候,碰到的問題、解決的問題其實更多,但是最后Map Viewer的問題沒能解決,不做記錄,但歡迎交流。

發表的相關論文:

[1] 林輝燦, 呂強, 張洋, 等. 稀疏和稠密的VSLAM的研究進展[J]. 機器人, 2016, 38(5): 621-631.

   http://robot.sia.cn/CN/Y2016/V38/I5/621

   CNKI

[2] 林輝燦, 呂強, 衛恆, 等. 基於VI-SLAM的四旋翼自主飛行與三維稠密重構[J]. 光學學報,2018,38(07):0715004.

  http://kns.cnki.net/KCMS/detail/31.1252.O4.20180312.0927.054.html

  http://www.opticsjournal.net/Articles/HPAbstract?manu_number=g180489

[3] 林輝燦, 呂強, 王國勝, 等. 魯棒的非線性優化的立體視覺-慣導SLAM[J]. 機器人, 2018, 40(6).

  http://kns.cnki.net/KCMS/detail/21.1137.TP.20180514.1838.002.html


 

其它參考:http://blog.csdn.net/aptx704610875/article/details/51490201 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM