OCR mittels Transkribus
Step Plugin für Goobi workflow zur Erzeugung von OCR mittels Transkribus
Last updated
Step Plugin für Goobi workflow zur Erzeugung von OCR mittels Transkribus
Last updated
Identifier
intranda_step_transkribus
Lizenz
Proprietary commercial
Letzte Änderung
23.12.2024 10:38:52
Die vorliegende Dokumentation beschreibt die Installation, Konfiguration und den Einsatz des Step-Plugins für die OCR-Durchführung mittels Transkribus.
Um das Plugin nutzen zu können, müssen folgende Dateien installiert werden:
Nach der Installation des Plugins kann dieses innerhalb des Workflows für den jeweiligen Arbeitsschritt ausgewählt und damit automatisch ausgeführt werden. Ein Workflow könnte dabei beispielhaft wie folgt aussehen:
Dabei muss der Arbeitsschritt so konfiguriert werden, dass das Plugin ausgewählt wird und die Checkbox für die Zeitverzögerung gesetzt sein.
Das Plugin ist so konzipiert, dass es beim Start zunächst alle Bilder eines Vorgangs zu Transkribus hochlädt und den Arbeitsschritt anschließend in Bearbeitung läßt. Im Dateisystem innerhalb des Unterverzeichnisses ocr
des Vorgangs wird dabei eine Datei processing.json
erzeugt, die einen genauen Status der jeweiligen Seiten abbildet. Diese sieht beispielhaft so aus:
Periodisch ruft Goobi im Hintergrund alle Delay-Plugins auf, so auch dieses. Bei jedem automatischen Aufruf und auch jedem manuellen Aufruf über die administrative Oberfläche für die regelmäßigen Aufgaben, versucht das Plugin die noch nicht abgeschlossenen Seiten herunterzuladen.
Im Fall, dass alle Seiten heruntergeladen werden konnten, wird der Arbeitsschritt geschlossen und der Workflow fortgesetzt. Im Fehlerfall hingegen, ändert der Schritt seinen Status zu einem Fehler weist entsprechende Fehlermeldungen im Journal auf.
Während der Transkribus-Verarbeitung aktualisiert das Plugin den genauen Fortschritt innerhalb der Datei processing.json
. Zusätzlich wird jedoch außerdem der Fortschritt der Verarbeitung als Vorgangseigenschaft mit dem Namen Transkribus Processing
gespeichert. Diese Eigenschaft sich sich innerhalb der tabellarischen Vorgangsliste einblenden, indem Nutzer diese als zusätzliche Spalte für die Anzeige konfigurieren.
In der so angezeigten Darstellung läßt sich anschließend gut überblicken, wie der genaue Status der Verarbeitung ist. Befinden sich mehrere Vorgänge in der Verarbeitung, wird dabei nicht nur die Anzahl der noch zu verarbeitenden Bilder angezeigt sondern ebenso die Anzahl der Transkribus-Jobs, die vor der Verabeitung des Vorgangs erst noch verarbeitet werden und auf deren Abschluß gewartet werden muss.
Für den Fall, dass der genaue Fortschritt gegutachtet werden soll, kann dieser im Unterordner ocr
des Vorgangs eingesehen werden. Dort befindet sich ein Verzeichnis mit den erzeugten ALTO-Dateien sowie die oben bereits erwähnte Datei processing.json
.
Ein einfaches Script, dass den Pfad zu dem jeweiligen Verzeichnis des gewünschten Vorgangs öffnet, sieht so so aus und könnte unter /usr/local/sbin/ocr-folder.sh
abgelegt werden:
Sollte der Fall eintreten, dass eine Seite nicht richtig hochgeladen, verarbeitet oder heruntergeladen wird, empfiehlt es sich, abhängig vom Fehlerfall folgendermaßen vorzugehen:
Wenn einzelne Bilder in der Verarbeitung gescheitert sind, können sie noch einmal komplett neu verarbeitet werden, ohne dass die anderen Bilder aus dem gleichen Verzeichnis davon betroffen sind. Dazu geht man am besten so vor:
Öffnen der entsprechenden processing.json
-Datei aus dem ocr
-Verzeichnis des Vorgangs
Setzen des Wertes in status
auf RETRY
für das entsprechende Bild
Den Arbeitsschritt im Workflow wieder auf In Bearbeitung
setzen
Manuell aus der administrative Oberfläche für die regelmäßigen Aufgaben den Delay-Job neu starten
Sollte es zu einem Problem mit dem Herunterladen der Ergebnisse gekommemn sind, weil beispielsweise die Internetanbindung verlorgen gegangen ist und die Anzahl der Download-Versuche das konfigurierte Maximum überschritten wurde, kann man die ausgewählten Bilder neu vom Transkribus-Server herunterladen lassen:
Öffnen der entsprechenden processing.json
-Datei aus dem ocr
-Verzeichnis des Vorgangs
Setzen des Wertes in status
auf RUNNING
für das entsprechende Bild
Den Arbeitsschritt im Workflow wieder auf In Bearbeitung
setzen
Manuell aus der administrative Oberfläche für die regelmäßigen Aufgaben den Delay-Job neu starten
Sind viele Bilder davon betroffen, dass sie fälschlicherweise im Status CANCELED
sind, läßt sich dies für einen Vorgang wie folgt einfach ändern:
Die Konfiguration des Plugins erfolgt in der Datei plugin_intranda_step_transkribus.xml
wie hier aufgezeigt:
Der Block <config>
kann für verschiedene Projekte oder Arbeitsschritte wiederholt vorkommen, um innerhalb verschiedener Workflows unterschiedliche Aktionen durchführen zu können. Die weiteren Parameter innerhalb dieser Konfigurationsdatei haben folgende Bedeutungen:
project
Dieser Parameter legt fest, für welches Projekt der aktuelle Block <config>
gelten soll. Verwendet wird hierbei der Name des Projektes. Dieser Parameter kann mehrfach pro <config>
Block vorkommen.
step
Dieser Parameter steuert, für welche Arbeitsschritte der Block <config>
gelten soll. Verwendet wird hier der Name des Arbeitsschritts. Dieser Parameter kann mehrfach pro <config>
Block vorkommen.
Neben diesen allgemeinen Parametern stehen die folgenden Parameter für die weitergehende Konfiguration zur Verfügung:
url
URL für den Lizenzserver von intranda
login
Login für den Lizenzserver von intranda
password
Passwort für den Lizenzserver von intranda
model
Zu verwendende Vorgangseigenschaft, in der die Transkribus-Model-ID hinterlegt ist. Üblicherweise heisst diese Eigenschaft Transkribus Model
model-default
Zu verwendende Transkribus-Model-ID im Fall, dass im Vorgang keine Eigenschaft mit einem Wert vorhanden ist. Beispiel: 36202
max-failed
Anzahl der maximalen neuen Versuche, falls eine OCR für eine Seite nicht durchgeführt werden kann. Der Arbeitsschritt verbleibt beim Überschreiten der Versuche im Fehlerstatus.
max-download
Anzahl der maximalen Versuche, das Ergebnis der OCR von Transkribus herunterzuladen. Der Arbeitsschritt verbleibt beim Überschreiten der Versuche im Fehlerstatus.
Da das Plugin als Delay-Plugin entworfen wurde, wird es durch den Scheduler von Goobi periodisch aufgerufen, um neue abgeschlossenen Seiten aus Transkribus abzufragen. Für diese periodische Abfrage greift dabei die Zeitsteuerung des dailyDelayJob
. Diese kann mit der folgenden Syntax allerdings in der Konfigurationsdatei goobi_config.properties
auch anders konfiguriert werden: