Skip to content

HMC: Hierarchical Mesh Coarsening for Skeleton-free Motion Retargeting

License

Notifications You must be signed in to change notification settings

HoeTosaki/HMC_repo

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

repo_title


Python Pytorch PyG arXiv GitHub license visitor badge

Official Repository for the newly published paper entitled "HMC: Hierarchical Mesh Coarsening for Skeleton-free Motion Retargeting"

title_img

[Project Page] [ArXiv Page] [Paper]


Demo Presentation

Environment Preparation

Conda

conda install --yes --file requirements.txt

Pip

pip install -r requirements.txt

Quick Start

1. download the pretrained model & demo data from Google Drive

Drop the pretrained model into pretrained/ and demo data into data/, respectively.

Here are backup links to Baidu Disk for both model & data.

2. retarget greeting motion to a Mixamo character in T-pose.

Run

python inference_hmc.py

Then, a motion sequence as greeting_on_target-XXXXXX.obj will be saved in data\greeting_on_target\.

If the retargeted sequence is converted to .abc format (a routine for automatic conversion will be provided in the future), it should be like this:

demo_output

Inference on your own data

1. prepare a source motion

Create a source folder data/{src_name} comprising source T-pose (data/{src_name}/{src_name}-tpose.obj) and motion sequence (data/{src_name}/{src_name}-{idx}.obj, where {idx} is counted from $1$).

2. prepare a target character

Create a target folder data/{tgt_name} comprising only target T-pose (data/{tgt_name}/{tgt_name}-tpose.obj).

3. retarget motions

Run

python inference_hmc.py --src_name={src_name} --tgt_name={tgt_name}

and a motion sequence of the same length as source motion will be produced in folder data/{tgt_name}/

X. to accelerate inference or improve retargeting performance

As an alternative to 3, run

python inference_hmc.py --src_name={src_name} --tgt_name={tgt_name} --precoarsen_src={pc_ratio}

where {pc_ratio} is a continuous value in $(0,1]$ that pre-coarsens the input source motion before retargeting. With a smaller {pc_ratio}, the retargeting process can be accelerated, and the model also considers few mesh details on the source. However, one should note that in some cases, a small {pc_ratio} may induce extra jitters in target motion due to uncaught local motions.

Citation

If you use HMC in any context, please cite the following paper:

@misc{wang2023hmc,
      title={HMC: Hierarchical Mesh Coarsening for Skeleton-free Motion Retargeting}, 
      author={Haoyu Wang and Shaoli Huang and Fang Zhao and Chun Yuan and Ying Shan},
      year={2023},
      eprint={2303.10941},
      archivePrefix={arXiv},
      primaryClass={cs.CV}
      }
  }

Flag Counter

About

HMC: Hierarchical Mesh Coarsening for Skeleton-free Motion Retargeting

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published