Featured image of post mica-ppocr v1.2.3 Released: Java 8-Compatible PP-OCRv6 Pure ONNX Inference Engine with Built-in Document/Ticket Recognition

mica-ppocr v1.2.3 Released: Java 8-Compatible PP-OCRv6 Pure ONNX Inference Engine with Built-in Document/Ticket Recognition

Chinese open-source OCR ports PP-OCRv6 to Java with pure ONNX Runtime engine.

mica-ppocr v1.2.3 Released: A Pure ONNX Inference Engine for Java 8 with Built-in Document/Ticket Recognition

Core Announcement: The mica-ppocr project released version 1.2.3 on September 20, 2026. This is a Java port of the PP-OCRv6 text detection and recognition pipeline, featuring pure ONNX Runtime inference with zero PaddlePaddle dependency. Key facts:

  • Release Date: September 20, 2026
  • New Version: v1.2.3
  • Java Compatibility: Java 8 and above
  • Inference Framework: Pure ONNX Runtime, no PaddlePaddle needed
  • Weight Availability: Open-sourced under the same license as the original PP-OCRv6

Pure ONNX Port: Full Reproduction from Python to Java

mica-ppocr fully ports the PP-OCRv6 text detection and recognition pipeline, using ONNX Runtime exclusively. This removes the dependency on the PaddlePaddle framework, enabling Java developers to deploy OCR services on servers without a Python environment.

The project is ported from AIwork4me/ppocrv6_onnx’s single-file Python reference implementation, and explicitly maintains bit-exact compatibility with the Python version—meaning identical inputs produce byte-for-byte identical outputs. All key components of PP-OCRv6 have been faithfully reproduced, including DB (Differentiable Binarization) post-processing, CTC (Connectionist Temporal Classification) decoding, and pyclipper-equivalent polygon unclipping. These accurately ported pre- and post-processing steps are essential for preserving recognition accuracy.

Notably, the project runs by default in CPU single-threaded mode. Although ONNX Runtime supports multi-threading acceleration, the developers chose single-thread as the default to minimize resource consumption, making deployment on low-spec servers or edge devices practical. This design contrasts with competitors that prioritize GPU-based high-throughput processing over ease of deployment.

Structured Parsing: Document/Ticket Recognition Capabilities

Version 1.2.3 adds recognition capabilities for Chinese documents and tickets. The engine not only detects and recognizes text but also understands layout and semantic relationships—extracting fields like name, ID number, and issuing authority from ID images as key-value pairs. This is highly valuable for finance, government, and logistics sectors, converting raw document images into structured data for downstream systems.

Common categories likely include: ID card, driver’s license, vehicle registration, business license, VAT invoice, receipt, passport, and Mainland Travel Permit for Hong Kong and Macau. Structured parsing relies on coordinated layout analysis and key information extraction, a hallmark of OCRv3/v6-grade capabilities.

Performance & Deployment: Balancing Lightweight Footprint and Zero Dependencies

Introducing ONNX Runtime brings clear deployment advantages. Compared to traditional OCR solutions requiring large deep learning frameworks (e.g., PaddlePaddle), mica-ppocr only needs the ONNX Runtime Java bindings, resulting in a controllable JAR size and easier containerization or offline distribution.

For Java teams, this means:

  • No inter-process communication (IPC) between Python services and Java applications
  • Avoidance of compatibility issues from PaddlePaddle version upgrades
  • Unified use of Java ecosystem tools for monitoring, logging, and build pipelines

Getting Started: Who Should Adopt Now?

Recommended for:

  • Java-centric backends aiming to reduce multi-language deployment complexity
  • Offline scenarios where OCR latency is not critical, but deployment simplicity and stability matter
  • Lightweight mobile mini-app backends requiring basic OCR and structured field extraction

Consider waiting:

  • Real-time, high-concurrency services (e.g., video-stream OCR at thousands of FPS)
  • Teams needing custom model fine-tuning or pre-training capabilities

Final Notes

The Java ecosystem for Chinese OCR has long lacked mature options. mica-ppocr v1.2.3 fills this gap, leveraging PP-OCRv6 as a performance benchmark while leveraging ONNX’s standardized format to ease cross-platform migration. As multi-language deployment costs rise, a pure Java stack’s operational simplicity becomes a pragmatic choice for enterprises seeking cost efficiency.