Handlich Scannen mit dem COLIBRI

Ursprünglich hatte ich den Gedanken, nicht mehr die kilometerlangen Listings abtippen zu müssen, und schaffte mir einen Scanner an. NEIN - nicht so ein Gerät, das aussieht wie ein Fotokopierer, ein Handscanner sollte es sein.

Wie der Name schon sagt: zum In-die-Hand-nehmen, handliche Handhabung, im Handumdrehen Handarbeit, händeringend, Handstand... Heute lese ich damit zwar keine Listings in den ST ein, aber interessant ist das Ganze dennoch. Beispielsweise Bilder, Fotos, Skizzen oder Grafik einlesen, um sie dann in Texte einzubinden, oder gar Texte einlesen und in ASCII übersetzen lassen - das wären Anwendungen für einen Scanner. „Colibri“ heißt das gute Stück für den ATARI ST und kommt aus der Schweiz. Und erschwinglich ist dieser Handy durchaus geworden, ganze 990 DM ohne OCR, oder mit OCR Programm kostet Colibri stolze 1590 DM (OCR heißt „Optical Character Recognition“, zu deutsch: optische Texterkennung). Seltsamerweise kostet haargenau dasselbe Gerät für einen MS/DOS- oder AMIGA-Rechner heute kaum noch um die 500 DM. sogar mit einem Mini-OCR-Programm. Dafür wird beim Colibri aber ein kleines Bildmanipulationsprogramm namens „Scansoft“ mitgeliefert (das werden wir uns ein andermal betrachten).

Der Colibri-Scanner wird mit einem ROM-Port-Interface nebst Netzteil und einem guten Handbuch vertrieben. Wenn er kein OCR im ROM hat, arbeitet er nur mit „Scansoft“ oder liefert Bilder an DTP- und Grafikprogramme, sofern diese das neue IDC-Protokoll verstehen (z.B. Calamus und Creator). Zu dem IDC-Protokoll an anderer Stelle mehr. Andernfalls muß das Bild erst über den Umweg durch Scansoft, bevor die Grafik in Standarddateiformaten (SCN, PLI, IMG) abgelegt und dergestalt von den weiteren Programmen aufgenommen werden kann.
Hat der Colibri OCR eingebaut, dann meldet sich im ROM-Modul ein Texterkennungsprogramm, das zum Verwechseln an „AUGUR“ erinnert. Der interessierte Leser rufe sich bitte den ausführlichen Test im Mai Heft in Erinnerung. Man könnte wirklich neidisch werden, was AUGUR alles kann - unser Colibri-OCR muß sich mit einigen wenigen Funktionen davon begnügen.

Der Betrieb von Programmen per ROM-Port hat natürlich unbestreitbare Vorteile (wenn auch nicht viele): Es wird weniger RAM in Anspruch genommen, der Programmstart ist extrem schnell und ein aufwendiger Kopierschutz erübrigt sich. Dagegenzuhalten wäre ein kostspieliger Updateservice, weil ganz bestimmt ganze ROM-Cartridges ersetzt werden müssen (EPROM auslöten - nein danke) und öfters wechseln der Einschübe steht der ROM-Port auf Dauer auch nicht durch. Auch stellt der ST dem ROM-Modul nicht genügend Spannung zur Verfügung, um einen Scanner versorgen zu können, also muß ein zusätzliches Netzteil hinzu. Die Tatsache, daß sich kaum Softwarehersteller zu ROM-Port-Lösungen durchringen konnten, sollte eigentlich zu denken geben.

Bevor nun die „Handarbeit“ mit dem Colibri von Erfolg gekrönt wird, sind einige Tücken der Technik zu beachten:

Bild 1: Diese Vorlage wurde mit grober Rasterung (6 x 6) und kleinster Auflösung (100 dpi) abgetastet. Dieses Foto beansprucht als IMG-Datei 16 KByte.
Bild 2: Mit feinster Rasterung (3 x 3) und größter Auflösung (400 dpi) benötigt dieses Foto als IMG-Datei 247 KByte.

