ORB_SLAM3 -- 配置安装
安装环境 Ubuntu20.04
ORB_SLAM3依赖项安装
opencv3
ORB_SLAM3可用opencv3或opencv4编译,作者这里安装测试了opencv3
Step1: 安装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
- 如果提示找不到libjasper-dev软件包
sudo apt-add-repository "deb http://security.ubuntu.com/ubuntu xenial-security main"
sudo apt update
sudo apt install libjasper1 libjasper-dev
Step2: 下载opencv和opencv_contrib
cd ~/<my_working_directory> # <my_working_directory>替换为你的工作目录
git clone https://github.com/opencv/opencv.git
git clone https://github.com/opencv/opencv_contrib.git
cd opencv
git checkout 3.4.16
cd ..
cd opencv_contrib
git checkout 3.4.16
cd ..
Step3: 编译和安装opencv以及opencv_contrib模块
Step3.1 创建build目录
cd opencv
mkdir build
cd build
Step3.2 执行cmake命令
cmake -D CMAKE_BUILD_TYPE=RELEASE \
-D CMAKE_INSTALL_PREFIX=/usr/local \
-D INSTALL_C_EXAMPLES=ON \
-D INSTALL_PYTHON_EXAMPLES=ON \
-D WITH_TBB=ON \
-D WITH_V4L=ON \
-D WITH_QT=ON \
-D WITH_OPENGL=ON \
-D OPENCV_EXTRA_MODULES_PATH=../../opencv_contrib/modules \
-D BUILD_EXAMPLES=ON ..
Step3.3 编译并安装
# 执行如下命令后获取cpu核心数以加快编译
nproc
# 将nproc得到的数字放在make -j后面,作者的电脑有16的CPU核心
make -j16
sudo make install
sudo sh -c 'echo "/usr/local/lib" >> /etc/ld.so.conf.d/opencv.conf'
sudo ldconfig
- opencv安装参考
Pangolin
- pangolin版本更新到了0.6。此版本编译ORB_SLAM2,ORB_SLAM3,DSO,LDSO等SLAM框架时均会出现问题。
- 解决方法:采用较早版本的pangolin
非常不建议使用最新版本的pangolin进行编译安装,会遇到error: ‘slots_reference’ was not declared in this scope或者cannot findind Eigen3.cmake
issue: https://github.com/raulmur/ORB_SLAM2/issues/1015
Step1: 安装Pangolin的依赖包
sudo port install glew
sudo apt-get install cmake
sudo apt-get install libpython2.7-dev
sudo apt-get install ffmpeg libavcodec-dev libavutil-dev libavformat-dev libswscale-dev
sudo apt-get install libdc1394-22-dev libraw1394-dev
sudo apt-get install libjpeg-dev libpng12-dev libtiff5-dev libopenexr-dev
- libpng12-dev安装可能会报错,但不影响后续步骤。
# Ubuntu16.04之后不支持libpng12-dev 修改为
sudo apt install libpng-dev
- 这里提供一个较早版本的Pangolin
链接:https://pan.baidu.com/s/17A51BZIq_iJlCvLHUTCH7g
提取码:oitb
- 尽管有人提到了Pangolin v0.5版本可以解决问题,但作者的机器上并没有成功
这里提供了百度网盘的版本
链接:https://pan.baidu.com/s/17A51BZIq_iJlCvLHUTCH7g
提取码:oitb
--来自百度网盘超级会员V5的分享
Step2: 编译并安装Pangolin
cd Pangolin
# 百度网盘的版本有build文件,要先删除再创建
rm -rf build
mkdir build
cd build
cmake ..
# 16替换为你自己电脑的CPU核心数
make -j16
sudo make install
- pangolin安装参考
ORB_SLAM3安装
Step1: 安装ORB_SLAM3的依赖包
sudo apt install libpython2.7-dev
Step2: 下载、编译并安装ORB_SLAM3
git clone https://github.com/UZ-SLAMLab/ORB_SLAM3.git ORB_SLAM3
cd ORB_SLAM3
chmod +x build.sh
# 可以修改 CMakeList.txt 中的`make -j`为`make -j16`来加快编译速度。16替换为你的电脑的CPU核心数
./build.sh
编译ORB_SLAM3常见问题
- ORBSLAM3 fatal error: openssl/md5.h: No such file or directory
- 解决方法:执行如下命令
sudo apt install libssl-dev
- make[2]: *** [CMakeFiles/ORB_SLAM3.dir/build.make:89: CMakeFiles/ORB_SLAM3.dir/src/LocalMapping.cc.o] Error 1
- 解决方法:在orb_SLAM3/include/CameraModels/KannalaBrandt8.h中添加
namespace cv
{
template<typename _Tp, int m, int n> static inline Matx<_Tp, m, n> operator/(const Matx<_Tp, m, n>& a, float alpha)
{
return Matx<_Tp, m, n>(a, 1.f/alpha, Matx_ScaleOp());
}
}
- ORB_SLAM3安装参考
ORB_SLAM3 -- 配置安装的更多相关文章
- Winserver2012下mysql 5.7解压版(zip)配置安装
一.安装 下载mysqlzip版本mysql不需要运行可执行文件,解压即可,下载zip版本mysqlmsi版本mysql双击文件即可安装,相对简单,本文不介绍此版本安装 配置环境变量打开环境变量配置页 ...
- 分布式文件系统 - FastDFS 在 CentOS 下配置安装部署
少啰嗦,直接装 看过上一篇分布式文件系统 - FastDFS 简单了解一下的朋友应该知道,本次安装是使用目前余庆老师开源的最新 V5.05 版本,是余庆老师放在 Github 上的,和目前你能在网络上 ...
- 配置安装CocoPods后进行 项目基本配置
配置安装CocoPods后进行 项目基本配置总结 1)终端在文件根目录下输入 $ touch Podfile 创建一个空白的Podfile文件 2)然后在使用编辑器打开Podfile文件进行需要配置的 ...
- 【转】Ubuntu 14.04配置安装java环境和android开发环境(包括真机调试环境)
原文网址:http://my.oschina.net/HalZf/blog/347351 总要记录下过程,不然老是会忘记掉-真老了.-_-! 一.配置安装ubuntu 64位java环境: 1.下载l ...
- 基于XMPP实现的Openfire的配置安装+Android客户端的实现
最近在整理一些这方面的资料,闲话少说,咱还是直奔主题吧 :) 一.基于xmpp实现的openfire的配置安装 1. 下载最新的openfire安装文件 官方下载站点: http://www.igni ...
- 基于XMPP实现的Openfire的配置安装+Android客户端的实现[转]
最近在整理一些这方面的资料,闲话少说,咱还是直奔主题吧 :) http://blog.csdn.net/sk719887916/article/details/40541163 https://git ...
- windows2008 配置安装FTP服务器
windows2008 配置安装FTP服务器 今天在服务器上开了IIS7,但是要求把一个附件文件夹拷贝到根目录下面,这个附件文件夹有2G多大小,直接用远程桌面映射,一直都拷贝不成功,而且本地缓存越来越 ...
- oozie配置安装与原理
概述 当前开源的hadoop任务工作流管理主要有oozie和Azkaban,本文先介绍oozie的配置安装与基本运行原理. 配置安装 (参考https://segmentfault.com/a/11 ...
- eclipse下配置安装ssm图文教程(web版)
eclipse下配置安装ssm图文教程(web版) 一.安装所需jar包 1.1 mybatis安装包 可以进入GitHub的https://github.com/mybatis/mybatis-3 ...
随机推荐
- k8s 存活探针(健康检查)
重启策略 (RestartPolicy ) Always:当容器终止退出后,总是重启容器,默认策略. OnFailure:当容器异常退出(退出状态码非0)时,才重启容器. Never:当容器终止退出, ...
- Linux常用命令 - nl命令详解
21篇测试必备的Linux常用命令,每天敲一篇,每次敲三遍,每月一循环,全都可记住!! https://www.cnblogs.com/poloyy/category/1672457.html 显示行 ...
- SQL语句分组获取记录的第一条数据的方法
使用Northwind 数据库 首先查询Employees表 查询结果: city列里面只有5个城市 使用ROW_NUMBER() OVER(PARTITION BY COL1 ORDER BY CO ...
- form表单提交失败
在使用一个登录/注册模板的时候,发现form表单不了,但是删除模板引用的js后就正常了,查看js文件的源码,有一个 const firstForm = document.getElementById( ...
- C#导出数据—使用Word模板
前言 本文主要介绍C#使用标签替换的方法导出数据,导出的数据模板使用Word文档. 模板建立 首先创建一个Word文档,然后建立一个基础模板.然后将上方菜单切换到插入菜单. 然后在想填充数据的地方添加 ...
- css3 显示一行内容,多余的以省略号显示
overflow: hidden; white-space: nowrap; text-overflow: ellipsis; 代码如上
- Sentry 监控 - Security Policy 安全策略报告
系列 1 分钟快速使用 Docker 上手最新版 Sentry-CLI - 创建版本 快速使用 Docker 上手 Sentry-CLI - 30 秒上手 Source Maps Sentry For ...
- Jmeter系列(17)- 常用断言之JSON断言
模块分析 Assert JSON Path exists:需要断言的 JSON 表达式 Additionally assert value:如果要根据值去断言,请勾选 Match as regular ...
- Shell系列(38)- 数组操作→取值、遍历、替换、删除
引言 在Linux平台上工作,我们经常需要使用shell来编写一些有用.有意义的脚本程序.有时,会经常使用shell数组.那么,shell中的数组是怎么表现的呢,又是怎么定义的呢?接下来逐一的进行讲解 ...
- 关于python如何构造测试数据
参考资料:https://www.cnblogs.com/miaoxiaochao/p/13234589.html 一.Faker模块是什么? 一个Python第三方模块,主要用来创建伪数据 无需再手 ...