Zum Hauptinhalt springen

Tesseract OCR — Open-Source-Engine zur optischen Zeichenerkennung

Tesseract OCR ist eine auf Deep Learning basierende Engine zur Textextraktion aus Bildern und PDF-Dokumenten. Nutzen Sie diese Dokumentation, um die Installation unter Windows, Linux und macOS zu meistern, KI-Modi zu konfigurieren und OCR nahtlos in Ihre Software-Pipelines zu integrieren.

Hinweis: Der Kern von Tesseract ist ein Kommandozeilenprogramm und eine C++-API-Bibliothek.
Sofortige Browser-Demo: Möchten Sie keine lokalen Binärdateien installieren? Testen Sie die Bilderkennung zu 100 % privat mit unserem Online Web OCR Tool.

Was ist Tesseract?

Tesseract ist eine Engine, die Bildpixel in strukturierte, durchsuchbare Textdaten umwandelt. Ursprünglich 1985 bei Hewlett-Packard entwickelt, wird es heute von der weltweiten Open-Source-Community gepflegt und unterstützt über 100 Sprachen nativ durch neuronale LSTM-Netzwerke (Long Short-Term Memory).


Entwicklerleitfäden

Neben dieser Referenz veröffentlichen wir vollständige, getestete Leitfäden für jede Tesseract-Entwicklungsaufgabe:

Installation

Da Tesseract eine optimierte C++ Bibliothek ist, empfiehlt sich die Installation über den Paketmanager Ihres Betriebssystems.

macOS

Homebrew ist die offiziell empfohlene Methode für macOS (Apple Silicon und Intel Chips).

Terminal
brew install tesseract
brew install tesseract-lang

Ubuntu / Debian

Die Standard-Paketquellen von apt enthalten stabile Versionen von Tesseract.

Terminal
sudo apt install tesseract-ocr
sudo apt install tesseract-ocr-deu tesseract-ocr-all

Windows

Vorkompilierte Windows-Installer werden durch das UB Mannheim Projekt bereitgestellt. Paketmanager wie scoop oder winget unterstützen Tesseract ebenfalls nativ.

PowerShell
scoop install tesseract
scoop install tesseract-languages

Schnellstart & Grundlegende CLI-Befehle

Tesseract ist primär ein Kommandozeilenwerkzeug. Die Textextraktion gelingt in einer einzigen Zeile.

Terminal
tesseract bildname ausgabename [-l sprache] [-psm segmentierungsmodus] [konfigurationsdatei...]

Beispiel: Deutschen Text extrahieren

Um Text aus rechnung.png zu extrahieren und in ergebnis.txt zu speichern:

Terminal
tesseract rechnung.png ergebnis -l deu
Hinweis: Lassen Sie die Dateiendung .txt im Ausgabenamen weg. Tesseract hängt .txt automatisch an.

Seitensegmentierungsmodi (PSM)

Seitensegmentierungsmodi (PSM) steuern, wie Tesseract das visuelle Layout eines Bildes analysiert, um Textblöcke zu finden. Standardmäßig erwartet Tesseract eine vollständige Textseite (PSM 3). Wenn Ihre Eingabe nur eine Zeile oder unzusammenhängenden Text enthält, setzen Sie das Flag --psm entsprechend.

Faustregel: Nutzen Sie PSM 3 (Auto) für Dokumente, PSM 6 (Block) für gleichmäßige Absätze und PSM 7 (Einzelzeile) für Etiketten und Barcodes.
  • 0: Nur Erkennung von Orientierung und Schriftart (OSD).
  • 1: Automatische Seitensegmentierung mit OSD.
  • 3: Vollautomatische Seitensegmentierung ohne OSD. *(Standard)*
  • 4: Einzelne Textspalte mit variablen Schriftgrößen.
  • 6: Einzelner einheitlicher Textblock.
  • 7: Bild als einzelne Textzeile behandeln.
  • 11: Sparsamer Text. Findet so viel Text wie möglich ohne feste Ordnung.
  • 13: Reine Zeile. Verarbeitet als Einzelzeile unter Umgehung interner Heuristiken.

Um die Erkennung als einzelne Zeile zu erzwingen:

Terminal
tesseract barcode.png stdout --psm 7

OCR Engine Modi (OEM)

