FAQ – Häufig gestellte Fragen

Hier finden Sie Antworten auf die am häufigst gestellten Fragen rund um das Thema automatisierte Texterkennung sowie die im Projekt OCR-BW genutzte Software. Wenn die Antwort auf Ihre Frage nicht dabei ist, stellen Sie diese per Mail an Larissa Will unter larissa.will(at)uni-mannheim.de.

Allgemein

Was muss beim Scannen der Dokumente beachtet werden, um die Voraussetzungen für eine gute Texterkennung zu schaffen?

Bevor die eigentliche OCR erfolgreich durchgeführt werden kann, muss das Dokument zunächst gescannt werden. Dabei können bereits entscheidende Fehler passieren, die eine gute Texterkennung quasi unmöglich machen. Folgende Punkte sollten daher stets berücksichtigt werden:

  • Die Dokumente sollten in ausreichender Qualität gescannt werden. Es wird eine Auflösung von mindestens 300-400 dpi für Seiten im DIN A4 empfohlen.
  • Die Dokumente sollten sorgfältig gescannt werden, d. h. das Dokument sollte gerade ausgerichtet und vollständig sichtbar sein. Zudem sollte darauf geachtet werden, dass der Text keine Wellenbewegung macht, dies kann vor allem bei gebundenen Dokumenten am Falz passieren.
  • Auf das Binarisieren des Textes sollte verzichtet werden. OCR-BW empfiehlt Farbscans oder zumindest Scans in Graustufen für die Texterkennung zu nutzen.
  • Die Seiten des Dokuments sollten als einzelne Bilder gespeichert werden. Vorzugsweise sollten TIFF-Dateien erzeugt werden und kein zusammenhängendes PDF.
Welche Texterkennungssoftware eignet sich für Drucke?

Für die Texterkennung von Drucken gibt es eine Reihe von Programmen, die sich gut dafür eignen.

  • Frei verfügbar:
    • Tesseract
    • Kraken bzw. eScriptorium
    • OCR-D
    • PERO-OCR
    • OCR4All
  • Kostenpflichtige Software:
    • Transkribus
    • ABBY Finereader

Im Projekt OCR-BW wurde vor allem Tesseract für die effiziente Erkennung von großen Datenmengen alter Drucke genutzt. In eScriptorium lässt sich dagegen unkompliziert Ground Truth für eventuell erforderliche Nachtrainings erstellen. Moderne Drucke lassen sich gut mit ABBY Finereader erkennen. PERO-OCR liefert sehr gute Universalmodelle für Hand- als auch Druckschriften.

Welche Texterkennungssoftware eignet sich für Handschriften?

Für Handschriften empfehlen wir vor allem Transkribus sowie eScriptorium als kostenfreie Open-Source Alternative, wobei wir für letzteres momentan noch kein universelles Handschriftenmodell bereitstellen können. Auch PERO-OCR bietet generische Handschriftenmodelle (v. a. für Kurrentschrift), die sehr gute Ergebnisse liefern.

Welche Alternativen gibt es zum teilweise kostenpflichtigen Transkribus?

Es gibt eine Vielzahl von kostenfreien Alternativen zu Transkribus, die alle ihre Vor- und Nachteile haben. Im Projekt OCR-BW wurde ein besonderes Augenmerk auf die Texterkennungs- und Transkriptionsplattform eScriptorium gelegt, aber auch das von der Universität Brünn (Tschechien) entwickelte PERO-OCR bietet gute Möglichkeiten.

Sollte ich erstellte Ground Truth der Öffentlichkeit zur Verfügung stellen? Wenn ja, wie?

Ja! Die Erzeugung von Ground-Truth-Daten für Segmentierungs- und Texterkennungsmodelle ist aufwändig und kostenintensiv. Es ist daher für eine nachhaltige und nachvollziehbare Wissenschaft wünschenswert, wenn die Daten gemäß den FAIR-Prinzipien bereitgestellt werden. Ground-Truth-Daten werden häufig über verschiedene Repositorien wie HTR-United, Zenodo oder auch Github bereitgestellt. Für die Bereitstellung über Github gibt es das GT-Repo-Template, dass die Erstellung eines Ground Truth Repos übernimmt und verschiedene Funktionen und Features bietet: z. B. Erstellung von Metadaten, Datenanalyse und Präsentation. Eine Zusammenfassung zum Thema finden Sie außerdem auf Zenodo.