Je höher bzw. größer...

... und je kleiner bzw. geringer

desto besser ist die Scan-Qualität!

Tabelle I: Verschiedene Einflußfaktoren beim Scan-Vorgang im Überblick

Vor dem Beginn

Wenn die Arbeitsumgebung sauber hergerichtet ist, stellt dies noch lange nicht den Erfolg sicher. Am Handy gibt es drei verschiedene Schalter, und da muß man zuerst einmal wissen, wie die Zusammenhängen.

Die Tabelle 1 informiert über die verschiedenen Einflußfaktoren beim Scan-Vorgang im Überblick:

  1. Das Rastermaß: Diese Größe wird von Anzahl, Größe, Abstand und Anordnung der Fotodioden im Scanner bestimmt. Im Prinzip steht für jeden Rasterpunkt eine eigene Fotodiode zur Verfügung, sofern die Software das entsprechend ansteuert und auswertet.
  2. Die Auflösung: 4 verschiedene Auflösungsstufen (100 bis 400 Punkte pro Zoll) stellt der kleine Scanner zur Verfügung, und man bedenke, selbst für große Flachbettscanner war bis vor kurzem die Grenze noch bei 200 dpi! Die Tabelle 2a zeigt die Bildpunkte pro Millimeter Lesebreite sowie die gesamte Anzahl der Bildpunkte pro Scan-Zeile für jede Auflösungsstufe. Die Scanzeile hat eine Gesamtbreite von 103 mm.
    Aber Achtung! Die „Scan-Zeile“ nicht mit der „Textzeile“ verwechseln. Eine Scan-Zeile entspricht den horizontalen Lesezyklen, also einer bestimmten Abfragehäufigkeit pro Walzenvorschub (sogenannte „Microschritte“) oder pro Zeiteinheit.
  3. Die Gleichmäßigkeit der Zugbewegung: Dies ist der erste menschliche Fak tor der Arbeit, aber nicht unbedingt der ausschlaggebende. Man sollte nicht mit zittriger Hand den Colibri führen.
  4. Es folgen drei Einflußgrößen des Dokumentes. Abgesehen davon, daß sich ein zerknülltes Papier nicht mehr befriedigend als Scan-Vorlage eignet, kann man diese Anforderungen an das Dokument ohnehin nicht mehr beeinflussen.
    Tabelle 2a führt hierzu beispielhaft die maximale Buchstabengröße je nach Auflösungsstufe an, die noch gelesen werden kann.
  5. Die Zuggeschwindigkeit: Allen Erfahrungen gemäß ist dies mit die wichtigste Größe überhaupt, weil sie von Mal zu Mal sehr stark schwanken kann. Bestimmte Geschwindigkeiten je nach Auflösung sollten nicht überschritten werden - Tabelle 2a informiert darüber.
    Mit ein klein wenig Übung hat man die optimale Geschwindigkeit schnell herausgefunden. Hier zeigt sich der Scanner sehr kooperativ, denn eine unregelmäßige Geschwindigkeit (sofern sie nicht übermäßig schwankt) wird intern ausgeglichen.
  6. Die Hell/Dunkel-Einstellung. Dies ist wohl die sensibelste Einstellgröße. Es dauert schon eine Weile, bis für jede Vorlage aufs neue die richtige Helligkeit ausgetüftelt ist.
  7. Ähnliches wie zu Gleichmäßigkeit und Geschwindigkeit beschrieben, gilt für seitliche Verzerrungen. Die rutschfeste Gummiantriebswalze macht einem dies fast unmöglich, und wenn man zudem ein Lineal zuhilfe nimmt, wird es kaum zu Verzerrungen kommen. Außerdem gleicht Colibri-OCR geringe horizontale Abweichungen bis zu 5 mm, bezogen auf die gesamte Zeilenlänge, intern automatisch aus.

