SLAM测试5-YGZ-Stereo-Inertial(GAAS双目视觉ygz -立体惯性SLAM)

2023-05-16

这篇主要测试GAAS开源无人机里用到的一种SLAM算法,目的是先对该SLAM算法进行熟悉,再开始入手GAAS视觉定位。GIThub上的代码地址为:

https://github.com/gaoxiang12/ygz-stereo-inertial

这是ygz -立体惯性SLAM,立体惯性VO。它是专为立体声和立体声惯性传感器模块,如vi传感器。它采用LK光流作为前端,滑动窗口束调节作为后端。您可以在数据集和自己的传感器中随意尝试。由于手头还没有双目摄像头,打算先用数据集进行测试。

1. 安装依赖

如果使用ubuntu,只需输入“./install_dep”。安装除pangolin以外的所有依赖。或者可以单独安装:

  • Pangolin (for visualization): https://github.com/stevenlovegrove/Pangolin
  • Eigen3: sudo apt-get install libeigen3-dev
  • g2o: sudo apt-get install libcxsparse-dev libqt4-dev libcholmod3.0.6 libsuitesparse-dev qt4-qmake
  • OpenCV: sudo apt-get install libopencv-dev
  • glog (for logging): sudo apt-get install libgoogle-glog-dev

2. 编译

运行 "./generate.sh" 编译所有, 或者根据 generate.sh的单独编译。

3. 运行示例数据集

您可以将stereo或stereo-imu数据放入ygz-stereo中,例如EUROC数据集(http://projects.asl.ethz.ch/datasets/doku.php?id=kmavvisualinertialdatasets)。我们提供纯立体视觉和立体惯性视觉的EUROC。运行纯视觉的例子,键入:

bin/EurocStereo ./examples/EurocStereo.yaml

运行纯视觉模式。不要忘记先在.yaml配置文件中指定数据集目录。此外,要运行视觉惯性模式,请键入:  运行立体声VIO案例。

bin/EurocStereoVIO ./examples/EurocStereoVIO.yaml

 具体做法:

(1)根据数据集链接进去,下载MH第一个数据集,解压,将数据集放到/home/chen/catkin_ws3/src/ygz-stereo-inertial/data(这里因为我把ygz-stereo-inertial放在一个新建的工作空间catkin_ws3内进行编译的。)

a. 纯立体视觉数据集测试

更改./examples/EurocStereo.yaml中数据集地址,打开EurocStereo.yaml,将

# Dataset dirs
LeftFolder: /home/gaoxiang/dataset/euroc/V1_01_easy/cam0/data
RightFolder: /home/gaoxiang/dataset/euroc/V1_01_easy/cam1/data
TimeFolder: /home/gaoxiang/code/ygz-stereo-release/examples/EuRoC_TimeStamps/V101.txt

更改为:

# Dataset dirs
LeftFolder: /home/chen/catkin_ws3/src/ygz-stereo-inertial/data/mav0/cam0/data
RightFolder: /home/chen/catkin_ws3/src/ygz-stereo-inertial/data/mav0/cam1/data
TimeFolder: /home/chen/catkin_ws3/src/ygz-stereo-inertial/examples/EuRoC_TimeStamps/MH01.txt

然后,运行:

chen@chen:~/catkin_ws3/src/ygz-stereo-inertial$ bin/EurocStereo ./examples/EurocStereo.yaml
Illegal instruction (core dumped)

结果报错,比较难搞的问题,不知道怎么解决。。。。待续,如果谁有好的办法,希望留言???

b. 立体惯性视觉数据集测试

同理,将EurocStereoVIO.yaml中数据集位置更改为:

LeftFolder: /home/chen/catkin_ws3/src/ygz-stereo-inertial/data/mav0/cam0/data
RightFolder: /home/chen/catkin_ws3/src/ygz-stereo-inertial/data/mav0/cam1/data
IMUFolder:  /home/chen/catkin_ws3/src/ygz-stereo-inertial/data/mav0/imu0/data.csv
TimeFolder: /home/chen/catkin_ws3/src/ygz-stereo-inertial/examples/EuRoC_TimeStamps/MH01.txt

然后运行:

chen@chen:~/catkin_ws3/src/ygz-stereo-inertial$ bin/EurocStereoVIO ./examples/EurocStereoVIO.yaml
I1113 19:40:50.543462  9327 System.cpp:54] YGZ system all ready, waiting for images ...
I1113 19:40:51.003077  9327 TrackerLK.cpp:63]

