Tesseract Guide (1) – Installation, Einrichtung und Training

Tesseract ist eine Optical Character Recognition (OCR)-Engine, die ihren Ursprung bei HP Labs hat und 2005 als Open-Source-Projekt veröffentlicht wurde. Im Jahr 2006 übernahm Google die Entwicklung und hat seitdem kontinuierlich Verbesserungen und Aktualisierungen bereitgestellt. Mittlerweile hat sich Tesseract zu einer weit verbreiteten OCR-Engine entwickelt, die über 100 Sprachen unterstützt.

Im Vergleich zu proprietärer OCR-Software bietet Tesseract nicht nur eine kostenfreie OCR Engine, sondern auch die Möglichkeit, die Qualität der Texterkennung stetig durch menschliches Feedback zu verbessern. Dies ist häufig sogar nötig, da die konventionelle Installation des Tools keine optimale Qualität bei der Erkennung ermöglicht.

Wir erklären in unserem zweiteiligen Tesseract Guide, wie die Software funktioniert und wie Sie die Software bestmöglich nutzen können. Im ersten Teil zeigen wir, wie Sie das Tool richtig installieren, einrichten und trainieren.

Im zweiten Teil, den Sie HIER finden, erfahren Sie, was Sie bei der Verwendung von Tesseract OCR beachten sollten und an welche Best Practices Sie sich halten können.

1. Funktionsweise von Tesseract

tesseract

Tesseract arbeitet in mehreren Schritten, um Text aus Bildern zu extrahieren. Zuerst führt es eine Vorverarbeitung des Bildes durch, um die Qualität für die Texterkennung zu optimieren. Anschließend segmentiert Tesseract OCR das Bild in Textblöcke, Zeilen und Wörter und analysiert die Struktur des Textes.

In der Vorverarbeitungsphase kommt Leptonica ins Spiel, ebenfalls eine Open-Source-Bibliothek, die für die Bildverarbeitung und -manipulation verantwortlich ist. Mit Leptonica werden die Bilder optimiert, indem Rauschen reduziert, Farben normalisiert und die Skalierung angepasst wird, um die Effektivität von Tesseracts maschinellem Lernen zu erhöhen. Abgesehen davon kümmert sich Leptonica jedoch nicht um die Texterkennung und -extraktion, die ausschließlich in der Zuständigkeit von Tesseract liegt.

In der Erkennungsphase verwendet das Tool maschinelles Lernen, um die Zeichen in den Bildern zu identifizieren. Seit der Version 4.0 hat die Software den Schwerpunkt auf Long Short-Term Memory (LSTM)-Netzwerke gelegt, um die Erkennungsgenauigkeit weiter zu verbessern. Schließlich führt das Tool eine Nachbearbeitung durch, um falsch erkannte Zeichen zu korrigieren und das endgültige Textergebnis zu generieren.

tesseract beispiel

2. Anwendungsbereiche von Tesseract

Tesseract OCR findet Anwendung in verschiedenen Bereichen, in denen die Umwandlung von gescannten Dokumenten, Bildern oder PDFs in bearbeitbaren Text erforderlich ist. Einige der häufigsten Anwendungsfälle sind:

  • Automatisierung von Dateneingabe und Textextraktion
  • Digitalisierung von Büchern und Archivmaterial
  • Erkennung von Text auf Visitenkarten und Formularen
  • Automatisches Erkennen von Texten in Bildern
  • Erkennung von Nummernschildern und Verkehrsschildern
  • Texterkennung mit Tesseract auf mobilen Geräten und Webdiensten

Tesseract ist eine vielseitige und leistungsstarke OCR-Engine, die sowohl von Entwicklern als auch von Endbenutzern verwendet werden kann. Es bietet eine solide Basis für OCR-Projekte und kann an spezifische Anforderungen angepasst werden.

tesseract installation

3. Installation und Einrichtung von Tesseract

Mit seinen fortschrittlichen neuronalen Netzen erreicht Tesseract ein neues Level der Texterkennung. So installieren und richten Sie die Open-Source-Software richtig ein:

3.1 Systemanforderungen

Tesseract OCR kann auf verschiedenen Plattformen installiert werden. Damit die Engine effizient und reibungslos läuft, müssen bestimmte Systemanforderungen erfüllt sein. Dazu zählt mindestens ein Dual-Core-Prozessor mit 2 GHz und 2 GB RAM.

Für die Bearbeitung größerer Textmengen empfehlen sich jedoch ein Quad-Core-Prozessor oder höher und mindestens 4 GB RAM.

