本文主要是记录自己安装ORB-SLAM2的总结,之前从未写过博客,没有想过分享一下自己的探索过程。 首先slam(simultaneous localization and mapping),即时定位与地图构建。我这头是在ubuntu14.04上安装,主要是测试一下在ros上运行(indogo版本)单目slam。
一、依赖项的安装
1.1 、Eigen3安装 官网:http://eigen.tuxfamily.org/index.php?title=Main_Page g2o库依赖于eigen3。Eigen是C++中可以用来调用并进行矩阵计算的一个库。
sudo apt-get install libeigen3-dev
1.2、opencv安装 opencv推荐安装opencv2.4.13(opencv2.4.3以上就可以满足条件),首先上opencv官方网站:http://opencv.org/downloads.htm下载好opencv2.4.13.zip.
unzip opencv2.4.13.zip
sudo apt-get install build-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
cd opencv-2.4.13
mkdir build;cd build;
cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local -D WITH_TBB=ON -D BUILD_NEW_PYTHON_SUPPORT=ON -D WITH_V4L=ON -DINSTALL_C_EXAMPLES=ON -D INSTALL_PYTHON_EXAMPLES=ON -DBUILD_EXAMPLES=ON -D WITH_QT=ON -D WITH_OPENGL=ON -DCUDA_GENERATION=Kepler ..
make
sudo make install
如果没有出现error,恭喜。 1.3、Pangolin安装 Orb-slam2里面的绘图工具使用的就是Pangolin。 首先安装一下Pangolin的依赖项,有的飘过。
sudo apt-get install libglew-dev#Glew
sudo apt-get install cmake#Cmake
sudo apt-get install libpython2.7-dev
sudo apt-get install libboost-dev libboost-thread-dev libboost-filesystem-dev#Boost
#正式开始安装
git clone https://github.com/stevenlovegrove/Pangolin.git
cd Pangolin
mkdir build
cd build
cmake -DCPP11_NO_BOOST=1 ..
make -j
sudo make install
1.4、BLAS and LAPACK 这两个库是g2o需要的库。 1)、BLAS: Basic Linear Algebra Subprograms 2)、LAPACK:Linear Algebra PACKage
sudo apt-get install libblas-dev
sudo apt-get install liblapack-dev
1.5、ROS安装 ROS(Robot Operating System)是一个著名的机器人操作系统。安装参考:http://wiki.ros.org/cn/indigo/Installation/Ubuntu (推荐安装的是indigo)版本。
sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list'
sudo apt-key adv --keyserver hkp://pool.sks-keyservers.net --recv-key 421C365BD9FF1F717815A3895523BAEEB01FA116
sudo apt-get update
sudo apt-get install ros-indigo-desktop-full#完整版
sudo rosdep init
rosdep update
echo "source /opt/ros/indigo/setup.bash" >> ~/.bashrc
source ~/.bashrc
二、ORB-SLAM2使用 2.1、orb-slam2编译安装 首先下载下:https://github.com/raulmur/ORB_SLAM2.git
cd ~/catkin_ws/src
git clone https://github.com/raulmur/ORB_SLAM2.git
cd ORB_SLAM2
chmod +x build.sh
./build.sh
2.2、usb_cam编译 参考:https://github.com/bosch-ros-pkg/usb_cam
cd ~/catkin_ws/src
git clone https://github.com/bosch-ros-pkg/usb_cam
cd ~/catkin_ws/
catkin_make
roscore#不要忘记
roslaunch usb_cam usb_cam-test.launch#看自己具体的文件名
注意:要运行monoslam的demo要修改一下~/catkin_ws/src/ORB_SLAM2/Examples/ROS/ORB_SLAM2/src下的ros_mono.cc,将程序里面的topic改为/usb_cam/image_raw,这一步可以通过rviz工具选择image通过订阅/usb_cam/image_raw/,确认是否OK。 2.3、运行测试demo
rosrun ORB_SLAM2 Mono ~/catkin_ws/src/ORB_SLAM2/Vocabulary/ORBvoc.txt ~/catkin_ws/src/ORB_SLAM2/Examples/Monocular/TUM1.yaml
如果可以正常看到orb-slam2的demo,恭喜,没有成功也不要伤心,检查一下是不是有什么没有操作的。
您还没有登录,请您登录后发表评论。