README_en.md 6.9 KB
Newer Older
L
littletomatodonkey 已提交
1
[简体中文](README_ch.md) | English
W
weishengyu 已提交
2 3 4 5 6

# PaddleClas

## Introduction

L
lilithzhou 已提交
7
PaddleClas is an image recognition toolset for industry and academia, helping users train better computer vision models and apply them in real scenarios.
W
weishengyu 已提交
8

L
lilithzhou 已提交
9
**Recent updates**
W
weishengyu 已提交
10

D
dyning 已提交
11
- 🔥🔥🔥: 2021.06.16 PaddleClas release/2.2. Add metric learning and vector search modules. Add product recognition, animation character recognition, vehicle recognition and logo recognition. Added 30 pretrained models of LeViT, Twins, TNT, DLA, HarDNet, and RedNet, and the accuracy is roughly the same as that of the paper.
W
weishengyu 已提交
12 13 14 15
- [more](./docs/en/update_history_en.md)

## Features

L
lilithzhou 已提交
16 17
- A practical image recognition system consist of detection, feature learning and retrieval modules, widely applicable to all types of image recognition tasks.
Four sample solutions are provided, including product recognition, vehicle recognition, logo recognition and animation character recognition.
W
weishengyu 已提交
18

L
lilithzhou 已提交
19
- Rich library of pre-trained models: Provide a total of 164 ImageNet pre-trained models in 34 series, among which 6 selected series of models support fast structural modification.
W
weishengyu 已提交
20

L
lilithzhou 已提交
21
- Comprehensive and easy-to-use feature learning components: 12 metric learning methods are integrated and can be combined and switched at will through configuration files.
W
weishengyu 已提交
22

L
lilithzhou 已提交
23
- SSLD knowledge distillation: The 14 classification pre-training models generally improved their accuracy by more than 3%; among them, the ResNet50_vd model achieved a Top-1 accuracy of 84.0% on the Image-Net-1k dataset and the Res2Net200_vd pre-training model achieved a Top-1 accuracy of 85.1%.
W
weishengyu 已提交
24

L
lilithzhou 已提交
25
- Data augmentation: Provide 8 data augmentation algorithms such as AutoAugment, Cutout, Cutmix, etc.  with detailed introduction, code replication and evaluation of effectiveness in a unified experimental environment.
W
weishengyu 已提交
26

L
littletomatodonkey 已提交
27

W
weishengyu 已提交
28

L
lilithzhou 已提交
29 30
## Image Recognition System Effect Demonstration
<div align="center">
L
littletomatodonkey 已提交
31
<img src="./docs/images/recognition_en.gif"  width = "400" />
L
lilithzhou 已提交
32
</div>
W
weishengyu 已提交
33

D
dyning 已提交
34 35
For more effect pictures, please see [Demo images](./docs/en/more_demo.md).

L
lilithzhou 已提交
36
## Welcome to Join the Technical Exchange Group
W
weishengyu 已提交
37

L
lilithzhou 已提交
38
* You can also scan the QR code below to join the PaddleClas WeChat group to get more efficient answers to your questions and to communicate with developers from all walks of life. We look forward to hearing from you.
W
weishengyu 已提交
39 40

<div align="center">
W
weishengyu 已提交
41
<img src="./docs/images/wx_group.jpeg"  width = "200" />
W
weishengyu 已提交
42 43
</div>

L
littletomatodonkey 已提交
44
## Quick Start
L
littletomatodonkey 已提交
45
Quick experience of image recognition:[Link](./docs/en/tutorials/quick_start_recognition_en.md)
W
weishengyu 已提交
46 47 48

## Tutorials

