RapidAI/RapidOcrOnnx

rapidocr onnx cpp

What it solves

RapidOcrOnnx provides a high-performance Optical Character Recognition (OCR) solution that can be deployed across multiple platforms (Windows, macOS, and Linux) without requiring a heavy deep learning framework installation. It simplifies the process of running OCR models for text detection, classification, and recognition.

How it works

The project uses the ONNX Runtime framework to perform inference. It leverages pre-trained models (such as PP-OCRv3) to handle three main stages of the OCR pipeline: detection (finding where text is), classification (determining text orientation), and recognition (converting the image of text into actual characters).

Who it’s for

It is designed for developers who need to integrate OCR capabilities into C++ applications or other languages via JNI (Java) or dynamic libraries (C), and those who want to run OCR models efficiently on both CPU and GPU (CUDA/DirectML).

Highlights

  • Cross-platform support: Ready-to-use binaries and libraries for Windows, macOS, and Linux.
  • Flexible Inference: Supports both CPU and GPU acceleration via ONNX Runtime.
  • Comprehensive Pipeline: Includes models for detection, classification, and recognition.
  • Developer Friendly: Provides JNI libraries for Java and dynamic libraries for C, along with a benchmark tool to measure average processing time.

Related

  • Project
  • Project
  • Project
  • Project