********* Tracking frame 0 **********
I1113 19:40:51.003176  9327 TrackerLK.cpp:92] Detecting features
I1113 19:40:51.003190  9327 ORBExtractor.cpp:469] Calling fast single level
Illegal instruction (core dumped)

分析原因,可能我的笔记本配置的问题。所以下次打算换个笔记本试试。

 

 

 

 

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

SLAM测试5-YGZ-Stereo-Inertial(GAAS双目视觉ygz -立体惯性SLAM) 的相关文章

  • Linux 命令 cp mv 花括号用法

    Linux 命令行使用 mv 重命名文件时 xff0c 巧妙的使用 可以很方便 xff0c 最常见的就是把一个文件加个后缀临时备份 例如 xff1a span class token function mv span files local
  • FreeRTOS的调度器源码分析及系统滴答SysTick

    1 PendSV系统调用 查遍了C站上所有关于FreeRTOS调度器的分析 xff0c 发现大家分析完vTaskStartScheduler 之后就戛然而止了 xff0c 我就会比较迷糊 xff0c 这个仅开启了调度器的调度 xff0c 而
  • 从零适配IMX6ULL开发板Linux系统——uboot移植

    串口驱动搜 CP210 下载 目的 xff1a 当拿到一块儿完全没有系统的开发板 xff0c 厂家并没有提供给我们对应的Linux系统 xff0c 从芯片厂家提供的原厂资料中 xff0c 修改并适配自己的开发板 我们需要做的步骤如下 xff
  • NXP IMX6ULL芯片时钟系统全概况

    本文主要针对IMX6ULL芯片的时钟系统进行分析 xff0c 并没有针对哪款开发板 xff0c 毕竟是芯片的问题 一 硬件原理图分析 对于IMX6ULL芯片有两个时钟源 xff0c 我使用的开发板是百问网IMX6ULL xff0c 其他IM
  • 【FreeRTOS】FreeRTOS内存管理的五种方式

    内存管理 1 FreeRTOS为什么要实现自己的内存管理 内存的动态管理是C语言程序的知识范围 xff0c 并不属于FreeRTOS的知识范畴 xff0c 但是它跟FreeRTOS关系是如此紧密 在C语言的库函数中 xff0c 有mallc
  • 【存储】存储特性

    存储特性 精简配置技术 xff08 SmartThin xff09 SmartThin主要功能容量虚拟化存储空间写时分配 xff1a Capacity on Write读写重定向 xff1a Direct on Time应用场景及配置流程
  • 【存储】RAID0、RAID1、RAID3、RAID5、RAID6、混合RAID10、混合RAID50

    存储 RAID基本概念RAID数据组织形式RAID数据保护方式常用RAID级别与分类标准创建RAID组成员盘要求 热备盘 xff08 Hot Spare xff09 RAID 0的工作原理RAID 0的数据写入RAID 0的数据读取 RAI
  • 【存储】RAID2.0+、多路径技术、磁盘可靠性技术

    RAID2 0 43 RAID 2 0 43 技术RAID技术发展RAID 2 0 43 软件逻辑对象RAID 2 0 43 基本原理硬盘域Storage Pool amp TierDisk Group xff08 DG xff09 LD
  • http请求digest auth认证

    1 post请求 public static String postMethod String url String query String host throws IOException String content 61 null 认
  • npm install 报错? fs 不能被resolve ?

    先看一下报错信息 然后我按照他的提示去 node modules 里面找到对应文件 xff0c 注释掉 fs 相关就ok了 可是这样毕竟不雅 经过苦苦寻找 xff0c 终于找到原因了 在 webpack config js 中添加如下 与
  • 树莓派3B+安装Ubuntu16.04系统(64位)

    目录 系统下载 Ubuntu16 04系统 补丁 刷系统 换源 改DNS网关 无线 U盘挂载 原文 系统下载 感谢公众号 xff1a 树莓派爱好者基地 更多系资源请关注公众号 Ubuntu16 04系统 链接 xff1a https pan
  • 将浏览器请求直接导入到 Postman Apifox 中

    方法就是如下图所示 xff0c 好像不需要过多文字来赘述了 应用场景就是浏览器 F12 debug 到的请求 xff0c 可以直接拷贝为 cURL 请求 xff0c 拷贝的内容 xff0c 包含了 请求头 参数 请求体所有内容 xff0c
  • SMPL-论文解读

    文章目录 创新点算法shape blend shape xff1a pose blend shapeJoint locationSMPL model 训练过程Pose Parameter Trainingjoint regressorSha
  • Jetson Xavier NX 刷机烧录及备份还原

    文章目录 前言一 准备二 详细流程1 准备OS升级包2 主机和Jetson产品连接3 系统安装4 载入镜像5 提取 Jeston Xavier NX 母板镜像5 1 在PC端搭建烧录环境5 2 提取镜像 6 镜像还原 xff08 批量复制烧
  • 第二章.1节 进程基本概念

    xff08 PS xff1a 个人课下整理的操作系统笔记 xff0c OneNote直接拷贝过来的 xff0c 图片看不了就将就一下 xff0c 配合张伟老师的PPT看效果更好 xff09 一 进程定义 1 进程是具有某一个功能的程序 在某
  • 使用bladeRF和树莓派+YateBTS做GSM基站

    个人出于对无线电的好奇加入了gnuradio的学习 本次测试是基于以下链接网址内容进行的相关测试 xff1a https www freebuf com geek 102729 html 我的安装步骤是一个大神给我找的 xff1a http
  • linux中使用crontab添加定任务执行失败,提示Permission denied

    问题 xff1a 在linux中 xff0c 使用普通账户创建定时任务执行shell脚本时 xff0c 任务会自动执行 xff0c 但总执行失败 xff08 shell脚本编写确认无误 xff09 如下 xff1a 使用sudo cront
  • Win10 USB转串口连接Linux主机调试

    先梳理一下Linux里的console和tty这两个概念 xff1a Console 控制台 xff0c 用于接收所有的内核消息 xff0c 告警 xff0c 允许用户log in 只有text模式 xff0c 也就是说 xff0c 用户通
  • FreeRTOS:卡在configASSERT( ( pxQueue ) )问题的解决

    使用二值信号量过程中 xff0c 刚开始程序还是正常运行 xff0c 一段时间后出现了死机 通过仿真发现程序卡在了 xQueueSemaphoreTake 函数的 configASSERT pxQueue 中 通过查看 xQueueSema
  • 记录复现“VIBE”遇见的BUG

    docker配置 xff1a ubuntu18 01 xff0c cuda10 1 输入视频测试demo时 xff0c 依次遇见下列问题 第一个问题 39 EGL span class token punctuation span cann