Ebenfalls wichtig für eine spätere Texterkennung ist der freie RAM-Speicher. Tabelle 2b zeigt die maximal mögliche Länge eines Dokumentenausschnittes in Abhängigkeit von Auflösung und Arbeitsspeicher. Es kann im Arbeitseifer sehr schnell passieren, daß die Meldung „Interner Speicher voll“ erscheint.

An einem zusätzlichen Schalter des Colibri lassen sich die Rasterung und die dar aus resultierende Graustufeneinstellung auswählen. In Stellung „Letter“ wird nur zwischen ganz schwarz und ganz weiß unterschieden, also genau wie bei der Texterkennung gewünscht. Tabelle 2a gibt Auskunft über die entsprechenden Verhältnisse (Punkte pro Millimeter oder Punkte pro Scan-Zeile) in Abhängigkeit zur Auflösung. In den drei weiteren Einstellungen (klein, mittel, groß) für „Photo“ können die Größe des Rastermaßes und die Zahl der unterschiedenen Graustufen separat gewählt werden, dies wäre bei Bildscannen nötig. Tabelle 2c zeigt die entsprechenden Werte.

dpi Punkte pro mm Punkte pro Zeile Geschwindigkeit cm/sec in mm Buchstabengröße
100 4 416 8 16
200 8 832 4 8
300 12 1248 3 6
400 16 1664 2 4

Tabelle 2a: Bildpunkte pro Millimeter Lesebreite sowie die gesamtt Anzahl der Bildpunkte pro Scan-Zeile für jede Auflösungsstufe

Bild 3: Die Konturen dieses >M< sind etwas unscharf, das typische Merkmal des Zeichens ist aber noch gut erkennbar.
Bild 4: Ein kohärendes Zeichen: Dieses >m< ist noch sehr merkmalstypisch, aber links unten ist es zu Kontrastüberschlägen gekommen.
Bild 5: Dieses >r< ist in seinem Merkmalsverlauf geteilt worden. Die fehlende Verbindung läßt es wie zwei Zeichen erscheinen, aber dennoch erkennt das Programm das >r< als Ganzes.

Bilder oder Text?

Zum Einlesen von Fotografie in den Arbeitsspeicher sind beim Colibri mindestens drei Einstellungen abzuwägen:

  1. Das Rastermaß: Wenn ein feines Raster (3 x 3) gewählt ist, sind zwar nur 10 Graustufen unterscheidbar, dafür aber die Konturen des Fotos kleiner und fließender. Ein grobes Rastermaß (6 x 6) bringt regelrechte Bildblöcke zum Vorschein, kann aber mehr Graustufen unterscheiden.
  2. Die Auflösung: Je höher die Auflösung, desto mehr Bildpunkte stehen zur Verfügung und desto feiner die Konturen der Fotografie.
  3. Die Helligkeit: Jeweils eine zu helle und eine zu dunkle Einstellung lassen weniger Grauabstufungen unterscheidbar werden. Hier ist ein Mittelmaß wichtig.

Im Modus „Letter“ wäre diese der sogenannte Weiß/Schwarz-Pendelwert.

Diese drei Einstellgrößen stehen in unmittelbarem Zusammenhang. Bild 1 zeigt das eine Extrem: grobes Raster und geringe Auflösung, Bild 2 zeigt das Gegenteil: feines Raster und hohe Auflösung. Die Unterschiede sind überdeutlich.

Kurz zum eben erwähnten Weiß/Schwarz-Pendel wert: Dieser, oft auch „Kontrastunterschied-Entscheidungswert“ genannt, gibt für jeden einzelnen Rasterpunkt an, welcher vermutlich weiße Punkt noch als „wirklich weiß“ und welcher als „wirklich schwarz“ gedeutet werden soll. Es können für beide Werte auch Toleranzen vereinbart sein. Gerade aber bei Annäherung dieser beiden Werte, oder wenn ein Rasterpunktwert in beiden Toleranzen liegt, kann es Überschläge zur einen oder anderen Farbe geben (Entweder-oder-Entscheidung). Die Chance, zufällig auch die richtige Farbe zu treffen, steht quasi „fifty-fifty“.

