Ubuntu18.04 ORB-SLAM3配置

        ORB-SLAM3配置颇为麻烦,本文是对官方教程的扩展补充。

目录

1 C++11 or C++0x Compiler

2 Eigen3

3 Pangolin

4 OpenCV 

5 boost

6 ORB-SLAM3

测试 

参考链接


1 C++11 or C++0x Compiler

        安装c++编译环境。

	sudo apt-get install gcc
 	sudo apt-get install g++
 	sudo apt-get install build-essential
 	sudo apt-get install cmake

2 Eigen3

        此处顺序与官方教程不同,因为Pangolin也需要Eigen,故先安装Eigen。到Eigen官网,下载3.1.0以上版本的压缩包,解压进入该目录后,输入以下指令安装即可。

mkdir build && cd build
cmake ..
make
sudo make install

3 Pangolin

        Pangolin官方教程对本人来说并不直观,根据以下指令即可安装成功。

        首先安装依赖。

sudo apt-get install libglew-dev
sudo apt-get install libpython2.7-dev
sudo apt-get install ffmpeg libavcodec-dev libavutil-dev libavformat-dev libswscale-dev libavdevice-dev
sudo apt-get install libdc1394-22-dev libraw1394-dev
sudo apt-get install libjpeg-dev libpng-dev libtiff5-dev libopenexr-dev

        先下载代码,推荐网络不好的同学下载zip再解压,而不是使用git clone指令。

        安装指令如下。

mkdir build && cd build
cmake ..
cmake --build .
sudo make install

4 OpenCV 

        OpenCV的安装较复杂且耗时,可参考另一篇博客。需要注意的是,尽管官方在文档中声称只需要版本在3.0以上即可,但实测需要版本4.4.0以上。原因应该是官方更新了代码但疏于维护文档,后面测试的时候还会遇到类似的情况。

5 boost

        同样是在boost官网下载压缩包,解压后输入以下指令安装。

./bootstrap.sh
sudo ./b2 install

6 ORB-SLAM3

        安装过程可能会出现fatal error: openssl/opensslv.h: No such file or directory的错误,需要安装依赖。

sudo apt-get install libssl-dev 

        对电脑性能足够自信的同学可以在下载好的ORB-SLAM3代码目录下直接输入如下指令完成安装。

chmod +x build.sh
./build.sh

        该安装过程很容易出现内存不足的问题,会中途报错internal computer error。如果读者的电脑本身性能很好,但是使用虚拟机安装出现了该问题,那么将虚拟机的内存分配到16G及以上即可解决此问题。

        对于电脑性能更一般的情况,则需要修改build.sh文件,将build.sh中的所有make -j改为make -jx,其中x应取处理器个数-1,当然也可以直接改为make -j1基本上就不会出问题。

        ORB-SLAM3安装时间较长,需耐心等候。

测试 

        ORB-SLAM3安装至此结束,下面进行测试。

        首先在kmavvisualinertialdatasets – ASL Datasets下载ASL格式的数据集,解压到自己喜欢的位置。该网站的可能出现下载链接跳转失败的情况,复制链接地址在新窗口打开即可。复制官方文档提到一个测试用的euroc_examples.sh脚本,但是在最近的更新中不知道为什么删除了。euroc_examples.sh脚本中提供了各种大同小异测试指令,读者可以很容易根据本文给出的指令做出相应修改。以下给出的是单目的测试指令。

./Examples/Monocular/mono_euroc ./Vocabulary/ORBvoc.txt ./Examples/Monocular/EuRoC.yaml /你喜欢的位置/MH_01_easy ./Examples/Monocular/EuRoC_TimeStamps/MH01.txt dataset-MH01_mono

        单目的测试脚本有个坑,能够成功运行,但不显示图像。其原因是/Examples/Monocular/mono_euroc.cc 中不知道为什么禁用了UI,将如下代码中false改为true即可。

Ubuntu18.04 ORB-SLAM3配置_第1张图片

         测试结果如下图。

Ubuntu18.04 ORB-SLAM3配置_第2张图片

参考链接

未出现在正文的参考链接:

1.https://blog.csdn.net/hhz_999/article/details/120473659

2.https://rupingcen.blog.csdn.net/article/details/115690725

3.https://blog.csdn.net/shakeme/article/details/80911441

你可能感兴趣的:(slam)