← index
2026-10-22

EgoDex 전처리 — LeRobot v3 + OpenWAM 손 action 리더

Wan2.2-5B WAM(OpenWAM, mutual attention)으로 영상 + 사람 손 action을 함께 학습하기 위한 데이터 파이프라인

TL;DR

3,243
test ep 변환
826k
frame (7.65 h)
18.9 min
변환 (32 CPU)
48-D
손 action → α 80-D 슬롯

1배경 / 결정

2데이터 형식

/home/nas_main/datasets/robot/EgoDex/lerobot_v3/<split>/ meta/info.json, meta/tasks.parquet, meta/episodes/chunk-000/file-000.parquet, meta/egodex_hand_stats.npy data/chunk-CCC/file-FFF.parquet (100 ep / file) videos/observation.images.head/chunk-CCC/file-FFF.mp4 (640x360, 30 fps, H.264 CRF 20, GOP 15) per frame: observation.camera.cam2world(16) · hand.{l,r}.joints(26x3) · wrist_rot6d(6) · conf(26, -1=없음) · in_fov per episode: prompt(llm_description / _2), EgoDex attrs 전부, intrinsics(640x360), has_confidences, conf/fov 통계
항목test split 값
에피소드 / 프레임 / 프롬프트3,243 / 826,253 / 1,285
크기영상 2.3 GB + 라벨 739 MB (≈ 2.9 + 0.9 KB/frame)
길이중앙 5.4 s (p5 1.7, p95 23.3), 33 frame 미만 16 ep
confidence 있음86% (basic_fold, pour, stack, wipe_screen 등 task 단위로 없음)
손목 in-FOV (L/R)0.72 / 0.74
손목 conf 평균 (L/R)0.87 / 0.96 · Metacarpal conf 항상 0 · 손끝 conf 중앙 0.24–0.6
변환 결과 영상(640×360) 위에 저장 라벨을 직접 투영 (흰색 = conf < 0.5). 원본 대비 PSNR 37–41 dB, 다음 프레임 대비 34–38 dB → off-by-one 없음.

3OpenWAM 리더 egodex_hand

검증결과
raw 역변환 (손끝 world 위치)최대 0.0004 mm
min-max 왕복 (clip 포함)중앙 0 · p95 1.4 mm · 최대 19.9 mm; 1% 넘게 clip되는 dim 1개 (1.4%)
샘플action (32, 80), mask 0.60 (= 48/80, 양손 유효), proprio (1, 80), 9 × 576×320, 826,253 window
리더 출력: 정규화된 action을 되돌려 각 영상 프레임의 카메라로 옮겨 그림 (파랑 = 왼손, 빨강 = 오른손; 각 샘플 9프레임 중 1–8번째).
두 번째·세 번째 샘플처럼 손목·손끝이 수 cm 어긋나는 경우는 저장된 joints를 직접 투영해도 똑같음 → 리더가 아니라 EgoDex 라벨 자체 오차 (손이 카메라에 매우 가까울 때 wrist z 6–12 cm, 손목 부근).
같은 window의 저장 라벨 직접 투영 (위: thread_unthread_bead_necklace/38, 아래: clean_tableware/26).

4전체 split 진행

splitzip다운로드 job변환 job (afterok)
part1–5각 ≈ 322–331 GB209725–209729 (own, 2 CPU)209828–209832 (32 CPU)
extra224 GB209730209833

CDN이 연결을 중간에 끊어(IncompleteRead) 첫 다운로드가 죽음 → readinto 루프로 남은 range 재요청 + 셸 재실행 루프. 잡당 4–6 MB/s, 약 20 h 예상.

5Takeaway / Next

EgoDex를 영상 + 프롬프트 + 손 action + 시간축 마스크로 OpenWAM에 바로 넣을 수 있게 됨. action은 EgoSteer layout과 같고 α 슬롯에 맞춰 두어 α/Study 체크포인트 warm start 비교가 가능.