1. 准备工作
1.1 安装依赖
sudo apt install git cmake gcc g++ mlocate
1.2 下载 ORBSLAM3 源码
可以去 Github 下载源码:https://github.com/UZ-SLAMLab/ORB_SLAM3
或者终端内下载:git clone https://github.com/UZ-SLAMLab/ORB_SLAM3.git
2. 安装 Pangolin
可以去 Github 下载源码:https://github.com/stevenlovegrove/Pangolin/tree/v0.6
一定要下载 0.6 版本的。
根据 Github 给的依赖挨个安装。
安装好依赖之后解压下载的 Pangolin 压缩包 unzip Pangolin-0.6.zip
。
编译安装(一行一行的输入):
cd Pangolin-0.6/
mkdir build
cd build
cmake ..
make -j4
sudo make install
3. 安装 OpenCV
去 OpenCV 官网下载 3.4.3 版本:https://opencv.org/releases/。
下载完成后解压:unzip opencv-3.4.3.zip
安装依赖库:
sudo apt-get install build-essential libgtk2.0-dev libavcodec-dev libavformat-dev libjpeg.dev libtiff4.dev libswscale-dev libjasper-dev
⚠️注意:如果提示无法安装,无法定位包,解决办法是执行如下指令:
sudo add-apt-repository "deb http://security.ubuntu.com/ubuntu xenial-security main"
sudo apt update
sudo apt install libjasper1 libjasper-dev
运行完成后,在安装之前给的依赖:
sudo apt-get install build-essential libgtk2.0-dev libavcodec-dev libavformat-dev libjpeg.dev libtiff4.dev libswscale-dev libjasper-dev
依赖装完后,去 Github 把 ippicv 这个文件夹下载下来,放到你自己的文件夹内(只要你能找到路径就行):https://github.com/opencv/opencv_3rdparty/tree/ippicv/master_20170822
然后把你的 OpenCV 源文件中 /3rdparty/ippicv 文件夹下的 ippicv.cmake 中,第 47 行的 "https://raw.githubusercontent.com/opencv/opencv_3rdparty/${IPPICV_COMMIT}/ippicv/"
改成你下载的 ippicv 文件夹路径,比如我:"file:///home/xiao/ippicv/"
(最后一个 /
不能省)。
编译安装 OpenCV(一行一行的输入,可能会有警告的出现,不用管):
cd opencv-3.4.3/
mkdir build
cd build
cmake -D CMAKE_BUILD_TYPE=Release -D CMAKE_INSTALL_PREFIX=/usr/local ..
make -j4
sudo make install
添加库路径:
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
更新:
sudo updatedb
opencv版本检测:
pkg-config --modversion opencv
⚠️ 如果输出 3.4.3 即为安装成功
4. 安装 Eigen3
可以去 Github 下载源码:https://github.com/eigenteam/eigen-git-mirror/tree/3.3.4
一定要下载 3.3.4 版本的。
解压下载好的压缩包:unzip eigen-git-mirror-3.3.4.zip
编译安装:
cd eigen-git-mirror-3.3.4
mkdir build
cd build
cmake ..
sudo make install
安装后,头文件安装在 /usr/local/include/eigen3/
⚠️ 不要用该指令安装 Eigen3 :
sudo apt-get install libeigen3-dev
安装完成后,再安装如下依赖包:
sudo apt install libpython2.7-dev
5. 安装 Boost
在 Boost 官网下载 1.77.0 版本压缩包:https://boostorg.jfrog.io/artifactory/main/release/1.77.0/source/
可以下载 tar.gz 格式的压缩包。
下载之后解压:tar -xzvf boost_1_77_0.tar.gz
编译安装:
cd boost_1_77_0
sudo ./bootstrap.sh
sudo ./b2 install
安装 libssl-dev:
sudo apt-get install libssl-dev
6. 安装 ORBSLAM3
解压之前下载好的 ORBSLAM3 压缩包:unzip ORB_SLAM3.zip
打开 ORBSLAM3 文件夹内的 CMakeLists.txt 文件,找到 find_package(OpenCV 4.4)
这行代码,将 OpenCV 版本号改为 find_package(OpenCV 3.4)
。
因为刚才安装的 OpenCV 是 3.4 版本的,而在最新的 ORBSLAM3 中要求是 4.4 及以上版本,改成 3.4 不影响安装以及使用。
6.1 打开 ORBSLAM3 可视化选项(可选)
打开 Examples/Monocular 文件夹下的 mono_euroc.cc 文件,找到第 83 行:
ORB_SLAM3::System SLAM(argv[1],argv[2],ORB_SLAM3::System::MONOCULAR, false);
将最后的 false
改为 true
。
⚠️ 如果这一节选择不做,后面想要再打开图形化显示功能的话,需要将
false
改为true
之后再编译安装一下 ORBSLAM3 的文件,安装方法在 6.2 或 6.3。
6.2 第一种安装方法
⚠️ 该方法是直接执行 ORBSLAM3 官方给的安装指令,但是容易报错,推荐下面的 6.3 方法。
编译安装:
cd ORB_SLAM3
chmod +x build.sh
./build.sh
6.3 第二种安装方法
打开 ORBSLAM3 文件夹,找到 build.sh 这个文件,打开它。
然后打开终端,进入 ORBSLAM3 文件夹内
cd ORB_SLAM3
再按照 build.sh 里面的代码,一行一行的输入进终端里,直到完成。
7. 数据集测试
数据集下载地址:https://projects.asl.ethz.ch/datasets/doku.php?id=kmavvisualinertialdatasets#downloads
把第一个 Machine Hall 01 数据集下载下来,下载 ASL 格式的。
下载完成后,解压压缩包,里面有一个 mav0 的文件夹。
然后在你的文件夹下(随便哪里,只要你能找到),创建一个文件夹叫 dataset。在 dataset 文件夹下再创建一个 MH01 文件夹,然后把刚才下载的 mav0 文件夹放到 MH01 里面去。
然后打开终端,进入 ORBSLAM3 文件夹内,执行测试:
⚠️ 将最后一行指令中的
/home/xiao/dataset/MH01
改成你的 MH01 文件夹的地址。
cd ORB_SLAM3
cd Examples
./Monocular/mono_euroc ../Vocabulary/ORBvoc.txt ./Monocular/EuRoC.yaml /home/xiao/MH01 ./Monocular/EuRoC_TimeStamps/MH01.txt
若出现:
则表示成功。
标签:Ubuntu20.04,教程,ORBSLAM3,sudo,dev,文件夹,安装,下载 From: https://www.cnblogs.com/xiaoaug/p/17766112.html