Skip to content

Stream ALOHA HDF5 conversion frame-by-frame to cut RAM use#1004

Open
Abhishek21g wants to merge 1 commit into
Physical-Intelligence:mainfrom
Abhishek21g:fix/aloha-converter-low-memory
Open

Stream ALOHA HDF5 conversion frame-by-frame to cut RAM use#1004
Abhishek21g wants to merge 1 commit into
Physical-Intelligence:mainfrom
Abhishek21g:fix/aloha-converter-low-memory

Conversation

@Abhishek21g

Copy link
Copy Markdown

Summary

Addresses #986 and #565 — the ALOHA→LeRobot converter no longer loads every camera frame for an entire episode into RAM before writing frames.

Changes

  • Load one HDF5 image frame at a time via load_image_frame()
  • Process episodes through populate_episode() instead of materializing imgs_per_cam tensors
  • Align converter with HF_LEROBOT_HOME like the Libero/DROID scripts
  • Add synthetic conversion tests in examples/aloha_real/convert_aloha_test.py

Note on LeRobot v3

openpi training is still pinned to the v2.1 lerobot revision (#706 / #972). This PR fixes the OOM failure mode on large ALOHA exports while keeping the supported dataset format. A separate lerobot bump is needed for true v3 output.

Verification

pytest examples/aloha_real/convert_aloha_test.py -q

Load one camera frame at a time instead of materializing every image
tensor per episode, and align the converter with HF_LEROBOT_HOME like
the Libero/DROID scripts. Adds synthetic conversion tests.

Fixes Physical-Intelligence#565 and the memory half of Physical-Intelligence#986. LeRobot v3 output remains
blocked on the pinned lerobot revision (openpi#706).
@jimmyt857 jimmyt857 removed their request for review July 14, 2026 02:28
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant