管理Document AI的工具、训练配置、模型等

kangtan d3ef54d64b 增加出生地为县或市的数据 1 rok temu
PPOCRLabel b0c1878a97 初始化PaddleOCR 1 rok temu
StyleText b0c1878a97 初始化PaddleOCR 1 rok temu
applications 5709eb762c 提交PaddleOCR dygraph分支 6cbd7d1ecef832d428e21ef98c44382c5384d8f7 1 rok temu
benchmark b0c1878a97 初始化PaddleOCR 1 rok temu
configs d3ef54d64b 增加出生地为县或市的数据 1 rok temu
deploy 5709eb762c 提交PaddleOCR dygraph分支 6cbd7d1ecef832d428e21ef98c44382c5384d8f7 1 rok temu
doc 5709eb762c 提交PaddleOCR dygraph分支 6cbd7d1ecef832d428e21ef98c44382c5384d8f7 1 rok temu
ppocr 7a30ac2d7f db分类网络 1 rok temu
ppstructure 5709eb762c 提交PaddleOCR dygraph分支 6cbd7d1ecef832d428e21ef98c44382c5384d8f7 1 rok temu
test_tipc 5709eb762c 提交PaddleOCR dygraph分支 6cbd7d1ecef832d428e21ef98c44382c5384d8f7 1 rok temu
tools 7a30ac2d7f db分类网络 1 rok temu
.gitignore b0c1878a97 初始化PaddleOCR 1 rok temu
LICENSE b0c1878a97 初始化PaddleOCR 1 rok temu
MANIFEST.in b0c1878a97 初始化PaddleOCR 1 rok temu
README.md 5709eb762c 提交PaddleOCR dygraph分支 6cbd7d1ecef832d428e21ef98c44382c5384d8f7 1 rok temu
README_ch.md 5709eb762c 提交PaddleOCR dygraph分支 6cbd7d1ecef832d428e21ef98c44382c5384d8f7 1 rok temu
__init__.py b0c1878a97 初始化PaddleOCR 1 rok temu
paddleocr.py 5709eb762c 提交PaddleOCR dygraph分支 6cbd7d1ecef832d428e21ef98c44382c5384d8f7 1 rok temu
requirements.txt 5709eb762c 提交PaddleOCR dygraph分支 6cbd7d1ecef832d428e21ef98c44382c5384d8f7 1 rok temu
setup.py b0c1878a97 初始化PaddleOCR 1 rok temu
train.sh b0c1878a97 初始化PaddleOCR 1 rok temu

README.md

English | 简体中文 | हिन्दी | 日本語 | 한국인 | Pу́сский язы́к

Introduction

PaddleOCR aims to create multilingual, awesome, leading, and practical OCR tools that help users train better models and apply them into practice.

📣 Recent updates

  • 🔨2022.11 Add implementation of 4 cutting-edge algorithms:Text Detection DRRG, Text Recognition RFL, Image Super-Resolution Text Telescope,Handwrittem Mathematical Expression Recognition CAN
  • 2022.10 release optimized JS version PP-OCRv3 model with 4.3M model size, 8x faster inference time, and a ready-to-use web demo
  • 💥 Live Playback: Introduction to PP-StructureV2 optimization strategy. Scan the QR code below using WeChat, follow the PaddlePaddle official account and fill out the questionnaire to join the WeChat group, get the live link and 20G OCR learning materials (including PDF2Word application, 10 models in vertical scenarios, etc.)

  • 🔥2022.8.24 Release PaddleOCR release/2.6

    • Release PP-StructureV2,with functions and performance fully upgraded, adapted to Chinese scenes, and new support for Layout Recovery and one line command to convert PDF to Word;
    • Layout Analysis optimization: model storage reduced by 95%, while speed increased by 11 times, and the average CPU time-cost is only 41ms;
    • Table Recognition optimization: 3 optimization strategies are designed, and the model accuracy is improved by 6% under comparable time consumption;
    • Key Information Extraction optimization:a visual-independent model structure is designed, the accuracy of semantic entity recognition is increased by 2.8%, and the accuracy of relation extraction is increased by 9.1%.
  • 🔥2022.8 Release OCR scene application collection

    • Release 9 vertical models such as digital tube, LCD screen, license plate, handwriting recognition model, high-precision SVTR model, etc, covering the main OCR vertical applications in general, manufacturing, finance, and transportation industries.
  • 2022.8 Add implementation of 8 cutting-edge algorithms

  • 2022.5.9 Release PaddleOCR release/2.5

    • Release PP-OCRv3: With comparable speed, the effect of Chinese scene is further improved by 5% compared with PP-OCRv2, the effect of English scene is improved by 11%, and the average recognition accuracy of 80 language multilingual models is improved by more than 5%.
    • Release PPOCRLabelv2: Add the annotation function for table recognition task, key information extraction task and irregular text image.
    • Release interactive e-book "Dive into OCR", covers the cutting-edge theory and code practice of OCR full stack technology.
  • more

