RoboDojo가 명세 추종 연구의 다음 무대 후보(261006-robodojo_cluster_pi05_smoke)이므로, 35태스크×100 궤적 시뮬 데이터를 ZW 학습 형식(LeRobot v2.1 + Wan2.2 VAE latent + UMT5 지시문 임베딩 + ICL 매니페스트/human latent)으로 바꿀 수 있는지 조사했다. 읽기 전용 조사이며 실제 변환은 하지 않았다.
폴더 (HF RoboDojo-Benchmark/RoboDojo) | 형식 | 크기 | 비고 |
|---|---|---|---|
| RoboDojo_lerobot_v21_video | LeRobot v2.1, joint | 63.4 GB (14,004 파일) | 35태스크 3,500 ep 병합 1개 — 사용 |
| RoboDojo_ee_lerobot_v30_video | v3.0, EE | 65.5 GB | meta+data 0.25 GB만 사용(영상 65.2 GB 불필요) |
| RoboDojo_lerobot_v30_video | v3.0, joint | 119.8 GB | 미사용 |
| RoboDojo (HDF5) | HDF5 35폴더 | 1,851 GB | 미사용 |
| 항목 | 값 |
|---|---|
| fps / 총량 | 25, 1,856,102프레임(20.62 h) |
| 카메라 | cam_high / cam_left_wrist / cam_right_wrist, 480×640 AV1 — RoboTwin과 키·해상도·코덱 동일 |
| joint (v2.1) | 14-D(팔 6-DoF + joint_6=그리퍼), action[t]==state[t+1] 오차 0 |
| EE (v3.0) | 16-D [l_xyz, l_quat(w first), l_g, r_...], quat norm 1, action[t]≈state[t+1] ≤1e-4 |
| 휴지 자세 비교 | RoboTwin (-0.298,-0.314,0.942, 0.70,0,0,0.714, 1) vs RoboDojo (-0.299,-0.352,0.921, 0.707,0,0,0.707, 1) |
| 지시문 | 태스크당 1개(35개), 100 ep 동일 문장 (RoboTwin은 ep마다 상이) |
| 에피소드 길이 | 평균 530 / 중앙값 458 / 최소 104 / 최대 1,536프레임. 태스크 평균 178(insert_key) ~ 1,389(fasten_screws) |
| 디코딩 | pyav/dav1d 578프레임 640×480 ≈ 2.3 s (≈250 fps/프로세스) |
태스크 매핑: task_index i = HDF5 태스크 폴더명 ASCII 정렬 i번째, ep 100i…100i+99가 태스크 i (ep 0 → arrange_largest_number, ep 3043 → stack_bowls 확인).
from_quat(xyzw)로 읽어 축 해석은 틀리지만 학습·추론에서 같은 함수라 일관 — 순서를 바꾸지 말고 그대로 넣어야 RoboTwin 사후학습 가중치와 의미가 맞는다.process_data.py 재사용 여부골격 약 70% 보유(v2.1 입력, action_config, Wan2.2 VAE 3캠 인코딩, empty_emb, 영상 symlink). ZW에 그대로는 불가한 5가지: ① 액션이 joint 14→30 zero-pad(ZW는 EE 16-D 기대) ② 256×256·10 fps(ZW는 224×288, 12.5 fps) ③ 텍스트 키 text_emb(umt_dense가 fallback하므로 동작) ④ 에피소드당 세그먼트 1개(최대 193 latent 프레임) ⑤ 태스크 분할 없는 병합 출력 → 복사해 script/convert_robodojo_to_zerowam.py로 수정. joint 대안(action_transform.yaml)은 RoboTwin ckpt와 액션 공간이 달라져 EE 권장.
| 세그먼트 | 수 | latent 프레임/카메라 | latent | cam_high 임베딩 | 합계 |
|---|---|---|---|---|---|
| 에피소드 전체(LingBot 방식) | 3,500 | 233,547 | 16.9 GB | 14.7 GB | 32 GB |
| 10.3 s 창, 겹침 없음(권장) | 8,906 | 237,588 | 17.2 GB | 37.4 GB | 55 GB |
| 10.3 s 창, hop 5.2 s | 12,757 | 389,771 | 28.3 GB | 53.5 GB | 82 GB |
| 5.2 s 창, hop 5.2 s | 16,034 | 244,497 | 17.7 GB | 67.3 GB | 85 GB |
NAS 총 사용 ≈ 원본 64 GB + 변환 55~85 GB = 120~150 GB. 고유 문장이 35개뿐이므로 로더 약 10줄 패치(태스크 공유 .pt 캐시)로 37~67 GB → 0.15 GB 절감 가능(선택).
| 안 | 개수 | 생성 횟수 | 비용 |
|---|---|---|---|
| 최소 | 태스크당 1 = 35개 | 70회 | 약 5 GPU·h |
| 권장 | 태스크당 10 = 350개 | 약 700회 | Wan FLF 약 52 GPU·h + Nano Banana 편집 1.4k~4.2k회 + VLM 2~3k회 + 사람 검수 700건 |
선례 ICL_config_robotwin.json: 50태스크×50 샘플 = 2,499 짝(고유 human 영상 994개). 자체 파이프라인(Gemini 3.1 Pro VLM + Nano Banana 2 + Wan2.1-I2V-14B FLF, exp-a2b_goal_spec 실측): 영상 1개(40 step, 544×720) 약 4.5분/B200, 사용 가능 비율 약 50%(20개 중 10개), 사람 판정 9/10 "어색함"(제3의 팔, 순간이동).