Grundsätzlich kann man sagen: Je mehr Speicherkapazität das System hat, desto schneller läuft der Verarbeitungsprozess. Das gilt insbesondere bei der Erstellung von OCR für ganze Bücher oder größere Textdateien.

3.2 Installation auf verschiedenen Plattformen

Sie können Tesseract OCR auf Windows, macOS und Linux installieren. Sollten sich während der Installation Fragen oder Probleme ergeben, hilft die offizielle Dokumentation der Softwre weiter.

3.2.1 Tesseract auf Windows installieren

Die Installation auf Windows gestaltet sich schnell und einfach. Nach Download der neuesten Version können Sie das Installationsprogramm, welches die Abhängigkeiten (Dependencies) wie Leptonica und Brew automatisch mitinstalliert, starten.

Während der Installation können Sie die Einstellungen individuell anpassen. Wir empfehlen, alle erforderlichen Komponenten, insbesondere die Sprachdaten, auszuwählen. Die Sprachdaten ermöglichen eine optimale Texterkennung mit der Tesseract Software. Für die Installation benötigen Sie mindestens Windows 7.

3.2.2 Tesseract auf macOS installieren

Um Tesseract auf macOS zu installieren, benötigen Sie mindestens Version 10.7.5. Wie bei Windows sollten Sie während der Installation die Sprachmodule mit installieren, die Sie benötigen. Wenn Sie diese Option jedoch nicht ausgewählt haben, können Sie das später nachholen. Sie können dann einfach die Sprachmodule in dem Verzeichnis manuell installieren, das Sie während der Installation des Tools ausgewählt haben.

3.2.3 Tesseract auf Linux installieren

Die Installation der Tesseract OCR-Engine auf Linux-Systemen gestaltet sich etwas komplexer als auf Windows und macOS. Dafür müssen Sie zunächst die dafür erforderlichen Pakete herunterladen und installieren. Diese variieren je nach Linux-Distribution, aber die meisten Distributionen benötigen das Paket „tesseract-ocr“. Um das Paket zu installieren, kann der folgende Befehl verwendet werden:

sudo apt-get install tesseract-ocr

Einige Distributionen erfordern möglicherweise auch das Paket „tesseract-ocr-all“, um alle Sprachunterstützungen zu installieren.

Nach der Installation der Pakete kann Tesseract OCR gestartet werden. Sie können jederzeit zusätzliche Sprachmodule installieren, um die Software zu erweitern. Dafür laden Sie die Module entweder manuell herunter oder installieren diese über das Paketmanagement-System der verwendeten Linux-Distribution. Um zum Beispiel das Sprachmodul für Deutsch zu installieren, kann der folgende Befehl verwendet werden:

sudo apt-get install tesseract-ocr-deu

Um die grafische Benutzeroberfläche von Tesseract auf Linux zu verwenden, müssen Sie diese in der Regel aus dem Paket „tesseract-ocr“ installieren:

sudo apt-get install tesseract-ocr

Nach der Installation kann die grafische Oberfläche gestartet werden, indem der Befehl „tesseract_gui“ in der Befehlszeile eingegeben wird.

3.3 Einrichtung der Umgebungsvariablen

Um Tesseract Solutions korrekt auf einem Betriebssystem auszuführen, müssen Sie die Umgebungsvariablen entsprechend einrichten. Diese helfen dem Tool dabei, die benötigten Ressourcen und Dateien aufzufinden und darauf zuzugreifen.

Für Windows müssen Sie beispielsweise das Verzeichnis, in dem das Tesseract-Installationsverzeichnis liegt, in die PATH-Variable der Umgebungsvariablen aufnehmen.

So kann die Software Tesseract auf die erforderlichen Dateien zugreifen – unabhängig von dem Ordner, in dem die Dateien abgelegt sind. Ähnliche Schritte müssen für macOS und Linux ausgeführt werden. Hier ist es ebenfalls notwendig, die Verzeichnisse anzugeben, in denen die Dateien der Software gespeichert sind.

Wie die Installation und Einrichtung der Software auf Linux funktioniert, zeigt Francesco Piscani in folgendem Video:

4. Training von Tesseract

Auch die beste OCR-Engine ist nur so gut wie ihre Datenbasis. Während die Standardfunktionen von Tesseract einfache OCR-Aufgaben schnell erledigen können, benötigt die Software für spezielle Anwendungsfälle ein Training. Dies ist entscheidend, um optimale Ergebnisse zu erzielen.

