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}")
相关推荐
爱喝水的鱼丶2 分钟前
SAP-ABAP:ECC→S/4HANA ABAP 迁移升级指南——程序改造、语法兼容与性能优化 导语
运维·开发语言·性能优化·sap·abap·经验交流·开发交流
木子欢儿11 分钟前
openconnect Linux客户端安装 以及开机自启和登录
linux·运维·服务器
..Dauntless..35 分钟前
【Linux】文件系统(一)
linux·运维·服务器
天空属于哈夫克344 分钟前
企业微信API二次开发 赋能私域运营自动化
运维·自动化·企业微信
天远API1 小时前
零信任架构实战:基于天远运营商二要素V即时版构建自动化分时租赁出行会员身份一致性审核网关
运维·人工智能·架构·自动化
程序员-King.1 小时前
【ROS1】Noetic 开发工作流程与常用命令
c++·ubuntu·ros
极光通讯2 小时前
液冷服务器对内存和SSD的适配要求:高密度部署下的散热与信号完整性
运维·服务器
2501_937767163 小时前
面向设计 / 研发部门:终端文件统一归档 + 服务器定时备份实践
运维·安全
GeW3 小时前
新质生产力路线图:从Linux到数据库,企业落地要点都在这
linux
IMPYLH3 小时前
Linux 系统备份与镜像
linux·服务器·网络