PP-OCRv5
PP-OCRv5 ist die Pipeline von PaddleOCR für Texterfassung und -erkennung: Ein Detektor mit differenzierbarer Binarisierung lokalisiert Textvierecke, ein SVTR/CTC-Erkenner liest sie. LibreYOLO portiert zwei Tiers nach PyTorch.
- Aufgaben
- ocr
- Größen
- t, l at 960 px
- Installation
pip install libreyolo- Supportstufe
- Nur Inferenz, seit v. Nur Vorhersage, Validierung und Export. Trainingsfunktionen sind nicht verfügbar.
- Upstream
- PaddleOCR (PP-OCRv5) von PaddlePaddle Authors, Apache-2.0. Publikation, Quelle
- Lizenzen
- Code Apache-2.0, Gewichte Apache-2.0. Kommerzielle Nutzung
Installation
PP-OCRv5 benötigt neben dem Basispaket kein Zusatzpaket.
pip install libreyoloVorhersage
Die Gewichte werden bei der ersten Verwendung von Hugging Face heruntergeladen und lokal zwischengespeichert.
from libreyolo import LibreYOLO, SAMPLE_IMAGE model = LibreYOLO("LibrePPOCRl-ocr.pt")result = model(SAMPLE_IMAGE, save=True) for text, conf in zip(result.ocr.texts, result.ocr.conf): print(text, float(conf))libreyolo predict model=LibrePPOCRl-ocr.pt source=receipt.jpg save=Truefrom libreyolo import LibreYOLO, SAMPLE_IMAGE model = LibreYOLO("LibrePPOCRl-ocr.pt")result = model(SAMPLE_IMAGE) # Polygone der Form (N, 4, 2) in Lesereihenfolge: oben links, oben rechts,# unten rechts, unten links. Erkennungsvierecke sind echte Polygone# (gedrehter Text) und landen daher in result.ocr statt result.boxes.print(result.ocr.data.shape)print(result.ocr.det_conf)Jeder Checkpoint bündelt beide Phasen, Erfassung und Erkennung, in einer
.pt-Datei. Zeichensatz und Pipeline-Standardwerte des Erkenners stehen in den
Checkpoint-Metadaten. Der Erkenner liest vereinfachtes und traditionelles
Chinesisch, Englisch, Japanisch und Pinyin mit einem Wörterbuch. result.ocr
ist eine OCRRegions-Nutzlast: .data enthält die Vierpunktpolygone, .texts
die Transkripte, .conf den Erkennungs-Score pro Region und .det_conf den
Erfassungs-Score. Quellen mit mehreren Bildern werden nacheinander verarbeitet.
Die zweistufige Pipeline bildet keine Batches über mehrere Bilder. Unter
Vorhersage findest du Quellen, Streaming und die Verarbeitung
von Ergebnissen.
Varianten
Es gibt zwei Tiers: t verwendet leichtere PP-LCNetV3/PP-OCRv5_mobile-Backbones
für CPUs, l PP-HGNetV2-Server-Backbones für höhere Accuracy. Beide Tiers
führen die Erfassung mit einer festen Grenze für die lange Seite aus und
erkennen Zuschnitte in Batches. rec_batch steuert, wie viele Zuschnitte pro
Vorwärtslauf den Erkenner durchlaufen.
Validierung
val() misst die Pipeline anhand eines Bildverzeichnisses plus einer Datei
labels/<split>.jsonl oder einer gleichwertigen Datensatz-YAML. Jedes Label
führt die Polygone und Transkripte der Textregionen eines Bildes auf. Gemeldet
werden Detection Hmean (Precision/Recall/F1 mit IoU-Abgleich), End-to-End F1
(Hmean plus exakte Übereinstimmung des normalisierten Transkripts, die
Fitnessmetrik des Checkpoints) und 1-NED, die mittlere normalisierte
Editierdistanz über zugeordnete Paare.
from libreyolo import LibreYOLO model = LibreYOLO("LibrePPOCRl-ocr.pt")metrics = model.val(data="my-dataset") print(metrics["metrics/det_hmean"])print(metrics["metrics/e2e_f1"]) # Hauptmetrikprint(metrics["metrics/rec_1-NED"])libreyolo val model=LibrePPOCRl-ocr.pt data=my-datasetExport
| Aufgabe | ONNX | TorchScript | ExecuTorch | TensorRT | OpenVINO | Paddle | MNN | RKNN | ncnn | TFLite | CoreML | Core AI |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ocr | ocr to ONNX: nicht unterstützt | ocr to TorchScript: nicht unterstützt | ocr to ExecuTorch: nicht unterstützt | ocr to TensorRT: nicht unterstützt | ocr to OpenVINO: nicht unterstützt | ocr to Paddle: nicht unterstützt | ocr to MNN: nicht unterstützt | ocr to RKNN: nicht unterstützt | ocr to ncnn: nicht unterstützt | ocr to TFLite: nicht unterstützt | ocr to CoreML: nicht unterstützt | ocr to Core AI: nicht unterstützt |
PP-OCRv5 ist eine Pipeline aus zwei Netzwerken, Erfassung und Erkennung, die
gemeinsam verschoben werden, und kein einzelner tracebarer Graph. Der Export
ist nicht implementiert, noch wird ein Format unterstützt. Trainiere den
Apache-2.0-Upstream-Code direkt nach und konvertiere das Ergebnis mit
weights/convert_ppocr_weights.py, wenn du einen Checkpoint außerhalb dieses
Formats benötigst.
Checkpoints
Alle veröffentlichten Gewichtsdateien dieser Familie.
| Datei | Eingabe (px) | Lizenz der Gewichte |
|---|---|---|
| ocr | ||
| LibrePPOCRt-ocr.pt | apache-2.0 | |
| LibrePPOCRl-ocr.pt | apache-2.0 | |
Jede oben aufgeführte Datei ist heute in der LibreYOLO-Organisation verfügbar und wird bei der ersten Verwendung heruntergeladen.
Lizenzierung
Prüfe die Lizenz im Hugging-Face-Repository der konkreten Gewichte, die du herunterlädst. Jeder Checkpoint in der LibreYOLO-Organisation hat eine Lizenz, und sie ist innerhalb einer Familie nicht immer gleich. Dieses Repository ist die maßgebliche Quelle. Die Zusammenfassung unten beschreibt den Stand bei der letzten Verifizierung dieser Seite.
Dies ist eine Beschreibung der beteiligten Lizenzen und keine Rechtsberatung. Wenn die Antwort kommerziell relevant ist, lies die Lizenzen selbst und hole eigenen Rechtsrat ein.
- Originalarbeit
- PaddleOCR (PP-OCRv5), PaddlePaddle Authors
- Upstream-Lizenz
- Apache-2.0
- Upstream-Quelle
- github.com/PaddlePaddle/PaddleOCR
- LibreYOLO-Code
- MIT
- Gewichte
- Apache-2.0, erneut unter huggingface.co/LibreYOLO veröffentlicht
- Einordnung
- Apache-2.0 is a permissive license: the architecture, the officially released PP-OCRv5 checkpoints this port converts, and LibreYOLO's own PyTorch port may all be used, modified and redistributed, including commercially, provided the license text and attribution notices travel with any copy. It grants a patent license and places no obligation on your own application code.
Zitieren
@misc{cui2025paddleocr30technicalreport,
title={PaddleOCR 3.0 Technical Report},
author={Cheng Cui and Ting Sun and Manhui Lin and Tingquan Gao and Yubo Zhang and Jiaxuan Liu and Xueqing Wang and Zelun Zhang and Changda Zhou and Hongen Liu and Yue Zhang and Wenyu Lv and Kui Huang and Yichao Zhang and Jing Zhang and Jun Zhang and Yi Liu and Dianhai Yu and Yanjun Ma},
year={2025},
eprint={2507.05595},
archivePrefix={arXiv},
primaryClass={cs.CV},
url={https://arxiv.org/abs/2507.05595},
}Aus dem Zitierblock der Autoren unter github.com/PaddlePaddle/PaddleOCR#citation kopiert.