CoolFace
Datasetpublic

VR-VLA/VR-egoverse-annotation-curated-v6.0

VR-egoverse-annotation-full (egoverse_v06) Egocentric VR hand-tracking corpus: per-frame hand pose, wrist/camera trajectories, and language narratives paired with head-mounted video clips. Schema 0.6.0, generated 2026-07-23, tooling commit e885040. Private, in-progress upload. This release is being synced from local storage in the background, incrementally and in chunks (see Layout below); clip counts on the Hub will grow until the sync catches up to the full local release.… See the full description on the dataset page: https://huggingface.co/datasets/VR-VLA/VR-egoverse-annotation-curated-v6.0.

sourceHugging Faceotherupdated 23d agoView on Hugging Face
0likes253downloads
Dataset Card

VR-egoverse-annotation-full (egoverse_v06)

Egocentric VR hand-tracking corpus: per-frame hand pose, wrist/camera trajectories, and language narratives paired with head-mounted video clips. Schema 0.6.0, generated 2026-07-23, tooling commit e885040.

Private, in-progress upload. This release is being synced from local storage in the background, incrementally and in chunks (see Layout below); clip counts on the Hub will grow until the sync catches up to the full local release. Treat manifest.parquet and gate_report.json as the source of truth for the complete release contents.

Dataset summary

clips49,650 (official test split: 0)
video987.0 h
native resolutions39,436 clips @ 640x360, 10,214 clips @ 640x480
excluded videos15 (14 zero-byte, 1 corrupt) — see release_info.json.excluded_clips
release gategate_report.json — PASS (200 sampled clips, hardened gate: media decode, validator sample, full stream scan, hashes, provenance)

Layout

annotations/egoverse/chunk-000/<clip_id>_shot-0.parquet   # per-frame pose (see schema)
annotations/egoverse/chunk-001/<clip_id>_shot-0.parquet   # ...continues in chunk-NNN, see below
narratives/egoverse/chunk-000/<clip_id>_shot-0.parquet    # language sidecars, same clip_id/chunk layout
videos/<clip_id>/images.front_1.mp4                       # source egocentric video, one file per clip dir
manifest.parquet                                          # clip-level index for the release
gate_report.json                                          # release gate results
release_info.json                                         # provenance, excluded clip ids
CHANGELOG.md, SCHEMA.md, LICENSES.md                       # full governance docs, included in repo

One parquet per clip under annotations/, one row per frame; clip-level constants live in the parquet's file-level metadata under the clip key.

Hub-only chunking: the Hub rejects commits that leave more than 10,000 files in a single directory. Locally, annotations/ and narratives/ hold every clip flat under one chunk-000; on this Hub copy that gets split across chunk-000, chunk-001, ... (each capped under the limit) as the release grows past 10,000 clips. This chunking is Hub-side only — the local release on disk is untouched, and clip ids are unaffected, just their containing chunk-NNN folder. videos/ needs no chunking since each clip already has its own subdirectory. Re-syncing (scripts/sync_egoverse_to_hf.py in the source repo) picks up new local clips and appends them to the current chunk, opening a new one once it's full.

Schema (0.6.0)

Conventions: camera_model=opencv, world_frame=frame0_camera, rotation_storage=matrix_3x3_row_major, cam_pose_direction=world_to_camera, translation_units=meters_approx, angle_units=radians, finger_format=source_native, fps_basis=native_per_clip, frame_indexing=video_frame_absolute, gravity_frame=world_up_unit_vector, clip_span=hand_window.

Per-frame columns: frame (int32, absolute source-frame axis), timestamp (s); per hand (_l, _r): trans (3, world m), wrist_rot (9, hand→world row-major), valid (loss mask), fingers (variable, per hand_format); head: cam_R (9, world→camera), cam_t (3).

`hand_format` registry: mano_axis_angle_15x3, arkit_joints_se3_wrist_relative, egoverse_kp21x3_wrist_relative_cam, xp10m_kp21x3_wrist_relative_cam, none.

v06 clip-meta additions: split (train/test), split_group (leakage-grouping unit), migration (provenance), complete streams registry entries (rate_hz + provenance).

Full column-level spec: SCHEMA.md in this repo (rendered from data_pipeline/corpus/schema.py).

Known caveats

  • —Two native video resolutions in this release (640x360 and 640x480); per-clip width/height are ffprobe-verified in manifest.parquet.
  • —10,214 clips (20.6%) carry no user_id; their split_group falls back to orig_id (singleton groups). Loaders should pin singleton groups to TRAIN to avoid leaking them into validation.
  • —15 videos are excluded from this release (14 zero-byte, 1 corrupt) — ids listed in _excluded.txt / release_info.json.
  • —release_info.json.media_note: source video paths recorded in provenance are absolute paths on the original host; remap the prefix if consuming outside that host.

Provenance

  • —Migrated from egoverse_v05.
  • —Audit: "Audit v0.5.0 dataloader corpus" (2026-07-23) — all blocking findings addressed in v06-r2 (see CHANGELOG.md).
  • —Schema version corrected 0.5.1 → 0.6.0 per the additive-change = MINOR rule.

License

Internal EgoVerse dataset terms — see LICENSES.md. This is a private repository; do not redistribute without checking those terms.

VR-VLA/VR-egoverse-annotation-curated-v6.0 · CoolFace