Code repository for Part Grouping Network, ECCV 2018
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
datasets/CIHP init Aug 1, 2018
evaluation
instance_tool
kaffe
utils init Aug 1, 2018
.gitignore init Aug 1, 2018
LICENSE add LICENSE Aug 3, 2018
README.md
test_pgn.py init Aug 1, 2018
train_pgn.py init Aug 1, 2018

README.md

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.