Kann ich trainierte OCR-Modelle bereitstellen? Wenn ja, wie?

Als Äquivalent zu generiertem Ground Truth können bzw. sollten trainierte Modelle auch der Community zur Verfügung gestellt werden. Dies ist zumindest bei Open Source Software möglich. Sie finden beispielsweise bei Zenodo eine große Auswahl an OCR-Modellen, die stetig wächst. Außerdem gibt es für Modelle ein OCR-Model-Repo-Template, das automatisch ein OCR Model Repo auf Github erstellt.

Gibt es Möglichkeiten Anpassungen am erkannten Layout und Textinhalten automatisiert vorzunehmen? 

Ja, es gibt eine Möglichkeit. Das Skript PagePlus verarbeitet PAGE XML-Dateien, ein in der Dokumenten-Layoutanalyse weit verbreitetes Format, um verschiedene Operationen wie Validierung, Reparatur, Erweiterung und Änderung von Textregionen und Zeilen durchzuführen.

Wie finde ich heraus, welche Software sich für meinen Anwendungsfall am besten eignet?

Bei dieser Frage kann Ihnen der OCR Recommender weiterhelfen, der im Rahmen des Konsortiums BERD@NFDI erstellt wurde. Anhand einiger Fragen bekommen Sie eine Empfehlung zum Thema automatische Texterkennung, sowie zu Vor- und Nachbearbeitungsmöglichkeiten, bezogen auf ein spezifisches Werk oder Reihe an Werken.

Was ist Pre-Processing? Und ist es notwendig, dass es durchgeführt wird?

Pre-Processing bezieht sich auf die Vorverarbeitung von Bildern, um deren Qualität zu verbessern und sie optimal für die anschließende automatische Texterkennung vorzubereiten.

Es gibt verschiedene Schritte, die man durchführen kann, um die Qualität der Ergebnisse zu optimieren. Wenn Sie Scans selbst angefertigten, können Sie hierbei einige Punkte beachten, sodass Pre-Processing obsolet wird. Es sollte zum Beispiel eine hohe Auflösung von etwa 300-400 dpi gewählt werden. Die Seiten sollten einzeln, in Farbe und idealerweise als TIFF oder JPEG 2000 gespeichert werden, um die besten Voraussetzungen für die Texterkennung zu schaffen. In der Praxis erfüllen Scans jedoch oft nicht all diese Kriterien, dann kann Pre-Processing hilfreich werden.

Mögliche Pre-Processing-Schritte umfassen:

  • Cropping: Zuschneiden von Seiten oder Trennen von Doppelseiten.
  • Dewarping: Glätten von Zeilen, zum Beispiel bei Text im Falz.
  • Deskewing/Rotierung: Geradeausrichten von Bildern.
  • Kontraste schärfen: Verbesserung der Bildschärfe.
  • Helligkeit regulieren: Anpassung der Helligkeit.
  • Binarisierung: Anwendung von Binarisierungsverfahren, je nach verwendeter Software.
  • Upscaling: Vergrößerung oder Verkleinerung von Bildern.

Einige Defizite in den Scans können auch durch Training der Texterkennungssoftware ausgeglichen werden.

Wie kann ich ein Transkribus XML in ein gängiges PAGE-XML-Format konvertieren?

Wenn Sie Transkripte in Transkribus erstellt haben und diese in einer anderen Umgebung weiterverwenden möchten, kann es sein, dass Sie die Transkribus-PAGE-XML in ein Standard-PAGE-XML-Format umwandeln möchten; dafür gibt es das Skript Transkribus-to-Prima. Für die Weiterverarbeitung in eScriptorium ist dieser Schritt normalerweise nicht notwendig.

eScriptorium