随机推荐

  • 软件专业大学生常用的刷题、找答案、找资源的网站

    接下来介绍的主要是结合个人和身边同学经常使用的几个网站 xff0c 肯定有很多不全 xff0c 欢迎大佬们查漏补缺 刷题 一 牛客网 xff08 https www nowcoder com xff09 牛客网 是一个专注于程序员的学习和成
  • Linux设备驱动

    Linux设备驱动 介绍 Linux系列文章记录自己学习Linux开发的历程 最近终于把迅为4412开发环境搞定了 xff0c 先吐槽一波迅为 xff0c 版本太 的多了 xff0c 安卓Linux搞在一起 xff0c 还有那个硬件原理图
  • Linux 磁盘坏块修复处理(错误:read error: Input/output error)

    当磁盘出现坏块时 xff0c 你对所关联的文件进行读取时 xff0c 一般会出现 read error Input output error 这样的错误 反过来讲 xff0c 当你看到 read error Input output err
  • docker给运行中的容器添加端口映射

    问题描述 docker上面运行容器 xff0c run p 的时候只映射了一个端口 xff0c 后面对该nginx做扩展 xff0c 需要开放其他端口 当然重新再启一个容器在docker启动参数里多配置几个 p端口映射是能解决的 xff0c
  • Git常用命令符

    1 强制推送 xff08 慎用 xff0c 除非你认为其他冲突等可以丢弃 或者不是很重要 xff09 git push force 2 创建文件等小命令 touch a 创建一个a文件 echo 1234 gt gt a 把1234这个内容
  • 全网最全的 LeetCode 国人大神刷题指南,全部 Go 语言实现

    大家好 xff0c 我是欧盆索思 xff08 opensource xff09 xff0c 每天为你带来优秀的开源项目 xff01 说到 LeetCode xff0c 作为一个程序员来说 xff0c 应该不陌生 xff0c 近几年参加面试都
  • ROS实现串口通信

    虚拟串口的搭建 参考Linux下添加虚拟串口 xff0c 接收和发送数据 com py文件代码如下 xff1a span class token comment usr bin env python span span class toke
  • 基于Linux的UART驱动框架源码分析笔记

    文章目录 前言一 I MX6ULL串口接收和发送方式1 非DMA方式1 1 接收方式1 2 发送方式 2 DMA方式2 1 接收方式2 2 发送方式 二 UART驱动注册1 uart register driver 函数解析2 serial
  • cmake install 命令

    install指令用于定义安装规则 xff0c 安装的内容可以包括目标二进制 动态库 静态库以及文件 目录 脚本等 需要引入一个新的cmake指令和一个非常有用的变量 cmake install prefix 法一 xff1a cmake
  • 基于全景相机的视觉里程计算法研究

    一 视觉里程计 视觉里程计技术首先建立相机的成像模型 xff0c 接着通过标定算法计算相机参数 xff0c 最后建立相邻图像的关联并估计相机运动轨迹 1 1相机在空间中运动的描述 描述相机在三维空间中的运动状态 xff0c 即求解相机在空间
  • 多旋翼无人机组成(小白上路)

    1 无人机组成 1 1 机架 四旋翼最常见的两种机身布局如下图 xff1a 机架指无人机的承载平台 xff0c 通常用轴距衡量机架的大小 xff0c 轴距是指对角线两个螺旋桨的距离 xff0c 一般以mm为单位 xff0c 如F330表示轴
  • freertos创建任务后进入prvStartFirstTask发生HardFault_Handler中断

    在stm32f103zet6环境中移植成功freertos之后 xff0c 创建第一个任务之后 xff0c 会进入硬件中断 xff0c 经过排查发现死在了prvStartFirstTask 排查原因 xff1a 发现是启动文件startup
  • 解决无法对docker容器进行端口映射的问题

    初学docker的时候 xff0c 不知道为啥 xff0c 按着教程里打的代码 xff0c 最后却出现了映射失败的情况 即 xff1a 在docker内部设置的映射端口 xff0c 外部却没有办法访问 想了想 xff0c 不外乎两个原因 x
  • K8s手工创建kubeconfig

    我们通过 kubectl 命令行连接 k8s apiserver 时需要依赖 kubeconfig 文件 kubeconfig 文件通常包含了 context xff08 上下文 xff09 列表 xff0c 每个 context 又会引用
  • grep命令总结

    grep命令总结 1 关于 nbsp ps ef grep php grep v grep wc l grep v grep 代表在查询的最终结果中去掉grep命令本身 wc l 标示统计查询到的结果数量 grep常用命令 1 grep n
  • Ubuntu 16.04安装realsense D435i SDK以及realsense-ros

    先直接上一个报错信息 xff0c 折腾了半天才解决 在使用catkin make编译realsense ros时 xff0c 报错 traversing 4 packages in topological order realsense c
  • 关于视觉SLAM的一些常识(纯小白学习笔记)

    本文只是小白对于视觉slam的一个非常泛的介绍 xff0c 对于视觉slam中的数学运算均没有提及 xff0c 适合于对没有接触过视觉slam的新人进行一个简单的科普 作者即小白 xff0c 文章如有错误 xff0c 非常非常非常欢迎指正
  • 使用CubeMX快速搭建FREERTOS

    如何使用STM32快速搭建FREERTOS 小编之前一直使用正点原子家的产品 xff0c 最近准备学习学习TOUCHGFX 要用到HAL 43 RTOS 原子家的使用起来不方便 于是琢磨着使用STM32CUBEMX直接生成FREERTOS
  • 使用DMA+SPI驱动Aliyun Things 上的ST7789H2 LCD屏幕

    目录 前言硬件CUBEMX时钟树GPIOSPI 代码部分LCD驱动中断服务函数测试代码现象 前言 1 xff1a 驱动程序参考自https blog csdn net BearPi article details 104311705 2 x
  • SLAM测试5-YGZ-Stereo-Inertial(GAAS双目视觉ygz -立体惯性SLAM)

    这篇主要测试GAAS开源无人机里用到的一种SLAM算法 xff0c 目的是先对该SLAM算法进行熟悉 xff0c 再开始入手GAAS视觉定位 GIThub上的代码地址为 xff1a https github com gaoxiang12 y