[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Komandozeilenprogramm zur Nachbearbeitung von OCR



Am 21.01.19 um 11:22 schrieb Horst Felder:
Hallo!

Ich habe ein Buch gescannt. Nach dem OCR der Scans mit tesseract-ocr
möchte ich noch automatisch die Zeileumbrüche (LF) entfernen und
getrennte Wörter zusammenfügen (und natürlich den Trennungsstrich
entfernen).

Meine Recherchen haben bisher nur ein Libreoffice-Plugin names
Pepito-Cleaner (der scheint aber nur auf Probleme hinzuweisen und
behebt sie nicht automatisch) und das Gnome-Programm gimagereader
zutage gefördert. Letzteres macht bei der Nachbearbeitung des Scanns
genau das was ich will, es kann u.a. die Umbrüche entfernen (Absätze
bleiben bestehen) und die getrennten Wörter wieder zusammenfügen.
Leider kann man das nicht automatisieren.

Gibt es ein Kommandozeilenprogramm das eine ähnliche Funktionalität
hat (damit ich es in ein Script packen kann)?

Kommt ein Bisschen drauf an, was Du dann weiter machen willst. Ich würde mir mal "sed" ansehen.

Das kannst Du als Programm mit der Textdatei direkt nutzen (auf Komandozeile ohne extra Script):

sed -i 's/\n//g' datei.txt

oder in einem Script (hier eine Anweisung aus einem Perl-Script, entfernt alle "Newline"/ Zeilenumbrüche):

$text =~ s/\n//g;


Der Syntax ist 's/Suchstring/Ersetzung/g',. Wenn als Ersetzung nichts angegeben wird, dann löscht man den Suchstring.

Das "g" sagt, dass alle Vorkommen des Suchstrings ersetzt werden sollen. Da hilft auch die manpage....

Kannst auch mal im Netz suchen, z.B.: [1]

Für alle Zeilenumbrüche (event. sind das "\n\r" für "newline - carriage return"/ Wagenrücklauf mit Zeilenvorschub) sollte das funktionieren. Das mit den getrennten Wörtern, ist so eine Sache. Könnte event. so funkionieren:

$text =~ s/-\n\r//g;

Ist aber ohne Garantie/ ungetestet!


[1] http://www.theunixschool.com/2014/08/sed-examples-remove-delete-chars-from-line-file.html

--
Mit freundlichen Grüßen

Sebastian Reinhardt





Reply to: