【在ubuntu20.04系统下编译运行ORB-SLAM3】

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

前言

在Ubuntu20.04系统中编译运行ORB-SLAM3

一、Ubuntu20.04安装

前期准备:

  1. 一个大于4G的U盘作为系统盘。
  2. 从官网下载Ubuntu20.04,可参考这篇博客下载路径:
    https://blog.csdn.net/weixin_45912291/article/details/108900602
    如果装虚拟机,可参考这篇博客:
    https://blog.csdn.net/Thanlon/article/details/100072462?utm_medium=distribute.pc_relevant.none-task-blog-2defaultbaidujs_baidulandingword~default-0-100072462-blog-113409389.pc_relevant_aa&spm=1001.2101.3001.4242.1&utm_relevant_index=3

二、ORB-SLAM3配置

1.源码下载

到github上直接下载,放近自己所建的文件夹内,github打不开可以参考这篇文章:
https://blog.csdn.net/yl950305/article/details/115598773
或者在终端输入以下代码进行下载。

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

2.安装git和vi编辑器

我的是新系统需要安装git

sudo apt-get install git

安装vi编辑器

sudo apt-get remove vim-common
sudo apt-get install vim

3.Pangolin安装

git clone https://github.com/stevenlovegrove/Pangolin.git
sudo apt install libgl1-mesa-dev
sudo apt install libglew-dev
sudo apt install cmake
sudo apt install libpython2.7-dev
sudo apt install pkg-config

编译安装Pangolin

cd Pangolin
mkdir build
cd build
cmake ..
cmake --build .

4.Opencv安装

不要安装opencv4以上的版本,我使用的是opencv3.4.3
源码官网:https://opencv.org/releases/
在这里插入图片描述
解压


unzip opencv-3.4.3.zip

编译Opencv

cd opencv-3.4.3
mkdir build
cd build

cmake -D CMAKE_BUILD_TYPE=Release -D CMAKE_INSTALL_PREFIX=/usr/local ..

如果报错提示 ippicv_2017u3_lnx_intel64_general_20170822.tgz的加速库下载失败。可根据这篇博客https://blog.csdn.net/holly_Z_P_F/article/details/118031317#t4 下载离线的ippicv库。
再次输入cmake命令:

cmake -D CMAKE_BUILD_TYPE=Release -D CMAKE_INSTALL_PREFIX=/usr/local ..
make
sudo make install

opencv已经安装完成,以下需要配置环境:

sudo /bin/bash -c 'echo "/usr/local/lib" > /etc/ld.so.conf.d/opencv.conf'
sudo ldconfig=

配置bash

sudo gedit /etc/bash.bashrc

在末尾添加:

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

终端执行使配置生效:

source /etc/bash.bashrc 
apt-get install mlocate
sudo updatedb  

5.Eigen3安装

git clone https://github.com/eigenteam/eigen-git-mirror 

cd eigen-git-mirror
mkdir build
cd build
cmake ..
sudo make install

6.Python

sudo apt install libpython2.7-dev

7.安装boost库

下载官网连接:https://www.boost.org/
在这里插入图片描述选择boost_1_79_0.tar.gz进行下载
解压:

tar -xzvf boost_1_75_0.tar.gz

进入解压后的文件夹,执行:

sudo ./bootstr`在这里插入代码片`ap.sh
sudo ./b2 install

安装libssl-dev

sudo apt-get install libssl-dev

三、ORB-SLAM3编译和安装

  1. 源码编译
    打开源码文件夹ORB——SLAM3,在终端手动编译:
echo "Configuring and building Thirdparty/DBoW2 ..."
	cd Thirdparty/DBoW2
	mkdir build
	cd build
	cmake .. -DCMAKE_BUILD_TYPE=Release
	make 
	cd ../../g2o
	echo "Configuring and building Thirdparty/g2o ..."
	mkdir build
	cd build
	cmake .. -DCMAKE_BUILD_TYPE=Release
	make 
	cd ../../Sophus
	echo "Configuring and building Thirdparty/Sophus ..."
	mkdir build
	cd build
	cmake .. -DCMAKE_BUILD_TYPE=Release
	make 
	cd ../../../
	echo "Uncompress vocabulary ..."
	cd Vocabulary
	tar -xf ORBvoc.txt.tar.gz
	cd ..
	echo "Configuring and building ORB_SLAM3 ..."
	mkdir build
	cd build
	cmake .. -DCMAKE_BUILD_TYPE=Release
	make 

如果出现:c++:fatal error:已杀死 问题可以进行SWAP方法试试,参考这篇博客:
https://blog.csdn.net/lucky__peng/article/details/124272717
若编译过程出现问题,可参考这篇博客:
https://blog.csdn.net/slender_1031/article/details/114106501
2. 数据集测试
数据集下载地址:
https://projects.asl.ethz.ch/datasets/doku.php?id=kmavvisualinertialdatasets#downloads
在这里插入图片描述点击紫色link下载
解压之后,包含一个mav0文件夹在这里插入图片描述在ORB_SLAM3文件夹中创建一个dataset文件夹,
在这里插入图片描述在dataset文件夹下创建一个MH01,将mav0放进MH01中。
打开Examples文件夹,点击脚本euroc_examples.sh,可以看到有一个与MH01相关的指令:

./Monocular/mono_euroc ../Vocabulary/ORBvoc.txt ./Monocular/EuRoC.yaml "$pathDatasetEuroc"/MH01 ./Monocular/EuRoC_TimeStamps/MH01.txt 

将其中的““$pathDatasetEuroc”/MH01 ”改为 ../dataset/MH01
在Examples文件夹下执行如下指令:

./Monocular/mono_euroc ../Vocabulary/ORBvoc.txt ./Monocular/EuRoC.yaml ../dataset/MH01 ./Monocular/EuRoC_TimeStamps/MH01.txt

就可以看到如下窗口:
在这里插入图片描述本人是视觉slam小萌新,如有不足希望大家多多赐教。

  • 4
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 5
    评论
Ubuntu 20.04运行ORB-SLAM2进行稠密建图需要进行以下步骤: 1. 确保系统已安装必要的依赖库。ORB-SLAM2需要使用OpenCV、Pangolin和Eigen库,可以通过以下命令安装: ``` sudo apt-get install libopencv-dev libeigen3-dev libpangolin-dev ``` 2. 在ORB-SLAM2的GitHub页面上,克隆该项目的源代码。使用以下命令进行克隆: ``` git clone https://github.com/raulmur/ORB_SLAM2.git ``` 3. 进入ORB-SLAM2目录,并执行以下命令进行编译: ``` cd ORB_SLAM2 chmod +x build.sh ./build.sh ``` 4. 编译完成后,在ORB-SLAM2目录下会生成一个名为`Examples/Stereo/stereo_kitti`(用于KITTI数据集)的可执行文件。 5. 在稠密建图之前,需要准备一段用于SLAM的视频或者实时相机数据。ORB-SLAM2支持单目、双目和RGB-D输入。可以在`Examples`目录下找到相应的示例。 6. 运行稠密建图的示例程序,例如对于KITTI数据集可以使用以下命令: ``` ./Examples/Stereo/stereo_kitti Vocabulary/ORBvoc.txt Examples/Stereo/KITTI00-02.yaml dataset_path ``` 其中,`Vocabulary/ORBvoc.txt`是ORB特征提取的词典文件,`Examples/Stereo/KITTI00-02.yaml`是相机参数和SLAM配置文件,`dataset_path`为KITTI数据集的路径。 7. 执行完命令后,ORB-SLAM2会开始读取输入数据,并对其进行稠密建图。建图结果可以在控制台输出或保存到本地文件中。 注意:ORB-SLAM2还支持其他数据集和输入类型,具体使用方法可以参考其文档和示例。另外,为了保证正确运行,建议根据自己的需求和数据集进行相应的配置文件调整和参数设置。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值