22 KiB
OCR Model List(V2.1, 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 | 3M | inference model |
ch_PP-OCRv2_det | [New] Original lightweight model, supporting Chinese, English, multilingual text detection | ch_PP-OCRv2_det_cml.yml | 3M | 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 | 3M | 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 | 47M | inference model / trained model |
1.2 English Detection Model
model name | description | config | model size | download |
---|---|---|---|---|
en_PP-OCRv3_det_slim | [New] Slim qunatization with distillation lightweight detection model, supporting English | ch_PP-OCRv3_det_cml.yml | 1.1M | inference model / trained model / nb model |
ch_PP-OCRv3_det | [New] Original lightweight detection model, supporting English | ch_PP-OCRv3_det_cml.yml | 3.8M | inference model / trained model |
- Note: English configuration file is same as Chinese except training data, here we only provide one configuration file.
1.3 Multilingual Detection Model
model name | description | config | model size | download |
---|---|---|---|---|
ml_PP-OCRv3_det_slim | [New] Slim qunatization with distillation lightweight detection model, supporting English | ch_PP-OCRv3_det_cml.yml | 1.1M | inference model / trained model / nb model |
ml_PP-OCRv3_det | [New] Original lightweight detection model, supporting English | ch_PP-OCRv3_det_cml.yml | 3.8M | inference model / trained 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 | 9M | 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 | 6M | 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
model name | description | config | model size | download |
---|---|---|---|---|
en_PP-OCRv3_rec_slim | [New] Slim qunatization with distillation lightweight model, supporting english, English text recognition | en_PP-OCRv3_rec.yml | 3.2M | inference model / trained model / nb model |
en_PP-OCRv3_rec | [New] Original lightweight model, supporting english, English, multilingual text recognition | en_PP-OCRv3_rec.yml | 9.6M | inference model / trained model |
en_number_mobile_slim_v2.0_rec | Slim pruned and quantized lightweight model, supporting English and number recognition | rec_en_number_lite_train.yml | 2.7M | inference model / trained model |
en_number_mobile_v2.0_rec | Original lightweight model, supporting English and number recognition | rec_en_number_lite_train.yml | 2.6M | inference model / trained model |
2.3 Multilingual Recognition Model(Updating...)
model name | dict file | description | config | model size | download |
---|---|---|---|---|---|
french_mobile_v2.0_rec | ppocr/utils/dict/french_dict.txt | Lightweight model for French recognition | rec_french_lite_train.yml | 2.65M | inference model / trained model |
german_mobile_v2.0_rec | ppocr/utils/dict/german_dict.txt | Lightweight model for German recognition | rec_german_lite_train.yml | 2.65M | inference model / trained model |
korean_mobile_v2.0_rec | ppocr/utils/dict/korean_dict.txt | Lightweight model for Korean recognition | rec_korean_lite_train.yml | 3.9M | inference model / trained model |
japan_mobile_v2.0_rec | ppocr/utils/dict/japan_dict.txt | Lightweight model for Japanese recognition | rec_japan_lite_train.yml | 4.23M | inference model / trained model |
chinese_cht_mobile_v2.0_rec | ppocr/utils/dict/chinese_cht_dict.txt | Lightweight model for chinese cht recognition | rec_chinese_cht_lite_train.yml | 5.63M | inference model / trained model |
te_mobile_v2.0_rec | ppocr/utils/dict/te_dict.txt | Lightweight model for Telugu recognition | rec_te_lite_train.yml | 2.63M | inference model / trained model |
ka_mobile_v2.0_rec | ppocr/utils/dict/ka_dict.txt | Lightweight model for Kannada recognition | rec_ka_lite_train.yml | 2.63M | inference model / trained model |
ta_mobile_v2.0_rec | ppocr/utils/dict/ta_dict.txt | Lightweight model for Tamil recognition | rec_ta_lite_train.yml | 2.63M | inference model / trained model |
latin_mobile_v2.0_rec | ppocr/utils/dict/latin_dict.txt | Lightweight model for latin recognition | rec_latin_lite_train.yml | 2.6M | inference model / trained model |
arabic_mobile_v2.0_rec | ppocr/utils/dict/arabic_dict.txt | Lightweight model for arabic recognition | rec_arabic_lite_train.yml | 2.6M | inference model / trained model |
cyrillic_mobile_v2.0_rec | ppocr/utils/dict/cyrillic_dict.txt | Lightweight model for cyrillic recognition | rec_cyrillic_lite_train.yml | 2.6M | inference model / trained model |
devanagari_mobile_v2.0_rec | ppocr/utils/dict/devanagari_dict.txt | Lightweight model for devanagari recognition | rec_devanagari_lite_train.yml | 2.6M | inference model / trained model |
For more supported languages, please refer to : Multi-language model
3. Text Angle Classification Model
model name | description | config | model size | download |
---|---|---|---|---|
ch_ppocr_mobile_slim_v2.0_cls | Slim quantized model for text angle classification | cls_mv3.yml | 2.1M | inference model / trained model / nb model |
ch_ppocr_mobile_v2.0_cls | Original model for text angle classification | cls_mv3.yml | 1.38M | inference model / trained 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.
Version | Introduction | Model size | Detection model | Text Direction model | Recognition model | Paddle-Lite branch |
---|---|---|---|---|---|---|
PP-OCRv2 | extra-lightweight chinese OCR optimized model | 11M | download link | download link | download link | v2.10 |
PP-OCRv2(slim) | extra-lightweight chinese OCR optimized model | 4.6M | download link | download link | download link | v2.10 |
PP-OCRv2 | extra-lightweight chinese OCR optimized model | 11M | download link | download link | download link | v2.9 |
PP-OCRv2(slim) | extra-lightweight chinese OCR optimized model | 4.9M | download link | download link | download link | v2.9 |
V2.0 | ppocr_v2.0 extra-lightweight chinese OCR optimized model | 7.8M | download link | download link | download link | v2.9 |
V2.0(slim) | ppovr_v2.0 extra-lightweight chinese OCR optimized model | 3.3M | download link | download link | download link | v2.9 |