首页 > 系统相关 >Ubuntu20.04 部署 ORB SLAM2 并运行

Ubuntu20.04 部署 ORB SLAM2 并运行

时间:2024-07-15 23:52:52浏览次数:9  
标签:Ubuntu20.04 git sudo dev cd SLAM2 build ORB

安装基础库

sudo apt update
sudo apt install cmake gcc g++ git
sudo apt install pkg-config

创建源码目录

在 home 目录下新建 repos 文件夹用于存放源码。

cd ~
mkdir repos

安装 eigen3 3.2.10

安装 eigen 3.2.10 版本。

cd ~/repos
git clone https://gitlab.com/libeigen/eigen.git
cd eigen
git checkout 3.2.1
mkdir build && cd build
cmake .. -DCMAKE_INSTALL_PREFIX=/usr/local
sudo cmake --build . --target install

卸载方法:

eigen3 是仅头部库,没有 uninstall 脚本。

sudo rm -rf /usr/local/share/pkgconfig/eigen3.pc
sudo rm -rf /usr/local/include/eigen3/

安装 Pangolin 0.6

安装依赖:

# Glew
sudo apt install libglew-dev
# Wayland
sudo apt install libegl1-mesa-dev libwayland-dev libxkbcommon-dev wayland-protocols
# FFMPEG (For video decoding and image rescaling)
sudo apt install ffmpeg libavcodec-dev libavutil-dev libavformat-dev libswscale-dev libavdevice-dev
# DC1394 (For firewire input)
sudo apt install libdc1394-22-dev libraw1394-dev
# libjpeg, libpng, libtiff, libopenexr (For reading still-image sequences)
# libpng12-dev 安装失败
sudo apt install libjpeg-dev libpng12-dev libtiff5-dev libopenexr-dev

安装 Pangolin:

cd ~/repos
git clone https://github.com/stevenlovegrove/Pangolin.git
cd Pangolin
git checkout v0.6
mkdir build && cd build
cmake .. -DCMAKE_INSTALL_PREFIX=/usr/local
sudo cmake --build . --target install

安装完成后进行测试:

cd ~/repos/Pangolin/examples/HelloPangolin/
mkdir build && cd build
cmake ..
make
./HelloPangolin

运行成功会显示一个立方体。

安装 opencv3

添加额外源

sudo apt-add-repository universe
sudo apt-get update

安装依赖

sudo apt-get install libglew-dev libtiff5-dev zlib1g-dev libjpeg-dev libpng-dev libavcodec-dev libavformat-dev libavutil-dev libpostproc-dev libswscale-dev libeigen3-dev libtbb-dev libgtk2.0-dev pkg-config

安装 opencv

cd ~/repos
git clone https://github.com/opencv/opencv.git
cd opencv
git checkout 3.4.16
mkdir build && cd build
cmake .. -DCMAKE_INSTALL_PREFIX=/usr/local
sudo cmake --build . --target install

添加环境变量

1、添加库路径

/etc/ld.so.conf.d/ 目录下新建文件 opencv3.conf。并输入以下内容:

/usr/local/lib

2、添加环境变量

/etc/profile.d 新建文件 opencv3.sh。并输入以下内容:

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

3、更新环境变量:

source /etc/profile.d/opencv3.sh

4、验证安装是否成功

重启并输入命令:

pkg-config --modversion opencv
# 输出
# 3.4.16

运行测试程序:

cd ~/repos/opencv/samples/cpp/example_cmake/
mkdir build && cd build
cmake ..
make
./opencv_example

安装 ORB_SLAM2

原库地址:https://github.com/raulmur/ORB_SLAM2.git。原库直接编译会有一些问题,因此对其做了一些修复,代码地址:https://github.com/FLYPoPo7/ORB_SLAM2.git

cd ~/repos
git clone https://github.com/FLYPoPo7/ORB_SLAM2.git
cd ORB_SLAM2
chmod +x build.sh
./build.sh

编译过程可能会有警告。

测试

下载数据集:Computer Vision Group - Dataset Download (tum.de)

在 ORB_SLAM2 目录下创建 data 目录,下载并解压数据集。

cd ~/repos/ORB_SLAM2/
mkdir data && cd data
wget https://cvg.cit.tum.de/rgbd/dataset/freiburg1/rgbd_dataset_freiburg1_xyz.tgz
tar -xvzf rgbd_dataset_freiburg1_xyz.tgz
# 运行数据集
cd ~/repos/ORB_SLAM2/
./Examples/Monocular/mono_tum Vocabulary/ORBvoc.txt Examples/Monocular/TUM1.yaml data/rgbd_dataset_freiburg1_xyz

运行成功如下截图如下:

参考

主要参考

Ubuntu20.04配置ORBSLAM2并运行(保姆级教程)_在ubuntu20.04上安装并运行orb-slam2(保姆级教程)-CSDN博客

OpenCV 按照以下的来,主要是配置环境变量

【OpenCV 】Ubuntu系统下配置安装OpenCV开发环境_ubuntu opencv环境变量配置-CSDN博客

踩坑参考

Ubuntu18.04下运行ORB-SLAM2踩坑记

