ORB SLAM2 编译&运行

1、依赖安装:

1)安装 GLEW:
sudo apt-get install libglew-dev
2)安装 libuvc:
git clone https://github.com/ktossell/libuvc
cd libuvc
mkdir build
cd build
cmake ..
make && sudo make install
3)安装 Pangolin:
这是一个可视化库,作者使用它来进行一些中间结果的展示。也就是在编译这个库的时候出现了一个问题(参见相关问题1))。
git clone https://github.com/stevenlovegrove/Pangolin.git
cd Pangolin
mkdir build
cd build
cmake ..
make -j8
sudo make install

2、编译 ORB-SLAM2:

1)首先clone它的源代码到ORB-SLAM2目录下:
git clone https://github.com/raulmur/ORB_SLAM2.git ORB_SLAM2
2)运行如下命令:
cd ORB_SLAM2
chmod +x build.sh
sh build.sh

3、运行(基本例程):
1)运行单目 SLAM:
我们这里采用 freiburg1_desk 数据,可以从这里下载:
http://vision.in.tum.de/data/datasets/rgbd-dataset/download#freiburg1_desk
或者百度网盘下载:
http://pan.baidu.com/s/1brJJC6
运行指令:

./Examples/Monocular/mono_tum Vocabulary/ORBvoc.txt Examples/Monocular/TUM1.yaml Data/rgbd_dataset_freiburg1_desk

3)运行ORB-SLAM2:
我们这里仍然采用 freiburg1_desk 数据,下载方式参见1)中的地址。但是 RGBD 的数据处理需要一个工作,就是将 RGB 图和深度图合在一起。我们这里采用 TUM 提供的 associate.py 脚本:http://pan.baidu.com/s/1o7pt258

下载后放在 ORB_SLAM2 目录下,运行如下命令:

python associate.py Data/rgbd_dataset_freiburg1_desk/rgb.txt Data/rgbd_dataset_freiburg1_desk/depth.txt > Data/rgbd_dataset_freiburg1_desk/associations.txt

执行完毕后就可以使用如下命令运行测试程序:

./Examples/RGB-D/rgbd_tum Vocabulary/ORBvoc.txt Examples/RGB-D/TUM1.yaml Data/rgbd_dataset_freiburg1_desk Data/rgbd_dataset_freiburg1_desk/associations.txt

报错处理:
在ubuntu上对ORB-SLAM进行运行的过程中,出现以下错误:

terminate called after throwing an instance of ‘std::runtime_error’
what(): Pangolin X11: Unable to retrieve framebuffer options

解决方法:注释掉Pangolin/src/display/device/display_x11.cpp文件中的两行代码:

GLX_SAMPLE_BUFFERS  , glx_sample_buffers,
GLX_SAMPLES         , glx_sample_buffers > 0 ? glx_samples : 0,

然后编译安装Pangolin。

参考自:
http://www.liuxiao.org/2016/03/ros-orb-slam2-安装调试/
https://blog.csdn.net/JAYSITE/article/details/80224750

你可能感兴趣的:(PnP/Slam)