# RapidOCR **Repository Path**: atari/RapidOCR ## Basic Information - **Project Name**: RapidOCR - **Description**: 同步 https://github.com/RapidOCR/RapidOCR - **Primary Language**: Unknown - **License**: Apache-2.0 - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 5 - **Forks**: 0 - **Created**: 2021-03-29 - **Last Updated**: 2023-08-02 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README [简体中文](https://github.com/RapidAI/RapidOCR/blob/main/docs/README_zh.md) | English
*Open source OCR for the security of the digital world*

Open in Colab
PyPI Documentation Status SemVer2.0

Contents - [Introduction](#introduction) - [Navigation](#navigation) - [Recently updates(more)](#recently-updatesmore) - [🍜2023-05-22 api update:](#2023-05-22-api-update) - [❤2023-05-20 ocrweb update:](#2023-05-20-ocrweb-update) - [🌹 2023-05-14 ocrweb v0.1.5 update:](#-2023-05-14-ocrweb-v015-update) - [Overall Framework](#overall-framework) - [Demo](#demo) - [TODO and Task Claim](#todo-and-task-claim) - [Original initiator and start-up author](#original-initiator-and-start-up-author) - [Acknowledgements](#acknowledgements) - [Sponsor](#sponsor) - [Authorization](#authorization) - [Join us](#join-us) - [Demo](#demo-1) - [Demonstration with C++/JVM](#demonstration-with-cjvm) - [Demonstration with .Net](#demonstration-with-net) - [Demonstratioin with multi\_language](#demonstratioin-with-multi_language)
## Introduction - Completely open source, free and support offline deployment of multi-platform and multi-language OCR. - **Chinese Advertising**: Welcome to join our QQ group to download the model and test program, QQ group number: 887298230 - **Cause**: Baidu paddlepaddle engineering is not very good, in order to facilitate everyone to perform OCR reasoning on various terminals, we convert it to onnx format, use `Python/C++/Java/Swift/C#` to change It is ported to various platforms. - **Name Source**: Light, fast, economical and smart. OCR technology based on deep learning technology focuses on artificial intelligence advantages and small models, with speed as the mission and effect as the leading role. - **Usage**: - If the existing model in the repo meets the requirements → RapidOCR deployment can be used. - Not meeting requirements → Based on [PaddleOCR](https://github.com/PaddlePaddle/PaddleOCR). Fine-tune your own data → RapidOCR deployment. -If this repo is helpful to you, please click on a small star ⭐ Bah! ## Navigation - [Wiki](https://github.com/RapidAI/RapidOCR/wiki) - [Support Language](https://github.com/RapidAI/RapidOCR/wiki/support_language) - [ONNXRuntime inference optim](https://github.com/RapidAI/RapidOCR/wiki/ONNXRuntime%E6%8E%A8%E7%90%86%E8%B0%83%E4%BC%98%E6%8C%87%E5%8D%97) - [RapidOCR Optim](https://github.com/RapidAI/RapidOCR/wiki/RapidOCR%E8%B0%83%E4%BC%98%E5%B0%9D%E8%AF%95%E6%95%99%E7%A8%8B) - [config.yaml parameter](https://github.com/RapidAI/RapidOCR/wiki/config_parameter) - [Python demo](https://github.com/RapidAI/RapidOCR/blob/main/python/README.md) - [C++ demo(Windows/Linux/macOS)](https://github.com/RapidAI/RapidOCR/blob/main/cpp) - [RapidOcrOnnx](https://github.com/RapidAI/RapidOcrOnnx) - [RapidOcrNcnn](https://github.com/RapidAI/RapidOcrNcnn) - [Jvm demo(Java/Kotlin)](https://github.com/RapidAI/RapidOCR/blob/main/jvm) - [RapidOcrOnnxJvm](https://github.com/RapidAI/RapidOcrOnnxJvm) - [RapidOcrNcnnJvm](https://github.com/RapidAI/RapidOcrNcnnJvm) - [.Net demo(C#)](https://github.com/RapidAI/RapidOCRCSharp) - [Android demo](https://github.com/RapidAI/RapidOcrAndroidOnnx) - [API](https://github.com/RapidAI/RapidOCR/tree/main/api) - Web demo: - [Web OCR](https://github.com/RapidAI/RapidOCR/blob/main/ocrweb/README.md) - [Nuitka package rapdocr_web](https://github.com/RapidAI/RapidOCR/wiki/Nuitka%E6%89%93%E5%8C%85rapidocr_web%E6%93%8D%E4%BD%9C%E6%96%87%E6%A1%A3) - [Multi Web OCR](https://github.com/RapidAI/RapidOCR/blob/main/ocrweb_multi/README.md) - [RapidStructure](https://github.com/RapidAI/RapidStructure) - [orientation](https://github.com/RapidAI/RapidStructure/blob/main/docs/README_Orientation.md) - [layout](https://github.com/RapidAI/RapidStructure/blob/main/docs/README_Layout.md) - [table recovery](https://github.com/RapidAI/RapidStructure/blob/main/docs/README_Table.md) - Derivatives - [RapidOCR HTTP service/win32 program/easy language writing](https://github.com/Physton/RapidOCRServer) - [Related projects](https://github.com/RapidAI/RapidOCR/blob/main/docs/related_projects.md) - [RapidOCRPDF](https://github.com/RapidAI/RapidOCRPDF):extract PDF content. - [RapidVideOCR](https://github.com/SWHL/RapidVideOCR): Extract hard subtitles in videos based on RapidOCR - [LGPMA_Infer](https://github.com/SWHL/LGPMA_Infer): table structure restoration | [blog interpretation papers and source code](http://t.csdn.cn/QNN3S) - [Document Unwarping-PaperEdge](https://github.com/cvlab-stonybrook/PaperEdge) | [Demo](https://huggingface.co/spaces/SWHL/PaperEdgeDemo) - [Text Removal-CTRNet](https://github.com/lcy0604/CTRNet) | [Demo](https://huggingface.co/spaces/SWHL/CTRNetDemo) - Model Convert - [PaddleOCRModelConverter](https://github.com/RapidAI/PaddleOCRModelConverter) - [Paddle2OnnxConvertor](https://github.com/RapidAI/Paddle2OnnxConvertor) - [Teach you to use ONNXRunTime to deploy PP-OCR](https://aistudio.baidu.com/aistudio/projectdetail/1479970?channelType=0&channel=0) - [About model](https://github.com/RapidAI/RapidOCR/blob/main/docs/models.md) - [Model Convert](https://github.com/RapidAI/RapidOCR/blob/main/docs/models.md#模型转换) - [Model Download](https://github.com/RapidAI/RapidOCR/blob/main/docs/models.md#模型下载) - [FAQ](https://github.com/RapidAI/RapidOCR/blob/main/docs/FAQ.md) ## Recently updates([more](https://github.com/RapidAI/RapidOCR/wiki/Changelog)) #### 🍜2023-05-22 api update: - Decouple the API from ocrweb and maintain it as a separate module. For details, see [API](https://github.com/RapidAI/RapidOCR/tree/main/api) - After `rapidocr_web>0.1.6`, `pip install rapidocr_web[api]` will not be supported for installation, you can directly install and use `pip install rapidocr_api`. #### ❤2023-05-20 ocrweb update: - Add desktop version of RapidOCRWeb, for details, please refer to [RapidOCRWeb desktop version tutorial](https://github.com/RapidAI/RapidOCR/wiki/%5BRapidOCRWeb%5D-%E6%A1%8C%E9%9D%A2%E7%89%88%E4%BD%BF%E7%94%A8%E6%95%99%E7%A8%8B) #### 🌹 2023-05-14 ocrweb v0.1.5 update: - Add the return value of the interface version's return coordinate box ([issue #85](https://github.com/RapidAI/RapidOCR/issues/85)) - API mode adds base64 format input - For details, please refer to: [link](https://github.com/RapidAI/RapidOCR/blob/main/ocrweb/README.md) ## Overall Framework ```mermaid flowchart LR subgraph Step direction TB C(Text Det) --> D(Text Cls) --> E(Text Rec) end A[/OurSelf Dataset/] --> B(PaddleOCR) --Train--> Step --> F(PaddleOCRModelConverter) F --ONNX--> G{RapidOCR Deploy\nPython/C++/Java/C#} G --> H(Windows x86/x64) & I(Linux) & J(Android) & K(Web) & L(Raspberry Pi) click B "https://github.com/PaddlePaddle/PaddleOCR" _blank click F "https://github.com/RapidAI/PaddleOCRModelConverter" _blank ``` ## Demo - Online demo - For details, please refer to: [ocrweb/README](https://github.com/RapidAI/RapidOCR/blob/main/ocrweb/README.md) - The model combination (optimal combination) used for the demo is: ``` text ch_PP-OCRv3_det + ch_ppocr_mobile_v2.0_cls + ch_PP-OCRv3_rec ``` - **Demo**:
- [Hugging Face Demo](https://huggingface.co/spaces/SWHL/RapidOCRDemo) - The demo is built on Hugging Face's Spaces, generated by the Gradio library. - Demo:
## TODO and Task Claim - See here: [link](https://github.com/orgs/RapidAI/projects/7) ## Original initiator and start-up author

## Acknowledgements - Many thanks to [DeliciaLaniD](https://github.com/DeliciaLaniD) for fixing the misplaced start position of scan animation in ocrweb. - Many thanks to [zhsunlight](https://github.com/zhsunlight) for the suggestion about parameterized call GPU reasoning and the careful and thoughtful testing. - Many thanks to [lzh111222334](https://github.com/lzh111222334) for fixing some bugs of rec preprocessing under python version. - Many thanks to [AutumnSun1996](https://github.com/AutumnSun1996) for the suggestion in the [#42](https://github.com/RapidAI/RapidOCR/issues/42). - Many thanks to [DeadWood8](https://github.com/DeadWood8) for providing the [document]((https://github.com/RapidAI/RapidOCR/wiki/Nuitka%E6%89%93%E5%8C%85rapidocr_web%E6%93%8D%E4%BD%9C%E6%96%87%E6%A1%A3)) which packages rapidocr_web to exe by Nuitka. - Many thanks to [Loovelj](https://github.com/Loovelj) for fixing the bug of sorting the text boxes. For details see [issue 75](https://github.com/RapidAI/RapidOCR/issues/75). ## Sponsor |Sponsor|Applied Products| |:---:|:---:| ||| || - | - If you want to sponsor the project, you can directly click the Sponsor button at the top of the current page, please write a note (e.g. your github account name) to facilitate adding to the sponsorship list above. ## Authorization - The copyright of the OCR model belongs to Baidu, and the copyright of other engineering codes belongs to the owner of this warehouse. - This software is licensed under LGPL. You are welcome to contribute code, submit an issue or even PR. - If you find this project useful in your research, please consider citing: ```latex @misc{RapidOCR 2021, title={{Rapid OCR}: OCR Toolbox}, author={MindSpore Team}, howpublished = {\url{https://github.com/RapidAI/RapidOCR}}, year={2021} } ``` ## Join us - For international developers, we regard [RapidOCR Disscussions](https://github.com/RapidAI/RapidOCR/discussions) as our international community platform. All ideas and questions can be discussed here in English. ## Demo #### Demonstration with C++/JVM
#### Demonstration with .Net
#### Demonstratioin with multi_language