位置: IT常识 - 正文

轨迹误差评估指标[APE/RPE]和EVO[TUM/KITTI](轨迹评价)

编辑:rootadmin
轨迹误差评估指标 轨迹误差评估指标[APE/RPE]和EVO[TUM/KITTI]1. ATE/APE2. RPE3. SLAM 轨迹保存格式3.1 TUM3.2 KITTI4. EVO4.1 评估指标4.2 使用4.2.1 轨迹可视化4.2.2 APE4.2.3 RPE4.3 其他常用命令4.3.1 evo_traj4.4 其他参数

推荐整理分享轨迹误差评估指标[APE/RPE]和EVO[TUM/KITTI](轨迹评价),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:轨迹评价,轨迹测量,轨迹误差评估指标有哪些,轨迹分析报告,轨迹测量,轨迹误差评估指什么,轨迹误差评估指什么,轨迹误差评估指标有哪些,内容如对您有帮助,希望把文章链接给更多的朋友!

Reference:

高翔,张涛 《视觉SLAM十四讲》视觉SLAM基础:算法精度评价指标(ATE、RPE)

在实际工程中,我们经常需要评估一个算法的估计轨迹与真实轨迹的差异来评价算法的精度。真实轨迹往往通过某些更高精度的系统获得,而估计轨迹则是由待评价的算法计算得到的。考虑一条估计轨迹 Testi,iT_{esti,i}Testi,i​ 和真实轨迹 Tgt,iT_{gt,i}Tgt,i​,其中 i=1,⋅⋅⋅,Ni=1,\cdot\cdot\cdot,Ni=1,⋅⋅⋅,N,那么我们可以定义一些误差指标来描述它们之间的差别。

1. ATE/APE

《视觉SLAM十四讲》上的命名感觉跟 EVO 稍微有一点点区别,比如绝对轨迹误差(Absolute Trajectory Error, ATE): ATEall=1N∑i=1N∥log⁡(Tgt,i−1Testi ,i)∨∥22,\mathrm{ATE}_{\mathrm{all}}=\sqrt{\frac{1}{N} \sum_{i=1}^N\left\|\log \left(T_{\mathrm{gt}, i}^{-1} T_{\text {esti }, i}\right)^{\vee}\right\|_2^2},ATEall​=N1​i=1∑N​​log(Tgt,i−1​Testi ,i​)∨​22​​,这玩意儿应该就是 EVO 中的 绝对位姿误差(Absolute Pose Error, APE),后面这个概念统称 APE。

这个公式实际上是每个位姿李代数的均方根误差(Root-Mean-Squared Error, RMSE)。这种误差可以刻画两条轨迹的旋转和平移误差。同时,也有的地方仅考虑平移误差,从而可以定义绝对平移误差(Absolute Translational Error, ATE): ATEtrans =1N∑i=1N∥trans⁡(Tgt,i−1Test ,i)∥22\mathrm{ATE}_{\text {trans }}=\sqrt{\frac{1}{N} \sum_{i=1}^N\left\|\operatorname{trans}\left(\boldsymbol{T}_{\mathrm{gt}, i}^{-1} \boldsymbol{T}_{\text {est }, i}\right)\right\|_2^2}ATEtrans ​=N1​i=1∑N​​trans(Tgt,i−1​Test ,i​)​22​​其中 trans 表示取括号内部变量的平移部分。因为从整条轨迹上看,旋转出现误差后,随后的轨迹在瓶以上也会出现误差,所以两种指标在实际中都适用。

2. RPE

RPE 定义的是相对的误差。例如,考虑 iii 时刻到 i+Δti+\Delta ti+Δt 时刻的运动,那么相对位姿误差(Relative Pose Error, RPE)可定义为: RPEall =1N−Δt∑i=1N−Δt∥log⁡((Tgt,i−1Tgt,i+Δt))−1(Testi ,i−1Testi ,i+Δt))∨∥22,\mathrm{RPE}_{\text {all }}=\sqrt{\left.\frac{1}{N-\Delta t} \sum_{i=1}^{N-\Delta t} \| \log \left(\left(T_{\mathrm{gt}, i}^{-1} T_{\mathrm{gt}, i+\Delta t}\right)\right)^{-1}\left(T_{\text {esti }, i}^{-1} T_{\text {esti }, i+\Delta t}\right)\right)^{\vee} \|_2^2,}RPEall ​=N−Δt1​i=1∑N−Δt​∥log((Tgt,i−1​Tgt,i+Δt​))−1(Testi ,i−1​Testi ,i+Δt​))∨∥22​,​同样地,也可只取平移部分: RPEtrans =1N−Δt∑i=1N−Δt∥trans⁡((Tgt,i−1Tgt,i+Δt))−1(Testi ,i−1Testi ,i+Δt))∥22\mathrm{RPE}_{\text {trans }}=\sqrt{\left.\frac{1}{N-\Delta t} \sum_{i=1}^{N-\Delta t} \| \operatorname{trans}\left(\left(\boldsymbol{T}_{\mathrm{gt}, i}^{-1} \boldsymbol{T}_{\mathrm{gt}, i+\Delta t}\right)\right)^{-1}\left(T_{\text {esti }, i}^{-1} T_{\text {esti }, i+\Delta t}\right)\right) \|_2^2}RPEtrans ​=N−Δt1​i=1∑N−Δt​∥trans((Tgt,i−1​Tgt,i+Δt​))−1(Testi ,i−1​Testi ,i+Δt​))∥22​​

3. SLAM 轨迹保存格式3.1 TUM

TUM 数据集格式:timestamp tx ty tz qx qy qz qw

3.2 KITTI

KITTI 数据集格式:一行 121212 个数据,表示 Pose(R+t),可能还有另一个文件存放 timestamp

4. EVO

使用示例如下:

evo_ape kitti ground_truth.txt laser_odom.txt -r full --plot --plot_mode xyzevo_rpe kitti ground_truth.txt laser_odom.txt -r trans_part --delta 100 --plot --plot_mode xyz

evo_ape 的默认形式是 -r trans_part,即计算的是这里的 ATE,想要计算 APE,可以使用 -r full。

-r 用法:

-r full:表示同时考虑旋转和平移误差得到的ape,无单位(unit-less);-r trans_part:表示考虑平移部分得到的ape,单位为m;-r rot_part:表示考虑旋转部分得到的ape,无单位(unit-less);-r angle_deg:表示考虑旋转角得到的ape,单位°(deg);-r angle_rad:表示考虑旋转角得到的ape,单位弧度(rad);4.1 评估指标max:表示最大误差;mean:平均误差;median:误差中位数;min:最小误差;rmse:均方根误差;sse:和方差、误差平方和;std:标准差4.2 使用

可以先使用 EVO 仓库中自带的数据尝试

4.2.1 轨迹可视化cd test/dataevo_traj kitti KITTI_00_ORB.txt KITTI_00_SPTAM.txt --ref=KITTI_00_gt.txt -p --plot_mode=xz

轨迹误差评估指标[APE/RPE]和EVO[TUM/KITTI](轨迹评价)

其中:

–ref=ground_truth.txt:指明参考轨迹即真实轨迹;–plot或-p:表示画图;–plot_mode xy:表示图像投影在xoy平面上,其余可选参数为:xz,yx,yz,zx,zy,xyz。4.2.2 APE

evo_ape kitti KITTI_00_gt.txt KITTI_00_ORB.txt -va --plot --plot_mode xz --save_plot ./tra1plot --save_results ./tra1.zip

其中:

-v或–verbose:指明输出文件数据的相关信息;-a或–align:指明对轨迹进行配准;–save_plot ./tra1plot:表示保存生成的图片,./tra1plot 这里写自己保存的地址;–save_results ./tra1.zip:表示保存计算结果,./tra1.zip 这里写自己保存的地址。4.2.3 RPE

evo_rpe tum fr2_desk_groundtruth.txt fr2_desk_ORB.txt -va --plot --plot_mode xyz

4.3 其他常用命令

evo_traj - 用于分析,绘制或导出一个或多个轨迹的工具 evo_res - 用于比较evo_ape或evo_rpe一个或多个结果文件的evo_rpe evo_fig - 用于重新打开序列化图的(实验性)工具(使用–serialize_plot保存) evo_config - 全局设置和配置文件操作的工具

4.3.1 evo_traj

evo_traj 主要是用来画轨迹、输出轨迹文件、转换数据格式等功能。

