Skip to main content
SEEED STUDIO · HANDS-ON DEPLOYMENT

Data Quality: Structure, Synchronization & Validation

Understand LeRobot video, Parquet, and metadata files, then check time synchronization, image quality, and complete demonstrations.

  • Dataset structure
  • Time synchronization
  • Quality checks
  • Troubleshooting

Dataset Structure​

A recorded dataset such as seed_rebot_b601_rs/test has the following layout:

~/.cache/huggingface/lerobot/seed_rebot_b601_rs/test/
├── data/
│ └── chunk-000/
│ └── file-000.parquet ← Numerical frames: state / action / timestamps
├── videos/
│ ├── observation.images.front/
│ │ └── chunk-000/
│ │ └── file-000.mp4 ← Front camera: concatenated video for 50 episodes
│ └── observation.images.wrist/
│ └── chunk-000/
│ └── file-000.mp4 ← Wrist camera: the same arrangement
└── meta/
├── info.json ← Version, fps, frame count, and feature definitions
├── stats.json ← Mean, variance, and extrema for each feature
├── tasks.parquet ← Task descriptions
└── episodes/
└── chunk-000/
└── file-000.parquet ← Per-episode records

Three formats hold three kinds of information:

FormatContentsWhy use it?
MP4 videoAll image frames from both camerasImages account for over 90% of dataset size; video compression can save one to two orders of magnitude compared with individual image files.
Parquet tablesPer-frame state, action, timestamps, and indicesColumnar storage lets you read, for example, all joint-3 values without loading the entire table.
MetadataStructure, statistics, tasks, and episode indicesLoaders and training programs read these first to interpret the other files.

Timestamps and Synchronization​

  • Images travel over USB, while joint data travels over CAN, so they naturally reach the computer at different times. LeRobot assigns timestamps to align images, states, and actions representing the same logical instant in one row.

Dataset Structure and Quality Checks: Timestamps and Synchronization (Figure 1)


Assess Overall Dataset Quality​

Check four dimensions before using a dataset for training:

Dataset Structure and Quality Checks: Assess Overall Dataset Quality (Figure 2)


Replay and Inspect Images​

Use lerobot-dataset-viz for visualization and lerobot-replay for replay on the robot, as described earlier. Inspect at least episode 0, one middle episode, and the final episode. The first checks the workflow, the middle checks drift, and the last often reveals quality loss from operator fatigue.

During replay, check that:

  • Both camera views are present, without black frames, corrupted images, or a frozen stream.

  • Images are sharp and correctly exposed, with the block and gripper visible throughout.

  • Actions and images align: when the gripper closes, the image shows it contacting the block.

  • The episode begins at the standard initial pose and ends with the stopping condition satisfied.


What to Do When Problems Appear​

Handle problems according to their scope:

  • A few bad episodes, such as blurred images in episodes 3 and 17: remove those two and record two replacements.

  • Widespread problems, such as lighting changes in half the episodes or a whole batch with misaligned video and actions: record the dataset again. A patchwork of inconsistent repairs can be worse than having less data.

After deletion, the tool rebuilds the dataset automatically: episode indices become consecutive and stats.json is recomputed. Whether removing or adding episodes, the tools regenerate metadata; you do not need to edit it manually.


Loading Comments...