赞
踩
最近想使用TUM的VIO数据集,发现网上关于它的资料比较少,大多数都是对TUM RGBD的介绍,所以将自己踩得坑记录一下,方便大家学习,有不对的地方还请指出.
TUM Visual-Inertial Dataset
具体的资料介绍,请查看官网内容,此处不在赘述.着重记录自己遇到的问题
每个数据集的真实轨迹都位于对应的tar文件中的dso/imu_gt.csv
真实轨迹的格式为time/tx/ty/tz/qw/qx/qy/qz
,时间是ns
,
由于我想使用EVO工具来对其进行测评,而EVO不支持这种格式,所以是需要转换的.EVO支持的具体格式见使用evo工具可视化和评测SLAM算法性能.
思路:通过evo_traj euroc gt_imu.csv --save_as_tum
来进行修改.
Euroc格式
timestamp,px,py,pz,qw,qx,qy,qz,vx,vy,vz,bwx,bwy,bwz,bax,bay,baz
每行17个元素,逗号隔开,时间以纳秒为单位
evo_traj euroc gt_imu.csv --save_as_tum
在TUM的VIO数据集中,有很多数据集仅提供了初始和结尾部分的真实轨迹, 一开始不清楚这种情况怎么和算法结果进行比较,后来发现EVO可以只比较有真实轨迹的部分.下图是corridor4的vins-mono和真实轨迹比较结果
轨迹对比 | 结果评估 |
---|---|
官网上说提供的相机模型为:pinhole和omi
但是根据这个博文SLAM 中常用的相机模型&畸变模型总结
中所说,他们对应的应该是KB模型和MEI模型. 同时通过VINS-MONO中自带的TUM的yaml文件也说明,官网所说的pinhole确实是KB模型
相机模型是由 投影模型(也就是传统意义的相机模型) 和畸变模型组成的
k1,k2,p1,p2
而是参数d0-4表示的.在vikit(pl-svo的一个依赖库)中,使用五个参数d表示的
然后,根据其opencv中的描述
有时候会对高阶项进行省略,k456全省略了.k3有时候省略,这也就是对应的五个参数
source 3worksapce/2kalibr_workspace/devel/setup.bash
rosrun kalibr kalibr_calibrate_cameras
--bag 2data/TUM/camera/dataset-calib-cam1_512_16.bag
--topic /cam0/image_raw /cam1/image_raw
--models pinhole-radtan pinhole-radtan
--target 2data/TUM/camera/april_6x6_80x80cm.yaml
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。