PeterouZh / PyMAF-X

PyMAF-X: Towards Well-aligned Full-body Model Regression from Monocular Images

Home Page:https://www.liuyebin.com/pymaf-x

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

🚩 [Update] The face part of PyMAF-X has been updated. See face-only evaluation results on the NoW benchmark.

PyMAF-X: Towards Well-aligned Full-body Model Regression from Monocular Images

Hongwen Zhang Β· Yating Tian Β· Yuxiang Zhang Β· Mengcheng Li Β· Liang An Β· Zhenan Sun Β· Yebin Liu


Frame by frame reconstruction. Video clipped from here.

Reconstruction result on a COCO validation image.
Click Here for More Results

Installation

  • Python 3.8
conda create --no-default-packages -n pymafx python=3.8
conda activate pymafx

packages

conda install pytorch==1.9.0 torchvision==0.10.0 cudatoolkit=11.1 -c pytorch -c conda-forge
pip install "git+https://github.com/facebookresearch/pytorch3d.git@stable"
  • other packages listed in requirements.txt
pip install -r requirements.txt

necessary files

smpl_downsampling.npz & mano_downsampling.npz

  • Run the following script to fetch necessary files.
bash fetch_data.sh

SMPL & SMPL-X model files

  • Collect SMPL/MANO/FLAME/SMPL-X model files. Rename model files and put them into the ./data/smpl directory.

Download the partial_mesh files and put it into the ./data/partial_mesh directory.

Download the pre-trained model and put it into the ./data/pretrained_model directory.

After collecting the above necessary files, the directory structure of ./data is expected as follows.

./data
β”œβ”€β”€ J_regressor_extra.npy
β”œβ”€β”€ smpl_mean_params.npz
β”œβ”€β”€ smpl_downsampling.npz
β”œβ”€β”€ mano_downsampling.npz
β”œβ”€β”€ flame_downsampling.npy
β”œβ”€β”€ partial_mesh
β”‚   └── ***_vids.npz
β”œβ”€β”€ pretrained_model
β”‚   └── PyMAF-X_model_checkpoint_v1.1.pt
└── smpl
    β”œβ”€β”€ FLAME2020
    β”‚   β”œβ”€β”€ FLAME_NEUTRAL.pkl
    β”‚   β”œβ”€β”€ flame_dynamic_embedding.npy
    β”‚   └── flame_static_embedding.pkl
    β”œβ”€β”€ MANO_RIGHT.pkl
    β”œβ”€β”€ SMPLX_NEUTRAL_2020.npz
    β”œβ”€β”€ SMPL_NEUTRAL.pkl
    └── model_transfer
        β”œβ”€β”€ MANO_SMPLX_vertex_ids.pkl
        β”œβ”€β”€ SMPL-X__FLAME_vertex_ids.npy
        └── smplx_to_smpl.pkl

Demo

You can first give it a try on Google Colab using the notebook we have prepared, which is no need to prepare the environment yourself: Open In Colab

Run the demo code.

For image folder input:

python -m apps.demo_smplx --image_folder examples/coco_images --detection_threshold 0.3 --pretrained_model data/pretrained_model/PyMAF-X_model_checkpoint_v1.1.pt --misc TRAIN.BHF_MODE full_body MODEL.PyMAF.HAND_VIS_TH 0.1

For video input:

python -m apps.demo_smplx --vid_file examples/dancer_short.mp4 --pretrained_model data/pretrained_model/PyMAF-X_model_checkpoint_v1.1.pt --misc TRAIN.BHF_MODE full_body MODEL.PyMAF.HAND_VIS_TH 0.1

Results will be saved at ./output. You can set different hyperparamters in the scripts, e.g., --detection_threshold for the person detection threshold and MODEL.PyMAF.HAND_VIS_TH for the hand visibility threshold.

Citation

If this work is helpful in your research, please cite the following papers.

@article{pymafx2022,
  title={PyMAF-X: Towards Well-aligned Full-body Model Regression from Monocular Images},
  author={Zhang, Hongwen and Tian, Yating and Zhang, Yuxiang and Li, Mengcheng and An, Liang and Sun, Zhenan and Liu, Yebin},
  journal={arXiv preprint arXiv:2207.06400},
  year={2022}
}

@inproceedings{pymaf2021,
  title={PyMAF: 3D Human Pose and Shape Regression with Pyramidal Mesh Alignment Feedback Loop},
  author={Zhang, Hongwen and Tian, Yating and Zhou, Xinchi and Ouyang, Wanli and Liu, Yebin and Wang, Limin and Sun, Zhenan},
  booktitle={Proceedings of the IEEE International Conference on Computer Vision},
  year={2021}
}

Acknowledgments

Part of the code is borrowed from the following projects, including DaNet, SPIN, VIBE, SPEC, MeshGraphormer, PIFu, DensePose, HMR, HRNet, pose_resnet. Many thanks to their contributions.

About

PyMAF-X: Towards Well-aligned Full-body Model Regression from Monocular Images

https://www.liuyebin.com/pymaf-x

License:Other


Languages

Language:Python 99.9%Language:Shell 0.1%