README.md 5.0 KB
Newer Older
W
wangguanzhong 已提交
1 2
English | [简体中文](README_cn.md)

3
# PaddleDetection
4

Y
Yang Zhang 已提交
5
The goal of PaddleDetection is to provide easy access to a wide range of object
6
detection models in both industry and research settings. We design
Y
Yang Zhang 已提交
7 8
PaddleDetection to be not only performant, production-ready but also highly
flexible, catering to research needs.
9 10 11


<div align="center">
Y
Yang Zhang 已提交
12
  <img src="demo/output/000000570688.jpg" />
13 14 15 16 17
</div>


## Introduction

Q
qingqing01 已提交
18
Features:
19

Y
Yang Zhang 已提交
20
- Production Ready:
Q
qingqing01 已提交
21 22

  Key operations are implemented in C++ and CUDA, together with PaddlePaddle's
Y
Yang Zhang 已提交
23
highly efficient inference engine, enables easy deployment in server environments.
24

Y
Yang Zhang 已提交
25
- Highly Flexible:
Q
qingqing01 已提交
26 27

  Components are designed to be modular. Model architectures, as well as data
Y
Yang Zhang 已提交
28 29
preprocess pipelines, can be easily customized with simple configuration
changes.
30

Y
Yang Zhang 已提交
31
- Performance Optimized:
Q
qingqing01 已提交
32 33

  With the help of the underlying PaddlePaddle framework, faster training and
Q
qingqing01 已提交
34
reduced GPU memory footprint is achieved. Notably, YOLOv3 training is
Y
Yang Zhang 已提交
35
much faster compared to other frameworks. Another example is Mask-RCNN
Q
qingqing01 已提交
36 37
(ResNet50), we managed to fit up to 4 images per GPU (Tesla V100 16GB) during
multi-GPU training.
38

Y
Yang Zhang 已提交
39
Supported Architectures:
40

