mirror of
				https://github.com/PaddlePaddle/PaddleOCR.git
				synced 2025-10-31 09:49:30 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			92 lines
		
	
	
		
			6.4 KiB
		
	
	
	
		
			Markdown
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			92 lines
		
	
	
		
			6.4 KiB
		
	
	
	
		
			Markdown
		
	
	
		
			Executable File
		
	
	
	
	
| # Two-stage Algorithm
 | ||
| 
 | ||
| - [1. Algorithm Introduction](#1-algorithm-introduction)
 | ||
|   * [1.1 Text Detection Algorithm](#11-text-detection-algorithm)
 | ||
|   * [1.2 Text Recognition Algorithm](#12-text-recognition-algorithm)
 | ||
| - [2. Training](#2-training)
 | ||
| - [3. Inference](#3-inference)
 | ||
| 
 | ||
| <a name="Algorithm_introduction"></a>
 | ||
| 
 | ||
| ## 1. Algorithm Introduction
 | ||
| 
 | ||
| This tutorial lists the text detection algorithms and text recognition algorithms supported by PaddleOCR, as well as the models and metrics of each algorithm on **English public datasets**. It is mainly used for algorithm introduction and algorithm performance comparison. For more models on other datasets including Chinese, please refer to [PP-OCR v2.0 models list](./models_list_en.md).
 | ||
| 
 | ||
| 
 | ||
| - [1. Text Detection Algorithm](#TEXTDETECTIONALGORITHM)
 | ||
| - [2. Text Recognition Algorithm](#TEXTRECOGNITIONALGORITHM)
 | ||
| 
 | ||
| <a name="TEXTDETECTIONALGORITHM"></a>
 | ||
| 
 | ||
| ### 1.1 Text Detection Algorithm
 | ||
| 
 | ||
| PaddleOCR open source text detection algorithms list:
 | ||
| - [x]  EAST([paper](https://arxiv.org/abs/1704.03155))[2]
 | ||
| - [x]  DB([paper](https://arxiv.org/abs/1911.08947))[1]
 | ||
| - [x]  SAST([paper](https://arxiv.org/abs/1908.05498))[4]
 | ||
| - [x]  PSENet([paper](https://arxiv.org/abs/1903.12473v2))
 | ||
| 
 | ||
| On the ICDAR2015 dataset, the text detection result is as follows:
 | ||
| 
 | ||
| |Model|Backbone|Precision|Recall|Hmean|Download link|
 | ||
| | --- | --- | --- | --- | --- | --- |
 | ||
| |EAST|ResNet50_vd|88.71%|81.36%|84.88%|[trained model](https://paddleocr.bj.bcebos.com/dygraph_v2.0/en/det_r50_vd_east_v2.0_train.tar)|
 | ||
| |EAST|MobileNetV3|78.2%|79.1%|78.65%|[trained model](https://paddleocr.bj.bcebos.com/dygraph_v2.0/en/det_mv3_east_v2.0_train.tar)|
 | ||
| |DB|ResNet50_vd|86.41%|78.72%|82.38%|[trained model](https://paddleocr.bj.bcebos.com/dygraph_v2.0/en/det_r50_vd_db_v2.0_train.tar)|
 | ||
| |DB|MobileNetV3|77.29%|73.08%|75.12%|[trained model](https://paddleocr.bj.bcebos.com/dygraph_v2.0/en/det_mv3_db_v2.0_train.tar)|
 | ||
| |SAST|ResNet50_vd|91.39%|83.77%|87.42%|[trained model](https://paddleocr.bj.bcebos.com/dygraph_v2.0/en/det_r50_vd_sast_icdar15_v2.0_train.tar)|
 | ||
| |PSE|ResNet50_vd|85.81%|79.53%|82.55%|[trianed model](https://paddleocr.bj.bcebos.com/dygraph_v2.1/en_det/det_r50_vd_pse_v2.0_train.tar)|
 | ||
| |PSE|MobileNetV3|82.20%|70.48%|75.89%|[trianed model](https://paddleocr.bj.bcebos.com/dygraph_v2.1/en_det/det_mv3_pse_v2.0_train.tar)|
 | ||
| 
 | ||
| On Total-Text dataset, the text detection result is as follows:
 | ||
| 
 | ||
| |Model|Backbone|Precision|Recall|Hmean|Download link|
 | ||
| | --- | --- | --- | --- | --- | --- |
 | ||
| |SAST|ResNet50_vd|89.63%|78.44%|83.66%|[trained model](https://paddleocr.bj.bcebos.com/dygraph_v2.0/en/det_r50_vd_sast_totaltext_v2.0_train.tar)|
 | ||
| 
 | ||
| **Note:** Additional data, like icdar2013, icdar2017, COCO-Text, ArT, was added to the model training of SAST. Download English public dataset in organized format used by PaddleOCR from:
 | ||
| * [Baidu Drive](https://pan.baidu.com/s/12cPnZcVuV1zn5DOd4mqjVw) (download code: 2bpi).
 | ||
| * [Google Drive](https://drive.google.com/drive/folders/1ll2-XEVyCQLpJjawLDiRlvo_i4BqHCJe?usp=sharing)
 | ||
| 
 | ||
| For the training guide and use of PaddleOCR text detection algorithms, please refer to the document [Text detection model training/evaluation/prediction](./detection_en.md)
 | ||
| 
 | ||
| <a name="TEXTRECOGNITIONALGORITHM"></a>
 | ||
| ### 1.2 Text Recognition Algorithm
 | ||
| 
 | ||
| PaddleOCR open-source text recognition algorithms list:
 | ||
| - [x]  CRNN([paper](https://arxiv.org/abs/1507.05717))[7]
 | ||
| - [x]  Rosetta([paper](https://arxiv.org/abs/1910.05085))[10]
 | ||
| - [x]  STAR-Net([paper](http://www.bmva.org/bmvc/2016/papers/paper043/index.html))[11]
 | ||
| - [x]  RARE([paper](https://arxiv.org/abs/1603.03915v1))[12]
 | ||
| - [x]  SRN([paper](https://arxiv.org/abs/2003.12294))[5]
 | ||
| - [x]  NRTR([paper](https://arxiv.org/abs/1806.00926v2))[13]
 | ||
| - [x]  SAR([paper](https://arxiv.org/abs/1811.00751v2))
 | ||
| - [x] SEED([paper](https://arxiv.org/pdf/2005.10977.pdf))
 | ||
| 
 | ||
| Refer to [DTRB](https://arxiv.org/abs/1904.01906), the training and evaluation result of these above text recognition (using MJSynth and SynthText for training, evaluate on IIIT, SVT, IC03, IC13, IC15, SVTP, CUTE) is as follow:
 | ||
| 
 | ||
| |Model|Backbone|Avg Accuracy|Module combination|Download link|
 | ||
| |---|---|---|---|---|
 | ||
| |Rosetta|Resnet34_vd|79.11%|rec_r34_vd_none_none_ctc|[trained model](https://paddleocr.bj.bcebos.com/dygraph_v2.0/en/rec_r34_vd_none_none_ctc_v2.0_train.tar)|
 | ||
| |Rosetta|MobileNetV3|75.80%|rec_mv3_none_none_ctc|[trained model](https://paddleocr.bj.bcebos.com/dygraph_v2.0/en/rec_mv3_none_none_ctc_v2.0_train.tar)|
 | ||
| |CRNN|Resnet34_vd|81.04%|rec_r34_vd_none_bilstm_ctc|[trained model](https://paddleocr.bj.bcebos.com/dygraph_v2.0/en/rec_r34_vd_none_bilstm_ctc_v2.0_train.tar)|
 | ||
| |CRNN|MobileNetV3|77.95%|rec_mv3_none_bilstm_ctc|[trained model](https://paddleocr.bj.bcebos.com/dygraph_v2.0/en/rec_mv3_none_bilstm_ctc_v2.0_train.tar)|
 | ||
| |StarNet|Resnet34_vd|82.85%|rec_r34_vd_tps_bilstm_ctc|[trained model](https://paddleocr.bj.bcebos.com/dygraph_v2.0/en/rec_r34_vd_tps_bilstm_ctc_v2.0_train.tar)|
 | ||
| |StarNet|MobileNetV3|79.28%|rec_mv3_tps_bilstm_ctc|[trained model](https://paddleocr.bj.bcebos.com/dygraph_v2.0/en/rec_mv3_tps_bilstm_ctc_v2.0_train.tar)|
 | ||
| |RARE|Resnet34_vd|83.98%|rec_r34_vd_tps_bilstm_att |[trained model](https://paddleocr.bj.bcebos.com/dygraph_v2.0/en/rec_r34_vd_tps_bilstm_att_v2.0_train.tar)|
 | ||
| |RARE|MobileNetV3|81.76%|rec_mv3_tps_bilstm_att |[trained model](https://paddleocr.bj.bcebos.com/dygraph_v2.0/en/rec_mv3_tps_bilstm_att_v2.0_train.tar)|
 | ||
| |SRN|Resnet50_vd_fpn| 86.31% | rec_r50fpn_vd_none_srn |[trained model](https://paddleocr.bj.bcebos.com/dygraph_v2.0/en/rec_r50_vd_srn_train.tar)|
 | ||
| |NRTR|NRTR_MTB| 84.21% | rec_mtb_nrtr | [trained model](https://paddleocr.bj.bcebos.com/dygraph_v2.0/en/rec_mtb_nrtr_train.tar) |
 | ||
| |SAR|Resnet31| 87.20% | rec_r31_sar | [trained model](https://paddleocr.bj.bcebos.com/dygraph_v2.1/rec/rec_r31_sar_train.tar) |
 | ||
| |SEED|Aster_Resnet| 85.35% | rec_resnet_stn_bilstm_att | [trained model](https://paddleocr.bj.bcebos.com/dygraph_v2.1/rec/rec_resnet_stn_bilstm_att.tar) |
 | ||
| 
 | ||
| Please refer to the document for training guide and use of PaddleOCR
 | ||
| 
 | ||
| ## 2. Training
 | ||
| 
 | ||
| For the training guide and use of PaddleOCR text detection algorithms, please refer to the document [Text detection model training/evaluation/prediction](./detection_en.md). For text recognition algorithms, please refer to [Text recognition model training/evaluation/prediction](./recognition_en.md)
 | ||
| 
 | ||
| ## 3. Inference
 | ||
| 
 | ||
| Except for the PP-OCR series models of the above models, the other models only support inference based on the Python engine. For details, please refer to [Inference based on Python prediction engine](./inference_en.md)
 | 
