All Projects → d-li14 → Psconv

d-li14 / Psconv

Licence: mit
[ECCV 2020] PSConv: Squeezing Feature Pyramid into One Compact Poly-Scale Convolutional Layer

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to Psconv

Kaggle Imaterialist
The First Place Solution of Kaggle iMaterialist (Fashion) 2019 at FGVC6
Stars: ✭ 451 (+226.81%)
Mutual labels:  object-detection, instance-segmentation
Centermask
CenterMask : Real-Time Anchor-Free Instance Segmentation, in CVPR 2020
Stars: ✭ 646 (+368.12%)
Mutual labels:  object-detection, instance-segmentation
Mmdetection Annotated
mmdetection源码注释
Stars: ✭ 544 (+294.2%)
Mutual labels:  object-detection, instance-segmentation
Paz
Hierarchical perception library in Python for pose estimation, object detection, instance segmentation, keypoint estimation, face recognition, etc.
Stars: ✭ 131 (-5.07%)
Mutual labels:  object-detection, instance-segmentation
Panet
PANet for Instance Segmentation and Object Detection
Stars: ✭ 1,170 (+747.83%)
Mutual labels:  object-detection, instance-segmentation
Mask rcnn
Mask R-CNN for object detection and instance segmentation on Keras and TensorFlow
Stars: ✭ 21,044 (+15149.28%)
Mutual labels:  object-detection, instance-segmentation
Centermask2
Real-time Anchor-Free Instance Segmentation, in CVPR 2020
Stars: ✭ 596 (+331.88%)
Mutual labels:  object-detection, instance-segmentation
Siamese Mask Rcnn
Siamese Mask R-CNN model for one-shot instance segmentation
Stars: ✭ 257 (+86.23%)
Mutual labels:  object-detection, instance-segmentation
Maskrcnn Modanet
A Mask R-CNN Keras implementation with Modanet annotations on the Paperdoll dataset
Stars: ✭ 59 (-57.25%)
Mutual labels:  object-detection, instance-segmentation
Solo
SOLO and SOLOv2 for instance segmentation, ECCV 2020 & NeurIPS 2020.
Stars: ✭ 992 (+618.84%)
Mutual labels:  object-detection, instance-segmentation
Involution
[CVPR 2021] Involution: Inverting the Inherence of Convolution for Visual Recognition, a brand new neural operator
Stars: ✭ 252 (+82.61%)
Mutual labels:  object-detection, instance-segmentation
Mask rcnn pytorch
Mask R-CNN for object detection and instance segmentation on Pytorch
Stars: ✭ 123 (-10.87%)
Mutual labels:  object-detection, instance-segmentation
Tide
A General Toolbox for Identifying Object Detection Errors
Stars: ✭ 309 (+123.91%)
Mutual labels:  object-detection, instance-segmentation
Swa object detection
SWA Object Detection
Stars: ✭ 128 (-7.25%)
Mutual labels:  object-detection, instance-segmentation
Simpledet
A Simple and Versatile Framework for Object Detection and Instance Recognition
Stars: ✭ 2,963 (+2047.1%)
Mutual labels:  object-detection, instance-segmentation
Detectorch
Detectorch - detectron for PyTorch
Stars: ✭ 566 (+310.14%)
Mutual labels:  object-detection, instance-segmentation
D2det
D2Det: Towards High Quality Object Detection and Instance Segmentation (CVPR2020)
Stars: ✭ 234 (+69.57%)
Mutual labels:  object-detection, instance-segmentation
Vovnet Detectron2
VoVNet backbone networks for detectron2, in CVPR 2020
Stars: ✭ 249 (+80.43%)
Mutual labels:  object-detection, instance-segmentation
Gcnet
GCNet: Non-local Networks Meet Squeeze-Excitation Networks and Beyond
Stars: ✭ 945 (+584.78%)
Mutual labels:  object-detection, instance-segmentation
Bmaskr Cnn
Boundary-preserving Mask R-CNN (ECCV 2020)
Stars: ✭ 116 (-15.94%)
Mutual labels:  object-detection, instance-segmentation

Poly-Scale Convolution

