Dokumentenscanner unter Ubuntu nutzen
Posted on January 29th, 2010 in Ubuntu | von Bernd S. | 13 Comments »
Ich habe seit längerem mit dem Gedanken gespielt mir einen Dokumentenscanner zu kaufen um diverse Dokumente elektronisch archivieren zu können.
Also habe ich mir mal auf www.geizhals.at näher angeschaut was ich mir leisten will/kann. Dabei musste ich feststellen, dass die Dokumentenscanner doch eher teuer sind. Zusätzlich wollte ich natürlich noch wissen, welche der Geräte auch von Linux unterstützt sind. Eine Auflistung findet man auf der Webseite des Sane Projekts.
Nach einiger Zeit stand fest, dass ich mir entweder einen Fujitsu ScanSnap S300 oder den S1500 kaufen werde. Am Ende hat jedoch der Preis entschieden, da lt. Geizhals der günstigste S1500 mehr als doppelte vom S300 kostet.
Das war aber ein Fehler wie sich später noch herausstellen sollte. Lt. der SANE-Webseite wird der S300 “good” unterstützt. Ich dachte das reicht mir schon und habe mich dann dort nicht mehr weiter informiert. Als ich dann den S300 bei mir hatte und das erste Stück Papier einscannen wollte, wurde das Gerät nicht einfach als Plug-and-Play erkannt, wie ich es mir gedacht hatte.
Nach einer kurzen Recherche musste ich feststellen, dass ich für die Nutzung des S300 eine Datei aus dem Windowstreiber benötige. Die Erklärung dazu ist (soweit ich das richtig verstanden habe), dass beim S300 die Logik fast komplett im Treiber und nicht in der Hardware implementiert wurde. Wahrscheinlich ist dies auch ein Grund, warum dieser soviel günstiger als der S1500 ist.
Also habe ich meine Virtualbox mit Windows gestartet um den Treiber dort zu installieren. In der virtuellen Maschine kann ich ja den kompletten Funktionsumfang nutzen, wenn mir die Funktionen unter Linux nicht ganz reichen. Und außerdem benötigte ich ja noch die Datei um den Scanner unter Linux zum Laufen zu bringen.
Soweit zur Theorie. Ich habe nach vielfachen Versuchen aufgegeben den Treiber in der virtuellen Maschine zu installieren, da dies einfach nicht möglich war. Somit war der Scanner für mich nutzlos und nach längerem hin und her konnte ich das Gerät wieder zurückgeben.
In der Zwischenzeit hatte ich aber gesehen, dass der S1500 auf Ebay relativ günstig zu haben ist. Daher habe ich mir nach der Rückgabe des S300 den S1500 dort gekauft. Als ich dieses Gerät an mein Notebook mit Ubuntu 9.10 angesteckt hatte, wurde der Scanner sofort erkannt und auch die erste Testseite war mit XSane, dem unter Ubuntu vorinstallierten Scannprogramm, schnell gescannt.
Nach meinen ersten Tests musste ich aber feststellen, dass eine gescannte A4-Seite am unteren Rand abgeschnitten wird. Mit XSane hatte ich aber keine schnelle Lösung gefunden.
Da ich aber sowieso ein Freund der Kommandozeile bin, habe ich mich auf die Suche nach einem Kommandozeilen-Tool begeben und mit scanadf auch gefunden.
Dies ist unter Ubuntu 9.10 aber nicht installiert, findet sich aber in den Paketquellen. Daher ist die Installation auch sehr einfach:
sudo aptitude install sane
Doch wie finde ich jetzt meine Scanner und wie gebe ich diesen dem Kommando scanadf bekannt? Dazu gibt es bei scanadf einen Option, um sich alle erkannten Scanner anzeigen zu lassen:
scanadf -L
Damit ich jetzt sehe, welche Optionen mein S1500 anbietet, gebe ich folgendes ein:
scanadf --help -d "fujitsu:ScanSnap S1500:303564"
Um jetzt eine ganze A4-Seite zu Scannen muss ich folgenden Befehl eingeben:
scanadf -d "fujitsu:ScanSnap S1500:303564" -v --page-height=298.009 -y 297.009
Der S1500 kann auch beidseitig scannen. Mit scanadf sieht das wie folgt aus:
scanadf -d "fujitsu:ScanSnap S1500:303564" -v --page-height=298.009 -y 297.009 \ --source="ADF Duplex"
Der eine oder andere hat sich sicher schon gefragt in welchem Format die gescannten Dokumente vorliegen. Die Seiten werden im Portable Bitmap Format (PBM) gespeichert. In diesem Format will man seine Dokumente aber nicht archivieren, da hier eine Seite schon 4MB groß sein kann.
Daher muss man nun noch die entstandenen PBM-Dateien in ein TIFF oder ein PDF konvertieren. Hier können die Programme potrace oder convert (aus dem Package imagemagick) verwendet werden.
Leider bin ich mir noch nicht sicher, welches Format die bessere Wahl ist. Und auch ein Versuch mit einer OCR-Software war leider nicht sehr zufriedenstellend.
Was ist euer bevorzugtes Format zur Archivierung von Dokumenten? TIFF oder PDF? Wäre hier für weitere Anregungen dankbar.
13 Responses
Mir wäre das zu kompliziert. Archiviere Doks als PDF und brauche unter Linux scan2pdf, das einfach aus den Ubuntu-Paketquellen installiert werden kann.
Ich würde JPG verwenden. Das ist zwar mit leichten Verlusten verbunden, die jedoch bei hoher Qualität nicht stark auffallen. Zudem komprimiert JPG sehr gut. Falls die Texte verlustfrei gespeichert werden sollen, wäre bei mir PNG erste Wahl. Damit bliebe die Dateigröße auch noch im Rahmen.
Mein bevorzugtes Format für das Archivieren von Dokumenten ist DjVu[1]. Das ist ein extra für diesen Zweck entwickeltes Dateiformat, mit dem man sehr platzsparend digitalisierte Dokumente speichern kann.
Hast Du eigentlich mal gscan2pdf als Scan-Programm versucht? Das ist für Dokumentenscans deutlich besser geeignet als Sane und kann direkt als PDF oder DjVu speichern.
Als OCR-Software ist Tesseract nicht schlecht, den besten Eindruck macht zur Zeit aber meiner Meinung nach Cuneiform[2]. Ich habe mal ganz auf die Schnelle ein kleines Python-Script[3] zusammengestellt, das aus mehreren PNM-Dateien mit Cuneiform DjVu-Dokumente erstellt, welche dann den erkannten Text enthalten. Damit sind die DjVu-Dokumente auch durchsuchbar.
Das Script benötigt den HOCR-Parser[4]. Vielleicht hilft es Dir ja, falls Dir DjVu zusagt.
[1]http://de.wikipedia.org/wiki/DjVu
[2]https://launchpad.net/cuneiform-linux
[3]https://code.launchpad.net/~frederik-elwert/+junk/digibook
[4]https://code.launchpad.net/~hocr-parsers/hocr-parsers/main
Zum Archivieren gibt es ein eine spezielle PDF-Norm: PDF/A. Habe selber keine Erfahrung damit, da es aber eine ISO Norm ist, würde ich sicher mal einen Blick darauf werfen:
http://de.wikipedia.org/wiki/PDF/A
Da ich neben Linux auch mit MacOS arbeite, verwende ich PDF, wobei der Text hinter der Grafik ist und somit durchsuchbar. Leider habe ich bisher noch kein für meine Zwecke geeignetes OCR Programm gefunden, so dass ich FineReader 5 in Wine verwende (diese bekam ich irgendwann über eine Heise c’t CD). Die Version 6 habe ich – vor einiger Zeit – nicht unter Wine zum Laufen bekommen.
Auch wenn die Texterkennung etwas besser sein könnte und somit den Index ein wenig stört, bin ich recht zufrieden, da ich alle wichtigen Dokumente scanne und dann auch wieder finde (jedenfalls schneller als in Papierform
also ich hab n Fujutsu fi-4120C, scan mit gscan2pdf und nutze auch liebend gern pdf, weils so hervorragend portabel ist. wenn ich ne storagetek zu hause hätte, würd ich vllt auch tiff nehmen. macht aber an sich keinen sinn.
der scanner funzt an sich prima (auch duplex) gscan2pdf hat aber das problem, dass ich jede seite einzeln durchfeuern muss, weil sonst die nachfolge-seiten völlig verschoben werden. kA was da nich passen tut. is halt nix für highend-performer, aber für meine bedürfnisse tuts reichen.
Ich habe mir vor einiger Zeit Ubuntu mit Wubi unter Linux installiert. Zuvor hatte ich meine Hardware auf Linuxtauglichkeit bei Sane geprüft und festgestellt, dass mein Medion- (Aldi) Scanner nicht unterstützt wird. Nach Anfrage bei Ubuntuusers habe ich mir bei Ebay den alten HP Scanjet 2200c für 11,28 EUR (einschließlich Versandkosten) gekauft. Der wird lt. Sane von Linux voll unterstützt und läuft nicht nur unter Ubuntu sondern auch unter Windows einwandfrei.
Auch wenn es jetzt zu spät ist, da es sich auf den S300 und alle anderen Scanner bezieht, für die man die original firmware-Datei braucht: Normalerweise muss man nicht den Treiber installieren, sondern einfach die entsprechende Datei mit einem Tool wie cabextract aus der .exe-Datei extrahieren. Bei meinem Epson-Scanner lief das problemlos.
Danke mal für die vielen Kommentare.
Ich werde mir mal DjVu ansehen (danke für den Hinweis Fredo), denn das kannte ich noch nicht und dann entweder DjVu oder PDF verwenden.
Auch gscan2pdf werde ich mir näher ansehen, nachdem dies ja jetzt auch 2x erwähnt wurde.
gscan2pdf sieht echt fein aus, nur leider hat es aktuell einen Bug in Ubuntu Karmic
https://bugs.launchpad.net/ubuntu/+source/gscan2pdf/+bug/424249
Hallo, mein S1500 läuft unter sane. Aber ich würde mir wünschen, dass
sobald Papier in das Gerät gesteckt wird, ein Fenster aufgeht und falls nicht
manuell unterbrochen der Scan mit Standarparametern startet. Ist da zuviel verlangt?
Gruß W.
Moin,
ich hab momentan nen HP – allerdings geht bei dem unter Linux ADF-Duplex nicht.
Soweit ich deinen Text versteh geht das mit dem Fujitsu Scansnap S1500, richtig?
Ich überleg mir den auch zu holen.
Hast du mal pct-scanner-script versucht (gibts ne Seite zu im ubuntuusers wiki)??
Wäre super wenn du das mal testen könntest – und nen Feedback geben, ob damit ADF-Duplex auch klappt.
gscan2pdf ist leider ziemlich nutzlos geworden.
Bin nach wie vor auf der Suche nach Ersatz, vielleicht kann mir jemand einen Tipp geben!?