CoolFace
Datasetpublic

corvinus-labs/regen_s1b_200_seed28700

regen_s1b_200_seed28700 — S1b (rotation + recovery) staged-regen batch 200 successful tube-rack insertion episodes from Isaac Sim with a myCobot 320 M5, generated as the S1b config of the four-way staged regen (S1 / S1b / S2 / S3). S1b is S1 plus recovery data and nothing else, so S1 vs S1b at equal N measures what the recovery demonstrations cost in accuracy and buy in off-path behaviour. Companion to regen_s1_200_seed28200, which is the same configuration with no… See the full description on the dataset page: https://huggingface.co/datasets/corvinus-labs/regen_s1b_200_seed28700.

sourceHugging Faceupdated 1mo agoView on Hugging Face
0likes1.8kdownloads
Dataset Card

regens1b200_seed28700 — S1b (rotation + recovery) staged-regen batch

200 successful tube-rack insertion episodes from Isaac Sim with a myCobot 320 M5, generated as the S1b config of the four-way staged regen (S1 / S1b / S2 / S3). S1b is S1 plus recovery data and nothing else, so S1 vs S1b at equal N measures what the recovery demonstrations cost in accuracy and buy in off-path behaviour.

Companion to `regen_s1_200_seed28200`, which is the same configuration with no perturbations.

Contents

  • —200 episodes, 200/200 success, 18,348 frames, 5.1 GB
  • —70–140 steps per episode (mean 91.7), one 640×480 RGB PNG per step
  • —Per episode: step_NNNN.png, steps.jsonl, steps_chunked.jsonl, chunk_meta.json, trial.json, metadata.json, deltas.npy (N×6)
  • —batch_manifest.json at the root

The S1b variable: recovery by perturbation

Mid-episode shoves, with the chunker clamping any chunk that spans one.

configuredperturb_count [1, 2], max 25 mm translation / 5° rotation
observed1 shove in 102 episodes, 2 in 98
scheduled regionstart-to-ascension approach
chunks crossing a shove3,242 of 18,348 = 17.7%

A shove changes the state with no action responsible. Per-step that costs one step, but an anchored chunk encodes displacement from its anchor to each of 16 future poses computed from poses — so a shove contaminates every chunk anchored within 16 steps of it. The cost is shoves × horizon ÷ samples; at 1–2 shoves per episode that lands at the 17.7% measured here.

This is handled, not merely documented. Every record carries valid_horizon and crosses_perturbation, and chunks are clamped at the first perturbed step at or after the anchor — waypoints past the jump repeat the last pre-jump waypoint. Chunks anchored after a shove are clean and carry the recovery demonstration; only those spanning it are clamped. Consumers must honour valid_horizon, or a clamped tail trains as a genuine label.

Generation

  • —Task variant tube_rack_online_insert_v0, embodiment mycobot_320_m5
  • —Seeds 28700–28925, 200 kept of 226 attempts — disjoint from S1 (28200–28417), v3 (1000–1499), franka (1000–1049) and pilot (8000–8050)
  • —Expert: online branch-continuous Cartesian IK, step_size_m 0.0055, orientation_step_rad 0.0873; executor curobo-pd-v0, cuRobo 0.8.0.post1.dev36
  • —Source: generate_episodes.py --regen-config s1b --seed 28700 @ 3707d38 on sacchin/mycobot-dr-bench-and-random-start

batch_manifest.json records git_dirty: true. The modified paths are machine fingerprints (infra/real/machines/...) and twin/mycobot_twin.egg-info/* build artifacts — no generator, scene or expert code. The generation code is 3707d38 as recorded.

Start-pose sampling (identical to S1)

knobconfiguredobserved
bearing±45°−43.78° … +44.91°
tilt≤30°0° … 29.98°, median 13.35°
zero-tilt fraction0.250.180 (36/200)
tip radius80–550 mm—
tip height120–550 mm—

The zero-tilt fraction again came out below its configured value (36 observed against 50 expected), matching S1's 35/200 closely — so this is a property of the sampler, not a per-batch fluke. It cannot be attributed further from the published data; the discarded seed attempts are not retained.

Fixed across the batch

One rack (rack2), one tube (50ml_tube), no liquid, no clutter, no bore tubes. Appearance DR is dr_v5 lighting-ground only — 1–3 key lights plus dome, 10 table materials. All 25 rack holes covered (4–14 episodes each).

Observations

tool_camera, 640×480, fx 480.599 fy 484.479 cx 316.133 cy 228.148.

Action chunks

vla_chunk_anchored_v3 — H=16, action_dim 9, camera frame: a_i = R_cam(t)ᵀ (p_cam(t+i) − p_cam(t)), 6D continuous rotation (Zhou et al.), camera axes +x right / +y up / −z forward (USD optical), padding repeat_final_pose. 18,348 records, 1:1 with frames, every action_chunk 16×9.

Known caveats

27.8% of frames are the post-success hold. hold_steps_after_success is 25, so each episode continues ~25 steps past success_step with the arm essentially stationary (5,095 frames). Training on all frames unfiltered means that share of labels says "don't move" — relevant if you score translation against a zero-motion baseline. metadata.json success_step marks the boundary.

The manifest overstates one DR knob. appearance.pipette_tip_opacity_range reads [0.06, 0.16], but every episode used exactly 0.1. Tip opacity was not randomized.

Relationship to the staged-regen note

The note specifying this batch calls for task tube_rack_align_v0 with expert (step_size_m 0.0055, orientation_step_rad 0.0873, approach_gain 0.25). This batch is stamped tube_rack_online_insert_v0, which is what --regen-config produces — the preset sets online_insertion = True. The first two expert parameters match exactly; approach_gain does not exist on the online-insertion path, which records ascend_mm, tip_depth_mm, path_ratio and a preflight block instead. So this is a different expert path from the align task the note describes. It is the same path S1 used, so the S1 vs S1b comparison the note asks for is unaffected — both sides are stamped identically.