The response has been limited to 50k tokens of the smallest files in the repo. You can remove this limitation by removing the max tokens filter.
├── .clang_format.hook
├── .github
    ├── ISSUE_TEMPLATE
    │   ├── bug-report.yml
    │   └── config.yml
    ├── dependabot.yml
    └── workflows
    │   ├── build_publish_develop_docs.yml
    │   ├── build_publish_release_docs.yml
    │   ├── close_inactive_issues.yaml
    │   ├── codestyle.yml
    │   ├── link-check.yml
    │   ├── python-publish.yml
    │   ├── test_gpu.yml
    │   └── tests.yaml
├── .gitignore
├── .lycheeignore
├── .pre-commit-config.yaml
├── .style.yapf
├── CNAME
├── LICENSE
├── MANIFEST.in
├── README.md
├── applications
    └── README.md
├── awesome_projects.md
├── benchmark
    ├── PaddleOCR_DBNet
    │   ├── .gitattributes
    │   ├── .gitignore
    │   ├── LICENSE.md
    │   ├── README.MD
    │   ├── base
    │   │   ├── __init__.py
    │   │   ├── base_dataset.py
    │   │   └── base_trainer.py
    │   ├── config
    │   │   ├── SynthText.yaml
    │   │   ├── SynthText_resnet18_FPN_DBhead_polyLR.yaml
    │   │   ├── icdar2015.yaml
    │   │   ├── icdar2015_dcn_resnet18_FPN_DBhead_polyLR.yaml
    │   │   ├── icdar2015_resnet18_FPN_DBhead_polyLR.yaml
    │   │   ├── icdar2015_resnet18_FPN_DBhead_polyLR_finetune.yaml
    │   │   ├── icdar2015_resnet50_FPN_DBhead_polyLR.yaml
    │   │   ├── open_dataset.yaml
    │   │   ├── open_dataset_dcn_resnet50_FPN_DBhead_polyLR.yaml
    │   │   ├── open_dataset_resnest50_FPN_DBhead_polyLR.yaml
    │   │   └── open_dataset_resnet18_FPN_DBhead_polyLR.yaml
    │   ├── data_loader
    │   │   ├── __init__.py
    │   │   ├── dataset.py
    │   │   └── modules
    │   │   │   ├── __init__.py
    │   │   │   ├── augment.py
    │   │   │   ├── iaa_augment.py
    │   │   │   ├── make_border_map.py
    │   │   │   ├── make_shrink_map.py
    │   │   │   └── random_crop_data.py
    │   ├── environment.yml
    │   ├── eval.sh
    │   ├── generate_lists.sh
    │   ├── imgs
    │   │   └── paper
    │   │   │   └── db.jpg
    │   ├── models
    │   │   ├── __init__.py
    │   │   ├── backbone
    │   │   │   ├── __init__.py
    │   │   │   └── resnet.py
    │   │   ├── basic.py
    │   │   ├── head
    │   │   │   ├── DBHead.py
    │   │   │   └── __init__.py
    │   │   ├── losses
    │   │   │   ├── DB_loss.py
    │   │   │   ├── __init__.py
    │   │   │   └── basic_loss.py
    │   │   ├── model.py
    │   │   └── neck
    │   │   │   ├── FPN.py
    │   │   │   └── __init__.py
    │   ├── multi_gpu_train.sh
    │   ├── post_processing
    │   │   ├── __init__.py
    │   │   └── seg_detector_representer.py
    │   ├── predict.sh
    │   ├── requirement.txt
    │   ├── single_gpu_train.sh
    │   ├── test
    │   │   └── README.MD
    │   ├── test_tipc
    │   │   ├── benchmark_train.sh
    │   │   ├── common_func.sh
    │   │   ├── configs
    │   │   │   └── det_res50_db
    │   │   │   │   └── train_infer_python.txt
    │   │   ├── prepare.sh
    │   │   └── test_train_inference_python.sh
    │   ├── tools
    │   │   ├── __init__.py
    │   │   ├── eval.py
    │   │   ├── export_model.py
    │   │   ├── infer.py
    │   │   ├── predict.py
    │   │   └── train.py
    │   ├── trainer
    │   │   ├── __init__.py
    │   │   └── trainer.py
    │   └── utils
    │   │   ├── __init__.py
    │   │   ├── cal_recall
    │   │       ├── __init__.py
    │   │       ├── rrc_evaluation_funcs.py
    │   │       └── script.py
    │   │   ├── compute_mean_std.py
    │   │   ├── make_trainfile.py
    │   │   ├── metrics.py
    │   │   ├── ocr_metric
    │   │       ├── __init__.py
    │   │       └── icdar2015
    │   │       │   ├── __init__.py
    │   │       │   ├── detection
    │   │       │       ├── __init__.py
    │   │       │       ├── deteval.py
    │   │       │       ├── icdar2013.py
    │   │       │       ├── iou.py
    │   │       │       └── mtwi2018.py
    │   │       │   └── quad_metric.py
    │   │   ├── profiler.py
    │   │   ├── schedulers.py
    │   │   └── util.py
    ├── analysis.py
    ├── readme.md
    ├── run_benchmark_det.sh
    └── run_det.sh
├── configs
    ├── cls
    │   ├── ch_PP-OCRv3
    │   │   └── ch_PP-OCRv3_rotnet.yml
    │   └── cls_mv3.yml
    ├── det
    │   ├── PP-OCRv3
    │   │   ├── PP-OCRv3_det_cml.yml
    │   │   ├── PP-OCRv3_det_dml.yml
    │   │   ├── PP-OCRv3_mobile_det.yml
    │   │   └── PP-OCRv3_server_det.yml
    │   ├── PP-OCRv4
    │   │   ├── PP-OCRv4_det_cml.yml
    │   │   ├── PP-OCRv4_mobile_det.yml
    │   │   ├── PP-OCRv4_mobile_seal_det.yml
    │   │   ├── PP-OCRv4_server_det.yml
    │   │   └── PP-OCRv4_server_seal_det.yml
    │   ├── PP-OCRv5
    │   │   ├── PP-OCRv5_mobile_det.yml
    │   │   └── PP-OCRv5_server_det.yml
    │   ├── ch_PP-OCRv2
    │   │   ├── ch_PP-OCRv2_det_cml.yml
    │   │   ├── ch_PP-OCRv2_det_distill.yml
    │   │   ├── ch_PP-OCRv2_det_dml.yml
    │   │   └── ch_PP-OCRv2_det_student.yml
    │   ├── ch_ppocr_v2.0
    │   │   ├── ch_det_mv3_db_v2.0.yml
    │   │   └── ch_det_res18_db_v2.0.yml
    │   ├── det_mv3_db.yml
    │   ├── det_mv3_east.yml
    │   ├── det_mv3_pse.yml
    │   ├── det_r18_vd_ct.yml
    │   ├── det_r50_db++_icdar15.yml
    │   ├── det_r50_db++_td_tr.yml
    │   ├── det_r50_drrg_ctw.yml
    │   ├── det_r50_vd_db.yml
    │   ├── det_r50_vd_dcn_fce_ctw.yml
    │   ├── det_r50_vd_east.yml
    │   ├── det_r50_vd_pse.yml
    │   ├── det_r50_vd_sast_icdar15.yml
    │   ├── det_r50_vd_sast_totaltext.yml
    │   ├── det_repsvtr_db.yml
    │   └── det_res18_db_v2.0.yml
    ├── e2e
    │   └── e2e_r50_vd_pg.yml
    ├── kie
    │   ├── layoutlm_series
    │   │   ├── re_layoutlmv2_xfund_zh.yml
    │   │   ├── re_layoutxlm_xfund_zh.yml
    │   │   ├── ser_layoutlm_xfund_zh.yml
    │   │   ├── ser_layoutlmv2_xfund_zh.yml
    │   │   └── ser_layoutxlm_xfund_zh.yml
    │   ├── sdmgr
    │   │   └── kie_unet_sdmgr.yml
    │   └── vi_layoutxlm
    │   │   ├── re_vi_layoutxlm_xfund_zh.yml
    │   │   ├── re_vi_layoutxlm_xfund_zh_udml.yml
    │   │   ├── ser_vi_layoutxlm_xfund_zh.yml
    │   │   └── ser_vi_layoutxlm_xfund_zh_udml.yml
    ├── rec
    │   ├── LaTeX_OCR_rec.yaml
    │   ├── PP-FormuaNet
    │   │   ├── PP-FormulaNet-L.yaml
    │   │   ├── PP-FormulaNet-S.yaml
    │   │   ├── PP-FormulaNet_plus-L.yaml
    │   │   ├── PP-FormulaNet_plus-M.yaml
    │   │   └── PP-FormulaNet_plus-S.yaml
    │   ├── PP-OCRv3
    │   │   ├── PP-OCRv3_mobile_rec.yml
    │   │   ├── PP-OCRv3_mobile_rec_distillation.yml
    │   │   ├── en_PP-OCRv3_mobile_rec.yml
    │   │   └── multi_language
    │   │   │   ├── .gitkeep
    │   │   │   ├── arabic_PP-OCRv3_mobile_rec.yml
    │   │   │   ├── chinese_cht_PP-OCRv3_mobile_rec.yaml
    │   │   │   ├── cyrillic_PP-OCRv3_mobile_rec.yml
    │   │   │   ├── devanagari_PP-OCRv3_mobile_rec.yml
    │   │   │   ├── japan_PP-OCRv3_mobile_rec.yml
    │   │   │   ├── ka_PP-OCRv3_mobile_rec.yml
    │   │   │   ├── korean_PP-OCRv3_mobile_rec.yml
    │   │   │   ├── latin_PP-OCRv3_mobile_rec.yml
    │   │   │   ├── ta_PP-OCRv3_mobile_rec.yml
    │   │   │   └── te_PP-OCRv3_mobile_rec.yml
    │   ├── PP-OCRv4
    │   │   ├── PP-OCRv4_mobile_rec.yml
    │   │   ├── PP-OCRv4_mobile_rec_ampO2_ultra.yml
    │   │   ├── PP-OCRv4_mobile_rec_distillation.yml
    │   │   ├── PP-OCRv4_mobile_rec_fp32_ultra.yml
    │   │   ├── PP-OCRv4_server_rec.yml
    │   │   ├── PP-OCRv4_server_rec_ampO2_ultra.yml
    │   │   ├── PP-OCRv4_server_rec_doc.yml
    │   │   ├── PP-OCRv4_server_rec_fp32_ultra.yml
    │   │   ├── ch_PP-OCRv4_rec_svtr_large.yml
    │   │   └── en_PP-OCRv4_mobile_rec.yml
    │   ├── PP-OCRv5
    │   │   ├── PP-OCRv5_mobile_rec.yml
    │   │   ├── PP-OCRv5_server_rec.yml
    │   │   └── multi_language
    │   │   │   ├── arabic_PP-OCRv5_mobile_rec.yaml
    │   │   │   ├── cyrillic_PP-OCRv5_mobile_rec.yaml
    │   │   │   ├── devanagari_PP-OCRv5_mobile_rec.yaml
    │   │   │   ├── el_PP-OCRv5_mobile_rec.yaml
    │   │   │   ├── en_PP-OCRv5_mobile_rec.yaml
    │   │   │   ├── eslav_PP-OCRv5_mobile_rec.yml
    │   │   │   ├── korean_PP-OCRv5_mobile_rec.yml
    │   │   │   ├── latin_PP-OCRv5_mobile_rec.yml
    │   │   │   ├── ta_PP-OCRv5_mobile_rec.yaml
    │   │   │   ├── te_PP-OCRv5_mobile_rec.yaml
    │   │   │   └── th_PP-OCRv5_mobile_rec.yaml
    │   ├── SVTRv2
    │   │   ├── ch_RepSVTR_rec.yml
    │   │   ├── ch_RepSVTR_rec_gtc.yml
    │   │   ├── ch_SVTRv2_rec.yml
    │   │   ├── ch_SVTRv2_rec_distillation.yml
    │   │   ├── ch_SVTRv2_rec_gtc.yml
    │   │   └── ch_SVTRv2_rec_gtc_distill.yml
    │   ├── UniMERNet.yaml
    │   ├── ch_PP-OCRv2
    │   │   ├── ch_PP-OCRv2_rec.yml
    │   │   ├── ch_PP-OCRv2_rec_distillation.yml
    │   │   └── ch_PP-OCRv2_rec_enhanced_ctc_loss.yml
    │   ├── ch_ppocr_v2.0
    │   │   ├── rec_chinese_common_train_v2.0.yml
    │   │   └── rec_chinese_lite_train_v2.0.yml
    │   ├── multi_language
    │   │   ├── generate_multi_language_configs.py
    │   │   ├── rec_arabic_lite_train.yml
    │   │   ├── rec_cyrillic_lite_train.yml
    │   │   ├── rec_devanagari_lite_train.yml
    │   │   ├── rec_en_number_lite_train.yml
    │   │   ├── rec_french_lite_train.yml
    │   │   ├── rec_german_lite_train.yml
    │   │   ├── rec_hebrew_lite_train.yml
    │   │   ├── rec_japan_lite_train.yml
    │   │   ├── rec_korean_lite_train.yml
    │   │   ├── rec_latin_lite_train.yml
    │   │   ├── rec_multi_language_lite_train.yml
    │   │   ├── rec_samaritan_lite_train.yml
    │   │   └── rec_syriac_lite_train.yml
    │   ├── rec_d28_can.yml
    │   ├── rec_efficientb3_fpn_pren.yml
    │   ├── rec_icdar15_train.yml
    │   ├── rec_mtb_nrtr.yml
    │   ├── rec_mv3_none_bilstm_ctc.yml
    │   ├── rec_mv3_none_none_ctc.yml
    │   ├── rec_mv3_tps_bilstm_att.yml
    │   ├── rec_mv3_tps_bilstm_ctc.yml
    │   ├── rec_r31_robustscanner.yml
    │   ├── rec_r31_sar.yml
    │   ├── rec_r32_gaspin_bilstm_att.yml
    │   ├── rec_r34_vd_none_bilstm_ctc.yml
    │   ├── rec_r34_vd_none_none_ctc.yml
    │   ├── rec_r34_vd_tps_bilstm_att.yml
    │   ├── rec_r34_vd_tps_bilstm_ctc.yml
    │   ├── rec_r45_abinet.yml
    │   ├── rec_r45_visionlan.yml
    │   ├── rec_r50_fpn_srn.yml
    │   ├── rec_resnet_rfl_att.yml
    │   ├── rec_resnet_rfl_visual.yml
    │   ├── rec_resnet_stn_bilstm_att.yml
    │   ├── rec_satrn.yml
    │   ├── rec_svtrnet.yml
    │   ├── rec_svtrnet_ch.yml
    │   ├── rec_svtrnet_cppd_base_ch.yml
    │   ├── rec_svtrnet_cppd_base_en.yml
    │   ├── rec_vit_parseq.yml
    │   └── rec_vitstr_none_ce.yml
    ├── sr
    │   ├── sr_telescope.yml
    │   └── sr_tsrn_transformer_strock.yml
    └── table
    │   ├── SLANeXt_wired.yml
    │   ├── SLANeXt_wireless.yml
    │   ├── SLANet.yml
    │   ├── SLANet_lcnetv2.yml
    │   ├── SLANet_plus.yml
    │   ├── table_master.yml
    │   └── table_mv3.yml
├── deploy
    ├── README.md
    ├── README_ch.md
    ├── android_demo
    │   ├── .gitignore
    │   ├── README.md
    │   ├── app
    │   │   ├── .gitignore
    │   │   ├── build.gradle
    │   │   ├── proguard-rules.pro
    │   │   └── src
    │   │   │   ├── androidTest
    │   │   │       └── java
    │   │   │       │   └── com
    │   │   │       │       └── baidu
    │   │   │       │           └── paddle
    │   │   │       │               └── lite
    │   │   │       │                   └── demo
    │   │   │       │                       └── ocr
    │   │   │       │                           └── ExampleInstrumentedTest.java
    │   │   │   ├── main
    │   │   │       ├── AndroidManifest.xml
    │   │   │       ├── assets
    │   │   │       │   └── images
    │   │   │       │   │   ├── det_0.jpg
    │   │   │       │   │   ├── det_180.jpg
    │   │   │       │   │   ├── det_270.jpg
    │   │   │       │   │   ├── det_90.jpg
    │   │   │       │   │   ├── rec_0.jpg
    │   │   │       │   │   ├── rec_0_180.jpg
    │   │   │       │   │   ├── rec_1.jpg
    │   │   │       │   │   └── rec_1_180.jpg
    │   │   │       ├── cpp
    │   │   │       │   ├── CMakeLists.txt
    │   │   │       │   ├── common.h
    │   │   │       │   ├── native.cpp
    │   │   │       │   ├── native.h
    │   │   │       │   ├── ocr_clipper.cpp
    │   │   │       │   ├── ocr_clipper.hpp
    │   │   │       │   ├── ocr_cls_process.cpp
    │   │   │       │   ├── ocr_cls_process.h
    │   │   │       │   ├── ocr_crnn_process.cpp
    │   │   │       │   ├── ocr_crnn_process.h
    │   │   │       │   ├── ocr_db_post_process.cpp
    │   │   │       │   ├── ocr_db_post_process.h
    │   │   │       │   ├── ocr_ppredictor.cpp
    │   │   │       │   ├── ocr_ppredictor.h
    │   │   │       │   ├── ppredictor.cpp
    │   │   │       │   ├── ppredictor.h
    │   │   │       │   ├── predictor_input.cpp
    │   │   │       │   ├── predictor_input.h
    │   │   │       │   ├── predictor_output.cpp
    │   │   │       │   ├── predictor_output.h
    │   │   │       │   ├── preprocess.cpp
    │   │   │       │   └── preprocess.h
    │   │   │       ├── java
    │   │   │       │   └── com
    │   │   │       │   │   └── baidu
    │   │   │       │   │       └── paddle
    │   │   │       │   │           └── lite
    │   │   │       │   │               └── demo
    │   │   │       │   │                   └── ocr
    │   │   │       │   │                       ├── AppCompatPreferenceActivity.java
    │   │   │       │   │                       ├── MainActivity.java
    │   │   │       │   │                       ├── OCRPredictorNative.java
    │   │   │       │   │                       ├── OcrResultModel.java
    │   │   │       │   │                       ├── Predictor.java
    │   │   │       │   │                       ├── SettingsActivity.java
    │   │   │       │   │                       └── Utils.java
    │   │   │       └── res
    │   │   │       │   ├── drawable-v24
    │   │   │       │       └── ic_launcher_foreground.xml
    │   │   │       │   ├── drawable
    │   │   │       │       └── ic_launcher_background.xml
    │   │   │       │   ├── layout
    │   │   │       │       └── activity_main.xml
    │   │   │       │   ├── menu
    │   │   │       │       └── menu_action_options.xml
    │   │   │       │   ├── mipmap-anydpi-v26
    │   │   │       │       ├── ic_launcher.xml
    │   │   │       │       └── ic_launcher_round.xml
    │   │   │       │   ├── mipmap-hdpi
    │   │   │       │       ├── ic_launcher.png
    │   │   │       │       └── ic_launcher_round.png
    │   │   │       │   ├── mipmap-mdpi
    │   │   │       │       ├── ic_launcher.png
    │   │   │       │       └── ic_launcher_round.png
    │   │   │       │   ├── mipmap-xhdpi
    │   │   │       │       ├── ic_launcher.png
    │   │   │       │       └── ic_launcher_round.png
    │   │   │       │   ├── mipmap-xxhdpi
    │   │   │       │       ├── ic_launcher.png
    │   │   │       │       └── ic_launcher_round.png
    │   │   │       │   ├── mipmap-xxxhdpi
    │   │   │       │       ├── ic_launcher.png
    │   │   │       │       └── ic_launcher_round.png
    │   │   │       │   ├── values
    │   │   │       │       ├── arrays.xml
    │   │   │       │       ├── colors.xml
    │   │   │       │       ├── strings.xml
    │   │   │       │       └── styles.xml
    │   │   │       │   └── xml
    │   │   │       │       ├── file_paths.xml
    │   │   │       │       └── settings.xml
    │   │   │   └── test
    │   │   │       └── java
    │   │   │           └── com
    │   │   │               └── baidu
    │   │   │                   └── paddle
    │   │   │                       └── lite
    │   │   │                           └── demo
    │   │   │                               └── ocr
    │   │   │                                   └── ExampleUnitTest.java
    │   ├── build.gradle
    │   ├── gradle.properties
    │   ├── gradle
    │   │   └── wrapper
    │   │   │   ├── gradle-wrapper.jar
    │   │   │   └── gradle-wrapper.properties
    │   ├── gradlew
    │   ├── gradlew.bat
    │   └── settings.gradle
    ├── avh
    │   ├── .gitignore
    │   ├── Makefile
    │   ├── README.md
    │   ├── README_ch.md
    │   ├── arm-none-eabi-gcc.cmake
    │   ├── configure_avh.sh
    │   ├── convert_image.py
    │   ├── corstone300.ld
    │   ├── imgs_words_en
    │   │   ├── word_10.png
    │   │   └── word_116.png
    │   ├── include
    │   │   ├── crt_config.h
    │   │   └── tvm_runtime.h
    │   ├── requirements.txt
    │   ├── run_demo.sh
    │   └── src
    │   │   └── demo_bare_metal.c
    ├── cpp_infer
    │   ├── CMakeLists.txt
    │   ├── THIRD_PARTY_LICENSES
    │   │   └── tensorRT_Pro
    │   │   │   └── LICENSE
    │   ├── cli.cc
    │   ├── src
    │   │   ├── api
    │   │   │   ├── models
    │   │   │   │   ├── doc_img_orientation_classification.cc
    │   │   │   │   ├── doc_img_orientation_classification.h
    │   │   │   │   ├── text_detection.cc
    │   │   │   │   ├── text_detection.h
    │   │   │   │   ├── text_image_unwarping.cc
    │   │   │   │   ├── text_image_unwarping.h
    │   │   │   │   ├── text_recognition.cc
    │   │   │   │   ├── text_recognition.h
    │   │   │   │   ├── textline_orientation_classification.cc
    │   │   │   │   └── textline_orientation_classification.h
    │   │   │   └── pipelines
    │   │   │   │   ├── base.h
    │   │   │   │   ├── doc_preprocessor.cc
    │   │   │   │   ├── doc_preprocessor.h
    │   │   │   │   ├── ocr.cc
    │   │   │   │   └── ocr.h
    │   │   ├── base
    │   │   │   ├── base_batch_sampler.cc
    │   │   │   ├── base_batch_sampler.h
    │   │   │   ├── base_cv_result.h
    │   │   │   ├── base_pipeline.cc
    │   │   │   ├── base_pipeline.h
    │   │   │   ├── base_predictor.cc
    │   │   │   └── base_predictor.h
    │   │   ├── common
    │   │   │   ├── image_batch_sampler.cc
    │   │   │   ├── image_batch_sampler.h
    │   │   │   ├── parallel.h
    │   │   │   ├── processors.cc
    │   │   │   ├── processors.h
    │   │   │   ├── static_infer.cc
    │   │   │   ├── static_infer.h
    │   │   │   ├── thread_pool.cc
    │   │   │   └── thread_pool.h
    │   │   ├── configs
    │   │   │   ├── OCR.yaml
    │   │   │   └── doc_preprocessor.yaml
    │   │   ├── modules
    │   │   │   ├── image_classification
    │   │   │   │   ├── predictor.cc
    │   │   │   │   ├── predictor.h
    │   │   │   │   ├── processors.cc
    │   │   │   │   ├── processors.h
    │   │   │   │   ├── result.cc
    │   │   │   │   └── result.h
    │   │   │   ├── image_unwarping
    │   │   │   │   ├── predictor.cc
    │   │   │   │   ├── predictor.h
    │   │   │   │   ├── processors.cc
    │   │   │   │   ├── processors.h
    │   │   │   │   ├── result.cc
    │   │   │   │   └── result.h
    │   │   │   ├── text_detection
    │   │   │   │   ├── predictor.cc
    │   │   │   │   ├── predictor.h
    │   │   │   │   ├── processors.cc
    │   │   │   │   ├── processors.h
    │   │   │   │   ├── result.cc
    │   │   │   │   └── result.h
    │   │   │   └── text_recognition
    │   │   │   │   ├── predictor.cc
    │   │   │   │   ├── predictor.h
    │   │   │   │   ├── processors.cc
    │   │   │   │   ├── processors.h
    │   │   │   │   ├── result.cc
    │   │   │   │   └── result.h
    │   │   ├── pipelines
    │   │   │   ├── doc_preprocessor
    │   │   │   │   ├── pipeline.cc
    │   │   │   │   ├── pipeline.h
    │   │   │   │   ├── result.cc
    │   │   │   │   └── result.h
    │   │   │   └── ocr
    │   │   │   │   ├── pipeline.cc
    │   │   │   │   ├── pipeline.h
    │   │   │   │   ├── result.cc
    │   │   │   │   └── result.h
    │   │   └── utils
    │   │   │   ├── args.cc
    │   │   │   ├── args.h
    │   │   │   ├── func_register.h
    │   │   │   ├── ilogger.cc
    │   │   │   ├── ilogger.h
    │   │   │   ├── mkldnn_blocklist.cc
    │   │   │   ├── mkldnn_blocklist.h
    │   │   │   ├── pp_option.cc
    │   │   │   ├── pp_option.h
    │   │   │   ├── utility.cc
    │   │   │   ├── utility.h
    │   │   │   ├── yaml_config.cc
    │   │   │   └── yaml_config.h
    │   └── tools
    │   │   ├── build.sh
    │   │   └── build_opencv.sh
    ├── docker
    │   └── hubserving
    │   │   ├── README.md
    │   │   ├── README_cn.md
    │   │   ├── cpu
    │   │       └── Dockerfile
    │   │   ├── gpu
    │   │       └── Dockerfile
    │   │   └── sample_request.txt
    ├── hubserving
    │   ├── kie_ser
    │   │   ├── __init__.py
    │   │   ├── config.json
    │   │   ├── module.py
    │   │   └── params.py
    │   ├── kie_ser_re
    │   │   ├── __init__.py
    │   │   ├── config.json
    │   │   ├── module.py
    │   │   └── params.py
    │   ├── ocr_cls
    │   │   ├── __init__.py
    │   │   ├── config.json
    │   │   ├── module.py
    │   │   └── params.py
    │   ├── ocr_det
    │   │   ├── __init__.py
    │   │   ├── config.json
    │   │   ├── module.py
    │   │   └── params.py
    │   ├── ocr_rec
    │   │   ├── __init__.py
    │   │   ├── config.json
    │   │   ├── module.py
    │   │   └── params.py
    │   ├── ocr_system
    │   │   ├── __init__.py
    │   │   ├── config.json
    │   │   ├── module.py
    │   │   └── params.py
    │   ├── readme.md
    │   ├── readme_en.md
    │   ├── structure_layout
    │   │   ├── __init__.py
    │   │   ├── config.json
    │   │   ├── module.py
    │   │   └── params.py
    │   ├── structure_system
    │   │   ├── __init__.py
    │   │   ├── config.json
    │   │   ├── module.py
    │   │   └── params.py
    │   └── structure_table
    │   │   ├── __init__.py
    │   │   ├── config.json
    │   │   ├── module.py
    │   │   └── params.py
    ├── ios_demo
    │   └── README.md
    ├── lite
    │   ├── Makefile
    │   ├── cls_process.cc
    │   ├── cls_process.h
    │   ├── config.txt
    │   ├── crnn_process.cc
    │   ├── crnn_process.h
    │   ├── db_post_process.cc
    │   ├── db_post_process.h
    │   ├── imgs
    │   │   └── lite_demo.png
    │   ├── ocr_db_crnn.cc
    │   ├── prepare.sh
    │   ├── readme.md
    │   └── readme_ch.md
    ├── paddle2onnx
    │   ├── images
    │   │   ├── lite_demo_onnx.png
    │   │   └── lite_demo_paddle.png
    │   ├── readme.md
    │   └── readme_ch.md
    ├── paddlecloud
    │   ├── README.md
    │   └── images
    │   │   ├── architecture.jpeg
    │   │   └── paddlecloud.png
    ├── paddleocr_vl_docker
    │   ├── build.sh
    │   ├── compose.yaml
    │   ├── pipeline.Dockerfile
    │   ├── pipeline_config.yaml
    │   └── vlm.Dockerfile
    └── slim
    │   ├── auto_compression
    │       ├── README.md
    │       ├── configs
    │       │   └── ppocrv4
    │       │   │   ├── ppocrv4_det_qat_dist.yaml
    │       │   │   ├── ppocrv4_det_server_qat_dist.yaml
    │       │   │   ├── ppocrv4_rec_qat_dist.yaml
    │       │   │   └── ppocrv4_rec_server_qat_dist.yaml
    │       ├── ppocr_keys_v1.txt
    │       ├── ppocrv4_det_server_dataset_process.py
    │       ├── run.py
    │       ├── test_ocr.py
    │       ├── test_ocr_det.sh
    │       └── test_ocr_rec.sh
    │   ├── prune
    │       ├── README.md
    │       ├── README_en.md
    │       ├── export_prune_model.py
    │       └── sensitivity_anal.py
    │   └── quantization
    │       ├── README.md
    │       ├── README_en.md
    │       ├── export_model.py
    │       ├── quant.py
    │       └── quant_kl.py
├── doc
    └── fonts
    │   ├── arabic.ttf
    │   ├── chinese_cht.ttf
    │   ├── cyrillic.ttf
    │   ├── french.ttf
    │   ├── german.ttf
    │   ├── hindi.ttf
    │   ├── japan.ttc
    │   ├── kannada.ttf
    │   ├── korean.ttf
    │   ├── latin.ttf
    │   ├── marathi.ttf
    │   ├── nepali.ttf
    │   ├── persian.ttf
    │   ├── simfang.ttf
    │   ├── spanish.ttf
    │   ├── tamil.ttf
    │   ├── telugu.ttf
    │   ├── urdu.ttf
    │   └── uyghur.ttf
