Auch wenn der Vergleich etwas hinkt, mit detektivischer Kleinarbeit hat Schrifterkennung durchaus etwas zu tun. (Man erinnere sich an Artikel in früheren Ausgaben dieser Zeitschrift.) Dann denke man z.B.an Hieroglyphen: Aus vielen Spielfilmen ist das Bild geläufig, wenn Forscher in Ägypten mittels eines Vergrößerungsglases Inschriften in Grabmauern zu ergründen versuchen. Im (Grunde tut unser Computer bei der Schrifterkennung gar nichts anderes.
Also paßt das Bild durchaus, wenn man sich vorstellt, daß Sherlock Holmes als Software (Sir Arthur Conan Doyle möge verzeihen) in den RAMs unseres ST tätig wird. Ein ähnliches Bild hatten wohl die Schöpfer von "SHERLOOK" vor Augen, als ihre Schrifterkennung fertig war.
SHERLOOK liegt uns in der Version 2.3 vor und besteht aus einer Diskette, einem schmalen Handbuch und einem "Dongle". Letzteres bedarf einer kleinen Erklärung: Aus weithin bekannten Gründen gehen die Entwickler hochwertiger Software mehr und mehr dazu über, nun doch wieder einen Kopierschutz in die Programme einzubauen. Eben dieser "Dongle", entweder als ROM-Port- oder als Joystick-Port-Stecker ausgelegt, stellt den Kopierschutz dar. Man kann lange über Sinn und Unsinn solcher Schutzmaßnahmen streiten (wird, glaube ich, auch heute noch heftigst getan). Gerade aber, wenn es darum geht, neue Anwendungsgebiete mit einem Programm zu erschließen, gewissermaßen Vorkämpfer auf unbekanntem Terrain zu sein, scheint mir persönlich der Einsatz solcher Kopierschutzstecker für eine gewisse Zeit und ab einem bestimmten Preisniveau gerechtfertigt zu sein. Trotz dieser Ausführungen möchte ich die Entwickler dazu anregen, sich Gedanken über andere Schutzmethoden zu machen. Ein Gutes aber hat die "Dongle-Zugabe" bei SHERLOOK. wer schon einen solchen Schutzstecker anderer Firmen besitzt (sogenannte "ST-LOCK-Module"), kann SHERLOOK auf diese anpassen lassen. Damit laufen alle Programme mit nur einem Stecker. Außerdem bemüht sich die Firma H. Richter, Gevelsberg, um eine Standardisierung der ST-LOCK-Technik, so daß bei nachfolgenden (geschützten) Programmen keine weiteren Stecker mehr nötig werden.
Wie war das noch gleich? Man schafft sich einen Scanner an, um nicht mehr länger Texte abtippen zu müssen? Oder hat man schon einen Scanner für Grafik, dann wäre doch die automatische Texterfassung ein interessantes neues Tätigkeitsfeld für das Lesegerät? Sehen wir uns doch SHERLOOK näher an:
Nach dem Programmstart läuft ein kleiner Film ab Die Titelzeile rollt von rechts herein, und ein Begrüßungsbild "pixelt" sich in der Mitte auf. Weil das nicht jedermanns Geschmack ist, kann diese Einstiegszeremonie per >ESC< sinnvollerweise auch umgangen werden.
Wenn dann die Arbeitsoberfläche erscheint, fällt eines dem GEM-geübten Auge sofort auf: Die Pull-Down-Menüs fehlen! Aber was soll's, mit der Maus kann man trotzdem Weiterarbeiten, denn die Funktionstastenleiste am unteren Bildrand ist auch per Maus zugänglich. Und seien wir mal ehrlich, ohne Pull-Downs geht es doch allemal schneller.
Im Hauptfenster finden wir rechts die verkleinerte Originalvorlage des eingelesenen Bildes und links einen (um den Faktor acht) vergrößerten Teilausschnitt. Das Komplettbild rechts paßt sich maßstabsgerecht dem Originalformat an. Eine Informationsleiste links zeigt wichtige Systemzustände an.
Üblicherweise wird ein Programm zur Schrifterkennung gleichzeitig mit einem Scanner betrieben. Ganz unüblich mußten bis vor kurzem Besitzer eines Handyscanners arbeiten (so auch ich), denn im ROM-Port wollte sowohl der Handy- als auch der SHERLOOK-Dongle stecken. Da aber mehrheitlich der "übliche Weg" gegangen wird, steuert SHERLOOK folgende Scannertypen direkt an:
(Weitere Treiber kommen alsbald hinzu.)
Durch Druck auf die Tasten F1 (Bild) und F2 (Scannen) erscheint ein Kontrollfenster für Scanner-Einstellungen. Jetzt können Parameter für den nächsten Scandurchgang festgelegt werden wie Graustufen, Auflösung oder Koordinaten für Teilausschnitte (z.B. bei Panasonic). Der eigentliche Scan-Vorgang wird nun mit >Return< gestartet. Sobald das komplette Bild eingelesen ist, baut es sich im rechten Teil der Arbeitsoberfläche auf.
Mit den Tasten F1 (Bild) und F1 (Lade IMG) kann alternativ auf bereits abgespeicherte Bilder anderer Scan-Programme (der unübliche Weg, s.o.) zugegriffen werden.
Dies war die erste Hürde. Bevor nun mit dem Erkennvorgang begonnen wird, sollte die Qualität der Vorlage geprüft werden. Mit dem rechten Komplettbild erkennt man großflächige Fehler wie Kontrastunterschiede, Blendstreifen durch Lichteinfall, sehr schiefe Zeilenführung. Mit dem linken Vergrößerungsausschnitt werden Unzulänglichkeiten der Buchstaben deutlich. Am besten den Scan-Vorgang dann mit veränderten Parametern wiederholen.
Nicht in allen Fällen muß der Scan-Vorgang mehrmals wiederholt werden, bis ein befriedigendes Bild vorliegt. SHERLOOK stellt diverse Funktionen zur Verfügung, um Veränderungen im Bild vornehmen zu können.
Vorlage verkehrt eingelesen? Kein Problem - SHERLOOK erlaubt die Spiegelung der Vorlage horizontal, vertikal oder beides gleichzeitig.
Teilausschnitt ignorieren? Wenn bestimmte Textteile für den Erkennungsprozeß ohne Bedeutung sind, können diese durch Invertieren (erscheint dann als schwarzes Rechteck) gesperrt werden.
Teile völlig herausnehmen? Mit der Funktion "Ausschnitt löschen" verschwinden definierte Teile völlig aus der Vorlage und fallen dem Erkennungsvorgang später nicht zur Last.
Vorlage filtern? Bei einer schlechten Vorlage können sehr schnell Ausfransungen der Buchstaben entstehen. Dies insbesondere dadurch, weil immer ein Kompromiß zwischen Helligkeit und Kontrast eingegangen werden muß. Dann treten auch "Fehlfarben" wie Graustiche oder Kontraststreifen auf. Mit zwei Filterfunktionen kann dies weitgehend bereinigt werden (im wahrsten Sinne des Wortes): Filter 1 (schwach) zur Tilgung einzelner angehängter Bildpünktchen oder Filter 2 (stark), um Linien und Striche zu eliminieren.
Ausschnitt verdicken? SHERLOOK funktioniert immer besser, je dicker und kräftiger die Buchstaben sind. Aber Achtung! Nicht allein deswegen Helligkeit und Kontrast des Scanners bis "maximal" aufdrehen. Durch Verdicken werden die Buchstaben im nachhinein künstlich aufgebläht. Dies kann durchaus notwendig sein, wenn die Zeichen zu dünn oder zweigeteilt sind.
Die zentrale Funktion in SHERLOOK ist das Rahmenziehen mit der rechten Maustaste. Sobald ein Rahmen aufgezogen ist, wird darin der Erkennungsprozeß eingeleitet. Maximal sind 32 solcher Rahmen in einer Vorlage möglich.
Mit den Tasten F2 (Zeichen) und F5 (Lernen) kommt man nun in die Verwaltung des Zeichensatzes und damit zum Lernen der unbekannten Zeichen. Hierzu erscheint eine etwas anders gestaltete Arbeitsoberfläche. Der Text im linken Ausschnitt behält Lage und Form wie vorher. Nur im rechten Teil wird jetzt das erste unbekannte Zeichen noch einmal (etwa um den Faktor vier) vergrößert dargestellt.
Jetzt soll das Zeichen per Tastendruck quasi bestätigt werden. Alle Zeichen, die per Tastatur zugänglich sind (sogenannter Standardzeichensatz), findet man links unter dem Textausschnitt abgebildet. Sollten darüber hinaus Sonderzeichen oder nationale Schriften verlangt sein, wären diese per Maus in der Leiste am unteren Bildrand anzuwählen.
Bevor überhaupt ein Erkennungsdurchgang startet, erscheint eine Kontrollbox für Parametereinstellungen. Dort wird festgelegt, wie Schriftart {proportional oder Schreibmaschine). Zeilenabstand (normal/klein) oder Wortzwischenräume (immer nur eine Leerstelle oder variabel wie bei Blocksatz) zu erwarten sind. Besonders interessant sind aber Genauigkeitsregler und die Einstellung der Lernphasen.
Mit dem Toleranzregler für die Fehlergenauigkeit wird festgelegt, wie groß die Abweichungen sein dürfen, damit ein Zeichen noch zu ähnlichen zugeordnet werden darf. Ist die Toleranz hoch (also sehr empfindlich) eingestellt, wird das Programm öfters nachfragen, um Ähnlichkeiten vom Benutzer per Tastatur bestätigt zu bekommen. Je niedriger diese Toleranzschwelle angesetzt ist, desto eher akzeptiert der Rechner gröbere Ähnlichkeit. Die Wahl des Toleranzwertes sollte auch abhängig gemacht sein von der Qualität der Vorlage - je besser die Vorlage, desto niedriger die Fehlergenauigkeit.
Sehr interessant sind die Lernphasen, einstellbar von eins bis zehn. Wenn bei der Funktion "Zeichen lernen" vom Benutzer per Tastatur die Buchstaben eingetippt werden, merkt sich das System diese und markiert sie in der Leiste des Standardzeichensatzes grau. Aber dieser eine Buchstabe genügt noch nicht, um späterhinaus dem System hinreichende Sicherheit für ähnlich aussehende Zeichen zu geben. Deswegen verlangt SHERLOOK öfters ähnliche Zeichen per Tastatur zu bestätigen - selbst wenn der Benutzer kaum Unterschiede ausmachen konnte. Die Zahl der Lernphasen legt nun fest, wie oft dasselbe Zeichen bestätigt werden muß, um endgültig "erlernt" zu sein. In SHERLOOK wird das letztendlich so erlernte Zeichen "Normzeichen" genannt, und erst dieses dient in weiteren Erkennungsläufen als Vergleichsvorlage. Die so festgestellten Normzeichen sind in der Zeichensatztabelle dann invers gekennzeichnet.
Sehr schön ist die Möglichkeit, das Lernen auszuschalten (Korrektur manuell). Dies bedeutet, daß ein Bild bei hinreichend genauen und vollzähligen Normzeichen nicht mehr weiter auf unbekannte Zeichen "erlernt" werden soll. Die unbekannten Zeichen markiert das Programm dann mit einem bestimmten Symbol und gibt den Text entsprechend aus.
Daß so banale Funktionen wie Zeichensatz löschen, speichern, laden und Text löschen, zeigen, entfernen, anzeigen, speichern (ASCII und 1st Word) möglich sind, bedarf fast kaum noch der Erwähnung. Auch ist eine knappe aber nützliche Online-Hilfe eingebaut.
Erinnern Sie sich noch? Es ist noch gar nicht so lange her, daß ich in dieser Zeitschrift einen Artikel zur Texterkennung schloß mit dem Hinweis, wir würden alsbald mit neuen Informationen zu diesem Thema zurückkehren. Und ein klein wenig freut es mich, daß dies so bald geschehen durfte. SHERLOOK reiht sich in eine kleine Gruppe von Programmen ein, die sich in gar nicht mehr so langer Zukunft einen Markt erobern werden, der uns heute noch etwas utopisch erscheint. Bald werden Scanner so preisgünstig sein, daß sie uns geläufig sind wie Nadeldrucker. SHERLOOK ist ein Programm zur Texterkennung, mit dem professionell gearbeitet werden kann. Da es vollständig in Assembler geschrieben ist, legt es akzeptable Geschwindigkeiten vor und braucht einen Vergleich mit ähnlichen Programmen nicht zu scheuen. Der Einbau kleiner, zunächst unscheinbarer Funktionen zeigt, daß sich die Entwickler sehr ernsthaft mit der Problematik befaßt haben.
Bezugsquelle:
H. Richter-Distrtbutor
Hagener Straße 65
5820 Gevelsberg