ubuntu18.04 ubuntu20.04 ORB_slam3安装运行测试

入手了一个奥比中光的rgbd摄像头,想学一下视觉slam,首先想到的orb-slam2,在ubuntu22.04 ubuntu20.04分别进行了安装,都没有成功,其中各种报错,解决不了。毕竟8年前的代码,好多东西和现在的环境匹配不了,后看到orb-slam3是二〇年的代码,介绍精度要比2高很多,开源时间不长,应该和现在的linux环境差不多,安装难度应该小一点,遂在ubuntu18.04安装成功了,又在ubuntu20.04安装了一次,相比来说比slam2安装容易多了,如果从来没有玩过视觉slam的建议安装3,下面是安装历程,全当是自己学习的笔记,也给首次安装的朋友当个参考。
 
一、ROS一键安装
orb-slam3不需要ros也能运行,可以不安装ros,新安装的系统只用此命令一键换源,安装速度会快很多,如果本来就是国内源,此步可以跳过直接进入第二步。

```
wget http://fishros.com/install -O fishros && . fishros
```
 二、ORB_SLAM3依赖安装
pangolin,EIGEN3,OPENCV,DBoW2 和 g2o

1 安装c++编译软件
```
sudo apt update
sudo apt install git cmake gcc g++
```
 2 安装EIGEN3

```
sudo apt-get install libeigen3-dev
```
### 3 安装pangolin0.6
安装依赖
```
sudo apt install libglew-dev libpython2.7-dev
```
下载 Source code (tar.gz) 解压到主目录,下载网址:   
https://github.com/stevenlovegrove/Pangolin/releases/tag/v0.6  
安装命令
```
cd Pangolin-0.6
mkdir build
cd build
cmake ..
make
sudo make install    
```
//安装后pangolin将在  /usr/local/include/中找到

### 测试
```
cd examples/HelloPangolin
./HelloPangolin
```

运行此示例,效果显示是一个红绿蓝立方体,表示即为安装成功

报错可能会是缺少依赖,不报错可以不装。
```
sudo apt install libgl1-mesa-dev
sudo apt install pkg-config
sudo apt install libegl1-mesa-dev libwayland-dev libxkbcommon-dev wayland-protocols
```

### 4 安装OpenCV4.4.0
OpenCV3.0以后  opencv 和opencv_contrib需要分开下载,安装时在和在一起。

 OpenCV4.4.0下载地址:
https://github.com/opencv/opencv/tree/4.4.0

OpenCV4.4.0下载命令
```
git clone https://github.com/opencv/opencv.git
```
opencv_contrib下载地址:
https://github.com/opencv/opencv_contrib/tree/4.4.0

 opencv_contrib下载命令
```
git clone https://github.com/opencv/opencv_contrib.git
```
必须安装的依赖包:
```
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
```

开始安装opencv

安装cmake 图形界面
```
sudo apt install git cmake-gui
```
 
把opencv_contrib文件夹复制到opencv文件夹内,(不是必须复制到文件夹里面,只是为了和后面路径一致)
终端内输入
```
cd opencv
mkdir build
cd build
cmake-gui
```
ubuntu18.04 ubuntu20.04 ORB_slam3安装运行测试_第1张图片
点击finish
ubuntu18.04 ubuntu20.04 ORB_slam3安装运行测试_第2张图片

 

 

在OPENCV_EXTRA_MODULES_PATH处,选择输入目录(单击这一行后方空白处即可选中),选到我们刚才解压的opencv-contrib/modules文件夹

点generate生成makefile文件

重开一个终端
```
cd opencv/build
make -j4
sudo make install
```
我数了一下17个红色警告(因为国外软件被墙),不用管他,这些都不影响后期编译,毕竟我们是先要代码跑起来。
ubuntu18.04 ubuntu20.04 ORB_slam3安装运行测试_第3张图片

ubuntu18.04 ubuntu20.04 ORB_slam3安装运行测试_第4张图片 

 

## 三 ORB-SLAM3安装
```
cd ORB_SLAM3
chmod +x build.sh
./build.sh
```
这里也可以打开build.sh 按里面代码分步安装。

## 四 测试


ubuntu18.04 ubuntu20.04 ORB_slam3安装运行测试_第5张图片
下载:EuRoC 数据集下载序列(ASL 格式)
Downloads下的ASL Dataset Format,点击任意link下载即可
https://projects.asl.ethz.ch/datasets/doku.php?id=kmavvisualinertialdatasets#downloads
/ORB_SLAM3下新建Datasets,将下载好的文件MH_01_easy.zip解压(就是图中第一个Machine Hall 01)放入Datasets,并改名为MH01
目录结构~/ORB_SLAM3/Datasets/MH01/mav0

 

### 测试orb3源码好不好使
```
cd ORB_SLAM3
```

EuRoC 双目+IMU测试
```
./Examples/Stereo/stereo_euroc ./Vocabulary/ORBvoc.txt ./Examples/Stereo/EuRoC.yaml /home/ros2/ORB_SLAM3/Datasets/MH01 ./Examples/Stereo/EuRoC_TimeStamps/MH01.txt dataset-MH01_sterego
```
ubuntu18.04 ubuntu20.04 ORB_slam3安装运行测试_第6张图片

 


参考博客:
https://blog.csdn.net/weixin_48924581/article/details/126534339

你可能感兴趣的:(自动驾驶,人工智能,机器人)