Ubuntu 16.04 上用RealSense ZR300跑Vins Mono

2023-05-16

Ubuntu 16.04 上用RealSense ZR300跑Vins Mono

这篇博客主要讲使用RealSense ZR300运行Vins Mono,主要包括:(1)ROS上RealSense ZR300驱动的安装;(2)Vins Mono的安装。


ROS上RealSense ZR300驱动的安装

这里使用的ROSRealSense的驱动是eth-asl的maplab_realsense,这个程序对IMU的陀螺仪、加速度计、图像的时间戳做了对齐处理。通过实验发现,RealSense ZR300的加速度计和陀螺仪的时间戳不是完全相同的(这个博客里面的RealSense ZR300的简单采集程序输出信息反应了这一现象),这主要是由于RealSense ZR300的加速度计的频率为250Hz而陀螺仪的频率为200Hz(参考librealsenseIssue,戳这里),但是由于RealSense ZR300的时间戳是在硬件上打的,不是操作系统接收到到图像和IMU的时间戳,所以可以通过插值的方式使它们的时间戳对齐。下面介绍maplab_realsense的配置。

  • 安装maplab_realsense
cd path_to_catkin_ws_src
git clone https://github.com/catkin/catkin_simple 
git clone https://github.com/ethz-asl/glog_catkin
git clone https://github.com/ethz-asl/gflags_catkin
git clone https://github.com/ethz-asl/eigen_catkin
git clone  https://github.com/ethz-asl/cuckoo_time_translator.git
git clone https://github.com/ethz-asl/maplab_realsense.git
sudo apt-get install autoconf
sudo apt install ros-kinetic-librealsense
sudo apt-get install python-catkin-tools # 安装catkin编译工具
cd ..
catkin build
  • 运行maplab_realsense

    编译之后,使用下面的命令运行maplab-realsense

    source devel/setup.bash
    roslaunch maplab_realsense maplab_realsense.launch

    运行正常会出现下面的结果:
    这里写图片描述
    如果出现错误信息,可以多尝试运行几次。

ROS上安装Vins-Mono

下面介绍Vins-Mono的安装,参考Vins-MonoReadme

  • 依赖项安装
    Vins-Mono需要安装的依赖项为ceres-solver,安装ceres-solver 的命令为:

    sudo apt-get install libgoogle-glog-dev
    sudo apt-get install libatlas-base-dev
    sudo apt-get install libeigen3-dev
    git clone https://github.com/ceres-solver/ceres-solver
    cd ceres-solver
    mkdir build
    cd build 
    cmake ..
    make -j4
    sudo make install 
  • Vins-Mono编译
    catkin_ws的顶层目录上,输入catkin build编译Vins-Mono。如果电脑的内存只有4G,可以使用catkin build -j1编译,否则很容易报编译错。

  • 运行Vins-Mono
    需要修改Vins-Monoconfig/realsense/realsense_fisheye_config.yaml文件中IMUImagetopic/zr300_node/imu/zr300_node/fisheye/image_raw,然后修改estimate_extrinsic1(也可以使用官方给出的结果,然后设置为0),标定参数可以不需要修改(当然为了更高的精度,可以使用camodocal进行标定),然后运行Vins-Monoestimatorrviz

    cd path_to_catkin_ws
    source devel/setup.bash
    roslaunch vins_estimator realsense_fisheye.launch
    cd path_to_catkin_ws  # on new terimal
    source devel/setup.bash
    roslaunch vins_estimator vins_rviz.launch

    这是实验结果,精度看起来还不错,后续会尝试提高精度和对Vins-Mono的代码进行分析、改进。
    这里写图片描述

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

Ubuntu 16.04 上用RealSense ZR300跑Vins Mono 的相关文章

