Ubuntu16.04+ROS Kinetic:SVO(数据集运行)

Ubuntu16.04+ROS Kinetic:SVO(数据集运行)

Preparation:

  • 安装Ubuntu16.04
  • 搭建ROS Kinetic环境

主要内容:

  • 安装库
  • 用数据集跑SVO

安装依赖项过程:

  • 1.安装Sophus(这个库是维护的比较好的一个李群和李代数的库)
#catkin_ws 是自己创建的ROS工作空间,在之前的博客里面也有创建ROS工作空间教程
cd catkin_ws/src/SVO  #后面源代码拷贝到这个目录下,所以将svo需要的库也放在这里面
git clone https://github.com/strasdat/Sophus.git
cd Sophus
git checkout a621ff
mkdir build
cd build
cmake ..
make
  • 2.安装Fast(用于Fast角点提取的一个库)
cd catkin_ws/src/SVO
git clone https://github.com/uzh-rpg/fast.git
cd fast
mkdir build
cd build
cmake ..
make
  • 3. 安装g2o(一个非线性优化库,也和sophus一样,你大概率已经安装过,可选,但建议安装,至于环境变量,其实无需设置,执行完下面的命令即可)
cd catkin_ws/src/SVO
git clone https://github.com/RainerKuemmerle/g2o.git
cd g2o
mkdir build
cd build
cmake ..
make
sudo make install
  • 4.安装vikit(这个其实是视觉开发工具包,vision kit,尤其是pcl非常依赖这个库,强烈建议安装。但有时候不同的版本适配不同的slam系统。svo可以使用下面的安装方式)
cd catkin_ws/src/SVO
git clone https://github.com/uzh-rpg/rpg_vikit.git
  • 5.ROS的依赖项(主要是cmake-modules,我用的Ubuntu的版本是Ubuntu16.04+ros-kinetic)我之前并没有安装这个依赖项,发生了很多cmake-modules的问题,解决方式也很粗暴,找不到cmake-modules,那我就去对应的CMakeLists.txt删掉对cmake-modules的依赖,结果竟然编译运行成功了。)但为了以防万一,还是建议安装下面的依赖项。
sudo apt-get install ros-kinetic-cmake-modules

SVO跑数据集

  • 1.首先是数据集下载,强烈推荐分段续传的方式进行数据集下载,数据集较大,约1.7G,分段续传方式很快:
wget -c rpg.ifi.uzh.ch/datasets/airground_rig_s3_2013-03-18_21-38-48.bag
## 下载到catkin_ws目录下就可以
  • 2.打开新的终端
cd catkin_ws
source devel/setup.bash
roslaunch /home/<用户名>/catkin_ws/src/SVO/rpg_svo/svo_ros/launch/test_rig3.launch
  • 3.打开新的终端
rosrun rviz rviz -d /home/<用户名>/catkin_ws/src/SVO/rpg_svo/svo_ros/rviz_config.rviz
  • 4.打开新的终端,运行数据集
cd catkin_ws
rosbag play airground_rig_s3_2013-03-18_21-38-48.bag 

运行效果

在这里插入图片描述在这里插入图片描述在这里插入图片描述
具体方法

参考博客原址:https://blog.csdn.net/ouyangandy/article/details/89634871

发布了26 篇原创文章 · 获赞 0 · 访问量 1206

猜你喜欢

转载自blog.csdn.net/weixin_44264994/article/details/99961213