OCR Model List(V3, updated on 2022.4.28)
Note
- Compared with the model v2, the 3rd version of the detection model has a improvement in accuracy, and the 2.1 version of the recognition model has optimizations in accuracy and speed with CPU.
- Compared with models 1.1, which are trained with static graph programming paradigm, models 2.0 or higher are the dynamic graph trained version and achieve close performance.
- All models in this tutorial are all ppocr-series models, for more introduction of algorithms and models based on public dataset, you can refer to algorithm overview tutorial.
- [OCR Model List(V3, updated on 2022.4.28)]()
The downloadable models provided by PaddleOCR include inference model
, trained model
, pre-trained model
and nb model
. The differences between the models are as follows:
model type |
model format |
description |
inference model |
inference.pdmodel、inference.pdiparams |
Used for inference based on Paddle inference engine,detail |
trained model, pre-trained model |
*.pdparams、*.pdopt、*.states |
The checkpoints model saved in the training process, which stores the parameters of the model, mostly used for model evaluation and continuous training. |
nb model |
*.nb |
Model optimized by Paddle-Lite, which is suitable for mobile-side deployment scenarios (Paddle-Lite is needed for nb model deployment). |
Relationship of the above models is as follows.
1. Text Detection Model
1. Chinese Detection Model
model name |
description |
config |
model size |
download |
ch_PP-OCRv3_det_slim |
[New] slim quantization with distillation lightweight model, supporting Chinese, English, multilingual text detection |
ch_PP-OCRv3_det_cml.yml |
1.1M |
inference model / trained model / nb model |
ch_PP-OCRv3_det |
[New] Original lightweight model, supporting Chinese, English, multilingual text detection |
ch_PP-OCRv3_det_cml.yml |
3.8M |
inference model / trained model |
ch_PP-OCRv2_det_slim |
[New] slim quantization with distillation lightweight model, supporting Chinese, English, multilingual text detection |
ch_PP-OCRv2_det_cml.yml |
3.0M |
inference model |
ch_PP-OCRv2_det |
[New] Original lightweight model, supporting Chinese, English, multilingual text detection |
ch_PP-OCRv2_det_cml.yml |
3.0M |
inference model / trained model |
ch_ppocr_mobile_slim_v2.0_det |
Slim pruned lightweight model, supporting Chinese, English, multilingual text detection |
ch_det_mv3_db_v2.0.yml |
2.6M |
inference model |
ch_ppocr_mobile_v2.0_det |
Original lightweight model, supporting Chinese, English, multilingual text detection |
ch_det_mv3_db_v2.0.yml |
3.0M |
inference model / trained model |
ch_ppocr_server_v2.0_det |
General model, which is larger than the lightweight model, but achieved better performance |
ch_det_res18_db_v2.0.yml |
47.0M |
inference model / trained model |
1.2 English Detection Model
- Note: English configuration file is same as Chinese except training data, here we only provide one configuration file.
1.3 Multilingual Detection Model
- Note: English configuration file is same as Chinese except training data, here we only provide one configuration file.
2. Text Recognition Model
2.1 Chinese Recognition Model
model name |
description |
config |
model size |
download |
ch_PP-OCRv3_rec_slim |
[New] Slim qunatization with distillation lightweight model, supporting Chinese, English text recognition |
ch_PP-OCRv3_rec_distillation.yml |
4.9M |
inference model / trained model / nb model |
ch_PP-OCRv3_rec |
[New] Original lightweight model, supporting Chinese, English, multilingual text recognition |
ch_PP-OCRv3_rec_distillation.yml |
12.4M |
inference model / trained model |
ch_PP-OCRv2_rec_slim |
Slim qunatization with distillation lightweight model, supporting Chinese, English text recognition |
ch_PP-OCRv2_rec.yml |
9.0M |
inference model / trained model |
ch_PP-OCRv2_rec |
Original lightweight model, supporting Chinese, English, multilingual text recognition |
ch_PP-OCRv2_rec_distillation.yml |
8.5M |
inference model / trained model |
ch_ppocr_mobile_slim_v2.0_rec |
Slim pruned and quantized lightweight model, supporting Chinese, English and number recognition |
rec_chinese_lite_train_v2.0.yml |
6.0M |
inference model / trained model |
ch_ppocr_mobile_v2.0_rec |
Original lightweight model, supporting Chinese, English and number recognition |
rec_chinese_lite_train_v2.0.yml |
5.2M |
inference model / trained model / pre-trained model |
ch_ppocr_server_v2.0_rec |
General model, supporting Chinese, English and number recognition |
rec_chinese_common_train_v2.0.yml |
94.8M |
inference model / trained model / pre-trained model |
Note: The trained model
is fine-tuned on the pre-trained model
with real data and synthesized vertical text data, which achieved better performance in real scene. The pre-trained model
is directly trained on the full amount of real data and synthesized data, which is more suitable for fine-tune on your own dataset.
2.2 English Recognition Model
2.3 Multilingual Recognition Model(Updating...)
For a complete list of languages and tutorials, please refer to : Multi-language model
3. Text Angle Classification Model
4. Paddle-Lite Model
Paddle Lite is an updated version of Paddle-Mobile, an open-open source deep learning framework designed to make it easy to perform inference on mobile, embeded, and IoT devices. It can further optimize the inference model and generate nb model
used for edge devices. It's suggested to optimize the quantization model using Paddle-Lite because INT8
format is used for the model storage and inference.
This chapter lists OCR nb models with PP-OCRv2 or earlier versions. You can access to the latest nb models from the above tables.