├── docs
    ├── FAQ.en.md
    ├── FAQ.md
    ├── community
    │   ├── code_and_doc.en.md
    │   ├── code_and_doc.md
    │   ├── community_contribution.md
    │   └── images
    │   │   ├── banner.png
    │   │   ├── pr.png
    │   │   └── precommit_pass.png
    ├── data_anno_synth
    │   ├── data_annotation.en.md
    │   ├── data_annotation.md
    │   ├── data_synthesis.en.md
    │   ├── data_synthesis.md
    │   ├── images
    │   │   ├── VoTT.jpg
    │   │   ├── labelimg.jpg
    │   │   ├── labelme.jpg
    │   │   └── roLabelImg.png
    │   ├── overview.en.md
    │   └── overview.md
    ├── datasets
    │   ├── datasets.en.md
    │   ├── datasets.md
    │   ├── handwritten_datasets.en.md
    │   ├── handwritten_datasets.md
    │   ├── images
    │   │   ├── 20210816_210413.gif
    │   │   ├── ArT.jpg
    │   │   ├── CASIA_0.jpg
    │   │   ├── CDLA_demo
    │   │   │   ├── val_0633.jpg
    │   │   │   └── val_0941.jpg
    │   │   ├── LSVT_1.jpg
    │   │   ├── LSVT_2.jpg
    │   │   ├── captcha_demo.png
    │   │   ├── ccpd_demo.png
    │   │   ├── ch_doc1.jpg
    │   │   ├── ch_doc3.jpg
    │   │   ├── ch_street_rec_1.png
    │   │   ├── ch_street_rec_2.png
    │   │   ├── cmb_demo.jpg
    │   │   ├── crohme_demo
    │   │   │   ├── hme_00.jpg
    │   │   │   ├── hme_01.jpg
    │   │   │   └── hme_02.jpg
    │   │   ├── funsd_demo
    │   │   │   ├── gt_train_00040534.jpg
    │   │   │   └── gt_train_00070353.jpg
    │   │   ├── ic15_location_download.png
    │   │   ├── icdar_rec.png
    │   │   ├── nist_demo.png
    │   │   ├── pme_demo
    │   │   │   ├── 0000013.png
    │   │   │   ├── 0000099.png
    │   │   │   ├── 0000295.png
    │   │   │   └── 0000562.png
    │   │   ├── publaynet_demo
    │   │   │   ├── gt_PMC3724501_00006.jpg
    │   │   │   └── gt_PMC5086060_00002.jpg
    │   │   ├── rctw.jpg
    │   │   ├── table_PubTabNet_demo
    │   │   │   ├── PMC524509_007_00.png
    │   │   │   └── PMC535543_007_01.png
    │   │   ├── table_tal_demo
    │   │   │   ├── 1.jpg
    │   │   │   └── 2.jpg
    │   │   ├── tablebank_demo
    │   │   │   ├── 004.png
    │   │   │   └── 005.png
    │   │   ├── wildreceipt_demo
    │   │   │   ├── 1bbe854b8817dedb8585e0732089fd1f752d2cec.jpeg
    │   │   │   └── 2769.jpeg
    │   │   └── xfund_demo
    │   │   │   ├── gt_zh_train_0.jpg
    │   │   │   └── gt_zh_train_1.jpg
    │   ├── kie_datasets.en.md
    │   ├── kie_datasets.md
    │   ├── layout_datasets.en.md
    │   ├── layout_datasets.md
    │   ├── ocr_datasets.en.md
    │   ├── ocr_datasets.md
    │   ├── table_datasets.en.md
    │   ├── table_datasets.md
    │   ├── vertical_and_multilingual_datasets.en.md
    │   └── vertical_and_multilingual_datasets.md
    ├── images
    │   ├── 00006737.jpg
    │   ├── 185310636-6ce02f7c-790d-479f-b163-ea97a5a04808-20240708082238739.jpg
    │   ├── 185393805-c67ff571-cf7e-4217-a4b0-8b396c4f22bb-20240708082310650.jpg
    │   ├── 185539517-ccf2372a-f026-4a7c-ad28-c741c770f60a-20240708082247529.png
    │   ├── 185540080-0431e006-9235-4b6d-b63d-0b3c6e1de48f-20240708082316558.jpg
    │   ├── 186094813-3a8e16cc-42e5-4982-b9f4-0134dfb5688d-20240708082323916.png
    │   ├── 197464552-69de557f-edff-4c7f-acbf-069df1ba097f-20240708082253634.png
    │   ├── Banner.png
    │   ├── Banner_cn.png
    │   ├── Banner_ja.png
    │   ├── PP-OCRv3-pic001.jpg
    │   ├── PP-OCRv3-pic002.jpg
    │   ├── PP-OCRv3-pic003.jpg
    │   ├── en_1.png
    │   ├── en_2.png
    │   ├── en_3-0398013.png
    │   ├── en_3.png
    │   ├── japan_2.jpg
    │   ├── korean_1.jpg
    │   ├── ppocrv4.png
    │   ├── ppocrv4_en.jpg
    │   ├── ppstructure-20240708082235651.gif
    │   └── test_add_91.jpg
    ├── index.en.md
    ├── index.md
    ├── index
    │   ├── index.en.md
    │   ├── index.hi.md
    │   ├── index.ja.md
    │   ├── index.ko.md
    │   ├── index.md
    │   └── index.ru.md
    ├── quick_start.en.md
    ├── quick_start.md
    ├── update
    │   ├── update.en.md
    │   ├── update.md
    │   ├── upgrade_notes.en.md
    │   └── upgrade_notes.md
    ├── version2.x
    │   ├── README.en.md
    │   ├── README.md
    │   ├── algorithm
    │   │   ├── add_new_algorithm.en.md
    │   │   ├── add_new_algorithm.md
    │   │   ├── end_to_end
    │   │   │   ├── algorithm_e2e_pgnet.en.md
    │   │   │   ├── algorithm_e2e_pgnet.md
    │   │   │   └── images
    │   │   │   │   ├── e2e_res_img293_pgnet.png
    │   │   │   │   ├── e2e_res_img295_pgnet.png
    │   │   │   │   ├── e2e_res_img623_pgnet.jpg
    │   │   │   │   ├── e2e_res_img_10_pgnet.jpg
    │   │   │   │   └── pgnet_framework.png
    │   │   ├── formula_recognition
    │   │   │   ├── algorithm_rec_can.en.md
    │   │   │   ├── algorithm_rec_can.md
    │   │   │   ├── algorithm_rec_latex_ocr.en.md
    │   │   │   ├── algorithm_rec_latex_ocr.md
    │   │   │   ├── algorithm_rec_ppformulanet.md
    │   │   │   ├── algorithm_rec_ppformulanet_en.md
    │   │   │   ├── algorithm_rec_unimernet.md
    │   │   │   ├── algorithm_rec_unimernet_en.md
    │   │   │   ├── images
    │   │   │   │   └── hme_00.jpg
    │   │   │   └── requirements.txt
    │   │   ├── kie
    │   │   │   ├── algorithm_kie_layoutxlm.en.md
    │   │   │   ├── algorithm_kie_layoutxlm.md
    │   │   │   ├── algorithm_kie_sdmgr.en.md
    │   │   │   ├── algorithm_kie_sdmgr.md
    │   │   │   ├── algorithm_kie_vi_layoutxlm.en.md
    │   │   │   ├── algorithm_kie_vi_layoutxlm.md
    │   │   │   └── images
    │   │   │   │   ├── sdmgr_result.png
    │   │   │   │   ├── zh_val_42_re.jpg
    │   │   │   │   └── zh_val_42_ser.jpg
    │   │   ├── overview.en.md
    │   │   ├── overview.md
    │   │   ├── super_resolution
    │   │   │   ├── algorithm_sr_gestalt.en.md
    │   │   │   ├── algorithm_sr_gestalt.md
    │   │   │   ├── algorithm_sr_telescope.en.md
    │   │   │   ├── algorithm_sr_telescope.md
    │   │   │   └── images
    │   │   │   │   ├── sr_word_52-20240704093810101.png
    │   │   │   │   ├── sr_word_52-20240704094309205.png
    │   │   │   │   ├── sr_word_52.png
    │   │   │   │   ├── word_52-20240704094304807.png
    │   │   │   │   └── word_52.png
    │   │   ├── table_recognition
    │   │   │   ├── algorithm_table_master.en.md
    │   │   │   ├── algorithm_table_master.md
    │   │   │   └── algorithm_table_slanet.md
    │   │   ├── text_detection
    │   │   │   ├── algorithm_det_ct.en.md
    │   │   │   ├── algorithm_det_ct.md
    │   │   │   ├── algorithm_det_db.en.md
    │   │   │   ├── algorithm_det_db.md
    │   │   │   ├── algorithm_det_drrg.en.md
    │   │   │   ├── algorithm_det_drrg.md
    │   │   │   ├── algorithm_det_east.en.md
    │   │   │   ├── algorithm_det_east.md
    │   │   │   ├── algorithm_det_fcenet.en.md
    │   │   │   ├── algorithm_det_fcenet.md
    │   │   │   ├── algorithm_det_psenet.en.md
    │   │   │   ├── algorithm_det_psenet.md
    │   │   │   ├── algorithm_det_sast.en.md
    │   │   │   ├── algorithm_det_sast.md
    │   │   │   └── images
    │   │   │   │   ├── det_res_img623_ct.jpg
    │   │   │   │   ├── det_res_img623_fce.jpg
    │   │   │   │   ├── det_res_img623_sast.jpg
    │   │   │   │   ├── det_res_img_10_db.jpg
    │   │   │   │   ├── det_res_img_10_east.jpg
    │   │   │   │   ├── det_res_img_10_fce.jpg
    │   │   │   │   ├── det_res_img_10_pse.jpg
    │   │   │   │   ├── det_res_img_10_pse_poly.jpg
    │   │   │   │   └── det_res_img_10_sast.jpg
    │   │   └── text_recognition
    │   │   │   ├── algorithm_rec_abinet.en.md
    │   │   │   ├── algorithm_rec_abinet.md
    │   │   │   ├── algorithm_rec_aster.en.md
    │   │   │   ├── algorithm_rec_cppd.en.md
    │   │   │   ├── algorithm_rec_cppd.md
    │   │   │   ├── algorithm_rec_crnn.en.md
    │   │   │   ├── algorithm_rec_crnn.md
    │   │   │   ├── algorithm_rec_nrtr.en.md
    │   │   │   ├── algorithm_rec_nrtr.md
    │   │   │   ├── algorithm_rec_parseq.en.md
    │   │   │   ├── algorithm_rec_parseq.md
    │   │   │   ├── algorithm_rec_rare.en.md
    │   │   │   ├── algorithm_rec_rare.md
    │   │   │   ├── algorithm_rec_rfl.en.md
    │   │   │   ├── algorithm_rec_rfl.md
    │   │   │   ├── algorithm_rec_robustscanner.en.md
    │   │   │   ├── algorithm_rec_robustscanner.md
    │   │   │   ├── algorithm_rec_rosetta.en.md
    │   │   │   ├── algorithm_rec_rosetta.md
    │   │   │   ├── algorithm_rec_sar.en.md
    │   │   │   ├── algorithm_rec_sar.md
    │   │   │   ├── algorithm_rec_satrn.en.md
    │   │   │   ├── algorithm_rec_satrn.md
    │   │   │   ├── algorithm_rec_seed.en.md
    │   │   │   ├── algorithm_rec_seed.md
    │   │   │   ├── algorithm_rec_spin.en.md
    │   │   │   ├── algorithm_rec_spin.md
    │   │   │   ├── algorithm_rec_srn.en.md
    │   │   │   ├── algorithm_rec_srn.md
    │   │   │   ├── algorithm_rec_starnet.en.md
    │   │   │   ├── algorithm_rec_starnet.md
    │   │   │   ├── algorithm_rec_svtr.en.md
    │   │   │   ├── algorithm_rec_svtr.md
    │   │   │   ├── algorithm_rec_svtrv2.md
    │   │   │   ├── algorithm_rec_visionlan.en.md
    │   │   │   ├── algorithm_rec_visionlan.md
    │   │   │   ├── algorithm_rec_vitstr.en.md
    │   │   │   ├── algorithm_rec_vitstr.md
    │   │   │   └── images
    │   │   │       ├── word_1-20240704183926496.png
    │   │   │       ├── word_1-20240704184113913.png
    │   │   │       ├── word_10.png
    │   │   │       ├── word_336-20240705082445918.png
    │   │   │       └── word_336.png
    │   ├── javascripts
    │   │   └── katex.min.js
    │   ├── legacy
    │   │   ├── android_demo.en.md
    │   │   ├── android_demo.md
    │   │   ├── benchmark.en.md
    │   │   ├── benchmark.md
    │   │   ├── cpp_infer.en.md
    │   │   ├── cpp_infer.md
    │   │   ├── images
    │   │   │   ├── 00057937.jpg
    │   │   │   ├── 1.jpg
    │   │   │   ├── 196874354-1b5eecb0-f273-403c-aa6c-4463bf6d78db.png
    │   │   │   ├── 197918203-c7d46f8a-75d4-47f9-9687-405ee0d6727e.gif
    │   │   │   ├── 68747470733a.jpeg
    │   │   │   ├── 68747470733a.png
    │   │   │   ├── 68747470733a2f2f7061.jpeg
    │   │   │   ├── 68747470733adfd.jpeg
    │   │   │   ├── cmake_step1.png
    │   │   │   ├── cmake_step2.jpg
    │   │   │   ├── cmake_step3.jpg
    │   │   │   ├── cmake_step4.jpg
    │   │   │   ├── deployment.jpg
    │   │   │   ├── deployment_en.jpg
    │   │   │   ├── det_res_00018069.jpg
    │   │   │   ├── det_res_french_0.jpg
    │   │   │   ├── det_res_img623_sast.jpg
    │   │   │   ├── det_res_img_10_db.jpg
    │   │   │   ├── det_res_img_10_east.jpg
    │   │   │   ├── det_res_img_10_sast.jpg
    │   │   │   ├── doc.jpg
    │   │   │   ├── img_10_east_starnet.jpg
    │   │   │   ├── img_12.jpg
    │   │   │   ├── img_12_result.jpg
    │   │   │   ├── import_demo.jpg
    │   │   │   ├── lite_demo.png
    │   │   │   ├── lite_demo_onnx.png
    │   │   │   ├── lite_demo_paddle.png
    │   │   │   ├── pipeline_result.png
    │   │   │   ├── result.jpg
    │   │   │   ├── results.png
    │   │   │   ├── run_cls.jpg
    │   │   │   ├── run_cls_rec.jpg
    │   │   │   ├── run_det.jpg
    │   │   │   ├── run_det_cls_rec-20240806100407184.jpg
    │   │   │   ├── run_det_cls_rec.jpg
    │   │   │   ├── run_det_rec.jpg
    │   │   │   ├── run_rec.jpg
    │   │   │   ├── start_server.png
    │   │   │   ├── system_res_00018069_v3.jpg
    │   │   │   ├── vs_step1.jpg
    │   │   │   ├── word_1.jpg
    │   │   │   ├── word_1.png
    │   │   │   ├── word_10.png
    │   │   │   ├── word_336.png
    │   │   │   └── word_4.jpg
    │   │   ├── index.en.md
    │   │   ├── index.md
    │   │   ├── lite.en.md
    │   │   ├── lite.md
    │   │   ├── model_list_2.x.en.md
    │   │   ├── model_list_2.x.md
    │   │   ├── paddle2onnx.en.md
    │   │   ├── paddle2onnx.md
    │   │   ├── paddle_cloud.md
    │   │   ├── paddle_server.en.md
    │   │   ├── paddle_server.md
    │   │   ├── python_infer.en.md
    │   │   ├── python_infer.md
    │   │   ├── windows_vs2019_build.en.md
    │   │   └── windows_vs2019_build.md
    │   ├── model
    │   │   ├── hardware
    │   │   │   ├── install_other_devices.md
    │   │   │   └── supported_models.md
    │   │   └── index.md
    │   ├── ppocr
    │   │   ├── blog
    │   │   │   ├── PP-OCRv3_introduction.md
    │   │   │   ├── PP-OCRv4_introduction.md
    │   │   │   ├── clone.en.md
    │   │   │   ├── clone.md
    │   │   │   ├── config.en.md
    │   │   │   ├── config.md
    │   │   │   ├── customize.en.md
    │   │   │   ├── customize.md
    │   │   │   ├── distributed_training.en.md
    │   │   │   ├── distributed_training.md
    │   │   │   ├── enhanced_ctc_loss.en.md
    │   │   │   ├── enhanced_ctc_loss.md
    │   │   │   ├── images
    │   │   │   │   ├── 11_det.jpg
    │   │   │   │   ├── 11_det_rec.jpg
    │   │   │   │   ├── 12_det.jpg
    │   │   │   │   ├── 12_det_rec.jpg
    │   │   │   │   ├── 187578511-9f3c351e-b68c-4359-a6e5-475810993c61.png
    │   │   │   │   ├── 254-20240709081442260.jpg
    │   │   │   │   ├── 5e612.png
    │   │   │   │   ├── DF.png
    │   │   │   │   ├── GTC.png
    │   │   │   │   ├── LCNet_SVTR.png
    │   │   │   │   ├── LKPAN.png
    │   │   │   │   ├── PFHead.png
    │   │   │   │   ├── RSEFPN.png
    │   │   │   │   ├── SSL.png
    │   │   │   │   ├── UIM.png
    │   │   │   │   ├── arabic_0.jpg
    │   │   │   │   ├── focal_loss_image.png
    │   │   │   │   ├── french_0.jpg
    │   │   │   │   ├── img_02.jpg
    │   │   │   │   ├── img_12.jpg
    │   │   │   │   ├── japan_2-20240709081138234.jpg
    │   │   │   │   ├── korean.jpg
    │   │   │   │   ├── korean_0.jpg
    │   │   │   │   ├── multi_scale.png
    │   │   │   │   ├── ppocrv3_det_cml.png
    │   │   │   │   ├── ppocrv3_framework-0052468.png
    │   │   │   │   ├── ppocrv4_det_cml.png
    │   │   │   │   ├── ppocrv4_framework.png
    │   │   │   │   ├── ppocrv4_gtc.png
    │   │   │   │   ├── rec_algo_compare.png
    │   │   │   │   ├── recconaug.png
    │   │   │   │   ├── svtr_g2.png
    │   │   │   │   ├── svtr_g4.png
    │   │   │   │   ├── svtr_tiny.png
    │   │   │   │   ├── teacher_dml.png
    │   │   │   │   ├── v3_rec_pipeline.png
    │   │   │   │   ├── v4_rec_pipeline.png
    │   │   │   │   └── word_308.png
    │   │   │   ├── inference_args.en.md
    │   │   │   ├── inference_args.md
    │   │   │   ├── multi_languages.en.md
    │   │   │   ├── multi_languages.md
    │   │   │   ├── ocr_book.en.md
    │   │   │   ├── ocr_book.md
    │   │   │   ├── slice.en.md
    │   │   │   ├── slice.md
    │   │   │   ├── whl.en.md
    │   │   │   └── whl.md
    │   │   ├── environment.en.md
    │   │   ├── environment.md
    │   │   ├── images
    │   │   │   ├── 254.jpg
    │   │   │   ├── Anaconda_download.png
    │   │   │   ├── PP-OCRv2
    │   │   │   │   ├── PP-OCRv2-pic001.jpg
    │   │   │   │   ├── PP-OCRv2-pic002.jpg
    │   │   │   │   └── PP-OCRv2-pic003.jpg
    │   │   │   ├── PP-OCRv3
    │   │   │   │   ├── ch
    │   │   │   │   │   ├── PP-OCRv3-pic001.jpg
    │   │   │   │   │   ├── PP-OCRv3-pic002.jpg
    │   │   │   │   │   └── PP-OCRv3-pic003.jpg
    │   │   │   │   ├── en
    │   │   │   │   │   ├── en_1.png
    │   │   │   │   │   ├── en_2.png
    │   │   │   │   │   ├── en_3.png
    │   │   │   │   │   └── en_4.png
    │   │   │   │   └── multi_lang
    │   │   │   │   │   ├── japan_2.jpg
    │   │   │   │   │   └── korean_1.jpg
    │   │   │   ├── anaconda_download-20240704081644684.png
    │   │   │   ├── anaconda_install_env.png
    │   │   │   ├── anaconda_install_folder.png
    │   │   │   ├── anaconda_prompt.png
    │   │   │   ├── anaconda_start.png
    │   │   │   ├── ch_ppocr_mobile_v2.0
    │   │   │   │   ├── 00006737.jpg
    │   │   │   │   ├── 00009282.jpg
    │   │   │   │   ├── 00015504.jpg
    │   │   │   │   ├── 00059985.jpg
    │   │   │   │   ├── 00111002.jpg
    │   │   │   │   ├── img_12.jpg
    │   │   │   │   ├── rotate_00052204.jpg
    │   │   │   │   └── test_add_91.jpg
    │   │   │   ├── conda_activate.png
    │   │   │   ├── conda_create-20240704081656378.png
    │   │   │   ├── conda_create.png
    │   │   │   ├── conda_list_env.png
    │   │   │   ├── conda_new_env.png
    │   │   │   ├── model_prod_flow_ch.png
    │   │   │   ├── model_prod_flow_en.png
    │   │   │   ├── multi_lang
    │   │   │   │   ├── arabic_0.jpg
    │   │   │   │   ├── en_1.jpg
    │   │   │   │   ├── en_2.jpg
    │   │   │   │   ├── en_3.jpg
    │   │   │   │   ├── french_0.jpg
    │   │   │   │   ├── img_01.jpg
    │   │   │   │   ├── img_02.jpg
    │   │   │   │   ├── img_12.jpg
    │   │   │   │   ├── japan_2.jpg
    │   │   │   │   └── korean_0.jpg
    │   │   │   ├── ppocrv2_framework.jpg
    │   │   │   └── ppocrv3_framework.png
    │   │   ├── installation.en.md
    │   │   ├── installation.md
    │   │   ├── model_compress
    │   │   │   ├── knowledge_distillation.en.md
    │   │   │   ├── knowledge_distillation.md
    │   │   │   ├── prune.en.md
    │   │   │   ├── prune.md
    │   │   │   ├── quantization.en.md
    │   │   │   └── quantization.md
    │   │   ├── model_list.en.md
    │   │   ├── model_list.md
    │   │   ├── model_train
    │   │   │   ├── PPOCRv3_det_train.en.md
    │   │   │   ├── PPOCRv3_det_train.md
    │   │   │   ├── angle_class.en.md
    │   │   │   ├── angle_class.md
    │   │   │   ├── detection.en.md
    │   │   │   ├── detection.md
    │   │   │   ├── finetune.en.md
    │   │   │   ├── finetune.md
    │   │   │   ├── images
    │   │   │   │   ├── angle_class_example.jpg
    │   │   │   │   ├── en_paper.jpg
    │   │   │   │   ├── icdar_rec.png
    │   │   │   │   ├── image-20240710082046188.jpg
    │   │   │   │   ├── long_text_examples.jpg
    │   │   │   │   ├── word_1-20240704092705543.png
    │   │   │   │   └── word_1-20240704092713071.jpg
    │   │   │   ├── kie.en.md
    │   │   │   ├── kie.md
    │   │   │   ├── recognition.en.md
    │   │   │   ├── recognition.md
    │   │   │   ├── training.en.md
    │   │   │   ├── training.md
    │   │   │   ├── tricks.en.md
    │   │   │   └── tricks.md
    │   │   ├── overview.en.md
    │   │   ├── overview.md
    │   │   ├── quick_start.en.md
    │   │   ├── quick_start.md
    │   │   ├── visualization.en.md
    │   │   └── visualization.md
    │   ├── ppstructure
    │   │   ├── blog
    │   │   │   ├── how_to_do_kie.en.md
    │   │   │   ├── how_to_do_kie.md
    │   │   │   ├── images
    │   │   │   │   ├── 184526682-8b810397-5a93-4395-93da-37b8b8494c41.png
    │   │   │   │   ├── 184526785-c3d2d310-cd57-4d31-b933-912716b29856.jpg
    │   │   │   │   ├── 184528728-626f77eb-fd9f-4709-a7dc-5411cc417dab.jpg
    │   │   │   │   ├── 184588654-d87f54f3-13ab-42c4-afc0-da79bead3f14.png
    │   │   │   │   ├── 3c200538-f2e6-4d79-847a-4c4587efa9f0.jpeg
    │   │   │   │   ├── 799450d4-d2c5-4b61-b490-e160dc0f515c.jpeg
    │   │   │   │   └── d0858341-a889-483c-8373-5ecaa57f3b20.png
    │   │   │   ├── return_word_pos.en.md
    │   │   │   └── return_word_pos.md
    │   │   ├── images
    │   │   │   ├── 185310636-6ce02f7c-790d-479f-b163-ea97a5a04808-20240705094001639.jpg
    │   │   │   ├── 185393805-c67ff571-cf7e-4217-a4b0-8b396c4f22bb-20240705094037073.jpg
    │   │   │   ├── 185539141-68e71c75-5cf7-4529-b2ca-219d29fa5f68-20240705093932704.jpg
    │   │   │   ├── 185539517-ccf2372a-f026-4a7c-ad28-c741c770f60a-20240705094013236.png
    │   │   │   ├── 185540080-0431e006-9235-4b6d-b63d-0b3c6e1de48f-20240705094043151.jpg
    │   │   │   ├── 186094813-3a8e16cc-42e5-4982-b9f4-0134dfb5688d.png
    │   │   │   ├── 186095641-5843b4da-34d7-4c1c-943a-b1036a859fe3.png
    │   │   │   ├── 186095702-9acef674-12af-4d09-97fc-abf4ab32600e.png
    │   │   │   ├── 195265734-6f4b5a7f-59b1-4fcc-af6d-89afc9bd51e1-20240705140834325.jpg
    │   │   │   ├── 197464552-69de557f-edff-4c7f-acbf-069df1ba097f.png
    │   │   │   ├── 799450d4-d2c5-4b61-b490-e160dc0f515c.jpeg
    │   │   │   ├── ppstructure.gif
    │   │   │   ├── recovery.jpg
    │   │   │   └── table_1.png
    │   │   ├── infer_deploy
    │   │   │   ├── cpp_infer.en.md
    │   │   │   ├── cpp_infer.md
    │   │   │   ├── images
    │   │   │   │   └── deployment-20240704135743247.png
    │   │   │   ├── index.en.md
    │   │   │   ├── index.md
    │   │   │   ├── paddle_server.en.md
    │   │   │   ├── paddle_server.md
    │   │   │   ├── python_infer.en.md
    │   │   │   └── python_infer.md
    │   │   ├── model_train
    │   │   │   ├── images
    │   │   │   │   ├── 185310636-6ce02f7c-790d-479f-b163-ea97a5a04808.jpg
    │   │   │   │   ├── 185393805-c67ff571-cf7e-4217-a4b0-8b396c4f22bb.jpg
    │   │   │   │   ├── 185539141-68e71c75-5cf7-4529-b2ca-219d29fa5f68.jpg
    │   │   │   │   ├── 185539517-ccf2372a-f026-4a7c-ad28-c741c770f60a.png
    │   │   │   │   ├── 185539735-37b5c2ef-629d-43fe-9abb-44bb717ef7ee.jpg
    │   │   │   │   ├── 185540080-0431e006-9235-4b6d-b63d-0b3c6e1de48f.jpg
    │   │   │   │   ├── 185540291-f64e5daf-6d42-4e7c-bbbb-471e3fac4fcc.png
    │   │   │   │   ├── 195319840-68fc60ec-ea66-4095-b734-0ec115860341.png
    │   │   │   │   ├── layout.jpg
    │   │   │   │   ├── layout_res.jpg
    │   │   │   │   ├── recovery-20240708091126891.jpg
    │   │   │   │   ├── recovery_ch.jpg
    │   │   │   │   ├── table_ch_result1.jpg
    │   │   │   │   ├── table_ch_result2.jpg
    │   │   │   │   ├── table_ch_result3.jpg
    │   │   │   │   ├── tableocr_pipeline.jpg
    │   │   │   │   └── zh_val_42_ser.jpg
    │   │   │   ├── recovery_to_doc.en.md
    │   │   │   ├── recovery_to_doc.md
    │   │   │   ├── train_kie.en.md
    │   │   │   ├── train_kie.md
    │   │   │   ├── train_layout.en.md
    │   │   │   ├── train_layout.md
    │   │   │   ├── train_table.en.md
    │   │   │   ├── train_table.md
    │   │   │   ├── training.en.md
    │   │   │   └── training.md
    │   │   ├── models_list.en.md
    │   │   ├── models_list.md
    │   │   ├── overview.en.md
    │   │   ├── overview.md
    │   │   ├── ppstructure_model.md
    │   │   ├── quick_start.en.md
    │   │   └── quick_start.md
    │   └── static
    │   │   └── images
    │   │       ├── demo.jpg
    │   │       └── favicon.ico
    └── version3.x
    │   ├── algorithm
    │       ├── PP-ChatOCRv4
    │       │   ├── PP-ChatOCRv4.en.md
    │       │   └── PP-ChatOCRv4.md
    │       ├── PP-OCRv5
    │       │   ├── PP-OCRv5.en.md
    │       │   ├── PP-OCRv5.md
    │       │   ├── PP-OCRv5_multi_languages.en.md
    │       │   └── PP-OCRv5_multi_languages.md
    │       ├── PP-StructureV3
    │       │   ├── PP-StructureV3.en.md
    │       │   └── PP-StructureV3.md
    │       └── PaddleOCR-VL
    │       │   ├── PaddleOCR-VL.en.md
    │       │   └── PaddleOCR-VL.md
    │   ├── deployment
    │       ├── cpp
    │       │   ├── OCR.en.md
    │       │   ├── OCR.md
    │       │   ├── OCR_windows.en.md
    │       │   ├── OCR_windows.md
    │       │   ├── cpp_local_deployment.en.md
    │       │   └── cpp_local_deployment.md
    │       ├── high_performance_inference.en.md
    │       ├── high_performance_inference.md
    │       ├── mcp_server.en.md
    │       ├── mcp_server.md
    │       ├── obtaining_onnx_models.en.md
    │       ├── obtaining_onnx_models.md
    │       ├── on_device_deployment.en.md
    │       ├── on_device_deployment.md
    │       ├── packaging.en.md
    │       ├── packaging.md
    │       ├── serving.en.md
    │       └── serving.md
    │   ├── installation.en.md
    │   ├── installation.md
    │   ├── logging.en.md
    │   ├── logging.md
    │   ├── logo.jpg
    │   ├── model_list.md
    │   ├── module_usage
    │       ├── chart_parsing.en.md
    │       ├── chart_parsing.md
    │       ├── doc_img_orientation_classification.en.md
    │       ├── doc_img_orientation_classification.md
    │       ├── doc_vlm.en.md
    │       ├── doc_vlm.md
    │       ├── formula_recognition.en.md
    │       ├── formula_recognition.md
    │       ├── layout_analysis.en.md
    │       ├── layout_analysis.md
    │       ├── layout_detection.en.md
    │       ├── layout_detection.md
    │       ├── module_overview.en.md
    │       ├── module_overview.md
    │       ├── seal_text_detection.en.md
    │       ├── seal_text_detection.md
    │       ├── table_cells_detection.en.md
    │       ├── table_cells_detection.md
    │       ├── table_classification.en.md
    │       ├── table_classification.md
    │       ├── table_structure_recognition.en.md
    │       ├── table_structure_recognition.md
    │       ├── text_detection.en.md
    │       ├── text_detection.md
    │       ├── text_image_unwarping.en.md
    │       ├── text_image_unwarping.md
    │       ├── text_recognition.en.md
    │       ├── text_recognition.md
    │       ├── textline_orientation_classification.en.md
    │       └── textline_orientation_classification.md
    │   ├── other_devices_support
    │       ├── multi_devices_use_guide.en.md
    │       ├── multi_devices_use_guide.md
    │       ├── paddlepaddle_install_NPU.en.md
    │       ├── paddlepaddle_install_NPU.md
    │       ├── paddlepaddle_install_XPU.en.md
    │       └── paddlepaddle_install_XPU.md
    │   ├── paddleocr_and_paddlex.en.md
    │   ├── paddleocr_and_paddlex.md
    │   ├── paddlex
    │       ├── overview.en.md
    │       ├── overview.md
    │       ├── quick_start.en.md
    │       └── quick_start.md
    │   └── pipeline_usage
    │       ├── OCR.en.md
    │       ├── OCR.md
    │       ├── PP-ChatOCRv4.en.md
    │       ├── PP-ChatOCRv4.md
    │       ├── PP-DocTranslation.en.md
    │       ├── PP-DocTranslation.md
    │       ├── PP-StructureV3.en.md
    │       ├── PP-StructureV3.md
    │       ├── PaddleOCR-VL-RTX50.en.md
    │       ├── PaddleOCR-VL-RTX50.md
    │       ├── PaddleOCR-VL.en.md
    │       ├── PaddleOCR-VL.md
    │       ├── doc_preprocessor.en.md
    │       ├── doc_preprocessor.md
    │       ├── doc_understanding.en.md
    │       ├── doc_understanding.md
    │       ├── formula_recognition.en.md
    │       ├── formula_recognition.md
    │       ├── instructions
    │           ├── benchmark.en.md
    │           ├── benchmark.md
    │           ├── parallel_inference.en.md
    │           └── parallel_inference.md
    │       ├── pipeline_overview.en.md
    │       ├── pipeline_overview.md
    │       ├── seal_recognition.en.md
    │       ├── seal_recognition.md
    │       ├── table_recognition_v2.en.md
    │       └── table_recognition_v2.md
├── mcp_server
    ├── README.md
    ├── README_en.md
    ├── paddleocr_mcp
    │   ├── __init__.py
    │   ├── __main__.py
    │   ├── pipelines.py
    │   └── py.typed
    └── pyproject.toml
├── mkdocs.yml
├── overrides
    ├── hooks
    │   └── expiry.py
    ├── main.html
    └── partials
    │   ├── comments.html
    │   ├── content.html
    │   └── expired_notice.html
├── paddleocr
    ├── __init__.py
    ├── __main__.py
    ├── _abstract.py
    ├── _cli.py
    ├── _common_args.py
    ├── _constants.py
    ├── _env.py
    ├── _models
    │   ├── __init__.py
    │   ├── _doc_vlm.py
    │   ├── _image_classification.py
    │   ├── _object_detection.py
    │   ├── _text_detection.py
    │   ├── base.py
    │   ├── chart_parsing.py
    │   ├── doc_img_orientation_classification.py
    │   ├── doc_vlm.py
    │   ├── formula_recognition.py
    │   ├── layout_detection.py
    │   ├── seal_text_detection.py
    │   ├── table_cells_detection.py
    │   ├── table_classification.py
    │   ├── table_structure_recognition.py
    │   ├── text_detection.py
    │   ├── text_image_unwarping.py
    │   ├── text_recognition.py
    │   └── textline_orientation_classification.py
    ├── _pipelines
    │   ├── __init__.py
    │   ├── base.py
    │   ├── doc_preprocessor.py
    │   ├── doc_understanding.py
    │   ├── formula_recognition.py
    │   ├── ocr.py
    │   ├── paddleocr_vl.py
    │   ├── pp_chatocrv4_doc.py
    │   ├── pp_doctranslation.py
    │   ├── pp_structurev3.py
    │   ├── seal_recognition.py
    │   ├── table_recognition_v2.py
    │   └── utils.py
    ├── _utils
    │   ├── __init__.py
    │   ├── cli.py
    │   ├── deprecation.py
    │   └── logging.py
    └── _version.py
├── ppocr
    ├── __init__.py
    ├── data
    │   ├── __init__.py
    │   ├── collate_fn.py
    │   ├── imaug
    │   │   ├── ColorJitter.py
    │   │   ├── __init__.py
    │   │   ├── abinet_aug.py
    │   │   ├── copy_paste.py
    │   │   ├── ct_process.py
    │   │   ├── drrg_targets.py
    │   │   ├── east_process.py
    │   │   ├── fce_aug.py
    │   │   ├── fce_targets.py
    │   │   ├── frost_img
    │   │   │   ├── frost1.jpg
    │   │   │   ├── frost2.png
    │   │   │   ├── frost3.png
    │   │   │   ├── frost4.jpg
    │   │   │   ├── frost5.jpg
    │   │   │   └── frost6.jpg
    │   │   ├── iaa_augment.py
    │   │   ├── label_ops.py
    │   │   ├── latex_ocr_aug.py
    │   │   ├── make_border_map.py
    │   │   ├── make_pse_gt.py
    │   │   ├── make_shrink_map.py
    │   │   ├── operators.py
    │   │   ├── pg_process.py
    │   │   ├── randaugment.py
    │   │   ├── random_crop_data.py
    │   │   ├── rec_img_aug.py
    │   │   ├── sast_process.py
    │   │   ├── ssl_img_aug.py
    │   │   ├── table_ops.py
    │   │   ├── text_image_aug
    │   │   │   ├── __init__.py
    │   │   │   ├── augment.py
    │   │   │   └── warp_mls.py
    │   │   ├── unimernet_aug.py
    │   │   └── vqa
    │   │   │   ├── __init__.py
    │   │   │   ├── augment.py
    │   │   │   └── token
    │   │   │       ├── __init__.py
    │   │   │       ├── vqa_re_convert.py
    │   │   │       ├── vqa_token_chunk.py
    │   │   │       ├── vqa_token_pad.py
    │   │   │       └── vqa_token_relation.py
    │   ├── latexocr_dataset.py
    │   ├── lmdb_dataset.py
    │   ├── multi_scale_sampler.py
    │   ├── pgnet_dataset.py
    │   ├── pubtab_dataset.py
    │   └── simple_dataset.py
    ├── ext_op
    │   ├── __init__.py
    │   └── roi_align_rotated
    │   │   ├── roi_align_rotated.cc
    │   │   ├── roi_align_rotated.cu
    │   │   └── roi_align_rotated.py
    ├── losses
    │   ├── __init__.py
    │   ├── ace_loss.py
    │   ├── basic_loss.py
    │   ├── center_loss.py
    │   ├── cls_loss.py
    │   ├── combined_loss.py
    │   ├── det_basic_loss.py
    │   ├── det_ct_loss.py
    │   ├── det_db_loss.py
    │   ├── det_drrg_loss.py
    │   ├── det_east_loss.py
    │   ├── det_fce_loss.py
    │   ├── det_pse_loss.py
    │   ├── det_sast_loss.py
    │   ├── distillation_loss.py
    │   ├── e2e_pg_loss.py
    │   ├── kie_sdmgr_loss.py
    │   ├── rec_aster_loss.py
    │   ├── rec_att_loss.py
    │   ├── rec_can_loss.py
    │   ├── rec_ce_loss.py
    │   ├── rec_cppd_loss.py
    │   ├── rec_ctc_loss.py
    │   ├── rec_enhanced_ctc_loss.py
    │   ├── rec_latexocr_loss.py
    │   ├── rec_multi_loss.py
    │   ├── rec_nrtr_loss.py
    │   ├── rec_parseq_loss.py
    │   ├── rec_ppformulanet_loss.py
    │   ├── rec_pren_loss.py
    │   ├── rec_rfl_loss.py
    │   ├── rec_sar_loss.py
    │   ├── rec_satrn_loss.py
    │   ├── rec_spin_att_loss.py
    │   ├── rec_srn_loss.py
    │   ├── rec_unimernet_loss.py
    │   ├── rec_vl_loss.py
    │   ├── stroke_focus_loss.py
    │   ├── table_att_loss.py
    │   ├── table_master_loss.py
    │   ├── text_focus_loss.py
    │   └── vqa_token_layoutlm_loss.py
    ├── metrics
    │   ├── __init__.py
    │   ├── bleu.py
    │   ├── cls_metric.py
    │   ├── ct_metric.py
    │   ├── det_metric.py
    │   ├── distillation_metric.py
    │   ├── e2e_metric.py
    │   ├── eval_det_iou.py
    │   ├── kie_metric.py
    │   ├── rec_metric.py
    │   ├── sr_metric.py
    │   ├── table_metric.py
    │   ├── vqa_token_re_metric.py
    │   └── vqa_token_ser_metric.py
    ├── modeling
    │   ├── architectures
    │   │   ├── __init__.py
    │   │   ├── base_model.py
    │   │   └── distillation_model.py
    │   ├── backbones
    │   │   ├── __init__.py
    │   │   ├── det_mobilenet_v3.py
    │   │   ├── det_pp_lcnet.py
    │   │   ├── det_pp_lcnet_v2.py
    │   │   ├── det_resnet.py
    │   │   ├── det_resnet_vd.py
    │   │   ├── det_resnet_vd_sast.py
    │   │   ├── e2e_resnet_vd_pg.py
    │   │   ├── kie_unet_sdmgr.py
    │   │   ├── rec_densenet.py
    │   │   ├── rec_donut_swin.py
    │   │   ├── rec_efficientb3_pren.py
    │   │   ├── rec_hgnet.py
    │   │   ├── rec_hybridvit.py
    │   │   ├── rec_lcnetv3.py
    │   │   ├── rec_micronet.py
    │   │   ├── rec_mobilenet_v3.py
    │   │   ├── rec_mv1_enhance.py
    │   │   ├── rec_nrtr_mtb.py
    │   │   ├── rec_pphgnetv2.py
    │   │   ├── rec_repvit.py
    │   │   ├── rec_resnet_31.py
    │   │   ├── rec_resnet_32.py
    │   │   ├── rec_resnet_45.py
    │   │   ├── rec_resnet_aster.py
    │   │   ├── rec_resnet_fpn.py
    │   │   ├── rec_resnet_rfl.py
    │   │   ├── rec_resnet_vd.py
    │   │   ├── rec_resnetv2.py
    │   │   ├── rec_shallow_cnn.py
    │   │   ├── rec_svtrnet.py
    │   │   ├── rec_svtrv2.py
    │   │   ├── rec_vary_vit.py
    │   │   ├── rec_vit.py
    │   │   ├── rec_vit_parseq.py
    │   │   ├── rec_vitstr.py
    │   │   ├── table_master_resnet.py
    │   │   └── vqa_layoutlm.py
    │   ├── heads
    │   │   ├── __init__.py
    │   │   ├── cls_head.py
    │   │   ├── det_ct_head.py
    │   │   ├── det_db_head.py
    │   │   ├── det_drrg_head.py
    │   │   ├── det_east_head.py
    │   │   ├── det_fce_head.py
    │   │   ├── det_pse_head.py
    │   │   ├── det_sast_head.py
    │   │   ├── e2e_pg_head.py
    │   │   ├── gcn.py
    │   │   ├── kie_sdmgr_head.py
    │   │   ├── local_graph.py
    │   │   ├── proposal_local_graph.py
    │   │   ├── rec_abinet_head.py
    │   │   ├── rec_aster_head.py
    │   │   ├── rec_att_head.py
    │   │   ├── rec_can_head.py
    │   │   ├── rec_cppd_head.py
    │   │   ├── rec_ctc_head.py
    │   │   ├── rec_latexocr_head.py
    │   │   ├── rec_multi_head.py
    │   │   ├── rec_nrtr_head.py
    │   │   ├── rec_parseq_head.py
    │   │   ├── rec_ppformulanet_head.py
    │   │   ├── rec_pren_head.py
    │   │   ├── rec_rfl_head.py
    │   │   ├── rec_robustscanner_head.py
    │   │   ├── rec_sar_head.py
    │   │   ├── rec_satrn_head.py
    │   │   ├── rec_spin_att_head.py
    │   │   ├── rec_srn_head.py
    │   │   ├── rec_unimernet_head.py
    │   │   ├── rec_visionlan_head.py
    │   │   ├── self_attention.py
    │   │   ├── sr_rensnet_transformer.py
    │   │   ├── table_att_head.py
    │   │   └── table_master_head.py
    │   ├── necks
    │   │   ├── __init__.py
    │   │   ├── csp_pan.py
    │   │   ├── ct_fpn.py
    │   │   ├── db_fpn.py
    │   │   ├── east_fpn.py
    │   │   ├── fce_fpn.py
    │   │   ├── fpn.py
    │   │   ├── fpn_unet.py
    │   │   ├── intracl.py
    │   │   ├── pg_fpn.py
    │   │   ├── pren_fpn.py
    │   │   ├── rf_adaptor.py
    │   │   ├── rnn.py
    │   │   ├── sast_fpn.py
    │   │   └── table_fpn.py
    │   └── transforms
    │   │   ├── __init__.py
    │   │   ├── gaspin_transformer.py
    │   │   ├── stn.py
    │   │   ├── tbsrn.py
    │   │   ├── tps.py
    │   │   ├── tps_spatial_transformer.py
    │   │   └── tsrn.py
    ├── optimizer
    │   ├── __init__.py
    │   ├── learning_rate.py
    │   ├── lr_scheduler.py
    │   ├── optimizer.py
    │   └── regularizer.py
    ├── postprocess
    │   ├── __init__.py
    │   ├── cls_postprocess.py
    │   ├── ct_postprocess.py
    │   ├── db_postprocess.py
    │   ├── drrg_postprocess.py
    │   ├── east_postprocess.py
    │   ├── fce_postprocess.py
    │   ├── locality_aware_nms.py
    │   ├── pg_postprocess.py
    │   ├── picodet_postprocess.py
    │   ├── pse_postprocess
    │   │   ├── __init__.py
    │   │   ├── pse
    │   │   │   ├── README.md
    │   │   │   ├── __init__.py
    │   │   │   ├── pse.pyx
    │   │   │   └── setup.py
    │   │   └── pse_postprocess.py
    │   ├── rec_postprocess.py
    │   ├── sast_postprocess.py
    │   ├── table_postprocess.py
    │   ├── vqa_token_re_layoutlm_postprocess.py
    │   └── vqa_token_ser_layoutlm_postprocess.py
    └── utils
    │   ├── EN_symbol_dict.txt
    │   ├── __init__.py
    │   ├── dict
    │       ├── README.md
    │       ├── ar_dict.txt
    │       ├── arabic_dict.txt
    │       ├── be_dict.txt
    │       ├── bengali_dict.txt
    │       ├── bg_dict.txt
    │       ├── bm_dict.txt
    │       ├── bm_dict_add.txt
    │       ├── bn_dict.txt
    │       ├── chinese_cht_dict.txt
    │       ├── confuse.pkl
    │       ├── cyrillic_dict.txt
    │       ├── devanagari_dict.txt
    │       ├── en_dict.txt
    │       ├── fa_dict.txt
    │       ├── french_dict.txt
    │       ├── german_dict.txt
    │       ├── gujarati_dict.txt
    │       ├── hebrew_dict.txt
    │       ├── hi_dict.txt
    │       ├── it_dict.txt
    │       ├── japan_dict.txt
    │       ├── ka_dict.txt
    │       ├── kazakh_dict.txt
    │       ├── kie_dict
    │       │   └── xfund_class_list.txt
    │       ├── korean_dict.txt
    │       ├── latex_ocr_tokenizer.json
    │       ├── latex_symbol_dict.txt
    │       ├── latin_dict.txt
    │       ├── layout_dict
    │       │   ├── layout_cdla_dict.txt
    │       │   ├── layout_publaynet_dict.txt
    │       │   └── layout_table_dict.txt
    │       ├── mr_dict.txt
    │       ├── ne_dict.txt
    │       ├── oc_dict.txt
    │       ├── parseq_dict.txt
    │       ├── ppocrv4_doc_dict.txt
    │       ├── ppocrv5_arabic_dict.txt
    │       ├── ppocrv5_cyrillic_dict.txt
    │       ├── ppocrv5_devanagari_dict.txt
    │       ├── ppocrv5_dict.txt
    │       ├── ppocrv5_el_dict.txt
    │       ├── ppocrv5_en_dict.txt
    │       ├── ppocrv5_eslav_dict.txt
    │       ├── ppocrv5_korean_dict.txt
    │       ├── ppocrv5_latin_dict.txt
    │       ├── ppocrv5_ta_dict.txt
    │       ├── ppocrv5_te_dict.txt
    │       ├── ppocrv5_th_dict.txt
    │       ├── pu_dict.txt
    │       ├── rs_dict.txt
    │       ├── rsc_dict.txt
    │       ├── ru_dict.txt
    │       ├── samaritan_dict.txt
    │       ├── spin_dict.txt
    │       ├── syriac_dict.txt
    │       ├── ta_dict.txt
    │       ├── table_dict.txt
    │       ├── table_master_structure_dict.txt
    │       ├── table_structure_dict.txt
    │       ├── table_structure_dict_ch.txt
    │       ├── te_dict.txt
    │       ├── th_dict.txt
    │       ├── ug_dict.txt
    │       ├── uk_dict.txt
    │       ├── unimernet_tokenizer
    │       │   ├── tokenizer.json
    │       │   └── tokenizer_config.json
    │       ├── ur_dict.txt
    │       ├── vi_dict.txt
    │       └── xi_dict.txt
    │   ├── dict90.txt
    │   ├── e2e_metric
    │       ├── Deteval.py
    │       └── polygon_fast.py
    │   ├── e2e_utils
    │       ├── extract_batchsize.py
    │       ├── extract_textpoint_fast.py
    │       ├── extract_textpoint_slow.py
    │       ├── pgnet_pp_utils.py
    │       └── visual.py
    │   ├── en_dict.txt
    │   ├── export_model.py
    │   ├── formula_utils
    │       ├── math_txt2pkl.py
    │       └── unimernet_data_convert.py
    │   ├── gen_label.py
    │   ├── ic15_dict.txt
    │   ├── iou.py
    │   ├── loggers
    │       ├── __init__.py
    │       ├── base_logger.py
    │       ├── loggers.py
    │       └── wandb_logger.py
    │   ├── logging.py
    │   ├── network.py
    │   ├── poly_nms.py
    │   ├── ppocr_keys_v1.txt
    │   ├── profiler.py
    │   ├── save_load.py
    │   ├── stats.py
    │   ├── utility.py
    │   └── visual.py