Um die Leistung des Tools zu verbessern, müssen Sie die OCR-Modelle an spezielle Anwendungsfälle anpassen. Dieser Prozess wird als Training bezeichnet. Es umfasst in der Regel die Erstellung von Trainingsdaten, das Fine-Tuning vorhandener OCR-Modelle sowie die Evaluierung und Leistungsmessung. Erst danach ist das Tool ist der Lage, Daten aus komplexeren Dokumente wie aus dem untenstehenden fehlerfrei auszulesen.

tesseract dokumenten ocr

4.1. Erstellen von Trainingsdaten

Um die Tesseract Software zu trainieren, benötigen Sie eine ausreichend große Sammlung von Beispielbildern oder -dokumenten. Diese Daten müssen bereits annotiert sein.

Um das (aufwändige) Annotieren von Daten möglichst schnell durchzuführen, können Sie auf verschiedene Tools zurückgreifen. Diese helfen, den Prozess zu automatisieren – oder zumindest zu beschleunigen.

Ein Beispiel für ein solches Tool ist das Programm Lios. Es ist ein Open-Source-Tool, das speziell für die Ausgabe von OCR-erkanntem Text entwickelt wurde. Es kann bei der Erstellung von Trainingsdaten helfen, indem es die Annotierung automatisch vornimmt und damit den Aufwand reduziert.

Weitere Tesseract Trainingsdaten können zudem über GitHub heruntergeladen werden.

Eine weitere Option zur Beschaffung von Trainingsdaten besteht darin, Vorlagen zu verwenden, um Ihre Anforderungen an die Datenextraktion zu verbessern. Zum Beispiel können Sie vorhandene Vorlagen, die ähnlich zu Ihren gewünschten Datenstrukturen sind, nutzen, um entsprechende Trainingsdaten für Tesseract OCR zu erstellen. Dies ist in der Regel eine schnellere und kostengünstigere Methode als die manuelle Erstellung von Trainingsdaten.

4.2 Fine-Tuning vorhandener Modelle

Um vorhandene Modelle auf spezifische Anwendungsfälle anzupassen, sollten Sie diese einem Fine-Tuning unterziehen.

Das Fine-Tuning umfasst das Trainieren vorhandener Modelle mit zusätzlichen Daten, um die Leistung der OCR-Engine Tesseract für eine spezifische Aufgabe zu verbessern.

Es ist wichtig zu beachten, dass das Fine-Tuning nur dann erfolgreich ist, wenn die zusätzlichen Trainingsdaten für die spezifische Aufgabe relevant sind.

Für das Fine-Tuning müssen Sie zwei Dateitypen vorbereiten:

  1. die Tesseract-Traineddata-Datei
  2. die LSTM-Checkpoint-Datei

Die Traineddata-Datei enthält die Daten, die von Tesseract während des Trainings verwendet werden, um Buchstaben, Wörter und Zeichen zu erkennen. Die LSTM-Checkpoint-Datei enthält die Informationen, die das LSTM-Modell für seine Vorhersagen verwendet.

Um ein LSTM-Modell aus einem Standardmodell zu extrahieren und es für das Fine-Tuning vorzubereiten, führen Sie die folgenden Schritte aus:

  1. Laden Sie das Standardmodell in Tesseract.

  2. Extrahieren Sie das LSTM-Modell aus dem Standardmodell.

  3. Ändern Sie das LSTM-Modell, um es an die spezifische Aufgabe anzupassen, für die das Fine-Tuning durchgeführt wird.

  4. Trainieren Sie das abgestimmte Modell mit den zusätzlichen Trainingsdaten und speichern Sie die Model Checkpoints.

Model Checkpoints sind Zwischenergebnisse des Trainings, die während des Fine-Tunings regelmäßig gespeichert werden.

Diese Checkpoints sind wichtig, da sie ein aktuelles Modell mit den neuesten Trainingsdaten speichern. Wenn das Training unterbrochen wird, kann das Modell mit dem zuletzt gespeicherten Checkpoint fortgesetzt werden.

Sobald das feinabgestimmte Modell erstellt wurde, können Sie es in der OCR-Anwendung verwenden. Es ist jedoch wichtig, darauf zu achten, dass das Trainingsset die Praxis widerspiegelt, die es zu erkennen gilt.

4.3 Evaluierung und Leistungsmessung

Die Evaluierung und Messung der Leistung ist ein wichtiger Schritt, um sicherzustellen, dass die OCR-Engine Tesseract die erwartete Genauigkeit und Zuverlässigkeit bietet. Um dies zu erreichen, werden verschiedene Kennzahlen zur Beurteilung der OCR-Leistung herangezogen.

