使用evo测评工具测评性能

2023-05-16

防止健忘
参考EVO工具github链接:link1
开源室内激光场景数据:link2

总体来说,evo是用于处理、评估和比较里程计和SLAM算法的轨迹输出。支持的轨迹文件格式:

  • Tum文件
  • Kitti文件
  • EuRoC MAV文件
  • ROS1和ROS2中带有geometry_msgs/PoseStamped, geometry_msgs/TransformStamped, geometry_msgs/PoseWithCovarianceStamped 或者 nav_msgs/Odometry 话题或 TF messages的bag文件格式

命令行接口主要从两类分:

  • 衡量标准

    • evo_ape:绝对位姿误差
    • evo_rpe:相对位姿误差
  • 工具

    • evo_traj:用于分析、绘制或导出一条或多条轨迹的工具
    • evo_res:用于比较来自evo_apeevo_rpe的一个或多个结果文件的工具
    • evo_fig:用于重新打开序列化图的工具(使用 --serialize_plot 保存)
    • evo_config:用于全局设置和配置文件操作的工具

基础用法命令行示例:

evo_traj kitti KITTI_OO_gt.txt -p
//绘制轨迹 轨迹的文件格式为kitti    evo_traj [轨迹格式] [轨迹记录文本] -p为显示图表结果

evo_traj kitti KITTI_OO_gt.txt -p --plot_mode=xz
//绘制轨迹 轨迹的文件格式为(以xz模式显示)

evo_traj kitti KITTI_OO_ORB.txt --ref=KITTI_OO_gt.txt -p --plot_mode=xz -a
//绘制两条轨迹:参考(ground truth)轨迹,和slam轨迹,轨迹的格式为kitti(以xz模式显示) -a(对齐)

evo_traj kitti KITTI_OO_ORB.txt KITTI_00_SPTAM.txt --ref=KITTI_OO_gt.txt -p -a --plot_mode=xz
//绘制多条轨迹:参考(ground truth)轨迹,轨迹1,轨迹2……轨迹的格式为kitti(以xz模式显示)

evo_traj tum our.tum --ref karto.tum -p --plot_mode=xy --align --t_offset=61101194.17 -s
//绘制两条轨迹,--t_offset是时间戳差值 --align是对齐(也可以直接-a) -s用于相机尺度不确定性,缩放

样图:

将轨迹插入到2d 地图中

evo_traj tum karto.tum --plot --plot_mode xy --ros_map_yaml karto_odomtry.yaml

在这里插入图片描述

误差对比:

evo_ape tum groundtruth.txt ORBSLAM2.txt -va --plot --plot_mode xyz

样图:

绘制绝对轨迹误差

evo_ape tum data.tum vio_loop.txt -r trans_part -v -as -p --save_results ./1.zip

-r表示ape所基于的姿态关系
-v表示verbose mode,详细模式

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

使用evo测评工具测评性能 的相关文章

  • 【计算机操作系统】(三)系统调用

    一 系统调用 用户接口分为命令接口 xff08 允许用户直接使用 xff09 和程序接口 xff08 允许用户通过程序间接使用 xff09 程序接口由一种系统调用组成 系统调用 是操作系统提供给应用程序 xff08 程序员 xff09 使用
  • ORA-28000错误的原因及解决办法

    当用Oracle数据库的时候 xff0c Oracle数据库时提示 ORA 28000 xff1a 帐号被锁定 导致出现改错误的原因是 xff1a 在oracle database 11g中 xff0c 默认在default概要文件中设置了
  • 常见的通信协议

    1 iic协议 物理层 特点 xff1a 1 支持多设备连接 xff0c 支持多通讯主机和从机 2 scl时钟线 sda数据线 所以是同步通信 3 通过地址访问不同设备 4 多主机使用时 xff0c 会使用仲裁方式选哪个设备 5 总线上使用
  • 计算机操作系统知识点总结(2.1.2)——进程的状态与转换

    进程的三种基本状态 xff1a xff08 1 xff09 运行态 xff1a 占有CPU xff0c 并在CPU上运行 xff08 单核处理机每一时刻最多只能有一个进程处于运行态 xff0c 双核环境下可以同时有两个进程处于运行态 xff
  • Daily practice——2021/1/31

    1 函数若无返回值 则它一定无形参 请问这个说法是正确的吗 xff1f 答 xff1a 这个说法不正确 一个函数可以有参数 xff0c 没有返回值 xff1b 可以没有参数 xff0c 有返回值 xff1b 可以没参数 xff0c 没返回值
  • 6.RTT-UART-串口接收不定长数据

    本期来分析一下串口接受不定长度数据的源码 xff0c 这个demo也在手册里面 xff0c 可以去手册上结合着API说明观看 先把代码粘出来 xff0c 后面对重点代码进行分析 程序清单 xff1a 这是一个串口设备接收不定长数据的示例代码
  • learn-AJAX(第一天)

    AJAX的简介 一 简介及其简单使用 1 概述 web程序最初的目的就是将信息放到公共的服务器上 xff0c 让所有的网络用户都可以通过浏览器进行访问 在此之前 xff0c 通过以下的方式可以使浏览器对服务器发送请求 xff08 无法通过编
  • 纯C++实现的HTTP请求(POST/GET)

    原文地址 xff1a http www cnblogs com lidabo p 6404533 html 纯C 43 43 实现的HTTP请求 xff08 POST GET xff09 xff0c 支持windows和linux xff0

随机推荐

  • 3--STM32多功能小车(6)--硬件电路连接

    1 电源及接线 xff1b 对于stm32和所用到的外设来说 xff0c 基本都要用5V作为输入电压 xff0c 但是市面上的电池基本没有是5V输出的 xff0c 但是却有12V的 xff0c 因此我们就需要采用12V转5V xff08 一
  • Unable to fit model using “lrm.fit”R语言使用logistic回归时

    当初笔者遇到这个错误时上网搜了常见办法 就是在lrm后面加参数 tol span class token operator 61 span span class token number 1e 9 span 或者加 maxit span c
  • 激光雷达RPLIDAR A1使用教程

    激光雷达RPLIDAR A1使用教程 一 雷达硬件连接 1 A1雷达包含组件 RPLIDAR A1开发套装包含了如下组件 xff1a o RPLIDAR A1模组 xff08 内置 PWM电机驱动器 xff09 o USB适配器 o RPL
  • 4G远程小车1-树莓派读取WTGPS+BD模块

    树莓派python读取WTGPS 43 BD模块 WTGPS 43 BD模块 模块可以通过type C线连接 xff08 自带ch430芯片 xff09 USB口 xff1b 也可以通过串口与硬件串口号相连接 IPX天线接头为IPX1代 连
  • 3.ROS&PX4--PX4环境部署

    部署PX4 amp ROS开发环境 1 安装mavros Noetic版本 span class token function sudo span span class token function apt get span span cl
  • 4.ROS&PX4--运行官方offboard起飞程序

    1 创建空间 span class token function mkdir span catkin ws span class token builtin class name cd span catkin ws span class t
  • 5.ROS&PX4--offboard模式多航点代码编写

    4 ROS amp PX4 offboard模式多航点代码编写 offboard模式多航点代码编写等待更新 offboard模式多航点代码编写 等待更新 span class token comment 64 file offb node
  • Canal安装和配置,实现监听binlog日志

    1 下载canal Release v1 1 5 alibaba canal GitHub 2 直接解压 windows和linux下都是一样 3 conf example目录下 xff0c 编辑instance propertities
  • 看论文需要用到的一些专业词汇【SOTA,Benchmark,Baseline】

    看论文需要用到的一些专业词汇 SOTA Benchmark Baseline 1 SOTA2 Benchmark xff08 基准 xff09 Baseline 基线 1 SOTA SOTA实际上就是State of the arts 的缩
  • STM32中断-外部中断

    STM32中断 外部中断配置 外部中断配置 1 配置向量中断控制器NVIC xff0c 设置中断优先级 a 配置优先级组别 b 配置相关结构体参数 中断源 抢占优先级 子优先级 c 使用函数写入参数 代码参考如下 span class to
  • Ubuntu20 网络助手无法运行

    最近开始正式啃python高级教程 xff0c 遇到第一个问题 xff0c Ubuntu20版本下 xff0c 网络助手安装后 xff0c 点击开启无反应 经过好几天晚上的折腾 xff0c 终于搞定 xff0c 贴下解决过程 Step1 终
  • 通过服务器搭建一个短视频系统(含推荐算法)

    一 前端开发 前端使用的是uni app框架 xff0c 用到的开发软件是HBuiderx xff0c 前端界面如下所示 xff1a 主要包括五大功能 xff0c 一是热门视频展示 xff08 用到了热门视频推荐算法 xff09 个人推荐视
  • 【已解决】error: ‘CV_GRAY2BGR’ was not declared in this scope

    这是运行高翔 slambook2 代码出现的问题 xff0c 有两种方法解决 error CV GRAY2BGR was not declared in this scope home diyu slambook2 ch8 optical
  • 镜像备份工具rsync

    文章目录 1 概述2 rsync的认证协议3 rsync命令详解4 rsync 43 inotify 1 概述 什么是rsync xff1f rsync 即 Remote Sync 是linux系统下的数据镜像备份工具 使用rsync可以远
  • 系统调用的理解

    文章目录 系统调用什么是系统调用系统调用的分类系统调用与库函数的区别 系统调用 什么是系统调用 什么是系统调用 xff1f 答 操作系统的接口函数是连接应用软件与操作系统的中间桥梁 xff0c 系统调用其实就是操作系统提供给应用程序的接口函
  • ROS与C++入门教程(记录步骤)(一)

    ROS与C 43 43 入门教程 xff08 记录步骤 xff09 0 记录学习生活1 构建工作空间1 1 建立工作空间1 2 设置成自动加载环境 2 构建Catkin包2 1 构建2 2 查看程序包依赖关系2 3 解读package xm
  • C语言:全局变量在多个c文件中公用的方法

    用C语言编写程序的时候 xff0c 我们经常会遇到这样一种情况 xff1a 希望在头文件中定义一个全局变量 xff0c 然后包含到两个不同的c文件中 xff0c 希望这个全局变量能在两个文件中共用 举例说明 xff1a 项目文件夹proje
  • 迭代器(iterator)看这篇就够了

    文章目录 前言一 迭代器是什么二 迭代器如何使用2 1 迭代器正常遍历集合2 2 完全版迭代器可以一边遍历一边删除元素2 3 简易版迭代器 总结 前言 迭代器很重要 xff0c 是遍历线性数据结构 xff08 链表 xff09 的重要方法之
  • Jquery 获取元素属性值

    获取属性 获取内置属性获取自定义属性prop value name value attr value name value jquery中内置属性只能用来获取内置 自定义只能用来获取内置 内置属性 span class token func
  • 使用evo测评工具测评性能

    防止健忘 参考EVO工具github链接 xff1a link1 开源室内激光场景数据 xff1a link2 总体来说 xff0c evo是用于处理 评估和比较里程计和SLAM算法的轨迹输出 支持的轨迹文件格式 xff1a Tum文件Ki