CoolFace
Apppublic

shinben0327/hoi-retarget-viewer

sourceHugging Facecc-by-nc-sa-4.0updated 5d agoView on Hugging Face
0likes
App README

HOI-Retarget — Contact Playback

A 3D viewer for the [HOI-Retarget corpus](https://huggingface.co/datasets/shinben0327/hoi-retarget): human–object interaction capture retargeted onto humanoid robots, with the per-link contact flags the pipeline treats as a constraint rather than an output.

Pick a clip, scrub it, orbit it. When a contact link's flag is set at that frame, the link tints and its lane lights up — orange for hands, cyan for feet. Contact is the only saturated colour on the page, so you can read frame by frame exactly which palm or foot is on the object.

What is in it

13,448 clips covering all 13,904 corpus trajectories, streamed from the dataset repository rather than bundled here.

datasetG1 clipsH2 clipsobjectscollaborative
OMOMO4,4214,42113
ParaHome98098012
NeuralDome91591520
CoRoleHOI22822823456
IMHD²1801807
total6,7246,72475456

Two robots, every clip retargeted to both: Unitree G1 (42 bodies, objects scaled 0.83) and Unitree H2 (36 bodies, objects at 1.0). Four contact links each — two palm pads, two ankles.

The 456 collaborative clips are two people carrying one object, retargeted to two robots sharing one scene. The second robot is tinted steel blue-violet and its contact lanes are striped, so you can tell at a glance whose hand is on the object. Every CoRoleHOI motion is half of a pair, so none appears on its own; the two independently solved object tracks agree to within 1 cm once each agent's z_offset_m is applied.

Finding a clip

13,448 is too many to scroll, so:

  • Search matches object, subject, dataset, robot and clip id; terms are AND-ed.
  • Filters for dataset, robot and QC result.
  • QC defaults to the 12,520 clips that pass. The 928 that fail are one click away: a joint parked against its stop, or a wrist saturated while the palm is nowhere near the object.

Keyboard: / focuses search, l the list, arrows move the cursor, Enter loads.

Objects

Object meshes are keyed <dataset>__<object>, never by bare name. chair is a different mesh in NeuralDome and IMHD², and so is pan in ParaHome and IMHD² — keying on the name alone draws the wrong object. All 75 ship with this Space; only the trajectories stream.

Light and dark

Follows your system, with a toggle in the header that overrides it. The contact hues are identical in both themes; what changes is what they are drawn on, so orange and cyan stay legible against paper as well as against slate.

Data format

The dataset card's Seeing the motions section has the index.json schema and the block-major binary layout. ?data=<relative dir> points the viewer at a local copy for development; remote origins are refused.

Licence

CC BY-NC-SA 4.0, propagated from the most restrictive source: three of the five datasets are themselves NonCommercial-ShareAlike.

Object geometry keeps its own terms — MIT for the OMOMO meshes (via InterMimic), the source dataset's licence for the rest. The per-dataset breakdown is in `licenses/OBJECTS.md`. Robot models are Unitree Robotics, BSD-3-Clause. Contact annotations originate with InterAct. Full attribution in the corpus's `NOTICE.md`.

The retargeting code is separate and permissive (BSD-3-Clause): [github.com/shinben0327/hoi-retarget](https://github.com/shinben0327/hoi-retarget).