Creating a new environment
conda create --name tf python==3.7
conda activate tf
conda install -c conda-forge tensorflow=1.15
pip install Pillow matplotlib opencv-python numpy tqdm
Part Grouping Network (PGN)
Ke Gong, Xiaodan Liang, Yicheng Li, Yimin Chen, Ming Yang and Liang Lin, "Instance-level Human Parsing via Part Grouping Network", ECCV 2018 (Oral).
Introduction
PGN is a state-of-art deep learning methord for semantic part segmentation, instance-aware edge detection and instance-level human parsing built on top of Tensorflow.
This distribution provides a publicly available implementation for the key model ingredients reported in our latest paper which is accepted by ECCV 2018.
Crowd Instance-level Human Parsing (CIHP) Dataset
The PGN is trained and evaluated on our CIHP dataset for isntance-level human parsing. Please check it for more model details. The dataset is also available at google drive and baidu drive.
Pre-trained models
We have released our trained models of PGN on CIHP dataset at google drive.
Inference
- Download the pre-trained model and store in $HOME/checkpoint.
- Prepare the images and store in $HOME/datasets.
- Run test_pgn.py.
- The results are saved in $HOME/output
- Evaluation scripts are in $HOME/evaluation. Copy the groundtruth files (in Instance_ids folder) into $HOME/evaluation/Instance_part_val before you run the script.
Training
- Download the pre-trained model and store in $HOME/checkpoint.
- Download CIHP dataset or prepare your own data and store in $HOME/datasets.
- For CIHP dataset, you need to generate the edge labels and left-right flipping labels (optional). We have provided a script for reference.
- Run train_pgn.py to train PGN.
- Use test_pgn.py to generate the results with the trained models.
- The instance tool is used for instance partition process from semantic part segmentation maps and instance-aware edge maps, which is written in MATLAB.
Related work
- Self-supervised Structure-sensitive Learning SSL, CVPR2017
- Joint Body Parsing & Pose Estimation Network JPPNet, T-PAMI2018
- Graphonomy: Universal Human Parsing via Graph Transfer Learning Graphonomy, CVPR2019