Ubuntu下urdf模型转换成proto模型

由于 Ubuntu 24.04,直接使用 pip install 会报错

可以在项目文件夹中创建一个 Python 虚拟环境来安装:

复制代码
# 1. 创建虚拟环境 (名为 venv)
python3 -m venv venv

# 2. 激活虚拟环境
source venv/bin/activate

# 3. 在虚拟环境中安装
pip install urdf2webots

urdf2webots 通过 pip 安装后,并没有提供一个直接在终端敲的命令,它主要是一个供 Python 代码调用的"库"

解决方法:写一个Python 脚本来调用它

bash 复制代码
vim 脚本名.py

如下内容:

bash 复制代码
import os
from urdf2webots.importer import convertUrdfFile

# ================= 配置区域 =================
# 1. 输入: URDF 绝对路径,输入自己的存放的路径
input_urdf_path = "/home/yyyy/workspaces/duck_robot/virtual_robot/urdf/virtual_robot.urdf"

# 2. 输出: 目标文件夹
output_dir = "/home/yyyy/my_webots_project1/protos"

# 3. 输出文件名
output_filename = "virtual_robot.proto"

# 组合完整的输出路径
output_file_path = os.path.join(output_dir, output_filename)

if not os.path.exists(input_urdf_path):
    print(f"错误: 找不到输入文件!请检查路径:\n{input_urdf_path}")
    exit()

if not os.path.exists(output_dir):
    print(f"目录不存在,正在创建: {output_dir}")
    os.makedirs(output_dir, exist_ok=True)


try:
    # --- 调用 convertUrdfFile ---
    # 根据函数名推断,参数名应该是 input 和 output
    convertUrdfFile(input=input_urdf_path, output=output_file_path, normal=True, box_collision=False)

except TypeError as e:
    # 如果参数名还是不对,这里会捕获并尝试另一种极简调用方式
    print(f"\n参数名警告: {e}")
    print("尝试使用位置参数重新运行...")
    convertUrdfFile(input_urdf_path, output_file_path)
    print("\n再次尝试后转换成功!(使用了默认配置)")

except Exception as e:
    print(f"\n转换过程中发生错误: {e}")
相关推荐
王琦03181 分钟前
第三章 linux文件类型和根目录结构
linux·运维·服务器
minji...4 分钟前
Linux 文件系统 (三) 软连接和硬链接
linux·运维·服务器·c++·算法
源远流长jerry1 小时前
DPDK 内存管理深度解析:从大页到 Mbuf 的完整链路
linux·服务器·网络
好像不对劲1 小时前
【docker】win10 wsl docker不能挂GPU
运维·docker·容器·wsl
Konwledging1 小时前
显卡GOP
linux
blueSatchel2 小时前
v4l2读取图像样例
linux
落日漫游2 小时前
MySQL双活与备份:高可用实战指南
运维
xlp666hub2 小时前
从零点亮 RK3568 的 LED:设备树,平台总线,现代gpio子系统全解析(附完整代码)
linux·面试
江畔何人初2 小时前
Docker、containerd、CRI、shim 之间的关系
运维·docker·云原生·容器·kubernetes
哼?~2 小时前
Linux线程基本概念
linux