├── ppstructure
    ├── README.md
    ├── __init__.py
    ├── kie
    │   ├── README.md
    │   ├── README_ch.md
    │   ├── how_to_do_kie.md
    │   ├── how_to_do_kie_en.md
    │   ├── predict_kie_token_ser.py
    │   ├── predict_kie_token_ser_re.py
    │   ├── requirements.txt
    │   └── tools
    │   │   ├── eval_with_label_end2end.py
    │   │   ├── trans_funsd_label.py
    │   │   └── trans_xfun_data.py
    ├── layout
    │   ├── README.md
    │   ├── README_ch.md
    │   ├── __init__.py
    │   └── predict_layout.py
    ├── pdf2word
    │   ├── README.md
    │   ├── icons
    │   │   ├── chinese.png
    │   │   ├── english.png
    │   │   ├── folder-open.png
    │   │   └── folder-plus.png
    │   └── pdf2word.py
    ├── predict_system.py
    ├── recovery
    │   ├── README.md
    │   ├── README_ch.md
    │   ├── __init__.py
    │   ├── recovery_to_doc.py
    │   ├── recovery_to_markdown.py
    │   ├── requirements.txt
    │   └── table_process.py
    ├── table
    │   ├── README.md
    │   ├── README_ch.md
    │   ├── __init__.py
    │   ├── convert_label2html.py
    │   ├── eval_table.py
    │   ├── matcher.py
    │   ├── predict_structure.py
    │   ├── predict_table.py
    │   ├── table_master_match.py
    │   ├── table_metric
    │   │   ├── __init__.py
    │   │   ├── parallel.py
    │   │   └── table_metric.py
    │   └── tablepyxl
    │   │   ├── __init__.py
    │   │   ├── style.py
    │   │   └── tablepyxl.py
    └── utility.py
├── pyproject.toml
├── readme
    ├── README_ar.md
    ├── README_cn.md
    ├── README_es.md
    ├── README_fr.md
    ├── README_ja.md
    ├── README_ko.md
    ├── README_ru.md
    └── README_tcn.md
├── requirements.txt
├── setup.py
├── test_tipc
    ├── benchmark_train.sh
    ├── build_server.sh
    ├── common_func.sh
    ├── compare_results.py
    ├── configs
    │   ├── PP-OCRv3_mobile_rec
    │   │   ├── PP-OCRv3_mobile_rec_distillation.yml
    │   │   ├── model_linux_gpu_normal_normal_infer_cpp_linux_gpu_cpu.txt
    │   │   ├── model_linux_gpu_normal_normal_paddle2onnx_python_linux_cpu.txt
    │   │   ├── model_linux_gpu_normal_normal_serving_python_linux_gpu_cpu.txt
    │   │   ├── train_infer_python.txt
    │   │   ├── train_linux_gpu_fleet_normal_infer_python_linux_gpu_cpu.txt
    │   │   ├── train_linux_gpu_normal_amp_infer_python_linux_gpu_cpu.txt
    │   │   ├── train_pact_infer_python.txt
    │   │   └── train_ptq_infer_python.txt
    │   ├── PP-OCRv3_mobile_rec_KL
    │   │   ├── model_linux_gpu_normal_normal_infer_cpp_linux_gpu_cpu.txt
    │   │   ├── model_linux_gpu_normal_normal_serving_cpp_linux_gpu_cpu.txt
    │   │   └── model_linux_gpu_normal_normal_serving_python_linux_gpu_cpu.txt
    │   ├── PP-OCRv3_mobile_rec_PACT
    │   │   ├── model_linux_gpu_normal_normal_infer_cpp_linux_gpu_cpu.txt
    │   │   ├── model_linux_gpu_normal_normal_serving_cpp_linux_gpu_cpu.txt
    │   │   ├── model_linux_gpu_normal_normal_serving_python_linux_gpu_cpu.txt
    │   │   └── train_linux_gpu_normal_amp_infer_python_linux_gpu_cpu.txt
    │   ├── PP-OCRv4_mobile_rec
    │   │   └── train_infer_python.txt
    │   ├── PP-OCRv4_mobile_rec_ampO2_ultra
    │   │   └── train_infer_python.txt
    │   ├── PP-OCRv4_mobile_rec_fp32_ultra
    │   │   └── train_infer_python.txt
    │   ├── PP-OCRv4_server_rec
    │   │   └── train_infer_python.txt
    │   ├── PP-OCRv4_server_rec_ampO2_ultra
    │   │   └── train_infer_python.txt
    │   ├── PP-OCRv4_server_rec_fp32_ultra
    │   │   └── train_infer_python.txt
    │   ├── ch_PP-OCRv2
    │   │   ├── model_linux_gpu_normal_normal_infer_cpp_linux_gpu_cpu.txt
    │   │   ├── model_linux_gpu_normal_normal_infer_python_linux_gpu_cpu.txt
    │   │   ├── model_linux_gpu_normal_normal_lite_cpp_arm_cpu.txt
    │   │   ├── model_linux_gpu_normal_normal_lite_cpp_arm_gpu_opencl.txt
    │   │   ├── model_linux_gpu_normal_normal_paddle2onnx_python_linux_cpu.txt
    │   │   ├── model_linux_gpu_normal_normal_serving_cpp_linux_gpu_cpu.txt
    │   │   └── model_linux_gpu_normal_normal_serving_python_linux_gpu_cpu.txt
    │   ├── ch_PP-OCRv2_det
    │   │   ├── model_linux_gpu_normal_normal_infer_cpp_linux_gpu_cpu.txt
    │   │   ├── model_linux_gpu_normal_normal_lite_cpp_arm_cpu.txt
    │   │   ├── model_linux_gpu_normal_normal_lite_cpp_arm_gpu_opencl.txt
    │   │   ├── model_linux_gpu_normal_normal_paddle2onnx_python_linux_cpu.txt
    │   │   ├── model_linux_gpu_normal_normal_serving_python_linux_gpu_cpu.txt
    │   │   ├── train_infer_python.txt
    │   │   ├── train_linux_gpu_fleet_normal_infer_python_linux_gpu_cpu.txt
    │   │   ├── train_linux_gpu_normal_amp_infer_python_linux_gpu_cpu.txt
    │   │   ├── train_pact_infer_python.txt
    │   │   └── train_ptq_infer_python.txt
    │   ├── ch_PP-OCRv2_det_KL
    │   │   ├── model_linux_gpu_normal_normal_infer_cpp_linux_gpu_cpu.txt
    │   │   ├── model_linux_gpu_normal_normal_serving_cpp_linux_gpu_cpu.txt
    │   │   └── model_linux_gpu_normal_normal_serving_python_linux_gpu_cpu.txt
    │   ├── ch_PP-OCRv2_det_PACT
    │   │   ├── model_linux_gpu_normal_normal_infer_cpp_linux_gpu_cpu.txt
    │   │   ├── model_linux_gpu_normal_normal_serving_cpp_linux_gpu_cpu.txt
    │   │   └── model_linux_gpu_normal_normal_serving_python_linux_gpu_cpu.txt
    │   ├── ch_PP-OCRv2_rec
    │   │   ├── ch_PP-OCRv2_rec_distillation.yml
    │   │   ├── model_linux_gpu_normal_normal_infer_cpp_linux_gpu_cpu.txt
    │   │   ├── model_linux_gpu_normal_normal_paddle2onnx_python_linux_cpu.txt
    │   │   ├── model_linux_gpu_normal_normal_serving_python_linux_gpu_cpu.txt
    │   │   ├── train_infer_python.txt
    │   │   ├── train_linux_gpu_fleet_normal_infer_python_linux_gpu_cpu.txt
    │   │   ├── train_linux_gpu_normal_amp_infer_python_linux_gpu_cpu.txt
    │   │   ├── train_pact_infer_python.txt
    │   │   └── train_ptq_infer_python.txt
    │   ├── ch_PP-OCRv2_rec_KL
    │   │   ├── model_linux_gpu_normal_normal_infer_cpp_linux_gpu_cpu.txt
    │   │   ├── model_linux_gpu_normal_normal_serving_cpp_linux_gpu_cpu.txt
    │   │   └── model_linux_gpu_normal_normal_serving_python_linux_gpu_cpu.txt
    │   ├── ch_PP-OCRv2_rec_PACT
    │   │   ├── model_linux_gpu_normal_normal_infer_cpp_linux_gpu_cpu.txt
    │   │   ├── model_linux_gpu_normal_normal_serving_cpp_linux_gpu_cpu.txt
    │   │   └── model_linux_gpu_normal_normal_serving_python_linux_gpu_cpu.txt
    │   ├── ch_PP-OCRv3
    │   │   ├── model_linux_gpu_normal_normal_infer_cpp_linux_gpu_cpu.txt
    │   │   ├── model_linux_gpu_normal_normal_infer_python_linux_gpu_cpu.txt
    │   │   ├── model_linux_gpu_normal_normal_lite_cpp_arm_cpu.txt
    │   │   ├── model_linux_gpu_normal_normal_lite_cpp_arm_gpu_opencl.txt
    │   │   ├── model_linux_gpu_normal_normal_paddle2onnx_python_linux_cpu.txt
    │   │   ├── model_linux_gpu_normal_normal_serving_cpp_linux_gpu_cpu.txt
    │   │   └── model_linux_gpu_normal_normal_serving_python_linux_gpu_cpu.txt
    │   ├── ch_PP-OCRv3_det
    │   │   ├── model_linux_gpu_normal_normal_infer_cpp_linux_gpu_cpu.txt
    │   │   ├── model_linux_gpu_normal_normal_lite_cpp_arm_cpu.txt
    │   │   ├── model_linux_gpu_normal_normal_lite_cpp_arm_gpu_opencl.txt
    │   │   ├── model_linux_gpu_normal_normal_paddle2onnx_python_linux_cpu.txt
    │   │   ├── model_linux_gpu_normal_normal_serving_python_linux_gpu_cpu.txt
    │   │   ├── train_infer_python.txt
    │   │   ├── train_linux_gpu_fleet_normal_infer_python_linux_gpu_cpu.txt
    │   │   ├── train_linux_gpu_normal_amp_infer_python_linux_gpu_cpu.txt
    │   │   ├── train_pact_infer_python.txt
    │   │   └── train_ptq_infer_python.txt
    │   ├── ch_PP-OCRv3_det_KL
    │   │   ├── model_linux_gpu_normal_normal_infer_cpp_linux_gpu_cpu.txt
    │   │   ├── model_linux_gpu_normal_normal_serving_cpp_linux_gpu_cpu.txt
    │   │   └── model_linux_gpu_normal_normal_serving_python_linux_gpu_cpu.txt
    │   ├── ch_PP-OCRv3_det_PACT
    │   │   ├── model_linux_gpu_normal_normal_infer_cpp_linux_gpu_cpu.txt
    │   │   ├── model_linux_gpu_normal_normal_serving_cpp_linux_gpu_cpu.txt
    │   │   └── model_linux_gpu_normal_normal_serving_python_linux_gpu_cpu.txt
    │   ├── ch_PP-OCRv4_mobile_det
    │   │   └── train_infer_python.txt
    │   ├── ch_PP-OCRv4_server_det
    │   │   └── train_infer_python.txt
    │   ├── ch_ppocr_mobile_v2_0
    │   │   ├── model_linux_gpu_normal_normal_infer_cpp_linux_gpu_cpu.txt
    │   │   ├── model_linux_gpu_normal_normal_infer_python_linux_gpu_cpu.txt
    │   │   ├── model_linux_gpu_normal_normal_lite_cpp_arm_cpu.txt
    │   │   ├── model_linux_gpu_normal_normal_lite_cpp_arm_gpu_opencl.txt
    │   │   ├── model_linux_gpu_normal_normal_paddle2onnx_python_linux_cpu.txt
    │   │   ├── model_linux_gpu_normal_normal_serving_cpp_linux_gpu_cpu.txt
    │   │   └── model_linux_gpu_normal_normal_serving_python_linux_gpu_cpu.txt
    │   ├── ch_ppocr_mobile_v2_0_det
    │   │   ├── model_linux_gpu_normal_normal_infer_cpp_linux_gpu_cpu.txt
    │   │   ├── model_linux_gpu_normal_normal_infer_python_jetson.txt
    │   │   ├── model_linux_gpu_normal_normal_lite_cpp_arm_cpu.txt
    │   │   ├── model_linux_gpu_normal_normal_lite_cpp_arm_gpu_opencl.txt
    │   │   ├── model_linux_gpu_normal_normal_paddle2onnx_python_linux_cpu.txt
    │   │   ├── model_linux_gpu_normal_normal_serving_python_linux_gpu_cpu.txt
    │   │   ├── train_infer_python.txt
    │   │   ├── train_linux_dcu_normal_normal_infer_python_dcu.txt
    │   │   ├── train_linux_gpu_fleet_normal_infer_python_linux_gpu_cpu.txt
    │   │   ├── train_linux_gpu_normal_amp_infer_python_linux_gpu_cpu.txt
    │   │   ├── train_mac_cpu_normal_normal_infer_python_mac_cpu.txt
    │   │   ├── train_pact_infer_python.txt
    │   │   ├── train_ptq_infer_python.txt
    │   │   └── train_windows_gpu_normal_normal_infer_python_windows_cpu_gpu.txt
    │   ├── ch_ppocr_mobile_v2_0_det_FPGM
    │   │   ├── train_infer_python.txt
    │   │   └── train_linux_gpu_normal_amp_infer_python_linux_gpu_cpu.txt
    │   ├── ch_ppocr_mobile_v2_0_det_KL
    │   │   ├── model_linux_gpu_normal_normal_infer_cpp_linux_gpu_cpu.txt
    │   │   ├── model_linux_gpu_normal_normal_infer_python_mac_cpu.txt
    │   │   ├── model_linux_gpu_normal_normal_infer_python_windows_gpu_cpu.txt
    │   │   ├── model_linux_gpu_normal_normal_serving_cpp_linux_gpu_cpu.txt
    │   │   └── model_linux_gpu_normal_normal_serving_python_linux_gpu_cpu.txt
    │   ├── ch_ppocr_mobile_v2_0_det_PACT
    │   │   ├── model_linux_gpu_normal_normal_infer_cpp_linux_gpu_cpu.txt
    │   │   ├── model_linux_gpu_normal_normal_serving_cpp_linux_gpu_cpu.txt
    │   │   └── model_linux_gpu_normal_normal_serving_python_linux_gpu_cpu.txt
    │   ├── ch_ppocr_mobile_v2_0_rec
    │   │   ├── model_linux_gpu_normal_normal_infer_cpp_linux_gpu_cpu.txt
    │   │   ├── model_linux_gpu_normal_normal_paddle2onnx_python_linux_cpu.txt
    │   │   ├── model_linux_gpu_normal_normal_serving_python_linux_gpu_cpu.txt
    │   │   ├── train_infer_python.txt
    │   │   ├── train_linux_gpu_fleet_normal_infer_python_linux_gpu_cpu.txt
    │   │   ├── train_linux_gpu_normal_amp_infer_python_linux_gpu_cpu.txt
    │   │   ├── train_pact_infer_python.txt
    │   │   └── train_ptq_infer_python.txt
    │   ├── ch_ppocr_mobile_v2_0_rec_FPGM
    │   │   ├── rec_chinese_lite_train_v2.0.yml
    │   │   ├── train_infer_python.txt
    │   │   └── train_linux_gpu_normal_amp_infer_python_linux_gpu_cpu.txt
    │   ├── ch_ppocr_mobile_v2_0_rec_KL
    │   │   ├── model_linux_gpu_normal_normal_infer_cpp_linux_gpu_cpu.txt
    │   │   ├── model_linux_gpu_normal_normal_serving_cpp_linux_gpu_cpu.txt
    │   │   ├── model_linux_gpu_normal_normal_serving_python_linux_gpu_cpu.txt
    │   │   └── rec_chinese_lite_train_v2.0.yml
    │   ├── ch_ppocr_mobile_v2_0_rec_PACT
    │   │   ├── model_linux_gpu_normal_normal_infer_cpp_linux_gpu_cpu.txt
    │   │   ├── model_linux_gpu_normal_normal_serving_cpp_linux_gpu_cpu.txt
    │   │   ├── model_linux_gpu_normal_normal_serving_python_linux_gpu_cpu.txt
    │   │   └── rec_chinese_lite_train_v2.0.yml
    │   ├── ch_ppocr_server_v2_0
    │   │   ├── model_linux_gpu_normal_normal_infer_cpp_linux_gpu_cpu.txt
    │   │   ├── model_linux_gpu_normal_normal_infer_python_linux_gpu_cpu.txt
    │   │   ├── model_linux_gpu_normal_normal_paddle2onnx_python_linux_cpu.txt
    │   │   ├── model_linux_gpu_normal_normal_serving_cpp_linux_gpu_cpu.txt
    │   │   └── model_linux_gpu_normal_normal_serving_python_linux_gpu_cpu.txt
    │   ├── ch_ppocr_server_v2_0_det
    │   │   ├── det_r50_vd_db.yml
    │   │   ├── model_linux_gpu_normal_normal_infer_cpp_linux_gpu_cpu.txt
    │   │   ├── model_linux_gpu_normal_normal_paddle2onnx_python_linux_cpu.txt
    │   │   ├── model_linux_gpu_normal_normal_serving_python_linux_gpu_cpu.txt
    │   │   ├── train_infer_python.txt
    │   │   ├── train_linux_gpu_fleet_normal_infer_python_linux_gpu_cpu.txt
    │   │   └── train_linux_gpu_normal_amp_infer_python_linux_gpu_cpu.txt
    │   ├── ch_ppocr_server_v2_0_rec
    │   │   ├── model_linux_gpu_normal_normal_infer_cpp_linux_gpu_cpu.txt
    │   │   ├── model_linux_gpu_normal_normal_paddle2onnx_python_linux_cpu.txt
    │   │   ├── model_linux_gpu_normal_normal_serving_python_linux_gpu_cpu.txt
    │   │   ├── rec_icdar15_train.yml
    │   │   ├── train_infer_python.txt
    │   │   ├── train_linux_gpu_fleet_normal_infer_python_linux_gpu_cpu.txt
    │   │   └── train_linux_gpu_normal_amp_infer_python_linux_gpu_cpu.txt
    │   ├── det_mv3_db_v2_0
    │   │   └── train_infer_python.txt
    │   ├── det_mv3_east_v2_0
    │   │   ├── det_mv3_east.yml
    │   │   └── train_infer_python.txt
    │   ├── det_mv3_pse_v2_0
    │   │   ├── det_mv3_pse.yml
    │   │   └── train_infer_python.txt
    │   ├── det_r18_ct
    │   │   └── train_infer_python.txt
    │   ├── det_r50_db_plusplus
    │   │   └── train_infer_python.txt
    │   ├── det_r50_db_v2_0
    │   │   └── train_infer_python.txt
    │   ├── det_r50_dcn_fce_ctw_v2_0
    │   │   ├── det_r50_vd_dcn_fce_ctw.yml
    │   │   └── train_infer_python.txt
    │   ├── det_r50_vd_east_v2_0
    │   │   ├── det_r50_vd_east.yml
    │   │   └── train_infer_python.txt
    │   ├── det_r50_vd_pse_v2_0
    │   │   ├── det_r50_vd_pse.yml
    │   │   └── train_infer_python.txt
    │   ├── det_r50_vd_sast_icdar15_v2_0
    │   │   ├── det_r50_vd_sast_icdar2015.yml
    │   │   └── train_infer_python.txt
    │   ├── det_r50_vd_sast_totaltext_v2_0
    │   │   ├── det_r50_vd_sast_totaltext.yml
    │   │   └── train_infer_python.txt
    │   ├── en_server_pgnetA
    │   │   └── train_infer_python.txt
    │   ├── en_table_structure
    │   │   ├── model_linux_gpu_normal_normal_infer_cpp_linux_gpu_cpu.txt
    │   │   ├── model_linux_gpu_normal_normal_paddle2onnx_python_linux_cpu.txt
    │   │   ├── train_infer_python.txt
    │   │   ├── train_linux_gpu_fleet_normal_infer_python_linux_gpu_cpu.txt
    │   │   ├── train_linux_gpu_normal_amp_infer_python_linux_gpu_cpu.txt
    │   │   ├── train_pact_infer_python.txt
    │   │   └── train_ptq_infer_python.txt
    │   ├── en_table_structure_PACT
    │   │   └── model_linux_gpu_normal_normal_infer_cpp_linux_gpu_cpu.txt
    │   ├── layoutxlm_ser
    │   │   ├── ser_layoutxlm_xfund_zh.yml
    │   │   ├── train_infer_python.txt
    │   │   ├── train_linux_gpu_fleet_normal_infer_python_linux_gpu_cpu.txt
    │   │   ├── train_linux_gpu_normal_amp_infer_python_linux_gpu_cpu.txt
    │   │   ├── train_pact_infer_python.txt
    │   │   └── train_ptq_infer_python.txt
    │   ├── rec_d28_can
    │   │   ├── rec_d28_can.yml
    │   │   └── train_infer_python.txt
    │   ├── rec_mtb_nrtr
    │   │   ├── rec_mtb_nrtr.yml
    │   │   └── train_infer_python.txt
    │   ├── rec_mv3_none_bilstm_ctc_v2_0
    │   │   ├── rec_icdar15_train.yml
    │   │   └── train_infer_python.txt
    │   ├── rec_mv3_none_none_ctc_v2_0
    │   │   ├── rec_icdar15_train.yml
    │   │   └── train_infer_python.txt
    │   ├── rec_mv3_tps_bilstm_att_v2_0
    │   │   ├── rec_mv3_tps_bilstm_att.yml
    │   │   └── train_infer_python.txt
    │   ├── rec_mv3_tps_bilstm_ctc_v2_0
    │   │   ├── rec_icdar15_train.yml
    │   │   └── train_infer_python.txt
    │   ├── rec_parseq
    │   │   ├── rec_vit_parseq.yml
    │   │   └── train_infer_python.txt
    │   ├── rec_r31_robustscanner
    │   │   ├── rec_r31_robustscanner.yml
    │   │   └── train_infer_python.txt
    │   ├── rec_r31_sar
    │   │   ├── rec_r31_sar.yml
    │   │   └── train_infer_python.txt
    │   ├── rec_r32_gaspin_bilstm_att
    │   │   ├── rec_r32_gaspin_bilstm_att.yml
    │   │   └── train_infer_python.txt
    │   ├── rec_r34_vd_none_bilstm_ctc_v2_0
    │   │   ├── rec_icdar15_train.yml
    │   │   └── train_infer_python.txt
    │   ├── rec_r34_vd_none_none_ctc_v2_0
    │   │   ├── rec_icdar15_train.yml
    │   │   └── train_infer_python.txt
    │   ├── rec_r34_vd_tps_bilstm_att_v2_0
    │   │   ├── rec_r34_vd_tps_bilstm_att.yml
    │   │   └── train_infer_python.txt
    │   ├── rec_r34_vd_tps_bilstm_ctc_v2_0
    │   │   ├── rec_icdar15_train.yml
    │   │   └── train_infer_python.txt
    │   ├── rec_r45_abinet
    │   │   ├── rec_r45_abinet.yml
    │   │   └── train_infer_python.txt
    │   ├── rec_r45_visionlan
    │   │   ├── rec_r45_visionlan.yml
    │   │   └── train_infer_python.txt
    │   ├── rec_r50_fpn_vd_none_srn
    │   │   ├── rec_r50_fpn_srn.yml
    │   │   └── train_infer_python.txt
    │   ├── rec_resnet_rfl
    │   │   ├── rec_resnet_rfl.yml
    │   │   └── train_infer_python.txt
    │   ├── rec_svtrnet
    │   │   ├── rec_svtrnet.yml
    │   │   └── train_infer_python.txt
    │   ├── rec_vitstr_none_ce
    │   │   ├── rec_vitstr_none_ce.yml
    │   │   └── train_infer_python.txt
    │   ├── slanet
    │   │   ├── model_linux_gpu_normal_normal_infer_cpp_linux_gpu_cpu.txt
    │   │   ├── model_linux_gpu_normal_normal_paddle2onnx_python_linux_cpu.txt
    │   │   ├── train_infer_python.txt
    │   │   ├── train_linux_gpu_fleet_normal_infer_python_linux_gpu_cpu.txt
    │   │   ├── train_linux_gpu_normal_amp_infer_python_linux_gpu_cpu.txt
    │   │   ├── train_pact_infer_python.txt
    │   │   └── train_ptq_infer_python.txt
    │   ├── sr_telescope
    │   │   ├── sr_telescope.yml
    │   │   └── train_infer_python.txt
    │   ├── table_master
    │   │   ├── table_master.yml
    │   │   └── train_infer_python.txt
    │   └── vi_layoutxlm_ser
    │   │   ├── train_infer_python.txt
    │   │   ├── train_linux_gpu_fleet_normal_infer_python_linux_gpu_cpu.txt
    │   │   ├── train_linux_gpu_normal_amp_infer_python_linux_gpu_cpu.txt
    │   │   ├── train_pact_infer_python.txt
    │   │   └── train_ptq_infer_python.txt
    ├── docs
    │   ├── benchmark_train.md
    │   ├── compare_cpp_right.png
    │   ├── compare_cpp_wrong.png
    │   ├── compare_right.png
    │   ├── compare_wrong.png
    │   ├── guide.png
    │   ├── install.md
    │   ├── lite_auto_log.png
    │   ├── lite_log.png
    │   ├── mac_test_train_inference_python.md
    │   ├── ssh_termux_ls.png
    │   ├── termux.jpg
    │   ├── termux_for_android.md
    │   ├── test.png
    │   ├── test_inference_cpp.md
    │   ├── test_lite_arm_cpp.md
    │   ├── test_paddle2onnx.md
    │   ├── test_ptq_inference_python.md
    │   ├── test_serving.md
    │   ├── test_train_fleet_inference_python.md
    │   ├── test_train_inference_python.md
    │   └── win_test_train_inference_python.md
    ├── prepare.sh
    ├── prepare_lite_cpp.sh
    ├── readme.md
    ├── results
    │   ├── cpp_ppocr_det_mobile_results_fp16.txt
    │   ├── cpp_ppocr_det_mobile_results_fp32.txt
    │   ├── python_ppocr_det_mobile_results_fp16.txt
    │   └── python_ppocr_det_mobile_results_fp32.txt
    ├── supplementary
    │   ├── __init__.py
    │   ├── config.py
    │   ├── custom_op
    │   │   ├── custom_relu_op.cc
    │   │   ├── custom_relu_op.cu
    │   │   └── test.py
    │   ├── data.py
    │   ├── data_loader.py
    │   ├── load_cifar.py
    │   ├── loss.py
    │   ├── metric.py
    │   ├── mv3.py
    │   ├── mv3_distill.yml
    │   ├── mv3_large_x0_5.yml
    │   ├── optimizer.py
    │   ├── readme.md
    │   ├── requirements.txt
    │   ├── slim
    │   │   ├── __init__.py
    │   │   ├── slim_fpgm.py
    │   │   └── slim_quant.py
    │   ├── test_tipc
    │   │   ├── common_func.sh
    │   │   ├── test_train_python.sh
    │   │   ├── tipc_train.png
    │   │   ├── train_infer_python.txt
    │   │   ├── train_infer_python_FPGM.txt
    │   │   ├── train_infer_python_FPGM_fleet.txt
    │   │   ├── train_infer_python_PACT.txt
    │   │   ├── train_infer_python_PACT_fleet.txt
    │   │   └── train_infer_python_fleet.txt
    │   ├── train.py
    │   ├── train.sh
    │   └── utils.py
    ├── test_inference_cpp.sh
    ├── test_inference_python.sh
    ├── test_lite_arm_cpp.sh
    ├── test_paddle2onnx.sh
    ├── test_ptq_inference_python.sh
    ├── test_serving_infer_cpp.sh
    ├── test_serving_infer_python.sh
    ├── test_train_inference_python.sh
    ├── test_train_inference_python_npu.sh
    ├── test_train_inference_python_xpu.sh
    └── web
    │   ├── expect.json
    │   ├── index.html
    │   ├── index.test.js
    │   ├── jest-puppeteer.config.js
    │   ├── jest.config.js
    │   └── test.jpg
├── tests
    ├── __init__.py
    ├── models
    │   ├── __init__.py
    │   ├── image_classification_common.py
    │   ├── object_detection_common.py
    │   ├── test_doc_img_orientation_classifcation.py
    │   ├── test_doc_vlm.py
    │   ├── test_formula_recognition.py
    │   ├── test_layout_detection.py
    │   ├── test_seal_text_detection.py
    │   ├── test_table_cells_detection.py
    │   ├── test_table_classifcation.py
    │   ├── test_table_structure_recognition.py
    │   ├── test_text_detection.py
    │   ├── test_text_image_unwarping.py
    │   ├── test_text_recognition.py
    │   └── test_textline_orientation_classifcation.py
    ├── pipelines
    │   ├── __init__.py
    │   ├── test_doc_preprocessor.py
    │   ├── test_doc_understanding.py
    │   ├── test_formula_recognition.py
    │   ├── test_ocr.py
    │   ├── test_pp_chatocrv4_doc.py
    │   ├── test_pp_doctranslation.py
    │   ├── test_pp_structurev3.py
    │   ├── test_seal_rec.py
    │   └── test_table_recognition_v2.py
    ├── test_cls_postprocess.py
    ├── test_files
    │   ├── book.jpg
    │   ├── book_rot180.jpg
    │   ├── doc_with_formula.png
    │   ├── formula.png
    │   ├── medal_table.png
    │   ├── seal.png
    │   ├── table.jpg
    │   ├── textline.png
    │   └── textline_rot180.jpg
    ├── test_formula_model.py
    ├── test_iaa_augment.py
    ├── test_ppstructure.py
    └── testing_utils.py