Kann ich Modelle von Transkribus in eScriptorium importieren?

Die Modellübertragung ist nicht direkt möglich, jedoch kann die Ground Truth also die, in Transkribus erstellte Transkription und die dazugehörigen Bilder in eScriptorium importiert werden. Anschließend kann das Modell in eScriptorium erneut trainiert werden. Eine detaillierte Anleitung hierzu finden Sie auf Github.

Gibt es universelles Layoutmodell für das lateinische Schriftsystem?

Die UB Mannheim hat mit ubma_segmentation ein Segmentierungsmodell trainiert, das sowohl bei gedruckten als auch bei handschriftlichen Texten mit relativ einfachem Layout gute Ergebnisse liefert. Das Ergebnis der Segmentierung hängt jedoch von vielen Faktoren ab. Das Modell ist in der eScriptorum-Instanz der UB Mannheim verfügbar und steht außerdem zum Download bereit. Außerdem finden Sie verschiedene Kraken-Modelle auch auf Zenodo.

Welche Modelle eignen sich für historische Drucke in Frakturschrift?

Für Texte in Frakturschrift v. a. aus dem 19./20. Jahrhundert eignen sich z. B. die Modelle german_print, Fraktur_2022-02-20, austriannewspaper_best oder digitue_best . Die Modelle sind in der eScriptorum-Instanz der UB Mannheim verfügbar und stehen außerdem zum Download bereit. Außerdem finden Sie verschiedene Kraken-Modelle auch auf Zenodo.

Welches Modell eignet sich für Behördenschriftgut, das mit einer Schreibmaschine erstellt wurde?

Für Texte und Behördendokumente v. a. aus dem 20. Jahrhundert, die mit einer Schreibmaschine erstellt wurden, eignen sich die Modelle typewriter oder german_print. Die Modelle sind auch auf der eScriptorum-Instanz der UB Mannheim verfügbar und stehen außerdem zum Download bei der UB bereit. Wenn das vorgeschlagene Modell keine zufriedenstellenden Ergebnisse erzielt, haben Sie die Möglichkeit, in eScriptorium selbst Trainingsmaterial zu erstellen, indem Sie die ausgegebene Transkription händisch korrigieren. Anschließend können Sie mit den korrigierten Seiten ein Nachtraining des Modells durchführen. Außerdem finden Sie verschiedene Kraken-Modelle auch auf Zenodo.

Welche Modelle eignen sich für die Erkennung von Handschriften?

Für handschriftlich verfasste Dokumente v. a. in Kurrentschrift des 20. Jahrhunderts, eignet sich das Modell german_handwriting. Das Modell ist auch auf der eScriptorum-Instanz der UB Mannheim verfügbar und steht außerdem zum Download bei der UB bereit. Wenn das vorgeschlagene Modell keine zufriedenstellenden Ergebnisse erzielt, haben Sie die Möglichkeit, in eScriptorium selbst Trainingsmaterial zu erstellen, indem Sie die ausgegebene Transkription händisch korrigieren. Anschließend können Sie mit den korrigierten Seiten ein Nachtraining des Modells durchführen. Außerdem finden Sie verschiedene Kraken-Modelle auch auf Zenodo.

Wenn Sie Ground-Truth für frei verfügbare Dokumente haben und uns diese zur Verfügung stellen könnten, würden wir uns sehr freuen. Wenden Sie sich dafür an Larissa Will unter larissa.will(at)uni-mannheim.de.

Gibt es auch Texterkennungsmodelle für arabische Schrift?

Ja, eScriptorium wurde ursprünglich speziell für die Erkennung von nicht-lateinischen Schriften konzipiert. Auf Zenodo finden Sie eine Auswahl an verschiedenen Erkennungsmodellen für unterschiedliche Formen des Arabischen, die von OpenITI zur Verfügung gestellt werden. Weitere Layout- sowie Texterkennungsmodelle für arabische Handschriften und Drucke von OpenITI finden Sie auf Github.

Weiterführende Erläuterungen dazu finden Sie in der Dissertation von Benjamin Kiessling: https://www.theses.fr/2021UPSLP023.pdf

