LibrePPOCRl-ocr

PP-OCRv5 server tier (quality tier) converted to the LibreYOLO checkpoint format: one composite .pt bundling the DB text detector (det.*) and the CTC text recognizer (rec.*) plus the PP-OCRv5 recognition dictionary as charset metadata. Recognition covers Simplified Chinese, Traditional Chinese, English, Japanese, and Chinese pinyin with one dictionary and one model.

from libreyolo import LibreYOLO

model = LibreYOLO("LibrePPOCRl-ocr.pt")
r = model("receipt.jpg")
for poly, text, conf in zip(r.ocr.polygons, r.ocr.texts, r.ocr.conf):
    print(text, float(conf))

Provenance

Converted with weights/convert_ppocr_weights.py from the official Apache-2.0 PP-OCRv5 training checkpoints released by the PaddleOCR project (paper: PaddleOCR 3.0 Technical Report):

Upstream checkpoint SHA-256
PP-OCRv5_server_det_pretrained.pdparams 2802f7d4748ea592819ae4550c195c5bdb43755dfdb5ebd25e01bb4d885aebc9
PP-OCRv5_server_rec_pretrained.pdparams 8ce5dfc1294af6ee680d562841a9909257d6a9a9242387c2e8dc50ea8f647143

This file: LibrePPOCRl-ocr.pt, SHA-256 6a58b6a2af947a40d48e50c2aa2f050b300d10367bdba5840993b900bf59358e.

The conversion is a name-mapped metadata wrap (batch-norm buffer renames, Linear transposes, det./rec. namespacing); learned parameters are unchanged. Stage parity vs the official PP-OCRv5 inference graphs on identical input tensors: detection maps match to <= 1e-4 and recognition probabilities to <= 6e-5 with identical argmax.

Code and weights are used under the Apache License 2.0. Copyright (c) 2020 PaddlePaddle Authors.

Downloads last month

-

Downloads are not tracked for this model. How to track
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support

Paper for LibreYOLO/LibrePPOCRl-ocr