Skip to main content

hurodes (Humanoid Robot Description) is a Python toolkit for describing, converting, and processing humanoid robot models.

Project description

hurodes

hurodes (Humanoid Robot Description) is a Python toolkit for describing, converting, and processing humanoid robot models. The project introduces a custom HRDF (Humanoid Robot Description Format) that serves as a unified intermediate bridge for conversions between mainstream robot description formats such as MJCF and URDF. It provides generators, parsers, and common scripts to help users efficiently create, convert, and batch process robot models.


Core Features

  • HRDF Unified Intermediate Format: Uses a structured HRDF directory (CSV + JSON + Mesh) to describe robot information, making batch editing and analysis easy.
  • Flexible Generators/Parsers: Supports bidirectional conversion between MJCF ⇆ HRDF ⇆ URDF to meet multi-format collaboration needs.
  • Multi-Robot Merging: Through a name prefix mechanism, multiple robot models can be automatically merged into a single MJCF file, supporting collaborative/group simulation.
  • Scripted Batch Processing: Built-in command-line scripts make format conversion, model merging, and other common tasks easy.
  • Modular Design: Clear package structure for easy secondary development and feature extension.

Installation

This project is based on Python 3.8 and above.

# Clone the repository
git clone https://github.com/your-org/humanoid-robot-description.git
cd humanoid-robot-description

# Standard installation
pip install .

# Developer installation (includes test dependencies)
pip install -e .[dev]

Quick Start

The following examples demonstrate the main script usage for model conversion and visualization:

# Parse URDF or MJCF to HRDF (choose format_type: 'urdf' or 'mjcf')
python scripts/parse.py --input_path path/to/robot.urdf --robot_name your_robot_name --format_type urdf

# Generate MJCF from HRDF and visualize
python scripts/generate.py --robot_name your_robot_name

# Compose multiple robots (from HRDF) into a single MJCF and visualize
python scripts/generate_composite.py --robot_names robot1,robot2

HRDF Format Overview

HRDF stores robot information in a directory structure:

assets/robots/your_robot_name/
├── actuator.csv     # Actuator parameters
├── body.csv         # Rigid body information
├── collision.csv    # Collision parameters
├── joint.csv        # Joint information
├── mesh.csv         # Mesh file index
├── meshes/          # Mesh resources
└── meta.json        # Metadata (tree structure, ground parameters, etc.)
  • Intermediate Bridge: Serves as a unified data carrier during conversions between MJCF, URDF, and other formats.
  • Structured Storage: CSV/JSON files are easy for batch reading, analysis, and version control.
  • Extensible: Clear directory structure makes it easy to add new attributes or support new formats.
  • Project Cache: Temporary data generated at runtime is stored in the user's home directory under ~/.hurodes, with no manual maintenance required.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

hurodes-0.0.2.tar.gz (13.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

hurodes-0.0.2-py3-none-any.whl (15.4 kB view details)

Uploaded Python 3

File details

Details for the file hurodes-0.0.2.tar.gz.

File metadata

  • Download URL: hurodes-0.0.2.tar.gz
  • Upload date:
  • Size: 13.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.10.18

File hashes

Hashes for hurodes-0.0.2.tar.gz
Algorithm Hash digest
SHA256 ae50ee5f2de7154f28cde0e8b3f3ecc8dee498edbe87c08aba66ff4839810f1f
MD5 ffc5ad82a829b1ef5fe9b21ec7ccc447
BLAKE2b-256 537cec546b17d7e3bffcac4d56a7ea41b8caffbef616c0ef2244f2881dc6d8f0

See more details on using hashes here.

File details

Details for the file hurodes-0.0.2-py3-none-any.whl.

File metadata

  • Download URL: hurodes-0.0.2-py3-none-any.whl
  • Upload date:
  • Size: 15.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.10.18

File hashes

Hashes for hurodes-0.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 664be7e6a3d29184b02e9ce179cc765d531df0703c5670d6b52ca247856fb4dc
MD5 4670e9ae157c14a0ada73311e0288486
BLAKE2b-256 dcd6c874fecdd114599d3bcd67bb6d6e7bebfedcc7b7ce234352118e4fbc8824

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page