Skip to content

Engineering-Course/CIHP_PGN

Repository files navigation

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

  1. Download the pre-trained model and store in $HOME/checkpoint.
  2. Prepare the images and store in $HOME/datasets.
  3. Run test_pgn.py.
  4. The results are saved in $HOME/output
  5. 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

  1. Download the pre-trained model and store in $HOME/checkpoint.
  2. Download CIHP dataset or prepare your own data and store in $HOME/datasets.
  3. For CIHP dataset, you need to generate the edge labels and left-right flipping labels (optional). We have provided a script for reference.
  4. Run train_pgn.py to train PGN.
  5. Use test_pgn.py to generate the results with the trained models.
  6. 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