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

本文详细介绍在Ubuntu16.04与ROSKinetic环境下,如何安装并配置Sophus、Fast、g2o和vikit等关键库,以及如何使用数据集运行SVO(半直接视觉里程计)。包括依赖项安装、数据集下载、运行步骤及可视化结果展示。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

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.youkuaiyun.com/ouyangandy/article/details/89634871

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值