Benutzer:Michaelsy/Sandkasten06

aus Wikipedia, der freien Enzyklopädie
Eine automatische Texterkennung ist deutlich fehleranfälliger als ein menschlicher Leser.

Texterkennung oder auch Optische Zeichenerkennung (Abkürzung OCR von englisch Optical Character Recognition, selten auch: OZE) ist ein Begriff aus der Informationstechnik und bezeichnet die informationstechnische Erfassung von Zeichensymbolen, Zeichenketten und Texten innerhalb von Bildinformationen. Sie ist ein Teilgebiet der maschinellen Mustererkennung.

Angewendet wird die Texterkennung zumeist im Rahmen einer Konvertierung von einem Bilddatenformat in ein Textdatenformat. Typische Bilddatenformate sind gescannte Papiervorlagen, digitale Fotos sowie andere Bilddateien. Typische Textdatenformate sind Textdateien, Word-Dokumente und HTML-Dateien. Die Konvertierung wird in der Regel durchgeführt, um den Text bearbeiten, neu formatieren und automatisiert durchsuchen zu können (siehe auch Abschnitt Anwendungen). Zudem ist der Speicherplatzbedarf einer Textdatei erheblich geringer als der der entsprechenden Bilddatei.[1] Diesen Abschnitt mit dem Abschnitt unten => Anwendungen zusammenlegen

Grundsätzliches

Texterkennung ist deshalb notwendig, weil optische Eingabegeräte (Scanner oder Digitalkameras, aber auch Faxempfänger) als Ergebnis ausschließlich Rastergrafiken liefern können, d. h. in Zeilen und Spalten angeordnete Flächen unterschiedlicher Färbung (Pixel). Texterkennung bezeichnet dabei die Aufgabe, zusammengehörende Farbflächen, die Buchstaben darstellen, als solche zu erkennen. Automatische Texterkennung und OCR werden im deutschen Sprachraum oft synonym verwendet. In technischer Hinsicht bezieht sich OCR jedoch nur auf den Teilbereich der Mustervergleiche von separierten Bildteilen als Kandidaten zur Erkennung von Einzelzeichen. Diesem OCR-Prozess geht eine globale Strukturerkennung voraus, in der zuerst Textblöcke von graphischen Elementen unterschieden, die Zeilenstrukturen erkannt und schließlich Einzelzeichen separiert werden. Diese OCR-Ergebnisse können durch nachfolgende Verfahren, in denen der Kontext berücksichtigt wird, präzisiert werden.

Ursprünglich wurden zur automatischen Texterkennung eigens entworfene Schriftarten entwickelt, die zum Beispiel für das Bedrucken von Scheckformularen verwendet wurden. Diese Schriftarten waren so gestaltet, dass die einzelnen Zeichen von einem OCR-Lesegerät schnell und ohne großen Rechenaufwand unterschieden werden konnten. So zeichnet sich die Schriftart OCR-A (DIN 66008, ISO 1073-1) durch einander besonders unähnliche Zeichen, besonders bei den Ziffern, aus. OCR-B (ISO 1073-2) ähnelt mehr einer serifenlosen, nicht-proportionalen Schriftart, während OCR-H (DIN 66225) handgeschriebenen Ziffern und Großbuchstaben nachempfunden wurde.

Die gestiegene Leistungsfähigkeit moderner Computer und verbesserte Algorithmen erlauben inzwischen auch die Erkennung von „normalen“ Druckerschriftarten bis hin zu Handschriften (etwa bei der Briefverteilung); wenn jedoch Lesbarkeit durch Menschen nicht vorrangig ist, werden drucktechnisch und erkennungstechnisch einfacher handhabbare Strichcodes genutzt.

Moderne Texterkennung umfasst inzwischen mehr als reine OCR, das heißt die Übersetzung einzelner Schriftzeichen. Zusätzlich werden Methoden der Kontextanalyse Intelligent Character Recognition (ICR) hinzugezogen, mit welcher die OCR-Ergebnisse korrigiert werden können. So kann eine „8“ zu einem „B“ korrigiert werden, wenn sie in einem Buchstaben-Kontext steht. Das OCR-Ergebnis „8aum“ kann mit ICR-Methoden zu „Baum“ korrigiert werden. Im Bereich industrieller Texterkennungssysteme wird daher von OCR/ICR-Systemen gesprochen. Die Grenzen des OCR-Begriffes sind jedoch fließend, denn OCR und ICR dienen auch als Marketingbegriffe, um technische Weiterentwicklungen besser vermarkten zu können. Auch Intelligent Word Recognition (IWR) fällt unter diese Kategorie. Dieser Ansatz versucht das Problem bei der Erkennung von Fließhandschriften zu lösen, bei der die Einzelzeichen nicht eindeutig separiert und daher nicht über herkömmliche OCR-Methoden erkannt werden können. Mit dieser Methode lassen sich jedoch keine Volltexte, sondern nur inhaltlich eng definierte und in ihrer Varianz bekannte Textausschnitte erkennen. Je größer die Varianz, desto zufallsabhängiger wird die Erkennungsgenauigkeit. Da IWR-Methoden nicht für Volltexterkennung geeignet sind, gilt generell, dass Fließhandschrift maschinell nicht lesbar ist. Das gilt auch für Schriften von Sprachen, die keine klaren Buchstabentrennungen haben, wie zum Beispiel die arabische Schrift.

Ein prinzipiell anderer Ansatz der Texterkennung findet bei der Handschriftenerkennung auf Touchscreens oder Eingabefeldern (PDA, usw.) statt. Hier werden vektorbasierte Muster verarbeitet, entweder ‚offline‘ als gesamtes Wort oder ‚online‘ mit zusätzlicher Analyse des Eingabeflusses (beispielsweise Apples Inkwell).

Eine Sonderform der Texterkennung ergibt sich beispielsweise bei der automatischen Verarbeitung des Posteinganges großer Firmen. Eine Aufgabenstellung ist das Sortieren der Belege. Dafür braucht nicht immer der Inhalt analysiert zu werden, sondern es genügt manchmal schon, die groben Merkmale, etwa das charakteristische Layout von Formularen, Firmenlogos etc., zu erkennen. Die Klassifikation bestimmter Textarten erfolgt wie bei der OCR über eine Mustererkennung, die sich jedoch global auf das gesamte Blatt oder definierte Stellen anstelle einzelner Buchstaben bezieht.

Verfahren

Ausgangspunkt ist eine Bilddatei (Rastergrafik), die von der Vorlage per Scanner, Digitalfotografie oder Videokamera erzeugt wird. Die Texterkennung selbst erfolgt dreistufig:

Seiten- und Gliederungserkennung

Die Bilddatei wird in relevante Bereiche (Texte, Bildunterschriften) und irrelevante Bereiche (Abbildungen, Weißflächen, Linien) aufgeteilt.

Mustererkennung

Fehlerkorrektur auf Pixelebene

Die Rohpixel können durch ihre Nachbarschaftsbeziehungen zu angrenzenden Pixeln korrigiert werden. Einzelne Pixel werden gelöscht. Fehlende Pixel können ergänzt werden. Dadurch erhöht sich die Trefferquote bei einem reinen Mustervergleich. Dies ist stark abhängig vom Kontrast der Vorlage.

Mustervergleich Mapping

Die Pixelmuster der Textbereiche werden mit Mustern in einer Datenbank verglichen, Rohdigitalisate werden erzeugt.

Fehlerkorrektur Zeichenebene (Intelligent Character Recognition, ICR)

Die Rohdigitalisate werden mit Wörterbüchern verglichen sowie nach linguistischen und statistischen Verfahren hinsichtlich ihrer wahrscheinlichen Fehlerfreiheit bewertet. In Abhängigkeit von dieser Bewertung wird der Text ausgegeben oder gegebenenfalls einer erneuten Layout- oder Mustererkennung mit veränderten Parametern zugeführt.

Fehlerkorrektur auf Wortebene (Intelligent Word Recognition, IWR)