B
Bin Lu 已提交
49
- [Quick Installation](./docs/en/tutorials/install_en.md)
W
weishengyu 已提交
50
- [Quick Start of Recognition](./docs/en/tutorials/quick_start_recognition_en.md)
W
weishengyu 已提交
51 52
- [Introduction to Image Recognition Systems](#Introduction_to_Image_Recognition_Systems)
- [Demo images](#Demo_images)
W
weishengyu 已提交
53
- Algorithms Introduction
W
weishengyu 已提交
54
    - [Backbone Network and Pre-trained Model Library](./docs/en/ImageNet_models.md)
L
littletomatodonkey 已提交
55
    - [Mainbody Detection](./docs/en/application/mainbody_detection_en.md)
W
weishengyu 已提交
56 57 58 59 60 61
    - [Image Classification](./docs/en/tutorials/image_classification_en.md)
    - [Feature Learning](./docs/en/application/feature_learning_en.md)
        - [Product Recognition](./docs/en/application/product_recognition_en.md)
        - [Vehicle Recognition](./docs/en/application/vehicle_recognition_en.md)
        - [Logo Recognition](./docs/en/application/logo_recognition_en.md)
        - [Animation Character Recognition](./docs/en/application/cartoon_character_recognition_en.md)
W
weishengyu 已提交
62
    - [Vector Search](./deploy/vector_search/README.md)
L
lilithzhou 已提交
63
- Models Training/Evaluation
W
weishengyu 已提交
64
    - [Image Classification](./docs/en/tutorials/getting_started_en.md)
W
weishengyu 已提交
65
    - [Feature Learning](./docs/en/tutorials/getting_started_retrieval_en.md)
W
weishengyu 已提交
66
- Inference Model Prediction
W
weishengyu 已提交
67
    - [Python Inference](./docs/en/inference.md)
W
weishengyu 已提交
68 69 70 71 72
    - [C++ Inference](./deploy/cpp/readme_en.md)(only support classification for now, recognition coming soon)
- Model Deploy (only support classification for now, recognition coming soon)
    - [Hub Serving Deployment](./deploy/hubserving/readme_en.md)
    - [Mobile Deployment](./deploy/lite/readme_en.md)
    - [Inference Using whl](./docs/en/whl_en.md)
L
lilithzhou 已提交
73
- Advanced Tutorial
W
weishengyu 已提交
74 75 76
    - [Knowledge Distillation](./docs/en/advanced_tutorials/distillation/distillation_en.md)
    - [Model Quantization](./docs/en/extension/paddle_quantization_en.md)
    - [Data Augmentation](./docs/en/advanced_tutorials/image_augmentation/ImageAugment_en.md)
W
weishengyu 已提交
77 78 79
- [License](#License)
- [Contribution](#Contribution)

W
weishengyu 已提交
80
<a name="Introduction_to_Image_Recognition_Systems"></a>
L
lilithzhou 已提交
81
## Introduction to Image Recognition Systems
W
weishengyu 已提交
82

L
lilithzhou 已提交
83
<div align="center">
L
littletomatodonkey 已提交
84
<img src="./docs/images/mainpage/recognition_pipeline_en.png"  width = "400" />
L
lilithzhou 已提交
85
</div>
W
weishengyu 已提交
86

L
lilithzhou 已提交
87 88 89 90
Image recognition can be divided into three steps:
- (1)Identify region proposal for target objects through a detection model;
- (2)Extract features for each region proposal;
- (3)Search features in the retrieval database and output results;
W
weishengyu 已提交
91

L
lilithzhou 已提交
92
For a new unknown category, there is no need to retrain the model, just prepare images of new category, extract features and update retrieval database and the category can be recognised.
W
weishengyu 已提交
93

W
weishengyu 已提交
94
<a name="Demo_images"></a>
95 96 97
## Demo images [more](./docs/en/more_demo.md)
- Product recognition
<div align="center">
B
Bin Lu 已提交
98
<img src="./docs/images/recognition/more_demo_images/output_product/channelhandle_5_en.jpg"  width = "400" />
99 100
</div>
<div align="center">
B
Bin Lu 已提交
101
<img src="./docs/images/recognition/more_demo_images/output_product/daoxiangcunjinzhubing_10_en.jpg"  width = "400" />
102 103 104 105
</div>

- Cartoon character recognition
<div align="center">
B
Bin Lu 已提交
106
<img src="./docs/images/recognition/more_demo_images/output_cartoon/labixiaoxin-005_en.jpeg"  width = "400" />
107 108
</div>
<div align="center">
B
Bin Lu 已提交
109
<img src="./docs/images/recognition/more_demo_images/output_cartoon/liuchuanfeng-010_en.jpeg"  width = "400" />
110 111 112 113
</div>

- Logo recognition
<div align="center">
B
Bin Lu 已提交
114
<img src="./docs/images/recognition/more_demo_images/output_logo/cctv_4_en.jpg"  width = "400" />
115 116
</div>
<div align="center">
B
Bin Lu 已提交
117
<img src="./docs/images/recognition/more_demo_images/output_logo/mangguo_8_en.jpeg"  width = "400" />
118
</div>
W
weishengyu 已提交
119

120 121
- Car recognition
<div align="center">
B
Bin Lu 已提交
122
<img src="./docs/images/recognition/more_demo_images/output_vehicle/audia5-115_en.jpeg"  width = "400" />
123 124
</div>
<div align="center">
B
Bin Lu 已提交
125
<img src="./docs/images/recognition/more_demo_images/output_vehicle/bentian-yage-101_en.jpeg"  width = "400" />
126 127 128
</div>

<a name="License"></a>
L
lilithzhou 已提交
129 130
## License
PaddleClas is released under the Apache 2.0 license <a href="https://github.com/PaddlePaddle/PaddleCLS/blob/master/LICENSE">Apache 2.0 license</a>
W
weishengyu 已提交
131 132 133 134 135 136


<a name="Contribution"></a>
## Contribution
Contributions are highly welcomed and we would really appreciate your feedback!!

L
lilithzhou 已提交
137

W
weishengyu 已提交
138 139 140
- Thank [nblib](https://github.com/nblib) to fix bug of RandErasing.
- Thank [chenpy228](https://github.com/chenpy228) to fix some typos PaddleClas.
- Thank [jm12138](https://github.com/jm12138) to add ViT, DeiT models and RepVGG models into PaddleClas.
L
lilithzhou 已提交
141
- Thank [FutureSI](https://aistudio.baidu.com/aistudio/personalcenter/thirdview/76563) to parse and summarize the PaddleClas code.