ORB-SLAM2的项目地址为https://github.com/raulmur/ORB_SLAM2
作者给出的运行环境为
具体的大家可以自行查看github主页,安装完以上环境后即可运行,本教程采用的版本为
ubuntu 18.04
opencv 3.4.5
eigen 3.3.7
亲测可用,在安装以上软件之前,还得先安装一部分其他工具
安装vim cmake git gcc g++
sudo apt-get install vim cmake git gcc g++
以下安装过程来自于其项目地址下的readme.md文件说明
sudo apt-get install libglew-dev
sudo apt-get install libboost-dev libboost-thread-dev libboost-filesystem-dev
sudo apt-get install libpython2.7-dev
git clone <https://github.com/stevenlovegrove/Pangolin.git>
cd Pangolin
mkdir build
cd build
cmake -DCPP11_NO_BOOSR=1 ..
make -j
sudo make install
如果国内访问速度过慢,可将以上仓库克隆至gitee,将第一步替换为
git clone
sudo apt-get install build-essential libgtk2.0-dev libavcodec-dev libavformat-dev libjpeg.dev
sudo apt-get install libtiff5-dev libswscale-dev libjasper-dev
对于ubuntu16.04而言,以上操作不会有问题,18.04的同学在安装libtiff4-dev和libjasper-dev时会出现问题,命令改为
sudo apt-get install build-essential libgtk2.0-dev libavcodec-dev libavformat-dev libjpeg.dev
sudo apt-get install libtiff5-dev libswscale-dev
sudo add-apt-repository "deb xenial-security main"
sudo apt update
sudo apt install libjasper1 libjasper-dev
采用源码安装方式,自行到opencv官网上下载3.4.5的源码
下载后解压,解压后进入目录下,建立build文件夹
cd opencd-3.4.5
mkdir build
cd build
cmake ..
make
sudo make install
sudo vim /etc/ld.so.conf.d/opencv.conf
在打开的空白文件中添加以下字段
/usr/local/lib
保存退出后执行命令
sudo ldconfig
sudo vim /etc/bash.bashrc
在打开的文件末尾添加以下字段
PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig
export PKG_CONFIG_PATH
保存退出后执行
source /etc/bash.bashrc
sudo updatedb
cd opencv-3.4.5/samples/cpp/example_cmake
cmake .
make
./opencv_example
成功将打开你的摄像头,并在视频界面显示hello opencv字样
源码安装
自行搜索下载eigen-3.3.7
解压文件,进入目录下,建立build文件
cd eigen-3.3.7
mkdir build
cd build
cmake ..
sudo make install
eige是一个由头文件组成的库,头文件路径为
/usr/local/include/eigen3/
当然直接命令行安装也是可以的,请自行搜索
git clone https://github.com/raulmur/ORB_SLAM2.git ORB_SLAM2
cd ORB_SLAM2
chmod +x build.sh
./build.sh
同理若是访问速度过慢,可以使用gitee
git clone https://gitee.com/ninedayhx/ORB_SLAM2
编译中,若出现错误,则在System.h中,添加头文件
#include
编译完成后运行
./Examples/Monocular/mono_tum Vocabulary/ORBvoc.txt Examples/Monocular/TUM1.yaml Data/rgbd_dataset_freburg1_desk
成功运行将先加载字典,然后显示跟踪的画面以及建图
其中最后一个参数为数据集的参数,具体可选用TUM、KITTI等数据集,orb-slam源码中并没有供数据集,需要大家自行下载,下载后解压,最后一个参数为数据集的绝对路径,可以不像我一样把数据集解压放在源码下,只要是数据集的绝对路径即可,我是在源码下新建了一个Data文件夹,并将数据集放在Data文件夹下,注意最后一个斜杠不可加入.
错误示例如下
./Examples/Monocular/mono_tum Vocabulary/ORBvoc.txt Examples/Monocular/TUM1.yaml Data/rgbd_dataset_freburg1_desk/
数据集下载地址https://vision.in.tum.de/data/datasets/rgbd-dataset/download
其实ORB-slam的作者关于如何运行,在他的github主页下写的非常详细,这篇文章也基本上是他主页的翻译,遇到不同的问题,可自行查看他的主页或者是问问google
下一篇将说明如何将orb-slam2在自己的摄像头上运行,而不是数据集上。如果觉得有价值,请关注我,本教程持续更新