├── tools
    ├── __init__.py
    ├── end2end
    │   ├── convert_ppocr_label.py
    │   ├── draw_html.py
    │   ├── eval_end2end.py
    │   └── readme.md
    ├── eval.py
    ├── export_center.py
    ├── export_model.py
    ├── infer
    │   ├── predict_cls.py
    │   ├── predict_det.py
    │   ├── predict_e2e.py
    │   ├── predict_rec.py
    │   ├── predict_sr.py
    │   ├── predict_system.py
    │   └── utility.py
    ├── infer_cls.py
    ├── infer_det.py
    ├── infer_e2e.py
    ├── infer_kie.py
    ├── infer_kie_token_ser.py
    ├── infer_kie_token_ser_re.py
    ├── infer_rec.py
    ├── infer_sr.py
    ├── infer_table.py
    ├── naive_sync_bn.py
    ├── program.py
    ├── test_hubserving.py
    └── train.py
└── train.sh


/.clang_format.hook:
--------------------------------------------------------------------------------
 1 | #!/bin/bash
 2 | set -e
 3 | 
 4 | readonly VERSION="13.0.0"
 5 | 
 6 | version=$(clang-format -version)
 7 | 
 8 | if ! [[ $(python -V 2>&1 | awk '{print $2}' | awk -F '.' '{print $1$2}') -ge 36 ]]; then
 9 |     echo "clang-format installation by pip need python version great equal 3.6,
10 |           please change the default python to higher version."
11 |     exit 1
12 | fi
13 | 
14 | if ! [[ $version == *"$VERSION"* ]]; then
15 |     # low version of pip may not have the source of clang-format whl
16 |     pip install --upgrade pip
17 |     pip install clang-format==13.0.0
18 | fi
19 | 
20 | clang-format $@
21 | 


--------------------------------------------------------------------------------
/.github/ISSUE_TEMPLATE/config.yml:
--------------------------------------------------------------------------------
 1 | blank_issues_enabled: false
 2 | contact_links:
 3 |   - name: 🙏 Q&A
 4 |     url: https://github.com/PaddlePaddle/PaddleOCR/discussions/categories/q-a
 5 |     about: Ask the community for help
 6 |   - name: 💡 Feature requests and ideas
 7 |     url: https://github.com/PaddlePaddle/PaddleOCR/discussions/categories/ideas
 8 |     about: Share ideas for new features
 9 |   - name: 🙌 Show and tell
10 |     url: https://github.com/PaddlePaddle/PaddleOCR/discussions/categories/show-and-tell
11 |     about: Show off something you've made
12 | 


--------------------------------------------------------------------------------
/.github/dependabot.yml:
--------------------------------------------------------------------------------
 1 | # Keep GitHub Actions up to date with GitHub's Dependabot...
 2 | # https://docs.github.com/en/code-security/dependabot/working-with-dependabot/keeping-your-actions-up-to-date-with-dependabot
 3 | # https://docs.github.com/en/code-security/dependabot/dependabot-version-updates/configuration-options-for-the-dependabot.yml-file#package-ecosystem
 4 | version: 2
 5 | updates:
 6 |   - package-ecosystem: github-actions
 7 |     directory: /
 8 |     groups:
 9 |       github-actions:
10 |         patterns:
11 |           - "*"  # Group all Actions updates into a single larger pull request
12 |     schedule:
13 |       interval: weekly
14 | 


--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
 1 | # Byte-compiled / optimized / DLL files
 2 | __pycache__/
 3 | .ipynb_checkpoints/
 4 | *.py[cod]
 5 | *$py.class
 6 | 
 7 | # C extensions
 8 | *.so
 9 | 
10 | inference/
11 | inference_results/
12 | output/
13 | train_data/
14 | log/
15 | *.DS_Store
16 | *.vs
17 | *.user
18 | *~
19 | *.vscode
20 | *.idea
21 | 
22 | *.log
23 | .clang-format
24 | .clang_format.hook
25 | 
26 | build/
27 | dist/
28 | paddleocr.egg-info/
29 | /deploy/android_demo/app/OpenCV/
30 | /deploy/android_demo/app/PaddleLite/
31 | /deploy/android_demo/app/.cxx/
32 | /deploy/android_demo/app/cache/
33 | test_tipc/web/models/
34 | test_tipc/web/node_modules/
35 | 


--------------------------------------------------------------------------------
/.lycheeignore:
--------------------------------------------------------------------------------
1 | zhuanlan.zhihu.com/*
2 | https://demo.doctrp.top/
3 | http://127.0.0.1:8001/
4 | http://localhost:9003
5 | https://rrc.cvc.uab.es/
6 | 


--------------------------------------------------------------------------------
/.style.yapf:
--------------------------------------------------------------------------------
1 | [style]
2 | based_on_style = pep8
3 | column_limit = 80
4 | 


--------------------------------------------------------------------------------
/CNAME:
--------------------------------------------------------------------------------
1 | www.paddleocr.ai
2 | 


--------------------------------------------------------------------------------
/MANIFEST.in:
--------------------------------------------------------------------------------
 1 | prune .github
 2 | prune applications
 3 | prune benchmark
 4 | prune configs
 5 | prune deploy
 6 | prune doc
 7 | prune docs
 8 | prune overrides
 9 | prune ppocr/ext_op
10 | prune ppocr/losses
11 | prune ppocr/metrics
12 | prune ppocr/modeling
13 | prune ppocr/optimizer
14 | prune ppstructure/docs
15 | prune test_tipc
16 | prune tests
17 | exclude .clang_format.hook
18 | exclude .gitignore
19 | exclude .pre-commit-config.yaml
20 | exclude .style.yapf
21 | exclude mkdocs.yml
22 | exclude train.sh
23 | 


--------------------------------------------------------------------------------
/applications/README.md:
--------------------------------------------------------------------------------
1 | 移步[docs](https://www.paddleocr.ai/v2.10.0/applications/overview.html)
2 | 


--------------------------------------------------------------------------------
/benchmark/PaddleOCR_DBNet/.gitattributes:
--------------------------------------------------------------------------------
1 | *.html linguist-language=python
2 | *.ipynb linguist-language=python
3 | 


--------------------------------------------------------------------------------
/benchmark/PaddleOCR_DBNet/.gitignore:
--------------------------------------------------------------------------------
 1 | .DS_Store
 2 | *.pth
 3 | *.pyc
 4 | *.pyo
 5 | *.log
 6 | *.tmp
 7 | *.pkl
 8 | __pycache__/
 9 | .idea/
10 | output/
11 | test/*.jpg
12 | datasets/
13 | index/
14 | train_log/
15 | log/
16 | profiling_log/
17 | 


--------------------------------------------------------------------------------
/benchmark/PaddleOCR_DBNet/base/__init__.py:
--------------------------------------------------------------------------------
1 | from .base_trainer import BaseTrainer
2 | from .base_dataset import BaseDataSet
3 | 


--------------------------------------------------------------------------------
/benchmark/PaddleOCR_DBNet/data_loader/modules/__init__.py:
--------------------------------------------------------------------------------
1 | # -*- coding: utf-8 -*-
2 | # @Time    : 2019/12/4 10:53
3 | # @Author  : zhoujun
4 | from .iaa_augment import IaaAugment
5 | from .augment import *
6 | from .random_crop_data import EastRandomCropData, PSERandomCrop
7 | from .make_border_map import MakeBorderMap
8 | from .make_shrink_map import MakeShrinkMap
9 | 


--------------------------------------------------------------------------------
/benchmark/PaddleOCR_DBNet/environment.yml:
--------------------------------------------------------------------------------
 1 | name: dbnet
 2 | channels:
 3 |   - conda-forge
 4 |   - defaults
 5 | dependencies:
 6 |   - anyconfig==0.9.10
 7 |   - future==0.18.2
 8 |   - imgaug==0.4.0
 9 |   - matplotlib==3.1.2
10 |   - numpy==1.17.4
11 |   - opencv
12 |   - pyclipper
13 |   - PyYAML==5.2
14 |   - scikit-image==0.16.2
15 |   - Shapely==1.6.4
16 |   - tensorboard=2
17 |   - tqdm==4.40.1
18 |   - ipython
19 |   - pip
20 |   - pip:
21 |     - polygon3
22 | 


--------------------------------------------------------------------------------
/benchmark/PaddleOCR_DBNet/eval.sh:
--------------------------------------------------------------------------------
1 | CUDA_VISIBLE_DEVICES=0 python3 tools/eval.py --model_path ''
2 | 


--------------------------------------------------------------------------------
/benchmark/PaddleOCR_DBNet/imgs/paper/db.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/benchmark/PaddleOCR_DBNet/imgs/paper/db.jpg


--------------------------------------------------------------------------------
/benchmark/PaddleOCR_DBNet/models/__init__.py:
--------------------------------------------------------------------------------
 1 | # -*- coding: utf-8 -*-
 2 | # @Time    : 2019/8/23 21:55
 3 | # @Author  : zhoujun
 4 | import copy
 5 | from .model import Model
 6 | from .losses import build_loss
 7 | 
 8 | __all__ = ["build_loss", "build_model"]
 9 | support_model = ["Model"]
10 | 
11 | 
12 | def build_model(config):
13 |     """
14 |     get architecture model class
15 |     """
16 |     copy_config = copy.deepcopy(config)
17 |     arch_type = copy_config.pop("type")
18 |     assert (
19 |         arch_type in support_model
20 |     ), f"{arch_type} is not developed yet!, only {support_model} are support now"
21 |     arch_model = eval(arch_type)(copy_config)
22 |     return arch_model
23 | 


--------------------------------------------------------------------------------
/benchmark/PaddleOCR_DBNet/models/backbone/__init__.py:
--------------------------------------------------------------------------------
 1 | # -*- coding: utf-8 -*-
 2 | # @Time    : 2019/8/23 21:54
 3 | # @Author  : zhoujun
 4 | 
 5 | from .resnet import *
 6 | 
 7 | __all__ = ["build_backbone"]
 8 | 
 9 | support_backbone = [
10 |     "resnet18",
11 |     "deformable_resnet18",
12 |     "deformable_resnet50",
13 |     "resnet50",
14 |     "resnet34",
15 |     "resnet101",
16 |     "resnet152",
17 | ]
18 | 
19 | 
20 | def build_backbone(backbone_name, **kwargs):
21 |     assert (
22 |         backbone_name in support_backbone
23 |     ), f"all support backbone is {support_backbone}"
24 |     backbone = eval(backbone_name)(**kwargs)
25 |     return backbone
26 | 


--------------------------------------------------------------------------------
/benchmark/PaddleOCR_DBNet/models/head/__init__.py:
--------------------------------------------------------------------------------
 1 | # -*- coding: utf-8 -*-
 2 | # @Time    : 2020/6/5 11:35
 3 | # @Author  : zhoujun
 4 | from .DBHead import DBHead
 5 | 
 6 | __all__ = ["build_head"]
 7 | support_head = ["DBHead"]
 8 | 
 9 | 
10 | def build_head(head_name, **kwargs):
11 |     assert head_name in support_head, f"all support head is {support_head}"
12 |     head = eval(head_name)(**kwargs)
13 |     return head
14 | 


--------------------------------------------------------------------------------
/benchmark/PaddleOCR_DBNet/models/losses/__init__.py:
--------------------------------------------------------------------------------
 1 | # -*- coding: utf-8 -*-
 2 | # @Time    : 2020/6/5 11:36
 3 | # @Author  : zhoujun
 4 | import copy
 5 | from .DB_loss import DBLoss
 6 | 
 7 | __all__ = ["build_loss"]
 8 | support_loss = ["DBLoss"]
 9 | 
10 | 
11 | def build_loss(config):
12 |     copy_config = copy.deepcopy(config)
13 |     loss_type = copy_config.pop("type")
14 |     assert loss_type in support_loss, f"all support loss is {support_loss}"
15 |     criterion = eval(loss_type)(**copy_config)
16 |     return criterion
17 | 


--------------------------------------------------------------------------------
/benchmark/PaddleOCR_DBNet/models/neck/__init__.py:
--------------------------------------------------------------------------------
 1 | # -*- coding: utf-8 -*-
 2 | # @Time    : 2020/6/5 11:34
 3 | # @Author  : zhoujun
 4 | from .FPN import FPN
 5 | 
 6 | __all__ = ["build_neck"]
 7 | support_neck = ["FPN"]
 8 | 
 9 | 
10 | def build_neck(neck_name, **kwargs):
11 |     assert neck_name in support_neck, f"all support neck is {support_neck}"
12 |     neck = eval(neck_name)(**kwargs)
13 |     return neck
14 | 


--------------------------------------------------------------------------------
/benchmark/PaddleOCR_DBNet/multi_gpu_train.sh:
--------------------------------------------------------------------------------
1 | # export NCCL_P2P_DISABLE=1
2 | CUDA_VISIBLE_DEVICES=0,1,2,3 python3 -m paddle.distributed.launch tools/train.py --config_file "config/icdar2015_resnet50_FPN_DBhead_polyLR.yaml"
3 | 


--------------------------------------------------------------------------------
/benchmark/PaddleOCR_DBNet/post_processing/__init__.py:
--------------------------------------------------------------------------------
 1 | # -*- coding: utf-8 -*-
 2 | # @Time    : 2019/12/5 15:17
 3 | # @Author  : zhoujun
 4 | 
 5 | from .seg_detector_representer import SegDetectorRepresenter
 6 | 
 7 | 
 8 | def get_post_processing(config):
 9 |     try:
10 |         cls = eval(config["type"])(**config["args"])
11 |         return cls
12 |     except:
13 |         return None
14 | 


--------------------------------------------------------------------------------
/benchmark/PaddleOCR_DBNet/predict.sh:
--------------------------------------------------------------------------------
1 | CUDA_VISIBLE_DEVICES=0 python tools/predict.py --model_path model_best.pth --input_folder ./input --output_folder ./output --thre 0.7 --polygon --show --save_result
2 | 


--------------------------------------------------------------------------------
/benchmark/PaddleOCR_DBNet/requirement.txt:
--------------------------------------------------------------------------------
 1 | anyconfig
 2 | future
 3 | imgaug
 4 | matplotlib
 5 | numpy
 6 | opencv-python
 7 | Polygon3
 8 | pyclipper
 9 | PyYAML
10 | scikit-image
11 | Shapely
12 | tqdm
13 | addict
14 | visualdl
15 | 


--------------------------------------------------------------------------------
/benchmark/PaddleOCR_DBNet/single_gpu_train.sh:
--------------------------------------------------------------------------------
1 | CUDA_VISIBLE_DEVICES=0 python3 tools/train.py --config_file "config/icdar2015_resnet50_FPN_DBhead_polyLR.yaml" 
2 | 


--------------------------------------------------------------------------------
/benchmark/PaddleOCR_DBNet/test/README.MD:
--------------------------------------------------------------------------------
1 | Place the images that you want to detect here. You better named them as such:
2 | img_10.jpg
3 | img_11.jpg
4 | img_{img_id}.jpg
5 | 
6 | For predicting single images, you can change the `img_path` in the `/tools/predict.py` to your image number.
7 | 
8 | The result will be saved in the output_folder(default is test/output) you give in predict.sh
9 | 


--------------------------------------------------------------------------------
/benchmark/PaddleOCR_DBNet/tools/__init__.py:
--------------------------------------------------------------------------------
1 | # -*- coding: utf-8 -*-
2 | # @Time    : 2019/12/8 13:14
3 | # @Author  : zhoujun
4 | 


--------------------------------------------------------------------------------
/benchmark/PaddleOCR_DBNet/trainer/__init__.py:
--------------------------------------------------------------------------------
1 | # -*- coding: utf-8 -*-
2 | # @Time    : 2019/8/23 21:58
3 | # @Author  : zhoujun
4 | from .trainer import Trainer
5 | 


--------------------------------------------------------------------------------
/benchmark/PaddleOCR_DBNet/utils/__init__.py:
--------------------------------------------------------------------------------
1 | # -*- coding: utf-8 -*-
2 | # @Time    : 2019/8/23 21:58
3 | # @Author  : zhoujun
4 | from .util import *
5 | from .metrics import *
6 | from .schedulers import *
7 | from .cal_recall.script import cal_recall_precision_f1
8 | from .ocr_metric import get_metric
9 | 


--------------------------------------------------------------------------------
/benchmark/PaddleOCR_DBNet/utils/cal_recall/__init__.py:
--------------------------------------------------------------------------------
1 | # -*- coding: utf-8 -*-
2 | # @Time    : 1/16/19 6:40 AM
3 | # @Author  : zhoujun
4 | from .script import cal_recall_precision_f1
5 | 
6 | __all__ = ["cal_recall_precision_f1"]
7 | 


--------------------------------------------------------------------------------
/benchmark/PaddleOCR_DBNet/utils/ocr_metric/__init__.py:
--------------------------------------------------------------------------------
 1 | # -*- coding: utf-8 -*-
 2 | # @Time    : 2019/12/5 15:36
 3 | # @Author  : zhoujun
 4 | from .icdar2015 import QuadMetric
 5 | 
 6 | 
 7 | def get_metric(config):
 8 |     try:
 9 |         if "args" not in config:
10 |             args = {}
11 |         else:
12 |             args = config["args"]
13 |         if isinstance(args, dict):
14 |             cls = eval(config["type"])(**args)
15 |         else:
16 |             cls = eval(config["type"])(args)
17 |         return cls
18 |     except:
19 |         return None
20 | 


--------------------------------------------------------------------------------
/benchmark/PaddleOCR_DBNet/utils/ocr_metric/icdar2015/__init__.py:
--------------------------------------------------------------------------------
1 | # -*- coding: utf-8 -*-
2 | # @Time    : 2019/12/5 15:36
3 | # @Author  : zhoujun
4 | 
5 | from .quad_metric import QuadMetric
6 | 


--------------------------------------------------------------------------------
/benchmark/PaddleOCR_DBNet/utils/ocr_metric/icdar2015/detection/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/benchmark/PaddleOCR_DBNet/utils/ocr_metric/icdar2015/detection/__init__.py


--------------------------------------------------------------------------------
/configs/rec/PP-OCRv3/multi_language/.gitkeep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/configs/rec/PP-OCRv3/multi_language/.gitkeep


--------------------------------------------------------------------------------
/deploy/README_ch.md:
--------------------------------------------------------------------------------
1 | See [link](https://www.paddleocr.ai/main/version3.x/deployment/high_performance_inference.html) for details.
2 | 


--------------------------------------------------------------------------------
/deploy/android_demo/.gitignore:
--------------------------------------------------------------------------------
1 | *.iml
2 | .gradle
3 | /local.properties
4 | /.idea/*
5 | .DS_Store
6 | /build
7 | /captures
8 | .externalNativeBuild
9 | 


--------------------------------------------------------------------------------
/deploy/android_demo/app/.gitignore:
--------------------------------------------------------------------------------
1 | /build
2 | 


--------------------------------------------------------------------------------
/deploy/android_demo/app/src/main/assets/images/det_0.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/deploy/android_demo/app/src/main/assets/images/det_0.jpg


--------------------------------------------------------------------------------
/deploy/android_demo/app/src/main/assets/images/det_180.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/deploy/android_demo/app/src/main/assets/images/det_180.jpg


--------------------------------------------------------------------------------
/deploy/android_demo/app/src/main/assets/images/det_270.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/deploy/android_demo/app/src/main/assets/images/det_270.jpg


--------------------------------------------------------------------------------
/deploy/android_demo/app/src/main/assets/images/det_90.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/deploy/android_demo/app/src/main/assets/images/det_90.jpg


--------------------------------------------------------------------------------
/deploy/android_demo/app/src/main/assets/images/rec_0.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/deploy/android_demo/app/src/main/assets/images/rec_0.jpg


--------------------------------------------------------------------------------
/deploy/android_demo/app/src/main/assets/images/rec_0_180.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/deploy/android_demo/app/src/main/assets/images/rec_0_180.jpg


--------------------------------------------------------------------------------
/deploy/android_demo/app/src/main/assets/images/rec_1.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/deploy/android_demo/app/src/main/assets/images/rec_1.jpg


--------------------------------------------------------------------------------
/deploy/android_demo/app/src/main/assets/images/rec_1_180.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/deploy/android_demo/app/src/main/assets/images/rec_1_180.jpg


--------------------------------------------------------------------------------
/deploy/android_demo/app/src/main/cpp/ocr_crnn_process.h:
--------------------------------------------------------------------------------
 1 | //
 2 | // Created by fujiayi on 2020/7/3.
 3 | //
 4 | #pragma once
 5 | 
 6 | #include "common.h"
 7 | #include <opencv2/opencv.hpp>
 8 | #include <vector>
 9 | 
10 | extern const std::vector<int> REC_IMAGE_SHAPE;
11 | 
12 | cv::Mat get_rotate_crop_image(const cv::Mat &srcimage,
13 |                               const std::vector<std::vector<int>> &box);
14 | 
15 | cv::Mat crnn_resize_img(const cv::Mat &img, float wh_ratio);
16 | 
17 | template <class ForwardIterator>
18 | inline size_t argmax(ForwardIterator first, ForwardIterator last) {
19 |   return std::distance(first, std::max_element(first, last));
20 | }
21 | 


--------------------------------------------------------------------------------
/deploy/android_demo/app/src/main/cpp/ocr_db_post_process.h:
--------------------------------------------------------------------------------
 1 | //
 2 | // Created by fujiayi on 2020/7/2.
 3 | //
 4 | #pragma once
 5 | #include <opencv2/opencv.hpp>
 6 | #include <vector>
 7 | 
 8 | std::vector<std::vector<std::vector<int>>>
 9 | boxes_from_bitmap(const cv::Mat &pred, const cv::Mat &bitmap);
10 | 
11 | std::vector<std::vector<std::vector<int>>>
12 | filter_tag_det_res(const std::vector<std::vector<std::vector<int>>> &o_boxes,
13 |                    float ratio_h, float ratio_w, const cv::Mat &srcimg);
14 | 


--------------------------------------------------------------------------------
/deploy/android_demo/app/src/main/cpp/preprocess.h:
--------------------------------------------------------------------------------
 1 | #pragma once
 2 | 
 3 | #include "common.h"
 4 | #include <jni.h>
 5 | #include <opencv2/opencv.hpp>
 6 | cv::Mat bitmap_to_cv_mat(JNIEnv *env, jobject bitmap);
 7 | 
 8 | cv::Mat resize_img(const cv::Mat &img, int height, int width);
 9 | 
10 | void neon_mean_scale(const float *din, float *dout, int size,
11 |                      const std::vector<float> &mean,
12 |                      const std::vector<float> &scale);
13 | 


--------------------------------------------------------------------------------
/deploy/android_demo/app/src/main/res/menu/menu_action_options.xml:
--------------------------------------------------------------------------------
 1 | <menu xmlns:android="http://schemas.android.com/apk/res/android"
 2 |       xmlns:app="http://schemas.android.com/apk/res-auto">
 3 | 
 4 |     <group>
 5 |         <item
 6 |                 android:id="@+id/settings"
 7 |                 android:title="Settings..."
 8 |                 app:showAsAction="withText"/>
 9 |     </group>
10 | </menu>
11 | 


--------------------------------------------------------------------------------
/deploy/android_demo/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml:
--------------------------------------------------------------------------------
1 | <?xml version="1.0" encoding="utf-8"?>
2 | <adaptive-icon xmlns:android="http://schemas.android.com/apk/res/android">
3 |     <background android:drawable="@drawable/ic_launcher_background" />
4 |     <foreground android:drawable="@drawable/ic_launcher_foreground" />
5 | </adaptive-icon>
6 | 


--------------------------------------------------------------------------------
/deploy/android_demo/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml:
--------------------------------------------------------------------------------
1 | <?xml version="1.0" encoding="utf-8"?>
2 | <adaptive-icon xmlns:android="http://schemas.android.com/apk/res/android">
3 |     <background android:drawable="@drawable/ic_launcher_background" />
4 |     <foreground android:drawable="@drawable/ic_launcher_foreground" />
5 | </adaptive-icon>
6 | 


--------------------------------------------------------------------------------
/deploy/android_demo/app/src/main/res/mipmap-hdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/deploy/android_demo/app/src/main/res/mipmap-hdpi/ic_launcher.png


--------------------------------------------------------------------------------
/deploy/android_demo/app/src/main/res/mipmap-hdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/deploy/android_demo/app/src/main/res/mipmap-hdpi/ic_launcher_round.png


--------------------------------------------------------------------------------
/deploy/android_demo/app/src/main/res/mipmap-mdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/deploy/android_demo/app/src/main/res/mipmap-mdpi/ic_launcher.png


--------------------------------------------------------------------------------
/deploy/android_demo/app/src/main/res/mipmap-mdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/deploy/android_demo/app/src/main/res/mipmap-mdpi/ic_launcher_round.png


--------------------------------------------------------------------------------
/deploy/android_demo/app/src/main/res/mipmap-xhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/deploy/android_demo/app/src/main/res/mipmap-xhdpi/ic_launcher.png


--------------------------------------------------------------------------------
/deploy/android_demo/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/deploy/android_demo/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png


--------------------------------------------------------------------------------
/deploy/android_demo/app/src/main/res/mipmap-xxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/deploy/android_demo/app/src/main/res/mipmap-xxhdpi/ic_launcher.png


--------------------------------------------------------------------------------
/deploy/android_demo/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/deploy/android_demo/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png


--------------------------------------------------------------------------------
/deploy/android_demo/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/deploy/android_demo/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png


--------------------------------------------------------------------------------
/deploy/android_demo/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/deploy/android_demo/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png


--------------------------------------------------------------------------------
/deploy/android_demo/app/src/main/res/values/colors.xml:
--------------------------------------------------------------------------------
1 | <?xml version="1.0" encoding="utf-8"?>
2 | <resources>
3 |     <color name="colorPrimary">#008577</color>
4 |     <color name="colorPrimaryDark">#00574B</color>
5 |     <color name="colorAccent">#D81B60</color>
6 | </resources>
7 | 


--------------------------------------------------------------------------------
/deploy/android_demo/app/src/main/res/xml/file_paths.xml:
--------------------------------------------------------------------------------
1 | <?xml version="1.0" encoding="utf-8"?>
2 | <paths xmlns:android="http://schemas.android.com/apk/res/android">
3 |     <external-files-path name="my_images" path="Pictures" />
4 | </paths>
5 | 


--------------------------------------------------------------------------------
/deploy/android_demo/app/src/test/java/com/baidu/paddle/lite/demo/ocr/ExampleUnitTest.java:
--------------------------------------------------------------------------------
 1 | package com.baidu.paddle.lite.demo.ocr;
 2 | 
 3 | import org.junit.Test;
 4 | 
 5 | import static org.junit.Assert.*;
 6 | 
 7 | /**
 8 |  * Example local unit test, which will execute on the development machine (host).
 9 |  *
10 |  * @see <a href="http://d.android.com/tools/testing">Testing documentation</a>
11 |  */
12 | public class ExampleUnitTest {
13 |     @Test
14 |     public void addition_isCorrect() {
15 |         assertEquals(4, 2 + 2);
16 |     }
17 | }
18 | 


--------------------------------------------------------------------------------
/deploy/android_demo/build.gradle:
--------------------------------------------------------------------------------
 1 | // Top-level build file where you can add configuration options common to all sub-projects/modules.
 2 | 
 3 | buildscript {
 4 |     repositories {
 5 |         google()
 6 |         jcenter()
 7 |         
 8 |     }
 9 |     dependencies {
10 |         classpath 'com.android.tools.build:gradle:4.1.2'
11 |         
12 |         // NOTE: Do not place your application dependencies here; they belong
13 |         // in the individual module build.gradle files
14 |     }
15 | }
16 | 
17 | allprojects {
18 |     repositories {
19 |         google()
20 |         jcenter()
21 |         
22 |     }
23 | }
24 | 
25 | task clean(type: Delete) {
26 |     delete rootProject.buildDir
27 | }
28 | 


--------------------------------------------------------------------------------
/deploy/android_demo/gradle/wrapper/gradle-wrapper.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/deploy/android_demo/gradle/wrapper/gradle-wrapper.jar


--------------------------------------------------------------------------------
/deploy/android_demo/gradle/wrapper/gradle-wrapper.properties:
--------------------------------------------------------------------------------
1 | #Thu Feb 04 20:28:08 CST 2021
2 | distributionBase=GRADLE_USER_HOME
3 | distributionPath=wrapper/dists
4 | zipStoreBase=GRADLE_USER_HOME
5 | zipStorePath=wrapper/dists
6 | distributionUrl=https\://services.gradle.org/distributions/gradle-6.5-bin.zip
7 | 


--------------------------------------------------------------------------------
/deploy/android_demo/settings.gradle:
--------------------------------------------------------------------------------
1 | include ':app'
2 | 


--------------------------------------------------------------------------------
/deploy/avh/.gitignore:
--------------------------------------------------------------------------------
1 | include/inputs.h
2 | include/outputs.h
3 | 
4 | __pycache__/
5 | build/
6 | 


--------------------------------------------------------------------------------
/deploy/avh/imgs_words_en/word_10.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/deploy/avh/imgs_words_en/word_10.png


--------------------------------------------------------------------------------
/deploy/avh/imgs_words_en/word_116.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/deploy/avh/imgs_words_en/word_116.png


--------------------------------------------------------------------------------
/deploy/avh/requirements.txt:
--------------------------------------------------------------------------------
1 | paddlepaddle
2 | numpy
3 | opencv-python
4 | typing-extensions
5 | 


--------------------------------------------------------------------------------
/deploy/cpp_infer/src/configs/doc_preprocessor.yaml:
--------------------------------------------------------------------------------
 1 | 
 2 | pipeline_name: doc_preprocessor
 3 | 
 4 | use_doc_orientation_classify: True
 5 | use_doc_unwarping: True
 6 | batch_size: 1
 7 | SubModules:
 8 |   DocOrientationClassify:
 9 |     module_name: doc_text_orientation
10 |     model_name: PP-LCNet_x1_0_doc_ori
11 |     model_dir: null
12 |   DocUnwarping:
13 |     module_name: image_unwarping
14 |     model_name: UVDoc
15 |     model_dir: null
16 | 


--------------------------------------------------------------------------------
/deploy/cpp_infer/tools/build.sh:
--------------------------------------------------------------------------------
 1 | OPENCV_DIR=your_opencv_dir
 2 | LIB_DIR=your_paddle_lib_dir
 3 | CUDA_LIB_DIR=your_cuda_lib_dir
 4 | CUDNN_LIB_DIR=your_cudnn_lib_dir
 5 | 
 6 | BUILD_DIR=build
 7 | rm -rf ${BUILD_DIR}
 8 | mkdir ${BUILD_DIR}
 9 | cd ${BUILD_DIR}
10 | 
11 | cmake .. \
12 |     -DPADDLE_LIB=${LIB_DIR} \
13 |     -DWITH_MKL=ON \
14 |     -DWITH_GPU=OFF \
15 |     -DWITH_STATIC_LIB=OFF \
16 |     -DWITH_TENSORRT=OFF \
17 |     -DOPENCV_DIR=${OPENCV_DIR} \
18 |     -DCUDNN_LIB=${CUDNN_LIB_DIR} \
19 |     -DCUDA_LIB=${CUDA_LIB_DIR} \
20 |     -DUSE_FREETYPE=OFF
21 | 
22 | make -j
23 | 


--------------------------------------------------------------------------------
/deploy/hubserving/kie_ser/__init__.py:
--------------------------------------------------------------------------------
 1 | # Copyright (c) 2022 PaddlePaddle Authors. All Rights Reserved.
 2 | #
 3 | # Licensed under the Apache License, Version 2.0 (the "License");
 4 | # you may not use this file except in compliance with the License.
 5 | # You may obtain a copy of the License at
 6 | #
 7 | #     http://www.apache.org/licenses/LICENSE-2.0
 8 | #
 9 | # Unless required by applicable law or agreed to in writing, software
10 | # distributed under the License is distributed on an "AS IS" BASIS,
11 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 | # See the License for the specific language governing permissions and
13 | # limitations under the License.
14 | 


--------------------------------------------------------------------------------
/deploy/hubserving/kie_ser/config.json:
--------------------------------------------------------------------------------
 1 | {
 2 |     "modules_info": {
 3 |         "kie_ser": {
 4 |             "init_args": {
 5 |                 "version": "1.0.0",
 6 |                 "use_gpu": true
 7 |             },
 8 |             "predict_args": {
 9 |             }
10 |         }
11 |     },
12 |     "port": 8871,
13 |     "use_multiprocess": false,
14 |     "workers": 2
15 | }
16 | 


--------------------------------------------------------------------------------
/deploy/hubserving/kie_ser_re/__init__.py:
--------------------------------------------------------------------------------
 1 | # Copyright (c) 2022 PaddlePaddle Authors. All Rights Reserved.
 2 | #
 3 | # Licensed under the Apache License, Version 2.0 (the "License");
 4 | # you may not use this file except in compliance with the License.
 5 | # You may obtain a copy of the License at
 6 | #
 7 | #     http://www.apache.org/licenses/LICENSE-2.0
 8 | #
 9 | # Unless required by applicable law or agreed to in writing, software
10 | # distributed under the License is distributed on an "AS IS" BASIS,
11 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 | # See the License for the specific language governing permissions and
13 | # limitations under the License.
14 | 


--------------------------------------------------------------------------------
/deploy/hubserving/kie_ser_re/config.json:
--------------------------------------------------------------------------------
 1 | {
 2 |     "modules_info": {
 3 |         "kie_ser_re": {
 4 |             "init_args": {
 5 |                 "version": "1.0.0",
 6 |                 "use_gpu": true
 7 |             },
 8 |             "predict_args": {
 9 |             }
10 |         }
11 |     },
12 |     "port": 8872,
13 |     "use_multiprocess": false,
14 |     "workers": 2
15 | }
16 | 


--------------------------------------------------------------------------------
/deploy/hubserving/ocr_cls/__init__.py:
--------------------------------------------------------------------------------
 1 | # Copyright (c) 2022 PaddlePaddle Authors. All Rights Reserved.
 2 | #
 3 | # Licensed under the Apache License, Version 2.0 (the "License");
 4 | # you may not use this file except in compliance with the License.
 5 | # You may obtain a copy of the License at
 6 | #
 7 | #     http://www.apache.org/licenses/LICENSE-2.0
 8 | #
 9 | # Unless required by applicable law or agreed to in writing, software
10 | # distributed under the License is distributed on an "AS IS" BASIS,
11 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 | # See the License for the specific language governing permissions and
13 | # limitations under the License.
14 | 


--------------------------------------------------------------------------------
/deploy/hubserving/ocr_cls/config.json:
--------------------------------------------------------------------------------
 1 | {
 2 |     "modules_info": {
 3 |         "ocr_cls": {
 4 |             "init_args": {
 5 |                 "version": "1.0.0",
 6 |                 "use_gpu": true
 7 |             },
 8 |             "predict_args": {
 9 |             }
10 |         }
11 |     },
12 |     "port": 8866,
13 |     "use_multiprocess": false,
14 |     "workers": 2
15 | }
16 | 


--------------------------------------------------------------------------------
/deploy/hubserving/ocr_det/__init__.py:
--------------------------------------------------------------------------------
 1 | # Copyright (c) 2022 PaddlePaddle Authors. All Rights Reserved.
 2 | #
 3 | # Licensed under the Apache License, Version 2.0 (the "License");
 4 | # you may not use this file except in compliance with the License.
 5 | # You may obtain a copy of the License at
 6 | #
 7 | #     http://www.apache.org/licenses/LICENSE-2.0
 8 | #
 9 | # Unless required by applicable law or agreed to in writing, software
10 | # distributed under the License is distributed on an "AS IS" BASIS,
11 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 | # See the License for the specific language governing permissions and
13 | # limitations under the License.
14 | 


--------------------------------------------------------------------------------
/deploy/hubserving/ocr_det/config.json:
--------------------------------------------------------------------------------
 1 | {
 2 |     "modules_info": {
 3 |         "ocr_det": {
 4 |             "init_args": {
 5 |                 "version": "1.0.0",
 6 |                 "use_gpu": true
 7 |             },
 8 |             "predict_args": {
 9 |             }
10 |         }
11 |     },
12 |     "port": 8865,
13 |     "use_multiprocess": false,
14 |     "workers": 2    
15 | }
16 | 


