Ubuntu18 +ORB_SLAM2的安装配置以及SLAM单目运行实例

基于视觉的机器人SLAM入门(Ubuntu18 ORB_SLAM2的安装配置以及SLAM单目运行实例)

目录

    • 安装工具
    • 安装及配置Pangolin
      • 安装依赖项
      • 下载Pangolin
      • 编译安装
    • 安装及配置Opencv
      • 安装依赖项
      • 下载opencv3.4
      • 编译安装
      • 配置编译环境
    • 安装Eigen
    • 安装及配置ORB_SLAM2
      • 下载ORB_SLAM2
      • 编译ORB-SLAM2
      • 在ros下面运行
    • 下载数据集
    • 运行ORB_SLAM2单目实例
    • 参考文献

安装工具

先安装需要的cmake、gcc、g++、git工具

 sudo apt-get install cmake

 sudo apt-get install git

 sudo apt-get install gcc g++  

Ubuntu18 +ORB_SLAM2的安装配置以及SLAM单目运行实例_第1张图片
Ubuntu18 +ORB_SLAM2的安装配置以及SLAM单目运行实例_第2张图片

安装及配置Pangolin

安装依赖项

 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

下载Pangolin

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

编译安装

mkdir build
cd build
cmake ..
sudo make //也可以采用-j的方式,但是要电脑性能好点的采用

Ubuntu18 +ORB_SLAM2的安装配置以及SLAM单目运行实例_第3张图片在cmake的时候可能会出现下面的问题
Ubuntu18 +ORB_SLAM2的安装配置以及SLAM单目运行实例_第4张图片
解决办法是:

sudo apt-get install libxkbcommon-x11-dev

Ubuntu18 +ORB_SLAM2的安装配置以及SLAM单目运行实例_第5张图片完成之后就重新编译一下 cmake ..
然后再执行sudo make
Ubuntu18 +ORB_SLAM2的安装配置以及SLAM单目运行实例_第6张图片
Ubuntu18 +ORB_SLAM2的安装配置以及SLAM单目运行实例_第7张图片
安装完成之后,就是编译安装

sudo make install

Ubuntu18 +ORB_SLAM2的安装配置以及SLAM单目运行实例_第8张图片
pangolin就安装配置好了

安装及配置Opencv

安装依赖项

sudo apt-get install build-essential
sudo apt-get install cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev
sudo apt-get install python-dev python-numpy libtbb2 libtbb-dev libjpeg-dev libpng-dev libtiff-dev libjasper-dev libdc1394-22-dev

Ubuntu18 +ORB_SLAM2的安装配置以及SLAM单目运行实例_第9张图片Ubuntu18 +ORB_SLAM2的安装配置以及SLAM单目运行实例_第10张图片

下载opencv3.4

wget -O opencv-3.4.1.zip https://github.com/Itseez/opencv/archive/3.4.1.zip

然后在主目录解压,然后进入opencv里面
Ubuntu18 +ORB_SLAM2的安装配置以及SLAM单目运行实例_第11张图片

编译安装

cd ~/opencv-3.4.1
mkdir build
cd build
cmake -D CMAKE_BUILD_TYPE=Release –D CMAKE_INSTALL_PREFIX=/usr/local ..

Ubuntu18 +ORB_SLAM2的安装配置以及SLAM单目运行实例_第12张图片
Ubuntu18 +ORB_SLAM2的安装配置以及SLAM单目运行实例_第13张图片

make -j8

Ubuntu18 +ORB_SLAM2的安装配置以及SLAM单目运行实例_第14张图片
Ubuntu18 +ORB_SLAM2的安装配置以及SLAM单目运行实例_第15张图片
安装完成之后,就是编译安装

sudo make install

Ubuntu18 +ORB_SLAM2的安装配置以及SLAM单目运行实例_第16张图片

配置编译环境

1.将OpenCV的库添加到路径

sudo gedit /etc/ld.so.conf.d/opencv.conf 

在这里插入图片描述
在这个文件里面添加

/usr/local/lib  

Ubuntu18 +ORB_SLAM2的安装配置以及SLAM单目运行实例_第17张图片
保存回到命令行界面,执行如下命令使得刚才的配置路径生效

sudo ldconfig 

在这里插入图片描述
2.配置bash

sudo gedit /etc/bash.bashrc

