Skip to main content

LeRobot Dataset Sample

This section shows real acquisition data exported by KM Data Converter and converted to LeRobot v2.1, making it easier to compare directory structure and observation fields used during training.

The sample comes from a dual-arm tabletop manipulation recording: 50 episodes, 25 FPS, and 960x540 resolution. The videos below show the file-016 segment, about 22 seconds. The task description is:

Pick up the blue cube and place it on the yellow cube.

Four-Camera Layout​

The original cameras.mp4 is a 2x2 tiled video. After splitting, it maps to four observation.images.* fields in LeRobot:

left_eye      right_eye      <- head stereo / main view
left_wrist right_wrist <- wrist cameras
Field nameViewTypical OpenPI training mapping
observation.images.left_eyeLeft eye / main cameraobservation/image
observation.images.right_eyeRight eyeCan be selected as the main view or fused
observation.images.left_wristLeft wristobservation/wrist_image for the left arm
observation.images.right_wristRight wristSecond wrist view for the right arm

Right Eye​

The right-side head camera is used to observe the full workspace and relative positions of both arms.

Download right-eye sample video

Corresponding disk path in the exported v3.0 chunk layout:

videos/observation.images.right_eye/chunk-000/file-016.mp4

After conversion to v2.1, the same segment is usually located at:

videos/chunk-000/observation.images.right_eye/episode_000016.mp4

Right Wrist​

The wrist camera mounted at the right arm end is close to the gripper and helps observe grasping and placement details.

Download right-wrist sample video

Corresponding disk path in the exported v3.0 chunk layout:

videos/observation.images.right_wrist/chunk-000/file-016.mp4

After conversion to v2.1, the same segment is usually located at:

videos/chunk-000/observation.images.right_wrist/episode_000016.mp4

Dataset Directory Structure Excerpt​

lerobot_datasets-70-01-01-08-03-13/
meta/
info.json # codebase_version, fps, features, etc.
episodes.jsonl # task and frame count for each episode
tasks.jsonl
data/
chunk-000/
episode_000001.parquet # per-frame joint states, action, etc.
videos/
observation.images.right_eye/chunk-000/file-016.mp4 # v3.0
observation.images.right_wrist/chunk-000/file-016.mp4
# v2.1 example:
# chunk-000/observation.images.right_eye/episode_000016.mp4

Example feature definitions in meta/info.json related to these videos:

FeatureTypeShape / Description
observation.images.right_eyevideo540 x 960 x 3, H.264, 25 FPS
observation.images.right_wristvideo540 x 960 x 3, H.264, 25 FPS
observation.statefloat3226D robot proprioceptive state
actionfloat3256D action vector

Mapping to Training Configuration​

OpenPI policy input usually uses only the main camera + one wrist camera. If training with dual-arm four-channel videos, specify the correct image_keys in openpi.training.config and map LeRobot fields to observation/image and observation/wrist_image.

After format conversion, continue with Dataset Conversion and Model Training.