Colibri-Schrifterkermung

Wie schon in einer früheren Ausgabe der ST-Computer beschrieben, dienen OCR Programme dem Zweck, zunächst als Grafik vorliegende Textpassagen in computerverständliche ASCII-Zeichen umzuwandeln. Folgende Bedingungen muß eine Textvorlage erfüllen, damit Colibri-OCR einigermaßen erfolgreich an die Arbeit gehen kann:

Der Text sollte zusammenhängend sein. Einsam weitab stehende Buchstaben werden leider übersehen.

Speicher 100 dpi 200 dpi 300 dpi 400 dpi
512 kByte 192 cm 48 cm 21 cm 12 cm
1 MByte 432 cm 108 cm 48 cm 27 cm
2 MByte 912 cm 228 cm 101 cm 57 cm
4 MByte 1872 cm 468 cm 208 cm 117 cm

Tabelle 2b: Maximal mögliche Länge eines Dokumentenausschnittes in Abhängigkeit von Auflösung und Arbeitsspeicher

Bild 6: Hier wird das >h< in zwei Teile gespalten, daß das Programm sie nicht mehr als zusammengehörig erkennen kann.
Bild 7: Typischer Fall von „Verwachsung“, zwei Zeichen fließen ineinander über und werden als ein Buchstabe gedeutet.
Bild 8: Bei diesem >k< hat sich eine Verunreinigung (entweder vom Druck oder vom Papier) eingeschlichen. Diese adhäsive Teile kann das Programm nicht herausfiltern und erkennt das Zeichen nicht.
Bild 9: Hier ist die Helligkeit zu schwach eingestellt. Je schwächer die Helligkeit ist, desto mehr Zeichen werden gespalten.
Bild 11: Ein annähernd ausgewogener Kontrast.
Bild 10: Das ist eindeutig zu dunkel. Je dunkler die Helligkeitsstufe gewählt wird, desto größer die Gefahr von Verwachsungen der Zeichen. Die Streifen im Bild können auch von fremden Lichtquellen verursacht worden sein.
Bild 12: Die Vorlage ist zu schräg. Der Text kann nicht analysiert werden, weil die Zeilenzwischenräume (der Durchschuß) nicht gleichmäßig „gefangen“ werden können.

Die Arbeit mit Colibri

Wenn alle Voraussetzungen (siehe oben) erfüllt sind, steht dem ersten „Handgriff’ nichts mehr im Wege. Wie groß ist die Vorlage? Aha, Spaltensatz mit ca. 6 cm Spaltenbreite - ja, das geht: Man kann also hochkant von oben nach unten scannen (Tabelle 2b beachten). Wenn ein Buchtext mit einer Zeilenbreite von mehr als 105 mm vorliegt (so breit ist das Lesefenster), dann muß im Querformat von links nach recht gescannt werden. Startknopf drücken. Der Colibri wird gleichmäßig, am besten mit einem Lineal, über die Vorlage geführt. Probleme kann es bei Zeitschriften zu nahe an Mittenheftung und Rand geben. Läßt man den Startknopf los, erscheint das Ergebnis im mittleren Programmfenster. Wenn die Zuggeschwindigkeit nachläßt, kann es passieren, daß der Scanner von selbst „den Dienst quittiert“ und annimmt, man wäre fertig. Gleiches passiert, wenn die Vorlage zu wellig ist und die Antriebs walze des Colibri zeitweise keinen Bodenkontakt mehr hat.

Als zweites muß man nun einen Rahmen um den Text ziehen, welcher „erkannt“ werden soll. Gerade bei längerem Text gibt es da erhebliche Probleme. Die Schrift im Bildschirmfenster wird so klein, daß kaum noch etwas klar zu unterscheiden ist. Also vielleicht doch nur kleine Textpassagen scannen und das dann lieber öfter?