在这里插入图片描述在打开的文件的末尾添加

PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig  
export PKG_CONFIG_PATH  

在这里插入图片描述
保存,使得配置生效

source /etc/bash.bashrc

在这里插入图片描述

安装Eigen

sudo apt-get install libeigen3-dev

Ubuntu18 +ORB_SLAM2的安装配置以及SLAM单目运行实例_第18张图片

安装及配置ORB_SLAM2

下载ORB_SLAM2

git clone https://github.com/raulmur/ORB_SLAM2.git ORB_SLAM2

Ubuntu18 +ORB_SLAM2的安装配置以及SLAM单目运行实例_第19张图片

编译ORB-SLAM2

cd ORB_SLAM2
chmod +x build.sh
./build.sh

Ubuntu18 +ORB_SLAM2的安装配置以及SLAM单目运行实例_第20张图片
出现的问题:usleep出现问题
Ubuntu18 +ORB_SLAM2的安装配置以及SLAM单目运行实例_第21张图片
解决办法:
在ORB_SLAM2/include/system.h中添加

#include<unistd.h>

Ubuntu18 +ORB_SLAM2的安装配置以及SLAM单目运行实例_第22张图片然后在重新./build.sh

在ros下面运行

可以先把这个包复制进catkin_ws/src文件下面
Ubuntu18 +ORB_SLAM2的安装配置以及SLAM单目运行实例_第23张图片将包含Examples/ROS/ORB_SLAM2的路径添加到ROS_PACKAGE_PATH环境变量中

 sudo  gedit ~/.bashrc

在这里插入图片描述打开.bashrc文件,在最后添加
在这里插入图片描述

保存使生效

source ./catkin_ws/devel/setup.sh
source ~/.bashrc

在这里插入图片描述

cd catkin_ws/src/ORB_SLAM2
chmod +x build_ros.sh
./build_ros.sh

Ubuntu18 +ORB_SLAM2的安装配置以及SLAM单目运行实例_第24张图片
这里可能出现的错误:

Ubuntu18 +ORB_SLAM2的安装配置以及SLAM单目运行实例_第25张图片解决办法:
修改Examples/ROS/ORB_SLAM2/文件夹下的CMakeLists.txt文件
如下位置添加:-lboost_system
Ubuntu18 +ORB_SLAM2的安装配置以及SLAM单目运行实例_第26张图片

在重新执行./build_ros.sh,就成功了
Ubuntu18 +ORB_SLAM2的安装配置以及SLAM单目运行实例_第27张图片

下载数据集

有TUM、KITTI、EuRoC三种数据集,本实验使用TUM数据集
通过如下链接进行下载:http://vision.in.tum.de/data/datasets/rgbd-dataset/download
选择如下红框位置的下载的(过程可能会有点慢)
Ubuntu18 +ORB_SLAM2的安装配置以及SLAM单目运行实例_第28张图片
下载解压完成之后,把它放在主目录的目录下面

运行ORB_SLAM2单目实例

./Examples/Monocular/mono_tum Vocabulary/ORBvoc.txtExamples/Monocular/TUMX.yaml PATH_TO_SEQUENCE_FOLDER

PATH_TO_SEQUENCE_FOLDER这个是路径,要改成自己rgbd_dataset_freiburg1_xyz的路径,我的在主目录下面

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

在这里插入图片描述
Ubuntu18 +ORB_SLAM2的安装配置以及SLAM单目运行实例_第29张图片
运行完成之后,自己会结束
Ubuntu18 +ORB_SLAM2的安装配置以及SLAM单目运行实例_第30张图片

心得体会:
1.一定要先配置好前面的包,才能启动ORB_SLAM2成功,我最开始就是前面安装的Pangolin有一些小问题没有管他导致后面的ORB_SLAM2启动不成功
2.在安装的过程中,可能会遇到下载很慢,出现问题,但是都不要放弃要一步一步总会解决的

参考文献

1.Ubuntu16.04下 ORB_SLAM2的安装与配置
2.ORB_SLAM2配置过程
3.ORB-SLAM2的安装与运行
4.Ubuntu18.04下安装配置ORB_SLAM2以及过程中遇到的问题解决方法

你可能感兴趣的:(Ubuntu18 +ORB_SLAM2的安装配置以及SLAM单目运行实例)