OCR-D / workflow-demo

Taverna Workflow Beispiel zu Demonstrationszwecken
2 stars 2 forks source link
optical-character-recognition taverna-workbench workflow-management-system

workflow-demo

Taverna Workflow Beispiele zu Demonstrationszwecken

Anforderungen

Die folgenden Softwarekomponenten sind erforderlich:

Java

Es wird das JRE (Java Runtime Environment) in der Version 7 oder neuer benötigt.

Taverna Workbench Core 2.5

Für diesen Workflow wird die Version 2.5 des Taverna Workbench Core benötigt, also das letzte Release vor dem Apache Incubator.

Tesseract OCR 4.00

Für diesen Workflow wird Tesseract OCR in der Version 4.00 oder neuer benötigt. Windows-Benutzer können z.B. hier vorkompilierte Binaries für Tesseract 4.00 finden. Nach der Installation müssen Windows-Benutzer den Pfad zum Verzeichnis tessdata sowie zu tesseract.exe noch zu den Umgebungsvariablen hinzufügen.

Für Debian-basiertes Linux gibt es ein PPA für Tesseract 4, das auch die notwendigen Leptonica in der Version 1.74 enthält.

sudo add-apt-repository ppa:alex-p/tesseract-ocr
sudo apt update
sudo apt install tesseract-ocr
cd /usr/share/tesseract-ocr/4.00/tessdata
sudo wget 'https://cdn.rawgit.com/tesseract-ocr/tessdata_best/master/Fraktur.traineddata'
sudo wget 'https://github.com/tesseract-ocr/tessdata/blob/3.04.00/deu_frak.traineddata?raw=true

Apache Commons Lang3

Laden Sie bitte die Datei commons-lang3-3.6-bin.tar.gz bzw. commons-lang3-3.6-bin.zip herunter und entpacken sie dieses Archiv. Anschließend muss die Datei commons-lang3-3.6.jar noch in das Unterverzeichnis lib der Taverna-Installation kopiert werden.

cd /opt/taverna-workbench-core/lib
sudo wget 'http://central.maven.org/maven2/org/apache/commons/commons-lang3/3.6/commons-lang3-3.6.jar'

kraken

Installieren Sie kraken und laden Sie mit kraken get fraktur das RNN-Model für Fraktur herunter.

git clone --depth 1 https://github.com/mittagessen/kraken
cd kraken
pip install --user .
kraken get default
kraken get fraktur

ScanTailor

Zuletzt muss nun noch ScanTailor installiert werden.

sudo apt install cmake libboost-all-dev libtiff5-dev libxrender-dev zlib1g-dev libpng-dev libjpeg-dev libqt4-dev
wget 'https://github.com/scantailor/scantailor/archive/RELEASE_0_9_12_2.zip'
unzip RELEASE_0_9_12_2.zip
cd scantailor-RELEASE_0_9_12_2/
cmake .
make -j4
sudo make install

Nach der erfolgreichen Installation der oben genannten Softwarekomponenten sind ggf. noch die in der Workflowbeschreibung enthaltenen Pfade/Verzeichnisse für die lokale Umgebung anzupassen.

Workflows

Workflow Demo_1.t2flow

This workflow takes an image and ground truth text as input, performs OCR using Tesseract 4.0 and compares the OCR output to the ground truth using Levensthein distance measure.

Workflow 1 diagram

NOTE: The image and ground_truth input ports expect the absolute path to image/text files, not file contents. Make sure you choose Set value, not Set file location.

Workflow Demo_2.t2flow

This workflow takes an image and ground truth text as input, performs binarization of the image using Kraken's 'nlbin' method, subsequently submits the bitonal image to OCR using Tesseract 3, Tesseract 4 and Kraken and then compares each OCR output with the ground truth using Levenshtein distance measure.

Workflow 2 diagram

Workflow Demo_3.t2flow

This workflow takes an image as input, performs image optimization (cropping, deskewing, despeckling) with ScanTailor, binarizes the image using Kraken's 'nlbin' method, subsequently submits the bitonal image to OCR using Tesseract 4 and Kraken and finally creates an optimal OCR result by merging the two OCR outputs based on a dictionary.

Workflow 3 diagram