ROS2安装EVO工具包

简单记录ROS2安装EVO评估工具--

1.安装EVO

复制代码
pip install evo --upgrade --no-binary evo  

若提示找不到pip,则先安装pip:

复制代码
sudo apt install python3-pip

2.安装EVO后,直接运行

复制代码
evo_traj tum pose.txt -p

发现报错:

WARNING: The scripts f2py and numpy-config are installed in '/home/siliya/.local/bin' which is not on PATH.

Consider adding this directory to PATH or, if you prefer to suppress this warning, use --no-warn-script-location.

WARNING: The script natsort is installed in '/home/siliya/.local/bin' which is not on PATH.

Consider adding this directory to PATH or, if you prefer to suppress this warning, use --no-warn-script-location.

WARNING: The script rosbags-convert is installed in '/home/siliya/.local/bin' which is not on PATH.

Consider adding this directory to PATH or, if you prefer to suppress this warning, use --no-warn-script-location.

WARNING: The scripts evo, evo_ape, evo_config, evo_ipython, evo_res, evo_rpe and evo_traj are installed in '/home/siliya/.local/bin' which is not on PATH.

Consider adding this directory to PATH or, if you prefer to suppress this warning, use --no-warn-script-location.

证明路径不对,输入以下指令:

复制代码
echo 'export PATH="$HOME/.local/bin:$PATH"' >> ~/.bashrc^C
source ~/.bashrc

然后再次查看轨迹,发现报错为:

/usr/lib/python3/dist-packages/scipy/init.py:146: UserWarning: A NumPy version >=1.17.3 and <1.25.0 is required for this version of SciPy (detected version 2.2.6

warnings.warn(f"A NumPy version >={np_minversion} and <{np_maxversion}"

证明相关的依赖版本不正确,则运行以下命令:

复制代码
# 卸载当前版本的相关依赖
pip uninstall numpy scipy matplotlib -y 

# 安装兼容版本
pip install numpy==1.24.4 scipy==1.9.3 matplotlib==3.7.3

# 安装EVO
pip install evo --upgrade --no-binary evo

# 路径添加
echo 'export PATH="$HOME/.local/bin:$PATH"' >> ~/.bashrc^C
source ~/.bashrc

3.再次运行查看轨迹,发现报错:

Warning: Ignoring XDG_SESSION_TYPE=wayland on Gnome. Use QT_QPA_PLATFORM=wayland to run on Wayland anyway.

ERROR\] Unhandled error in evo.cli.traj

提示为没有PyQT6,安装即可:

复制代码
# 安装PyQt6
pip install PyQt6

# 再次测试EVO
evo_traj tum pose_tum.txt -p

然后即可正常运行,查看轨迹,如图:

相关推荐
qeen877 分钟前
【数据结构】建堆的时间复杂度讨论与TOP-K问题
c语言·数据结构·c++·学习·
莎士比亚的文学花园10 分钟前
Linux驱动开发(3)——设备树
开发语言·javascript·ecmascript
图码18 分钟前
如何用多种方法判断字符串是否为回文?
开发语言·数据结构·c++·算法·阿里云·线性回归·数字雕刻
U盘失踪了24 分钟前
python curl转python脚本
开发语言·chrome·python
charlie11451419124 分钟前
Linux 字符设备驱动:cdev、设备号与设备模型
linux·开发语言·驱动开发·c
xmdy586624 分钟前
Flutter+开源鸿蒙实战|智安盾电商溯源平台Day1 项目搭建与整体方案拆解
flutter·开源·harmonyos
handler0126 分钟前
Linux 内核剖析:进程优先级、上下文切换与 O(1) 调度算法
linux·运维·c语言·开发语言·c++·笔记·算法
FQNmxDG4S27 分钟前
Java泛型编程:类型擦除与泛型方法的应用场景
java·开发语言·python
zhouwy11331 分钟前
Linux进程与线程编程详解
linux·c++
该昵称用户已存在32 分钟前
以开源筑基,架构先行——深度拆解 MyEMS 微服务能源管理系统的技术内核
微服务·架构·开源