Benutzer:DelphiN/OCR
Ich sammle hier meine Erkenntnisse zur automatischen Schrifterkennung (OCR). (Diese Sammlung ist völlig unvollständig und sollte nur mit vorsicht genutzt werden!)
Links
- https://ocrmypdf.readthedocs.io/en/latest/cookbook.html#redo-existing-ocr
- https://ub-mannheim.github.io/Tesseract_Dokumentation/Tesseract_Doku_Linux.html
- https://github.com/tsmdt/docs4training-ocr/blob/main/Training-mit-Tesseract.md
- https://opensource.archium.org/index.php/OCR-Workflow
- https://www.vermessungs-bibliothek.de/buch-pdfs-mit-fraktur-ocr/
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.