--------------------------------------------------------------------------------
/deploy/hubserving/ocr_rec/__init__.py:
--------------------------------------------------------------------------------
 1 | # Copyright (c) 2022 PaddlePaddle Authors. All Rights Reserved.
 2 | #
 3 | # Licensed under the Apache License, Version 2.0 (the "License");
 4 | # you may not use this file except in compliance with the License.
 5 | # You may obtain a copy of the License at
 6 | #
 7 | #     http://www.apache.org/licenses/LICENSE-2.0
 8 | #
 9 | # Unless required by applicable law or agreed to in writing, software
10 | # distributed under the License is distributed on an "AS IS" BASIS,
11 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 | # See the License for the specific language governing permissions and
13 | # limitations under the License.
14 | 


--------------------------------------------------------------------------------
/deploy/hubserving/ocr_rec/config.json:
--------------------------------------------------------------------------------
 1 | {
 2 |     "modules_info": {
 3 |         "ocr_rec": {
 4 |             "init_args": {
 5 |                 "version": "1.0.0",
 6 |                 "use_gpu": true
 7 |             },
 8 |             "predict_args": {
 9 |             }
10 |         }
11 |     },
12 |     "port": 8867,
13 |     "use_multiprocess": false,
14 |     "workers": 2
15 | }
16 | 


--------------------------------------------------------------------------------
/deploy/hubserving/ocr_system/__init__.py:
--------------------------------------------------------------------------------
 1 | # Copyright (c) 2022 PaddlePaddle Authors. All Rights Reserved.
 2 | #
 3 | # Licensed under the Apache License, Version 2.0 (the "License");
 4 | # you may not use this file except in compliance with the License.
 5 | # You may obtain a copy of the License at
 6 | #
 7 | #     http://www.apache.org/licenses/LICENSE-2.0
 8 | #
 9 | # Unless required by applicable law or agreed to in writing, software
10 | # distributed under the License is distributed on an "AS IS" BASIS,
11 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 | # See the License for the specific language governing permissions and
13 | # limitations under the License.
14 | 


--------------------------------------------------------------------------------
/deploy/hubserving/ocr_system/config.json:
--------------------------------------------------------------------------------
 1 | {
 2 |     "modules_info": {
 3 |         "ocr_system": {
 4 |             "init_args": {
 5 |                 "version": "1.0.0",
 6 |                 "use_gpu": true
 7 |             },
 8 |             "predict_args": {
 9 |             }
10 |         }
11 |     },
12 |     "port": 8868,
13 |     "use_multiprocess": false,
14 |     "workers": 2
15 | }
16 | 


--------------------------------------------------------------------------------
/deploy/hubserving/structure_layout/__init__.py:
--------------------------------------------------------------------------------
 1 | # Copyright (c) 2022 PaddlePaddle Authors. All Rights Reserved.
 2 | #
 3 | # Licensed under the Apache License, Version 2.0 (the "License");
 4 | # you may not use this file except in compliance with the License.
 5 | # You may obtain a copy of the License at
 6 | #
 7 | #     http://www.apache.org/licenses/LICENSE-2.0
 8 | #
 9 | # Unless required by applicable law or agreed to in writing, software
10 | # distributed under the License is distributed on an "AS IS" BASIS,
11 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 | # See the License for the specific language governing permissions and
13 | # limitations under the License.
14 | 


--------------------------------------------------------------------------------
/deploy/hubserving/structure_layout/config.json:
--------------------------------------------------------------------------------
 1 | {
 2 |     "modules_info": {
 3 |         "structure_layout": {
 4 |             "init_args": {
 5 |                 "version": "1.0.0",
 6 |                 "use_gpu": true
 7 |             },
 8 |             "predict_args": {
 9 |             }
10 |         }
11 |     },
12 |     "port": 8871,
13 |     "use_multiprocess": false,
14 |     "workers": 2
15 | }
16 | 


--------------------------------------------------------------------------------
/deploy/hubserving/structure_system/__init__.py:
--------------------------------------------------------------------------------
 1 | # Copyright (c) 2022 PaddlePaddle Authors. All Rights Reserved.
 2 | #
 3 | # Licensed under the Apache License, Version 2.0 (the "License");
 4 | # you may not use this file except in compliance with the License.
 5 | # You may obtain a copy of the License at
 6 | #
 7 | #     http://www.apache.org/licenses/LICENSE-2.0
 8 | #
 9 | # Unless required by applicable law or agreed to in writing, software
10 | # distributed under the License is distributed on an "AS IS" BASIS,
11 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 | # See the License for the specific language governing permissions and
13 | # limitations under the License.
14 | 


--------------------------------------------------------------------------------
/deploy/hubserving/structure_system/config.json:
--------------------------------------------------------------------------------
 1 | {
 2 |     "modules_info": {
 3 |         "structure_system": {
 4 |             "init_args": {
 5 |                 "version": "1.0.0",
 6 |                 "use_gpu": true
 7 |             },
 8 |             "predict_args": {
 9 |             }
10 |         }
11 |     },
12 |     "port": 8870,
13 |     "use_multiprocess": false,
14 |     "workers": 2
15 | }
16 | 


--------------------------------------------------------------------------------
/deploy/hubserving/structure_table/__init__.py:
--------------------------------------------------------------------------------
 1 | # Copyright (c) 2022 PaddlePaddle Authors. All Rights Reserved.
 2 | #
 3 | # Licensed under the Apache License, Version 2.0 (the "License");
 4 | # you may not use this file except in compliance with the License.
 5 | # You may obtain a copy of the License at
 6 | #
 7 | #     http://www.apache.org/licenses/LICENSE-2.0
 8 | #
 9 | # Unless required by applicable law or agreed to in writing, software
10 | # distributed under the License is distributed on an "AS IS" BASIS,
11 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 | # See the License for the specific language governing permissions and
13 | # limitations under the License.
14 | 


--------------------------------------------------------------------------------
/deploy/hubserving/structure_table/config.json:
--------------------------------------------------------------------------------
 1 | {
 2 |     "modules_info": {
 3 |         "structure_table": {
 4 |             "init_args": {
 5 |                 "version": "1.0.0",
 6 |                 "use_gpu": true
 7 |             },
 8 |             "predict_args": {
 9 |             }
10 |         }
11 |     },
12 |     "port": 8869,
13 |     "use_multiprocess": false,
14 |     "workers": 2
15 | }
16 | 


--------------------------------------------------------------------------------
/deploy/ios_demo/README.md:
--------------------------------------------------------------------------------
1 | # ios Demo
2 | 
3 | 参考 https://github.com/PaddlePaddle/Paddle-Lite-Demo/blob/develop/ocr/ios/ppocr_demo/ppocr_demo/README.md
4 | 


--------------------------------------------------------------------------------
/deploy/lite/config.txt:
--------------------------------------------------------------------------------
1 | max_side_len  960
2 | det_db_thresh  0.3
3 | det_db_box_thresh  0.5
4 | det_db_unclip_ratio  1.6
5 | det_db_use_dilate 0
6 | det_use_polygon_score 1
7 | use_direction_classify  1
8 | rec_image_height  48
9 | 


--------------------------------------------------------------------------------
/deploy/lite/imgs/lite_demo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/deploy/lite/imgs/lite_demo.png


