ubuntu18.04运行vins-fusion跑通自己的数据集

2023-05-16

博主是双目加imu

命令:(一定要记得改成自己的路径哦~)

cd ~/catkin_ws/

source devel/setup.bash

roslaunch vins vins_rviz.launch

source ~/catkin_ws/devel/setup.bash

rosrun vins vins_node ~/catkin_ws/src/vins_fusion/config/realsense_d435i/realsense_stereo_imu_config.yaml

source ~/catkin_ws/devel/setup.bash

rosrun loop_fusion loop_fusion_node ~/catkin_ws/src/vins_fusion/config/realsense_d435i/realsense_stereo_imu_config.yaml

rosbag play ~/catkin_ws/src/vins_fusion/bag/zoulang1.bag

代码修改:

visualization.cpp155行左右

// write result to file

ofstream foutC(VINS_RESULT_PATH, ios::app);

foutC.setf(ios::fixed, ios::floatfield);

foutC.precision(6);

foutC << header.stamp.toSec() << " ";

foutC << estimator.Ps[WINDOW_SIZE].x() << " "

<< estimator.Ps[WINDOW_SIZE].y() << " "

<< estimator.Ps[WINDOW_SIZE].z() << " "

<< tmp_Q.x() << " "

<< tmp_Q.y() << " "

<< tmp_Q.z() << " "

<< tmp_Q.w() << endl;

foutC.close();

Eigen::Vector3d tmp_T = estimator.Ps[WINDOW_SIZE];

printf("time: %f, t: %f %f %f q: %f %f %f %f \n", header.stamp.toSec(), tmp_T.x(), tmp_T.y(), tmp_T.z(),

tmp_Q.w(), tmp_Q.x(), tmp_Q.y(), tmp_Q.z());

pose_graph.cpp182行左右

if (SAVE_LOOP_PATH)

{

ofstream loop_path_file(VINS_RESULT_PATH, ios::app);

loop_path_file.setf(ios::fixed, ios::floatfield);

loop_path_file.precision(6);

loop_path_file << cur_kf->time_stamp << " ";

loop_path_file << P.x() << " "

<< P.y() << " "

<< P.z() << " "

<< Q.x() << " "

<< Q.y() << " "

<< Q.z() << " "

<< Q.w() << endl;

loop_path_file.close();

}

pose_graph.cpp828行左右

if (SAVE_LOOP_PATH)

{

ofstream loop_path_file(VINS_RESULT_PATH, ios::app);

loop_path_file.setf(ios::fixed, ios::floatfield);

loop_path_file.precision(6);

loop_path_file << (*it)->time_stamp << " ";

loop_path_file << P.x() << " "

<< P.y() << " "

<< P.z() << " "

<< Q.x() << " "

<< Q.y() << " "

<< Q.z() << " "

<< Q.w() << endl;

loop_path_file.close();

}

一开始参考的这篇博客,把我害惨了。反正谢谢学长了,大家不要盲目跟着他的改,可以参考我的斟酌一下怎么改

https://blog.csdn.net/qq_38364548/article/details/123669506?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522167980864316800188528976%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fall.%2522%257D&request_id=167980864316800188528976&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~all~first_rank_ecpm_v1~rank_v31_ecpm-2-123669506-null-null.142^v76^insert_down38,201^v4^add_ask,239^v2^insert_chatgpt&utm_term=18.04vins-fusion&spm=1018.2226.3001.4187

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

ubuntu18.04运行vins-fusion跑通自己的数据集 的相关文章

