orb_slam编译运行

1、安装必要的依赖

  • Pangolin,作为可视化和用户界面

出现如下问题:

src/CMakeFiles/pangolin.dir/build.make:566: recipe for target 'src/CMakeFiles/pangolin.dir/gl/gltexturecache.cpp.o' failed
make[2]: *** [src/CMakeFiles/pangolin.dir/gl/gltexturecache.cpp.o] Error 1
CMakeFiles/Makefile2:135: recipe for target 'src/CMakeFiles/pangolin.dir/all' failed
make[1]: *** [src/CMakeFiles/pangolin.dir/all] Error 2
Makefile:149: recipe for target 'all' failed
make: *** [all] Error 2

后更换安装包,参考https://blog.csdn.net/zzu_seu/article/details/84866858

2、安装的涉及到Eigen版本会影响编译

#define EIGEN_WORLD_VERSION 3
#define EIGEN_MAJOR_VERSION 3
#define EIGEN_MINOR_VERSION 4

安装eigen库(注意 请下载3.2.10版本,如果用3.3.x版本可能会造成ORB-SLAM2编译失败,因为eigen3.3.4版本修改了文件目录结构),记住删掉原来的3.3.4

3、编译结果

-- Using flag -std=c++11.
-- Configuring done
-- Generating done
-- Build files have been written to: /home/znkz/slam/ORB_SLAM2-master/build
Scanning dependencies of target ORB_SLAM2
[  8%] [  8%] [ 12%] [ 16%] [ 20%] Building CXX object CMakeFiles/ORB_SLAM2.dir/src/Tracking.cc.o
Building CXX object CMakeFiles/ORB_SLAM2.dir/src/LocalMapping.cc.o
Building CXX object CMakeFiles/ORB_SLAM2.dir/src/System.cc.o
[ 24%] [ 28%] Building CXX object CMakeFiles/ORB_SLAM2.dir/src/LoopClosing.cc.o
Building CXX object CMakeFiles/ORB_SLAM2.dir/src/FrameDrawer.cc.o
Building CXX object CMakeFiles/ORB_SLAM2.dir/src/Converter.cc.o
Building CXX object CMakeFiles/ORB_SLAM2.dir/src/KeyFrame.cc.o
[ 32%] Building CXX object CMakeFiles/ORB_SLAM2.dir/src/MapDrawer.cc.o
[ 36%] [ 40%] [ 44%] Building CXX object CMakeFiles/ORB_SLAM2.dir/src/Optimizer.cc.o
Building CXX object CMakeFiles/ORB_SLAM2.dir/src/Frame.cc.o
Building CXX object CMakeFiles/ORB_SLAM2.dir/src/Initializer.cc.o
[ 48%] Building CXX object CMakeFiles/ORB_SLAM2.dir/src/Viewer.cc.o
Linking CXX shared library ../lib/libORB_SLAM2.so
[ 76%] Built target ORB_SLAM2
Scanning dependencies of target mono_kitti
Scanning dependencies of target rgbd_tum
Scanning dependencies of target mono_euroc
Scanning dependencies of target stereo_kitti
Scanning dependencies of target mono_tum
Scanning dependencies of target stereo_euroc
[ 84%] [ 84%] [ 92%] [ 92%] [ 96%] [100%] Building CXX object CMakeFiles/mono_kitti.dir/Examples/Monocular/mono_kitti.cc.o
Building CXX object CMakeFiles/mono_tum.dir/Examples/Monocular/mono_tum.cc.o
Building CXX object CMakeFiles/stereo_kitti.dir/Examples/Stereo/stereo_kitti.cc.o
Building CXX object CMakeFiles/mono_euroc.dir/Examples/Monocular/mono_euroc.cc.o
Building CXX object CMakeFiles/rgbd_tum.dir/Examples/RGB-D/rgbd_tum.cc.o
Building CXX object CMakeFiles/stereo_euroc.dir/Examples/Stereo/stereo_euroc.cc.o
Linking CXX executable ../Examples/RGB-D/rgbd_tum
Linking CXX executable ../Examples/Monocular/mono_euroc
Linking CXX executable ../Examples/Stereo/stereo_kitti
Linking CXX executable ../Examples/Monocular/mono_tum
Linking CXX executable ../Examples/Stereo/stereo_euroc
Linking CXX executable ../Examples/Monocular/mono_kitti
[100%] [100%] Built target stereo_euroc
Built target stereo_kitti
[100%] [100%] Built target mono_kitti
Built target rgbd_tum
[100%] Built target mono_tum
[100%] Built target mono_euroc

 跑数据时发生错误:

ORB Extractor Parameters: 
- Number of Features: 1000
- Scale Levels: 8
- Scale Factor: 1.2
- Initial Fast Threshold: 20
- Minimum Fast Threshold: 7

-------
Start processing sequence ...
Images in the sequence: 2921

terminate called after throwing an instance of 'std::runtime_error'
  what():  Pangolin X11: Unable to retrieve framebuffer options
已放弃 (核心已转储)

这是pangolin导致的问题,注释掉Pangolin/src/display/device/display_x11.cpp文件中的两行代码即可,后重新编译pangolin

https://blog.csdn.net/qq_26641149/article/details/83017591

运行结果如下:

数据运行

用ROS运行

znkz@znkz:~/slam/catkin_ws/devel$ cd ${ROS_PACKAGE_PATH}
bash: cd: /home/znkz/slam/catkin_ws/src:/home/znkz/slam/svo_ros_2/catkin_ws/src:/home/znkz/slam/svo-ros/rosbuild_ws/src:/home/znkz/catkin_ws/src:/home/znkz/catkin_ws1/src:/opt/ros/indigo/share:/opt/ros/indigo/stacks: 没有那个文件或目录
You should double-check your ROS_PACKAGE_PATH to ensure that packages are
  found in the correct precedence order.
znkz@znkz:~/catkin_ws/src/ORB_SLAM2$ echo ${ROS_PACKAGE_PATH}
/home/znkz/slam/catkin_ws/src:/home/znkz/slam/svo_ros_2/catkin_ws/src:/home/znkz/slam/svo-ros/rosbuild_ws/src:/home/znkz/catkin_ws/src:/home/znkz/catkin_ws1/src:/opt/ros/indigo/share:/opt/ros/indigo/stacks

 

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值