ubuntu20.04安装并运行ORB_SLAM3(一路顺风版)

1、引言

网上各种安装教程,会出错,很麻烦,大家电脑在安装前,最好把之前的残留卸载干净,我在此出一个一路顺风版,哈哈哈,望大家喜欢。

2、准备工作

2.1、安装git,g++

sudo apt-get install git
sudo apt install g++

2.2、安装cmake

不推荐大家使用自动安装命令,那个安装的版本太老了。一般ubuntu上会自带一个cmake,不过太老了,在此教大家一个电脑上cmake共存!

2.2.1下载新的cmake

直接给出下载链接:cmake3.23.2,提取码:9527
step1:下载完成后解压到主目录,并将该文件移动到opt目录下:==>>打开终端输入一下命令:

mv cmake-3.23.2-linux-x86_64 /opt/cmake-3.23.2

移动成功后,opt目录下应该有个文件夹,如图:

ubuntu20.04安装并运行ORB_SLAM3(一路顺风版)_第1张图片

这个文件打开后,如图所示:

ubuntu20.04安装并运行ORB_SLAM3(一路顺风版)_第2张图片 

step2:建立软链接===>>输入以下指令:

ln -sf /opt/cmake-3.23.2/bin/* /usr/bin

step3: 查看cmake版本:===>>输入以下指令:

cmake --version

此时发现cmake版本号不是3.23.2,再执行以下步骤:

step4:添加到环境变量:===>输入以下指令:

gedit ~/.bashrc 

将以下代码添加到bashrc文件的最后一行

export PATH=/opt/cmake-3.23.2/bin:$PATH

更新bashrc:===>>>输入以下指令:

source ~/.bashrc

再次检查cmake版本号:

cmake --version

注:完结,撒花!

3、安装库

3.1、安装EIGEN库

打开终端输入以下指令:

git clone https://github.com/eigenteam/eigen-git-mirror
cd eigen-git-mirror
mkdir build
cd build
cmake ..
sudo make install

3.2、安装opencv

我安装的是最新版opencv,测试了,没啥问题,开始,开始!

step1:安装依赖项

sudo apt-get install build-essential libgtk2.0-dev libgtk-3-dev libavcodec-dev libavformat-dev libjpeg-dev libswscale-dev libtiff5-dev

sudo apt install python3-dev python3-numpy
sudo apt install libgstreamer-plugins-base1.0-dev libgstreamer1.0-dev
sudo apt install libpng-dev libopenexr-dev libtiff-dev libwebp-dev

step2:下载opencv源文件

在此直接给出==>>opencv4.5.5提取码:9527
下载完成后,直接解压到主目录,重命名为:opencv,如图所示:

ubuntu20.04安装并运行ORB_SLAM3(一路顺风版)_第3张图片

 step3:安装opencv:打开终端,输入以下指令:

cd opencv
mkdir build
cd build
cmake -D CMAKE_BUILD_TYPE=Release -D OPENCV_GENERATE_PKGCONFIG=YES ..
make -j16 
sudo make install

step4:环境配置:

step4.1:

opencv安装成功后在此目录(/usr/local/lib/pkgconfig/opencv4.pc)下,会有这个opencv4.pc这个文件,如图所示:

ubuntu20.04安装并运行ORB_SLAM3(一路顺风版)_第4张图片

 注:我的是opencv.pc,我这是修改后的,因为如果不修改,后面查询opencv版本的时候会报错,无法找到opencv!!!如图所示:

ubuntu20.04安装并运行ORB_SLAM3(一路顺风版)_第5张图片

这个错误是很奇葩的,我网上找了很多方法,设置没有效果,最后发现,这个他需要找的是opencv.pc,所以如果你不改这个名字,再怎么操作也找不到这个文件。 

step4.2:

打开终端输入:

sudo gedit /etc/profile.d/pkgconfig.sh

在这个文件的最后一行输入:并保存

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

再次打开终端,输入:

source /etc/profile
pkg-config --libs opencv4

会出现如下界面:

 再次打开终端:

sudo gedit /etc/ld.so.conf.d/opencv4.conf

在文件末尾加上:

/usr/local/lib

更新:打开终端:

sudo ldconfig

添加环境路径:打开终端输入:

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

查看版本号:

pkg-config --modversion opencv

完工!

3.3、安装PANGOLIN

3.3.1、安装依赖

安装Pangolin所需依赖
sudo apt install libgl1-mesa-dev
sudo apt install libglew-dev
sudo apt install libpython2.7-dev
sudo apt install pkg-config
sudo apt install libegl1-mesa-dev libwayland-dev libxkbcommon-dev wayland-protocols

3.3.2、安装pangolin

git clone https://github.com/stevenlovegrove/Pangolin/tree/v0.6   
cd Pangolin
mkdir build && cd build
cmake ..
make -j16
sudo make install

3.3.3、检测安装效果:如图:

cd examples/HelloPangolin
./HelloPangolin

ubuntu20.04安装并运行ORB_SLAM3(一路顺风版)_第6张图片

 3.4、安装boost

直接给链接!===>>boost>>提取码:9527

提取到主目录:打开终端,执行以下指令:

sudo ./bootstrap.sh
sudo ./b2 install

4、安装编译ORB_SLAM3

大家如果上面的步骤和我相同,那么下面的ORB_SLAM3的编译应该是一个错误不报的,完美收工!

在此给出ORB_SLAM3源代码:===>>>
ORB_SLAM3 提取码:9527

下载后解压到主目录,重命名为ORB_SLAM3

打开终端,输入以下指令:

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

此时ORB_SLAM3就开始编译了,应该一步到位了!

5、运行ORB-SLAM3

5.1下载数据集

话不多说,直接上数据集!==>>

大家下载完成后,提取到主目录

step1:在ORB_SLAM3里面新建一个文件夹:dataset,如图:

ubuntu20.04安装并运行ORB_SLAM3(一路顺风版)_第7张图片

 step2:将数据集复制到dataset下,并将其重命名为:MH01,如图:

ubuntu20.04安装并运行ORB_SLAM3(一路顺风版)_第8张图片 step3:运行ORB_SLAM3

在ORB_SLAM3文件夹下,打开终端,输入以下指令:

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

注:此时大家会发现,运行ORB_SLAM3的时候,没有画面!,不要慌,是因为可视化界面没有打开

step4:打开可视化界面

打开mono_euroc.cc的第83行,如图所示:

ubuntu20.04安装并运行ORB_SLAM3(一路顺风版)_第9张图片

 ubuntu20.04安装并运行ORB_SLAM3(一路顺风版)_第10张图片

 改完之后保存,重新编译ORB_SLAM3,打开终端输入:

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

编译成功后,运行,打开终端输入:

 

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

运行结果如图:===>>>

ubuntu20.04安装并运行ORB_SLAM3(一路顺风版)_第11张图片

 

你可能感兴趣的:(视觉SLAM,linux,ubuntu,计算机视觉,算法,c++)