facebookresearch / Eft

Licence: other
visualization code for 3D human body annotation by EFT (Exemplar Fine-tuning)

Programming Languages

python
139335 projects - #7 most used programming language

Exemplar Fine-Tuning for 3D Human Pose Fitting Towards In-the-Wild 3D Human Pose Estimation

This repository contains pseudo-GT 3D human pose data produced by Exemplar Fine-Tuning (EFT) method for in-the-wild 2D images. The 3D pose data is in the form of SMPL parameters, and this can be used as a supervision to train a 3D pose estimation algiritm (e.g., SPIN or HMR). We found that our EFT dataset is sufficient to build a model that is comparable to the previous SOTA algorithms without using any other indoor 3D pose dataset. See our paper for more details.

This repository also contains the pre-trained 3D pose estimation model trained with our EFT dataset and monocular motion capture demo tools. See README_bodymocap.

News:

  • We have released FrankMocap by which you can obtain both 3D body+hand outputs. The body module is the same as this repository's model. We encourage to use FrankMocap for body pose estimation.

Installing Requirements

It is convenient and safe to use conda environment

conda create -n venv_eft python=3.6
conda activate venv_eft
pip install -r requirements.txt

Download EFT Fitting data (json formats)

This repository only provides corresponding SMPL parameters for public 2D keypoint datasets (such as COCO, MPII). You need to download images from the original dataset website.

Run the following script to download our EFT fitting data:

sh scripts/download_eft.sh 
  • The EFT data will be saved in ./eft_fit/(DB_name).json. Each json file contains a version EFT fitting for a public dataset.
  • See Data Format for details
  • Currently available EFT fitting outputs (cvpr submit version):
Dataset Name SampleNum Version Manual Filtering File Name
COCO2014-12kp 28K 0.1 No COCO2014-Part-ver01.json
COCO2014-6kp 74K 0.1 No COCO2014-All-ver01.json
MPII 14K 0.1 No MPII_ver01.json
LSPet 7K 0.1 No LSPet_ver01.json
  • COCO2014-All-ver01.json: COCO 2014 training set by electing the samples 6 keypoints or more keypoints are annotated.
  • COCO2014-Part-ver01.json: COCO 2014 training set by selecting the sample that 12 limb keypoints or more are annotated.
  • MPII_ver01.json : MPII Keypoint Dataset
  • LSPet_ver01.json : LSPet Dataset
  • PanopticStudio DB: TBA
  • Note that the number of samples are fewer than the original sample numbers in each DB, since we automatically filtered out bad samples
  • Manual Filtering: we plan to filter out erroneous results by manual annotations

Download Other Required Data

  • SMPL Model (Neutral model: basicModel_neutral_lbs_10_207_0_v1.0.0.pkl):

    • Download in the original website. You need to register to download the SMPL data.
    • Put the file in: ./extradata/smpl/basicModel_neutral_lbs_10_207_0_v1.0.0.pkl
  • Densepose (optional, for Densepose rendering):

    • Run the following script
        sh scriptsdownload_dp_uv.sh    
    
    • Files are saved in ./extradata/densepose_uv_data/

Download Images from Original Public DB website

Visualize EFT Fitting Results

Motion Capture Demo

Citation

@article{joo2020eft,
  title={Exemplar Fine-Tuning for 3D Human Pose Fitting Towards In-the-Wild 3D Human Pose Estimation},
  author={Joo, Hanbyul and Neverova, Natalia and Vedaldi, Andrea},
  journal={arXiv preprint arXiv:2004.03686},
  year={2020}
}

License

CC-BY-NC 4.0. See the LICENSE file.

References

The body mocap code is a modified version of SPIN, and the majority of this code is borrowed from it.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].