Wie kann ich Modelle für Layouterkennung bzw. Texterkennung finden und importieren?

Modelle für die Layout- und Texterkennung finden Sie bei der UB Mannheim sowie auf Zenodo. In eScriptorium können Sie das gewünschte Modell ganz einfach unter: Meine Modelle → Modell hochladen importieren. Achten Sie darauf, dass Sie dem Modell außerhalb von eScriptorium bereits den gewünschten Namen geben, da es in eScriptorium selbst nicht mehr unbenannt werden kann. Eine detaillierte Anleitung zum (Nach-)Training von Modellen finden Sie au Github.

Wie kann ich Modelle aus eScriptorium exportieren?

Modelle für die Layout- und Texterkennung lassen sich ganz leicht aus eScriptorium exportieren. Gehen Sie dafür unter Meine Modelle und klicken beim gewünschten Modell auf den grünen Download-Button.

Gibt es Modelle, die zweispaltigen Text erkennen können?

An der UB Mannheim wurde ein Segmentierungsmodell trainiert, das auf historische und moderne Berichte und andere Drucksachen mit zweispaltigem Layout angewendet werden kann. Zudem hat Daniel Baránek ebenfalls ein Modell für zweispaltiges Layout auf der Basis von verschiedenen Zeitungen trainiert.

Gibt es die Möglichkeit (bereits vorhandene) virtuelle Keyboards in eScriptorium einzubinden?

Ja, Sie haben die Möglichkeit in eScriptorium selbst ein virtuelles Keyboard manuell anzulegen oder zu importieren. An der UB Mannheim wurde zudem der Keyboard Builder for eScriptorium entwickelt, mit dem Sie ganz einfach virtuelle Keyboards erstellen können. Sie haben auch die Möglichkeit, eine bereits vorhandene virtuelle Tastatur aus einem anderen Transkriptionsclient wie Transkribus zu importieren, ohne alle Ihre benutzerdefinierten Unicode-Zeichen erneut manuell hinzufügen zu müssen.

Tesseract

Wie wende ich Tesseract in der Kommandozeile an?

Für die Nutzung von Tesseract haben wir jeweils eine detaillierte Anleitung für die Installation und Nutzung unter Linux und Windows auf Github bereitgestellt.

Muss ich Tesseract über die Kommandozeile nutzen?

Nein, es besteht auch die Möglichkeit Tesseract über verschiedene graphische Oberflächen zu nutzen. Dazu gehört die vom ehemaligen Projektmitarbeiter Jan Kamlah entwickelte GUI TesseractXplore. Sie finden weitere Hinweise zum Download und zur Anwendung in der Dokumentation auf Github.

Welche Standardmodelle für Fraktur gibt es bei Tesseract?

Für alte Texte gibt es momentan mehrere Modelle. So ist zum Beispiel deu_frak ein Modell, das von einem Benutzer für Tesseract 3 trainiert wurde. Die aktuellen Standardmodelle sind deu_latf für deutsche Frakturschrift (enthält deutsches Wörterbuch) sowie script/Fraktur für Frakturschrift und historische Antiqua-Texte mit erweitertem Zeichenvorrat für alle westeuropäischen Sprachen.

Die Standardmodelle enthalten bekannte Probleme und Fehler. Das Modell deu-frak unterstützt nur die alte (musterbasierte) OCR-Engine, funktioniert also nicht mit einem neuronalen LSTM-Netz, mit dem normalerweise bessere OCR-Ergebnisse erzielt werden können. Das Modell frk hat einige Einschränkungen bezüglich des Zeichensatzes, den es erkennen kann. Es hat auch Probleme, insbesondere mit ch- und ck-Ligaturen. Das Modell script/Fraktur unterstützt einen größeren Zeichensatz als frk, hat aber ähnliche Probleme mit ch und ck.

Welche alternativen Modelle der UB Mannheim können für Fraktur verwendet werden?