随机推荐

  • SG90 180°舵机的使用

    SG90 180 舵机的使用 SG90的介绍 舵机是一种位置 xff08 角度 xff09 伺服的驱动器 xff0c 适用于需要角度不断变化并可以保持的控制系统 xff0c 可以根据控制信号来输出指定的角度 xff08 常见的有0 90 0
  • 蓝牙模块的使用

    蓝牙模块的连接与使用 蓝牙模块的介绍 蓝牙模块可通过与单片机的串口相连 xff0c 借助电脑或手机的蓝牙与单片机实现异步全双工通信 常见的蓝牙模块有HC 05主从一体蓝牙模块 HC 06从机蓝牙模块 低功耗BLE蓝牙模块 cc2540或cc
  • PID算法的原理和公式

    PID算法的原理和公式 64 PID PID算法原理 P xff1a 即Proportion xff0c 输入偏差乘以比例常数I xff1a 即Integral xff0c 对输入偏差进行积分运算D xff1a 即Derivative xf
  • PID控制器中的常见问题

    PID控制器中的常见问题 64 PID PID各部分的作用 P控制器 P控制器不能让稳态误差为零 xff0c 然而随着增大 K p Kp K p 参数 xff0c 可以减小稳态误差 稳态误差是系统从一个稳态过渡到新的稳态 xff0c 或系统
  • PID串级控制

    PID串级控制 64 PID 串级控制的基本环路模型 串级控制包含了主控制器和从控制器两个独立的部分 xff0c 其中从控制器的控制变量是由主控制器回路得到的 xff0c 主控制决定了次控制回路的设定值 即从控制器的设定值是主控制器的的输出
  • ocos 信号量

    信号量分为 xff1a 声明信号量 互斥信号量 转 xff1a ucos ii学习笔记 信号量的原理 ucos ii学习笔记 信号量的原理及使用 include 34 INCLUDES h 34 define TASK STK SIZE 5
  • PID调谐方法:根据开环响应特性调谐(一)

    PID调谐方法 xff1a 根据开环响应特性调谐 xff08 一 xff09 64 PID Ziegler Nichols method xff1a 首先将积分和微分增益设置为0 xff0c 然后比例增益从零开始逐渐增加 xff0c 直到到
  • PID调谐方法:根据开环响应特性调谐(二)

    PID调谐方法 xff1a 根据开环响应特性调谐 xff08 二 xff09 64 PID 齐格勒 尼科尔斯和科恩 库恩方法的一个问题是 xff0c 它们会产生一组相当激进的增益 xff0c 这可能导致不稳定 xff08 或稳定性裕度降低
  • STM32 串口的使用

    STM32 串口的使用 以串口调试助手为例 64 STM32基本外设 串口介绍 USART Universal Synchronous Asynchronous Receiver and Transmitter 通用同步异步收发器 是一 个
  • 中断里使用延时函数

    中断里使用延时函数 64 STM32和MSP432常见问题 STM32 在实际应用中发现 xff0c 在STM32的中断里使用延时函数HAL Delay Delay 容易出现问题 与SysTick中断的优先级 xff0c 故采用while
  • Python中的PID库

    Python中的PID库 64 树莓派学习笔记 PID 加入了条件积分抗积分饱和 xff0c 加入了一阶低通滤波滤除高频噪声 链接 xff1a https github com EduardoNigro Things DAQ Code bl
  • 数字信号处理上机实验一

    数字信号处理上机实验一 给定信号 x n 61
  • 如何使用arduino 更改传感器寄存器的内容,这里以更改MLX90614的地址为例

    这里参考了这篇文章 xff08 ARDUINO使用MLX90614红外温度传感器研究笔记 雨田大大的博客 CSDN博客 mlx90614红外传感器 xff09 xff0c 构建了一个修改地址的程序关于crc校验的部分 xff08 CRC x
  • linux网络编程之udp

    这里写目录标题 UDP服务器代码UDP客服端代码结果 UDP服务器代码 ucp ser c span class token macro property span class token directive hash span span
  • 【Jetson Orin NX 开发板烧录启动系统】

    64 英伟达Jetson Orin NX 开发板上市有一段时间了 xff0c 其中16G套件能提供100TOPS算力 xff0c 性能是上一代Jetson Xavier NX 的 5 倍 其启动系统安装于之前Jetpack SD 烧录完全不
  • 起航-GitLens使用

    目录 GitLens 插件功能介绍准备工作开始使用加入暂存区 xff0c 和取消修改操作取消暂存区 xff0c 取消add操作加入到本地分支 xff0c 提交到远程提交记录远程被修改提示分支合并功能管理所有分支记录工作区暂存 GitLens
  • 在Docker环境下使用ROS

    在Docker环境下使用ROS Docker安装 参考 https docs docker com install linux docker ce ubuntu 卸载老旧版本 sudo apt get remove docker docke
  • 嵌入式linux项目之智能仓储(基于正点原子IMX6ULL开发板)

    基于正点原子的IMX6ULL开发板的智能仓储项目 提示 xff1a 该项目根据华清远见智能仓储项目改版 xff0c 将他的A9开发板换成了自己的IMX6ULL开发板 同时等我将该项目整个流程完成之后 xff0c 会为大家附上适配正点原子li
  • STM32电路知识学习

    STM32最小系统板电路知识学习 单片机最小系统是指用最少的电路组成单片机可以工作的系统 xff0c 通常最小系统包含 xff1a 电源电路 时钟电路 复位电路 调试 下载电路 xff0c 对于STM32还需要启动选择电路 总之 xff0c
  • ubuntu18.04运行vins-fusion跑通自己的数据集

    博主是双目加imu 命令 xff1a xff08 一定要记得改成自己的路径哦 xff09 cd catkin ws source devel setup bash roslaunch vins vins rviz launch source