(最新)Ubuntu22.04从零开始简易配置并编译ORB-SLAM3

目录

1、系统环境

2、准备工作

3、Eigen安装

4、Pangolin安装

5、安装boost库

6、安装libssl-dev

7、安装OpenCV

8、安装并编译ORB-SLAM3

9、数据集测试

10、安装evo


前言

写这个博客主要是因为学习过程中总是需要重新配置环境和编译ORB-SLAM3,所以记录一下过程,不然老是到处找各种问题的解决办法。

1、系统环境

采用虚拟机VMware 17运行

Ubuntu版本是22.04

2、准备工作

sudo apt-get install cmake
sudo apt-get install gcc
sudo apt-get install g++
sudo apt-get install vim
sudo apt-get install git

3、Eigen安装

sudo apt install libeigen3-dev

4、Pangolin安装

克隆代码:

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

安装依赖:

sudo apt install libgl1-mesa-dev
sudo apt install libglew-dev

编译:

cd Pangolin
mkdir build
cd build
cmake ..
make

5、安装boost库

sudo apt-get install libboost-all-dev

6、安装libssl-dev

sudo apt-get install libssl-dev

7、安装OpenCV

官网下载opencv4.8.0(选择Sources):https://opencv.org/releases/

并解压

安装依赖:

sudo apt-get install build-essential libgtk2.0-dev libavcodec-dev libavformat-dev libjpeg.dev libtiff4.dev libswscale-dev

上面应该没什么问题,但在安装下面这个依赖一般会有问题:

sudo apt-get install libjasper-dev

解决方法:

#更换软件源
sudo add-apt-repository "deb http://security.ubuntu.com/ubuntu xenial-security main"
sudo apt-get update

#该仓库没有数字签名,增加数字签名
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 3B4FE6ACC0B21F32
sudo apt update
sudo apt install libjasper1 libjasper-dev

这样就安装上了,接下来编译OpenCV,过程较慢,建议make -j

cd opencv-4.8.0
mkdir build
cd build
cmake -D CMAKE_BUILD_TYPE=Release -D CMAKE_INSTALL_PREFIX=/usr/local ..
make
sudo make install

8、安装并编译ORB-SLAM3

克隆源码(网不好直接下载压缩包也行):

git clone https://github.com/UZ-SLAMLab/ORB_SLAM3.git

编译前需要修改CMakeLists.txt,否则会报错

首先要加入c++14编译支持,在CMakeLists.txt加入这行

add_compile_options(-std=c++14)

此外,根据OpenCV版本不同,把

find_package(OpenCV 4.4)

改为

find_package(OpenCV 4 REQUIRED)

保存,然后执行编译

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

注意,如果虚拟机配置不行,记得在build.sh文件里根据实际情况修改make -j,否则编译的时候会卡掉。

9、数据集测试

采用EuRoC数据集进行简单测试(数据集路径需自己设置):

./Examples/Stereo-Inertial/stereo_inertial_euroc ./Vocabulary/ORBvoc.txt ./Examples/Stereo-Inertial/EuRoC.yaml ../Dataset/EuRoC/MH_01_easy ./Examples/Stereo-Inertial/EuRoC_TimeStamps/MH01.txt dataset-MH01_stereo_inertial

可正常运行,说明ORB-SLAM3安装成功!

10、安装evo

evo是SLAM常用的评估工具,首先从源码安装,安装时采用清华源加速下载,否则总会卡住

git clone https://github.com/MichaelGrupp/evo.git
cd evo
pip install --editable . --upgrade --no-binary evo -i https://pypi.tuna.tsinghua.edu.cn/simple

然后安装一些依赖,这里需要更换matplotlib的版本,因为最新版本和evo不兼容

sudo apt-get install python3-tk
sudo apt-get install python3-pil python3-pil.imagetk
pip uninstall matplotlib
pip install matplotlib==3.5.0 -i https://pypi.tuna.tsinghua.edu.cn/simple

这样就安装成功了,然后进行用evo自带的数据进行测试:

evo_ape -h
cd evo/test/data
evo_traj kitti KITTI_00_ORB.txt KITTI_00_SPTAM.txt --ref=KITTI_00_gt.txt -p --plot_mode=xz

运行正常,说明安装成功!

  • 8
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 9
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值