项目作者: Angzz

项目描述 :
Panoptic Feature Pyramid Networks
高级语言: Python
项目地址: git://github.com/Angzz/panoptic-fpn-gluon.git
创建时间: 2019-05-03T16:22:50Z
项目社区:https://github.com/Angzz/panoptic-fpn-gluon

开源协议:Apache License 2.0

下载


Panoptic Feature Pyramid Networks

This is an unofficial implementation of Panoptic-FPN in a gluon-cv style, we implemented this framework in a fully Gluon API, please stay tuned!

Main Results

Cityscapes

  • panoptic_fpn_resnet50_v1b_citys
- PQ SQ RQ N
All 55.4 77.9 69.3 19
Things 52.4 78.1 66.6 8
Stuff 57.6 77.7 71.2 11

Installation

  1. Install cuda 10.0 and mxnet 1.4.0.
    1. sudo pip3 install mxnet-cu100==1.4.0.post0
  2. Clone the code, and install gluoncv with setup.py.
    1. cd panoptic-fpn-gluon
    2. sudo python3 setup.py build
    3. sudo python3 setup.py install

Preparation

Cityscapes

  1. Download Cityscapes datasets follow the official tutorials and create a soft link.

    1. ln -s $DOWNLOAD_PATH ~/.mxnet/datasets/citys

    You can also download from Cityscapes and execute the command above.

  2. Create Panoptic images for training and Inference, the code can be found here. Then execute the command below:

    1. python3 createPanopticImgs.py --dataset-folder ~/.mxnet/datasets/citys/gtFine/ --output-folder ~/.mxnet/datasets/citys/gtFine/

    Note that the correct data structure is shown below:

    1. $ ls ~/.mxnet/datasets/citys
    2. ├── gtFine
    3. ├── train/
    4. ├── val/
    5. ├── test/
    6. ├── cityscapes_panoptic_train/
    7. ├── cityscapes_panoptic_val/
    8. ├── cityscapes_panoptic_test/
    9. ├── cityscapes_panoptic_train.json
    10. └── cityscapes_panoptic_val.json
    11. ├── leftImg8bit
    12. ├── train/
    13. ├── val/
    14. └── test/
  3. More preparations can also refer to GluonCV.

  4. All experiments are performed on 8 * 2080ti GPU with Python3.5, cuda10.0 and cudnn7.5.0.

COCO

  • TODO

Structure

  1. * Model : $ROOT/gluoncv/model_zoo/panoptic/
  2. * Train & valid scripts : $ROOT/scripts/panoptic/
  3. * Metric : $ROOT/gluoncv/utils/metric/

Training & Inference

Cityscapes

  1. Clone the training scripts here, then train panoptic_fpn_resnet50_v1b_citys with:

    1. python3 train_panoptic_fpn.py --network resnet50_v1b --use-fpn --gpus 0,1,2,3,4,5,6,7 --num-workers 32 --log-interval 10 --save-interval 20 --val-interval 10 --epochs 700 --lr-decay-epoch 430,590 --lr-warmup 1600

    Note that we follow the training settings described in original paper.

  2. Clone the validation scripts here, then validate panoptic_fpn_resnet50_v1b_citys with:

    1. python3 eval_panoptic_fpn.py --network resnet50_v1b --gpus 0,1,2,3,4,5,6,7 --pretrained ./XXX.params

    COCO

  • TODO

Reference

  • Panoptic FPN: Alexander Kirillov, Ross Girshick, Kaiming He, Piotr Dollár.
    “Panoptic Feature Pyramid Networks.” CVPR (2019 oral). [paper]