Die Engine-Modi (OEM) erlauben das Umschalten zwischen dem klassischen regelbasierten Erkennungsverfahren und dem modernen neuronalen LSTM-Netzwerk. Sie können die Modi über das Flag --oem steuern, um Geschwindigkeit und Präzision abzustimmen.

Empfehlung: OEM 1 (LSTM) ist der Standard in Tesseract 5 und bietet die höchste Erkennungsgenauigkeit. OEM 0 (Legacy) wird nur für spezielle historische Schriften benötigt.
  • 0: Nur klassische Legacy-Engine. (Traditionelle Computer-Vision-Methoden).
  • 1: Nur neuronale LSTM-Engine. (Schnell und hochpräzise).
  • 2: Legacy- und LSTM-Engine kombiniert.
  • 3: Standard, basierend auf dem geladenen .traineddata Modell.

Ausgabeformate

Neben einfachem Text im Terminal oder in .txt-Dateien kann Tesseract durchsuchbare PDFs und präzise Layoutgeometrien generieren.

Durchsuchbare PDFs

Um ein gescanntes Bild in ein durchsuchbares PDF mit unsichtbarem, exakt ausgerichtetem Text über dem Originalbild umzuwandeln:

Terminal
tesseract dokument.tif ausgabe_pdf pdf

PDF nur mit unsichtbarem Text

Nützlich, wenn Sie in einer Pipeline erkannten Text über bereits bestehende PDF-Seiten legen möchten:

Terminal
tesseract scan.png ausgabe textonly_pdf

hOCR / TSV / ALTO

Wenn Sie exakte Pixelkoordinaten (Bounding Boxes) jedes Wortes und deren Konfidenzwerte benötigen:

Terminal
tesseract bild.png ausgabe hocr
tesseract bild.png ausgabe tsv

→ Vollständige Anleitung zu PDF mit Tesseract OCR — durchsuchbare PDFs, OCRmyPDF, Python und Fehlerbehebung.


Programmierschnittstellen & Wrapper

Möchten Sie Tesseract in eine Web-App oder einen Microservice einbinden? Die Community bietet Bibliotheken für nahezu jede moderne Programmiersprache.

Python (pytesseract)

Installieren Sie die Engine und dann pip install pytesseract pillow. Die vollständige Anleitung behandelt image_to_string, Bildvorverarbeitung, PDFs, Konfidenz, PSM/OEM-Konfiguration und Fehlerbehebung.

→ Vollständige Python-Anleitung für Tesseract OCR

Node.js JavaScript (tesseract.js)

Nutzen Sie tesseract.js im Browser oder in Node über WebAssembly. Es erkennt Bilder und unterstützt keine PDFs. Die vollständige Wrapper-Liste und Kompromisse finden Sie in der Bibliotheksreferenz.

→ Tesseract OCR Bibliotheken & Wrapper


Eigene OCR-Modelle trainieren

Tesseract 5 fine-tunt und trainiert LSTM-Modelle mit dem tesstrain-Projekt. Das Training ist in den Binärinstallern nicht verfügbar: Sie benötigen einen Quellcode-Build (oder WSL2) sowie make, Ground-Truth-Generierung und das tesstrain-Repository.

→ Vollständiger Tesseract-Trainingsleitfaden (tesstrain, Fine-Tuning, Deployment)


Verwandte Dokumenten-KI & Deep-Learning-Engines

Obwohl Tesseract der bewährte Open-Source-Standard ist, werden moderne Pipelines häufig durch spezialisierte Bibliotheken ergänzt:

  • PaddleOCR: Deep-Learning-OCR-Framework (PP-OCR) mit hervorragender Tabellenerkennung und Unterstützung für mehrsprachige Dokumente. (Anleitung)
  • Docling: Dokumentenparser für Generative AI und RAG, der PDFs und Bilder in strukturiertes Markdown und JSON umwandelt. (Anleitung)
  • Python Pillow: Die Standardbibliothek zur Bildverarbeitung in Python (Kontrastanpassung, Schwellenwerte und Zuschnitt) vor dem OCR-Lauf.

Ende der Tesseract Kern-Dokumentation.

Haftungsausschluss: TesseractOCR.org ist ein unabhängiges Dokumentationsprojekt der Community und steht in keiner offiziellen Verbindung zum Projekt Tesseract OCR oder dessen Maintainern.