ORB-SLAM2-With-Pointcloud-map 编译安装运行等问题汇总

  • Post author:
  • Post category:其他




ORB-SLAM2-With-Pointcloud-map 编译安装运行等问题汇总



1.简介

ORB-SLAM2-With-Pointcloud-map是高翔基于原版ORB-SLAM2改编的带有实时生成实时三维稠密点云功能的开源算法。

下面讲一讲需要最少改动的安装策略。

大家可以先去看看我之前的文章:

(16条消息) ORB-SLAM2编译、安装等问题汇总大全(Ubuntu20.04、eigen3、pangolin0.5、opencv4.5.5)_文雯不是头猪哇的博客-CSDN博客



2.下载



2.1 环境


ubuntu20.04

物理机或虚拟机。



2.1 ORB-SLAM2-With-Pointcloud-map源码下载

git clone https://github.com/gaoxiang12/ORBSLAM2_with_pointcloud_map



2.2 eigen

我选择的是

eigen3.3.90

,很新的一个版本,低版本可能会报很多错误。

这个版本应该与高翔提供的ceres第三方库会有些冲突,但是我们主要用的是g2o,所以问题不大

git clone https://github.com/eigenteam/eigen-git-mirror
cd eigen-git-mirror
mkdir build
cd build
cmake ..
make
sudo make install
sudo cp -r /usr/local/include/eigen3/Eigen /usr/include



2.3 Opencv

选择的是

Opencv3.4.12

,因为之前用的是很新的opencv4.5.5,需要按我之前写的文章改动很多源码才能编译,干脆就给它降个等级。

下载方法为:进入官网==

Releases – OpenCV

==

下载对应版本的压缩包,解压,进入解压后的文件夹下:

mkdir build
cd build
cmake ..
sudo make -j6
sudo make install

耐心等待即可。



2.4 Pangolin

还是选择

0.5版本

git clone https://github.com/cheukwaylee/Pangolin-0.5
cd Pangolin-0.5
mkdir build
cd build
cmake ..
sudo make -j6
sudo make install



2.5 G2O与DBoW2

进入

3rdparty

文件夹下,进入各自的文件夹,执行

mkdir build
cd build
cmake ..
make

这里没必要install,



2.6 PCL

使用官方预编译源码安装即可

sudo apt-get install pcl-tools libpcl-dev



3. 出现的问题

按我说的步骤去编译,出现的问题就很少了。



3.1 value 标红的问题


去include/loopclosing.h下修改const的顺序

在这里插入图片描述



3.2 头文件添加


在/include/System.h中

添加以下头文件

#include <unistd.h>
#include <stdio.h>
#include <stdlib.h>



3.3 pcl需要c++14标准的问题


进入主路径下 CMakeLists.txt ,G2O,DBoW2下的CMakeLists.txt,添加

add_compile_options(-std=c++11)
add_compile_options(-std=c++14)
set(CMAKE_CXX_STANDARD 14)

哦对了,这样也许需要去重新编译g2o和DBoW2库,删去build文件夹,重新跑一遍就好了。



4. 运行

chmod +x build.sh
./build.sh

编译成功后,按我上篇文章所说的下载数据集去测试就ok了


(16条消息) ORB-SLAM2编译、安装等问题汇总大全(Ubuntu20.04、eigen3、pangolin0.5、opencv4.5.5)_文雯不是头猪哇的博客-CSDN博客



版权声明:本文为weixin_52519143原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。