Skip to main content

dora-dataset-record

Node for recording robot datasets in LeRobot format. You can captures synchronized camera feeds and robot poses to create high-quality datasets for imitation learning and robot training.

  • Robot pose recording - Capture both state and action data
  • Multi-camera support - Record from multiple cameras simultaneously
  • LeRobot dataset format (v2.1) - Direct integration with HuggingFace LeRobot datasets
  • Episode management - Automatic episode segmentation with reset phases

Quick Start

1. Installation

# Source your venv
cd dora/node-hub/dora-dataset-record
uv pip install -e .

2. Usage Guide

Create a dataflow file, see examples/lerobot-dataset-record/dataset_record.yml:

nodes:
  # Dataset recorder
  - id: dataset_recorder
    build: pip install -e ../../dora-dataset-record
    path: dora-dataset-record
    inputs:
      laptop: laptop_cam/image
      front: front_cam/image
      robot_state: robot_follower/pose
      robot_action: leader_interface/pose
    outputs:
      - text
    env:
      # Required settings
      REPO_ID: "your_username/your_dataset_name"
      SINGLE_TASK: "Pick up the cube and place it in the box"
      ROBOT_TYPE: "your_robot_type"

      # Recording settings
      FPS: "30"
      TOTAL_EPISODES: "50"
      EPISODE_DURATION_S: "60"
      RESET_DURATION_S: "15"

      # Camera configuration
      CAMERA_NAMES: "laptop,front"
      CAMERA_LAPTOP_RESOLUTION: "480,640,3"
      CAMERA_FRONT_RESOLUTION: "480,640,3"

      # Robot configuration
      ROBOT_JOINTS: "joint1,joint2,joint3,joint4,joint5,gripper"

      # Optional settings
      USE_VIDEOS: "true"
      SAVE_AVIF_FRAMES: "true" # This will additionally save frames
      PUSH_TO_HUB: "false"
      PRIVATE: "false"
      TAGS: "robotics,manipulation,imitation_learning"

  # Visualization with rerun
  - id: plot
    build: pip install dora-rerun
    path: dora-rerun
    inputs:
      text: dataset_recorder/text

3. Start Recording the dataset

dora build dataset_record.yml
dora run dataset_record.yml

The node will send instructions on dora-rerun, about episode starting, reset time, Saving episodes etc.

Configuration

Required Environment Variables

Variable Description Example
REPO_ID HuggingFace dataset repo "username/dataset_name"
SINGLE_TASK Task description "Pick and place objects"
CAMERA_NAMES Comma-separated camera names "laptop,front,top"
CAMERA_*_RESOLUTION Resolution for each camera "480,640,3"
ROBOT_JOINTS Comma-separated joint names "joint1,joint2,gripper"

Optional Settings

Variable Default Description
FPS 30 Recording frame rate (match camera fps)
TOTAL_EPISODES 10 Number of episodes to record
EPISODE_DURATION_S 60 Episode length in seconds
RESET_DURATION_S 15 Break between episodes to reset the environment
USE_VIDEOS true Encode as MP4 videos, else saves images
PUSH_TO_HUB false Upload to HuggingFace Hub
PRIVATE false Make dataset private
ROOT_PATH ~/.cache/huggingface/lerobot/your_repo_id Local storage path where you want to save the dataset

License

This project is released under the MIT License.

Metadata

Release files for dora-dataset-record 0.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for dora-dataset-record 0.1.0
File Size Uploaded Provenance Actions
dora_dataset_record-0.1.0.tar.gz 7.6 kB Without provenance Details for dora_dataset_record-0.1.0.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for dora-dataset-record 0.1.0
File Interpreter ABI Platform Actions
dora_dataset_record-0.1.0-py3-none-any.whl Python 3 none any Details for dora_dataset_record-0.1.0-py3-none-any.whl

Total release size: 15.5 kB

Release files / dora_dataset_record-0.1.0.tar.gz

Download URL dora_dataset_record-0.1.0.tar.gz
Size 7.6 kB
Tags Source
SHA-256 checksum
How to use checksums
902502169ab122282ae4c9869520f0e49708f1a8adb98a8a35f8c5c1022cee80
BLAKE2b-256 checksum
How to use checksums
c5e1d2b7ab9bb4a7f1704e55924fa76147e9ca6637d023d03070aff7e204b8f5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.8.22

Release files / dora_dataset_record-0.1.0-py3-none-any.whl

Download URL dora_dataset_record-0.1.0-py3-none-any.whl
Size 7.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
0397fa5d2dd9207b091d8a3458471d58fe706f6dbc620fd6e3a8b6525a31323b
BLAKE2b-256 checksum
How to use checksums
98e8e06e9f802b6844f843100264afcdd1ff457bcf9f94c28b8d04b53d2da625
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.8.22

Security for dora-dataset-record 0.1.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

0.1.0 This release

2 release files No provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page