• Stars
    star
    554
  • Rank 80,342 (Top 2 %)
  • Language
    Python
  • License
    Apache License 2.0
  • Created almost 4 years ago
  • Updated almost 4 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

This repo is implemented based on detectron2 and centernet

This repo is implemented based on detectron2 and CenterNet

What's new

  • Support imgaug data augmentation
  • Support swa
  • Support Knowledge Distill, teacher-student, designed by myself
  • Support other LR_SCHEDULER
  • Support Optimizer RangerLars, not convergence in COCO
  • We provide some examples and scripts to convert centerX to Caffe, ONNX and TensorRT format in projects/speedup

What's comming

  • [๏ธโœ”] Support simple inference
  • [โœ”] Support to caffe, onnx, tensorRT
  • Support keypoints

Requirements

  • Python >= 3.7
  • PyTorch >= 1.5
  • torchvision that matches the PyTorch installation.
  • OpenCV
  • pycocotools
pip install cython; pip install 'git+https://github.com/cocodataset/cocoapi.git#subdirectory=PythonAPI'
  • GCC >= 4.9
gcc --version
  • detectron2
pip install -U 'git+https://github.com/CPFLAME/detectron2.git'
pip install git+https://github.com/pabloppp/pytorch-tools -U

Data prepare

the same as detectron2

Training

modify your yamls in run.sh

sh run.sh

Testing and Evaluation

modify your yamls in run.sh, add eval-only and MODEL.WEIGHTS in your setting

sh run.sh

Performance

coco

This repo use less training time to get a competitive performance compared to other versions

Backbone ResNet-50

Code mAP epoch
centerX 33.2 70
centerX 34.3 140
centernet-better 34.9 140

Backbone ResNet-18

centerX_KD means ResNet-50(33.2) as teacher, ResNet-18(27.9) as student, Knowledge Distill for 70 epoch in coco.

Code mAP epoch
centerX 30.2 140
centerX 27.9 70
centerX_KD 31.0 70
centernet-better 29.8 140
centernet 28.1 140

crowd human

  • optim: SGD
  • lr: 0.02
  • scheduler: WarmupMultiStepLR ,drop 0.1 in (50, 62) for 80 epoch; (90 ,120) for 140 epoch
  • train size: 512 max size
  • test size: 512 max size
  • batch size: 64
  • woGT: KD only use teacher loss
Backbone mAP mAP50 mAP75 epoch teacher student_pretrain
resdcn18 31.2 56.6 30.8 80 - -
resdcn18_swa 31.1 56.6 30.4 80 - -
resdcn18_syncBN 31.3 56.6 30.7 80 - -
resdcn18_imgaug 29.6 54.7 28.9 80 - -
resdcn18_KD 34.5 60.2 34.3 80 resdcn50 resdcn18
resdcn18_KD_woGT 33.0 58.3 32.7 80 resdcn50 resdcn18
resdcn18_KD_woGT_scratch 32.8 58.1 32.6 140 resdcn50 imagenet
resdcn50 35.1 61.2 35.3 80 - -

KD exp

crowd human KD

Generalization performance for Knowledge Distill

Backbone crowd mAP coco_person mAP epoch teacher student_pretrain train_set
resdcn50 35.1 35.7 80 - - crowd
resdcn18(baseline) 31.2 31.2 80 - - crowd
resdcn18_KD 34.5 34.9 80 resdcn50 resdcn18 crowd
resdcn18_KD_woGT_scratch 32.8 34.2 140 resdcn50 imagenet crowd
resdcn18_KD_woGT_scratch 34.1 36.3 140 resdcn50 imagenet crowd+coco

multi teacher KD

Backbone mAP crowd mAP coco_car epoch teacher student_pretrain train_set
1.resdcn50 35.1 - 80 - - crowd
2.resdcn18 31.7 - 70 - - crowd
3.resdcn50 - 31.6 70 - - coco_car
4.resdcn18 - 27.8 70 - - coco_car
resdcn18_KD_woGT_scratch 31.6 29.4 140 1,3 imagenet crowd+coco_car
Backbone mAP crowd_human mAP widerface epoch teacher student_pretrain train_set
1.resdcn50 35.1 - 80 - - crowd
2.resdcn18 31.7 - 70 - - crowd
3.resdcn50 - 32.9 70 - - widerface
4.resdcn18 - 29.6 70 - - widerface
5.resdcn18_ignore_nolabel 29.1 24.2 140 - - crowd+wider
6.resdcn18_pseudo_label 28.9 27.7 140 - - crowd+wider
7.resdcn18_KD_woGT_scratch 31.3 32.1 140 1,3 imagenet crowd+wider

License

centerX is released under the Apache 2.0 license.

Acknowledgement

More Repositories

1

fast-reid

SOTA Re-identification Methods and Toolbox
Python
3,377
star
2

FaceX-Zoo

A PyTorch Toolbox for Face Recognition
Python
1,863
star
3

dabnn

dabnn is an accelerated binary neural networks inference framework for mobile platform
C++
767
star
4

DCL

Destruction and Construction Learning for Fine-grained Image Recognition
Python
585
star
5

CoTNet

This is an official implementation for "Contextual Transformer Networks for Visual Recognition".
Python
512
star
6

VeRidataset

This is the project page for veri dataset which is a large scale image dataset for vehicle re-identification in urban traffic surveillance.
MATLAB
397
star
7

DNNLibrary

Daquexian's NNAPI Library. ONNX + Android NNAPI
C++
346
star
8

image-captioning

Implementation of 'X-Linear Attention Networks for Image Captioning' [CVPR 2020]
Python
269
star
9

lapa-dataset

A large-scale dataset for face parsing (AAAI2020)
258
star
10

Down-to-the-Last-Detail-Virtual-Try-on-with-Detail-Carving

Virtural try-on under arbitrary poses
Python
217
star
11

Partial-Person-ReID

Python
168
star
12

FADA

(ECCV 2020) Classes Matter: A Fine-grained Adversarial Approach to Cross-domain Semantic Segmentation
Python
140
star
13

DSD-SATN

ICCV19: Official code of Human Mesh Recovery from Monocular Images via a Skeleton-disentangled Representation
Python
133
star
14

LIO

Look-into-Object: Self-supervised Structure Modeling for Object Recognition (CVPR 2020)
Jupyter Notebook
113
star
15

PGPT

Implementation of โ€˜Pose-Guided Tracking-by-Detection: Robust Multi-Person Pose Trackingโ€™ [TMM 2020]
Python
47
star
16

CM-NAS

CM-NAS: Cross-Modality Neural Architecture Search for Visible-Infrared Person Re-Identification (ICCV2021)
Python
46
star
17

CoTNet-ObjectDetection-InstanceSegmentation

Python
33
star
18

dabnn-example

Android demo for dabnn
Java
19
star
19

atlasWrapper

C++
8
star