-
Die Erfindung betrifft eine Vorrichtung und ein Verfahren
zum Gewinnen von Mustermerkmalen, welche Vorrichtung und welches
Verfahren in einem Mustererkennungssystem verwandt werden
können.
-
Es ist eine breite Vielzahl verschiedener
Mustererkennungssysteme bekannt. Jedes derartige System empfängt optisch Daten,
die ein zu erkennendes Muster darstellen, und führt gewisse
Prozesse an diesem Muster aus, um es mit bekannten Mustern zu
vergleichen und dadurch das Eingangsmuster "zu erkennen".
-
Ein Grundflußdiagramm, das ein Mustererkennungssystem
darstellt, ist in Fig. 1 der zugehörigen Zeichnungen gezeigt, die
ein Blockdiagramm ist, das sowohl die gegenständliche
Organisation als auch den Prozeßablauf eines typischen bekannten
Muster- oder Zeichenerkennungssystems darstellt.
-
Das Eingangsmuster ist dasjenige Muster, das erkannt werden
soll. Ein Digitalisierer 12 wandelt das Eingangsmuster 11 in
eine Reihe von Bytes zum Speichern im Systemspeicher 13 um.
Diese Bytes sind im typischen Fall in ihrer Beschaffenheit
binär, was die Tatsache wiedergibt, daß das Eingangsmuster 11 im
wesentlichen ein Schwarzweißbild ist. Digitalisierer sind
bekannt und werden im typischen Fall in Vorrichtungen wie
Telefaxmaschinen, elektronischen Dupliziermaschinen (im Gegensatz zu
optischen Photokopiergeräten) und optischen
Zeichenerkennungssystemen bekannter Art verwandt. Der Speicher 13 kann irgendeine
geeignete Speichereinrichtung einschließlich Speicher mit
direktem Zugriff bekannter Ausbildung umfassen. Eine Segmentierung
14 dient dazu, die im Speicher 13 gespeicherten Bilddaten in
einzelne Zeichen aufzuteilen. Eine derartige Segmentierung ist
bekannt und beispielsweise in Digital Picture Processing, Second
Edition, Volume 2, Azriel Rosenfeld and Avinash C. Kak, Academic
Press, 1982, insbesondere Chapter 10 unter dem Titel
"Segmentation" beschrieben.
-
Eine Merkmalgewinnungseinrichtung 15 verarbeitet jedes
Datenteil (d. h. jedes Zeichen), das von der Segmentierung 14
empfangen wird, um diese Daten in eine vorher bestimmte
Standartform zur Verwendung durch eine Identifizierungseinrichtung
16 umzuwandeln, die ihrerseits jedes Zeichen als ein Zeichen
eines bekannten Zeichensatzes identifiziert. Eine
Ausgabeeinrichtung 17 dient dazu, Ausgangsdaten (im typischen Fall ASCII
oder ähnliches) in der gewünschten Weise einer externen
Schaltungsanordnung (nicht dargestellt) zu liefern.
-
Die Identifizierungseinrichtung 16 kann irgendeine
Einrichtung aus einer Anzahl bekannter Identifizierungseinrichtungen
sein, die im typischen Fall in Mustererkennungssystemen
einschließlich insbesondere in optischen Zeichenerkennungssystemen
verwandt werden. Eine derartige Identifizierungseinrichtung ist
in dem für Todd erteilten US-Patent 42 59 661 vom 31. März 1981
mit dem Titel "Apparatus and Method for Recognizing a Pattern"
beschrieben. Eine Identifizierungseinrichtung 16 ist auch in
Syntatic Pattern Recognition and Applications, K. S. Fu,
Prentice Hall, Inc. 1982, insbesondere Section 1.6 und Anhänge A und
B beschrieben. Insoweit die vorliegende Erfindung eine
Vorrichtung und ihr Arbeitsverfahren zum Benutzen betrifft,
konzentriert sich die vorliegende Darstellung einschließlich der
Beschreibung des Standes der Technik anstelle der
Merkmalgewinnungseinrichtung 15, wie sie in einem optischen
Zeichenerkennungssystem vorkommt, auf eine derartige
Merkmalgewinnungseinrichtung.
-
Bekannte Merkmalgewinnungsverfahren fallen im allgemeinen
in zwei Klassen, nämlich "Matrixüberlagerung" und
"Merkmalanalyse".
In der Matrixüberlagerung wird ein zu erkennendes
Eingangszeichen physisch mit mehreren bekannten Mustern verglichen, die
in einem Speicher gespeichert sind. Sowohl die Eingangsdaten,
als auch die gespeicherten bekannten Zeichen, die mehrere
Bildpunkte (Bildelemente) enthalten, werden im wesentlichen jeweils
als Merkmalvektor gespeichert, der ein Bit für jeden Bildpunkt
(weiß sowie schwarz) des Zeichens umfaßt. Das führt zu einer
sehr großen Anzahl von Merkmalvektoren, die gespeichert werden,
wenn das Testmuster mit einer großen Anzahl von Bezugsmustern
verglichen werden muß. Die Merkmalgewinnung vom Typ der
Matrixüberlagerung verwendet im allgemeinen eine Gütezahl, die eine
Zahl ist, die über einen Prozeß der besten Übereinstimmung der
einzelnen Bildpunkte abgeleitet wird, bei dem die einzelnen
Bildpunkte des Eingangszeichens und die einzelnen Bildpunkte
eines bekannten Zeichens in einer logischen
Exklusiv-ODER-Verknüpfung kombiniert werden. Die sich ergebende Gütezahl dieser
Exklusiv-ODER-Verknüpfung ist eine Zahl, die die Anzahl der
Bildpunkte angibt, die in den beiden Mustern nicht
übereinstimmen. Diese Information wird der Identifizierungseinrichtung 16
geliefert, die als erkanntes Zeichen dasjenige Zeichen wählt,
daß die niedrigste Anzahl von nicht übereinstimmenden
Bildpunkten aufweist.
-
Das Matrixüberlagerungsverfahren der Mustergewinnung ist
brauchbar, wenn Eingangszeichen mit einer sehr begrenzten Anzahl
von Schrifttypen oder Bezugszeichen verglichen werden. Das ist
ein Grund dafür, daß spezielle "OCR"-Zeichentypen entwickelt
wurden, die zwar zur Verwendung mit
Matrixüberlagerungsmerkmalgewinnungsverfahren geeignet sind, jedoch für Menschen nicht
lesbar sind. Matrixüberlagerungsmerkmalgewinnungsverfahren sind
relativ unempfindlich gegenüber Fleckenstörungen (d. h. eine
verschmutzte Seite) und relativ unempfindlich gegenüber
unbeabsichtigten Unterbrechungen in den Zeichen. Die
Matrixüberlagerung ist jedoch stark empfindlich gegenüber Änderungen in der
Form, d. h. Änderungen im Schrifttyp, in der Typgröße, der
Verwendung von Kursiv-Schriften, Unterstreichungen, Fettdruck und
ähnlichen üblicherweise auftretenden Dingen.
Matrixüberlagerungsmerkmalgewinnungsverfahren sind daher nicht wirklich
geeignet für eine breite Verwendung in Systemen, die Zeichen erkennen
müssen, die eine große Anzahl von Schrifttypen, Typgrößen und
ähnliches haben, ohne daß enorme Investitionen in der Hardware
und in der Rechenleistung erforderlich sind.
-
Ein weiteres bekanntes Verfahren, das zur Merkmalgewinnung
verwandt wird, ist die sogenannte "Merkmalanalyse". Die
Merkmalanalyse ist ein Merkmalgewinnungsverfahren, das jedes zu
erkennende Zeichen betrachtet und ermittelt, ob dieses Zeichen
eines oder mehrere Merkmale aus einer Vielzahl bestimmter
Merkmale enthält. Derartige bestimmte Merkmale, die oftmals bei
Merkmalsgewinnungsverfahren durch eine Merkmalanalyse verwandt
werden, schließen die Stelle von Strichen an bestimmten
Positionen, die Stelle von Rändern des Zeichens, die Stelle von
Bereichen, die vollständig über den Rand eines Zeichens verbunden
sind (wie beispielsweise der nach oben gerichtete Vorsprung am
oberen Ende des Großbuchstabens A, nach rechts gerichtete
"Buchten", wie beispielsweise die Öffnung im Buchstaben C) und
ähnliches ein. Derartige Merkmalanalyseverfahren sind
beispielsweise in Computer Analysis and Perception, Band I, "Visual
Signals", Ching Y. Suen, Renato De Mori, CRC Press, Inc., 1982,
insbesondere Kapitel 3 beschrieben. Es gibt eine große Anzahl
von Merkmalanalysetechniken in Abhängigkeit teilweise von den
jeweiligen Merkmalen, von denen jemand glaubt, daß sie beim
Erkennen von Zeichen wichtig sind. Die Datenausgabe einer
Merkmalgewinnungstechnik mit Merkmalanalyse ist ein mathematischer
Merkmalvektor, der das Vorliegen, die Menge oder die Größe
bestimmter Merkmale in einem zu erkennenden unbekannten Zeichen
angibt. Dieser Merkmalvektor wird dann durch die
Identifizierungseinrichtung dazu benutzt, ihn mit gespeicherten
Merkmalvektoren
bekannter Zeichen zu vergleichen, wobei das unbekannte
Zeichen als dasjenige bekannte Zeichen identifiziert wird, daß
einen Merkmalvektor hat, der dem Merkmalvektor des unbekannten
Zeichens am ähnlichsten ist. Bei einigen Merkmalanalysetechniken
werden beim Vergleich des Merkmalvektors des unbekannten
Zeichens mit den Merkmalvektoren bekannter Zeichen gewisse Merkmale
stärker als andere gewichtet. Unabhängig davon, welche Merkmale
lokalisiert und benutzt werden, sind Merkmalanalysetechniken
sehr empfindlich gegenüber unerwünschten Unterbrechungen in den
Zeichen und gegenüber Fleckenstörungen. Andererseits sind
Merkmalgewinnungstechniken mit Merkmalanalyse im allgemeinen weniger
empfindlich gegenüber Änderungen in den Formen und somit
gegenüber Änderungen in der Typenart und Typengröße, als es bei
Matrixüberlagerungsmerkmalgewinnungstechniken der Fall ist.
-
Es wurde darüber hinaus bereits eine Technik benutzt, die
einige Eigenschaften der Merkmalgewinnungstechniken mit
Matrixüberlagerung und mit der Merkmalanalyse kombiniert. Die
sogenannten Schablonenvergleichstechniken verwenden Masken, um
Bereiche im unbekannten Zeichen zu betrachten und dadurch
bestimmte Merkmale zu lokalisieren. Es kann somit eine bestimmte Maske
dazu benutzt werden, den linken Rand des Zeichens zu betrachten,
um festzustellen, ob es eine vertikale Linie am linken Rand des
Zeichens gibt, wie es bei dem Buchstaben K der Fall ist. Obwohl
diese Technik einige der Nachteile der
Merkmalgewinnungstechniken mit Matrixüberlagerung und mit Merkmalanalyse überwindet,
neigen die Merkmalgewinnungstechniken mit Schablonenvergleich
dazu, viele derselben Mängel zu teilen. Wie die Merkmalanalyse
benötigt auch der Schablonenvergleich beispielsweise ein großes
Maß an Rechenleistung. Eine weitere bekannte
Merkmalgewinnungstechnik ist in "Chinese Character Recognition by Hierarchical
Pattern Matching", S. Yamamoto, A. Nakajima, K. Nakata,
Proceedings of the First International Joint Conference on Pattern
Recognition, 30. Oktober bis 01. November 1973, Washington, D.
-
C., The Institute of Electrical and Electronics Engineers, Inc.,
Seite 187-196 beschrieben. Yamamoto et al. beschreiben eine
Merkmalgewinnungstechnik mit Matrixüberlagerung. In jedem
Schritt dieser Merkmalgewinnungstechnik werden jedoch die
Bildpunkte, die das zu erkennende Zeichen bildet, dazu benutzt, eine
Reihe von komprimierten Bildern zu bilden, wobei jedes derartige
komprimierte Bild mit bekannten Zeichen verglichen wird, deren
Bilder in ähnlicher Weise komprimiert wurden. Während jedes
Schrittes wird weniger Kompression benutzt und wird eine Anzahl
von bekannten Zeichen, von denen festgestellt wurde, daß sie
nicht gleich dem unbekannten Zeichen sind, aus den folgenden
Vergleichen herausgenommen, was die Geschwindigkeit des
Vergleiches erhöht. Diese Art einer Matrixüberlagerungstechnik bietet
gewisse Vorteile verglichen mit den oben beschriebenen
Matrixüberlagerungstechniken, da sie jedoch eine
Matrixüberlagerungstechnik bleibt, ist es schwierig, diese Technik zum Erkennen von
Zeichen aus einer großen Anzahl von Typenarten zu verwenden,
ohne daß ein übergroßes Maß an Hardware und Rechenleistung
benötigt wird.
-
Die Merkmalgewinnungstechnik im zum Stande der Technik
gehörenden Teil der unabhängigen Ansprüche, ist in Elektronische
Rechenanlagen 1974, Heft 4, Seite 135 beschrieben.
-
Durch die Erfindung werden somit ein Verfahren und eine
Vorrichtung geschaffen, bei denen Merkmalvektoren gebildet
werden, die die Bildpunkte wiedergeben, die in einem Muster, das
erkannt werden soll, und in Bezugsmuster enthalten sind. Ein
Teil des Merkmalvektors, der gemäß der Erfindung entwickelt
wird, repräsentiert die Bildpunkte, die im Muster selbst
enthalten sind, wobei kein sehr großer Merkmalvektor benötigt wird,
der exakt jeden Bildpunkt des Musters bestimmt.
-
Die Erfindung kann auch vorsehen, daß ein anderer Teil des
Merkmalvektors, der aus einem oder mehreren Bytes des
Merkmalvektors besteht, daß Seitenverhältnis des Musters angibt.
-
Jedes Byte des Merkmalvektors, der die Bildpunkte
wiedergibt, die im Zeichen enthalten sind, kann das relative
Verhältnis der schwarzen Bildpunkte zu der Gesamtanzahl an Bildpunkten
in einem bestimmten Bereich des Zeichens wiedergeben. Es können
andere Funktionen bezüglich der Eingangsmatrix und der
Ausgangsmerkmalvektorinformation verwandt werden.
-
Die Bereiche des Zeichens, die durch den Merkmalvektor
bestimmt sind, können gemeinsam das ganze Zeichen überdecken, so
daß sich ein Merkmalvektor ergibt, der das beschreibt, was grob
als eine verschwommene oder unscharfe Version des Musters
angesehen werden kann.
-
Bereiche der Eingangsmatrix können gleichmäßig beabstandet
in gleicher Größe sein und/oder einander überlappen.
-
Es versteht sich, daß die Erfindung zur Verwendung beim
Mustererkennungssystemen zum Erkennen von anderen Mustern als
Zeichen und tatsächlich auf Systeme anwendbar ist, die dazu
benutzt werden, irgendeine Information zu erkennen, die
mathematisch wiedergegeben werden kann.
-
Die Erfindung wird im folgenden zur Darstellung unter Bezug
auf die verbleibenden Figuren der zugehörigen Zeichnungen
beschrieben, in denen
-
Fig. 2A bis 2C Techniken zeigen, die gemäß der Erfindung
dazu benutzt werden, eine Matrix einer ersten Größe, die Bits
enthält, die die Bildpunkte in einem Bild wiedergeben, in eine
Matrix einer zweiten Größe zu transformieren, die Bytes enthält,
die eine verschwommene Version des Bildes wiedergeben,
-
Fig. 3A bis 3C eine Technik zeigen, die gemäß der
Erfindung dazu benutzt wird, eine Matrix einer ersten Größe, die
Bytes enthält, die die Bildpunkte in einem Bild wiedergeben, in
einer Matrix einer zweiten Größe zu transformieren, die Bytes
enthält, die eine verschwommene Version dieses Bildes
wiedergeben,
-
Fig. 4 in einem Flußdiagramm das Verfahren der Fig. 3A und
3B zeigt,
-
Fig. 5 ein Flußdiagramm ist, daß das Verfahren der Fig. 3B
und 3C darstellt, und
-
Fig. 6 ein Flußdiagramm ist, daß ein ähnliches Verfahren
der Erfindung zeigt, bei dem die Zwischenmatrix nicht benutzt
wird.
-
Gemäß der vorliegenden Erfindung werden Merkmalvektoren
gebildet, die die Bildpunkte bestimmen, die in einem Muster oder
Zeichen enthalten sind, das erkannt werden soll. Der
Merkmalvektor, der gemäß der Erfindung entwickelt wird, repräsentiert im
Gegensatz zum Stande der Technik die Bildpunkte, die im Zeichen
selbst enthalten sind, wobei anders als bei den
Matrixüberlagerungstechniken kein sehr großer Merkmalvektor gebildet wird, der
genau jeden Bildpunkt im Bild bestimmt. Bei einem
Ausführungsbeispiel dieser Erfindung enthält der Merkmalvektor 40 Bytes
plus 16 Bytes, die das Seitenverhältnis (die Quadratwurzel des
Verhältnisses der Zeichenbreite zur Zeichenhöhe) bestimmen. Bei
diesem Ausführungsbeispiel bestimmt jedes der 40 Bytes des
Merkmalvektors die relative Anzahl von schwarzen Bildpunkten zur
Gesamtanzahl von Bildpunkten in jedem von 40 verschiedenen
Bereichen des Zeichens. Bei einem Ausführungsbeispiel ist es nicht
erwünscht, die Zeichen einfach in 40 Teile zu unterteilen, da im
allgemeinen die Anzahl der Bildpunkte im Zeichen nicht gleich
durch 40 teilbar ist. Die bei diesem Ausführungsbeispiel
verwandte Technik teilt das Zeichen effektiv in 40 gleiche
Bereiche, indem Teile eines Bildpunktes auf mehrere Bereiche (bei
einem Ausführungsbeispiel auf bis zu vier Bereiche) verteilt
werden.
-
Das ermöglicht es einem optischen Zeichenerkennungssystem,
das diese Technik verwendet, ein unbekanntes Zeichen mit einer
Vielzahl von bekannten Zeichen (die jeweils durch ihre eigenen
speziellen Merkmalvektoren repräsentiert sind) in einer Weise zu
vergleichen, die als ähnlich mit der Weise angesehen werden
kann, in der Menschen Vergleiche anstellen. Diese Fähigkeit ist
nicht nur von akademischen Interesse, es hat sich gezeigt, daß
diese Technik die Erkennung von Zeichen erlaubt und die
Fehlerkennung von Zeichen vermeidet, und zwar wesentlich
zuverlässiger, als es beim Stand der Technik für Zeichen in vielen
verschiedenen Typenarten bekannt ist.
-
Es wurde durch die Ausführung von optischen
Zeichenerkennungen an einer relativ großen Menge von Eingangsdaten empirisch
festgestellt, daß ein Merkmalvektor, der eine 5 · 8 Matrix
(Breite = 5, Höhe = 8) wiedergibt, die ein Zeichen
repräsentiert, die größte Genauigkeit bei der Erkennung von lateinischen
Buchstaben bietet. Bei anderen Schriften als lateinischen
Schriften kann dieselbe Übung ausgeführt werden, um zu
bestimmen, ob andere Seitenverhältnisse zum Erkennen derartiger
anderer Zeichensätze besser geeignet sind.
-
Da im allgemeinen die Digitalisierung eines gelesenen
Textes zu einem Zeichen führt, das von einer Anzahl von Bildpunkten
repräsentiert wird, die größer als eine 5 · 8 Matrix ist, ist es
notwendig, eine Technik zur Verfügung zu haben, um
beispielsweise ein 20 Bildpunkt breites · 30 Bildpunkt hohes Bild in eine
5 · 8 Byte-Merkmalvektormatrix umzuwandeln. Bei bekannten
Techniken zum Verkleinern einer großen Matrix auf eine kleinere
Matrix zur leichteren Handhabung unter Verwendung von
Merkmalgewinnungstechniken mit Merkmalanalyse oder Matrixüberlagerung
wären nur gewählte Bildpunkte in der transformierten Matrix
enthalten. Es läßt sich hoffen, daß die gewählten Bildpunkte so
gewählt sind, daß sie die Schlüsselbildpunkte sind, was die
Unterscheidungsfähigkeit zwischen zwei ähnlichen Zeichen, wie
beispielsweise c oder e erhöht. Obwohl diese Techniken eine
Transformation der Daten in eine besser zu verwaltende Größe
erlauben, haften ihnen weiterhin die Nachteile an, die oben
unter Bezug auf die Merkmalgewinnungstechniken mit
Merkmalanalyse oder Matrixüberlagerung beschrieben wurden. Umgekehrt
müssen
kleine Zeichen wie beispielsweise der Punkt so gedehnt
werden, daß sie eine 5 · 8 Merkmalvektormatrix füllen.
-
Gemäß dieser Erfindung wird eine Vorrichtung zum
Transformieren einer Matrix mit einer ersten Größe, die ein Zeichen
bestimmt, in eine Matrix mit einer zweiten Größe geschaffen, die
dasselbe Zeichen in einer Weise, die als ähnlich der Weise
angesehen werden kann, in der Menschen das Zeichen sehen, allerdings
in einer verschwommenen Version des Zeichens bestimmt. Diese
Technik kann anhand der Fig. 2A bis 2C beschrieben werden. Fig.
2A zeigt eine M · M Matrix, wie sie beispielsweise von der
Segmentierungseinrichtung 14 (Fig. 1) empfangen wird. Während Fig.
2A eine 4 · 3 Matrix zeigt, versteht es sich, daß das nur ein
Beispiel ist, und tatsächlich eine typische Eingangsmatrix
Bildpunkte breit und 30 Bildpunkte oder mehr hoch sein kann.
Es sei weiterhin als Beispiel angenommen, daß die 4 · 3 Matrix
von Fig. 2A in eine 3 · 2 Matrix transformiert werden soll, die
in Fig. 2C dargestellt ist. Fig. 2B zeigt eine Zwischenmatrix
der Größe NP · MQ Bits (obwohl es sich versteht, daß auch
Zwischenmatrizen mit anderer Größe verwendet werden können), wobei
N die Höhe der Eingangsmatrix, M die Breite der Eingangsmatrix,
P die Höhe der Ausgangsmatrix und Q die Breite der
Ausgangsmatrix bezeichnen. Um die Matrix von Fig. 2B zu füllen, werden die
Werte jedes Bits in Fig. 2A Q mal in horizontaler Richtung und
P mal in vertikaler Richtung in Fig. 2B eingegeben, wie es
dargestellt ist (Rechtecke in Strichen). Um die Transformation zu
vervollständigen, werden die Daten von der Zwischenmatrix in
Fig. 2B in die P · Q Matrix von Fig. 2C dadurch eingegeben, daß
die Werte jedes der P · Q Bereiche in Fig. 2B (Rechtecke in
ausgezogenen Linien) jeweils mit einer Größe von N · M in der
dargestellten Weise addiert werden. Das führt zu einer
Transformation der N · M (4 · 3) Eingangsmatrix von Fig. 2A in die
P · Q (3 · 2) Ausgangsmatrix von Fig. 2C. Es ist wichtig, daß
die Ausgangsmatrix von Fig. 2C das Zeichen wiedergibt, das
vorher
von der Eingangsmatrix 2A wiedergegeben wurde, jedoch in
einer verschwommenen oder verwischten Weise. Das heißt mit
anderen Worten, daß die Daten in Fig. 2C aus den Daten von Fig. 2A
derart vermengt wurden, daß jedes Byte in der Matrix von Fig. 2C
einen Bereich im ursprünglichen Zeichen wiedergibt, das in Fig.
2A wiedergegeben wurde.
-
Wenn die Eingangsmatrix sehr groß ist, führt dieses
Ausführungsbeispiel zu einer sehr großen Zwischenmatrix (Fig. 2B).
Bei einem anderen Ausführungsbeispiel der erfindungsgemäßen
Vorrichtung wird dieselbe Ausgangsmatrix (Fig. 3C) unter
Verwendung einer Reihe von Zählern erzeugt, die koordinieren, wann
Elemente der Eingangsmatrix (Fig. 3A) zu Elementen der
Ausgangsmatrix zu addieren sind. Dieses zweite Ausführungsbeispiel ist
so ausgebildet, daß eine Zwischenmatrix mit der Breite der
Ausgangsmatrix und der Höhe der Eingangsmatrix erzeugt wird. Die
Zwischenmatrix (Fig. 3B), die in dieser Weise erzeugt wird, wird
zunächst unter Verwendung der Elemente der Eingangsmatrix
fortgeschrieben. Wenn die Zwischenmatrix voll ist, dann werden die
Elemente der Zwischenmatrix zum Füllen der Ausgangsmatrix
benutzt. Fig. 4 ist ein Flußdiagramm, das den Arbeitsvorgang der
Füllung der Zwischenmatrix zeigt, und Tabelle 1 zeigt die Werte
der verschiedenen Zähler und Indizes, die im Flußdiagramm von
Fig. 4 verwandt werden, um die Zwischenmatrix zu füllen. In
ähnlicher Weise ist Fig. 5 ein Flußdiagramm, das den
Arbeitsablauf zum Füllen der Ausgangsmatrix zeigt, wenn die
Zwischenmatrix einmal gefüllt ist, und zeigt Fig. 2 die Werte der Zähler
und Indizes, die beim Füllen der Ausgangsmatrix verwandt werden.
Die Schritte in den Tabellen der vorliegenden Beschreibung sind
direkt vor der Ausführung des mit "Start" bezeichneten Schrittes
im zugehörigen Flußdiagramm numeriert.
-
Zum Zweck der vorliegenden Beschreibung werden die
folgenden Variabeln in Verbindung mit den Flußdiagrammen und den
Tabellen verwandt, um die Arbeit der Zähler zu beschreiben.
-
M = Breite der Eingangsmatrix (Bitliste)
-
Q = Breite der Ausgangsmatrix
-
N = Höhe der Eingangsmatrix
-
P = Höhe der Ausgangsmatrix
-
i = Horizontalindex der Eingangsmatrix. Werte von
0 bis M-1
-
I = Horizontalindex der Ausgangsmatrix. Werte von
0 bis Q-1
-
j = Vertikalindex der Eingangsmatrix. Werte von
0 bis N-1
-
J = Vertikalindex der Ausgangsmatrix. Werte von
0 bis P-1
-
H1 = Horizontalzähler zum Bestimmen der Zunahme von I.
Werte von 0 bis Q
-
H2 = Horizontalzähler zum Bestimmen der Zunahme von I.
Werte von 0 bis M
-
V1 = Vertikalzähler zum Bestimmen der Zunahme von j.
Werte von 0 bis P
-
V2 = Vertikalzähler zum Bestimmen der Zunahme von J.
Werte von 0 bis N
Tabelle 1 (Fig. 4)
Start Schritt
Tabelle 2 (Fig. 5)
Start Schritt
Tabelle 3 (Fig. 6)
Start Schritt usw.
-
Bei einem weiteren Ausführungsbeispiel der Erfindung wird
die Verwendung der Zwischenmatrix dadurch ersetzt, daß
zusätzliche Zähler benutzt werden. Fig. 6 ist ein Flußdiagramm, das die
Arbeitsweise dieses dritten Ausführungsbeispiels zeigt. Tabelle
3 führt die Schritte im Algorithmus zur Transformation der
Eingangsmatrix von Fig. 3A in die Ausgangsmatrix von Fig. 3C auf.
-
Wie es im Vorhergehenden beschrieben wurde, kann eine
typische
Eingangsmatrix, die ein Zeichen bestimmt, 20 Bildpunkte
breit und 30 Bildpunkte hoch sein, und kann die verschwommene
oder verwischte Ausgangsmatrix 5 Bytes breit und 8 Bytes hoch
sein, wodurch im übrigen die Anzahl an Bytes stark verringert
wird, die gehandhabt werden müssen, um diese Daten zu
verarbeiten. Für die Fachleute versteht es sich ohne weiteres, daß eine
20 breite und 30 hohe Eingangsmatrix, die binäre Einzelbitzahlen
enthält, die schwarze und weiße Bildpunkte wiedergeben, dann,
wenn sie zu einer Matrix irgendeiner Größe vermengt wird, ein
Ausgangsbyte mit einem Maximalwert von 600 (N · M) liefern kann,
was einem Bereich entspricht, der vollständig schwarz ist (alle
Eingangsbildpunkte in diesem Bereich = 1).
-
Bei einem Ausführungsbeispiel der Erfindung wird der
Merkmalvektor (außer für diejenigen Bytes im Merkmalvektor, die das
Seitenverhältnis oder andere zusätzliche Merkmale wiedergeben)
so normiert, daß die Norm gleich 256 ist, was nach der folgenden
Gleichung geschieht:
-
xi = i-tes Byte des Merkmalvektors und
-
N = Anzahl der Bytes im verschwommenen oder
vermengten Bildpunktteil des Merkmalvektors.
-
Die Zahl 256 wurde empirisch als diejenige bestimmt, die
Ausgangsvektoren mit der kleinsten Anzahl von Bits pro Element
liefert, die noch Ergebnisse von der Identifizierungseinrichtung
liefern, die annähernd so genau wie diejenigen von
Merkmalvektoren mit einer beliebig großen Anzahl von Bits pro Element sind.
-
Die Normierung hat mehrere Vorteile. Die Normierung
verringert den Wert eines gegebenen Bytes wodurch die Anzahl der
Bits so gering wie möglich gehalten wird, die benötigt werden,
um dieses Byte wiederzugeben.
-
Noch wichtiger ist, daß diese Normierung durchgeführt
werden kann, um Einflüsse von Abweichungen in der Zeichengröße
auszuschalten, so daß nur ein einziger Satz von Bezugsvektoren
pro Typenart über einen weiten Bereich der Typengröße benötigt
wird. Das steht im starken Gegensatz zu den bekannten Techniken,
in denen sozusagen ein Satz von Merkmalvektoren von
Bezugszeichen für 10-Punkt Courier, ein separater Satz von
Merkmalvektoren für Bezugszeichen für 12-Punkt Courier, ein separater Satz
für 14-Punkt Courier usw. benötigt wird. D. h. mit anderen
Worten, daß gemäß der lehre der Erfindung der Merkmalvektor
beispielsweise für 12-Punkt Courier "e" genau der gleiche wie der
Merkmalvektor für 14-Punkt Courier "e" ist, während bei OCR-
Systemen, die Merkmalgewinnungstechniken mit Matrixüberlagerung
verwenden, zwei separate Merkmalvektoren vorliegen würden. Das
erlaubt eine starke Verringerung in der Anzahl der gespeicherten
Merkmalvektoren der Bezugszeichen mit einer entsprechenden
Abnahme in den Kosten und einer stark erhöhten
Arbeitsgeschwindigkeit.
-
In relativ wenigen Fällen (die empirisch als weniger als
annähernd 1/10 eines Prozentes ermittelt wurden) führt diese
Normierung zu einem oder mehreren Bytes des normierten Vektors
mit einem Wert größer als 127. In diesem Fall werden diese Werte
gleich 127 gesetzt, wodurch jedes Byte des Merkmalvektors als
ein Wert beibehalten wird, der in 7 Bits wiedergegeben werden
kann.
-
Als ein zusätzliches Merkmal der Erfindung kann ein oder
können mehrere zusätzliche Bytes, die zusätzliche Merkmale für
das Eingangsmuster wiedergeben, zur Bildung des Merkmalvektors
benutzt werden. Bei einem Ausführungsbeispiel werden 16
derartige Bytes dazu benutzt, jeden der folgenden Werte wiederzugeben:
-
K W/H wobei
-
W = Breite des Eingangszeichens
-
H = Höhe des Eingangszeichens
-
K = eine Konstante, die empirisch gleich annähernd
3 (KKHEIGHT)/16 (2) 13,5 1/2 bestimmt wurde,
-
wobei KKHEIGHT = die Anzahl der vertikalen Elemente im
Merkmalvektor.
-
In dieser Weise repräsentieren die Bytes, die das
Seitenverhältnis wiedergeben, tatsächlich ein gewichtetes
Seitenverhältnis, von dem ermittelt wurde, daß es die relative Bedeutung
des Seitenverhältnisses beim Vergleichen unbekannter Zeichen mit
bekannten Zeichen ist und zwar relativ zu den restlichen Bytes,
die den Merkmalvektor bilden. Bei diesem Ausführungsbeispiel
werden mehrere derartige gewichtete
Seitenverhältnisrepräsentationen dazu benutzt, ihre Werte derart zu halten, daß jeder in
7 Bits dargestellt oder auf 7 Bits ohne großen Verlust an
Genauigkeit beschnitten werden kann. Wenn das nicht notwendig ist,
kann ein einziges Byte für das Seitenverhältnis benutzt werden.
Bei diesem Ausführungsbeispiel der Erfindung ist der Wert K
tatsächlich 1/4 des Wichtungsfaktors, der als am wirksamsten zur
genauen Erkennung der Zeichen bestimmt wurde, so daß es 16
Seitenverhältnisfelder im Merkmalvektor gibt. Wenn in dieser Weise
ein Merkmalvektor, der ein zu erkennendes Zeichen wiedergibt,
mit dem Merkmalvektor eines Bezugszeichen verglichen wird, wird
mit jedem Byte des Seitenverhältnisses genauso umgegangen, als
es bei den ersten 40 Bytes der Fall ist. Wenn mit anderen Worten
zwei Merkmalvektoren verglichen werden, wird die folgende
Gleichung ausgeführt:
-
X =
Merkmalvektor X;
-
Y = Merkmalvektor Y;
-
D(X,Y) = Abstand zwischen dem Merkmalvektor X und
dem Merkmalvektor Y
-
Xi = i-tes Element des Merkmalvektors X;
-
Yi = i-tes Element des Merkmalvektors Y, und
-
N = Anzahl der Elemente in jedem Merkmalvektor
(N = 56 im oben beschriebenen Merkmalvektor
mit 40 verwischten Bildpunktbytes und 16
Bytes, die das Seitenverhältnis wiedergeben).
-
Während die Beschreibung spezielle Ausführungsbeispiele der
Erfindung darstellte, ist sie nicht als Begrenzung des Umfangs
der Erfindung anzusehen, der durch die Ansprüche gegeben ist.
Für den Fachmann auf dem vorliegenden Gebiet werden sich im
Licht der lehre dieser Beschreibung viele Ausführungsbeispiele
der Erfindung ergeben.