Themenabend/Texterkennung, PDF-Tools und Literaturverwaltung
Allgemeines zum Vortrag
- Probevortrag für meinen WikiCon[1]-Workshop
- "Textübernahme aus (eingescannten) Dokumenten ohne Abtippen! - Workshop zur Textextraktion und OCR am Beispiel von OpenData für WLM[2]
- geplante Dauer
- 45 Min. (wird in der Probe sicher lääänger ;-)
Zielgruppe
Da dies eine Vortragsprobe für die WikiCon ist, sind die Zielgruppe Wikipedianer und Aktive bei Wikipedia Loves Monuments (kurz: WLM)
Hintergrund und Entstehungsgeschichte
Zum Wikipedia-Loves-Monuments- (kurz: WLM) Orga-Treffen in Weimar im Sommer 2015 stellte sich heraus, das ein Großteil der jährlichen (Vorbereitungs)arbeit aus wiederkehrenden Routineaufgaben besteht, welche unnötig viel Arbeitskraft und -zeit bindet. Anstatt diese zu automatisieren und sich dann um andere Dinge kümmern zu können, schienen einige Personen geradezu stolz auf ihre "Fleißarbeit" zu sein.
Ich schlug daraufhin vor, am konkreten Beispiel der automatisierten Textextraktion aus Denkmalslisten-PDF-Dateien, die Vorzüge einer gewissen Automatisierung aufzuzeigen. Anstelle jedes mal aufs neue die Denkmalslisten für WLM erneut abzutippen, möchte ich zum bewussten Automatisieren anregen (Scannen und OCR falls nötig, Textextraktion und PDF-Tools (Annotation, Quellenverwaltung)).
Natürlich alles mit Freier Software und Hinweis auf Wichtigkweit von OpenStandards!
Vortragsinhalt
Inhaltsextraktion per "Copy&Paste" aus "guten" PDFs
DETAILS: Für den Anfang also jene mit eingebetteten Text & Co. zum einfach rauskopieren
per Gui-Anwendung
Siehe: www.pdfreaders.org
Für meine Arbeit verwend(et)e ich z.B.:
- Okular
- PDF.JS (PDF-Betrachter als Webbrowsererweiterung)
per Skript - für Freunde der Automatisierung
Informationen über PDF-Dateien automatisiert ermitteln
DETAILS: pdfinfo [options] [PDF-file]
automatisiert Klartext aus PDF-Dateien extrahieren
DETAILS: pdftotext [options] [PDF-file [text-file]]
PDF-Datei automatisiert in HTML-Datei umwandeln
DETAILS: pdftohtml [options] <PDF-file> [<HTML-file> <XML-file>]
Vorteile
- sämtliche Texte, Bilder etc. sollten in extra Dateien (im angegebenen Verzeichnis) extrahiert werden
- Das Layout bleibt erhalten
- DETAILS:
- Die extrahierten PDF-Bestandteile werden in einer HTML-Datei (also eine Webseite) so eingebunden, das sie dem Layout des ursprünglichen PDFs möglichst nahe kommen
- HTML-Dateien können (im Webbrowser) betrachtet, (in einem einfachen Texteditor) bearbeitet und automatisiert weiterverarbeitet werden
in PDF-Dateien eingebettete (dargestellte) Bilder automatisiert extrahieren
DETAILS: pdfimages [options] <PDF-file> <image-root>
in PDF-Dateien eingebettete Anhänge automatisiert extrahieren
DETAILS: pdfdetach [options] [PDF-file]
Beides sind PDF-Hilfsprogramme auf Basis von "poppler-utils"
PDF-Annotationen automatisiert auslesen
DETAILS: pdfannotextractor [options] <PDF files[.pdf]>
Was tun bei Ausdrucken, Fotos & Co.?
DETAILS: Sollte wirklich kein PDF mit einfach entnehmbaren Inhalten verfügbar sein, können ein paar Zwischenschritte helfen
Einscannen
DETAILS: Vor allem für Dinge geeignet, die sich gut in einen Scanner legen lassen - etwas (Buch-)seiten
Tipps
siehe Bedienungsanleitung...
Fotografie(r)en
DETAILS: Nicht immer ist ein Scanner in der Nähe und manche Dinge - etwa Hinweistafeln - lassen sich höchstens abfotografieren
Tipps
DETAILS: Es kommt weniger auf "hübsche Bilder" als auf gut lesbaren Text an!
auf guten Kontrast und scharfe Schrift achten
DETAILS: Autofokus, Weißabgleich, ggf. Stativ für ruhigere Fotos verwenden etc.
für möglichst gleichmäßige Ausleuchtung sorgen
DETAILS: Vermeidung von Schatten, Lichtreflexen, lichtbedingten Verfärbungen - vielleicht hilft der Blitz oder eine zusätzliche Lichtquelle
Verzerrungen vermeiden
DETAILS: Reduktion von perspektivischer Verzerrungen durch geschickte Wahl der Perspektive und Kameraeinstellung.
Fotofachhandel nachfragen bzw. in einschlägigen Fotocommunities informieren
Fotoaufbereitung
Perspektivische Korrektur
DETAILS: Im Gegensatz zum Scanner sind i.d.R. alle Stellen des Fotoobjektes unterschiedlich weit von der Linse der Kamera entfernt, was zwangsläufig zu einer gewissen Verzerrung führt, die es zu kompensieren gilt.
Weißabgleich
DETAILS: Was ist Text und was Hintergrund?
Moderne "Digitalkameras" nehmen dem Fotografen schon eine Menge Einstellarbeit ab. Dennoch ist etwas Nacharbeit ratsam.
Bildschärfe
DETAILS: Auf das richtige Mittelmaß kommt es an. Bei zu unscharfen Bildern, kann schlecht zwischen Text und Hintergrund unterschieden werden. Überscharfe Bildern werden meist von Bildrauschen gestört, was zu Fehlerkennungen führen kann.
Entsprechenden Ausschnitt wählen
DETAILS: Es interessiert nur der Teil des Bildes, mit dem Text
"Unpaper" & Co.
Texterkennung
DETAILS: Häufig auch als Optical-Character-Recognition (kurz: OCR) bezeichnet
Funktionsweise
Es wird geschaut, ob das vorliegende Bild bekannte Buchstaben enthält
DETAILS: Hierbei sind verschiedene Alfabete, Schriftarten und Formatierungen zu berücksichtigen. Wierum der Text auf dem Bild zu sehen ist, ist ebenfalls wichtig.
Wörterraten mit Heuristik
DETAILS: Falls Buchstaben nicht eindeutig zugeordnet werden können, wird u.a. in einer Art Wörtebuch die wahrscheinlichste Buchstabenkombination ermittel.
Von Wörtern zum Fließtext
DETAILS: Nachdem die Klar ist in welche Richtung die Zeilen bzw. Spalten verlaufen und wie sie aneinandergereiht sind, kann der Text Zeichen für Zeichen erkannt und ausgelesen werden.
weitere Herausforderungen
DETAILS: ...gibt es viele: Mehrspaltiger Text, Tabellen, Abbildungen im Text
Tipps
Bilder sorgfältig vorbereiten
DETAILS: Texte sollten nicht verzerrt und die Buchstaben klar erkennbar sein. Möglichst mit schwarz/ weiß- Bildern arbeiten, damit die Unterscheidung von Text und Hintergrund leichter fällt. Mehrfarbige Hintergründe und Texte machen es unnötig schwer.
Bei komplexeren Layouts einzelene Abschnitte nacheinander abarbeiten
DETAILS: Hierbei am besten auch gleich auf die richtige Drehung des Bildausschnittes achten.
Training für die Texterkennung
DETAILS: Auch die OCR-Software musste erst lesen "lernen". Dies geschieht in der Regel mit sogenannten Trainingsdaten. Diese werden meist für die gebräuchlichsten Schriftarten in der jeweiligen Software gleich mitgeliefert. Manche Texterkennungssoftware kann aber auch auf neue Schriftarten trainiert werden.
Tools/ Werkzeuge
gscan2pdf
DETAILS: recht einfach gehalten
Yagf
DETAILS: sehr einfach gehalten
OCRFeeder
DETAILS:
- Scannen (einschließlich rudimentärer Bildbearbeitungstools)
- Texterkennung (unter Berücksichtigung des Layouts)
- Export nach LibreOffice (erkannter Text + enthaltene Bilder)
weitere (PDF-)Tools
PDF-Betrachter
DETAILS: siehe: http://pdfreaders.org/
PDFs bearbeiten
mehrere Scans zu einem PDF zusammenfügen
DETAILS: gscan2pdf
Seiten von PDFs und Metadaten ändern
DETAILS:
- pdfmod [Dateiname]
- pdfshuffler [file1] [file2] ..
verschiedenes
DETAILS:
- pdfchain
- pdftk
PDFs vergleichen
DETAILS:
- diffpdf [file1] [file2]
- comparepdf [OPTIONS] file1.pdf file2.pdf
Annotations- und Literaturverwaltung
DETAILS: Für Erstellung, Bearbeitung und Weiterverarbeitung von (nachträglichen) Anmerkungen in PDF-Dateien sowie Ordnung solcher Dateien
Docear - Literaturverwaltung per Mindmap
www.docear.org
Zotero - gemeinsame Literaturverwaltung per Plugin für Webbrowser und Textverwaltung
www.zotero.org
in PDFs (automatisierbar) suchen
DETAILS: pdfgrep [OPTION...] PATTERN FILE...
verborgene Überarbeitungen zeigen
DETAILS: pdfresurrect file.pdf [-w][-q][-s][-i]
OrderCrazy's Projekt für die österreichische WLM
https://hochnebel.net/denkmalparser/