Eine der wichtigsten Kennzahlen ist die Lesegenauigkeit. Sie wird normalerweise als Prozentsatz angegeben und misst den Anteil der korrekt erkannten Zeichen im Verhältnis zu allen zu erkennenden Zeichen.

Darüber hinaus können weitere Kennzahlen wie

  • die Fehlerrate,
  • die falsch erkannten Zeichen,
  • die Ausführungsgeschwindigkeit und
  • die Genauigkeit bei unterschiedlichen Schriftarten und Sprachen

gemessen werden. Hierbei ist es wichtig, die zu erwartende Leistung unter realen Nutzungsbedingungen zu berücksichtigen und sie mit anderen OCR-Engines oder Methoden zu vergleichen.

Für die Leistungsmessung können Sie verschiedene Tools und Techniken einsetzen, wie z.B.

  • standardisierte Testdatensätze,
  • eine manuelle Überprüfung der Ergebnisse,
  • statistische Analysen oder
  • maschinelles Lernen.

Die Wahl des Verfahrens hängt von der spezifischen Anwendung und den verfügbaren Ressourcen ab. Beachten Sie jedoch, dass verschiedene Faktoren die OCR-Leistung beeinflussen. Dazu zählen unter anderem die Bildqualität, Schriftart, Sprache sowie das Layout und Format des Dokuments.

Gibt es eine Alternative zu Tesseract?

Ja, es gibt mehrere Alternativen zu Tesseract-OCR (optische Zeichenerkennung). Hier sind ein paar davon:

Abbyy FineReader: Diese OCR-Software bietet eine hohe Genauigkeit bei der Texterkennung und ist besonders gut geeignet für das Scannen von Büchern und Dokumenten. Sie unterstützt eine Vielzahl von Sprachen und hat starke Layout-Analysefunktionen.

Amazon Textract: Dies ist ein Service von Amazon Web Services, der OCR-Funktionen bietet. Es kann nicht nur Text aus Dokumenten extrahieren, sondern auch Formulare und Tabellen erkennen.

Google Cloud Vision OCR: Dieser Service ist Teil der Google Cloud Platform und kann Text in einer Vielzahl von Sprachen und Schriftarten erkennen.

Bitte beachten Sie, dass einige dieser Alternativen kostenpflichtig sind und ihre Kosten und Funktionen sich von Tesseract unterscheiden können. Es ist immer wichtig, Ihre spezifischen Anforderungen zu berücksichtigen, bevor Sie sich für eine OCR-Lösung entscheiden.

Tesseract Guide Teil 2: Verwendung, Ergebnisoptimierung und Best Practices

Lesen Sie jetzt den zweiten Teil unseres umfassenden Guides. Darin zeigen wir, wie Sie die Software in der Praxis anwenden und gelieferte Ergebnisse verbessern. Dabei geben wir Best Practice Tipps an die Hand, mit denen Sie effizient die Resultate erzielen, die Sie benötigen.

FAQ

Was ist Tesseract?

Tesseract ist eine Optical-Character-Recognition-Engine von Google. Die Open-Source-Software ermöglicht das Erkennen und Extrahieren von Text aus Bildern und gescannten Dokumenten. Tesseract ist eine der leistungsstärksten OCR-Engines, die über 100 Sprachen unterstützt.

Wie funktioniert Tesseract?

Tesseract extrahiert Text aus Bildern in mehreren Schritten: Zuerst optimiert es die Bildqualität durch Binarisierung, Rauschreduzierung und Skalierung. Dann segmentiert Tesseract das Bild in Textblöcke, Zeilen und Wörter, um die Textstruktur zu analysieren. In der Erkennungsphase identifiziert Tesseract die Zeichen mithilfe von maschinellem Lernen, insbesondere Long Short-Term Memory (LSTM)-Netzwerken. Schließlich korrigiert es falsch erkannte Zeichen und generiert das endgültige Textergebnis.

Was sind Anwendungsgebiete von Tesseract OCR?

Tesseract OCR wird zum Beispiel in der Automatisierung von Dateneingaben, Digitalisierung von Büchern und Archivmaterial, Erkennung von Text auf Visitenkarten und Formularen und der automatischen Übersetzung von Texten in Bildern eingesetzt. Unternehmen unter anderem im Finanzwesen und der Gesundheitsbranche nutzen die Technologie.

«
»
Avatar von Jan Schäfer

Neueste Artikel