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 gccsudo apt-get install g++sudo apt-get install build-essentialsudo 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即可。

测试结果如下图。

参考链接

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

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

Ubuntu18.04 ORB-SLAM3配置相关推荐

  1. Ubuntu18.04的网络配置(静态IP和动态IP) - OpsDrip - 博客园

    Ubuntu18.04的网络配置(静态IP和动态IP) - OpsDrip - 博客园

  2. Win10+Ubuntu18.04双系统安装配置教程(二)——磁盘分区

    写在前面:本系列笔者亲测可行!文章配置如下\color{red}{写在前面:本系列笔者亲测可行!文章配置如下}写在前面:本系列笔者亲测可行!文章配置如下: win10,Ubuntu18.04,nvid ...

  3. Ubuntu18.04.5-server网络配置介绍

    Ubuntu18.04.5网络配置介绍 1. 确定系统版本 cat /proc/version 确定OS版本为Ubuntu18.04,内核版本为4.15.0-112 Linux version 4.1 ...

  4. Ubuntu18.04系统安装并配置mosquitto

    Ubuntu18.04系统安装并配置mosquitto 一.什么是MQTT 二.安装mosquitto 1.使用apt安装mosquitto 2.查看服务状态 3.配置 4.使用客户端工具测试 三.w ...

  5. Ubuntu18.04双网卡配置内外网

    Ubuntu18.04双网卡配置内外网 前言 目的 配置文件示例 前言 本文章旨在作为笔记,温故而知新,也希望能帮到各位有需要的道友,若有任何建议或探讨可加 QQ群进行交流:887939177 目的 ...

  6. ubuntu18.04 输入法的配置

    ubuntu18.04 输入法的配置 常见的输入法有ibus(ubuntu下默认的输入法), scim, fcitx(linux版本的sogou和google的输入法都基于此) 个人比较喜欢搜狗和go ...

  7. ubuntu18.04 虚拟机网络配置

    ubuntu18.04 虚拟机网络配置[未知的域名或服务] 1.虚拟机的网络适配器采用NAT模式 2.查看NAT的网络配置 3.ubuntu18.04网络配置 3.1 使用 ifconfig -a 查 ...

  8. 【Ubuntu18.04中文输入法配置】

    Ubuntu18.04中文输入法配置 1 ibus智能拼音输入法 2 google中文输入法 有两种较为合适的输入法,分别是ibus智能拼音输入法和google中文输入法,下方链接中有具体的操作步骤. ...

  9. ubuntu18.04 vnc xfce4配置

    ubuntu18.04 vnc xfce4配置 安装过程 1.sudo apt-get install xfce4 2.sudo apt-get install vnc4server 3.配置xsta ...

  10. Win10+Ubuntu18.04双系统安装配置教程(七)——安装搜狗输入法

    Win10+Ubuntu18.04双系统安装配置教程(七)--安装搜狗输入法 写 在 前 面 : 本 系 列 笔 者 亲 测 可 行 ! 文 章 配 置 如 下 \color{red}{写在前面:本系 ...

最新文章

  1. 图灵2010.02书讯
  2. 【转载】python学习之 字符串前'r'的用法
  3. 优化算法optimization:Adam
  4. Intellij IDEA中使用MyBatis-generator 自动生成MyBatis代码
  5. python使用什么注释语句和运算-Python代码注释的用法和意义
  6. mysql一次运行多个SQL文件
  7. 前端知识 | React Native手势响应浅析
  8. C++奥赛一本通贪心题解
  9. POJ2104 K-th Number (平方分割 + 二分)
  10. linux下c语言版线程池
  11. C++ 自旋锁简单实现
  12. linux下离线安装gcc详细教程
  13. 小记: 程序设计注意保持逻辑清晰
  14. Shape—自定义图片(详细讲解)
  15. 格拉姆角场GAF将时序数据转换为图像并应用于故障诊断
  16. Ubuntu中禁用触摸板
  17. Fildder拦截请求并修改请求参数
  18. 手机与计算机连接方式,WM(Windowsm mobile)智能手机与电脑联接的几种方法
  19. RedisJson和RedisSearch探究(二)
  20. 汤不热真香,教练我要学这个动作

热门文章

  1. 【硬件】墨水屏显示改造方案
  2. 展锐Android10,R,lmk怎么添加白名单,am
  3. 学习了两个多月就进了我们公司,顺利过了试用期,我心塞了...
  4. 复刻一台Zynthian便携式合成器音源
  5. NC移动审批2.0版本介绍
  6. Linux入门学习-常用命令
  7. 《学习敏捷 构建高效团队》 读书笔记 —— (一)学习敏捷
  8. 中关村论坛9月18日百度平行论坛看点:AI开源创新助推产业智能化
  9. OSG学习笔记-基本几何体的绘制(3-2)
  10. Simscape Multibody —— Revolute Joint的使用