Ich sammle hier meine Erkenntnisse zur automatischen Schrifterkennung (OCR). (Diese Sammlung ist völlig unvollständig und sollte nur mit vorsicht genutzt werden!)

Links

Tools

Tesseract

Als erstes müssen wir sicherstellen tesseract ist installiert:

 sudo apt-get install tesseract-ocr jbig2

Wir müssen noch mindestens die Sprache Deutsch nachinstallieren:

 sudo apt search tesseract- lang | grep deu
 sudo apt-get install tesseract-ocr-deu

Unterstützung für Frakturschrift installieren:

 sudo apt search tesseract- script | grep frak
 sudo apt-get install tesseract-ocr-script-frak

Ich hatte Probleme einzelne Sprachen und Schriften nachzuinstallieren und hab deshalb tesseract-ocr-all installiert:

 sudo apt-get install tesseract-ocr-all

Außerdem hab ich noch zusätzliche unterstützdende Daten nachinstalliert:

 cd /usr/share/tesseract-ocr/5/tessdata
 sudo wget https://github.com/tesseract-ocr/tessdata_best/raw/refs/heads/main/script/Fraktur.traineddata
 sudo wget https://github.com/tesseract-ocr/tessdata/raw/refs/heads/main/deu_frak.traineddata
 sudo wget https://github.com/tesseract-ocr/tessdata/raw/refs/heads/main/deu_latf.traineddata
 sudo wget https://ub-backup.bib.uni-mannheim.de/\~stweil/ocrd-train/data/Fraktur_5000000/Fraktur_5000000_0.466.traineddata
 sudo wget https://ub-backup.bib.uni-mannheim.de/~stweil/ocrd-train/data/Fraktur_5000000/tessdata_best/Fraktur_50000000.334_450937.traineddata
 tesseract --list-langs

Tests

Um eine Sprache zu finden die mit der deutschen Frakturschrift klar kommt habe ich folgenden Aufruf verwendet, der einen txt output erzeugt, den man gut vergleichen kann:

 tesseract -l deu+deu_frak Scan_007.tif Scan_007.deu+deu_frak

Getestet hab ich folgende Sprachen und Kombinationen:

  • deu+deu_frak
  • deu+deu_latf
  • deu_frak
  • deu_frak+deu
  • deu_frak+Fraktur
  • deu_frak+Fraktur+deu
  • deu+Fraktur
  • deu+Fraktur_5000000_0.466
  • deu+Fraktur_50000000.334_450937
  • Fraktur1+deu

Die Ergebnisse waren leider ernüchterd. Beste Ergebnisse hatte ich mit deu_frak, doch auch hier wurde alle "s" als "f" erkannt.

OCRmyPDF

Gute Anleitung: https://ub-mannheim.github.io/Tesseract_Dokumentation/OCRmyPDF_Windows_und_Linux.html

Wenn tesseract installiert ist können wir versuchen PDFs zu transkribieren;

 ocrmypdf --output-type pdf --redo-ocr -l deu+deu_frak Dokument-images.pdf Dokument-deu_frak.pdf
 ocrmypdf --redo-ocr -l deu+deu_frak+deu_latf Dokument-images.pdf Dokument-deu_frak.pdf

Die erbebnisse mit ocrmypdf und tesseract waren für Frakturschrift sehr schlecht und quasi unbrauchbar :-(

https://github.com/JaidedAI/EasyOCR (uses www.jaided.ai)

Einfache Tests mit jaided.ai waren sehr schlecht. Nicht zu gebrauchen für deutsche Frakturschrit.

https://pero-ocr.fit.vutbr.cz

Die Ergebnisse vom Project PERO OCR sind ziemlich beeindruckend. Leider ist beim Mehr-Spalten Layout recht viel Handarbeit nötig. Für Dokumente hilfreich, für ganze Bücher scheinbar nicht ideal!


tools.pdf24.org

https://tools.pdf24.org/en/ocr-pdf#s=1768668637502

Ergebnis schlecht.