A Python toolkit that optimizes ONNX models by reducing operator count while keeping accuracy, aiming for faster inference.
RapidAI/RapidOCR
Open-source OCR toolkit that runs PaddleOCR models converted to ONNX across Python and other runtimes, for fast offline text recognition.
Open-source alternative to:ABBYY FineReader
Google Cloud Vision OCR
- Stars
- 8,212
- Forks
- 753
- Open issues
- 28
- Last commit
- 13 hours ago
What is it?
RapidOCR is an OCR toolkit that converts PaddleOCR models into ONNX format so they can run on a range of inference engines and devices without the full PaddlePaddle stack. It supports Chinese and English recognition by default, with other languages available through its model list. The project is aimed at offline deployment, where lightweight inference and cross-platform use matter more than training.
The Python package is installable with pip and can be used by passing an image path or URL to an engine object, which returns recognized text and an optional visualization. The repository also provides Docker development environments for ONNX Runtime (CPU and GPU), TensorRT, Paddle, OpenVINO, PyTorch and MNN. Other language bindings have moved to separate repositories.
The project documentation is available in Chinese. Converted model files are distributed under Apache-2.0, derived from upstream PaddleOCR models.
Key features
- 01Converts PaddleOCR models to ONNX for lightweight inference.
- 02Runs on ONNX Runtime, OpenVINO, MNN, PaddlePaddle, TensorRT and PyTorch backends.
- 03Provides a simple Python API that returns text results and visualizations.
- 04Includes Docker environments for each supported inference engine.
- 05Supports Chinese and English by default, with more languages in the model list.
Use cases
- Adding offline text extraction from images to a Python application.
- Deploying OCR on GPU servers with TensorRT or on CPU with ONNX Runtime.
- Running Chinese and English document or screenshot recognition without cloud APIs.
- Fine-tuning PaddleOCR models and then converting them for RapidOCR deployment.
Quick start
- 1
Install the rapidocr and onnxruntime packages with pip
pip install rapidocr onnxruntime - 2
Create an engine and run OCR on an image (see the README usage example)
Things to know
- Models are converted from PaddleOCR and inherit their upstream Apache-2.0 terms; the README notes ownership of the weights stays with Baidu and PaddleOCR rights holders.
- Official documentation is primarily in Chinese.
Topics
FAQ
- What is RapidOCR?
- Open-source OCR toolkit that runs PaddleOCR models converted to ONNX across Python and other runtimes, for fast offline text recognition. RapidOCR is an OCR toolkit that converts PaddleOCR models into ONNX format so they can run on a range of inference engines and devices without the full PaddlePaddle stack. It supports Chinese and English recognition by default, with other languages available through its model list. The project is aimed at offline deployment, where lightweight inference and cross-platform use matter more than training.
- Is RapidOCR free to use? What license does it have?
- RapidOCR is open source under the Apache-2.0 license. Check the license terms before using it in commercial products.
- Is RapidOCR still maintained?
- Actively maintained. The last commit to RapidOCR was on Oct 20, 2026.
- What can I use RapidOCR for?
- Adding offline text extraction from images to a Python application. Deploying OCR on GPU servers with TensorRT or on CPU with ONNX Runtime. Running Chinese and English document or screenshot recognition without cloud APIs. Fine-tuning PaddleOCR models and then converting them for RapidOCR deployment.
- How do I install RapidOCR?
- Install the rapidocr and onnxruntime packages with pip: pip install rapidocr onnxruntime Create an engine and run OCR on an image (see the README usage example)
- Where can I get RapidOCR?
- The source code and installation instructions are on GitHub: https://github.com/RapidAI/RapidOCR
Summary generated by AI from the project's README. GitHub stats refresh daily.
Related projects
Python package for offline text-to-speech using the Kokoro model running on ONNX Runtime, with CPU and GPU support.
Open-source document parser that converts PDFs, Office files and images into Markdown or JSON for LLM and agent workflows.
Ultralytics YOLOv5, a PyTorch-based computer vision toolkit for object detection, instance segmentation and image classification with training and export.
C/C++ port of OpenAI's Whisper speech recognition model for fast, offline, dependency-free speech-to-text on CPU and GPU.
Free, self-hosted machine translation API powered by the open source Argos Translate engine, with optional offline use.