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.结果图


相关推荐
胡萝卜3.01 小时前
掌握C++ map:高效键值对操作指南
开发语言·数据结构·c++·人工智能·map
电子_咸鱼2 小时前
【STL string 全解析:接口详解、测试实战与模拟实现】
开发语言·c++·vscode·python·算法·leetcode
月夜的风吹雨4 小时前
【封装红黑树】:深度解析map和set的底层实现
c++·set·map·封装
列逍4 小时前
深入理解 C++ 智能指针:原理、使用与避坑指南
开发语言·c++
C语言小火车5 小时前
C/C++ 指针全面解析:从基础到进阶的终极指南
c语言·开发语言·c++·指针
wefg15 小时前
【C++】特殊类设计
开发语言·c++
帅中的小灰灰5 小时前
C++编程原型设计模式
开发语言·c++
凌康ACG6 小时前
Sciter窗口间状态事件交互(四)
c++·sciter
“αβ”6 小时前
MySQL库的操作
linux·服务器·网络·数据库·c++·mysql·oracle
月夜的风吹雨7 小时前
【 C++哈希容器】:unordered_map与unordered_set深度解析
c++·哈希算法·unordered_map·unordered_set