ROS进阶学习(七)-- ORB_SLAM2实战(一)

这是重装系统后第一次泡ORB_SLAM2,把遇到的问题以及解决方法记录一下,方便以后查阅,另外很多人学ORB_slam只是跑个DEMO,并没有去实战应用,现在刚好有一些想法和思路会在这几篇博客进行更新。

平台:ubuntu 16.04

ROS:kinetic

opencv 2.4.9.1(Required at leat 2.4.3. Tested with OpenCV 2.4.11 and OpenCV 3.2**)

摄像头:笔记本自带

安装步骤:

一、驱动摄像头显示图像

$ cd ~/camera_ws/src  
$ git clone https://github.com/bosch-ros-pkg/usb_cam  
$ cd ..  
$ catkin_make  
$ source devel/setup.bash  

$ roscore
$ roslaunch usb_cam usb_cam-test.launch  

记录下显示窗口的topic: /usb_cam/image_raw

二 、编译ORB-SLAM2之前的相关依赖项和库安装

1)安装Boost

 $ sudo apt-get install libboost-all-dev  
2)安装g2o

为了编译g2o需要先安装如下三个库

$ sudo apt-get install libblas-dev  
$ sudo apt-get install liblapack-dev  
$ sudo apt-get install libeigen3-dev

$ cd ~/camera_ws/src  
$ git clone https://github.com/RainerKuemmerle/g2o  
$ cd ~/camera_ws/src/g2o  
$ mkdir build   
$ cmake ..  
$ make   
$ sudo make install  

3 ) 安装 Pangolin

$ sudo apt-get install libglew-dev   #安装Glew  
$ sudo apt-get install cmake         #安装CMake  
$ sudo apt-get install libboost-dev libboost-thread-dev libboost-filesystem-dev  #安装Boost  
$ sudo apt-get install libpython2.7-dev  #安装Python2'Python3  
下载、编译、安装Pangolin:  
$ cd ~/orbslam_ws/src  
$ git clone https://github.com/stevenlovegrove/Pangolin.git  
$ cd Pangolin  
$ mkdir build  
$ cd build  
$ cmake -DCPP11_NO_BOOST=1 ..  
$ make  
$ sudo make install  

 三、下载ORB_SLAM2  ROS包                                                              

$ cd ~/camera_ws/src  
$ git clone https://github.com/raulmur/ORB_SLAM2.git ORB_SLAM2  
$ cd ORB_SLAM2
$ chmod +x build.sh
$ ./build.sh
$ chmod +x build_ros.sh
$ ./build_ros.sh   

然后执行两个 .sh 重新编译

四、部分安装问题解决

1、没有生成Mono : ./build_ros.sh 没编译成功

2、./build_ros.sh 报错,DSO missing ...... 

找到 ORB_SLAM2 下的CMakeLists.txt,修改如下
set(LIBS
${OpenCV_LIBS}
${EIGEN3_LIBS}
${Pangolin_LIBRARIES}
${PROJECT_SOURCE_DIR}/../../../Thirdparty/DBoW2/lib/libDBoW2.so
${PROJECT_SOURCE_DIR}/../../../Thirdparty/g2o/lib/libg2o.so
${PROJECT_SOURCE_DIR}/../../../lib/libORB_SLAM2.so
-lboost_system
)

五、运行

1) roscore  

2)  roslaunch usb_cam usb_cam-test.launch  

3) rosrun ORB_SLAM2 Mono  /home/zhuoli/camera_ws//src/ORB_SLAM2/Vocabulary/ORBvoc.txt  /home/zhuoli/camera_ws/src/ORB_SLAM2/Examples/ROS/ORB_SLAM2/Asus.yaml  








猜你喜欢

转载自blog.csdn.net/weixin_40641902/article/details/80351657