Pose Residual Network

This repository contains a PyTorch implementation of the Pose Residual Network (PRN) presented in our ECCV 2018 paper:

Muhammed Kocabas, Salih Karagoz, Emre Akbas. MultiPoseNet: Fast Multi-Person Pose Estimation using Pose Residual Network. In ECCV, 2018.

Getting Started

We have tested our method on Coco Dataset

Prerequisites

python
pytorch
numpy
tqdm
pycocotools
progress
scikit-image

Installing

  1. Clone this repository
    git clone https://github.com/salihkaragoz/pose-residual-network-pytorch.git

  2. Install Pytorch

  3. pip install -r src/requirements.txt

  4. To download COCO dataset train2017 and val2017 annotations run: bash data/coco.sh. (data size: ~240Mb)

Training

python train.py

For more options look at opt.py

Testing

  1. Download pre-train model

  2. python test.py --test_cp=PathToPreTrainModel/PRN.pth.tar

Results

Results on COCO val2017 Ground Truth data.

 Average Precision  (AP) @[ IoU=0.50:0.95 | area=   all | maxDets= 20 ] = 0.892
 Average Precision  (AP) @[ IoU=0.50      | area=   all | maxDets= 20 ] = 0.978
 Average Precision  (AP) @[ IoU=0.75      | area=   all | maxDets= 20 ] = 0.921
 Average Precision  (AP) @[ IoU=0.50:0.95 | area=medium | maxDets= 20 ] = 0.883
 Average Precision  (AP) @[ IoU=0.50:0.95 | area= large | maxDets= 20 ] = 0.912
 Average Recall     (AR) @[ IoU=0.50:0.95 | area=   all | maxDets= 20 ] = 0.917
 Average Recall     (AR) @[ IoU=0.50      | area=   all | maxDets= 20 ] = 0.982
 Average Recall     (AR) @[ IoU=0.75      | area=   all | maxDets= 20 ] = 0.937
 Average Recall     (AR) @[ IoU=0.50:0.95 | area=medium | maxDets= 20 ] = 0.902
 Average Recall     (AR) @[ IoU=0.50:0.95 | area= large | maxDets= 20 ] = 0.944

GitHub