Natürlich hat Colibri-OCR eine Lupenfunktion. Die funktioniert aber nur zum vergrößerten Ansehen des Scan-Bildes. Beim Rahmenziehen geht’s leider nicht!

Gleich hier ein Tip: Bevor es an das eigentliche „Texterkennen“ geht, den Menüpunkt „Linien entfernen“ anwählen. Zwar eliminiert Colibri-OCR automatisch Linien, die zu Bildern oder Grafik gehören, aber es können auch im Text selber störende Linien Vorkommen.

Wird mittels F10 nun „Text erkennen“ ausgelöst, geht Colibri-OCR die Zeilen durch, unterscheidet Zeilenabstände (horizontal segmentieren) und prüft die Zeichenabstände (vertikal segmentieren). Das was danach geschieht, ist das Anlegen einer Bibliothek, denn Colibri kennt nämlich anfangs keine Buchstaben. Also werden uns diese nach und nach in einem Fenster serviert und sollen per Tastatur eingetippt werden. Diese so definierten ASCII-Buchstaben werden „Prototypen“ genannt und dienen als Muster der weiteren Arbeit.

Auch hier gleich ein Tip: Von einer sauber eingescannten Vorlage zunächst nur wenige Zeilen erkennen lassen. Die so erstellte Bibliothek sollte abgespeichert werden. Und wenn die Bibliothek beim Erkennen des ganzen Textes zu groß geworden ist, wird auch die Erkennzeit länger. Dann holt man die kleinere „Anfangsbibliothek“ von Diskette herein und arbeitet besser damit weiter. Bei zu großen Bibliotheken dauert der Erkennvorgang extrem lange, und ein Überlauf bei zu vielen Prototypen wird riskiert - das heißt: das Programm steigt einfach aus.

Mögliche weitere Fehlerquellen

  1. Schwarze Linien: In den allermeisten Fällen deutet dies auf fremde Lichtquellen hin. Hier wurde die Optik des Handy nicht genügend abgeschirmt. Diese Linien können auch auftreten. wenn die Helligkeit extrem dunkel gewählt wurde.
  2. Scanvorgang bricht mittendrin ab: Oftmals ist der interne Speicher voll. Dies kann durch eine geringere Auflösung behoben werden (nicht immer zu empfehlen), oder man nimmt sich weniger Textlänge vor.
  3. Bild verzerrt: Es wurde mit unebener Unterlage gearbeitet oder zu ungleichmäßig gezogen.
  4. Zeilen werden heim Erkennungsvorgang weggelassen: Entweder war die Vorlage zu schräg oder ihre Zeilen zu eng.
  5. Buchstaben verschwimmen ineinander: Helligkeit zu dunkel oder Druck zu unscharf.
  6. Buchstaben nicht vollständig: Helligkeit zu hell gewählt.
Einstellung Rastermaß Graustufen
klein 3x3 10
mittel 6x3 19
groß 6x6 37

Tabelle 2c: Größt des Rastermaßes und die Zahl der unterschiedenen Graustufen.

Bild 14: Hier sind Ausreißer bei Querformatscannen geschehen. Es sind ähnliche Hindernisse wie bei Bild 12 und 13.
Bild 13: Das sind Ausreißer in horizontaler Richtung beim Hochformatscannen. Die Buchstabengröße variiert zu stark, deshalb ist der Text nicht lesbar.

Arbeitsprinzip der Schrifterkennung

Dem Colibri-OCR liegt das Maskenvergleichsverfahren zugrunde (siehe auch ST-Computer, Mai 89. Seite 118). Hierbei wird im Erkennungsvorgang über das gelesene Raster einfach ein bekanntes Raster (aus der Bibliothek) gelegt. Je nach dem, wie kompliziert der Algorithmus ausgelegt ist, kann es entweder nur einen unmittelbaren Vergleich geben, oder es wird ein Näherungsverfahren zusätzlich angewandt. Beim unmittelbaren Vergleich müssen die schwarzen Rasterpunkte der Vorlage exakt denen des Prototyps entsprechen („Vorlage paßt auf Prototyp“, auch ‚Positivvergleich’ genannt) oder auch umgekehrt („Prototyp paßt auf Vorlage“ = ‚Negativvergleich’). Toleranzen sind in engen Grenzen möglich.