Fließhandschrift, bei der die Einzelzeichen nicht voneinander getrennt erkannt werden können, wird anhand globaler Charakteristiken mit Wörterbüchern verglichen. Die Treffergenauigkeit verringert sich mit der zunehmenden Größe des eingebundenen Wörterbuches, da die Verwechslungsmöglichkeiten zunehmen. Einsatzbereiche sind definierte Feldbereiche mit eingeschränkten Angabenmöglichkeiten, zum Beispiel handgeschriebene Adressen auf Briefumschlägen.

Manuelle Fehlerkorrektur

Viele Programme bieten darüber hinaus einen besonderen Modus zur manuellen Fehlerkorrektur durch den Anwender für diejenigen Textbereiche, die „unsicher“ erkannt wurden.

Codierung in das Ausgabeformat

Je nach Aufgabenstellung erfolgt die Ausgabe in eine Datenbank oder als Textdatei in einem definierten Format wie ASCII oder XML, gegebenenfalls auch mit Layout (etwa als HTML oder PDF).

Die Qualität der Texterkennung bestimmen unter anderem mehrere Faktoren:

  • Qualität der Layouterkennung,
  • Umfang und Qualität der Muster-Datenbank,
  • Umfang und Qualität der Wörterbücher,
  • Qualität der Algorithmen zur Fehlerkorrektur,
  • Farbigkeit, Kontrast, Layout und Schriftart des Originaldokumentes,
  • Auflösung und Qualität der Bilddatei.

Während eine reine Mustererkennung eine Fehlerfreiheit in der Größenordnung von 80 % erreicht (jedes fünfte Zeichen wird falsch erkannt), erzielen gute Programme dank leistungsfähiger Algorithmen eine Fehlerfreiheit von bis zu 99 %. Solche Algorithmen operieren auf Graustufenbildern und erkennen Buchstaben so als dreidimensionale Kurven mit charakteristischen Merkmalen.

Die Zahl der unerkannten Fehler in einem Dokument lässt sich abschätzen, siehe Rechtschreibfehler. Während Texte Redundanzen enthalten und deshalb eine höhere Fehlerrate zulassen, erfordern Zahlenlisten, wie beispielsweise Telefonnummern, ein mehrmaliges Korrekturlesen.

Anwendungen

  • Wiedergewinnen von Textinformation aus Bilddateien, um diese mit Hilfe einer Textverarbeitung weiter zu bearbeiten oder elektronisch durchsuchbar zu machen
  • Erkennung von relevanten Merkmalen (zum Beispiel Postleitzahl, Vertragsnummer, Rechnungsnummer) zur mechanischen (Poststraße) oder elektronischen (Workflow-Management-System) Einsortierung eines Schriftstücks
  • Eine erweiterte Volltextsuche in Datenbanken oder Document-Management-Systemen, um auch PDFs und Bilder durchsuchen zu können.
  • Erkennung von Merkmalen zur Registrierung und gegebenenfalls Verfolgung von Gegenständen (beispielsweise Kfz-Kennzeichen)
  • Layouterkennung: Es wird ein formatiertes Dokument erstellt, das der Vorlage bezüglich Text-, Bild- und Tabellenanordnung möglichst nahe kommt.
  • Blindenhilfsmittel: Für Blinde wird es durch die Texterkennung möglich, eingescannte Texte über Computer und Braillezeile zu lesen oder sich per Sprachausgabe vorlesen zu lassen.

OCR-Software

Proprietäre Software

Als Nebenfunktion in proprietärer Software:

Freie Software

Siehe auch

Literatur

Weblinks

Kommentare

  1. Die Größe der Textdatei ist etwa um den Faktor 50 bis 1000-fach kleiner als der der entsprechenden Bilddatei. Bei ganz besonders platzsparenden Bilddatenformaten kann sich auch ein Faktor von lediglich 15-fach ergeben. Liegen sehr ungünstige Bildformate vor, kann der Faktor auch 10.000-fach und größer sein (Quelle: eigene Messungen).