版权声明:本文为博主原创文章,未经博主允许不得转载。
前言
ORBSLAM2是一个非常适合SLAM入门学习的开源工程。它支持单目、双目、RGB-D使用,可以计算摄像机的轨迹,并且重建稀疏的3D地图。
官网有源代码和配置教程,地址是
https://github.com/raulmur/ORB_SLAM2
1 安装必要工具
首先,有两个工具是需要提前安装的。即cmake和Git。
sudo apt-get install cmake
sudo apt-get install git
2 安装Pangolin,用于可视化和用户接口
安装依赖项:
sudo apt-get install libglew-dev
sudo apt-get install libpython2.7-dev
先转到一个要存储Pangolin的路径下,例如~/Documents,然后
git clonehttps://github.com/stevenlovegrove/Pangolin.git
cd Pangolin
mkdir build
cd build
cmake ..
make –j
sudo make install
3 安装OpenCV
最低的OpenCV版本为2.4.3,建议采用OpenCV 2.4.11或者OpenCV 3.2.0。从OpenCV官网下载OpenCV2.4.11。然后安装依赖项:
sudo apt-get install build-essential
sudo apt-get install libgtk2.0-dev
sudo apt-get install pkg-config
将下载的OpenCV解压到自己的指定目录,然后cd到OpenCV的目录下。
cd ~/Downloads/opencv-2.4.11
mkdir release
cd release
cmake -D CMAKE_BUILD_TYPE=RELEASE -DCMAKE_INSTALL_PREFIX=/usr/local ..
make
sudo make install
4 安装Eigen3
最低要求版本为3.1.0。在http://eigen.tuxfamily.org 下载Eigen3的最新版本,一般是一个压缩文件,下载后解压,然后cd到Eigen3的根目录下。
mkdir build
cd build
cmake ..
make
sudo make install
5 安装ORBSLAM2
先转到自己打算存储ORBSLAM2工程的路径,然后执行下列命令
git clonehttps://github.com/raulmur/ORB_SLAM2.git ORB_SLAM2
cd ORB_SLAM2
chmod +x build.sh
./build.sh
之后会在lib文件夹下生成libORB_SLAM2.so,并且在Examples文件夹下生成mono_tum,mono_kitti, rgbd_tum,stereo_kitti, mono_euroc 和 stereo_euroc。
6 运行单目SLAM实例
在http://vision.in.tum.de/data/datasets/rgbd-dataset/download下载一个序列,并解压。转到ORBSLAM2文件夹下,执行下面的命令。根据下载的视频序列freiburg1, freiburg2 和 freiburg3将TUMX.yaml分别转换为TUM1.yaml,TUM2.yaml,TUM3.yaml。将PATH_TO_SEQUENCE_FOLDER更改为解压的视频序列文件夹。
./Examples/Monocular/mono_tum Vocabulary/ORBvoc.txtExamples/Monocular/TUMX.yaml PATH_TO_SEQUENCE_FOLDER
例如,我自己的电脑上,该命令变为:
./Examples/Monocular/mono_tumVocabulary/ORBvoc.txt Examples/Monocular/TUM1.yaml/home/bill/Downloads/rgbd_dataset_freiburg1_xyz
运行截图如下:
相关文献
[Monocular] Raúl Mur-Artal, J. M. M. Montiel and Juan D. Tardós. ORB-SLAM: A Versatile and Accurate Monocular SLAM System. IEEE Transactions on Robotics, vol. 31, no. 5, pp. 1147-1163, 2015. (2015 IEEE Transactions on Robotics Best Paper Award). PDF.
[Stereo and RGB-D] Raúl Mur-Artal and Juan D. Tardós. ORB-SLAM2: an Open-Source SLAM System for Monocular, Stereo and RGB-D Cameras. ArXiv preprint arXiv:1610.06475 PDF.
[DBoW2 Place Recognizer] Dorian Gálvez-López and Juan D. Tardós. Bags of Binary Words for Fast Place Recognition in Image Sequences. IEEE Transactions on Robotics, vol. 28, no. 5, pp. 1188-1197, 2012. PDF