evo工具使用问题——Degenerate covariance rank, Umeyama alignment is not possible

博主记录了轨迹评估时无法对齐问题的解决过程。问题表现为轨迹无法对齐,数据无缺失、格式正确。经排查,发现是在曲线同步时,两个轨迹文件时间戳除第一个外均不同。最终确定是之前调试更改项目时间戳精度所致,用新轨迹重新评估后问题解决。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

记录一下我犯蠢的全过程
如果遇到这个问题请不要怀疑,去比对自己的两个轨迹文件,一定有哪不对!!!!!
我这里是两个轨迹的时间戳除了第一个就没有一样的,谁能想到739条数据没一个相同的TAT

问题描述

在进行轨迹的评估时遇到了无法对齐的情况,数据没有缺失,文件格式正确
在这里插入图片描述

解决过程

在evo–core文件夹下的geometry.py文件中找到了报错的位置,61行SVD相关
在这里插入图片描述
一路输出往回找(我是真的不会Debug TAT),发现从轨迹文件中读取出来的position_xyz数组的大小和数量不太对。
一个轨迹文件读出来的数组应该是一个非常大的数据,但是这个轨迹对应的数组只有一行三个数据。在这里插入图片描述
继续
在工具的主函数,main_ape.py中的run函数中,在输出从parser中读取的数据时,发现我好好的文件中的轨迹呢????咋就1个位姿,0m的轨迹了呢????
在轨迹信息第一次被读取出来到输入ape主体中进行对齐和计算之前分别将轨迹信息读取出来,也就是228,229行加的输出和246,247行加入的输出
在这里插入图片描述
结果
输出结果
好的确定了,在232到244过程中发生了一些奇奇怪怪的bug。。。
之后发现错误出现在240行,两个曲线同步的时候
曲线同步主要是通过时间戳进行对齐,输出相同的时间戳数量之后进行对齐,当然这个时候发现输出的相同时间戳数为0
这个时候我感到了一点点的不太对。。。
当我打开两个轨迹的文件,随机找了几个时间戳,他们竟然不一样!!!739多条数据,一条都没对上!!!

结果

之前调试的时候更改了项目时间戳的精度,改了之后用新的轨迹重新评估,问题解决。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值