paddle-ocr / README.md

paddle-ocr

This repository contains code related to PaddleOCR, an open-source OCR (Optical Character Recognition) tool

Last updated: 4/16/2026GitHub

paddle-ocr

This repository contains code related to PaddleOCR, an open-source OCR (Optical Character Recognition) tool developed by PaddlePaddle for both inference and training

Overview

PaddleOCR is an OCR tool capable of handling multilingual end-to-end text detection and recognition tasks, designed to deliver high performance and efficiency, making it suitable for both research and production environments. It Provides flexibility and customization to meet specific requirements. Users can fine-tune models, integrate with other frameworks, or develop custom solutions based on their needs.

This repository provides implementations for both inference and training/fine-tuning PaddleOCR models.

Content

Inference Microservice

We provide microservice implementations for performing inference with PaddleOCR models using docker and FastApi. Both CPU and GPU versions are available.

  • /paddleocr_inference_gpu: Implementation of the GPU-based inference microservice.
  • /paddleocr_inference_cpu: Implementation of the CPU-based inference microservice.

Refer to the README files in each directory for detailed instructions on configuring and running each microservice.

OCR models

This repository includes in-house trained models for Arabic character detection and recognition. All available models can be found in the models folder.

  1. Detection Model:
  • responsible for detecting the bounding boxes or regions of interest (ROIs) where text is present in an image.
  1. Recognition Model:
  • responsible for recognizing the text contained within the detected regions.
  1. Angle Classification Model:
  • used to handle text that is oriented at different angles or orientations in the image

Training and Fine-tuning

/models_finetuning contains code for training and fine-tuning PaddleOCR models to adapt them to specific use cases or datasets.

Refer to the README file the directory for detailed instructions on configuring and running the training/fine-tuning process.

Data Preparation

Data preparation is a crucial step in training or fine-tuning OCR models. It involves preprocessing, augmenting, and formatting datasets to ensure optimal performance during training.

/models_finetuning contains code for datasets preperation

Resources

Please refer to PaddleOCR official repository for more information (here)