随机推荐

  • Sqlite远程连接数据

    Sqlite远程连接数据 1 连接本地数据库 QSqlDatabase db 61 QSqlDatabase addDatabase 34 QSQLITE 34 db setDatabaseName 34 personnel db 34 d
  • 基于Tiny210开发板视频显示

    基于Tiny210开发板视频显示 1 写基于V4L2编程 61 61 61 61 61 61 61 61 videodevice h文件 61 61 61 61 61 61 61 61 61 ifndef VIDEODEVICE H def
  • 纯C++去雾算法

    去雾算法 前言 xff1a 经过不断的改进研究 xff0c 该算法终于稳定 xff0c 高效的问世了 xff01 经过研究使该算法适应大雾环境 xff0c 对该算法的内存优化 xff0c 能够实时的高效的运行 一 实时视频 xff1a 二
  • 致院长的一封信

    致院长的一封信 行了一路 xff0c 梦了一路 xff0c 念了一路 xff0c 伤了一路 xff0c 青春的此岸 xff0c 我眉心微蹙 xff0c 聆听清风诉说着经年的过往 xff1b 走了一路 xff0c 赏了一路 xff0c 听了一
  • LINUX字符设备驱动程序实例

    我是通过UBUNTU10 10测试该驱动程序的 xff0c 系统内核为linux 2 6 35 22 可使用uname r 命令来查看当前内核的版本号 下载安装LINUX内核 xff0c 需要下载和本机一样版本的内核源码 1 xff0c 安
  • c++多态总结

    今天来总结一些c 43 43 中 xff0c 有关多态的知识 多态 xff1a 多态可以简单地概括为 一个接口 xff0c 多种方法 xff0c 程序在运行时才决定调用的函数 xff0c 它是面向对象编程领域的核心概念 接下来 xff0c
  • 600词汇过四级

    600 词汇过四级 A 1 abandon vt 抛弃 xff0c 放弃 abandon oneself to despair 陷于绝望 xff1b abandon oneself to failures 自暴自弃 2 abrupt adj
  • 华清远见c语言学习笔记四

    test c Created on Jun 29 2012 Author 孙旭 华清远见实验室 1 include lt stdio h gt include lt stdlib h gt include lt string h gt in
  • 华清远见c语言学习笔记六

    test c Created on Jun 29 2012 Author 孙旭 华清远见实验室 1 include lt stdio h gt 找出一个字符串中的数字 include lt string h gt int main char
  • c++示例代码-友元

    一 友元函数 include lt iostream h gt include lt math h gt class Point Point类声明 public 外部接口 Point int xx 61 0 int yy 61 0 X 61
  • C/C++空指针总结

    在C中 在C中 xff0c 使用NULL表示空指针 xff0c 实际上 xff0c NULL被定义为 xff1a define NULL void 0 其中 void 0 表示对 0 进行强制转换 xff0c 转换为一个void类型的指针
  • Windows11镜像下载及安装

    现在微软已正式推出Windows 11预览版系统 xff0c 目前最新系统版本是22000 71 xff0c 正式版可能会在10月份推出 xff0c 届时拥有正版Windows 10系统的就可以通过Windows Update工具免费在线升
  • ROS2安装及基础知识介绍

    ros介绍 ROS xff08 Robot Operating System xff09 是一个开源的机器人操作系统 xff0c ROS系统是由大量节点组成 xff0c 其中任何一个节点都可以通过发布 订阅的方式与其他节点进行通信 举个栗子
  • Ubuntu Gnome GTK程序开机启动

    启动图标准备 GTK程序 开机启动需要首先制作desktop文件 例如 myapp autostart desktop 如下 xff1a Desktop Entry Encoding 61 UTF 8 Name 61 App Comment
  • 学习记录

    最近打算用visio画个流程图 xff0c 看看会不会遇到什么坑 1 最近打算用visio画几个流程图 xff0c 遇到什么问题在记录一番 2 分析学习一下系统权限的分配 xff0c 做到可以配置权限 xff0c 灵活一些 用户 gt 角色
  • 计算机专业学生,大三了找技术岗,怎么写一份好简历?内附269份简历模板

    计算机专业学生 xff0c 大三了找技术岗 xff0c 怎么写一份好简历 xff1f 内附269份简历模板 大家好 xff0c 我是好好学习 xff0c 天天编程的博主 xff0c 一个每天在互联网上种菜和砍柴的程序员 因为疫情的影响 xf
  • Digest Authentication 摘要认证(转载)

    原文 Digest Authentication 摘要认证 weixin 34007906的博客 CSDN博客 摘要 式认证 xff08 Digest authentication xff09 是一个简单的认证机制 xff0c 最初是为HT
  • 面试问到 Promise,这样回答最完美了

    promise是什么 xff1f Promise是异步编程的一种解决方案 xff0c 比传统的回调函数和事件更合理和强大 所谓Promise xff0c 简单来说就是一个容器 xff0c 里面保存着某个未来才会结束的事情 xff08 通常是
  • Linux编译安装内核

    0 前言 Linux系统中可同时安装多个内核镜像 xff0c 启动时选其一运行即可 xff0c Ubuntu14 04安装Linux内核 介绍了通过apt get工具安装内核的方法 xff0c 本文将介绍如果由源码安装新内核 验证版本 xf
  • Ubuntu 16.04 上用RealSense ZR300跑Vins Mono

    Ubuntu 16 04 上用RealSense ZR300跑Vins Mono 这篇博客主要讲使用RealSense ZR300运行Vins Mono xff0c 主要包括 xff1a xff08 1 xff09 ROS上RealSens