Ein zusätzliches Näherungsverfahren kann, fast so wie bei Strategiebäumen in Schachprogrammen, Ähnlichkeiten zwischen den Prototypen aufstellen und sich für den einen oder anderen Buchstaben entscheiden. Weiterhin kann beim Neuerkennen eines Zeichens eine weitergehende Ähnlichkeit mit Prototypen vermutet werden, nur wenn die Ähnlichkeit unter einem statistischen Wert liegt, wird das Zeichen „als neu vermutet“. Die Schwelle dieses „Vermutungswertes“ ist einstellbar.

Es sieht ganz danach aus, daß Colibri OCR nur den unmittelbaren Vergleich anwendet, während AUGUR schon einen verfeinerten Algorithmus mit „Vermutungswert“ benutzt.

Alles in allem

Das Arbeiten mit dem Handy ist stark gewöhnungsbedürftig und für die Daueranwendung (z.B. Einscannen ganzer Bücher) sicherlich nicht geeignet. Viele Einstellungen müssen manuell vorgenommen werden und erfordern oft eine lange Test- und Probierphase (zumindest für Anfänger). Es kommen auch einige menschliche Unsicherheiten mit ins Spiel, die ein „Hantieren“ mit dem Colibri ebenfalls komplizierter gestalten (aber dafür kann der Scanner ja nichts).

Es sind nur wenige Funktionen in Colibri-OCR eingebaut. Beispielsweise können die Scan-Bilder nicht abgespeichert oder fremde hereingeladen werden. Texterkennung ist also immer nur von unmittelbar gescannten Vorlagen möglich. Natürlich können Bibliotheken und Texte (in ASCII und 1st WORD) abgespeichert werden, aber was soll „Text senden“ (an serielle Schnittstelle)? Kommt es oft vor, daß man bei der Texterkennung eine stehende Modemverbindung hat, um gleich den erkannten Text per DFÜ zu versenden?

Und die Funktion „Fixed Space“: Sie wird vor dem Erkennungsvorgang angewählt und bedeutet, daß der Zeichenabstand immer gleich ist, also wie bei Schreibmaschinenschrift. Kommt sicher auch nicht oft vor! Colibri-OCR hat nur sehr wenig von seinem großen Bruder „AUGUR“ geerbt. Der Verdacht liegt nahe, daß im Colibri die Vorgänger-Beta-Testversion von AUGUR arbeitet.

Als durchaus akzeptabel ist der Preis des Gerätes (mit OCR) zu bewerten, wenn man bedenkt, was Flachbettscanner kosten und professionelle OCR-Programme zudem. Mit 1590 DM ist Colibri-OCR sicher nicht zu teuer. Allerdings 990 DM alleine für den Scanner (ohne OCR) erscheinen mir nun doch ein klein wenig zu viel. Wenn man überlegt, daß vor Jahren ein realistisch denkender Computernutzer von Scannern nur zu träumen wagte, wird mit den kleinen „Handies“ ein neuer Anwenderkreis erschlossen. Die Benutzung solcher Low-Cost-Scanner steht gerade erst am Anfang, und auch Schrifterkennungsprogramme gibt es für den ST noch kaum. Dennoch werden solche Geräte und Programme in absehbarer Zeit noch besser, genauer, schneller und preisgünstiger werden - wie alles in der Computerwelt.

Bezugsquelle:
Hans Richter
Hagener Straße 65
5820 Gevelsberg


Dieter Kühner
Aus: ST-Computer 09 / 1989, Seite 48

Links

Copyright-Bestimmungen: siehe Über diese Seite