Q
qingqing01 已提交
41 42 43 44 45 46 47 48 49 50 51
|                     | ResNet | ResNet-vd <sup>[1](#vd)</sup> | ResNeXt-vd | SENet | MobileNet | DarkNet | VGG  |
| ------------------- | :----: | ----------------------------: | :--------: | :---: | :-------: | :-----: | :--: |
| Faster R-CNN        |   ✓    |                             ✓ |     x      |   ✓   |     ✗     |    ✗    |  ✗   |
| Faster R-CNN + FPN  |   ✓    |                             ✓ |     ✓      |   ✓   |     ✗     |    ✗    |  ✗   |
| Mask R-CNN          |   ✓    |                             ✓ |     x      |   ✓   |     ✗     |    ✗    |  ✗   |
| Mask R-CNN + FPN    |   ✓    |                             ✓ |     ✓      |   ✓   |     ✗     |    ✗    |  ✗   |
| Cascade Faster-RCNN |   ✓    |                             ✓ |     ✓      |   ✗   |     ✗     |    ✗    |  ✗   |
| Cascade Mask-RCNN   |   ✓    |                             ✗ |     ✗      |   ✓   |     ✗     |    ✗    |  ✗   |
| RetinaNet           |   ✓    |                             ✗ |     ✗      |   ✗   |     ✗     |    ✗    |  ✗   |
| YOLOv3              |   ✓    |                             ✗ |     ✗      |   ✗   |     ✓     |    ✓    |  ✗   |
| SSD                 |   ✗    |                             ✗ |     ✗      |   ✗   |     ✓     |    ✗    |  ✓   |
52

Q
qingqing01 已提交
53
<a name="vd">[1]</a> [ResNet-vd](https://arxiv.org/pdf/1812.01187) models offer much improved accuracy with negligible performance cost.
54

Y
Yang Zhang 已提交
55
Advanced Features:
56

Q
qingqing01 已提交
57 58 59 60
- [x] **Synchronized Batch Norm**: currently used by YOLOv3.
- [x] **Group Norm**
- [x] **Modulated Deformable Convolution**
- [x] **Deformable PSRoI Pooling**
61

62 63
**NOTE:** Synchronized batch normalization can only be used on multiple GPU devices, can not be used on CPU devices or single GPU device.

Q
qingqing01 已提交
64
## Get Started
65

Q
qingqing01 已提交
66 67 68 69 70 71 72 73
- [Installation guide](docs/INSTALL.md)
- [Quick Start on small dataset](docs/QUICK_STARTED.md)
- [Guide to traing, evaluate and arguments description](docs/GETTING_STARTED.md)
- [Guide to preprocess pipeline and custom dataset](docs/DATA.md)
- [Introduction to the configuration workflow](docs/CONFIG.md)
- [Examples for detailed configuration explanation](docs/config_example/)
- [IPython Notebook demo](demo/mask_rcnn_demo.ipynb)
- [Transfer learning document](docs/TRANSFER_LEARNING.md)
74

Q
qingqing01 已提交
75
## Model Zoo
76

Q
qingqing01 已提交
77 78 79
- Pretrained models are available in the [PaddleDetection model zoo](docs/MODEL_ZOO.md).
- [Face detection models](configs/face_detection/README.md)
- [Pretrained models for pedestrian  and vehicle detection](contrib/README.md)
Y
Yang Zhang 已提交
80

Q
qingqing01 已提交
81
## Model compression
82

Q
qingqing01 已提交
83 84
- [ Quantification aware training example](slim/quantization)
- [ Pruning compression example](slim/prune)
85

Q
qingqing01 已提交
86
## Depoly
87

Q
qingqing01 已提交
88
- [C++ inference depolyment](inference/README.md)
89

Q
qingqing01 已提交
90
## Benchmark
91

Q
qingqing01 已提交
92
- [Inference benchmark](docs/BENCHMARK_INFER_cn.md)
W
wangguanzhong 已提交
93

94

Q
qingqing01 已提交
95
## Updates
96

Q
qingqing01 已提交
97
#### 10/2019
98

Q
qingqing01 已提交
99 100 101 102 103 104 105
- Face detection models included: BlazeFace, Faceboxes.
- Enrich COCO models,  box mAP up to 51.9%.
- Add CACacascade RCNN, one of the best single model of Objects365 2019 challenge Full Track champion.
- Add pretrained models for pedestrian and vehicle detection.
- Support mixed-precision training.
- Add C++ inference depolyment.
- Add model compression examples.
106

Q
qingqing01 已提交
107
#### 2/9/2019
108

Q
qingqing01 已提交
109
- Add retrained models for GroupNorm.
110

Q
qingqing01 已提交
111
- Add Cascade-Mask-RCNN+FPN.
112

Q
qingqing01 已提交
113
#### 5/8/2019
114

Q
qingqing01 已提交
115
- Add a series of models ralated modulated Deformable Convolution.
116

W
wangguanzhong 已提交
117 118 119 120 121
#### 7/29/2019

- Update Chinese docs for PaddleDetection
- Fix bug in R-CNN models when train and test at the same time
- Add ResNext101-vd + Mask R-CNN + FPN models
Q
qingqing01 已提交
122
- Add YOLOv3 on VOC models
W
wangguanzhong 已提交
123 124

#### 7/3/2019
Q
qingqing01 已提交
125

Y
Yang Zhang 已提交
126 127
- Initial release of PaddleDetection and detection model zoo
- Models included: Faster R-CNN, Mask R-CNN, Faster R-CNN+FPN, Mask
Q
qingqing01 已提交
128
  R-CNN+FPN, Cascade-Faster-RCNN+FPN, RetinaNet, YOLOv3, and SSD.
129 130 131 132


## Contributing

Y
Yang Zhang 已提交
133
Contributions are highly welcomed and we would really appreciate your feedback!!