--------------------------------------------------------------------------------
/deploy/lite/prepare.sh:
--------------------------------------------------------------------------------
 1 | #!/bin/bash
 2 | 
 3 | mkdir -p  $1/demo/cxx/ocr/debug/
 4 | cp  ../../ppocr/utils/ppocr_keys_v1.txt  $1/demo/cxx/ocr/debug/
 5 | cp -r  ./*   $1/demo/cxx/ocr/
 6 | cp ./config.txt  $1/demo/cxx/ocr/debug/
 7 | cp ../../doc/imgs/11.jpg  $1/demo/cxx/ocr/debug/
 8 | 
 9 | echo "Prepare Done"
10 | 


--------------------------------------------------------------------------------
/deploy/paddle2onnx/images/lite_demo_onnx.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/deploy/paddle2onnx/images/lite_demo_onnx.png


--------------------------------------------------------------------------------
/deploy/paddle2onnx/images/lite_demo_paddle.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/deploy/paddle2onnx/images/lite_demo_paddle.png


--------------------------------------------------------------------------------
/deploy/paddlecloud/images/architecture.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/deploy/paddlecloud/images/architecture.jpeg


--------------------------------------------------------------------------------
/deploy/paddlecloud/images/paddlecloud.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/deploy/paddlecloud/images/paddlecloud.png


--------------------------------------------------------------------------------
/doc/fonts/arabic.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/doc/fonts/arabic.ttf


--------------------------------------------------------------------------------
/doc/fonts/chinese_cht.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/doc/fonts/chinese_cht.ttf


--------------------------------------------------------------------------------
/doc/fonts/cyrillic.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/doc/fonts/cyrillic.ttf


--------------------------------------------------------------------------------
/doc/fonts/french.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/doc/fonts/french.ttf


--------------------------------------------------------------------------------
/doc/fonts/german.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/doc/fonts/german.ttf


--------------------------------------------------------------------------------
/doc/fonts/hindi.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/doc/fonts/hindi.ttf


--------------------------------------------------------------------------------
/doc/fonts/japan.ttc:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/doc/fonts/japan.ttc


--------------------------------------------------------------------------------
/doc/fonts/kannada.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/doc/fonts/kannada.ttf


--------------------------------------------------------------------------------
/doc/fonts/korean.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/doc/fonts/korean.ttf


--------------------------------------------------------------------------------
/doc/fonts/latin.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/doc/fonts/latin.ttf


--------------------------------------------------------------------------------
/doc/fonts/marathi.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/doc/fonts/marathi.ttf


--------------------------------------------------------------------------------
/doc/fonts/nepali.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/doc/fonts/nepali.ttf


--------------------------------------------------------------------------------
/doc/fonts/persian.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/doc/fonts/persian.ttf


--------------------------------------------------------------------------------
/doc/fonts/simfang.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/doc/fonts/simfang.ttf


--------------------------------------------------------------------------------
/doc/fonts/spanish.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/doc/fonts/spanish.ttf


--------------------------------------------------------------------------------
/doc/fonts/tamil.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/doc/fonts/tamil.ttf


--------------------------------------------------------------------------------
/doc/fonts/telugu.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/doc/fonts/telugu.ttf


--------------------------------------------------------------------------------
/doc/fonts/urdu.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/doc/fonts/urdu.ttf


--------------------------------------------------------------------------------
/doc/fonts/uyghur.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/doc/fonts/uyghur.ttf


--------------------------------------------------------------------------------
/docs/community/images/banner.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/community/images/banner.png


--------------------------------------------------------------------------------
/docs/community/images/pr.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/community/images/pr.png


--------------------------------------------------------------------------------
/docs/community/images/precommit_pass.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/community/images/precommit_pass.png


--------------------------------------------------------------------------------
/docs/data_anno_synth/data_synthesis.md:
--------------------------------------------------------------------------------
 1 | ---
 2 | comments: true
 3 | ---
 4 | 
 5 | # 数据合成工具
 6 | 
 7 | 除了开源数据,用户还可使用合成工具自行合成。这里整理了常用的数据合成工具,持续更新中,欢迎各位小伙伴贡献工具~
 8 | 
 9 | - [text_renderer (old version)](https://github.com/Sanster/text_renderer)
10 | - [text_renderer (new version)](https://github.com/oh-my-ocr/text_renderer)
11 | - [SynthText](https://github.com/ankush-me/SynthText)
12 | - [SynthText_Chinese_version](https://github.com/Snowty/SynthText_Chinese)
13 | - [TextRecognitionDataGenerator](https://github.com/Belval/TextRecognitionDataGenerator)
14 | - [SynthText3D](https://github.com/MhLiao/SynthText3D)
15 | - [UnrealText](https://github.com/Jyouhou/UnrealText/)
16 | - [SynthTIGER](https://github.com/clovaai/synthtiger)
17 | 


--------------------------------------------------------------------------------
/docs/data_anno_synth/images/VoTT.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/data_anno_synth/images/VoTT.jpg


--------------------------------------------------------------------------------
/docs/data_anno_synth/images/labelimg.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/data_anno_synth/images/labelimg.jpg


--------------------------------------------------------------------------------
/docs/data_anno_synth/images/labelme.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/data_anno_synth/images/labelme.jpg


--------------------------------------------------------------------------------
/docs/data_anno_synth/images/roLabelImg.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/data_anno_synth/images/roLabelImg.png


--------------------------------------------------------------------------------
/docs/data_anno_synth/overview.en.md:
--------------------------------------------------------------------------------
1 | ---
2 | comments: true
3 | ---
4 | 
5 | - Semi-automatic Annotation Tool: PPOCRLabel: <https://github.com/PFCCLab/PPOCRLabel/blob/main/README_ch.md>
6 | - Data Synthesis Tool: Style-Text: <https://github.com/PFCCLab/StyleText/blob/main/README_ch.md>
7 | 


--------------------------------------------------------------------------------
/docs/data_anno_synth/overview.md:
--------------------------------------------------------------------------------
1 | ---
2 | comments: true
3 | ---
4 | 
5 | 
6 | - 半自动标注工具 PPOCRLabel: <https://github.com/PFCCLab/PPOCRLabel/blob/main/README_ch.md>
7 | - 数据合成工具 Style-Text: <https://github.com/PFCCLab/StyleText/blob/main/README_ch.md>
8 | 


--------------------------------------------------------------------------------
/docs/datasets/images/20210816_210413.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/datasets/images/20210816_210413.gif


--------------------------------------------------------------------------------
/docs/datasets/images/ArT.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/datasets/images/ArT.jpg


--------------------------------------------------------------------------------
/docs/datasets/images/CASIA_0.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/datasets/images/CASIA_0.jpg


--------------------------------------------------------------------------------
/docs/datasets/images/CDLA_demo/val_0633.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/datasets/images/CDLA_demo/val_0633.jpg


--------------------------------------------------------------------------------
/docs/datasets/images/CDLA_demo/val_0941.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/datasets/images/CDLA_demo/val_0941.jpg


--------------------------------------------------------------------------------
/docs/datasets/images/LSVT_1.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/datasets/images/LSVT_1.jpg


--------------------------------------------------------------------------------
/docs/datasets/images/LSVT_2.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/datasets/images/LSVT_2.jpg


--------------------------------------------------------------------------------
/docs/datasets/images/captcha_demo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/datasets/images/captcha_demo.png


--------------------------------------------------------------------------------
/docs/datasets/images/ccpd_demo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/datasets/images/ccpd_demo.png


--------------------------------------------------------------------------------
/docs/datasets/images/ch_doc1.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/datasets/images/ch_doc1.jpg


--------------------------------------------------------------------------------
/docs/datasets/images/ch_doc3.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/datasets/images/ch_doc3.jpg


--------------------------------------------------------------------------------
/docs/datasets/images/ch_street_rec_1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/datasets/images/ch_street_rec_1.png


--------------------------------------------------------------------------------
/docs/datasets/images/ch_street_rec_2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/datasets/images/ch_street_rec_2.png


--------------------------------------------------------------------------------
/docs/datasets/images/cmb_demo.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/datasets/images/cmb_demo.jpg


--------------------------------------------------------------------------------
/docs/datasets/images/crohme_demo/hme_00.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/datasets/images/crohme_demo/hme_00.jpg


--------------------------------------------------------------------------------
/docs/datasets/images/crohme_demo/hme_01.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/datasets/images/crohme_demo/hme_01.jpg


--------------------------------------------------------------------------------
/docs/datasets/images/crohme_demo/hme_02.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/datasets/images/crohme_demo/hme_02.jpg


--------------------------------------------------------------------------------
/docs/datasets/images/funsd_demo/gt_train_00040534.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/datasets/images/funsd_demo/gt_train_00040534.jpg


--------------------------------------------------------------------------------
/docs/datasets/images/funsd_demo/gt_train_00070353.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/datasets/images/funsd_demo/gt_train_00070353.jpg


--------------------------------------------------------------------------------
/docs/datasets/images/ic15_location_download.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/datasets/images/ic15_location_download.png


--------------------------------------------------------------------------------
/docs/datasets/images/icdar_rec.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/datasets/images/icdar_rec.png


--------------------------------------------------------------------------------
/docs/datasets/images/nist_demo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/datasets/images/nist_demo.png


--------------------------------------------------------------------------------
/docs/datasets/images/pme_demo/0000013.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/datasets/images/pme_demo/0000013.png


--------------------------------------------------------------------------------
/docs/datasets/images/pme_demo/0000099.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/datasets/images/pme_demo/0000099.png


--------------------------------------------------------------------------------
/docs/datasets/images/pme_demo/0000295.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/datasets/images/pme_demo/0000295.png


--------------------------------------------------------------------------------
/docs/datasets/images/pme_demo/0000562.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/datasets/images/pme_demo/0000562.png


--------------------------------------------------------------------------------
/docs/datasets/images/publaynet_demo/gt_PMC3724501_00006.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/datasets/images/publaynet_demo/gt_PMC3724501_00006.jpg


--------------------------------------------------------------------------------
/docs/datasets/images/publaynet_demo/gt_PMC5086060_00002.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/datasets/images/publaynet_demo/gt_PMC5086060_00002.jpg


--------------------------------------------------------------------------------
/docs/datasets/images/rctw.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/datasets/images/rctw.jpg


--------------------------------------------------------------------------------
/docs/datasets/images/table_PubTabNet_demo/PMC524509_007_00.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/datasets/images/table_PubTabNet_demo/PMC524509_007_00.png


--------------------------------------------------------------------------------
/docs/datasets/images/table_PubTabNet_demo/PMC535543_007_01.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/datasets/images/table_PubTabNet_demo/PMC535543_007_01.png


--------------------------------------------------------------------------------
/docs/datasets/images/table_tal_demo/1.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/datasets/images/table_tal_demo/1.jpg


--------------------------------------------------------------------------------
/docs/datasets/images/table_tal_demo/2.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/datasets/images/table_tal_demo/2.jpg


--------------------------------------------------------------------------------
/docs/datasets/images/tablebank_demo/004.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/datasets/images/tablebank_demo/004.png


--------------------------------------------------------------------------------
/docs/datasets/images/tablebank_demo/005.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/datasets/images/tablebank_demo/005.png


--------------------------------------------------------------------------------
/docs/datasets/images/wildreceipt_demo/1bbe854b8817dedb8585e0732089fd1f752d2cec.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/datasets/images/wildreceipt_demo/1bbe854b8817dedb8585e0732089fd1f752d2cec.jpeg


--------------------------------------------------------------------------------
/docs/datasets/images/wildreceipt_demo/2769.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/datasets/images/wildreceipt_demo/2769.jpeg


--------------------------------------------------------------------------------
/docs/datasets/images/xfund_demo/gt_zh_train_0.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/datasets/images/xfund_demo/gt_zh_train_0.jpg


--------------------------------------------------------------------------------
/docs/datasets/images/xfund_demo/gt_zh_train_1.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/datasets/images/xfund_demo/gt_zh_train_1.jpg


--------------------------------------------------------------------------------
/docs/images/00006737.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/images/00006737.jpg


--------------------------------------------------------------------------------
/docs/images/185310636-6ce02f7c-790d-479f-b163-ea97a5a04808-20240708082238739.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/images/185310636-6ce02f7c-790d-479f-b163-ea97a5a04808-20240708082238739.jpg


--------------------------------------------------------------------------------
/docs/images/185393805-c67ff571-cf7e-4217-a4b0-8b396c4f22bb-20240708082310650.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/images/185393805-c67ff571-cf7e-4217-a4b0-8b396c4f22bb-20240708082310650.jpg


--------------------------------------------------------------------------------
/docs/images/185539517-ccf2372a-f026-4a7c-ad28-c741c770f60a-20240708082247529.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/images/185539517-ccf2372a-f026-4a7c-ad28-c741c770f60a-20240708082247529.png


--------------------------------------------------------------------------------
/docs/images/185540080-0431e006-9235-4b6d-b63d-0b3c6e1de48f-20240708082316558.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/images/185540080-0431e006-9235-4b6d-b63d-0b3c6e1de48f-20240708082316558.jpg


--------------------------------------------------------------------------------
/docs/images/186094813-3a8e16cc-42e5-4982-b9f4-0134dfb5688d-20240708082323916.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/images/186094813-3a8e16cc-42e5-4982-b9f4-0134dfb5688d-20240708082323916.png


--------------------------------------------------------------------------------
/docs/images/197464552-69de557f-edff-4c7f-acbf-069df1ba097f-20240708082253634.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/images/197464552-69de557f-edff-4c7f-acbf-069df1ba097f-20240708082253634.png


--------------------------------------------------------------------------------
/docs/images/Banner.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/images/Banner.png


--------------------------------------------------------------------------------
/docs/images/Banner_cn.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/images/Banner_cn.png


--------------------------------------------------------------------------------
/docs/images/Banner_ja.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/images/Banner_ja.png


--------------------------------------------------------------------------------
/docs/images/PP-OCRv3-pic001.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/images/PP-OCRv3-pic001.jpg


--------------------------------------------------------------------------------
/docs/images/PP-OCRv3-pic002.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/images/PP-OCRv3-pic002.jpg


--------------------------------------------------------------------------------
/docs/images/PP-OCRv3-pic003.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/images/PP-OCRv3-pic003.jpg


--------------------------------------------------------------------------------
/docs/images/en_1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/images/en_1.png


--------------------------------------------------------------------------------
/docs/images/en_2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/images/en_2.png


--------------------------------------------------------------------------------
/docs/images/en_3-0398013.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/images/en_3-0398013.png


--------------------------------------------------------------------------------
/docs/images/en_3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/images/en_3.png


--------------------------------------------------------------------------------
/docs/images/japan_2.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/images/japan_2.jpg


--------------------------------------------------------------------------------
/docs/images/korean_1.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/images/korean_1.jpg


--------------------------------------------------------------------------------
/docs/images/ppocrv4.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/images/ppocrv4.png


--------------------------------------------------------------------------------
/docs/images/ppocrv4_en.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/images/ppocrv4_en.jpg


--------------------------------------------------------------------------------
/docs/images/ppstructure-20240708082235651.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/images/ppstructure-20240708082235651.gif


--------------------------------------------------------------------------------
/docs/images/test_add_91.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/images/test_add_91.jpg


--------------------------------------------------------------------------------
/docs/version2.x/README.en.md:
--------------------------------------------------------------------------------
1 | # Features of the 2.x Branch
2 | 
3 | Due to the upgrade of the 3.x branch, the wheel package has undergone refactoring, resulting in some models and features no longer being compatible with the older branch. To ensure that users relying on the 2.x branch's features can continue using them, we have retained the code related to the 2.x branch in this directory.
4 | 


--------------------------------------------------------------------------------
/docs/version2.x/README.md:
--------------------------------------------------------------------------------
1 | # 关于 2.x 分支的功能
2 | 
3 | 由于 3.x 分支的升级,wheel 包经历了重构,导致部分模型和功能与旧版分支不再兼容。为了使得依赖于 2.x 分支功能的用户能够继续使用这些功能,我们在此目录中保留了与 2.x 分支相关的代码。
4 | 


--------------------------------------------------------------------------------
/docs/version2.x/algorithm/end_to_end/images/e2e_res_img293_pgnet.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/algorithm/end_to_end/images/e2e_res_img293_pgnet.png


--------------------------------------------------------------------------------
/docs/version2.x/algorithm/end_to_end/images/e2e_res_img295_pgnet.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/algorithm/end_to_end/images/e2e_res_img295_pgnet.png


--------------------------------------------------------------------------------
/docs/version2.x/algorithm/end_to_end/images/e2e_res_img623_pgnet.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/algorithm/end_to_end/images/e2e_res_img623_pgnet.jpg


--------------------------------------------------------------------------------
/docs/version2.x/algorithm/end_to_end/images/e2e_res_img_10_pgnet.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/algorithm/end_to_end/images/e2e_res_img_10_pgnet.jpg


--------------------------------------------------------------------------------
/docs/version2.x/algorithm/end_to_end/images/pgnet_framework.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/algorithm/end_to_end/images/pgnet_framework.png


--------------------------------------------------------------------------------
/docs/version2.x/algorithm/formula_recognition/images/hme_00.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/algorithm/formula_recognition/images/hme_00.jpg


--------------------------------------------------------------------------------
/docs/version2.x/algorithm/formula_recognition/requirements.txt:
--------------------------------------------------------------------------------
1 | tokenizers==0.19.1
2 | imagesize
3 | ftfy
4 | Wand
5 | 


--------------------------------------------------------------------------------
/docs/version2.x/algorithm/kie/images/sdmgr_result.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/algorithm/kie/images/sdmgr_result.png


--------------------------------------------------------------------------------
/docs/version2.x/algorithm/kie/images/zh_val_42_re.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/algorithm/kie/images/zh_val_42_re.jpg


--------------------------------------------------------------------------------
/docs/version2.x/algorithm/kie/images/zh_val_42_ser.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/algorithm/kie/images/zh_val_42_ser.jpg


--------------------------------------------------------------------------------
/docs/version2.x/algorithm/super_resolution/images/sr_word_52-20240704093810101.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/algorithm/super_resolution/images/sr_word_52-20240704093810101.png


--------------------------------------------------------------------------------
/docs/version2.x/algorithm/super_resolution/images/sr_word_52-20240704094309205.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/algorithm/super_resolution/images/sr_word_52-20240704094309205.png


--------------------------------------------------------------------------------
/docs/version2.x/algorithm/super_resolution/images/sr_word_52.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/algorithm/super_resolution/images/sr_word_52.png


--------------------------------------------------------------------------------
/docs/version2.x/algorithm/super_resolution/images/word_52-20240704094304807.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/algorithm/super_resolution/images/word_52-20240704094304807.png


--------------------------------------------------------------------------------
/docs/version2.x/algorithm/super_resolution/images/word_52.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/algorithm/super_resolution/images/word_52.png


--------------------------------------------------------------------------------
/docs/version2.x/algorithm/text_detection/images/det_res_img623_ct.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/algorithm/text_detection/images/det_res_img623_ct.jpg


--------------------------------------------------------------------------------
/docs/version2.x/algorithm/text_detection/images/det_res_img623_fce.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/algorithm/text_detection/images/det_res_img623_fce.jpg


--------------------------------------------------------------------------------
/docs/version2.x/algorithm/text_detection/images/det_res_img623_sast.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/algorithm/text_detection/images/det_res_img623_sast.jpg


--------------------------------------------------------------------------------
/docs/version2.x/algorithm/text_detection/images/det_res_img_10_db.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/algorithm/text_detection/images/det_res_img_10_db.jpg


--------------------------------------------------------------------------------
/docs/version2.x/algorithm/text_detection/images/det_res_img_10_east.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/algorithm/text_detection/images/det_res_img_10_east.jpg


--------------------------------------------------------------------------------
/docs/version2.x/algorithm/text_detection/images/det_res_img_10_fce.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/algorithm/text_detection/images/det_res_img_10_fce.jpg


--------------------------------------------------------------------------------
/docs/version2.x/algorithm/text_detection/images/det_res_img_10_pse.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/algorithm/text_detection/images/det_res_img_10_pse.jpg


--------------------------------------------------------------------------------
/docs/version2.x/algorithm/text_detection/images/det_res_img_10_pse_poly.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/algorithm/text_detection/images/det_res_img_10_pse_poly.jpg


--------------------------------------------------------------------------------
/docs/version2.x/algorithm/text_detection/images/det_res_img_10_sast.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/algorithm/text_detection/images/det_res_img_10_sast.jpg


--------------------------------------------------------------------------------
/docs/version2.x/algorithm/text_recognition/images/word_1-20240704183926496.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/algorithm/text_recognition/images/word_1-20240704183926496.png


--------------------------------------------------------------------------------
/docs/version2.x/algorithm/text_recognition/images/word_1-20240704184113913.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/algorithm/text_recognition/images/word_1-20240704184113913.png


--------------------------------------------------------------------------------
/docs/version2.x/algorithm/text_recognition/images/word_10.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/algorithm/text_recognition/images/word_10.png


--------------------------------------------------------------------------------
/docs/version2.x/algorithm/text_recognition/images/word_336-20240705082445918.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/algorithm/text_recognition/images/word_336-20240705082445918.png


--------------------------------------------------------------------------------
/docs/version2.x/algorithm/text_recognition/images/word_336.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/algorithm/text_recognition/images/word_336.png


--------------------------------------------------------------------------------
/docs/version2.x/legacy/images/00057937.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/legacy/images/00057937.jpg


--------------------------------------------------------------------------------
/docs/version2.x/legacy/images/1.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/legacy/images/1.jpg


--------------------------------------------------------------------------------
/docs/version2.x/legacy/images/196874354-1b5eecb0-f273-403c-aa6c-4463bf6d78db.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/legacy/images/196874354-1b5eecb0-f273-403c-aa6c-4463bf6d78db.png


--------------------------------------------------------------------------------
/docs/version2.x/legacy/images/197918203-c7d46f8a-75d4-47f9-9687-405ee0d6727e.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/legacy/images/197918203-c7d46f8a-75d4-47f9-9687-405ee0d6727e.gif


--------------------------------------------------------------------------------
/docs/version2.x/legacy/images/68747470733a.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/legacy/images/68747470733a.jpeg


--------------------------------------------------------------------------------
/docs/version2.x/legacy/images/68747470733a.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/legacy/images/68747470733a.png


--------------------------------------------------------------------------------
/docs/version2.x/legacy/images/68747470733a2f2f7061.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/legacy/images/68747470733a2f2f7061.jpeg


--------------------------------------------------------------------------------
/docs/version2.x/legacy/images/68747470733adfd.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/legacy/images/68747470733adfd.jpeg


--------------------------------------------------------------------------------
/docs/version2.x/legacy/images/cmake_step1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/legacy/images/cmake_step1.png


--------------------------------------------------------------------------------
/docs/version2.x/legacy/images/cmake_step2.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/legacy/images/cmake_step2.jpg


--------------------------------------------------------------------------------
/docs/version2.x/legacy/images/cmake_step3.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/legacy/images/cmake_step3.jpg


--------------------------------------------------------------------------------
/docs/version2.x/legacy/images/cmake_step4.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/legacy/images/cmake_step4.jpg


--------------------------------------------------------------------------------
/docs/version2.x/legacy/images/deployment.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/legacy/images/deployment.jpg


--------------------------------------------------------------------------------
/docs/version2.x/legacy/images/deployment_en.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/legacy/images/deployment_en.jpg


--------------------------------------------------------------------------------
/docs/version2.x/legacy/images/det_res_00018069.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/legacy/images/det_res_00018069.jpg


--------------------------------------------------------------------------------
/docs/version2.x/legacy/images/det_res_french_0.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/legacy/images/det_res_french_0.jpg


--------------------------------------------------------------------------------
/docs/version2.x/legacy/images/det_res_img623_sast.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/legacy/images/det_res_img623_sast.jpg


--------------------------------------------------------------------------------
/docs/version2.x/legacy/images/det_res_img_10_db.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/legacy/images/det_res_img_10_db.jpg


--------------------------------------------------------------------------------
/docs/version2.x/legacy/images/det_res_img_10_east.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/legacy/images/det_res_img_10_east.jpg


--------------------------------------------------------------------------------
/docs/version2.x/legacy/images/det_res_img_10_sast.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/legacy/images/det_res_img_10_sast.jpg


--------------------------------------------------------------------------------
/docs/version2.x/legacy/images/doc.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/legacy/images/doc.jpg


--------------------------------------------------------------------------------
/docs/version2.x/legacy/images/img_10_east_starnet.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/legacy/images/img_10_east_starnet.jpg


--------------------------------------------------------------------------------
/docs/version2.x/legacy/images/img_12.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/legacy/images/img_12.jpg


--------------------------------------------------------------------------------
/docs/version2.x/legacy/images/img_12_result.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/legacy/images/img_12_result.jpg


--------------------------------------------------------------------------------
/docs/version2.x/legacy/images/import_demo.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/legacy/images/import_demo.jpg


--------------------------------------------------------------------------------
/docs/version2.x/legacy/images/lite_demo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/legacy/images/lite_demo.png


--------------------------------------------------------------------------------
/docs/version2.x/legacy/images/lite_demo_onnx.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/legacy/images/lite_demo_onnx.png


--------------------------------------------------------------------------------
/docs/version2.x/legacy/images/lite_demo_paddle.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/legacy/images/lite_demo_paddle.png


--------------------------------------------------------------------------------
/docs/version2.x/legacy/images/pipeline_result.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/legacy/images/pipeline_result.png


--------------------------------------------------------------------------------
/docs/version2.x/legacy/images/result.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/legacy/images/result.jpg


--------------------------------------------------------------------------------
/docs/version2.x/legacy/images/results.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/legacy/images/results.png


--------------------------------------------------------------------------------
/docs/version2.x/legacy/images/run_cls.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/legacy/images/run_cls.jpg


--------------------------------------------------------------------------------
/docs/version2.x/legacy/images/run_cls_rec.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/legacy/images/run_cls_rec.jpg


--------------------------------------------------------------------------------
/docs/version2.x/legacy/images/run_det.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/legacy/images/run_det.jpg


--------------------------------------------------------------------------------
/docs/version2.x/legacy/images/run_det_cls_rec-20240806100407184.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/legacy/images/run_det_cls_rec-20240806100407184.jpg


--------------------------------------------------------------------------------
/docs/version2.x/legacy/images/run_det_cls_rec.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/legacy/images/run_det_cls_rec.jpg


--------------------------------------------------------------------------------
/docs/version2.x/legacy/images/run_det_rec.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/legacy/images/run_det_rec.jpg


--------------------------------------------------------------------------------
/docs/version2.x/legacy/images/run_rec.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/legacy/images/run_rec.jpg


--------------------------------------------------------------------------------
/docs/version2.x/legacy/images/start_server.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/legacy/images/start_server.png


--------------------------------------------------------------------------------
/docs/version2.x/legacy/images/system_res_00018069_v3.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/legacy/images/system_res_00018069_v3.jpg


--------------------------------------------------------------------------------
/docs/version2.x/legacy/images/vs_step1.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/legacy/images/vs_step1.jpg


--------------------------------------------------------------------------------
/docs/version2.x/legacy/images/word_1.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/legacy/images/word_1.jpg


--------------------------------------------------------------------------------
/docs/version2.x/legacy/images/word_1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/legacy/images/word_1.png


--------------------------------------------------------------------------------
/docs/version2.x/legacy/images/word_10.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/legacy/images/word_10.png


--------------------------------------------------------------------------------
/docs/version2.x/legacy/images/word_336.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/legacy/images/word_336.png


--------------------------------------------------------------------------------
/docs/version2.x/legacy/images/word_4.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/legacy/images/word_4.jpg


--------------------------------------------------------------------------------
/docs/version2.x/model/hardware/supported_models.md:
--------------------------------------------------------------------------------
 1 | ---
 2 | comments: true
 3 | typora-copy-images-to: images
 4 | ---
 5 | 
 6 | # PaddleOCR模型列表
 7 | 
 8 | *多硬件安装方式请参考[多硬件安装文档](./install_other_devices.md)*
 9 | 
10 | | 模型名称 | 昇腾NPU |
11 | | ---------------- | -------- |
12 | | PP-OCRv4 | √ |
13 | 


--------------------------------------------------------------------------------
/docs/version2.x/ppocr/blog/clone.md:
--------------------------------------------------------------------------------
 1 | ---
 2 | comments: true
 3 | ---
 4 | 
 5 | # 项目克隆
 6 | 
 7 | ## 1. 克隆PaddleOCR repo代码
 8 | 
 9 | ```bash linenums="1"
10 | git clone https://github.com/PaddlePaddle/PaddleOCR
11 | ```
12 | 
13 | 如果因为网络问题无法pull成功,也可选择使用码云上的托管:
14 | 
15 | ```bash linenums="1"
16 | git clone https://gitee.com/paddlepaddle/PaddleOCR
17 | ```
18 | 
19 | 注:码云托管代码可能无法实时同步本github项目更新,存在3~5天延时,请优先使用推荐方式。
20 | 
21 | ## 2. 安装第三方库
22 | 
23 | ```bash linenums="1"
24 | cd PaddleOCR
25 | pip3 install -r requirements.txt
26 | ```
27 | 


--------------------------------------------------------------------------------
/docs/version2.x/ppocr/blog/images/11_det.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppocr/blog/images/11_det.jpg


--------------------------------------------------------------------------------
/docs/version2.x/ppocr/blog/images/11_det_rec.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppocr/blog/images/11_det_rec.jpg


--------------------------------------------------------------------------------
/docs/version2.x/ppocr/blog/images/12_det.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppocr/blog/images/12_det.jpg


--------------------------------------------------------------------------------
/docs/version2.x/ppocr/blog/images/12_det_rec.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppocr/blog/images/12_det_rec.jpg


--------------------------------------------------------------------------------
/docs/version2.x/ppocr/blog/images/187578511-9f3c351e-b68c-4359-a6e5-475810993c61.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppocr/blog/images/187578511-9f3c351e-b68c-4359-a6e5-475810993c61.png


--------------------------------------------------------------------------------
/docs/version2.x/ppocr/blog/images/254-20240709081442260.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppocr/blog/images/254-20240709081442260.jpg


--------------------------------------------------------------------------------
/docs/version2.x/ppocr/blog/images/5e612.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppocr/blog/images/5e612.png


--------------------------------------------------------------------------------
/docs/version2.x/ppocr/blog/images/DF.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppocr/blog/images/DF.png


--------------------------------------------------------------------------------
/docs/version2.x/ppocr/blog/images/GTC.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppocr/blog/images/GTC.png


--------------------------------------------------------------------------------
/docs/version2.x/ppocr/blog/images/LCNet_SVTR.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppocr/blog/images/LCNet_SVTR.png


--------------------------------------------------------------------------------
/docs/version2.x/ppocr/blog/images/LKPAN.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppocr/blog/images/LKPAN.png


--------------------------------------------------------------------------------
/docs/version2.x/ppocr/blog/images/PFHead.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppocr/blog/images/PFHead.png


--------------------------------------------------------------------------------
/docs/version2.x/ppocr/blog/images/RSEFPN.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppocr/blog/images/RSEFPN.png


--------------------------------------------------------------------------------
/docs/version2.x/ppocr/blog/images/SSL.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppocr/blog/images/SSL.png


--------------------------------------------------------------------------------
/docs/version2.x/ppocr/blog/images/UIM.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppocr/blog/images/UIM.png


--------------------------------------------------------------------------------
/docs/version2.x/ppocr/blog/images/arabic_0.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppocr/blog/images/arabic_0.jpg


--------------------------------------------------------------------------------
/docs/version2.x/ppocr/blog/images/focal_loss_image.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppocr/blog/images/focal_loss_image.png


--------------------------------------------------------------------------------
/docs/version2.x/ppocr/blog/images/french_0.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppocr/blog/images/french_0.jpg


--------------------------------------------------------------------------------
/docs/version2.x/ppocr/blog/images/img_02.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppocr/blog/images/img_02.jpg


--------------------------------------------------------------------------------
/docs/version2.x/ppocr/blog/images/img_12.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppocr/blog/images/img_12.jpg


--------------------------------------------------------------------------------
/docs/version2.x/ppocr/blog/images/japan_2-20240709081138234.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppocr/blog/images/japan_2-20240709081138234.jpg


--------------------------------------------------------------------------------
/docs/version2.x/ppocr/blog/images/korean.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppocr/blog/images/korean.jpg


--------------------------------------------------------------------------------
/docs/version2.x/ppocr/blog/images/korean_0.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppocr/blog/images/korean_0.jpg


--------------------------------------------------------------------------------
/docs/version2.x/ppocr/blog/images/multi_scale.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppocr/blog/images/multi_scale.png


--------------------------------------------------------------------------------
/docs/version2.x/ppocr/blog/images/ppocrv3_det_cml.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppocr/blog/images/ppocrv3_det_cml.png


--------------------------------------------------------------------------------
/docs/version2.x/ppocr/blog/images/ppocrv3_framework-0052468.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppocr/blog/images/ppocrv3_framework-0052468.png


--------------------------------------------------------------------------------
/docs/version2.x/ppocr/blog/images/ppocrv4_det_cml.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppocr/blog/images/ppocrv4_det_cml.png


--------------------------------------------------------------------------------
/docs/version2.x/ppocr/blog/images/ppocrv4_framework.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppocr/blog/images/ppocrv4_framework.png


--------------------------------------------------------------------------------
/docs/version2.x/ppocr/blog/images/ppocrv4_gtc.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppocr/blog/images/ppocrv4_gtc.png


--------------------------------------------------------------------------------
/docs/version2.x/ppocr/blog/images/rec_algo_compare.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppocr/blog/images/rec_algo_compare.png


--------------------------------------------------------------------------------
/docs/version2.x/ppocr/blog/images/recconaug.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppocr/blog/images/recconaug.png


--------------------------------------------------------------------------------
/docs/version2.x/ppocr/blog/images/svtr_g2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppocr/blog/images/svtr_g2.png


--------------------------------------------------------------------------------
/docs/version2.x/ppocr/blog/images/svtr_g4.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppocr/blog/images/svtr_g4.png


--------------------------------------------------------------------------------
/docs/version2.x/ppocr/blog/images/svtr_tiny.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppocr/blog/images/svtr_tiny.png


--------------------------------------------------------------------------------
/docs/version2.x/ppocr/blog/images/teacher_dml.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppocr/blog/images/teacher_dml.png


--------------------------------------------------------------------------------
/docs/version2.x/ppocr/blog/images/v3_rec_pipeline.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppocr/blog/images/v3_rec_pipeline.png


--------------------------------------------------------------------------------
/docs/version2.x/ppocr/blog/images/v4_rec_pipeline.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppocr/blog/images/v4_rec_pipeline.png


--------------------------------------------------------------------------------
/docs/version2.x/ppocr/blog/images/word_308.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppocr/blog/images/word_308.png


--------------------------------------------------------------------------------
/docs/version2.x/ppocr/images/254.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppocr/images/254.jpg


--------------------------------------------------------------------------------
/docs/version2.x/ppocr/images/Anaconda_download.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppocr/images/Anaconda_download.png


--------------------------------------------------------------------------------
/docs/version2.x/ppocr/images/PP-OCRv2/PP-OCRv2-pic001.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppocr/images/PP-OCRv2/PP-OCRv2-pic001.jpg


--------------------------------------------------------------------------------
/docs/version2.x/ppocr/images/PP-OCRv2/PP-OCRv2-pic002.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppocr/images/PP-OCRv2/PP-OCRv2-pic002.jpg


--------------------------------------------------------------------------------
/docs/version2.x/ppocr/images/PP-OCRv2/PP-OCRv2-pic003.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppocr/images/PP-OCRv2/PP-OCRv2-pic003.jpg


--------------------------------------------------------------------------------
/docs/version2.x/ppocr/images/PP-OCRv3/ch/PP-OCRv3-pic001.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppocr/images/PP-OCRv3/ch/PP-OCRv3-pic001.jpg


--------------------------------------------------------------------------------
/docs/version2.x/ppocr/images/PP-OCRv3/ch/PP-OCRv3-pic002.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppocr/images/PP-OCRv3/ch/PP-OCRv3-pic002.jpg


--------------------------------------------------------------------------------
/docs/version2.x/ppocr/images/PP-OCRv3/ch/PP-OCRv3-pic003.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppocr/images/PP-OCRv3/ch/PP-OCRv3-pic003.jpg


--------------------------------------------------------------------------------
/docs/version2.x/ppocr/images/PP-OCRv3/en/en_1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppocr/images/PP-OCRv3/en/en_1.png


--------------------------------------------------------------------------------
/docs/version2.x/ppocr/images/PP-OCRv3/en/en_2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppocr/images/PP-OCRv3/en/en_2.png


--------------------------------------------------------------------------------
/docs/version2.x/ppocr/images/PP-OCRv3/en/en_3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppocr/images/PP-OCRv3/en/en_3.png


--------------------------------------------------------------------------------
/docs/version2.x/ppocr/images/PP-OCRv3/en/en_4.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppocr/images/PP-OCRv3/en/en_4.png


--------------------------------------------------------------------------------
/docs/version2.x/ppocr/images/PP-OCRv3/multi_lang/japan_2.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppocr/images/PP-OCRv3/multi_lang/japan_2.jpg


--------------------------------------------------------------------------------
/docs/version2.x/ppocr/images/PP-OCRv3/multi_lang/korean_1.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppocr/images/PP-OCRv3/multi_lang/korean_1.jpg


--------------------------------------------------------------------------------
/docs/version2.x/ppocr/images/anaconda_download-20240704081644684.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppocr/images/anaconda_download-20240704081644684.png


--------------------------------------------------------------------------------
/docs/version2.x/ppocr/images/anaconda_install_env.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppocr/images/anaconda_install_env.png


--------------------------------------------------------------------------------
/docs/version2.x/ppocr/images/anaconda_install_folder.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppocr/images/anaconda_install_folder.png


--------------------------------------------------------------------------------
/docs/version2.x/ppocr/images/anaconda_prompt.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppocr/images/anaconda_prompt.png


--------------------------------------------------------------------------------
/docs/version2.x/ppocr/images/anaconda_start.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppocr/images/anaconda_start.png


--------------------------------------------------------------------------------
/docs/version2.x/ppocr/images/ch_ppocr_mobile_v2.0/00006737.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppocr/images/ch_ppocr_mobile_v2.0/00006737.jpg


--------------------------------------------------------------------------------
/docs/version2.x/ppocr/images/ch_ppocr_mobile_v2.0/00009282.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppocr/images/ch_ppocr_mobile_v2.0/00009282.jpg


--------------------------------------------------------------------------------
/docs/version2.x/ppocr/images/ch_ppocr_mobile_v2.0/00015504.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppocr/images/ch_ppocr_mobile_v2.0/00015504.jpg


--------------------------------------------------------------------------------
/docs/version2.x/ppocr/images/ch_ppocr_mobile_v2.0/00059985.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppocr/images/ch_ppocr_mobile_v2.0/00059985.jpg


--------------------------------------------------------------------------------
/docs/version2.x/ppocr/images/ch_ppocr_mobile_v2.0/00111002.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppocr/images/ch_ppocr_mobile_v2.0/00111002.jpg


--------------------------------------------------------------------------------
/docs/version2.x/ppocr/images/ch_ppocr_mobile_v2.0/img_12.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppocr/images/ch_ppocr_mobile_v2.0/img_12.jpg


--------------------------------------------------------------------------------
/docs/version2.x/ppocr/images/ch_ppocr_mobile_v2.0/rotate_00052204.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppocr/images/ch_ppocr_mobile_v2.0/rotate_00052204.jpg


--------------------------------------------------------------------------------
/docs/version2.x/ppocr/images/ch_ppocr_mobile_v2.0/test_add_91.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppocr/images/ch_ppocr_mobile_v2.0/test_add_91.jpg


--------------------------------------------------------------------------------
/docs/version2.x/ppocr/images/conda_activate.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppocr/images/conda_activate.png


--------------------------------------------------------------------------------
/docs/version2.x/ppocr/images/conda_create-20240704081656378.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppocr/images/conda_create-20240704081656378.png


--------------------------------------------------------------------------------
/docs/version2.x/ppocr/images/conda_create.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppocr/images/conda_create.png


--------------------------------------------------------------------------------
/docs/version2.x/ppocr/images/conda_list_env.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppocr/images/conda_list_env.png


--------------------------------------------------------------------------------
/docs/version2.x/ppocr/images/conda_new_env.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppocr/images/conda_new_env.png


--------------------------------------------------------------------------------
/docs/version2.x/ppocr/images/model_prod_flow_ch.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppocr/images/model_prod_flow_ch.png


--------------------------------------------------------------------------------
/docs/version2.x/ppocr/images/model_prod_flow_en.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppocr/images/model_prod_flow_en.png


--------------------------------------------------------------------------------
/docs/version2.x/ppocr/images/multi_lang/arabic_0.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppocr/images/multi_lang/arabic_0.jpg


--------------------------------------------------------------------------------
/docs/version2.x/ppocr/images/multi_lang/en_1.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppocr/images/multi_lang/en_1.jpg


--------------------------------------------------------------------------------
/docs/version2.x/ppocr/images/multi_lang/en_2.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppocr/images/multi_lang/en_2.jpg


--------------------------------------------------------------------------------
/docs/version2.x/ppocr/images/multi_lang/en_3.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppocr/images/multi_lang/en_3.jpg


--------------------------------------------------------------------------------
/docs/version2.x/ppocr/images/multi_lang/french_0.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppocr/images/multi_lang/french_0.jpg


--------------------------------------------------------------------------------
/docs/version2.x/ppocr/images/multi_lang/img_01.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppocr/images/multi_lang/img_01.jpg


--------------------------------------------------------------------------------
/docs/version2.x/ppocr/images/multi_lang/img_02.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppocr/images/multi_lang/img_02.jpg


--------------------------------------------------------------------------------
/docs/version2.x/ppocr/images/multi_lang/img_12.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppocr/images/multi_lang/img_12.jpg


--------------------------------------------------------------------------------
/docs/version2.x/ppocr/images/multi_lang/japan_2.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppocr/images/multi_lang/japan_2.jpg


--------------------------------------------------------------------------------
/docs/version2.x/ppocr/images/multi_lang/korean_0.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppocr/images/multi_lang/korean_0.jpg


--------------------------------------------------------------------------------
/docs/version2.x/ppocr/images/ppocrv2_framework.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppocr/images/ppocrv2_framework.jpg


--------------------------------------------------------------------------------
/docs/version2.x/ppocr/images/ppocrv3_framework.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppocr/images/ppocrv3_framework.png


--------------------------------------------------------------------------------
/docs/version2.x/ppocr/model_train/images/angle_class_example.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppocr/model_train/images/angle_class_example.jpg


--------------------------------------------------------------------------------
/docs/version2.x/ppocr/model_train/images/en_paper.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppocr/model_train/images/en_paper.jpg


--------------------------------------------------------------------------------
/docs/version2.x/ppocr/model_train/images/icdar_rec.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppocr/model_train/images/icdar_rec.png


--------------------------------------------------------------------------------
/docs/version2.x/ppocr/model_train/images/image-20240710082046188.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppocr/model_train/images/image-20240710082046188.jpg


--------------------------------------------------------------------------------
/docs/version2.x/ppocr/model_train/images/long_text_examples.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppocr/model_train/images/long_text_examples.jpg


--------------------------------------------------------------------------------
/docs/version2.x/ppocr/model_train/images/word_1-20240704092705543.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppocr/model_train/images/word_1-20240704092705543.png


--------------------------------------------------------------------------------
/docs/version2.x/ppocr/model_train/images/word_1-20240704092713071.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppocr/model_train/images/word_1-20240704092713071.jpg


--------------------------------------------------------------------------------
/docs/version2.x/ppstructure/blog/images/184526682-8b810397-5a93-4395-93da-37b8b8494c41.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppstructure/blog/images/184526682-8b810397-5a93-4395-93da-37b8b8494c41.png


--------------------------------------------------------------------------------
/docs/version2.x/ppstructure/blog/images/184526785-c3d2d310-cd57-4d31-b933-912716b29856.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppstructure/blog/images/184526785-c3d2d310-cd57-4d31-b933-912716b29856.jpg


--------------------------------------------------------------------------------
/docs/version2.x/ppstructure/blog/images/184528728-626f77eb-fd9f-4709-a7dc-5411cc417dab.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppstructure/blog/images/184528728-626f77eb-fd9f-4709-a7dc-5411cc417dab.jpg


--------------------------------------------------------------------------------
/docs/version2.x/ppstructure/blog/images/184588654-d87f54f3-13ab-42c4-afc0-da79bead3f14.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppstructure/blog/images/184588654-d87f54f3-13ab-42c4-afc0-da79bead3f14.png


--------------------------------------------------------------------------------
/docs/version2.x/ppstructure/blog/images/3c200538-f2e6-4d79-847a-4c4587efa9f0.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppstructure/blog/images/3c200538-f2e6-4d79-847a-4c4587efa9f0.jpeg


--------------------------------------------------------------------------------
/docs/version2.x/ppstructure/blog/images/799450d4-d2c5-4b61-b490-e160dc0f515c.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppstructure/blog/images/799450d4-d2c5-4b61-b490-e160dc0f515c.jpeg


--------------------------------------------------------------------------------
/docs/version2.x/ppstructure/blog/images/d0858341-a889-483c-8373-5ecaa57f3b20.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppstructure/blog/images/d0858341-a889-483c-8373-5ecaa57f3b20.png


--------------------------------------------------------------------------------
/docs/version2.x/ppstructure/images/185310636-6ce02f7c-790d-479f-b163-ea97a5a04808-20240705094001639.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppstructure/images/185310636-6ce02f7c-790d-479f-b163-ea97a5a04808-20240705094001639.jpg


--------------------------------------------------------------------------------
/docs/version2.x/ppstructure/images/185393805-c67ff571-cf7e-4217-a4b0-8b396c4f22bb-20240705094037073.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppstructure/images/185393805-c67ff571-cf7e-4217-a4b0-8b396c4f22bb-20240705094037073.jpg


--------------------------------------------------------------------------------
/docs/version2.x/ppstructure/images/185539141-68e71c75-5cf7-4529-b2ca-219d29fa5f68-20240705093932704.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppstructure/images/185539141-68e71c75-5cf7-4529-b2ca-219d29fa5f68-20240705093932704.jpg


--------------------------------------------------------------------------------
/docs/version2.x/ppstructure/images/185539517-ccf2372a-f026-4a7c-ad28-c741c770f60a-20240705094013236.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppstructure/images/185539517-ccf2372a-f026-4a7c-ad28-c741c770f60a-20240705094013236.png


--------------------------------------------------------------------------------
/docs/version2.x/ppstructure/images/185540080-0431e006-9235-4b6d-b63d-0b3c6e1de48f-20240705094043151.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppstructure/images/185540080-0431e006-9235-4b6d-b63d-0b3c6e1de48f-20240705094043151.jpg


--------------------------------------------------------------------------------
/docs/version2.x/ppstructure/images/186094813-3a8e16cc-42e5-4982-b9f4-0134dfb5688d.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppstructure/images/186094813-3a8e16cc-42e5-4982-b9f4-0134dfb5688d.png


--------------------------------------------------------------------------------
/docs/version2.x/ppstructure/images/186095641-5843b4da-34d7-4c1c-943a-b1036a859fe3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppstructure/images/186095641-5843b4da-34d7-4c1c-943a-b1036a859fe3.png


--------------------------------------------------------------------------------
/docs/version2.x/ppstructure/images/186095702-9acef674-12af-4d09-97fc-abf4ab32600e.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppstructure/images/186095702-9acef674-12af-4d09-97fc-abf4ab32600e.png


--------------------------------------------------------------------------------
/docs/version2.x/ppstructure/images/195265734-6f4b5a7f-59b1-4fcc-af6d-89afc9bd51e1-20240705140834325.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppstructure/images/195265734-6f4b5a7f-59b1-4fcc-af6d-89afc9bd51e1-20240705140834325.jpg


--------------------------------------------------------------------------------
/docs/version2.x/ppstructure/images/197464552-69de557f-edff-4c7f-acbf-069df1ba097f.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppstructure/images/197464552-69de557f-edff-4c7f-acbf-069df1ba097f.png


--------------------------------------------------------------------------------
/docs/version2.x/ppstructure/images/799450d4-d2c5-4b61-b490-e160dc0f515c.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppstructure/images/799450d4-d2c5-4b61-b490-e160dc0f515c.jpeg


--------------------------------------------------------------------------------
/docs/version2.x/ppstructure/images/ppstructure.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppstructure/images/ppstructure.gif


--------------------------------------------------------------------------------
/docs/version2.x/ppstructure/images/recovery.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppstructure/images/recovery.jpg


--------------------------------------------------------------------------------
/docs/version2.x/ppstructure/images/table_1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppstructure/images/table_1.png


--------------------------------------------------------------------------------
/docs/version2.x/ppstructure/infer_deploy/images/deployment-20240704135743247.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppstructure/infer_deploy/images/deployment-20240704135743247.png


--------------------------------------------------------------------------------
/docs/version2.x/ppstructure/infer_deploy/index.md:
--------------------------------------------------------------------------------
 1 | ---
 2 | typora-copy-images-to: images
 3 | comments: true
 4 | ---
 5 | 
 6 | # PP-OCR 模型推理部署
 7 | 
 8 | ## Paddle 推理部署方式简介
 9 | 
10 | 飞桨提供多种部署方案,以满足不同场景的部署需求,请根据实际情况进行选择:
11 | 
12 | ![img](./images/deployment-20240704135743247.png)
13 | 
14 | ## PP-OCR 推理部署
15 | 
16 | PP-OCR模型已打通多种场景部署方案,点击链接获取具体的使用教程。
17 | 
18 | - [Python 推理](./python_infer.md)
19 | - [C++ 推理](./cpp_infer.md)
20 | - [Serving 服务化部署(Python/C++)](./paddle_server.md)
21 | - [Paddle-Lite 端侧部署(ARM CPU/OpenCL ARM GPU)](../../legacy/lite.md)
22 | - [Paddle2ONNX 推理](../../legacy/paddle2onnx.md)
23 | 
24 | 需要PP-OCR以外的学术算法模型的推理部署,请直接进入相应算法主页面,[入口](../../algorithm/overview.md)。
25 | 


--------------------------------------------------------------------------------
/docs/version2.x/ppstructure/model_train/images/185310636-6ce02f7c-790d-479f-b163-ea97a5a04808.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppstructure/model_train/images/185310636-6ce02f7c-790d-479f-b163-ea97a5a04808.jpg


--------------------------------------------------------------------------------
/docs/version2.x/ppstructure/model_train/images/185393805-c67ff571-cf7e-4217-a4b0-8b396c4f22bb.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppstructure/model_train/images/185393805-c67ff571-cf7e-4217-a4b0-8b396c4f22bb.jpg


--------------------------------------------------------------------------------
/docs/version2.x/ppstructure/model_train/images/185539141-68e71c75-5cf7-4529-b2ca-219d29fa5f68.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppstructure/model_train/images/185539141-68e71c75-5cf7-4529-b2ca-219d29fa5f68.jpg


--------------------------------------------------------------------------------
/docs/version2.x/ppstructure/model_train/images/185539517-ccf2372a-f026-4a7c-ad28-c741c770f60a.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppstructure/model_train/images/185539517-ccf2372a-f026-4a7c-ad28-c741c770f60a.png


--------------------------------------------------------------------------------
/docs/version2.x/ppstructure/model_train/images/185539735-37b5c2ef-629d-43fe-9abb-44bb717ef7ee.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppstructure/model_train/images/185539735-37b5c2ef-629d-43fe-9abb-44bb717ef7ee.jpg


--------------------------------------------------------------------------------
/docs/version2.x/ppstructure/model_train/images/185540080-0431e006-9235-4b6d-b63d-0b3c6e1de48f.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppstructure/model_train/images/185540080-0431e006-9235-4b6d-b63d-0b3c6e1de48f.jpg


--------------------------------------------------------------------------------
/docs/version2.x/ppstructure/model_train/images/185540291-f64e5daf-6d42-4e7c-bbbb-471e3fac4fcc.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppstructure/model_train/images/185540291-f64e5daf-6d42-4e7c-bbbb-471e3fac4fcc.png


--------------------------------------------------------------------------------
/docs/version2.x/ppstructure/model_train/images/195319840-68fc60ec-ea66-4095-b734-0ec115860341.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppstructure/model_train/images/195319840-68fc60ec-ea66-4095-b734-0ec115860341.png


--------------------------------------------------------------------------------
/docs/version2.x/ppstructure/model_train/images/layout.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppstructure/model_train/images/layout.jpg


--------------------------------------------------------------------------------
/docs/version2.x/ppstructure/model_train/images/layout_res.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppstructure/model_train/images/layout_res.jpg


--------------------------------------------------------------------------------
/docs/version2.x/ppstructure/model_train/images/recovery-20240708091126891.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppstructure/model_train/images/recovery-20240708091126891.jpg


--------------------------------------------------------------------------------
/docs/version2.x/ppstructure/model_train/images/recovery_ch.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppstructure/model_train/images/recovery_ch.jpg


--------------------------------------------------------------------------------
/docs/version2.x/ppstructure/model_train/images/table_ch_result1.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppstructure/model_train/images/table_ch_result1.jpg


--------------------------------------------------------------------------------
/docs/version2.x/ppstructure/model_train/images/table_ch_result2.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppstructure/model_train/images/table_ch_result2.jpg


--------------------------------------------------------------------------------
/docs/version2.x/ppstructure/model_train/images/table_ch_result3.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppstructure/model_train/images/table_ch_result3.jpg


--------------------------------------------------------------------------------
/docs/version2.x/ppstructure/model_train/images/tableocr_pipeline.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppstructure/model_train/images/tableocr_pipeline.jpg


--------------------------------------------------------------------------------
/docs/version2.x/ppstructure/model_train/images/zh_val_42_ser.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/ppstructure/model_train/images/zh_val_42_ser.jpg


--------------------------------------------------------------------------------
/docs/version2.x/static/images/demo.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/static/images/demo.jpg


--------------------------------------------------------------------------------
/docs/version2.x/static/images/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version2.x/static/images/favicon.ico


--------------------------------------------------------------------------------
/docs/version3.x/deployment/cpp/cpp_local_deployment.en.md:
--------------------------------------------------------------------------------
 1 | # C++ Local Deployment
 2 | 
 3 | Linux:
 4 | 
 5 | [C++ Local Deployment for General OCR Pipeline - Linux](./OCR.en.md)
 6 | 
 7 | Windows:
 8 | 
 9 | [C++ Local Deployment for General OCR Pipeline - Windows](./OCR_windows.en.md)
10 | 


--------------------------------------------------------------------------------
/docs/version3.x/deployment/cpp/cpp_local_deployment.md:
--------------------------------------------------------------------------------
 1 | # C++ 本地部署
 2 | 
 3 | Linux:
 4 | 
 5 | [通用 OCR 产线 C++ 本地部署 - Linux](./OCR.md)
 6 | 
 7 | Windows:
 8 | 
 9 | [通用 OCR 产线 C++ 本地部署 - Windows](./OCR_windows.md)
10 | 


--------------------------------------------------------------------------------
/docs/version3.x/logo.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/docs/version3.x/logo.jpg


--------------------------------------------------------------------------------
/docs/version3.x/module_usage/module_overview.en.md:
--------------------------------------------------------------------------------
1 | # Module Overview
2 | 
3 | A module is the smallest unit that implements basic functionality. Modules typically use a single model to accomplish specific tasks, such as text detection, image classification, and other basic functions. As fundamental building blocks, modules provide the necessary functional support for more complex application scenarios. This design approach allows users to flexibly select and combine different modules according to their needs, thereby simplifying the development process and enhancing development flexibility and efficiency.
4 | 


--------------------------------------------------------------------------------
/docs/version3.x/module_usage/module_overview.md:
--------------------------------------------------------------------------------
1 | # 模块概述
2 | 
3 | 模块是实现基本功能的最小单位。模块通常使用单个模型去完成特定的任务,比如文本检测、图像分类等基本功能。模块作为基础构建单元,为更复杂的应用场景提供了必要的功能支持。这种设计方式使得用户可以根据需要灵活选择和组合不同的模块,从而简化了开发流程,并提高了开发的灵活性和效率。
4 | 


--------------------------------------------------------------------------------
/docs/version3.x/pipeline_usage/pipeline_overview.en.md:
--------------------------------------------------------------------------------
1 | # Pipeline Overview
2 | 
3 | A pipeline is a practical functional implementation composed of one or more modules. Through reasonable module combination and configuration, pipelines can meet the needs of complex application scenarios, such as technological applications like Optical Character Recognition (OCR). Pipelines not only demonstrate the integrated application of basic modules but also support capabilities such as high-performance inference and service-oriented deployment, providing users with higher development efficiency and broader application possibilities.
4 | 


--------------------------------------------------------------------------------
/docs/version3.x/pipeline_usage/pipeline_overview.md:
--------------------------------------------------------------------------------
1 | # 产线概述
2 | 
3 | 产线是由一个或多个模块组合而成的实际功能实现。通过合理的模块组合与配置,产线能够满足复杂应用场景的需求,比如光学字符识别(OCR)等技术应用。产线不仅体现了基础模块的整合应用,还支持高性能推理和服务化部署等能力,赋予用户更高的开发效率和更广泛的应用可能性。
4 | 


--------------------------------------------------------------------------------
/mcp_server/README.md:
--------------------------------------------------------------------------------
1 | # PaddleOCR MCP 服务器
2 | 
3 | 中文 | [English](./README_en.md)
4 | 
5 | 请查看 [文档](../docs/version3.x/deployment/mcp_server.md)。
6 | 


--------------------------------------------------------------------------------
/mcp_server/README_en.md:
--------------------------------------------------------------------------------
1 | # PaddleOCR MCP Server
2 | 
3 | [中文](./README.md)| English 
4 | 
5 | Please refer to the [documentation](../docs/version3.x/deployment/mcp_server.en.md)。
6 | 


--------------------------------------------------------------------------------
/mcp_server/paddleocr_mcp/__init__.py:
--------------------------------------------------------------------------------
 1 | # Copyright (c) 2025 PaddlePaddle Authors. All Rights Reserved.
 2 | #
 3 | # Licensed under the Apache License, Version 2.0 (the "License");
 4 | # you may not use this file except in compliance with the License.
 5 | # You may obtain a copy of the License at
 6 | #
 7 | #     http://www.apache.org/licenses/LICENSE-2.0
 8 | #
 9 | # Unless required by applicable law or agreed to in writing, software
10 | # distributed under the License is distributed on an "AS IS" BASIS,
11 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 | # See the License for the specific language governing permissions and
13 | # limitations under the License.
14 | 
15 | __version__ = "0.1.0"
16 | 


--------------------------------------------------------------------------------
/mcp_server/paddleocr_mcp/py.typed:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/mcp_server/paddleocr_mcp/py.typed


--------------------------------------------------------------------------------
/mcp_server/pyproject.toml:
--------------------------------------------------------------------------------
 1 | [build-system]
 2 | requires = ["setuptools>=69"]
 3 | build-backend = "setuptools.build_meta"
 4 | 
 5 | [project]
 6 | name = "paddleocr_mcp"
 7 | version = "0.2.1"
 8 | requires-python = ">=3.10"
 9 | dependencies = [
10 |     "mcp>=1.5.0",
11 |     "fastmcp>=2.0.0",
12 |     "httpx>=0.24.0",
13 |     "numpy>=1.24.0",
14 |     "pillow>=9.0.0",
15 |     "puremagic>=1.30.0",
16 |     "typing-extensions>=4.0.0",
17 | 
18 | ]
19 | 
20 | [project.optional-dependencies]
21 | local = [
22 |     "paddleocr[doc-parser]>=3.2",
23 | ]
24 | local-cpu = [
25 |     "paddleocr[doc-parser]>=3.2",
26 |     "paddlepaddle>=3.0.0",
27 | ]
28 | 
29 | [project.scripts]
30 | paddleocr_mcp = "paddleocr_mcp.__main__:main"
31 | 


--------------------------------------------------------------------------------
/overrides/main.html:
--------------------------------------------------------------------------------
1 | {% extends "base.html" %}
2 | 
3 | {% block outdated %}
4 | You're not viewing the latest version.
5 | <a href="{{ '../' ~ base_url }}">
6 |     <strong>Click here to go to latest.</strong>
7 | </a>
8 | {% endblock %}
9 | 


--------------------------------------------------------------------------------
/overrides/partials/expired_notice.html:
--------------------------------------------------------------------------------
 1 | {% if is_expired %}
 2 |     <div class="admonition warning">
 3 |         <p class="admonition-title">Warning</p>
 4 |         <p>
 5 |             本文档最后更新于 {{ last_update }},
 6 |             已超过 {{ expiry_days }} 天未更新,内容可能已经过时,阅读注意甄别。
 7 |         </p>
 8 |     </div>
 9 | {% endif %}
10 | 


--------------------------------------------------------------------------------
/paddleocr/_utils/__init__.py:
--------------------------------------------------------------------------------
 1 | # Copyright (c) 2025 PaddlePaddle Authors. All Rights Reserved.
 2 | #
 3 | # Licensed under the Apache License, Version 2.0 (the "License");
 4 | # you may not use this file except in compliance with the License.
 5 | # You may obtain a copy of the License at
 6 | #
 7 | #     http://www.apache.org/licenses/LICENSE-2.0
 8 | #
 9 | # Unless required by applicable law or agreed to in writing, software
10 | # distributed under the License is distributed on an "AS IS" BASIS,
11 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 | # See the License for the specific language governing permissions and
13 | # limitations under the License.
14 | 


--------------------------------------------------------------------------------
/ppocr/__init__.py:
--------------------------------------------------------------------------------
 1 | # Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved.
 2 | #
 3 | # Licensed under the Apache License, Version 2.0 (the "License");
 4 | # you may not use this file except in compliance with the License.
 5 | # You may obtain a copy of the License at
 6 | #
 7 | #     http://www.apache.org/licenses/LICENSE-2.0
 8 | #
 9 | # Unless required by applicable law or agreed to in writing, software
10 | # distributed under the License is distributed on an "AS IS" BASIS,
11 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 | # See the License for the specific language governing permissions and
13 | # limitations under the License.
14 | 


--------------------------------------------------------------------------------
/ppocr/data/imaug/frost_img/frost1.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/ppocr/data/imaug/frost_img/frost1.jpg


--------------------------------------------------------------------------------
/ppocr/data/imaug/frost_img/frost2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/ppocr/data/imaug/frost_img/frost2.png


--------------------------------------------------------------------------------
/ppocr/data/imaug/frost_img/frost3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/ppocr/data/imaug/frost_img/frost3.png


--------------------------------------------------------------------------------
/ppocr/data/imaug/frost_img/frost4.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/ppocr/data/imaug/frost_img/frost4.jpg


--------------------------------------------------------------------------------
/ppocr/data/imaug/frost_img/frost5.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/ppocr/data/imaug/frost_img/frost5.jpg


--------------------------------------------------------------------------------
/ppocr/data/imaug/frost_img/frost6.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/ppocr/data/imaug/frost_img/frost6.jpg


--------------------------------------------------------------------------------
/ppocr/ext_op/__init__.py:
--------------------------------------------------------------------------------
1 | from .roi_align_rotated.roi_align_rotated import RoIAlignRotated
2 | 


--------------------------------------------------------------------------------
/ppocr/postprocess/pse_postprocess/pse/README.md:
--------------------------------------------------------------------------------
1 | ## 编译
2 | This code is refer from:
3 | https://github.com/whai362/PSENet/blob/python3/models/post_processing/pse
4 | ```python
5 | python3 setup.py build_ext --inplace
6 | ```
7 | 


--------------------------------------------------------------------------------
/ppocr/postprocess/pse_postprocess/pse/setup.py:
--------------------------------------------------------------------------------
 1 | from distutils.core import setup, Extension
 2 | from Cython.Build import cythonize
 3 | import numpy
 4 | 
 5 | setup(
 6 |     ext_modules=cythonize(
 7 |         Extension(
 8 |             "pse",
 9 |             sources=["pse.pyx"],
10 |             language="c++",
11 |             include_dirs=[numpy.get_include()],
12 |             library_dirs=[],
13 |             libraries=[],
14 |             extra_compile_args=["-O3"],
15 |             extra_link_args=[],
16 |         )
17 |     )
18 | )
19 | 


--------------------------------------------------------------------------------
/ppocr/utils/EN_symbol_dict.txt:
--------------------------------------------------------------------------------
 1 | 0
 2 | 1
 3 | 2
 4 | 3
 5 | 4
 6 | 5
 7 | 6
 8 | 7
 9 | 8
10 | 9
11 | a
12 | b
13 | c
14 | d
15 | e
16 | f
17 | g
18 | h
19 | i
20 | j
21 | k
22 | l
23 | m
24 | n
25 | o
26 | p
27 | q
28 | r
29 | s
30 | t
31 | u
32 | v
33 | w
34 | x
35 | y
36 | z
37 | A
38 | B
39 | C
40 | D
41 | E
42 | F
43 | G
44 | H
45 | I
46 | J
47 | K
48 | L
49 | M
50 | N
51 | O
52 | P
53 | Q
54 | R
55 | S
56 | T
57 | U
58 | V
59 | W
60 | X
61 | Y
62 | Z
63 | !
64 | "
65 | #
66 | $
67 | %
68 | &
69 | '
70 | (
71 | )
72 | *
73 | +
74 | ,
75 | -
76 | .
77 | /
78 | :
79 | ;
80 | <
81 | =
82 | >
83 | ?
84 | @
85 | [
86 | \
87 | ]
88 | ^
89 | _
90 | `
91 | {
92 | |
93 | }
94 | ~
95 | 


--------------------------------------------------------------------------------
/ppocr/utils/__init__.py:
--------------------------------------------------------------------------------
 1 | # Copyright (c) 2020 PaddlePaddle Authors. All Rights Reserved.
 2 | #
 3 | # Licensed under the Apache License, Version 2.0 (the "License");
 4 | # you may not use this file except in compliance with the License.
 5 | # You may obtain a copy of the License at
 6 | #
 7 | #     http://www.apache.org/licenses/LICENSE-2.0
 8 | #
 9 | # Unless required by applicable law or agreed to in writing, software
10 | # distributed under the License is distributed on an "AS IS" BASIS,
11 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 | # See the License for the specific language governing permissions and
13 | # limitations under the License.
14 | 


--------------------------------------------------------------------------------
/ppocr/utils/dict/README.md:
--------------------------------------------------------------------------------
1 | ## Dictionary and Corpus
2 | 
3 | Dictionary files (usually character level vocabulary) are included here for easier configuration. Corpus contributed by OSS contributors are listed here, please respect copyrights when using them at your own risk.
4 | 
5 | - Burmese corpus:  https://github.com/1chimaruGin/BurmeseCorpus
6 | 


--------------------------------------------------------------------------------
/ppocr/utils/dict/bengali_dict.txt:
--------------------------------------------------------------------------------
 1 | হ
 2 | থ
 3 | শ
 4 | ৫
 5 | ক
 6 | ও
 7 | য
 8 | ০
 9 | গ
10 | দ
11 | ড়
12 | খ
13 | য়
14 | ঋ
15 | ন
16 | অ
17 | ৪
18 | এ
19 | ব
20 | ঠ
21 | ঢ
22 | ৭
23 | ৯
24 | ধ
25 | ঙ
26 | ট
27 | ঝ
28 | ৎ
29 | ণ
30 | ত
31 | র
32 | ২
33 | চ
34 | ঌ
35 | ড
36 | ৬
37 | ঔ
38 | প
39 | ভ
40 | ম
41 | ঢ়
42 | ঈ
43 | ৮
44 | ঘ
45 | ১
46 | ষ
47 | ৩
48 | ফ
49 | ছ
50 | ল
51 | জ
52 | আ
53 | ।
54 | ঊ
55 | ই
56 | স
57 | ঐ
58 | উ
59 | ঞ
60 | া
61 | ্
62 | ু
63 | ী
64 | ে
65 | ং
66 | ি
67 | ়
68 | ঁ
69 | ৃ
70 | ো
71 | ূ
72 | ৈ
73 | ৌ
74 | ঃ
75 | 


--------------------------------------------------------------------------------
/ppocr/utils/dict/confuse.pkl:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/ppocr/utils/dict/confuse.pkl


--------------------------------------------------------------------------------
/ppocr/utils/dict/en_dict.txt:
--------------------------------------------------------------------------------
 1 | 0
 2 | 1
 3 | 2
 4 | 3
 5 | 4
 6 | 5
 7 | 6
 8 | 7
 9 | 8
10 | 9
11 | a
12 | b
13 | c
14 | d
15 | e
16 | f
17 | g
18 | h
19 | i
20 | j
21 | k
22 | l
23 | m
24 | n
25 | o
26 | p
27 | q
28 | r
29 | s
30 | t
31 | u
32 | v
33 | w
34 | x
35 | y
36 | z
37 | A
38 | B
39 | C
40 | D
41 | E
42 | F
43 | G
44 | H
45 | I
46 | J
47 | K
48 | L
49 | M
50 | N
51 | O
52 | P
53 | Q
54 | R
55 | S
56 | T
57 | U
58 | V
59 | W
60 | X
61 | Y
62 | Z
63 |  
64 | 


--------------------------------------------------------------------------------
/ppocr/utils/dict/gujarati_dict.txt:
--------------------------------------------------------------------------------
 1 | અ
 2 | આ
 3 | ઇ
 4 | ઈ
 5 | ઉ
 6 | ઊ
 7 | ઋ
 8 | ઌ
 9 | એ
10 | ઐ
11 | ઓ
12 | ઔ
13 | અં
14 | અઃ
15 | ક
16 | ખ
17 | ગ
18 | ઘ
19 | ઙ
20 | ચ
21 | છ
22 | જ
23 | ઝ
24 | ઞ
25 | ટ
26 | ઠ
27 | ડ
28 | ઢ
29 | ણ
30 | ત
31 | થ
32 | દ
33 | ધ
34 | ન
35 | પ
36 | ફ
37 | બ
38 | ભ
39 | મ
40 | ય
41 | ર
42 | લ
43 | ળ
44 | વ
45 | શ
46 | ષ
47 | સ
48 | હ
49 | 


--------------------------------------------------------------------------------
/ppocr/utils/dict/kazakh_dict.txt:
--------------------------------------------------------------------------------
 1 | А
 2 | Ә
 3 | Б
 4 | В
 5 | Г
 6 | Ғ
 7 | Д
 8 | Е
 9 | Ё
10 | Ж
11 | З
12 | И
13 | Й
14 | К
15 | Қ
16 | Л
17 | М
18 | Н
19 | Ң
20 | О
21 | Ө
22 | П
23 | Р
24 | С
25 | Т
26 | У
27 | Ұ
28 | Ү
29 | Ф
30 | Х
31 | Һ
32 | Ц
33 | Ч
34 | Ш
35 | Щ
36 | Ъ
37 | Ы
38 | І
39 | Ь
40 | Э
41 | Ю
42 | Я
43 | 


--------------------------------------------------------------------------------
/ppocr/utils/dict/kie_dict/xfund_class_list.txt:
--------------------------------------------------------------------------------
1 | OTHER
2 | QUESTION
3 | ANSWER
4 | HEADER
5 | 


--------------------------------------------------------------------------------
/ppocr/utils/dict/layout_dict/layout_cdla_dict.txt:
--------------------------------------------------------------------------------
 1 | text
 2 | title
 3 | figure
 4 | figure_caption
 5 | table
 6 | table_caption
 7 | header
 8 | footer
 9 | reference
10 | equation
11 | 


--------------------------------------------------------------------------------
/ppocr/utils/dict/layout_dict/layout_publaynet_dict.txt:
--------------------------------------------------------------------------------
1 | text
2 | title
3 | list
4 | table
5 | figure
6 | 


--------------------------------------------------------------------------------
/ppocr/utils/dict/layout_dict/layout_table_dict.txt:
--------------------------------------------------------------------------------
1 | table
2 | 


--------------------------------------------------------------------------------
/ppocr/utils/dict/oc_dict.txt:
--------------------------------------------------------------------------------
 1 | o
 2 | c
 3 | _
 4 | i
 5 | m
 6 | g
 7 | /
 8 | 2
 9 | 0
10 | I
11 | L
12 | S
13 | V
14 | R
15 | C
16 | 1
17 | v
18 | a
19 | l
20 | 4
21 | 3
22 | .
23 | j
24 | p	
25 | r
26 | e
27 | è
28 | t
29 | 9
30 | 7
31 | 5
32 | 8
33 | n
34 | '
35 | b
36 | s
37 | 6
38 | q
39 | u
40 | á
41 | d
42 | ò
43 | à
44 | h
45 | z
46 | f
47 | ï
48 | í
49 | A
50 | ç
51 | x
52 | ó
53 | é
54 | P
55 | O
56 | Ò
57 | ü
58 | k
59 | À
60 | F
61 | -
62 | ú
63 | ­
64 | æ
65 | Á
66 | D
67 | E
68 | w
69 | K
70 | T
71 | N
72 | y
73 | U
74 | Z
75 | G
76 | B
77 | J
78 | H
79 | M
80 | W
81 | Y
82 | X
83 | Q
84 | %
85 | $
86 | ,
87 | @
88 | &
89 | !
90 | :
91 | (
92 | #
93 | ?
94 | +
95 | É
96 |  
97 | 


--------------------------------------------------------------------------------
/ppocr/utils/dict/parseq_dict.txt:
--------------------------------------------------------------------------------
 1 | 0
 2 | 1
 3 | 2
 4 | 3
 5 | 4
 6 | 5
 7 | 6
 8 | 7
 9 | 8
10 | 9
11 | a
12 | b
13 | c
14 | d
15 | e
16 | f
17 | g
18 | h
19 | i
20 | j
21 | k
22 | l
23 | m
24 | n
25 | o
26 | p
27 | q
28 | r
29 | s
30 | t
31 | u
32 | v
33 | w
34 | x
35 | y
36 | z
37 | A
38 | B
39 | C
40 | D
41 | E
42 | F
43 | G
44 | H
45 | I
46 | J
47 | K
48 | L
49 | M
50 | N
51 | O
52 | P
53 | Q
54 | R
55 | S
56 | T
57 | U
58 | V
59 | W
60 | X
61 | Y
62 | Z
63 | !
64 | "
65 | #
66 | $
67 | %
68 | &
69 | '
70 | (
71 | )
72 | *
73 | +
74 | ,
75 | -
76 | .
77 | /
78 | :
79 | ;
80 | <
81 | =
82 | >
83 | ?
84 | @
85 | [
86 | \
87 | ]
88 | ^
89 | _
90 | `
91 | {
92 | |
93 | }
94 | ~
95 | 


--------------------------------------------------------------------------------
/ppocr/utils/dict/rs_dict.txt:
--------------------------------------------------------------------------------
 1 | r
 2 | s
 3 | _
 4 | i
 5 | m
 6 | g
 7 | /
 8 | 1
 9 | I
10 | L
11 | S
12 | V
13 | R
14 | C
15 | 2
16 | 0
17 | v
18 | a
19 | l
20 | 7
21 | 5
22 | 8
23 | 6
24 | .
25 | j
26 | p
27 | 	
28 | t
29 | d
30 | 9
31 | 3
32 | e
33 | š
34 | 4
35 | k
36 | u
37 | ć
38 | c
39 | n
40 | đ
41 | o
42 | z
43 | č
44 | b
45 | ž
46 | f
47 | Z
48 | T
49 | h
50 | M
51 | F
52 | O
53 | Š
54 | B
55 | H
56 | A
57 | E
58 | Đ
59 | Ž
60 | D
61 | P
62 | G
63 | Č
64 | K
65 | U
66 | N
67 | J
68 | Ć
69 | w
70 | y
71 | W
72 | x
73 | Y
74 | X
75 | q
76 | Q
77 | #
78 | &
79 | $
80 | ,
81 | -
82 | %
83 | '
84 | @
85 | !
86 | :
87 | ?
88 | (
89 | É
90 | é
91 | +
92 | 


--------------------------------------------------------------------------------
/ppocr/utils/dict/spin_dict.txt:
--------------------------------------------------------------------------------
 1 | 0
 2 | 1
 3 | 2
 4 | 3
 5 | 4
 6 | 5
 7 | 6
 8 | 7
 9 | 8
10 | 9
11 | a
12 | b
13 | c
14 | d
15 | e
16 | f
17 | g
18 | h
19 | i
20 | j
21 | k
22 | l
23 | m
24 | n
25 | o
26 | p
27 | q
28 | r
29 | s
30 | t
31 | u
32 | v
33 | w
34 | x
35 | y
36 | z
37 | :
38 | (
39 | '
40 | -
41 | ,
42 | %
43 | >
44 | .
45 | [
46 | ?
47 | )
48 | "
49 | =
50 | _
51 | *
52 | ]
53 | ;
54 | &
55 | +
56 | $
57 | @
58 | /
59 | |
60 | !
61 | <
62 | #
63 | `
64 | {
65 | ~
66 | \
67 | }
68 | ^
69 | 


--------------------------------------------------------------------------------
/ppocr/utils/dict/table_master_structure_dict.txt:
--------------------------------------------------------------------------------
 1 | <thead>
 2 | <tr>
 3 | <td></td>
 4 | </tr>
 5 | </thead>
 6 | <tbody>
 7 | <eb></eb>
 8 | </tbody>
 9 | <td
10 |  colspan="5"
11 | >
12 | </td>
13 |  colspan="2"
14 |  colspan="3"
15 | <eb2></eb2>
16 | <eb1></eb1>
17 |  rowspan="2"
18 |  colspan="4"
19 |  colspan="6"
20 |  rowspan="3"
21 |  colspan="9"
22 |  colspan="10"
23 |  colspan="7"
24 |  rowspan="4"
25 |  rowspan="5"
26 |  rowspan="9"
27 |  colspan="8"
28 |  rowspan="8"
29 |  rowspan="6"
30 |  rowspan="7"
31 |  rowspan="10"
32 | <eb3></eb3>
33 | <eb4></eb4>
34 | <eb5></eb5>
35 | <eb6></eb6>
36 | <eb7></eb7>
37 | <eb8></eb8>
38 | <eb9></eb9>
39 | <eb10></eb10>
40 | 


--------------------------------------------------------------------------------
/ppocr/utils/dict/table_structure_dict.txt:
--------------------------------------------------------------------------------
 1 | <thead>
 2 | <tr>
 3 | <td>
 4 | </td>
 5 | </tr>
 6 | </thead>
 7 | <tbody>
 8 | </tbody>
 9 | <td
10 |  colspan="5"
11 | >
12 |  colspan="2"
13 |  colspan="3"
14 |  rowspan="2"
15 |  colspan="4"
16 |  colspan="6"
17 |  rowspan="3"
18 |  colspan="9"
19 |  colspan="10"
20 |  colspan="7"
21 |  rowspan="4"
22 |  rowspan="5"
23 |  rowspan="9"
24 |  colspan="8"
25 |  rowspan="8"
26 |  rowspan="6"
27 |  rowspan="7"
28 |  rowspan="10"
29 | 


--------------------------------------------------------------------------------
/ppocr/utils/dict/th_dict.txt:
--------------------------------------------------------------------------------
 1 | ก
 2 | ข
 3 | ฃ
 4 | ค
 5 | ฅ
 6 | ฆ
 7 | ง
 8 | จ
 9 | ฉ
10 | ช
11 | ซ
12 | ฌ
13 | ญ
14 | ฎ
15 | ฏ
16 | ฐ
17 | ฑ
18 | ฒ
19 | ณ
20 | ด
21 | ต
22 | ถ
23 | ท
24 | ธ
25 | น
26 | บ
27 | ป
28 | ผ
29 | ฝ
30 | พ
31 | ฟ
32 | ภ
33 | ม
34 | ย
35 | ร
36 | ล
37 | ว
38 | ศ
39 | ษ
40 | ส
41 | ห
42 | ฬ
43 | อ
44 | ฮ
45 | ะ
46 | ั
47 | า
48 | ำ
49 | ิ
50 | ี
51 | ึ
52 | ื
53 | ุ
54 | ู
55 | เ
56 | แ
57 | โ
58 | ใ
59 | ไ
60 | ็
61 | ่
62 | ้
63 | ๊
64 | ๋
65 | ์
66 | ๐
67 | ๑
68 | ๒
69 | ๓
70 | ๔
71 | ๕
72 | ๖
73 | ๗
74 | ๘
75 | ๙
76 | ฯ
77 | ๆ
78 | ฤ
79 | ฤา
80 | ฦ
81 | ฦา
82 | 


--------------------------------------------------------------------------------
/ppocr/utils/dict90.txt:
--------------------------------------------------------------------------------
 1 | 0
 2 | 1
 3 | 2
 4 | 3
 5 | 4
 6 | 5
 7 | 6
 8 | 7
 9 | 8
10 | 9
11 | a
12 | b
13 | c
14 | d
15 | e
16 | f
17 | g
18 | h
19 | i
20 | j
21 | k
22 | l
23 | m
24 | n
25 | o
26 | p
27 | q
28 | r
29 | s
30 | t
31 | u
32 | v
33 | w
34 | x
35 | y
36 | z
37 | A
38 | B
39 | C
40 | D
41 | E
42 | F
43 | G
44 | H
45 | I
46 | J
47 | K
48 | L
49 | M
50 | N
51 | O
52 | P
53 | Q
54 | R
55 | S
56 | T
57 | U
58 | V
59 | W
60 | X
61 | Y
62 | Z
63 | !
64 | "
65 | #
66 | $
67 | %
68 | &
69 | '
70 | (
71 | )
72 | *
73 | +
74 | ,
75 | -
76 | .
77 | /
78 | :
79 | ;
80 | <
81 | =
82 | >
83 | ?
84 | @
85 | [
86 | \
87 | ]
88 | _
89 | `
90 | ~
91 | 


--------------------------------------------------------------------------------
/ppocr/utils/en_dict.txt:
--------------------------------------------------------------------------------
 1 | 0
 2 | 1
 3 | 2
 4 | 3
 5 | 4
 6 | 5
 7 | 6
 8 | 7
 9 | 8
10 | 9
11 | :
12 | ;
13 | <
14 | =
15 | >
16 | ?
17 | @
18 | A
19 | B
20 | C
21 | D
22 | E
23 | F
24 | G
25 | H
26 | I
27 | J
28 | K
29 | L
30 | M
31 | N
32 | O
33 | P
34 | Q
35 | R
36 | S
37 | T
38 | U
39 | V
40 | W
41 | X
42 | Y
43 | Z
44 | [
45 | \
46 | ]
47 | ^
48 | _
49 | `
50 | a
51 | b
52 | c
53 | d
54 | e
55 | f
56 | g
57 | h
58 | i
59 | j
60 | k
61 | l
62 | m
63 | n
64 | o
65 | p
66 | q
67 | r
68 | s
69 | t
70 | u
71 | v
72 | w
73 | x
74 | y
75 | z
76 | {
77 | |
78 | }
79 | ~
80 | !
81 | "
82 | #
83 | $
84 | %
85 | &
86 | '
87 | (
88 | )
89 | *
90 | +
91 | ,
92 | -
93 | .
94 | /
95 |  
96 | 


--------------------------------------------------------------------------------
/ppocr/utils/ic15_dict.txt:
--------------------------------------------------------------------------------
 1 | 0
 2 | 1
 3 | 2
 4 | 3
 5 | 4
 6 | 5
 7 | 6
 8 | 7
 9 | 8
10 | 9
11 | a
12 | b
13 | c
14 | d
15 | e
16 | f
17 | g
18 | h
19 | i
20 | j
21 | k
22 | l
23 | m
24 | n
25 | o
26 | p
27 | q
28 | r
29 | s
30 | t
31 | u
32 | v
33 | w
34 | x
35 | y
36 | z
37 | 


--------------------------------------------------------------------------------
/ppocr/utils/loggers/__init__.py:
--------------------------------------------------------------------------------
1 | from .wandb_logger import WandbLogger
2 | from .loggers import Loggers
3 | 


--------------------------------------------------------------------------------
/ppocr/utils/loggers/base_logger.py:
--------------------------------------------------------------------------------
 1 | import os
 2 | from abc import ABC, abstractmethod
 3 | 
 4 | 
 5 | class BaseLogger(ABC):
 6 |     def __init__(self, save_dir):
 7 |         self.save_dir = save_dir
 8 |         os.makedirs(self.save_dir, exist_ok=True)
 9 | 
10 |     @abstractmethod
11 |     def log_metrics(self, metrics, prefix=None):
12 |         pass
13 | 
14 |     @abstractmethod
15 |     def close(self):
16 |         pass
17 | 


--------------------------------------------------------------------------------
/ppocr/utils/loggers/loggers.py:
--------------------------------------------------------------------------------
 1 | from .wandb_logger import WandbLogger
 2 | 
 3 | 
 4 | class Loggers(object):
 5 |     def __init__(self, loggers):
 6 |         super().__init__()
 7 |         self.loggers = loggers
 8 | 
 9 |     def log_metrics(self, metrics, prefix=None, step=None):
10 |         for logger in self.loggers:
11 |             logger.log_metrics(metrics, prefix=prefix, step=step)
12 | 
13 |     def log_model(self, is_best, prefix, metadata=None):
14 |         for logger in self.loggers:
15 |             logger.log_model(is_best=is_best, prefix=prefix, metadata=metadata)
16 | 
17 |     def close(self):
18 |         for logger in self.loggers:
19 |             logger.close()
20 | 


--------------------------------------------------------------------------------
/ppstructure/__init__.py:
--------------------------------------------------------------------------------
 1 | # copyright (c) 2020 PaddlePaddle Authors. All Rights Reserve.
 2 | #
 3 | # Licensed under the Apache License, Version 2.0 (the "License");
 4 | # you may not use this file except in compliance with the License.
 5 | # You may obtain a copy of the License at
 6 | #
 7 | #    http://www.apache.org/licenses/LICENSE-2.0
 8 | #
 9 | # Unless required by applicable law or agreed to in writing, software
10 | # distributed under the License is distributed on an "AS IS" BASIS,
11 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 | # See the License for the specific language governing permissions and
13 | # limitations under the License.
14 | 


--------------------------------------------------------------------------------
/ppstructure/kie/requirements.txt:
--------------------------------------------------------------------------------
1 | sentencepiece
2 | yacs
3 | seqeval
4 | pypandoc
5 | attrdict3
6 | python_docx
7 | paddlenlp==2.5.2
8 | 


--------------------------------------------------------------------------------
/ppstructure/layout/__init__.py:
--------------------------------------------------------------------------------
 1 | # copyright (c) 2020 PaddlePaddle Authors. All Rights Reserve.
 2 | #
 3 | # Licensed under the Apache License, Version 2.0 (the "License");
 4 | # you may not use this file except in compliance with the License.
 5 | # You may obtain a copy of the License at
 6 | #
 7 | #    http://www.apache.org/licenses/LICENSE-2.0
 8 | #
 9 | # Unless required by applicable law or agreed to in writing, software
10 | # distributed under the License is distributed on an "AS IS" BASIS,
11 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 | # See the License for the specific language governing permissions and
13 | # limitations under the License.
14 | 


--------------------------------------------------------------------------------
/ppstructure/pdf2word/icons/chinese.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/ppstructure/pdf2word/icons/chinese.png


--------------------------------------------------------------------------------
/ppstructure/pdf2word/icons/english.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/ppstructure/pdf2word/icons/english.png


--------------------------------------------------------------------------------
/ppstructure/pdf2word/icons/folder-open.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/ppstructure/pdf2word/icons/folder-open.png


--------------------------------------------------------------------------------
/ppstructure/pdf2word/icons/folder-plus.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/ppstructure/pdf2word/icons/folder-plus.png


--------------------------------------------------------------------------------
/ppstructure/recovery/__init__.py:
--------------------------------------------------------------------------------
 1 | # copyright (c) 2020 PaddlePaddle Authors. All Rights Reserve.
 2 | #
 3 | # Licensed under the Apache License, Version 2.0 (the "License");
 4 | # you may not use this file except in compliance with the License.
 5 | # You may obtain a copy of the License at
 6 | #
 7 | #    http://www.apache.org/licenses/LICENSE-2.0
 8 | #
 9 | # Unless required by applicable law or agreed to in writing, software
10 | # distributed under the License is distributed on an "AS IS" BASIS,
11 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 | # See the License for the specific language governing permissions and
13 | # limitations under the License.
14 | 


--------------------------------------------------------------------------------
/ppstructure/recovery/requirements.txt:
--------------------------------------------------------------------------------
1 | python-docx
2 | beautifulsoup4
3 | fonttools>=4.43.0
4 | fire>=0.3.0
5 | 


--------------------------------------------------------------------------------
/ppstructure/table/__init__.py:
--------------------------------------------------------------------------------
 1 | # copyright (c) 2020 PaddlePaddle Authors. All Rights Reserve.
 2 | #
 3 | # Licensed under the Apache License, Version 2.0 (the "License");
 4 | # you may not use this file except in compliance with the License.
 5 | # You may obtain a copy of the License at
 6 | #
 7 | #    http://www.apache.org/licenses/LICENSE-2.0
 8 | #
 9 | # Unless required by applicable law or agreed to in writing, software
10 | # distributed under the License is distributed on an "AS IS" BASIS,
11 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 | # See the License for the specific language governing permissions and
13 | # limitations under the License.
14 | 


--------------------------------------------------------------------------------
/ppstructure/table/tablepyxl/__init__.py:
--------------------------------------------------------------------------------
 1 | # copyright (c) 2020 PaddlePaddle Authors. All Rights Reserve.
 2 | #
 3 | # Licensed under the Apache License, Version 2.0 (the "License");
 4 | # you may not use this file except in compliance with the License.
 5 | # You may obtain a copy of the License at
 6 | #
 7 | #    http://www.apache.org/licenses/LICENSE-2.0
 8 | #
 9 | # Unless required by applicable law or agreed to in writing, software
10 | # distributed under the License is distributed on an "AS IS" BASIS,
11 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 | # See the License for the specific language governing permissions and
13 | # limitations under the License.
14 | 


--------------------------------------------------------------------------------
/requirements.txt:
--------------------------------------------------------------------------------
 1 | shapely
 2 | scikit-image
 3 | pyclipper
 4 | lmdb
 5 | tqdm
 6 | numpy
 7 | rapidfuzz
 8 | opencv-python
 9 | opencv-contrib-python
10 | cython
11 | Pillow
12 | pyyaml
13 | requests
14 | albumentations
15 | # to be compatible with albumentations
16 | albucore
17 | packaging
18 | 


--------------------------------------------------------------------------------
/test_tipc/configs/PP-OCRv3_mobile_rec/model_linux_gpu_normal_normal_infer_cpp_linux_gpu_cpu.txt:
--------------------------------------------------------------------------------
 1 | ===========================cpp_infer_params===========================
 2 | model_name:PP-OCRv3_mobile_rec
 3 | use_opencv:True
 4 | infer_model:./inference/PP-OCRv3_mobile_rec_infer/
 5 | infer_quant:False
 6 | inference:./deploy/cpp_infer/build/ppocr --rec_img_h=48 --rec_char_dict_path=./ppocr/utils/ppocr_keys_v1.txt
 7 | --use_gpu:True|False
 8 | --enable_mkldnn:False
 9 | --cpu_threads:6
10 | --rec_batch_num:6
11 | --use_tensorrt:False
12 | --precision:fp32
13 | --rec_model_dir:
14 | --image_dir:./inference/rec_inference/
15 | null:null
16 | --benchmark:True
17 | --det:False
18 | --rec:True
19 | --cls:False
20 | --use_angle_cls:False
21 | 


--------------------------------------------------------------------------------
/test_tipc/configs/PP-OCRv3_mobile_rec/model_linux_gpu_normal_normal_paddle2onnx_python_linux_cpu.txt:
--------------------------------------------------------------------------------
 1 | ===========================paddle2onnx_params===========================
 2 | model_name:PP-OCRv3_mobile_rec
 3 | python:python3.7
 4 | 2onnx: paddle2onnx
 5 | --det_model_dir:
 6 | --model_filename:inference.pdmodel
 7 | --params_filename:inference.pdiparams
 8 | --det_save_file:
 9 | --rec_model_dir:./inference/PP-OCRv3_mobile_rec_infer/
10 | --rec_save_file:./inference/rec_v3_onnx/model.onnx
11 | --opset_version:10
12 | --enable_onnx_checker:True
13 | inference:tools/infer/predict_rec.py --rec_image_shape="3,48,320"
14 | --use_gpu:True|False
15 | --det_model_dir:
16 | --rec_model_dir:
17 | --image_dir:./inference/rec_inference/
18 | 


--------------------------------------------------------------------------------
/test_tipc/configs/ch_PP-OCRv2/model_linux_gpu_normal_normal_infer_python_linux_gpu_cpu.txt:
--------------------------------------------------------------------------------
 1 | ===========================ch_PP-OCRv2===========================
 2 | model_name:ch_PP-OCRv2
 3 | python:python3.7
 4 | infer_model:./inference/ch_PP-OCRv2_det_infer/
 5 | infer_export:null
 6 | infer_quant:False
 7 | inference:tools/infer/predict_system.py
 8 | --use_gpu:False|True
 9 | --enable_mkldnn:False
10 | --cpu_threads:6
11 | --rec_batch_num:1
12 | --use_tensorrt:False
13 | --precision:fp32
14 | --det_model_dir:
15 | --image_dir:./inference/ch_det_data_50/all-sum-510/
16 | --rec_model_dir:./inference/ch_PP-OCRv2_rec_infer/
17 | --benchmark:True
18 | null:null
19 | null:null
20 | 


--------------------------------------------------------------------------------
/test_tipc/configs/ch_PP-OCRv2/model_linux_gpu_normal_normal_lite_cpp_arm_cpu.txt:
--------------------------------------------------------------------------------
 1 | ===========================lite_params===========================
 2 | inference:./ocr_db_crnn system
 3 | runtime_device:ARM_CPU
 4 | det_infer_model:ch_PP-OCRv2_det_infer|ch_PP-OCRv2_det_slim_quant_infer
 5 | rec_infer_model:ch_PP-OCRv2_rec_infer|ch_PP-OCRv2_rec_slim_quant_infer
 6 | cls_infer_model:ch_ppocr_mobile_v2.0_cls_infer|ch_ppocr_mobile_v2.0_cls_slim_infer
 7 | --cpu_threads:1|4
 8 | --det_batch_size:1
 9 | --rec_batch_size:1
10 | --image_dir:./test_data/icdar2015_lite/text_localization/ch4_test_images/
11 | --config_dir:./config.txt
12 | --rec_dict_dir:./ppocr_keys_v1.txt
13 | --benchmark:True
14 | 


--------------------------------------------------------------------------------
/test_tipc/configs/ch_PP-OCRv2/model_linux_gpu_normal_normal_lite_cpp_arm_gpu_opencl.txt:
--------------------------------------------------------------------------------
 1 | ===========================lite_params===========================
 2 | inference:./ocr_db_crnn system
 3 | runtime_device:ARM_GPU_OPENCL
 4 | det_infer_model:ch_PP-OCRv2_det_infer|ch_PP-OCRv2_det_slim_quant_infer
 5 | rec_infer_model:ch_PP-OCRv2_rec_infer|ch_PP-OCRv2_rec_slim_quant_infer
 6 | cls_infer_model:ch_ppocr_mobile_v2.0_cls_infer|ch_ppocr_mobile_v2.0_cls_slim_infer
 7 | --cpu_threads:1|4
 8 | --det_batch_size:1
 9 | --rec_batch_size:1
10 | --image_dir:./test_data/icdar2015_lite/text_localization/ch4_test_images/
11 | --config_dir:./config.txt
12 | --rec_dict_dir:./ppocr_keys_v1.txt
13 | --benchmark:True
14 | 


--------------------------------------------------------------------------------
/test_tipc/configs/ch_PP-OCRv2_det/model_linux_gpu_normal_normal_infer_cpp_linux_gpu_cpu.txt:
--------------------------------------------------------------------------------
 1 | ===========================cpp_infer_params===========================
 2 | model_name:ch_PP-OCRv2_det
 3 | use_opencv:True
 4 | infer_model:./inference/ch_PP-OCRv2_det_infer/
 5 | infer_quant:False
 6 | inference:./deploy/cpp_infer/build/ppocr
 7 | --use_gpu:True|False
 8 | --enable_mkldnn:False
 9 | --cpu_threads:6
10 | --rec_batch_num:1
11 | --use_tensorrt:False
12 | --precision:fp32
13 | --det_model_dir:
14 | --image_dir:./inference/ch_det_data_50/all-sum-510/
15 | null:null
16 | --benchmark:True
17 | --det:True
18 | --rec:False
19 | --cls:False
20 | --use_angle_cls:False
21 | 


--------------------------------------------------------------------------------
/test_tipc/configs/ch_PP-OCRv2_det/model_linux_gpu_normal_normal_lite_cpp_arm_cpu.txt:
--------------------------------------------------------------------------------
 1 | ===========================lite_params===========================
 2 | inference:./ocr_db_crnn det
 3 | runtime_device:ARM_CPU
 4 | det_infer_model:ch_PP-OCRv2_det_infer|ch_PP-OCRv2_det_slim_quant_infer
 5 | null:null
 6 | null:null
 7 | --cpu_threads:1|4
 8 | --det_batch_size:1
 9 | null:null
10 | --image_dir:./test_data/icdar2015_lite/text_localization/ch4_test_images/
11 | --config_dir:./config.txt
12 | null:null
13 | --benchmark:True
14 | 


--------------------------------------------------------------------------------
/test_tipc/configs/ch_PP-OCRv2_det/model_linux_gpu_normal_normal_lite_cpp_arm_gpu_opencl.txt:
--------------------------------------------------------------------------------
 1 | ===========================lite_params===========================
 2 | inference:./ocr_db_crnn det
 3 | runtime_device:ARM_GPU_OPENCL
 4 | det_infer_model:ch_PP-OCRv2_det_infer|ch_PP-OCRv2_det_slim_quant_infer
 5 | null:null
 6 | null:null
 7 | --cpu_threads:1|4
 8 | --det_batch_size:1
 9 | null:null
10 | --image_dir:./test_data/icdar2015_lite/text_localization/ch4_test_images/
11 | --config_dir:./config.txt
12 | null:null
13 | --benchmark:True
14 | 


--------------------------------------------------------------------------------
/test_tipc/configs/ch_PP-OCRv2_det/model_linux_gpu_normal_normal_paddle2onnx_python_linux_cpu.txt:
--------------------------------------------------------------------------------
 1 | ===========================paddle2onnx_params===========================
 2 | model_name:ch_PP-OCRv2_det
 3 | python:python3.7
 4 | 2onnx: paddle2onnx
 5 | --det_model_dir:./inference/ch_PP-OCRv2_det_infer/
 6 | --model_filename:inference.pdmodel
 7 | --params_filename:inference.pdiparams
 8 | --det_save_file:./inference/det_v2_onnx/model.onnx
 9 | --rec_model_dir:
10 | --rec_save_file:
11 | --opset_version:10
12 | --enable_onnx_checker:True
13 | inference:tools/infer/predict_det.py
14 | --use_gpu:True|False
15 | --det_model_dir:
16 | --rec_model_dir:
17 | --image_dir:./inference/ch_det_data_50/all-sum-510/
18 | 


--------------------------------------------------------------------------------
/test_tipc/configs/ch_PP-OCRv2_det_KL/model_linux_gpu_normal_normal_infer_cpp_linux_gpu_cpu.txt:
--------------------------------------------------------------------------------
 1 | ===========================cpp_infer_params===========================
 2 | model_name:ch_PP-OCRv2_det_KL
 3 | use_opencv:True
 4 | infer_model:./inference/ch_PP-OCRv2_det_klquant_infer
 5 | infer_quant:False
 6 | inference:./deploy/cpp_infer/build/ppocr
 7 | --use_gpu:True|False
 8 | --enable_mkldnn:False
 9 | --cpu_threads:6
10 | --rec_batch_num:1
11 | --use_tensorrt:False
12 | --precision:fp32
13 | --det_model_dir:
14 | --image_dir:./inference/ch_det_data_50/all-sum-510/
15 | null:null
16 | --benchmark:True
17 | --det:True
18 | --rec:False
19 | --cls:False
20 | --use_angle_cls:False
21 | 


--------------------------------------------------------------------------------
/test_tipc/configs/ch_PP-OCRv2_det_PACT/model_linux_gpu_normal_normal_infer_cpp_linux_gpu_cpu.txt:
--------------------------------------------------------------------------------
 1 | ===========================cpp_infer_params===========================
 2 | model_name:ch_PP-OCRv2_det_PACT
 3 | use_opencv:True
 4 | infer_model:./inference/ch_PP-OCRv2_det_pact_infer
 5 | infer_quant:False
 6 | inference:./deploy/cpp_infer/build/ppocr
 7 | --use_gpu:True|False
 8 | --enable_mkldnn:False
 9 | --cpu_threads:6
10 | --rec_batch_num:1
11 | --use_tensorrt:False
12 | --precision:fp32
13 | --det_model_dir:
14 | --image_dir:./inference/ch_det_data_50/all-sum-510/
15 | null:null
16 | --benchmark:True
17 | --det:True
18 | --rec:False
19 | --cls:False
20 | --use_angle_cls:False
21 | 


--------------------------------------------------------------------------------
/test_tipc/configs/ch_PP-OCRv2_rec/model_linux_gpu_normal_normal_infer_cpp_linux_gpu_cpu.txt:
--------------------------------------------------------------------------------
 1 | ===========================cpp_infer_params===========================
 2 | model_name:ch_PP-OCRv2_rec
 3 | use_opencv:True
 4 | infer_model:./inference/ch_PP-OCRv2_rec_infer/
 5 | infer_quant:False
 6 | inference:./deploy/cpp_infer/build/ppocr --rec_char_dict_path=./ppocr/utils/ppocr_keys_v1.txt --rec_img_h=32
 7 | --use_gpu:True|False
 8 | --enable_mkldnn:False
 9 | --cpu_threads:6
10 | --rec_batch_num:6
11 | --use_tensorrt:False
12 | --precision:fp32
13 | --rec_model_dir:
14 | --image_dir:./inference/rec_inference/
15 | null:null
16 | --benchmark:True
17 | --det:False
18 | --rec:True
19 | --cls:False
20 | --use_angle_cls:False
21 | 


--------------------------------------------------------------------------------
/test_tipc/configs/ch_PP-OCRv2_rec/model_linux_gpu_normal_normal_paddle2onnx_python_linux_cpu.txt:
--------------------------------------------------------------------------------
 1 | ===========================paddle2onnx_params===========================
 2 | model_name:ch_PP-OCRv2_rec
 3 | python:python3.7
 4 | 2onnx: paddle2onnx
 5 | --det_model_dir:
 6 | --model_filename:inference.pdmodel
 7 | --params_filename:inference.pdiparams
 8 | --det_save_file:
 9 | --rec_model_dir:./inference/ch_PP-OCRv2_rec_infer/
10 | --rec_save_file:./inference/rec_v2_onnx/model.onnx
11 | --opset_version:10
12 | --enable_onnx_checker:True
13 | inference:tools/infer/predict_rec.py --rec_image_shape="3,32,320"
14 | --use_gpu:True|False
15 | --det_model_dir:
16 | --rec_model_dir:
17 | --image_dir:./inference/rec_inference/
18 | 


--------------------------------------------------------------------------------
/test_tipc/configs/ch_PP-OCRv3/model_linux_gpu_normal_normal_infer_python_linux_gpu_cpu.txt:
--------------------------------------------------------------------------------
 1 | ===========================ch_PP-OCRv2===========================
 2 | model_name:ch_PP-OCRv3
 3 | python:python3.7
 4 | infer_model:./inference/PP-OCRv3_mobile_det_infer/
 5 | infer_export:null
 6 | infer_quant:False
 7 | inference:tools/infer/predict_system.py --rec_image_shape="3,48,320"
 8 | --use_gpu:False|True
 9 | --enable_mkldnn:False
10 | --cpu_threads:6
11 | --rec_batch_num:1
12 | --use_tensorrt:False
13 | --precision:fp32
14 | --det_model_dir:
15 | --image_dir:./inference/ch_det_data_50/all-sum-510/
16 | --rec_model_dir:./inference/PP-OCRv3_mobile_rec_infer/
17 | --benchmark:True
18 | null:null
19 | null:null
20 | 


--------------------------------------------------------------------------------
/test_tipc/configs/ch_PP-OCRv3/model_linux_gpu_normal_normal_lite_cpp_arm_cpu.txt:
--------------------------------------------------------------------------------
 1 | ===========================lite_params===========================
 2 | inference:./ocr_db_crnn system
 3 | runtime_device:ARM_CPU
 4 | det_infer_model:PP-OCRv3_mobile_det_infer|ch_PP-OCRv3_det_slim_quant_infer
 5 | rec_infer_model:PP-OCRv3_mobile_rec_infer|PP-OCRv3_mobile_rec_slim_quant_infer
 6 | cls_infer_model:ch_ppocr_mobile_v2.0_cls_infer|ch_ppocr_mobile_v2.0_cls_slim_infer
 7 | --cpu_threads:1|4
 8 | --det_batch_size:1
 9 | --rec_batch_size:1
10 | --image_dir:./test_data/icdar2015_lite/text_localization/ch4_test_images/
11 | --config_dir:./config.txt
12 | --rec_dict_dir:./ppocr_keys_v1.txt
13 | --benchmark:True
14 | 


--------------------------------------------------------------------------------
/test_tipc/configs/ch_PP-OCRv3/model_linux_gpu_normal_normal_lite_cpp_arm_gpu_opencl.txt:
--------------------------------------------------------------------------------
 1 | ===========================lite_params===========================
 2 | inference:./ocr_db_crnn system
 3 | runtime_device:ARM_GPU_OPENCL
 4 | det_infer_model:PP-OCRv3_mobile_det_infer|ch_PP-OCRv3_det_slim_quant_infer
 5 | rec_infer_model:PP-OCRv3_mobile_rec_infer|PP-OCRv3_mobile_rec_slim_quant_infer
 6 | cls_infer_model:ch_ppocr_mobile_v2.0_cls_infer|ch_ppocr_mobile_v2.0_cls_slim_infer
 7 | --cpu_threads:1|4
 8 | --det_batch_size:1
 9 | --rec_batch_size:1
10 | --image_dir:./test_data/icdar2015_lite/text_localization/ch4_test_images/
11 | --config_dir:./config.txt
12 | --rec_dict_dir:./ppocr_keys_v1.txt
13 | --benchmark:True
14 | 


--------------------------------------------------------------------------------
/test_tipc/configs/ch_PP-OCRv3_det/model_linux_gpu_normal_normal_infer_cpp_linux_gpu_cpu.txt:
--------------------------------------------------------------------------------
 1 | ===========================cpp_infer_params===========================
 2 | model_name:ch_PP-OCRv3_det
 3 | use_opencv:True
 4 | infer_model:./inference/PP-OCRv3_mobile_det_infer/
 5 | infer_quant:False
 6 | inference:./deploy/cpp_infer/build/ppocr
 7 | --use_gpu:True|False
 8 | --enable_mkldnn:False
 9 | --cpu_threads:6
10 | --rec_batch_num:1
11 | --use_tensorrt:False
12 | --precision:fp32
13 | --det_model_dir:
14 | --image_dir:./inference/ch_det_data_50/all-sum-510/
15 | null:null
16 | --benchmark:True
17 | --det:True
18 | --rec:False
19 | --cls:False
20 | --use_angle_cls:False
21 | 


--------------------------------------------------------------------------------
/test_tipc/configs/ch_PP-OCRv3_det/model_linux_gpu_normal_normal_lite_cpp_arm_cpu.txt:
--------------------------------------------------------------------------------
 1 | ===========================lite_params===========================
 2 | inference:./ocr_db_crnn det
 3 | runtime_device:ARM_CPU
 4 | det_infer_model:PP-OCRv3_mobile_det_infer|ch_PP-OCRv3_det_slim_quant_infer
 5 | null:null
 6 | null:null
 7 | --cpu_threads:1|4
 8 | --det_batch_size:1
 9 | null:null
10 | --image_dir:./test_data/icdar2015_lite/text_localization/ch4_test_images/
11 | --config_dir:./config.txt
12 | null:null
13 | --benchmark:True
14 | 


--------------------------------------------------------------------------------
/test_tipc/configs/ch_PP-OCRv3_det/model_linux_gpu_normal_normal_lite_cpp_arm_gpu_opencl.txt:
--------------------------------------------------------------------------------
 1 | ===========================lite_params===========================
 2 | inference:./ocr_db_crnn det
 3 | runtime_device:ARM_GPU_OPENCL
 4 | det_infer_model:PP-OCRv3_mobile_det_infer|ch_PP-OCRv3_det_slim_quant_infer
 5 | null:null
 6 | null:null
 7 | --cpu_threads:1|4
 8 | --det_batch_size:1
 9 | null:null
10 | --image_dir:./test_data/icdar2015_lite/text_localization/ch4_test_images/
11 | --config_dir:./config.txt
12 | null:null
13 | --benchmark:True
14 | 


--------------------------------------------------------------------------------
/test_tipc/configs/ch_PP-OCRv3_det/model_linux_gpu_normal_normal_paddle2onnx_python_linux_cpu.txt:
--------------------------------------------------------------------------------
 1 | ===========================paddle2onnx_params===========================
 2 | model_name:ch_PP-OCRv3_det
 3 | python:python3.7
 4 | 2onnx: paddle2onnx
 5 | --det_model_dir:./inference/PP-OCRv3_mobile_det_infer/
 6 | --model_filename:inference.pdmodel
 7 | --params_filename:inference.pdiparams
 8 | --det_save_file:./inference/det_v3_onnx/model.onnx
 9 | --rec_model_dir:
10 | --rec_save_file:
11 | --opset_version:10
12 | --enable_onnx_checker:True
13 | inference:tools/infer/predict_det.py
14 | --use_gpu:True|False
15 | --det_model_dir:
16 | --rec_model_dir:
17 | --image_dir:./inference/ch_det_data_50/all-sum-510/
18 | 


--------------------------------------------------------------------------------
/test_tipc/configs/ch_PP-OCRv3_det_KL/model_linux_gpu_normal_normal_infer_cpp_linux_gpu_cpu.txt:
--------------------------------------------------------------------------------
 1 | ===========================cpp_infer_params===========================
 2 | model_name:ch_PP-OCRv3_det_KL
 3 | use_opencv:True
 4 | infer_model:./inference/ch_PP-OCRv3_det_klquant_infer
 5 | infer_quant:False
 6 | inference:./deploy/cpp_infer/build/ppocr
 7 | --use_gpu:True|False
 8 | --enable_mkldnn:False
 9 | --cpu_threads:6
10 | --rec_batch_num:1
11 | --use_tensorrt:False
12 | --precision:fp32
13 | --det_model_dir:
14 | --image_dir:./inference/ch_det_data_50/all-sum-510/
15 | null:null
16 | --benchmark:True
17 | --det:True
18 | --rec:False
19 | --cls:False
20 | --use_angle_cls:False
21 | 


--------------------------------------------------------------------------------
/test_tipc/configs/ch_PP-OCRv3_det_PACT/model_linux_gpu_normal_normal_infer_cpp_linux_gpu_cpu.txt:
--------------------------------------------------------------------------------
 1 | ===========================cpp_infer_params===========================
 2 | model_name:ch_PP-OCRv3_det_PACT
 3 | use_opencv:True
 4 | infer_model:./inference/ch_PP-OCRv3_det_pact_infer
 5 | infer_quant:False
 6 | inference:./deploy/cpp_infer/build/ppocr
 7 | --use_gpu:True|False
 8 | --enable_mkldnn:False
 9 | --cpu_threads:6
10 | --rec_batch_num:1
11 | --use_tensorrt:False
12 | --precision:fp32
13 | --det_model_dir:
14 | --image_dir:./inference/ch_det_data_50/all-sum-510/
15 | null:null
16 | --benchmark:True
17 | --det:True
18 | --rec:False
19 | --cls:False
20 | --use_angle_cls:False
21 | 


--------------------------------------------------------------------------------
/test_tipc/configs/ch_ppocr_mobile_v2_0/model_linux_gpu_normal_normal_infer_python_linux_gpu_cpu.txt:
--------------------------------------------------------------------------------
 1 | ===========================ch_ppocr_mobile_v2.0===========================
 2 | model_name:ch_ppocr_mobile_v2_0
 3 | python:python3.7
 4 | infer_model:./inference/ch_ppocr_mobile_v2.0_det_infer/
 5 | infer_export:null
 6 | infer_quant:False
 7 | inference:tools/infer/predict_system.py
 8 | --use_gpu:False|True
 9 | --enable_mkldnn:False
10 | --cpu_threads:6
11 | --rec_batch_num:1
12 | --use_tensorrt:False
13 | --precision:fp32
14 | --det_model_dir:
15 | --image_dir:./inference/ch_det_data_50/all-sum-510/
16 | --rec_model_dir:./inference/ch_ppocr_mobile_v2.0_rec_infer/
17 | --benchmark:True
18 | null:null
19 | null:null
20 | 


--------------------------------------------------------------------------------
/test_tipc/configs/ch_ppocr_mobile_v2_0/model_linux_gpu_normal_normal_lite_cpp_arm_cpu.txt:
--------------------------------------------------------------------------------
 1 | ===========================lite_params===========================
 2 | inference:./ocr_db_crnn system
 3 | runtime_device:ARM_CPU
 4 | det_infer_model:ch_ppocr_mobile_v2.0_det_infer|ch_ppocr_db_mobile_v2.0_det_quant_infer
 5 | rec_infer_model:ch_ppocr_mobile_v2.0_rec_infer|ch_ppocr_mobile_v2.0_rec_slim_infer
 6 | cls_infer_model:ch_ppocr_mobile_v2.0_cls_infer|ch_ppocr_mobile_v2.0_cls_slim_infer
 7 | --cpu_threads:1|4
 8 | --det_batch_size:1
 9 | --rec_batch_size:1
10 | --image_dir:./test_data/icdar2015_lite/text_localization/ch4_test_images/
11 | --config_dir:./config.txt
12 | --rec_dict_dir:./ppocr_keys_v1.txt
13 | --benchmark:True
14 | 


--------------------------------------------------------------------------------
/test_tipc/configs/ch_ppocr_mobile_v2_0_det/model_linux_gpu_normal_normal_infer_cpp_linux_gpu_cpu.txt:
--------------------------------------------------------------------------------
 1 | ===========================cpp_infer_params===========================
 2 | model_name:ch_ppocr_mobile_v2_0_det
 3 | use_opencv:True
 4 | infer_model:./inference/ch_ppocr_mobile_v2.0_det_infer/
 5 | infer_quant:False
 6 | inference:./deploy/cpp_infer/build/ppocr
 7 | --use_gpu:True|False
 8 | --enable_mkldnn:False
 9 | --cpu_threads:6
10 | --rec_batch_num:1
11 | --use_tensorrt:False
12 | --precision:fp32
13 | --det_model_dir:
14 | --image_dir:./inference/ch_det_data_50/all-sum-510/
15 | null:null
16 | --benchmark:True
17 | --det:True
18 | --rec:False
19 | --cls:False
20 | --use_angle_cls:False
21 | 


--------------------------------------------------------------------------------
/test_tipc/configs/ch_ppocr_mobile_v2_0_det/model_linux_gpu_normal_normal_infer_python_jetson.txt:
--------------------------------------------------------------------------------
 1 | ===========================infer_params===========================
 2 | model_name:ch_ppocr_mobile_v2_0_det
 3 | python:python
 4 | infer_model:./inference/ch_ppocr_mobile_v2.0_det_infer
 5 | infer_export:null
 6 | infer_quant:False
 7 | inference:tools/infer/predict_det.py
 8 | --use_gpu:True|False
 9 | --enable_mkldnn:False
10 | --cpu_threads:6
11 | --rec_batch_num:1
12 | --use_tensorrt:False
13 | --precision:fp32
14 | --det_model_dir:
15 | --image_dir:./inference/ch_det_data_50/all-sum-510/
16 | null:null
17 | --benchmark:True
18 | null:null
19 | 


--------------------------------------------------------------------------------
/test_tipc/configs/ch_ppocr_mobile_v2_0_det/model_linux_gpu_normal_normal_lite_cpp_arm_cpu.txt:
--------------------------------------------------------------------------------
 1 | ===========================lite_params===========================
 2 | inference:./ocr_db_crnn det
 3 | runtime_device:ARM_CPU
 4 | det_infer_model:ch_ppocr_mobile_v2.0_det_infer|ch_ppocr_db_mobile_v2.0_det_quant_infer
 5 | null:null
 6 | null:null
 7 | --cpu_threads:1|4
 8 | --det_batch_size:1
 9 | null:null
10 | --image_dir:./test_data/icdar2015_lite/text_localization/ch4_test_images/
11 | --config_dir:./config.txt
12 | null:null
13 | --benchmark:True
14 | 


--------------------------------------------------------------------------------
/test_tipc/configs/ch_ppocr_mobile_v2_0_det/model_linux_gpu_normal_normal_lite_cpp_arm_gpu_opencl.txt:
--------------------------------------------------------------------------------
 1 | ===========================lite_params===========================
 2 | inference:./ocr_db_crnn det
 3 | runtime_device:ARM_GPU_OPENCL
 4 | det_infer_model:ch_ppocr_mobile_v2.0_det_infer|ch_ppocr_db_mobile_v2.0_det_quant_infer
 5 | null:null
 6 | null:null
 7 | --cpu_threads:1|4
 8 | --det_batch_size:1
 9 | null:null
10 | --image_dir:./test_data/icdar2015_lite/text_localization/ch4_test_images/
11 | --config_dir:./config.txt
12 | null:null
13 | --benchmark:True
14 | 


--------------------------------------------------------------------------------
/test_tipc/configs/ch_ppocr_mobile_v2_0_det/train_linux_dcu_normal_normal_infer_python_dcu.txt:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/test_tipc/configs/ch_ppocr_mobile_v2_0_det/train_linux_dcu_normal_normal_infer_python_dcu.txt


--------------------------------------------------------------------------------
/test_tipc/configs/ch_ppocr_mobile_v2_0_det_KL/model_linux_gpu_normal_normal_infer_cpp_linux_gpu_cpu.txt:
--------------------------------------------------------------------------------
 1 | ===========================cpp_infer_params===========================
 2 | model_name:ch_ppocr_mobile_v2_0_det_KL
 3 | use_opencv:True
 4 | infer_model:./inference/ch_ppocr_mobile_v2.0_det_klquant_infer
 5 | infer_quant:False
 6 | inference:./deploy/cpp_infer/build/ppocr
 7 | --use_gpu:True|False
 8 | --enable_mkldnn:False
 9 | --cpu_threads:6
10 | --rec_batch_num:1
11 | --use_tensorrt:False
12 | --precision:fp32
13 | --det_model_dir:
14 | --image_dir:./inference/ch_det_data_50/all-sum-510/
15 | null:null
16 | --benchmark:True
17 | --det:True
18 | --rec:False
19 | --cls:False
20 | --use_angle_cls:False
21 | 


--------------------------------------------------------------------------------
/test_tipc/configs/ch_ppocr_mobile_v2_0_det_KL/model_linux_gpu_normal_normal_infer_python_mac_cpu.txt:
--------------------------------------------------------------------------------
 1 | ===========================kl_quant_params===========================
 2 | infer_model:./inference/ch_ppocr_mobile_v2.0_det_infer/
 3 | infer_export:deploy/slim/quantization/quant_kl.py -c configs/det/ch_ppocr_v2.0/ch_det_mv3_db_v2.0.yml -o
 4 | infer_quant:True
 5 | inference:tools/infer/predict_det.py
 6 | --use_gpu:False
 7 | --enable_mkldnn:False
 8 | --cpu_threads:1|6
 9 | --rec_batch_num:1
10 | --use_tensorrt:False
11 | --precision:int8
12 | --det_model_dir:
13 | --image_dir:./inference/ch_det_data_50/all-sum-510/
14 | null:null
15 | --benchmark:True
16 | null:null
17 | null:null
18 | 


--------------------------------------------------------------------------------
/test_tipc/configs/ch_ppocr_mobile_v2_0_det_KL/model_linux_gpu_normal_normal_infer_python_windows_gpu_cpu.txt:
--------------------------------------------------------------------------------
 1 | ===========================kl_quant_params===========================
 2 | infer_model:./inference/ch_ppocr_mobile_v2.0_det_infer/
 3 | infer_export:deploy/slim/quantization/quant_kl.py -c configs/det/ch_ppocr_v2.0/ch_det_mv3_db_v2.0.yml -o
 4 | infer_quant:True
 5 | inference:tools/infer/predict_det.py
 6 | --use_gpu:False
 7 | --enable_mkldnn:False
 8 | --cpu_threads:1|6
 9 | --rec_batch_num:1
10 | --use_tensorrt:False
11 | --precision:int8
12 | --det_model_dir:
13 | --image_dir:./inference/ch_det_data_50/all-sum-510/
14 | null:null
15 | --benchmark:True
16 | null:null
17 | null:null
18 | 


--------------------------------------------------------------------------------
/test_tipc/configs/ch_ppocr_mobile_v2_0_det_PACT/model_linux_gpu_normal_normal_infer_cpp_linux_gpu_cpu.txt:
--------------------------------------------------------------------------------
 1 | ===========================cpp_infer_params===========================
 2 | model_name:ch_ppocr_mobile_v2_0_det_PACT
 3 | use_opencv:True
 4 | infer_model:./inference/ch_ppocr_mobile_v2.0_det_pact_infer
 5 | infer_quant:False
 6 | inference:./deploy/cpp_infer/build/ppocr
 7 | --use_gpu:True|False
 8 | --enable_mkldnn:False
 9 | --cpu_threads:6
10 | --rec_batch_num:1
11 | --use_tensorrt:False
12 | --precision:fp32
13 | --det_model_dir:
14 | --image_dir:./inference/ch_det_data_50/all-sum-510/
15 | null:null
16 | --benchmark:True
17 | --det:True
18 | --rec:False
19 | --cls:False
20 | --use_angle_cls:False
21 | 


--------------------------------------------------------------------------------
/test_tipc/configs/ch_ppocr_server_v2_0/model_linux_gpu_normal_normal_infer_python_linux_gpu_cpu.txt:
--------------------------------------------------------------------------------
 1 | ===========================ch_ppocr_server_v2.0===========================
 2 | model_name:ch_ppocr_server_v2_0
 3 | python:python3.7
 4 | infer_model:./inference/ch_ppocr_server_v2.0_det_infer/
 5 | infer_export:null
 6 | infer_quant:True
 7 | inference:tools/infer/predict_system.py
 8 | --use_gpu:False|True
 9 | --enable_mkldnn:False
10 | --cpu_threads:6
11 | --rec_batch_num:1
12 | --use_tensorrt:False
13 | --precision:fp32
14 | --det_model_dir:
15 | --image_dir:./inference/ch_det_data_50/all-sum-510/
16 | --rec_model_dir:./inference/ch_ppocr_server_v2.0_rec_infer/
17 | --benchmark:True
18 | null:null
19 | null:null
20 | 


--------------------------------------------------------------------------------
/test_tipc/configs/ch_ppocr_server_v2_0_det/model_linux_gpu_normal_normal_infer_cpp_linux_gpu_cpu.txt:
--------------------------------------------------------------------------------
 1 | ===========================cpp_infer_params===========================
 2 | model_name:ch_ppocr_server_v2_0_det
 3 | use_opencv:True
 4 | infer_model:./inference/ch_ppocr_server_v2.0_det_infer/
 5 | infer_quant:False
 6 | inference:./deploy/cpp_infer/build/ppocr
 7 | --use_gpu:True|False
 8 | --enable_mkldnn:False
 9 | --cpu_threads:6
10 | --rec_batch_num:1
11 | --use_tensorrt:False
12 | --precision:fp32
13 | --det_model_dir:
14 | --image_dir:./inference/ch_det_data_50/all-sum-510/
15 | null:null
16 | --benchmark:True
17 | --det:True
18 | --rec:False
19 | --cls:False
20 | --use_angle_cls:False
21 | 


--------------------------------------------------------------------------------
/test_tipc/docs/compare_cpp_right.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/test_tipc/docs/compare_cpp_right.png


--------------------------------------------------------------------------------
/test_tipc/docs/compare_cpp_wrong.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/test_tipc/docs/compare_cpp_wrong.png


--------------------------------------------------------------------------------
/test_tipc/docs/compare_right.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/test_tipc/docs/compare_right.png


--------------------------------------------------------------------------------
/test_tipc/docs/compare_wrong.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/test_tipc/docs/compare_wrong.png


--------------------------------------------------------------------------------
/test_tipc/docs/guide.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/test_tipc/docs/guide.png


--------------------------------------------------------------------------------
/test_tipc/docs/lite_auto_log.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/test_tipc/docs/lite_auto_log.png


--------------------------------------------------------------------------------
/test_tipc/docs/lite_log.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/test_tipc/docs/lite_log.png


--------------------------------------------------------------------------------
/test_tipc/docs/ssh_termux_ls.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/test_tipc/docs/ssh_termux_ls.png


--------------------------------------------------------------------------------
/test_tipc/docs/termux.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/test_tipc/docs/termux.jpg


--------------------------------------------------------------------------------
/test_tipc/docs/test.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/test_tipc/docs/test.png


--------------------------------------------------------------------------------
/test_tipc/supplementary/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/test_tipc/supplementary/__init__.py


--------------------------------------------------------------------------------
/test_tipc/supplementary/mv3_distill.yml:
--------------------------------------------------------------------------------
 1 | 
 2 | class_dim: 100
 3 | total_images: 50000
 4 | epochs: 1000
 5 | topk: 5
 6 | save_model_dir: ./output/
 7 | use_gpu: True
 8 | model_type: cls_distill
 9 | 
10 | LEARNING_RATE:
11 |     function: 'Cosine'
12 |     params:
13 |         lr: 0.001
14 |         warmup_epoch: 5
15 | 
16 | OPTIMIZER:
17 |     function: 'Momentum'
18 |     params:
19 |         momentum: 0.9
20 |     regularizer:
21 |         function: 'L2'
22 |         factor: 0.00002
23 | 
24 | TRAIN:
25 |     batch_size: 1280
26 |     num_workers: 4
27 | 
28 | VALID:
29 |     batch_size: 64
30 |     num_workers: 4
31 | 


--------------------------------------------------------------------------------
/test_tipc/supplementary/requirements.txt:
--------------------------------------------------------------------------------
1 | paddleslim==2.2.1
2 | 


--------------------------------------------------------------------------------
/test_tipc/supplementary/slim/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/test_tipc/supplementary/slim/__init__.py


--------------------------------------------------------------------------------
/test_tipc/supplementary/test_tipc/tipc_train.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/test_tipc/supplementary/test_tipc/tipc_train.png


--------------------------------------------------------------------------------
/test_tipc/supplementary/test_tipc/train_infer_python.txt:
--------------------------------------------------------------------------------
 1 | ===========================train_params===========================
 2 | model_name:ch_PPOCRv2_det
 3 | python:python3.7
 4 | gpu_list:0|0,1
 5 | use_gpu:True|True
 6 | AMP.use_amp:True|False
 7 | epoch:lite_train_lite_infer=2|whole_train_whole_infer=1000
 8 | save_model_dir:./output/
 9 | TRAIN.batch_size:lite_train_lite_infer=1280|whole_train_whole_infer=1280
10 | pretrained_model:null
11 | checkpoints:null
12 | use_custom_relu:False|True
13 | model_type:cls|cls_distill|cls_distill_multiopt
14 | MODEL.siamese:False|True
15 | norm_train:train.py -c mv3_large_x0_5.yml -o 
16 | quant_train:False
17 | prune_train:False
18 | 


--------------------------------------------------------------------------------
/test_tipc/supplementary/test_tipc/train_infer_python_FPGM.txt:
--------------------------------------------------------------------------------
 1 | ===========================train_params===========================
 2 | model_name:ch_PPOCRv2_det
 3 | python:python3.7
 4 | gpu_list:0|0,1
 5 | use_gpu:True|True
 6 | AMP.use_amp:True|False
 7 | epoch:lite_train_lite_infer=2|whole_train_whole_infer=1000
 8 | save_model_dir:./output/
 9 | TRAIN.batch_size:lite_train_lite_infer=1280|whole_train_whole_infer=1280
10 | pretrained_model:null
11 | checkpoints:null
12 | use_custom_relu:False|True
13 | model_type:cls|cls_distill|cls_distill_multiopt
14 | MODEL.siamese:False|True
15 | norm_train:train.py -c mv3_large_x0_5.yml -o prune_train=True
16 | quant_train:False
17 | prune_train:False
18 | 


--------------------------------------------------------------------------------
/test_tipc/supplementary/test_tipc/train_infer_python_FPGM_fleet.txt:
--------------------------------------------------------------------------------
 1 | ===========================train_params===========================
 2 | model_name:ch_PPOCRv2_det
 3 | python:python3.7
 4 | gpu_list:xx.xx.xx.xx,yy.yy.yy.yy;0,1
 5 | use_gpu:True
 6 | AMP.use_amp:True|False
 7 | epoch:lite_train_lite_infer=2|whole_train_whole_infer=1000
 8 | save_model_dir:./output/
 9 | TRAIN.batch_size:lite_train_lite_infer=1280|whole_train_whole_infer=1280
10 | pretrained_model:null
11 | checkpoints:null
12 | use_custom_relu:False|True
13 | model_type:cls|cls_distill|cls_distill_multiopt
14 | MODEL.siamese:False|True
15 | norm_train:train.py -c mv3_large_x0_5.yml -o prune_train=True
16 | quant_train:False
17 | prune_train:False
18 | 


--------------------------------------------------------------------------------
/test_tipc/supplementary/test_tipc/train_infer_python_PACT.txt:
--------------------------------------------------------------------------------
 1 | ===========================train_params===========================
 2 | model_name:ch_PPOCRv2_det
 3 | python:python3.7
 4 | gpu_list:0|0,1
 5 | use_gpu:True|True
 6 | AMP.use_amp:True|False
 7 | epoch:lite_train_lite_infer=2|whole_train_whole_infer=1000
 8 | save_model_dir:./output/
 9 | TRAIN.batch_size:lite_train_lite_infer=1280|whole_train_whole_infer=1280
10 | pretrained_model:null
11 | checkpoints:null
12 | use_custom_relu:False|True
13 | model_type:cls|cls_distill|cls_distill_multiopt
14 | MODEL.siamese:False|True
15 | norm_train:train.py -c mv3_large_x0_5.yml -o quant_train=True
16 | quant_train:False
17 | prune_train:False
18 | 


--------------------------------------------------------------------------------
/test_tipc/supplementary/test_tipc/train_infer_python_PACT_fleet.txt:
--------------------------------------------------------------------------------
 1 | ===========================train_params===========================
 2 | model_name:ch_PPOCRv2_det
 3 | python:python3.7
 4 | gpu_list:xx.xx.xx.xx,yy.yy.yy.yy;0,1
 5 | use_gpu:True
 6 | AMP.use_amp:True|False
 7 | epoch:lite_train_lite_infer=2|whole_train_whole_infer=1000
 8 | save_model_dir:./output/
 9 | TRAIN.batch_size:lite_train_lite_infer=1280|whole_train_whole_infer=1280
10 | pretrained_model:null
11 | checkpoints:null
12 | use_custom_relu:False|True
13 | model_type:cls|cls_distill|cls_distill_multiopt
14 | MODEL.siamese:False|True
15 | norm_train:train.py -c mv3_large_x0_5.yml -o quant_train=True
16 | quant_train:False
17 | prune_train:False
18 | 


--------------------------------------------------------------------------------
/test_tipc/supplementary/test_tipc/train_infer_python_fleet.txt:
--------------------------------------------------------------------------------
 1 | ===========================train_params===========================
 2 | model_name:ch_PPOCRv2_det
 3 | python:python3.7
 4 | gpu_list:xx.xx.xx.xx,yy.yy.yy.yy;0,1
 5 | use_gpu:True
 6 | AMP.use_amp:True|False
 7 | epoch:lite_train_lite_infer=2|whole_train_whole_infer=1000
 8 | save_model_dir:./output/
 9 | TRAIN.batch_size:lite_train_lite_infer=1280|whole_train_whole_infer=1280
10 | pretrained_model:null
11 | checkpoints:null
12 | use_custom_relu:False|True
13 | model_type:cls|cls_distill|cls_distill_multiopt
14 | MODEL.siamese:False|True
15 | norm_train: train.py -c mv3_large_x0_5.yml -o
16 | quant_train:False
17 | prune_train:False
18 | 


--------------------------------------------------------------------------------
/test_tipc/supplementary/train.sh:
--------------------------------------------------------------------------------
1 | # single GPU
2 | python3.7 train.py  -c mv3_large_x0_5.yml
3 | 
4 | # distribute training
5 | python3.7 -m paddle.distributed.launch --log_dir=./debug/ --gpus '0,1'  train.py  -c mv3_large_x0_5.yml
6 | 


--------------------------------------------------------------------------------
/test_tipc/web/expect.json:
--------------------------------------------------------------------------------
 1 | {
 2 |     "text":  [
 3 |         "纯臻营养护发素",
 4 |         "产品信息/参数",
 5 |         "(45元/每公斤,100公斤起订)",
 6 |         "每瓶22元,1000瓶起订)",
 7 |         "【品牌】:代加工方式/OEMODM",
 8 |         "【品名】:纯臻营养护发素",
 9 |         "【产品编号】:YM-X-3011",
10 |         "ODMOEM",
11 |         "【净含量】:220ml",
12 |         "【适用人群】:适合所有肤质",
13 |         "【主要成分】:鲸蜡硬脂醇、燕麦β-葡聚",
14 |         "糖、椰油酰胺丙基甜菜碱、泛醌",
15 |         "(成品包材)",
16 |         "【主要功能】:可紧致头发磷层,从而达到",
17 |         "即时持久改善头发光泽的效果,给干燥的头",
18 |         "发足够的滋养"
19 |     ]
20 | }
21 | 


--------------------------------------------------------------------------------
/test_tipc/web/index.html:
--------------------------------------------------------------------------------
 1 | <!DOCTYPE html>
 2 | <html lang="en">
 3 | <head>
 4 |     <meta charset="UTF-8">
 5 |     <meta name="viewport" content="width=device-width, initial-scale=1.0">
 6 |     <meta http-equiv="X-UA-Compatible" content="ie=edge">
 7 |     <title>ocr test</title>
 8 | </head>
 9 | <body>
10 |     <img id="ocr" src="./test.jpg" />
11 | </body>
12 | <script src="./node_modules/@paddlejs-models/ocr/lib/index.js"></script>
13 | </html>
14 | 


--------------------------------------------------------------------------------
/test_tipc/web/jest-puppeteer.config.js:
--------------------------------------------------------------------------------
 1 | // jest-puppeteer.config.js
 2 | module.exports = {
 3 |     launch: {
 4 |         headless: false,
 5 |         product: 'chrome'
 6 |     },
 7 |     browserContext: 'default',
 8 |     server: {
 9 |         command: 'python3 -m http.server 9811',
10 |         port: 9811,
11 |         launchTimeout: 10000,
12 |         debug: true
13 |     }
14 | };
15 | 


--------------------------------------------------------------------------------
/test_tipc/web/test.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/test_tipc/web/test.jpg


--------------------------------------------------------------------------------
/tests/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/tests/__init__.py


--------------------------------------------------------------------------------
/tests/models/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/tests/models/__init__.py


--------------------------------------------------------------------------------
/tests/models/image_classification_common.py:
--------------------------------------------------------------------------------
 1 | def check_result_item_keys(result_item):
 2 |     assert result_item.keys() == {
 3 |         "input_path",
 4 |         "page_index",
 5 |         "input_img",
 6 |         "class_ids",
 7 |         "scores",
 8 |         "label_names",
 9 |     }
10 | 


--------------------------------------------------------------------------------
/tests/models/object_detection_common.py:
--------------------------------------------------------------------------------
1 | def check_result_item_keys(result_item):
2 |     assert result_item.keys() == {
3 |         "input_path",
4 |         "page_index",
5 |         "input_img",
6 |         "boxes",
7 |     }
8 | 


--------------------------------------------------------------------------------
/tests/pipelines/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/tests/pipelines/__init__.py


--------------------------------------------------------------------------------
/tests/test_files/book.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/tests/test_files/book.jpg


--------------------------------------------------------------------------------
/tests/test_files/book_rot180.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/tests/test_files/book_rot180.jpg


--------------------------------------------------------------------------------
/tests/test_files/doc_with_formula.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/tests/test_files/doc_with_formula.png


--------------------------------------------------------------------------------
/tests/test_files/formula.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/tests/test_files/formula.png


--------------------------------------------------------------------------------
/tests/test_files/medal_table.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/tests/test_files/medal_table.png


--------------------------------------------------------------------------------
/tests/test_files/seal.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/tests/test_files/seal.png


--------------------------------------------------------------------------------
/tests/test_files/table.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/tests/test_files/table.jpg


--------------------------------------------------------------------------------
/tests/test_files/textline.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/tests/test_files/textline.png


--------------------------------------------------------------------------------
/tests/test_files/textline_rot180.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/tests/test_files/textline_rot180.jpg


--------------------------------------------------------------------------------
/tests/test_ppstructure.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/PaddlePaddle/PaddleOCR/75c170a616d5368685bf2cd000157968d1c93609/tests/test_ppstructure.py


--------------------------------------------------------------------------------
/train.sh:
--------------------------------------------------------------------------------
1 | # recommended paddle.__version__ == 3.0.0
2 | python3 -m paddle.distributed.launch --log_dir=./log/ --gpus '0,1,2,3,4,5,6,7'  tools/train.py -c configs/rec/PP-OCRv5/PP-OCRv5_server_rec.yml
3 | 


--------------------------------------------------------------------------------