How hanyang9/umr works
UMR retargets human or character motion to a humanoid robot through two documented stages: learning point-cloud correspondence for a source-template/robot pair, then optimizing motion from those correspondences and constraints. The primary pipeline orchestrates correspondence building, training, retargeting, and viewing; specialized entry points adapt this workflow for interaction, character, NR, AdaPT, and batch data. The README documents these capabilities, while sampled source excerpts are partial, so uncertain internal calls are omitted.
Main entry points: humanoid_retarget_pipeline.py Standard Pipeline · train_correspondence_template_residual_ae.py Correspondence Training · humanoid_retarget_pipeline_adapt.py AdaPT Pipeline · humanoid_retarget_pipeline_batch.py Batch Pipeline
Components 21
Pipeline Orchestration
- Standard Pipeline
scripts/humanoid_retarget_pipeline.py - Batch Pipeline
scripts/humanoid_retarget_pipeline_batch.py - HSI / HOI Pipeline
scripts/humanoid_retarget_pipeline_hsi_hoi.py - Character Pipeline
scripts/humanoid_retarget_pipeline_character.py - NR Pipeline
scripts/humanoid_retarget_pipeline_nr.py - AdaPT Pipeline
scripts/humanoid_retarget_pipeline_adapt.py
Motion Sources
- Source Adapters
scripts/soma_source.py - NR Motion Adapter
scripts/nr_source.py - Surface Sampling
scripts/surface_sampling.py
Correspondence Learning
- Correspondence Dataset
scripts/build_correspondence_ae_dataset.py - AdaPT Dataset
scripts/build_adapt_correspondence_dataset.py - Correspondence Training
scripts/train_correspondence_template_residual_ae.py
Retargeting And Results
- Surface Retarget Solver
scripts/retarget_body_segment_surface.py - Interaction Solver
scripts/retarget_body_segment_surface_hoi_hsi.py - Batch Retargeting
scripts/retarget_smpl_to_humanoid_surface_vector_batch.py - Retargeted Motion
- Result Viewer
scripts/visualize_robot_retarget_result.py - AdaPT Correspondence Viewer
static/adapt_correspondence_viewer/app.js
Other components
- Researcher
- Motion Data
- Robot MJCF
Connections 34
- Researcher → Standard Pipeline: runs
- Researcher → Batch Pipeline: runs
- Researcher → HSI / HOI Pipeline: runs
- Researcher → Character Pipeline: runs
- Researcher → NR Pipeline: runs
- Researcher → AdaPT Pipeline: runs
- Motion Data → Standard Pipeline: provides motion
- Robot MJCF → Standard Pipeline: configures robot
- Standard Pipeline → Surface Sampling: builds point clouds
- Standard Pipeline → Correspondence Dataset: builds dataset
- Standard Pipeline → Correspondence Training: trains slots
- Standard Pipeline → Surface Retarget Solver: runs retargeting
- Standard Pipeline → Result Viewer: opens results
- Motion Data → Source Adapters: supplies source data
- Source Adapters → Standard Pipeline: prepares motion
- Batch Pipeline → Source Adapters: prepares batch inputs
- Batch Pipeline → Batch Retargeting: dispatches clips
- Batch Pipeline → Retargeted Motion: writes outputs
- HSI / HOI Pipeline → Interaction Solver: runs interaction retargeting
- HSI / HOI Pipeline → Correspondence Training: trains correspondence
- Character Pipeline → Surface Sampling: builds samples
- Character Pipeline → Correspondence Training: trains correspondence
- Character Pipeline → Surface Retarget Solver: runs retargeting
- NR Pipeline → NR Motion Adapter: loads motion
- NR Pipeline → Correspondence Training: trains correspondence
- NR Pipeline → Interaction Solver: runs retargeting
- AdaPT Pipeline → AdaPT Dataset: builds correspondence data
- AdaPT Pipeline → Correspondence Training: trains correspondence
- AdaPT Pipeline → Surface Retarget Solver: runs retargeting
- AdaPT Pipeline → AdaPT Correspondence Viewer: opens correspondence view
- Surface Retarget Solver → Retargeted Motion: writes motion
- Interaction Solver → Retargeted Motion: writes motion
- Retargeted Motion → Result Viewer: loads for playback
- Correspondence Dataset → Correspondence Training: trains from