Ubuntu20.04运行R-VIO2

目录


1.环境配置

CMakeLists.txt中 C++ 使用 14、opencv使用4

2.构建项目

  1. 克隆代码库

    • 在终端中执行以下命令克隆项目:

      sh 复制代码
      git clone https://github.com/rpng/R-VIO2.git
  2. 编译项目

    • 使用 catkin_make 编译项目。在项目目录下执行以下命令:

      sh 复制代码
      cd <your_catkin_ws>  # 替换为你的 catkin 工作空间路径
      catkin_make
    • R-VIO2 提供两个执行文件:

      • rvio2_mono:用于实时运行 ROS bag 数据。
      • rvio2_mono_eval:用于评估目的,预先加载 ROS bag 并将其作为 txt 文件读取。

3. 运行 VIO 模式

R-VIO2 可以在 VIO 模式下运行,这种模式只估计导航过程中相对位姿。

  1. 启动 ROS 核心服务

    在终端中执行以下命令启动 ROS 核心服务:

    sh 复制代码
    roscore
  2. 启动 Rviz 可视化工具

    在另一个终端中,执行以下命令启动 Rviz 可视化工具,并打开配置文件:

    sh 复制代码
    rviz -d src/R-VIO2/config/rvio2_rviz.rviz

    在 Rviz 中加载项目中的配置文件(如 rvio2_rviz.rviz),用于可视化输出结果。

    这里只用Rviz时,不能可视化。

  3. 运行 rosbag 数据集

    在第三个终端中,使用以下命令播放 ROS bag 数据(例如 EuRoC 数据集):

    sh 复制代码
    rosbag play --pause V1_01_easy.bag

    可以根据需要跳过数据的开头部分,以避免由于初始状态不稳定而影响结果。

  4. 启动 R-VIO2

    在第四个终端中,使用以下命令启动 R-VIO2

    sh 复制代码
    roslaunch rvio2 euroc.launch

4.结果图


相关推荐
D_evil__11 小时前
【Effective Modern C++】第二章 auto:6. 当auto推导的类型不符合要求时,使用显式类型初始化习惯用法
c++
哈哈不让取名字12 小时前
基于C++的爬虫框架
开发语言·c++·算法
剑锋所指,所向披靡!14 小时前
C++之类模版
java·jvm·c++
C+-C资深大佬15 小时前
C++风格的命名转换
开发语言·c++
No0d1es15 小时前
2025年粤港澳青少年信息学创新大赛 C++小学组复赛真题
开发语言·c++
点云SLAM15 小时前
C++内存泄漏检测之手动记录法(Manual Memory Tracking)
开发语言·c++·策略模式·内存泄漏检测·c++实战·new / delete
好评12415 小时前
【C++】二叉搜索树(BST):从原理到实现
数据结构·c++·二叉树·二叉搜索树
zylyehuo15 小时前
error: no matching function for call to ‘ros::NodeHandle::param(const char [11], std::string&, const char [34])’
c++·ros1
星火开发设计16 小时前
C++ 函数定义与调用:程序模块化的第一步
java·开发语言·c++·学习·函数·知识
天赐学c语言16 小时前
1.20 - x的平方根 && vector的扩容机制以及删除元素是否会释放内存
c++·算法·leecode