1、ORB-SLAM2的下载(Linux下)
从github.com 下载ORB-SLAM2 的代码。地址在:https://github.com/raulmur/ORB_SLAM2.
提⽰:在安装git 之后,可以⽤以下 命令下载ORB-SLAM2。(如果你没有安装git,请参考https://blog.csdn.net/ykf173/article/details/105624488?ops_request_misc=%25257B%252522request%25255Fid%252522%25253A%252522161283685016780299096952%252522%25252C%252522scm%252522%25253A%25252220140713.130102334…%252522%25257D&request_id=161283685016780299096952&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2allsobaiduend~default-4-105624488.pc_search_result_before_js&utm_term=git%25E5%25AE%2589%25E8%25A3%2585Linux
git clone https://github.com/raulmur/ORB_SLAM2
2.运行程序前的一些配置(很重要)
以下步骤你也可以通过直接运行build.sh代替,他将帮助你直接编译运行。然后你就可以运行可执行文件了。
(1)打开ORB-SLAM2文件夹,进入Thirdparty文件夹,分别进入DBoW2,g2o文件夹进行cmake,make编译。(你应该已经安装了cmake工具)
(2)然后进入Vocabulary文件夹
解压命令
tar -xvf ORBvoc.txt.tar.gz
左边的txt文件是解压后的文件。
(3)进入include里的System.h文件
添加一行
#include<unistd.h>
为了防止编译阶段出现usleep报错,系统会提示你将usleep改成fseek,实际上这并没有用,这两个命令含义不同,替换不能解决问题,实际上是缺少usleep的头文件导致的。笔者原先是直接编译,一行一行改错(全是血泪QAQ)。
3、在https://github.com/raulmur/ORB_SLAM2下载数据集(Dataset)
因为笔者要运行mono_tum文件,所以选择下载TUM Dataset。(当然如果你要运行其他文件,可以下载对应得数据集)
TUM Dataset下载网址:http://vision.in.tum.de/data/datasets/rgbd-dataset/download
我在ORB-SLAM2文件夹里新建downloads文件夹,将下载的压缩包放在此文件夹下,并解压,解压命令请参考上一条。
4、到这里配置结束了,可以开始编译了
在ORB-SLAM2下文件夹下,cmake,make编译
5、运行得到了mono_tum可执行文件,接下来运行它。
直接运行会报错。
查阅GitHub官方文档,知道了要按照以下格式执行此可执行文件。
运行命令格式为:./mono_tum path_to_vocabulary path_to_settings path_to_sequence
该命令共有4个参数:
mono_tum 编译生成的针对MONO_KITTI数据集的可执行文件,一般路径为ORB-SLAM2工程目录下Examples/Monocular/mono_tum;
path_to_vocabulary为所选词典的路径,路径为ORB-SLAM2/Vocabulary/ORBvoc.txt;
path_to_settings为配置文件,存放在ORB-SLAM2/Examples/Monocular下,该配置文件中存放的相机的内参和外参,提取特征时候图像金字塔相关参数,可视化过程中用到的参数;
path_to_sequence为数据集路径,这个根据自己下载的kitti数据集路径来指定(就是第三步中下载的数据集)
所以我最后的运行代码是
./Examples/Monocular/mono_tum Vocabulary/ORBvoc.txt Examples/Monocular/TUM1.yaml /home/neo/ORBcode/ORB_SLAM2/downloads/rgbd_dataset_freiburg1_xyz
请你根据以上代码,修改地址,然后运行即可。
运行结果
至此,你应该可以成功运行示例程序了。
6、关于一些库
在上面的叙述中我没有提到相关库的安装,它需要OpenCV,pangolin,Eigen等库,这些库是运行程序的先决条件,如果你没有安装,请参考其他博客安装,本文不再赘述。