OCR Text-Extraktion
Der Service Task „OCR Text-Extraktion" erkennt automatisch alle Textinhalte in einem PDF-Dokument oder Bild und gibt sie als strukturierten Text zurück. Die Erkennung basiert auf einer leistungsfähigen OCR-Engine (PaddleOCR) und unterstützt sowohl gedruckten Text als auch Handschrift.
So können eingehende Dokumente wie Lieferscheine, Rechnungen oder Formulare automatisiert ausgelesen und in Folgeprozessen weiterverarbeitet werden – beispielsweise für eine KI-gestützte Klassifizierung oder Datenextraktion.
Input-Parameter
Die folgenden Felder werden als Eingabe für den Task benötigt:
{
"pdf": {
"referenceId": "...",
"filename": "lieferschein.pdf"
},
"enableHandwriting": true,
"outputFormat": "json"
}
Erläuterung:
pdf.referenceId: Referenz auf die hochgeladene Datei (PDF oder Bild). Die Datei muss alsfileReferencevorliegen, z. B. aus einem vorherigen Upload-Schritt.pdf.filename: Der Dateiname inkl. Endung. Unterstützte Formate: PDF, JPG, PNG, BMP, TIFF.enableHandwriting: Optional (true/false, Standard:true). Aktiviert die Handschrift-Erkennung und automatische Dokumenten-Entzerrung. Bei rein gedruckten Dokumenten kann dies auffalsegesetzt werden, um die Verarbeitung zu beschleunigen.outputFormat: Optional (jsonodermarkdown, Standard:json). Bestimmt das Ausgabeformat.
Output
Der Task gibt die erkannten Texte seitenweise zurück:
{
"metadata": {
"source_file": "lieferschein.pdf",
"total_pages": 1,
"total_text_blocks": 49,
"total_tables": 0
},
"pages": [
{
"page_number": 0,
"text": "Lieferschein Nr. 7208166\nDatum: 19.03.2025\nKunde: Muster GmbH",
"text_blocks": [
{
"text": "Lieferschein Nr. 7208166",
"confidence": 0.98,
"bbox": { "x_min": 50, "y_min": 30, "x_max": 400, "y_max": 60 }
}
]
}
],
"full_text": "Lieferschein Nr. 7208166\nDatum: 19.03.2025\nKunde: Muster GmbH"
}
Erläuterung:
metadata: Zusammenfassung mit Quelldatei, Seitenanzahl und Gesamtzahl erkannter Textblöcke.pages: Array mit einer Seite pro erkannter Dokumentseite.text: Der vollständige erkannte Text der Seite als Fließtext.text_blocks: Einzelne Textblöcke mit Position (bbox) und Konfidenzwert (confidence, 0–1).
full_text: Der gesamte Text aller Seiten zusammengefügt — ideal als Eingabe für nachfolgende KI-Services.
JSONata-Beispiele
// Datei aus einem vorherigen Upload-Schritt referenzieren
{
"pdf": {
"referenceId": fileUploadStep.referenceId,
"filename": fileUploadStep.filename
},
"enableHandwriting": true
}
// Den extrahierten Volltext an einen KI-Service weiterleiten
{
"text": ocrResult.full_text,
"categories": ["Rechnung", "Lieferschein", "Angebot", "Sonstiges"]
}
Hinweise
- Die Verarbeitungszeit beträgt je nach Dokumentgröße und -komplexität ca. 10–90 Sekunden.
- Bei aktivierter Handschrift-Erkennung (
enableHandwriting: true) wird das Dokument automatisch entzerrt, was die Erkennung bei schräg gescannten oder fotografierten Dokumenten verbessert. - Mehrseitige PDFs werden vollständig verarbeitet – jede Seite erscheint als eigenes Element im
pages-Array. - Der
confidence-Wert jedes Textblocks eignet sich gut zur Qualitätsbewertung — Werte unter 0.7 deuten auf unsichere Erkennung hin.
Tipp
Die Kombination mit dem Service Task „KI: Dokument klassifizieren" oder „KI: Strukturierte Daten extrahieren" ist besonders effektiv: Zuerst wird der Text per OCR erkannt und anschließend automatisch klassifiziert oder in strukturierte Datenfelder überführt.