[[Vorlage(Getestet, focal )]] {{{#!vorlage Wissen [:Pakete installieren: Installation von Programmen] [:Packprogramme: Archive entpacken] [:Programme kompilieren: Pakete aus dem Quellcode erstellen] [:Terminal: Ein Terminal öffnen] [:Programme starten: Ein Programm starten] }}} [[Inhaltsverzeichnis()]] [[Bild(Wiki/Icons/terminal.png, 48, align=left)]] [https://www.flameeyes.eu/projects/unpaper unpaper] {en} ist ein mächtiges Kommandozeilenprogramm zur Nachbearbeitung von fotokopierten/gescannten Bild- und Textvorlagen. Es wurde für die automatische Stapelverarbeitung von großen Datenmengen konzipiert (z.B. [wikipedia:E-Book:E-Books]). Hauptziel der Entwicklung war es, für den Bildschirm besser lesbare PDF-Dokumente erstellen zu können, unpaper kann aber z.B. zur Vorbereitung von Texterkennung, Digitalisieren, Konservieren und Archivieren von gescannten Vorlagen verwendet werden. Das Programm wurde lange nicht weiterentwickelt und wird vom ursprünglichen Entwickler nicht weiter betreut. Aufgelaufene Bugs werden aber in einem [github:Flameeyes/unpaper:unpaper-Fork] {en} aufgegriffen und bearbeitet, dort existiert eine weiterentwickelte Version 6.1 (November 2015). Diese Version ist seit [:Xenial:Ubuntu 16.04] in den Paketquellen enthalten. = Installation = unpaper ist in den Paketquellen vorhanden, folgende Pakete {{{#!vorlage Paketinstallation unpaper,universe libtiff-tools, universe, optional netpbm, universe, optional, um Konvertierungen der Ausgabedateien durchzuführen (siehe [#Beispiel Beispiel]) }}} müssen installiert werden[1]. = Benutzung = unpaper verarbeitet [wikipedia:Portable_Bitmap:pbm], [wikipedia:Portable_Graymap:pgm] und [wikipedia:Portable_Pixmap:ppm]-Formate aus der [http://netpbm.sourceforge.net/ netbm]-Familie {en}. Die Formate werden auch als Ausgabeformat verwendet; '''.ppm''' ist das Format, mit dem z.B. die Scanwerkzeuge [http://www.sane-project.org/man/scanimage.1.html scanimage] {en} (Teil von [:SANE:]) und [http://www.martoneconsulting.com/sane-scanadf.html scanadf] {en} arbeiten, auch [:XSane:] verwendet "intern" dieses Format. Ab Version 0.6 können auch '''.png''' und etliche '''.tiff'''-Varianten direkt verarbeitet werden. Mit unpaper können eine Vielzahl von Verbesserungen vorgenommen werden, mit denen auch aus sehr dürftigen Vorlagen gute Resultate erzielt werden können. Der typische Ablauf stellt sich in folgenden Schritten dar: ||<-2 tableclass="zebra_start3" rowclass="titel" :> Verarbeitungsschritte || || Aktion || Kurzbeschreibung || ggf. Deaktivierung, gefolgt von den Seitenangaben || || Laden der Vorlagen || Angabe aller zu bearbeitenden Vorlagen || || || Drehen, Spiegeln etc || gleiche Ausrichtung der Vorlagen || kein Standard || || Platzierung auf dem Blatt|| Blattgröße wird automatisch anhand der Bildgrößen erstellt, wenn nicht anders festgelegt || `--no-mask-center`|| || Flecken-, Rauschfilter || entfernt "Dreck" und unerwünschte Pixel aus der Vorlage ||`--no-noisefilter`, `--no-blurfilter`|| || Schwarz-, Graufilter || entfernt z.B. schwarze Randbalken und Hintergrundgrau || `--no-blackfilter`, `--no-grayfilter`|| || Erkennung der Masken|| Legt den zu verwendeten Ausschnitt aufgrund der angegebenen Markierung fest, mehrere Auschnitte sind möglich || `--no-mask-scan`|| || Geradeziehen|| Richtet Ausschnitte parallel zu den Blattkanten aus || `--no-deskew`|| || Neue Maskierung || Neuausrichtung zur Präzisierung der gewählten Ausschnitte nach dem Geradeziehen || `--no-scan-mask`|| || Zentrieren der Masken|| Ausschnitte werden mittig gestellt || `--no-mask-center`|| || Randerkennung || Randeinstellungen werden ausgelesen || `--no-border`|| || Ausrichten des Randes || Anpassen der Ränder ||`--no-border-align`|| || Ausgabe || Speichern der Ergebnisse ||Standard: Eingabeformat = Ausgabeformat, bestehende Dateinamen werden nicht überschrieben|| || ggf. weitere Bearbeitungsschritte || z.B. weitere Maskierungen, Bildverbesserungen, Kompression etc. vorm Speichern ausführen |||| Dabei lassen sich einzelne Schritte natürlich auch überspringen; sie können auch nur für bestimmte Seiten weggelassen/verwendet werden (so ist z.B. beim Schwarz/Graufilter Vorsicht geboten, wenn in einzelnen Vorlagen Grafiken/Fotos oder z.B. Balkendiagramme vorhanden sind). Mit unpaper können sowohl mehrere Seiten (einzelne Bild-Dateien) auf ein "Blatt" platziert werden, als auch doppelseitige Bild-Dateien (zweiseitige Scans) auf einzelne "Blätter" aufgeteilt werden. Die einzelnen Schritte sind über eine Vielzahl von Optionen beeinflussbar, die komplette Dokumentation ist bei installiertem Programm über '''/usr/share/doc/unpaper/doc/index.html''' aufrufbar; die Optionen werden auch in der [:man: Manpage] beschrieben. == Allgemeine Syntax == Der Aufruf erfolgt im Terminal[4] nach folgendem Muster: {{{#!vorlage Befehl unpaper [options] input-file(s) output-file(s) }}} Der Aufruf kann dabei eine Variable zur Verwendung eines Seitenzählers für mehrseitige Projekte beinhalten, der mit "`%`" beginnt; also z.B. `document%03d.ppm`, um alle Vorlagen mit einer dreistelligen Zählung ('''document001.ppm''', '''document002.ppm''' '''document003.ppm''') der Reihe nach zu verarbeiten. Um die Anwendung für bestimmte Optionen auf bestimmte Seiten zu verhindern, wird folgende Syntax verwendet {{{#!vorlage Befehl unpaper (...andere Optionen...) --no-greyfilter 5,23,25-31,48 ( weitere Optionen...) }}} Hier würde die Verwendung des Graufilters für die Seiten 5, 23, und 25 bis einschließlich 31 und 48 verhindert; auf alle anderen Seiten würden der Filter angewendet werden. Es empfiehlt sich, vor Gesamtanwendung die Ergebnisse für einzelne Seiten zu überprüfen und ggf. anzupassen, insbesondere die Fleck- und Rauschfilter-Einstellungen müssen bei niedrigeren Auflösungen (200 dpi und kleiner) vermutlich angepasst werden. Die Einstellungsmöglichkeiten sind sehr komplex, und können hier nicht in allen Einzelheiten erläutert werden. Als Anschauung das in der Dokumentation angegebene Beispiel einer "Komplettverarbeitung" mit anschließendem Erstellen eines PDF-Dokuments. == Beispiel == Ein idealtypischer Ablauf eines Bearbeitungsprozesses vom Scan bis zum '''PDF'''-Dokument könnte so aussehen: Mit einem Scanner mit automatischem Einzug werden die Vorlagen als '''.pgm'''-Dateien gescannt: {{{#!vorlage Befehl scanadf [...scanner-spezifische Options...] -o scan%03d.pgm }}} Natürlich kann auch ein normaler Scanner mit anderer Scansoftware verwendet werden; die Ausgabedateien müssen aber nach dem Muster '''scan001.pgm, scan002.pgm scan003.pgm''' etc. durchnummeriert sein. Es erfolgt die Anwendung von unpaper mit Durchführung aller automatischen Korrekturen für alle Seiten, bis auf die Titelseite. Außerdem werden die automatische Erkennung der Masken, sowie des Geradeziehens und Zentrieren der Ausschnitte für die Seiten 100-110 und die Seite 200 ausgesetzt: {{{#!vorlage Befehl unpaper -v --layout double --pre-rotate -90 --no-processing 1 --no-mask-scan 100-110,200 scan%03d.pgm unpaper%03d.pgm }}} Dabei führt die Option `-v` ("verbose") führt zu ausführlicheren Ausgaben im Terminal; `--layout double` platziert jeweils zwei Seiten auf einem Blatt im Querformat `--prerotate -90` dreht die Vorlagen vor allen anderen Bearbeitungsschritten um 90 Grad gegen den Uhrzeigersinn. Alternativ wird unpaper im Folgenden so ausgeführt, dass zwei Vorlageseiten zusammen auf einem Ausgabeblatt platziert werden (dabei wird davon ausgegangen, dass die Eingabe-Dateien jeweils aus einer einzelnen Seite bestehen). Alle automatischen Korrekturen werden mit den Standard-Einstellungen durchgeführt, nachdem die Ausgabegröße auf eine DinA4-Seite im Querformat festgelegt wurde (andere verwendbaren Blattgrößen lassen sich in der Dokumentation für die Option `--size` entnehmen). Die erste Seite soll dabei auf der rechten Hälfte des ersten Ausgabeblattes erscheinen (wie bei Büchern allgemein üblich), daher muss zunächst an Anfang eine leere Halbseite eingefügt werden, damit die linke Hälfte des ersten Ausgabeblattes leer bleibt. {{{#!vorlage Befehl unpaper -v --layout double --size a4-landscape --input-pages 2 --insert-blank 1 scan%03d.pgm unpaper%03d.pgm }}} Die erstellten '''.pgm'''-Dateien werden nun in einzelne '''.tiff'''-Dateien umgewandelt {{{#!vorlage Befehl for i in `ls unpaper*`; do pnmtotiff $i > $i.tiff; done }}} und die einzelnen '''.tiff'''-Dateien zu einer mehrseitigen '''.tiff'''-Datei zusammengefasst: {{{#!vorlage Befehl tiffcp *.tiff all.tiff }}} Aus dieser mehrseitigen Datei wird jetzt ein PDF-Dokument erstellt {{{#!vorlage Befehl tiff2pdf -z -o Document.pdf all.tiff }}} Die Ausgangsdaten müssen natürlich nicht direkt gescannt werden, es lassen sich auf bestehende "digitale" Dokument (PDF oder andere Bild-Dateien) verwenden. So können bereits existierende Dokumente nachbearbeitet werden. Zum Konvertieren in das '''pgm'''/'''pbm'''/'''ppm'''-Format bieten sich verschiedene Werkzeuge an, ([:ImageMagick:], [:GIMP:] u.a.) = Verwendung von unpaper in anderen Programmen = [:gscan2pdf:] und [:OCRFeeder:] verwenden unpaper intern, und bieten einige (aber längst nicht alle) Einstellungsmöglichkeiten über ihre grafischen Oberflächen. Auch das Kommandozeilenwerkzeug [:pdfsandwich:] setzt unpaper zur Verbesserung ein, es lassen sich sehr viele Optionen einsetzen. = Alternativen = [:Scan Tailor:] bietet mit einer grafischen Oberfläche bessere direkte Einfluss- und Korrekturmöglichkeiten, kann aber nicht den Umfang an Funktionen zur Bearbeitung der Vorlagen liefern. Einige Möglichkeiten zur Bearbeitung biete auch das Kommandozeilenwerkzeug [:ImageMagick:], siehe dort [:ImageMagick#Gescannte-Dokumente-nachbessern:Gescannte Dokumente nachbesssern]. = Links = * [https://www.flameeyes.eu/projects/unpaper Projektseite der Weiterentwicklung von Unpaper] (letzte Veröffentlichung Unpaper 0.6.1) {en}) * [https://github.com/Flameeyes/unpaper/tree/master/doc Dokumentation] {en} ## * [http://www.brianklug.org/tag/unpaper/ Fotografieren statt Scannen] {en}, Anleitung, Bücher mit SLR-Kamera zu "archivieren" * [https://www.essential-freebies.de/board/viewtopic.php?p=83739#83739 Thread] {de} mit ausführlichen unpaper-Anwendungsbeispielen auf essential-freebies.de #tag: Grafik, Bildung, Büro, Kommunikation, OCR, Texterkennung, Scanner