ORB SLAM2全网最详细的配置
写在前面
1.建议使用双系统安装Linux 对应的Ubantu版本。
源码作者推荐使用Ubuntu 12.04, 14.04 and 16.04但是我亲自试用18.04是没有任何问题的。另外我是使用的虚拟机安装的,不影响使用,只是跑一下demo我觉得虚拟机就够了。用于工程的话建议双系统。
2.虚拟机安装
Ubantu安装我就不做过多解释CSDN上有很多;有一点推荐是建议装好了Ubantu后,在虚拟机设置一个快照,防止后期配置出错,可以回到最初的位置从头再来,大神的话可以忽略。
3.安装前的准备
因为刚安装好的系统是没有编译器的所以要先进行一些准备工作
具体操作:在桌面打开终端依次输入下面三行命令
// 安装 vim 、 cmake 、 git 、 gcc 、 g++
sudo apt-get install vim cmake
sudo apt-get install git
sudo apt-get install gcc g++
到现在前期准备工作就做好了,如果有小伙伴不太熟悉Linux,也不要担心,千万不要花过多的时间在上面,有不懂的就搜,不要试图一次性学会
1.配置依赖库
1. 进入GithuborbSLAM2(最好通过某些方式进入,不做过多解释)
2. 点击进入,直接滑倒README,如下图
接下来,我们会按照这个顺序讲解
3. 安装Pangolin
3.1 C++11 orC++0x 我们刚才安装的gcc/g++已经支持了,这一步可以跳过
3.2 Pangolin 这是用于可视化的一个库,点进去。这里有一点要格外注意,现在Pangolin已经更新到0.6,我试过0.6会报错,所以选择0.5 如图
3.3 Pangolin的下载 编译
下面两张图同时结合看
3.4 配置Pangolin的依赖库
接着进入输入命令行环节,在下载的源码文件Pangolin 界面,输入下面命令行
// 解压缩下载的源码文件
cd Pangolin //进入源码文件
mkdir build //创建build文件
cd build //进入build文件
cmake .. //编译
make -j //编译 建议用make -j2 因为make -j是贪婪时进程,导致cpu压力大,-j2代表两个进程 -j1代表一个线程 (傻傻的进程线程分不清了 凑合看吧 理解就行)
以上就是Pangolin安装,接下来进入opencv安装
4. 安装opencv
官方给出的Opencv版本是2.4.3-3.2,我用的是3.4.6,试过没有任何问题。
4.1 下载opencv源码
OpenCv下载
将下载的源码提取解压。
4.2 opencv编译
右击解压好的opencv源码,在终端打开;
// 编译 一步一步输入命令行
mkdir build
cd build
cmake ..
make
sudo make install
4.3 环境配置
在桌面右击在终端打开,输入下面命令,弹出文本
sudo vim /etc/ld.so.conf.d/opencv.conf
在打开的空白文件中添加 /usr/local/lib 执行
sudo ldconfig
使配置的环境变量生效。
4.4 配置 .bashrc ,末尾添加下面两行
继续在上面命令行输入下面命令
//打开.bashrc
sudo vim /etc/bash.bashrc
在打开的文本中最后两行添加下面两行
//添加以下两行内容到.bashrc
PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig
export PKG_CONFIG_PATH
关于opencv可能配置说的不是太详细,大家可以看 B站一个UP的视频
感谢UP!!!
其中在04.07时间,UP输入的是sudo vim
sudo gedit /etc/ld.so.conf.d/opencv.conf
这个可能不通过,不通过的话,就用我的上面写的那个,其实就是gedit 和 vim的区别,因为我们上面已经安装了vim所以可以通过
5.配置 Eigen3
Eigen3配置很简单 直接一句命令行就直接解决
sudo apt-get install libeigen3-dev
默认安装位置/usr/local/include/eigen3/
但是在有的程序中 include 时经常使用 #include <Eigen/Dense> 而不是使用 #include<eigen3/Eigen/Dense> 中间多一个Eigen/Dense所以要做下处理,这就要移动头文件 用下面命令
sudo cp -r /usr/local/include/eigen3/Eigen /usr/local/include
现在除了DBoW2 and g2o 其他的依赖库都已经配好了
DBoW2 and g2o是直接放在项目里面,我后面会说,这个暂时不用管
2.下载编译orb slam2源码
- 直接将源码下载下来
2.下次更新 2021.10.27~~~~~~~