feat(abc): ABC-130k mcap->zarr pipeline + yam_bimanual embodiment - #10
Open
AnikethCheluva wants to merge 2 commits into
Open
feat(abc): ABC-130k mcap->zarr pipeline + yam_bimanual embodiment#10AnikethCheluva wants to merge 2 commits into
AnikethCheluva wants to merge 2 commits into
Conversation
Author
|
Warning This pull request is not mergeable via GitHub because a downstack PR is open. Once all requirements are satisfied, merge this PR as a stack on Graphite.
This stack of pull requests is managed by Graphite. Learn more about stacking. |
This was referenced Sep 5, 2026
AnikethCheluva
marked this pull request as ready for review
September 5, 2026 21:01
AnikethCheluva
changed the base branch from
graph-nested-val
to
graphite-base/10
September 8, 2026 05:01
AnikethCheluva
force-pushed
the
graphite-base/10
branch
from
September 8, 2026 05:02
556420f to
51db623
Compare
AnikethCheluva
force-pushed
the
graph-abc
branch
from
September 8, 2026 05:02
67bdd81 to
39326ca
Compare
AnikethCheluva
changed the base branch from
graphite-base/10
to
graph-bounds-gate
September 8, 2026 05:02
This was referenced Sep 8, 2026
AnikethCheluva
changed the base branch from
graph-bounds-gate
to
graphite-base/10
September 8, 2026 05:02
AnikethCheluva
force-pushed
the
graph-abc
branch
from
September 8, 2026 21:07
39326ca to
2240843
Compare
AnikethCheluva
changed the base branch from
graphite-base/10
to
graph-hpt-qwen
September 8, 2026 21:07
AnikethCheluva
changed the base branch from
graph-hpt-qwen
to
graphite-base/10
September 8, 2026 21:07
AnikethCheluva
force-pushed
the
graphite-base/10
branch
from
September 9, 2026 22:21
0a6ec5d to
804b88b
Compare
AnikethCheluva
force-pushed
the
graph-abc
branch
from
September 9, 2026 22:21
2240843 to
281053f
Compare
AnikethCheluva
changed the base branch from
graphite-base/10
to
graph-hpt-qwen
September 9, 2026 22:21
AnikethCheluva
force-pushed
the
graph-hpt-qwen
branch
from
September 10, 2026 17:56
804b88b to
c9d6d47
Compare
AnikethCheluva
force-pushed
the
graph-abc
branch
from
September 10, 2026 17:56
281053f to
7a6d5f1
Compare
This was referenced Sep 10, 2026
Port of GaTech-RL2#606 onto the graph fork. Adds the YAM two-arm teleoperation station behind ABC-130k as a first-class embodiment (id 7) plus the converter, subset builder, uploader and metadata backfill under egomimic/scripts/abc_process, with their sbatch launchers. YAM is structurally close to Eva -- bimanual, parallel-jaw, per-arm obs/cmd_ee_pose plus gripper -- with three differences that drive the code: extrinsics come from the published station rig rather than the data (so `eef_frame`, which needs none, is the mode that works on ZED-X episodes); intrinsics are per-episode because two station types with different calibration ship in the dataset, hence `INTRINSICS = None`; and the world frame is station-anchored rather than egocentric, so there is no head pose or keypoint stream. A batch cannot mix image sizes and these datasets ship 640x480, 640x360, 1280x720 and 848x480, so `image_hw` pins every episode to one size. The intrinsics are rescaled by the SAME per-axis factors -- row 0 with width, row 1 with height. Scaling by a single shared factor is what produced the anamorphic K bug, and every projected overlay inherits it. Both helpers read the channel layout rather than assuming HWC, because the decoder emits channels-first and assuming otherwise turns each sample into a decode failure or a garbage scale factor. Graph integration: `ActionTargetBuilder` now takes `action_key` instead of hardcoding `actions`. Planar names its chunk `actions`, but the Eva/Human/Yam cartesian transform lists concatenate into `actions_cartesian`, and the graph should read the key that exists rather than force embodiments to rename their output. `egomimic/hydra_configs/model/abc/yam_bimanual_dp.yaml` is the graph-native DP stage list for this data, and the ABC data configs declare `batch_keys` for the keys their transform lists add -- tools/config_graph.py derives seed keys from the key_map alone, so without that declaration it reports the concatenated pose and action keys as unprovided. Both the train and inference graphs lint clean. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01DcPCNAW3GKERANrqvfSCY1
AnikethCheluva
force-pushed
the
graph-hpt-qwen
branch
from
September 10, 2026 22:20
c9d6d47 to
c1308cf
Compare
AnikethCheluva
force-pushed
the
graph-abc
branch
from
September 10, 2026 22:20
7a6d5f1 to
037f68c
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.

Port of GaTech-RL2#606 onto the graph fork.
Adds the YAM two-arm teleoperation station behind ABC-130k as a first-class
embodiment (id 7) plus the converter, subset builder, uploader and metadata
backfill under egomimic/scripts/abc_process, with their sbatch launchers.
YAM is structurally close to Eva -- bimanual, parallel-jaw, per-arm
obs/cmd_ee_pose plus gripper -- with three differences that drive the code:
extrinsics come from the published station rig rather than the data (so
eef_frame, which needs none, is the mode that works on ZED-X episodes);intrinsics are per-episode because two station types with different
calibration ship in the dataset, hence
INTRINSICS = None; and the worldframe is station-anchored rather than egocentric, so there is no head pose or
keypoint stream.
A batch cannot mix image sizes and these datasets ship 640x480, 640x360,
1280x720 and 848x480, so
image_hwpins every episode to one size. Theintrinsics are rescaled by the SAME per-axis factors -- row 0 with width, row 1
with height. Scaling by a single shared factor is what produced the anamorphic
K bug, and every projected overlay inherits it. Both helpers read the channel
layout rather than assuming HWC, because the decoder emits channels-first and
assuming otherwise turns each sample into a decode failure or a garbage scale
factor.
Graph integration:
ActionTargetBuildernow takesaction_keyinstead ofhardcoding
actions. Planar names its chunkactions, but the Eva/Human/Yamcartesian transform lists concatenate into
actions_cartesian, and the graphshould read the key that exists rather than force embodiments to rename their
output.
egomimic/hydra_configs/model/abc/yam_bimanual_dp.yamlis thegraph-native DP stage list for this data, and the ABC data configs declare
batch_keysfor the keys their transform lists add -- tools/config_graph.pyderives seed keys from the key_map alone, so without that declaration it
reports the concatenated pose and action keys as unprovided. Both the train and
inference graphs lint clean.
Co-Authored-By: Claude Opus 5 noreply@anthropic.com
Claude-Session: https://claude.ai/code/session_01DcPCNAW3GKERANrqvfSCY1