绘制单个轨迹:

evo_traj euroc ground_truth.csv --plot

绘制多个轨迹:

evo_traj kitti KITTI_00_ORB.txt KITTI_00_SPTAM.txt --ref=KITTI_00_gt.txt -p --plot_mode=xz

轨迹尺度缩放 单目相机会存在尺度的不确定性,evo_traj 支持使用 -s或–correct_scale 参数进行Sim(3)上的对齐(旋转、平移与尺度缩放,能非常方便的用于 RTK/GNSS 对轮齿脉冲的标定)

格式转换 如将 EuRoC 转成 TUM 格式,输出为 data.tum:

evo_traj euroc data.csv --save_as_tum

4.4 其他参数–n_to_align n:对齐第一个轨迹前n个姿态。
本文链接地址:https://www.jiuchutong.com/zhishi/290847.html 转载请保留说明!

上一篇:【今日元宵节】祝大家平安健康,团团圆圆! (© Sino Images/Getty Images)(今日元宵节图片)

下一篇:html简洁风格的个人博客网站模板(源码)(html简单例子)

  • 苹果13promax怎么隐藏相册(苹果13promax怎么关机)

    苹果13promax怎么隐藏相册(苹果13promax怎么关机)

  • iphone11max上市时间(苹果11max什么时候降价)

    iphone11max上市时间(苹果11max什么时候降价)

  • iphone11没有耳机转换头(iphone11没有耳机孔怎么听歌)

    iphone11没有耳机转换头(iphone11没有耳机孔怎么听歌)

  • hp手提电脑无法启动(hp电脑无法正常启动怎么办)

    hp手提电脑无法启动(hp电脑无法正常启动怎么办)

  • 微信电话标志小图标怎么弄(微信上电话的标志)

    微信电话标志小图标怎么弄(微信上电话的标志)

  • 怎么设置不在群里显示微信号(怎么设置不在群里加好友)

    怎么设置不在群里显示微信号(怎么设置不在群里加好友)

  • dcs与plc的区别(dcs和plc关系)

    dcs与plc的区别(dcs和plc关系)

  • 手机显示电压过高怎么处理(手机显示电压过高是什么原因)

    手机显示电压过高怎么处理(手机显示电压过高是什么原因)

  • 电脑非正常关机后开不了机怎么办(电脑非正常关机后进不了系统)

    电脑非正常关机后开不了机怎么办(电脑非正常关机后进不了系统)

  • 为什么抖音不能拉进度(为什么抖音不能用qq登录)

    为什么抖音不能拉进度(为什么抖音不能用qq登录)

  • 手机屏幕刷新率什么意思(手机屏幕刷新率60hz够用吗)

    手机屏幕刷新率什么意思(手机屏幕刷新率60hz够用吗)

  • soul注销后界面是什么样(soul注销界面是什么样)

    soul注销后界面是什么样(soul注销界面是什么样)

  • 天气冷苹果手机耗电快怎么办(天气冷苹果手机耗电快)

    天气冷苹果手机耗电快怎么办(天气冷苹果手机耗电快)

  • 输入法震动怎么取消(输入法震动怎么关)

    输入法震动怎么取消(输入法震动怎么关)

  • 华为手机唤醒设置方法(华为手机如何设置手机唤醒功能)

    华为手机唤醒设置方法(华为手机如何设置手机唤醒功能)

  • 乐视手机怎么装内存卡(乐视手机怎么装apk)

    乐视手机怎么装内存卡(乐视手机怎么装apk)

  • 小米mix3怎么所有数据备份(小米mix3功能介绍视频)

    小米mix3怎么所有数据备份(小米mix3功能介绍视频)

  • QQ怎么拒接别人的消息(qq怎么拒绝别人来电)

    QQ怎么拒接别人的消息(qq怎么拒绝别人来电)

  • 苹果xr的a12是否降了频(苹果xr的a12芯片有缩水吗)

    苹果xr的a12是否降了频(苹果xr的a12芯片有缩水吗)

  • excel极差函数是什么(极差excel计算公式)

    excel极差函数是什么(极差excel计算公式)

  • 寻艺怎么签到(寻艺签到时间限制)

    寻艺怎么签到(寻艺签到时间限制)

  • 魅族16xs上市时间(魅族16s上市时间)

    魅族16xs上市时间(魅族16s上市时间)

  • 酷我音乐如何下载mp3(酷我音乐如何下载)

    酷我音乐如何下载mp3(酷我音乐如何下载)

  • 微信被冻结了钱怎么取出来(微信被冻结了钱显示没有了)

    微信被冻结了钱怎么取出来(微信被冻结了钱显示没有了)

  • 最奢华的iPad3是什么(ipad3性价比)

    最奢华的iPad3是什么(ipad3性价比)

  • 解决RTX 3090 with CUDA capability sm_86 is not compatible with the current PyTorch installation.(解决脱发的8个方法)

    解决RTX 3090 with CUDA capability sm_86 is not compatible with the current PyTorch installation.(解决脱发的8个方法)

  • phpcms v9后台不显示验证码(php页面出不来)

    phpcms v9后台不显示验证码(php页面出不来)

  • mysql数据库有什么特点(MySQL数据库有什么特点)

    mysql数据库有什么特点(MySQL数据库有什么特点)

  • 城镇土地使用税暂行条例
  • 如何记忆消费税15个税目
  • 补贴收入属于什么分配
  • 金蝶销售订单和采购订单关联
  • 开户以后不用要钱吗
  • 可转换公司债券属于哪一类金融资产
  • 门诊药房主要业务
  • 建筑行业新老项目对比
  • 公对公房产转让税费
  • 股东债权转资本公积利和弊
  • 个人交的工会经费个税
  • 当月认证的发票可以当月抵扣吗
  • 财会人员
  • 外籍人员劳务费税率表
  • 打印出来的明细账怎么装订
  • 普通发票和增值税发票都能报销吗
  • 小规模纳税人代理记账流程
  • 自有房产墙面出租,需要缴纳房产税吗?
  • 实收资本记错账如何调整账面价值
  • 公司账户流水要交税吗
  • 船舶维修价格表2017
  • 微众银行账户验证账户0019向您尾号677账户
  • 事业单位存货包括
  • 环保税计算方法和税率1.2
  • 劳务成本属于费用项目吗
  • 民办非企业捐赠支出会计处理
  • 重置组策略命令
  • 已计提折旧怎么计算
  • 引入人工智能
  • 报销差旅费会计科目怎么写
  • enter an integer
  • 预加载的目的是什么
  • php exec python
  • 网络应用开发技术
  • nbtstat命令的用法
  • Laravel5中防止XSS跨站攻击的方法
  • 固定资产清理属于非流动资产吗
  • 怎么保证发票是真的
  • 帝国cms使用手册
  • mongodb索引使用正则表达式
  • 企业所得税费用怎么算2023年
  • 资产减值损失包括什么
  • 固定资产的入账时间应该是什么时间
  • 进项加计抵扣
  • 土地增值税采用
  • SQL Server通过重建方式还原master数据库
  • mustn't be allowed
  • 企业进行存货清查时,对于盘亏的存货
  • 嵌入式软件产品应纳税额
  • 航空货运票据可以抵扣吗
  • 申报无票收入后怎么回冲
  • 财务报表现金流量表怎么填
  • 什么叫先打后补
  • 如何整理装订记账凭证
  • java连接sqlserver数据库对象名无效
  • mysql启动错误1067 进程意外终止
  • centOS7安装MySQL数据库
  • Windows10下mysql 5.7.17 安装配置方法图文教程
  • bios如何关闭网卡
  • winxp密码忘了
  • windows vista如何安装
  • centos 中文
  • Win10 Mobile 10572预览版新增了哪些功能? 更新内容汇总
  • win10预览在哪里
  • ubuntu16.04火狐打不开网页
  • linux运维是必死之路
  • Linux/Ubuntu chmod命令详解使用格式和方法
  • win7系统如何创建新用户
  • windows defender 图标怎么从任务栏删除
  • linux开启samba服务
  • kernel32在哪个文件夹
  • layer关闭当前窗口
  • apache部署项目
  • 微信小程序使用webview
  • 安卓安全警告怎么关闭
  • 上海网上纳税申报流程
  • 昆山华润燃气多少钱一方
  • 发票代码如何查询公司
  • 为什么经常收到税务短信
  • 2020北京户口指标数量
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设