ORB-SLAM2编译运行
ORB-SLAM2是一个非常优秀的开源SLAM系统。支持单目,双目和RGB-D相机。重建一个稀疏3D地图。GitHub地址ORB-SLAM2。
依赖项:
Pangolin
ORB-SLAM2使用Pangolin实现可视化和用户界面功能。GitHub链接:Pangolin。
OpenCV
OpenCV是一个开源计算机视觉库。官网链接:OPenCV
OpenCV的安装:
1. 安装OpenCV的的依赖项:sudo apt-getinstallbuild-essential libgtk2.0-dev libjpeg-dev libtiff4-dev libjasper-dev libopenexr-dev cmake python-dev python-numpy python-tk libtbb-dev libeigen2-dev yasm libfaac-dev libopencore-amrnb-dev libopencore-amrwb-dev libtheora-dev libvorbis-dev libxvidcore-dev libx264-dev libqt4-dev libqt4-opengl-dev sphinx-common texlive-latex-extra libv4l-dev libdc1394-22-dev libavcodec-dev libavformat-dev libswscale-dev
2. 进入OpenCV目录,打开终端依次输入 mkdir build,cd build,cmake .. ,make,sudo make install。
Eigen3
eigen是一个线性代数库,很多库都依赖于eigen,如g2o。官网链接:eigen
安装:打开终端输入 sudo apt-get install libeigen3-dev
DBoW2
ORB-SLAM2使用修改过的DBoW2库,包含在Thirdparty目录下
g2o
g2o是一个非线性优化开源库。ORB-SLAM2使用修改过的g2o,包含在Thirdparty目录下。GitHub链接:g2o
g2o安装
1. 安装依赖项
sudoapt-getinstalllibeigen3-dev libsuitesparse-dev libqt4-dev qt4-qmake libqglviewer-dev
2. 编译安装
进入g2o目录,打开终端依次输入
mkdir build->cd build->cmake ..->make->sudo make install
还可以安装cake-curses-gui这个包,通过gui来选择想编译的g2o模块并设定编译过程中的flags。
mkdir build->cd build->ccmake ..->make->sudo make install
安装好依赖项后,就可以下载ORB-SLAM2代码编译运行了
git clone https://github.com/raulmur/ORB_SLAM2.git ORB_SLAM2
ORB-SLAM2提供了一个编译脚本build.sh(build_ros.sh对应ROS版本)。
运行这个脚本就自动编译了整个工程了。
cd ORB-SLAM2->chmod +x build.sh->./build.sh
运行ORB-SLAM2 demo(未完待续,详情请参考GitHub链接)