一、准备工作
1、生成文件
运行程序,保存地图的路径,生成了一个文件:
*.txt //vins_result_loop.txt
2、转化格式
经过我们上面的修改,该文件是符合tum格式的,虽然我们使用的是euroc数据集,但evo只支持tum格式的绘制,它提供了euroc格式转tum格式的工具。首先我们打开数据集的state_groundtruth_estimate0/文件夹,会发现有一个文件:data.csv。这是一个euroc格式的文件,我们首先要把他转成tum格式。输入以下命令:
evo_traj euroc data.csv --save_as_tum //data.csv 的文件名是图像中的注释名
二、制图
evo常见的参数解析:
- evo_config:用于保存配置文件,把自己常用的参数保存为.json文件,避免每次输入。
- evo_traj:用于绘制轨迹,支持的格式有kitti,eurco,tum 数据集等,也可以用于验证数据是否有效,导出为其他格式等。
- evo_res:可用于比较指标中的多个结果文件(打印消息和统计消息,绘制结果,将统计信息保存在表内)
- evo_ape :计算绝对位姿误差
- evo_rpe:计算相对位姿误差
1、evo_config
(1)evo_config用于保存配置文件,可以把自己的参数保存下来,这样就可以避免每次都输入相同的参数。配置文件的格式为*.json。
evo_config generate --pose_relation angle_deg --delta 1 --delta_unit m --verbose --plot --out rpe_config.json
其中 generate后面就是需要保存的参数,以上命令生成的config文件
{
"delta": 1.0,
"delta_unit": "m",
"plot": true,
"pose_relation": "angle_deg",
"verbose": true
}
(2)调用生成的配置文件在相应的命令后面加上-c 然后输入文件名即可。
evo_rpe groundtruth.txt estimate2.txt -c rpe_config.json
注意,生成config文件时参数必须使用全称,如–plot --verbose 等,而不能使用-p -v。
2、evo_traj
用于绘制轨迹,支持的格式有kitti,eurco,tum,调用的格式为
evo_traj tum traj_1.txt traj_2.txt traj_3.txt
其中的参数包括:
-p或–plot 绘图
-v或–verbose 输出相关信息(均值,方差等)
-f或–full_check检查相关信息(时间戳是否对应,四元数是不是单位四元数)
-a或–align对轨迹进行配准,用ICP的方法,并不是仅仅将起点对齐
注意,全称的开头是两个横杠
3、evo_ape和evo_rpe
对groundtruth和pose进行对比,参数和evo_traj相同。
ape对比的是绝对姿态误差,rpe对比的是相对姿态误差,也就是两个时间戳之间的变化量的差值。
evo_ape euroc euroc_mh05_groundtruth.csv pose_output.txt -va -p
4、MyNote
#将euroc格式转化成 tum格式
evo_traj euroc data.csv --save_as_tum
## 4、MyNote
# 画轨迹的命令
在paper的目录下:(本人路径)
evo_traj tum vins_mono.txt orb-slam2.txt --ref=groundtruth.tum -p --plot_mode=xyz --align --correct_scale
#画ape图
在/在paper的目录下:(本人路径)/目录下:
evo_ape tum orb-slam2.txt groundtruth.tum -va --plot --plot_mode xz --save_result MH_01_easy_test.zip
#画res图
在/media/shangxf/s725/shangxiaofeng/DataSet/EuRoc/MH_01_easy/mav0/state_groundtruth_estimate0/目录下:
evo_res VINS-Mono.zip -p --save_table table.csv
版权声明:本文为qq_43247439原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。