Gebiet der Erfindung
-
Die vorliegende Erfindung betrifft ein Verfahren zum Auswählen
von Zeichendaten für ein Datenverarbeitungssystem aus einer
Gruppe von Eingangsdaten zum Reduzieren des Datenumfangs für
jede Eingangsdaten durch das Datenverarbeitungssystem, welches
eine Struktur eines neuronalen Netzwerks oder die Struktur
eines entsprechenden Äquivalents aufweist, wobei die
Eingangsdaten aus einer Vielzahl von Zeichendaten bestehen.
Überblick über den stand der Technik
-
Neuronale Netzwerke bestehen üblicherweise aus Neuronen, die
in parallelen Schichten angelegt sind. Jedes Neuron gibt
Ausgangsdaten O als Ergebnis eines Vergleichs zwischen einer
Summe von mit Gewichten W1, W2, W3...Wn-gewichteten
Eingangsdaten I1, I2, I3... In und einem Schwellwert θ aus.
Verschiedene Vergleichsverfahren sind möglich. Beispielsweise können bei
einer Normalisierungsfunktion die Ausgangsdaten wie folgt
ausgedrückt werden:
-
O = 1 [Σ Wn In - θ]
-
wenn Σ Wn In einen Schwellwert θ überschreitet, werden die
Ausgangsdaten zu "1" und wenn Σ Wn In kleiner als der
Schwellwert θ ist zu "O".
-
Wie obenerwähnt, geben die Neuronen in Antwort auf die
Eingangsdaten eine "1" oder "O" aus. Das Erregungsmuster obiger
Neuronen hängt somit von den Eingangsdaten ab.
-
Herkömmlicherweise wird zu erkennen von Zeichen durch ein
neuronales Netzwerk charakteristische Daten von Zeichen
berechnet (z.B. Anzahl von Endpunkten, Anzahl von
Verzweigungspunkten etc.), um danach zu beurteilen, zu welchen Zeichen die
charakteristischen Daten gehören.
-
Aus der Zitierung
-
HANDBOOK OF PATTERN RECOGNITION AND IMAGE
PROCESSING 1986, SAN DIEGO, US
-
pages 59 - 83
-
T.Y.YOUNG & K.-S. FU (EDS) 'Chapter 3
Feature Selection and Extraction'
-
* Part III FEATURE-SET SEARCH ALGORITHMS *
-
ist ein Muster-Erkennungssystem bekannt, mittels dem die
Dimension einer Musterdarstellung verringert wird. Mittels
eines Algorithmus ist es möglich, ein optimales Merkmalsset zu
bestimmen, ohne dabei alle möglichen Kombinationen der
Ermessung auszuführen. Der Algorithmus ist unter der Annahme
anwendbar, dar ein Merkmalsauswahlkriterium die
Monotonitätseigenschaft erfüllt.
-
Aus
-
COMPUTER VISION GRAPHICS AND IMAGE
PROCESSING
-
vol. 42, no. 3, June 1988, Duluth, MA US
-
pages 318 - 333, XP000028969
-
H.S. BAIRD 'Feature Identification for
Hybrid Structural/Statistical Pattern
Classification'
-
ist eine Technik zum Kombinieren der Stärken von struktureller
Formenanalyse mit statistischen Einteilungen vorgeschlagen,
wobei eine Funktion vorgeschlagen wird, die als "Feature
Identification Mapping". Wenn eine gewisse Eigenschaft für die
Parameterisierung vorliegt, ist es möglich, das Abbilden
automatisch auszuführen. Die Beeinflussung ist langsam und
heuristisch aber automatisch und nur durch wenige statistische
Parameter gesteuert und für alle Formentypen anwendbar.
-
Die Dimensionalitäts-Reduktion durch Verwendung von Netzwerken
ist in
-
IEEE TRANSACTIONS ON PATTERN ANALYSIS AND
MACHINE INTELLIGENCE
-
vo. 11, no. 3, March 1989, NEW YORK US
-
pages 304 - 314, XP000003438
-
E. SAUND 'Dimensionality-Reduction Using
Connectionist Networks'
-
beschrieben, um einen bestimmten Typ von Bedingungen in
multidimensionalen Daten zu erkennen. Ein
Dimensionalitätsverringerer ist beschrieben, bei dem zweidimensionale Daten auf einer
eindimensionalen Bedingungsoberfläche liegen. Der Umfang, mit
dem die Plätze durch die Ausgangsaktivität die von dem
Netzwerk berechnet wurde angezeigt werden, wenn der Eingang von
Punkten auf der Bedingungsoberfläche erhalten wurde, auf der
Kurve liegen, deutet einfach an, daß der Netzwerkausgang mit
dem Eingang übereinstimmt.
-
Das Wissen über die Bedingung der Datenquelle, wie es in den
Datenabtastungen reflektiert wird, ist in den Gewichten
zwischen den Einheiten in aufeinanderfolgenden Schichten des
Netzwerkes enthalten, wobei die Form der Bedingungsoberfläche
implizit in den Gewichtsverbindungen enthalten ist.
-
Nicht nur bei obiger Zeichenerkennung ist die
Erkennungsgenauigkeit ein bedeutender Faktor für obiges
Datenverarbeitungssystem. Um Eingangsdaten, die aus einer Vielzahl von
charakteristischen Daten bestehen genauer erkennen zu können.
Auch ist eine Effizienz notwendig, um die Erkennungsfunktion
mit einem neuronalen Netzwerk von geringer Komplexität
ausführen
zu können. Gemäß herkömmlichem System werden die
charakteristischen Daten für japanische Schriftzeichen
verwendet. Es ist jedoch nicht bekannt, welche charakteristischen
Daten in effektiver Weise für Schreibschrift, europäische
Handschrift, spezielle Zeichen wie arabische Zeichen etc.
eingesetzt werden können. Je mehr charakteristische Daten
eingesetzt werden, desto größer wird das zu verwendete
Datenverarbeitungssystem.
-
Es ist die Aufgabe der vorliegenden Erfindung eine Lösung für
obige Probleme anzubieten.
-
Diese Aufgabe wird durch den Gegenstand des Patentanspruchs 1
gelöst.
Kurze Beschreibungen der Zeichnungen
-
Fig. 1 zeigt ein Flußdiagramm, das das Auswahlverfahren der
effektiven charakteristischen Daten gemäß einer
Ausführungsform der vorliegenden Erfindung wiedergibt;
-
Fig. 2 zeigt ein Blockschaltbild, das ein strukturelles
Beispiel eines Erkennungssystems gemäß der vorliegenden
Erfindung wiedergibt;
-
Fig. 3(a) und (b) zeigen Diagramme, die Beispiele von
Erregungsmustern von Neuronen gemäß dem neuronalen
Netzwerk auf der Ausgangsseite anzeigen;
-
Fig. 4 zeigt eine Illustration, die die Zeichengruppen und
ihre Dichteprojektionen wiedergibt.
Bevorzugte Ausführungsformen der vorliegenden Erfindung
-
Im folgenden wird eine bevorzugte Ausführungsform der
vorliegenden Erfindung unter Bezugnahme auf die beiliegenden
Zeichnungen beschrieben.
-
Fig. 2 zeigt eine Struktur eines Zeichenerkennungssystems als
Beispiel für ein Datenverarbeitungssystem gemäß der
vorliegenden Erfindung. Zeichen stellen den Eingang für eine Video-
Kamera 11 dar. Die charakteristischen Daten der
Eingangszeichen, d.h. die Anzahl der Endpunkte, die Anzahl der
Verzweigungen etc. werden in dem Bildverarbeitungssystem 12
berechnet. Da die Berechnungsart bekannt ist, wird eine genaue
Beschreibung weggelassen. Ein Bildverarbeitungssystem 12 ist mit
einem Computer 20, welcher eine Struktur eines neuronalen
Netzwerks aufweist, verbunden. Die Zeichenerkennung wird unter
Verwendung charakteristischer Daten der Zeichen ausgeführt.
Obiger Computer 20 erkennt die Zeichen, indem er untersucht,
welche charakteristischen Eingangsdaten in etwa ähnlich sind
zu denen eines bestimmten Zeichens. Ein erkanntes Zeichen wird
als Eingang einem Ausgangsverarbeitungssystem 13 zugeführt, wo
es in ein vorgegebenes Datenformat umgewandelt wird, um auf
einem Anzeigesystem 14 angezeigt werden zu können. Ein
Anzeigesystem 14, welches beispielsweise eine CRT enthält, zeigt
die erkannten Zeichen an.
-
Ein Ausgangs-Verarbeitungssystem 13 ist außerdem mit dem
Bildverarbeitungssystem 12 verbunden und ist so strukturiert, daß
es ein Anregungsmuster für Neuronen außerhalb des Computers 20
zum Bildverarbeitungssystem 12 ausgibt. Das
Bildverarbeitungssystem 12 führt die Auswahl der charakteristischen Daten
bezüglich einem Zeichen durch.
-
Ein Computer 20 enthält ein neuronales Netzwerk wie dies oben
im Zusammenhang mit Fig. 2 beschrieben wurde. Die Struktur des
neuronalen Netzwerks ist schematisch dargestellt. Wie aus der
Figur erkannt werden kann, enthält das neuronale Netzwerk drei
neuronale Schichten 21, 22 und 23, die aus einer Vielzahl von
Neuronen n bestehen. Jedes Neuron n der neuronalen Schicht 21
auf der Eingangsseite ist mit jedem Neuron n der neuronalen
Schicht 22 in der mittleren Schicht verbunden. Jedes Neuron n
der neuronalen Schicht 22 in der mittleren Schicht ist mit
jeden Neuron n der neuronalen Schicht 23 auf der Ausgangsseite
verbunden.
-
Jedes Neuron enthält beispielsweise einen
Operationsverstärker, der ein Vergleichsergebnis zwischen der Summe der mit
Gewichten multiplizierten Eingangsdaten und einem Schwellwert
ausgeht. Das Neuron n wird beispielsweise erregt und gibt eine
"1" aus, wenn die Summe den Schwellwert überschreitet. Ein
Ausgang "0" wird ausgegeben, wenn die Summe kleiner als der
Schwellwert ist.
-
Die Fig. 3(a) und (b) zeigen Neuronen der neuronalen Schicht
23 auf der Ausgangsseite bezüglich x- und y-Koordinaten. In
der Figur sind die erregten Neuronen mit schwarzen Kreisen
gezeigt. Die anderen Neuronen sind mit weißen Kreisen gezeigt.
Es sei angenommen, daß die Fig. 3(a) das Erregungsmuster der
Neuronen der neuronalen Schicht 23 zeigt, wenn das
Eingangszeichen von der Kamera 11 ein "A" ist. Fig. 3(b) zeigt das
Erregungsmuster der Neuronen, wenn das Eingangszeichen ein "B"
ist. Wie anhand der Figur erkannt werden kann, sind mehr
Neuronen auf der linken als auf der rechten Seite erregt, wenn
ein "A" vorliegt und mehr Neuronen auf der rechten Seite
erregt, wenn ein "B" vorliegt. Wie obenerwähnt, wird das
Erregungsmuster verändert, wenn sich der Dateneingang zu der
neuronalen Schicht ändert.
-
Fig. 1 zeigt ein Beispiel eines Zeichen-Erkennungsverfahrens
wie es durch das Erkennungssystem der Fig. 2 durchgeführt
wird. Dies stellt eine bevorzugte Ausführungsform der
vorliegenden Erfindung dar.
-
Im Schritt 31 wird eine Zeichenunterteilung durch das
Bildverarbeitungssystem 12 durchgeführt, um jedes Zeichen aus einer
Vielzahl von eingegebenen Zeichen zu separieren. Gemäß der
bevorzugten Ausführungsform wird die Trennung beim Schritt 31
bei der Erkennungsverarbeitung für ein Zeichen aus einer
Vielzahl von Zeichen, die durch die Kamera 11 gleichzeitig
photographiert
wurden, vorgenommen. Wie in Fig. 4 gezeigt ist, ist
die Gruppe von Zeichen "A, B, C ..." und "M, N, O ..." in
einer ersten und zweiten Reihe angelegt. Die x- und
y-Koordinaten erstrecken sich horizontal und vertikal. Die Grenzen
zwischen Zeichenketten werden durch Berechnung der
Dichteprojektionen bezüglich der y-Koordinate detektiert, wie dies durch
den Buchstaben P angedeutet ist. Dann werden die Grenzen
zwischen den Zeichen detektiert, indem die dichten Projektionen
bezüglich der x-Koordinate berechnet werden, wie dies durch
das Bezugszeichen Q angedeutet ist. Nach der Verarbeitung
werden Feret-Durchmesser berechnet. Dann wird
Rauschverarbeitung und Beschriftung für jeden Feret-Durchmesser ausgeführt,
um jedes Zeichen zu isolieren.
-
Im Schritt 32 wird das erste Zeichen, d.h. "A" in Fig. 4
gelesen. Charakteristische Daten für ein Zeichen sind "Anzahl
der Endpunkte", "Anzahl der Verzweigungspunkte", "Anzahl von
Löchern", "Anzahl von Gruppen", "Striche", "Dichteprojektion"
und "Rundheit". Im Schritt 33 werden die oberen 7
Charakteristiken bezüglich dem ersten Zeichen berechnet. Die
charakteristischen Daten werden in einem Bildverarbeitungssystem 12
unter Verwendung herkömmlicher Verfahren berechnet und dann in
einem Speicher des System 12 gespeichert, sowie einem Computer
20 eingegeben. Das Anregungsmuster der neuronalen Schicht 23
die auf der Ausgangsseite vorliegt, wenn die obigen
charakteristischen Daten eingegeben werden, wird im Schritt 34
gespeichert.
-
Im Schritt 35 wird der Parameter "N" auf "2" festgelegt. Im
Schritt 36 wird das Ende, d.h. das zweite Zeichen in der
gleichen Weise wie im Schritt 32 gelesen. Im Schritt 37 werden die
charakteristischen Daten für das zweite Zeichen berechnet.
Diese charakteristischen Daten werden in einem Speicher des
Bildverarbeitungssystems 12 gespeichert. Außerdem werden sie
dem Computer 20 eingegeben. Im Schritt 38 wird das
Auslösemuster des zweiten Zeichens gespeichert.
-
Im Schritt 41 wird der Parameter "i" auf "1" festgelegt. Im
Schritt 42 werden die i-ten, d.h. die ersten
charakteristischen Daten (z.B. "Anzahl der Endpunkte") aus den
charakteristischen Daten des ersten Zeichens ("A") durch die ersten
charakteristischen Daten des zweiten Zeichens ("B") ersetzt.
Das heißt, nur die erste Charakteristik des ersten Zeichens
wird durch die des zweiten Zeichens ersetzt. Durch das
erwähnte Ersetzen von charakteristischen Daten wird das
Auslösemuster der Neuronen in der neuronalen Schicht 23 auf der
Ausgangsseite bezüglich dem ursprünglichen Auslösemuster
verändert. Daher wird das Auslösemuster der Fig. 3 (a) verändert.
Im Schritt 44 wird der Wechsel des Auslösemusters bewertet.
Die Bewertung der Veränderung des Auslösemusters wird später
beschrieben.
-
Im Schritt 44 wird untersucht, ob der Schritt 42 und 43 für
alle charakteristischen Daten ausgeführt wurden. Wenn die
Verarbeitung in den Schritten 42 und 43 ergibt, daß die
charakteristischen Daten vollständig vorliegen, wird Schritt 43
ausgeführt. Wenn dies nicht der Fall ist, wird der Parameter "i"
im. Schritt 45 um 1 erhöht, dann werden die Schritte 42 und 43
wiederholt. Danach werden die nächsten charakteristischen
Daten (z.B. die Anzahl der Verzweigungspunkte) aus den
charakteristischen Daten des ersten Zeichens ("A") durch die
entsprechenden charakteristischen Daten des zweiten Zeichens ("B")
ersetzt, so daß die Veränderung des Auslösemusters geändert
wird.
-
Nachdem die Veränderung des Auslösemusters für die obigen 7
charakteristischen Daten bewertet wurde, wird überprüft,
welche Ersetzung von charakteristischen Daten die geringsten
Veränderungen im Auslösemuster bewirkt. Das heißt es wird
untersucht, welche charakteristischen Daten den geringsten Einfluß
auf das Auslösemuster ausüben. Im folgenden wird die Bewertung
der Veränderung des Auslösemusters beschrieben. Die Bewertung
der Veränderung des Auslösemusters wird beispielsweise dadurch
erreicht, daß die Dichteabweichung innerhalb einer Klasse mit
der Abweichung zwischen den Klassen verglichen wird.
-
Entsprechend wird das Auslösemuster durch eine Ebene mit
x- und y-Koordinaten entsprechend Fig. 3(a) und (b) ausgedrückt,
um x- und y-Koordinaten der erregten Neuronen zu erhalten.
Beispielsweise wird, wenn das Eingangszeichen ein "A" ist, die
Dichteabweichung innerhalb einer Klasse VXA entsprechend den
x-Koordinaten folgendermaßen aussehen:
-
VXA = Σ (XA - A)² ... (1)
-
wobei XA die x-Koordinate eines jeden erregten Neurons ist und
A ein Mittelwert der x-Koordinaten aller erregten Neuronen
ist. In gleicher Weise wird die Dichteabweichung innerhalb
einer Klasse entsprechend den y-Koordinaten VYA:
-
VYA = Σ (YA - A)² ... (2)
-
Im Schritt 42 werden die Dichteabweichungen innerhalb einer
Klasse bezüglich x- und y-Koordinaten entsprechend dem
Auslösemuster berechnet, wenn die charakteristischen Daten
ersetzt sind. In diesem Falle wird die Dichteabweichung
innerhalb einer Klasse gemäß der x-Koordinate VXB:
-
VXB = Σ (XB - B)² ... (3)
-
Die Dichteabweichung innerhalb einer Klasse entsprechend den
y-Koordinaten VYB:
-
VAB = Σ (YB - B)² ... (4)
-
Dann wird die Dichteabweichung zwischen den Klassen zwischen
dem Auslösemuster des Zeichens "A" und dem Auslösemuster in
eine der charakteristischen Daten verändert wurde, berechnet.
Es wird die Berechnung bezüglich der angeregten Neuronen für
zumindest einen obiger Fälle ausgeführt. Die Dichteabweichung
innerhalb einer Klasse gemäß der x-Koordinate VXT wird:
-
VXT = Σ (XT - T)² ... (5)
-
Die Dichteabweichung innerhalb einer Klasse gemäß der
y-Koordinate VYB wird:
-
VYB = Σ (YB - YB)² ... (6)
-
Das Verhältnis zwischen der Dichteabweichung innerhalb einer
Klasse und der Dichteabweichung zwischen Klassen wird als
Abweichungsverhältnis definiert. Das Abweichungsverhältnis der
x-Koordinate wird gemäß den Formeln (1), (3) und (5) wie folgt
gerechnet:
-
FX = VXT / (VXA x VXB) ... (7)
-
Das Abweichungsverhältnis der y-Koordinate wird gemäß den
Formeln (2), (4) und (6) wie folgt berechnet:
-
FY = VYT / (VYA x VYB) ... (8)
-
Wie obenerwähnt, wird die Veränderung des Auslösemusters
bewertet, wenn die charakteristischen Daten ersetzt werden, so
daß die charakteristischen Daten, die die geringsten
Veränderungen hervorrufen erkannt werden können. Ineffektive
charakteristische Daten für die Zeichenerkennung werden
herausgenommen. Durch diese Herausnahme wird es möglich, die Summe der
Abweichungsverhältnisse FX und FY zu vergleichen oder entweder
kleinere oder größere Werte für die Abweichungsverhältnisse FX
und FY zu vergleichen.
-
Neben der Untersuchung der Dichteabweichung gemäß den x- und
y-Koordinaten erregter Neuronen ist das untersuchen der
Dichteabweichung unter Verwendung einer Regressionslinie
möglich. Hierbei wird der Abstand von dem erregten Neuron zu
einer geraden Linie mit "dA" angegeben, wenn es sich um
ursprüngliche charakteristische Daten handelt und als "dB", wenn
die die charakteristischen Daten ersetzt sind. Auch werden die
Mittelwerte bezüglich der Abstände als a und als B
angenommen. Die Dichteabweichung innerhalb einer Klasse VA bezüglich
der ursprünglichen charakteristischen Daten ist:
-
VA = Σ (dA - A)² (10)
-
Die Dichteabweichung innerhalb einer Klasse VB wenn die
charakteristischen Daten ersetzt sind, ergibt sich zu:
-
VB = Σ (dB - B)² ... (11)
-
Die Dichteabweichung innerhalb der Klassen VT ist:
-
VT = Σ (dT - T)2 ... (12)
-
Daher ist das Abweichungsverhältnis F:
-
F = VT / (VA x VB) ... (13)
-
Dann werden nichteffektive charakteristische Daten bei der
Zeichenerkennung gemäß obigen Abweichungsverhältnis
extrahiert.
-
Die Extraktion nichteffektiver charakteristischer Daten für
den Wechsel im Anregungsmuster gemäß Schritt 3'43 und 46 kann
zusammen mit einer Kontrastanalyse oder einer
Momentenbestimmung erfolgen. Es ist auch möglich, die Unabhängigkeit von
zwei Anregungsmustern durch Verwendung des Bayse-theorems zu
untersuchen, wie beispielsweise mittels einer statistischen
Methode.
-
Nachdem nichteffektive charakteristische Daten von der
Zeichenerkennung im Schritt 46 extrahiert wurden, wird bei
Schritt 47 eine Bestimmung vorgenommen, ob alle
nichteffektiven charakteristischen Daten entfernt wurden. Gemäß der
vorliegenden Ausführungsform, ist die Entfernungsverarbeitung
charakteristischer Daten abgeschlossen, wenn 4 nichteffektive
charakteristische Daten von dem Ursprung 7 entfernt wurden.
Auf der anderen Seite wird, wenn das Löschen von 4
nichteffektiven charakteristischen Daten nicht vollständig ausgeführt
wird, der Parameter N um eins erhöht (Schritt 48) und es wird
mit Schritt 36 fortgefahren. Eine ähnliche Verarbeitung wird
für das nächste Zeichen ausgeführt, so daß nichteffektive
charakteristische Daten ausgewählt und gelöscht werden können.
-
Gemäß dem Obengesagten, werden 3 charakteristische Daten
bestimmt, so daß es möglich ist, die Zeichenerkennung unter
Verwendung von 3 charakteristischen Daten durchzuführen. Gemäß
der vorliegenden Ausführungsform wird es möglich, ein System
zu entwickeln, das eine Zeichenerkennung nur unter Verwendung
charakteristischer Daten durchführt. Weiterhin wird ein
Zeichenerkennungssystem erhalten, bei dem die Kapazität des
neuronalen Netzwerkes auf ein Minimum beschränkt wird, so daß
ein einfaches neuronales Netzwerk oder
Datenverarbeitungssystem mit äquivalenter Struktur verwendet werden kann.
-
Im Schritt 36 ist es beispielsweise möglich, eine
Musterübereinstimmung auszuführen, so daß das gleiche Zeichen nicht
nochmals gelesen werden muß.
-
Es ist auch möglich, ähnliche Verfahren zur Erkennung von
Konfigurationen oder zur Erkennung schriftlicher Zeichen
einzusetzen.
-
Gemäß der vorliegenden Erfindung ist es möglich, in
effizienter Weise charakteristische Daten auszuwählen, selbst wenn die
effektiven charakteristischen Daten nicht klar genug sind.
Daher ist eine Vereinfachung des Datenverarbeitungssystems
möglich.