版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/chentianting/article/details/82908402
安装指南
先在home目录下,新建catkin_ws/src/SVO这几级文件夹目录,作为workspace
安装Sophus库
Sophus库我之前已经安装过,如果未安装:
cd catkin_ws/src/SVO
git clone https://github.com/strasdat/Sophus.git
cd Sophus
git checkout a621ff
mkdir build
cd build
cmake ..
make
安装Fast库(用于fast角点检测)
cd catkin_ws/src/SVO
git clone https://github.com/uzh-rpg/fast.git
cd fast
mkdir build
cd build
cmake ..
make
安装g2o库(图优化)–可选
建议安装。在安装g2o之前,需要先使用apt-get 安装 cmake, libeigen3-dev, libsuitesparse-dev, libqt4-dev, qt4-qmake, libqglviewer-qt4-dev这些依赖项(参考)
依赖项安装完毕,开始安装g2o:
cd catkin_ws/src/SVO
wget https://github.com/RainerKuemmerle/g2o/archive/20160424_git.tar.gz -O g2o-20160424_git.tar.gz
tar xvzf g2o-20160424_git.tar.gz
cd g2o-20160424_git
mkdir build
cd build
cmake ..
make
sudo make install
安装vikit
cd catkin_ws/src/SVO
git clone https://github.com/uzh-rpg/rpg_vikit.git
安装ROS依赖项
sudo apt-get install ros-hydro-cmake-modules
# 将hydro换成自己的ROS系统,我的是 kinetic
编译SVO
cd catkin_ws/src/SVO
git clone https://github.com/uzh-rpg/rpg_svo.git
若安装了g2o,需要将/home/<用户名>/catkin_ws/src/SVO/rpg_svo/svo/CMakeLists.txt中的HAVE_G2O
设置成TRUE
接下来:
cd catkin_ws
catkin_make
在虚拟机下编译,内存设为3G,编译到一半死机,调整为4G后,顺利编译完成。可以看到catkin_ws目录下出现了build和devel文件夹。
运行指南
使用数据集运行SVO
下载数据集
由于数据集比较大(1.8G),使用续传分段下载
wget -c rpg.ifi.uzh.ch/datasets/airground_rig_s3_2013-03-18_21-38-48.bag
新建终端,使用准备好的launchfile启动SVO
cd catkin_ws
source devel/setup.bash
roslaunch /home/<用户名>/catkin_ws/src/SVO/rpg_svo/svo_ros/launch/test_rig3.launch
新建终端,启动RVIZ (Robot Visualizer)
rosrun rviz rviz -d /home/<用户名>/catkin_ws/src/SVO/rpg_svo/svo_ros/rviz_config.rviz
新建终端,运行数据集
下载的数据集已放在catkin_ws文件夹下
cd catkin_ws
rosbag play airground_rig_s3_2013-03-18_21-38-48.bag
运行成功效果图如下:
等有时间,考虑用自己的摄像头试试,再作补充~