WSL 特殊的坑

【环境配置】Windows 11 的 WSL(Ubuntu2204) 安装OpenCV 4.5.4 (亲测有效)_libdc1394-dev : 冲突: libdc1394-22-dev 但是 2.2.5-2.1 -CSDN博客

其他参考

ORB SLAM3 和 数据集

【算法】跑ORB-SLAM3遇到的问题、解决方法、效果展示(环境:Ubuntu18.04+ROS melodic)_fail to track local map!-CSDN博客

标签:Ubuntu20.04,git,sudo,dev,cd,SLAM2,build,ORB
From: https://www.cnblogs.com/flypopo/p/18304242

相关文章

  • ubuntu20.04离线部署ceph集群
    版本兼容:查看ceph和系统的版本是否兼容节点说明ceph-admin:192.168.83.133ceph节点IPDomainHostnameServices192.168.83.133stor01.kb.cxceph01mon,mgr,mds192.168.83.134stor02.kb.cxceph02mgr,mon,mds192.168.83.135stor03.kb.cxceph03osd,m......
  • Windows11使用子系统Ubuntu20.04配置图形化界面和安装软件
    前言        在上一章节,我们在windows11下利用wsl2安装了Ubuntu-linux子系统,并下载了android10的源码进行编译(Ubuntu运行环境下Android10源码下载和编译_ubuntu18下载android10源码-CSDN博客)。如果想进行android源码以及framework的学习,一定需要代码编辑软件,我之前学......
  • 在Docker中搭建rabbit MQ集群 (Mac + OrbStack)
    我以为用docker搭建一个rabbitMq集群会非常简单,但是结果却出乎意料,我花了差不多两个半天才搞定。这还是依赖了AI的协助,否则难度不敢想象。我的环境是Mac上的OrbStack。用了Kimi+文心一言+ChatGPT+Claude,还是Kimi价值最大。backandforth的过程就不讲了,这里直接说一下......
  • 在Ubantu22.04中运行ORB_SLAM3
    在Ubantu22.04中运行ORB_SLAM3一、概述ORB-SLAM3是一个支持视觉、视觉加惯导、混合地图的SLAM系统,可以在单目,双目和RGB-D相机上利用针孔或者鱼眼模型运行。从第一版的单目相机系统,到第二版加入了对stereo以及RGBDcamera的支持,再到目前最新版本的orb-slam整合了visual,以及visual......
  • 在Ubantu22.04中运行ORB_SLAM3并进行源码解析
    在Ubantu22.04中运行ORB_SLAM3并进行源码解析1.ORB_slam3简介ORB-SLAM3是一款前沿的即时定位与建图(SLAM)系统,专为大规模环境下的实时定位与三维重建设计。系统兼容多种视觉传感器配置,包括单目、立体双目以及RGB-D相机。ORB-SLAM3采用OrientedFAST和RotatedBRIEF(ORB)算法进......
  • Ubuntu20.04中 ORBSLAM3的安装和测试
    ORBSLAM3安装以及测试教程(Ubuntu20.04)1.前期准备工作1.1安装相关依赖sudoaptinstallgitcmakegccg++mlocate1.2下载ORBSLAM3源码可以直接通过github下载源码:(https://github.com/UZ-SLAMLab/ORB_SLAM3)2.安装一些所需的库2.1安装Eigen3库直接通过命令安装s......
  • RealVNC远程连接Ubuntu20.04(无显示器,开机后可连接)
    场景远程连接工控机时,无法使用VNC连接。需要以下配置菜可以在无屏幕情况下远程直接连接工控机,主要包括:使用Ubuntu内置的vinoVNC提供远程桌面访问。配置自动登录配置虚拟桌面环境Ubuntu20.04配置1、安装Ubuntu内置的桌面共享VNC服务vino。sudoaptinstallvino在“设置->共享->屏......
  • 【ORB_SLAM的安装报错】—— 使用./build.sh编译ORB_SLAM源码时出现报错:/usr/bin/ld:
    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录前言一、/usr/bin/ld:找不到-lboost_serialization1.问题描述2.解决(1).下载源码(2).编译安装总结前言Boost库是一组由C++标准库的扩展库组成的集合,旨在为C++开发者提供高质量和功能丰......
  • Ubuntu20.04无法安装也无法卸载显卡驱动
     起因是发现nvidia-smi报错:NVIDIA-SMIhasfailedbecauseitcouldn'tcommunicatewiththeNVIDIAdriver.MakesurethatthelatestNVIDIAdriverisinstalledandrunning.然后以为把驱动卸载掉重新装一下就行了。sudoapt-getremove--purgenvidia*//卸载原有......
  • ORB-SLAM3 源码分析
    一、ORB-SLAM3介绍ORB-SLAM3是一个先进的同时定位与地图构建(SimultaneousLocalizationandMapping,SLAM)系统,实现了基于视觉惯导紧耦合,同时能够对多地图进行复用;另外支持单目/双目/RGB-D作为输入,支持针孔以及鱼眼相机模型。是目前种类最齐全、工程化最好、精度和鲁棒性整体最佳的......