Für Tesseract hat das Projektteam von OCR-BW bereits eigene Modelle trainiert, die sehr gute Ergebnisse bei der Texterkennung von Fraktur liefern und bei denen Fehler aus frk und script/Fraktur behoben sind. Die Modelle kennen außerdem die Varianten deutscher Umlaute. Zu diesen Modellen gehören vor allem Frak2021 und GT4HistOCR. Diese und weitere Modelle stehen bei der UB Mannheim zum Download bereit. Eine aktuelle Messung der Character Error Rate (CER) hat ergeben, dass das folgende Modell von Frak2021 die kleinste Fehlerrate erzeugt Frak2021_1.069_755545_3685930.

Wie installiert man zusätzliche Tesseract-Modelle?

Das Herunterladen von zusätzlichen Tesseract-Modellen gestaltet sich einfach. Unter Windows laden Sie zunächst das gewünschte Modell hier herunter. Anschließend schneiden Sie es aus dem Download-Ordner aus und fügen es in dem entsprechenden Ordner zu den anderen Schrift- bzw. Sprachmodellen hinzu. (Standardpfad: C:\Program Files\Tesseract-OCR\tessdata)

Gehen Sie in Linux in den Ordner, indem die Schrift- bzw. Sprachmodellen abgelegt werden und laden Sie dann mittels dem Befehl wget und dem entsprechenden Link, das gewünschte Modell herunter. (Beispiel: wget https://ub-backup.bib.uni-mannheim.de/~stweil/tesstrain/frak2021/tessdata_fast/frak2021_1.069.traineddata)

Gibt es auch Tesseract-Modelle mit Wörterbuch?

Das Modell von Frak2021, das momentan die kleinste Fehlerrate erzeugt, gibt es auch mit Wörterbuch. Es liefert damit eine nochmals leicht verbesserte CER von 3,25 %. Das Modell steht für Sie zum Download bereit.

Prinzipiell lässt sich das Wörterbuch ergänzen oder austauschen, was im Einzelfall das OCR-Ergebnis weiter verbessern kann.

Wie kann ich die Texterkennung bzw. die Ergebnisse weiter verbessern?

Qualitätsmängel kann es bei der Layoutanalyse (insbesondere der Zeilenerkennung) und bei der eigentlichen Texterkennung geben.

Tesseract hat bekannte Schwächen mit komplexen Seitenlayouts. Typische Probleme sind mangelhafte Trennung von Textspalten oder Textbereiche, die nicht als solche erkannt wurden, was zu fehlendem Text führt (relativ häufig bei Seitenzahlen). Im Extremfall kann es so passieren, dass eine Seite voller Text als leere Seite („Empty page“) gemeldet wird. Für solche Fälle helfen teilweise spezielle Aufrufparameter. Eine bessere Layoutanalyse erfordert aber andere Software, beispielsweise von OCR-D.

Die Qualität der Texterkennung hängt stark vom eingesetzten Modell ab. Möglicherweise kann es die Ergebnisse verbesseren, wenn zwei Modelle, die bereits gute Ergebnisse liefern kombiniert werden. Dafür müssen beide Modelle mit einem ‚+‘ bei der Eingabe in die Konsole verbunden werden (Beispiel: Frak2021+GT4HistOCR). Eine deutliche Qualitätssteigerung lässt sich mit werkspezifischem Training erzielen. Dazu wird ein gutes vorhandenes Modell mit ausgewählten Beispielen aus dem jeweiligen Werk nachtrainiert. Im Idealfall kann ein so erzeugtes neues Modell den Text im entsprechenden Werk dann fast perfekt erkennen.

Kann Tesseract auch PDFs verarbeiten?

Nein, Tesseract kann von Haus aus keine PDF-Dateien verarbeiten. Es gibt aber das Programm OCRmyPDF. Dieses Programm verwendet Tesseract für die Texterkennung und benötigt derzeit die Version 4.xx. Um OCRmyPDF nutzen zu können, müssen Sie also zuvor Tesseract und die gewünschten Modelle installiert haben. Wir haben auch eine Anleitung zur Benutzung von OCRmyPDF erstellt.