🌟 Features

PaddleOCR support a variety of cutting-edge algorithms related to OCR, and developed industrial featured models/solution PP-OCR and PP-Structure on this basis, and get through the whole process of data production, model training, compression, inference and deployment.

It is recommended to start with the “quick experience” in the document tutorial

⚡ Quick Experience

📚 E-book: Dive Into OCR

👫 Community

  • For international developers, we regard PaddleOCR Discussions as our international community platform. All ideas and questions can be discussed here in English.

  • For Chinese develops, Scan the QR code below with your Wechat, you can join the official technical discussion group. For richer community content, please refer to 中文README, looking forward to your participation.

🛠️ PP-OCR Series Model List(Update on September 8th)

Model introduction Model name Recommended scene Detection model Direction classifier Recognition model
Chinese and English ultra-lightweight PP-OCRv3 model(16.2M) ch_PP-OCRv3_xx Mobile & Server inference model / trained model inference model / trained model inference model / trained model
English ultra-lightweight PP-OCRv3 model(13.4M) en_PP-OCRv3_xx Mobile & Server inference model / trained model inference model / trained model inference model / trained model
Chinese and English ultra-lightweight PP-OCRv2 model(11.6M) ch_PP-OCRv2_xx Mobile & Server inference model / trained model inference model / trained model inference model / trained model
Chinese and English ultra-lightweight PP-OCR model (9.4M) ch_ppocr_mobile_v2.0_xx Mobile & server inference model / trained model inference model / trained model inference model / trained model
Chinese and English general PP-OCR model (143.4M) ch_ppocr_server_v2.0_xx Server inference model / trained model inference model / trained model inference model / trained model

📖 Tutorials

👀 Visualization more

PP-OCRv3 Chinese model
<img src="doc/imgs_results/PP-OCRv3/ch/PP-OCRv3-pic001.jpg" width="800">
<img src="doc/imgs_results/PP-OCRv3/ch/PP-OCRv3-pic002.jpg" width="800">
<img src="doc/imgs_results/PP-OCRv3/ch/PP-OCRv3-pic003.jpg" width="800">

PP-OCRv3 English model
<img src="doc/imgs_results/PP-OCRv3/en/en_1.png" width="800">
<img src="doc/imgs_results/PP-OCRv3/en/en_2.png" width="800">

PP-OCRv3 Multilingual model
<img src="doc/imgs_results/PP-OCRv3/multi_lang/japan_2.jpg" width="800">
<img src="doc/imgs_results/PP-OCRv3/multi_lang/korean_1.jpg" width="800">

PP-StructureV2
  • layout analysis + table recognition

  • SER (Semantic entity recognition)

  • RE (Relation Extraction)

🇺🇳 Guideline for New Language Requests

If you want to request a new language support, a PR with 1 following files are needed:

  1. In folder ppocr/utils/dict, it is necessary to submit the dict text to this path and name it with {language}_dict.txt that contains a list of all characters. Please see the format example from other files in that folder.

If your language has unique elements, please tell me in advance within any way, such as useful links, wikipedia and so on.

More details, please refer to Multilingual OCR Development Plan.

📄 License

This project is released under Apache 2.0 license