orb-slam2跑通EuRoC数据集,并用evo对其进行评估(详细)

evo的安装:

打开终端,运行下面的指令:

sudo apt install python-pip
pip install evo --upgrade --no-binary evo
pip install evo --upgrade --no-binary evo --user

下载EoRoC数据集,并用orb-slam2跑通:

(1)下载数据集:下载地址:http://projects.asl.ethz.ch/datasets/doku.php?id=kmavvisualinertialdatasets

我下载的是MH05的包。将下载好的数据集解压并放在home文件夹下,打开终端,运行如下命令:

cd /home/frank/下载/ORB_SLAM2-master
./Examples/Monocular/mono_euroc Vocabulary/ORBvoc.txt Examples/Monocular/EuRoC.yaml /home/用户名/EuRoC/mav0/cam0/data Examples/Monocular/EuRoC_TimeStamps/MH05.txt 

第一条指令是指进入你的orb -slam2 安装包所在的位置打开终端,第二条指令中的用户名是你的客户机的用户名,而且你如果下载的是其他的数据集,对应更改指令末尾的MH05即可。我的数据集是解压在home文件夹下,你可以进入你的数据集所在的文件夹,通过快捷键ctrl+l来复制路径,接着对上述指令中的路径作出更改即可。

(2)利用evo对其进行评估:

运行单轨迹,即数据集的真实值:打开终端,运行如下的指令:

cd /home/frank/EuRoC/mav0/state_groundtruth_estimate0
evo_traj euroc data.csv --plot

如果出现如下错误:

[ERROR] evo module evo.main_traj crashed - no logfile written (disabled)

解决办法:

pip install numpy --upgrade --user

 

 

 

 运行多轨迹:数据集自带真实值文件,文件名后缀是.csv ,需要将.csv 的文件groundturth转换为TUM形式的文件,打开终端,运行如下指令:

cd /home/frank/EuRoC/mav0/state_groundtruth_estimate0
evo_traj euroc data.csv --save_as_tum

在home文件夹下新建一个文件夹output,将之前通过测试程序得到的TUM形式的轨迹文件:KeyFrameTrajectory.txt(这个文件保存在orb-slam2)和上述指令得到的文件:data.tum 两个文件一块保存到新建的文件夹output中。

打开终端,运行如下指令:(注意:用户名是你的客户机的用户名,你新建的文件夹要是不在home目录下,就改成你自己的存放路径。)

cd /home/用户名/output
evo_traj tum KeyFrameTrajectory.txt --ref=data.tum -p --plot_mode xyz -a --correct_scale

 

 

 

计算绝对位姿误差:

打开终端,运行如下指令:

cd /home/用户名/output
mkdir results
evo_ape tum data.tum KeyFrameTrajectory.txt  -va --plot --plot_mode xyz -s --save_results results/ape.zip

 

 

 计算相对位姿误差:

打开终端,运行如下指令:

cd /home/用户名/output
evo_rpe tum data.tum KeyFrameTrajectory.txt  -va --plot --plot_mode xyz -s --save_results results/rpe.zip

 

 

结果比较: 首先将计算绝对误差和相对误差得到的两个压缩包移动到rusults中,并运行如下指令:

cd /home/用户名/output/results
evo_res ape.zip -p --save_table table.csv

 

 

 

 

 

  • 10
    点赞
  • 112
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
ORB-SLAM2是一种基于视觉的单目、双目和RGB-D SLAM系统,可以用于实现实时定位和地图构建。EuRoC数据集是一个常用的SLAM数据集,包含了基于激光雷达和相机的传感器采集的图像序列和位姿数据。在这里,我们将介绍如何使用ORB-SLAM2跑通EuRoC数据集,并对其结果进行结论分析。 具体步骤如下: 1. 下载EuRoC数据集,并解压缩到本地计算机中。 2. 下载ORB-SLAM2的代码,并按照说明进行编译和安装。 3. 修改ORB-SLAM2的参数配置文件,以便正确读取EuRoC数据集。配置文件位于Examples/Monocular目录下,其中有一个名为EuRoC.yaml的文件。主要修改以下参数: - Vocabulary文件路径:修改为ORB-SLAM2的词袋文件路径。 - Camera calibration文件路径:修改为EuRoC数据集中的相机标定文件路径。 - 数据集文件路径:修改为EuRoC数据集的文件路径。 4. 运行ORB-SLAM2,对数据集进行处理。运行以下命令: ``` cd Examples/Monocular ./mono_euroc PATH_TO_VOCABULARY PATH_TO_SETTINGS.yaml PATH_TO_SEQUENCE_FOLDER ``` 其中,PATH_TO_VOCABULARY是ORB-SLAM2的词袋文件路径,PATH_TO_SETTINGS.yaml是ORB-SLAM2的配置文件路径,PATH_TO_SEQUENCE_FOLDER是EuRoC数据集的文件夹路径。 5. 等待ORB-SLAM2完成数据集处理。处理完成后,ORB-SLAM2会输出定位结果、重建的3D地图等信息。我们可以对这些结果进行分析和评估。 结论分析: 在运行ORB-SLAM2的过程中,我们可以得到一些性能评估指标,例如定位精度、重建的地图质量等。通过这些指标,我们可以对ORB-SLAM2在EuRoC数据集上的表现进行评价和分析。 此外,我们还可以使用其他数据集来对ORB-SLAM2进行测试和评估,以验证其鲁棒性和泛化能力。同时,我们还可以对ORB-SLAM2的参数进行调整,以优化其性能。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

渣渣的小王

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值