Official implementation of our PSConv operator as described in PSConv: Squeezing Feature Pyramid into One Compact Poly-Scale Convolutional Layer (ECCV'20) by Duo Li, Anbang Yao and Qifeng Chen on the MS COCO 2017 benchmark.

We collect multi-scale feature representations in a finer granularity, by tactfully allocating a spectrum of dilation rates in the kernel lattice.

Getting Started

Installation

Following the instructions from INSTALL.md for installation. More detailed guidance can be found from MMDetection.

Download ImageNet pre-trained checkpoints

Fetch pre-trained weights of PS-ResNet-50, PS-ResNet-101 and PS-ResNeXt-101 (32x4d) backbones and put them to your local path. Set the pretrained path of config file and launch the training of detectors.

Training

The default learning rate in config files is for 8 GPUs and 2 img/GPU (batch size = 8*2 = 16). According to the Linear Scaling Rule, you need to set the learning rate proportional to the batch size if you use different GPUs or images per GPU, e.g., lr=0.01 for 4 GPUs * 2 img/gpu and lr=0.08 for 16 GPUs * 4 img/GPU.

# single-gpu training
python tools/train.py ${CONFIG_FILE}

# multi-gpu training
./tools/dist_train.sh ${CONFIG_FILE} ${GPU_NUM} [optional arguments]

Optional arguments are:

  • --validate (strongly recommended): Perform evaluation at every k (default value is 1) epochs during the training.
  • --work_dir ${WORK_DIR}: Override the working directory specified in the config file.
  • --resume_from ${CHECKPOINT_FILE}: Resume from a previous checkpoint file.

Test

# single-gpu testing
python tools/test.py ${CONFIG_FILE} ${CHECKPOINT_FILE} [--out ${RESULT_FILE}] [--eval ${EVAL_METRICS}] [--show]

# multi-gpu testing
./tools/dist_test.sh ${CONFIG_FILE} ${CHECKPOINT_FILE} ${GPU_NUM} [--out ${RESULT_FILE}] [--eval ${EVAL_METRICS}]

Optional arguments:

  • RESULT_FILE: Filename of the output results in pickle format. If not specified, the results will not be saved to a file.
  • EVAL_METRICS: Items to be evaluated on the results. Allowed values are: proposal_fast, proposal, bbox, segm, keypoints.
  • --show: If specified, detection results will be ploted on the images and shown in a new window. (Only applicable for single GPU testing.)

Model Zoo

Faster R-CNN

Backbone Style Lr schd box AP Download
R-50-FPN pytorch 1x 38.4 model | log
R-101-FPN pytorch 1x 40.9 model | log
X-101-FPN pytorch 1x 41.3 model | log

Mask R-CNN

Backbone Style Lr schd box AP mask AP Download
R-50-FPN pytorch 1x 39.4 35.6 model | log
R-101-FPN pytorch 1x 41.6 37.4 model | log
X-101-FPN pytorch 1x 42.4 38.0 model | log

Cascade R-CNN

Backbone Style Lr schd box AP Download
R-50-FPN pytorch 1x 41.9 model | log
R-101-FPN pytorch 1x 43.8 model | log
X-101-FPN pytorch 1x 44.4 model | log

Cascade Mask R-CNN

Backbone Style Lr schd box AP mask AP Download
R-50-FPN pytorch 1x 42.9 36.9 model | log
R-101-FPN pytorch 1x 44.6 38.4 model | log
X-101-FPN pytorch 1x 45.3 38.9 model | log

Acknowledgement

This implementation is built upon MMDetection. Thanks Kai Chen for releasing this awesome toolbox and his helpful discussions.

Since this project is finished nearly one year ago, we adapt our code from an early commit 713e98b.

Citation

If you find our work useful in your research, please consider citing:

@InProceedings{Li_2020_ECCV,
author = {Li, Duo and Yao, Anbang and Chen, Qifeng},
title = {PSConv: Squeezing Feature Pyramid into One Compact Poly-Scale Convolutional Layer},
booktitle = {The European Conference on Computer Vision (ECCV)},
month = {August},
year = {2020}
}
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].