DE2943749C2 - - Google Patents
Info
- Publication number
- DE2943749C2 DE2943749C2 DE2943749A DE2943749A DE2943749C2 DE 2943749 C2 DE2943749 C2 DE 2943749C2 DE 2943749 A DE2943749 A DE 2943749A DE 2943749 A DE2943749 A DE 2943749A DE 2943749 C2 DE2943749 C2 DE 2943749C2
- Authority
- DE
- Germany
- Prior art keywords
- memory
- signal
- arrangement
- coordinate
- window
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/20—Image preprocessing
- G06V10/24—Aligning, centring, orientation detection or correction of the image
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/10—Image acquisition
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/40—Extraction of image or video features
- G06V10/44—Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
- G06V10/443—Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components by matching or filtering
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V30/00—Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
- G06V30/10—Character recognition
- G06V30/19—Recognition using electronic means
- G06V30/192—Recognition using electronic means using simultaneous comparisons or correlations of the image signals with a plurality of references
- G06V30/194—References adjustable by an adaptive method, e.g. learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V30/00—Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
- G06V30/10—Character recognition
- G06V30/19—Recognition using electronic means
- G06V30/196—Recognition using electronic means using sequential comparisons of the image signals with a plurality of references
Description
Die Erfindung betrifft eine Anordnung zum Erkennen eines
Musters in einer vorgegebenen Anzahl nach mindestens einer
Koordinate geordneter digitaler Signale mit einem ersten
Speicher zum Aufnehmen der Signale, einem zweiten
Speicher zum Aufnehmen der zu erkennenden Muster und einem
Vergleicher, dessen Eingänge an Datenausgänge des ersten
und zweiten Speichers angeschlossen sind und der abhängig
vom Vergleichsergebnis ein Unterschiedssignal oder ein
Übereinstimmungssignal abgibt.
Bekannte Objekte für eine derartige Erkennung sind binärkodierte
Zeichen (Buchstaben, Ziffern), Blutkörper,
Chromosome, Radarbilder von Flugzeugen. Andere Muster, auf
die sich die Erfindung beziehen kann, sind Serien von
Kodeziffern, die gegebenenfalls verstümmelt sein können,
menschliche Stimmenmuster usw. Die Koordinaten können die
x- und y-Richtungen bei einem zweidimensionalen Bild, die
Zeit bei einer Serie empfangener Kodebits, Zeit und
Tonhöhe bei einem Stimmenmuster sein. Die Anzahl der Koordinaten
kann 1, 2, 3 oder sogar mehr sein. Der Signalwert
bezieht sich dabei auf den Schwärzungs- oder Farbkode bei
zweidimensionalen Bildern, auf die Intensität des Tons bei
einem Stimmenmuster usw.
Aus der Zeitschrift "IEEE transactions on systems, man and
cybernetics, August 1976, Vol. SMC-6, Nr. 8, S. 562 . . . 570,
ist es bekannt, Teilbilder bei der Abtastung direkt miteinander
zu vergleichen. Dies bedeutet, daß nur eine
geringe Anzahl von Beispielmustern verwendet werden kann.
Denn es erfolgen sehr viele Vergleiche, und zwar direkt
bei der Bildabtastung. Weiter sind nach der Veröffentlichung
die zulässigen Differenzen klein. Dies bedeutet,
daß nur in einer Umgebung mit wenig Variablen gearbeitet
werden kann. Die Veröffentlichung beschreibt nämlich die
Ortung von Transistoren, bei denen nur eine zweidimensionale
translatorische Bewegung und eine Drehung möglich
sind. Die bekannte Technik ist ergebnislos, wenn das
Objekt nicht formfest ist, so daß der gegenseitige Abstand
der Einzelheiten schwanken kann.
Aus der DE-AS 21 13 264 ist ein Verfahren zum automatischen
Erkennen zweidimensionaler Muster mit Hilfe von
Momenten zweiter Ordnung bekannt, mit dem auch Muster mit
einer größeren Variationsbreite erkannt werden sollen.
Hierbei können aber Mehrdeutigkeiten entstehen, da gleiche
Momente von verschiedenen Mustern erzeugt werden können.
Ferner ist aus der US-PS 38 46 755 ein Mustererkennungssystem
bekannt, das Momente von aufeinanderfolgenden
Streifen oder Teilen des Musters feststellt und aus
bestimmten dieser Momentsignale Parrameter zum Erkennen des
unbekannten Musters ableitet. Dafür wird ein zu untersuchendes
Bild in aufeinanderfolgenden Streifen abgetastet
und aus der Folge der Signale der einzelnen Punkte innerhalb
des Streifens werden Momente gebildet, und diese
Momente werden untereinander in Beziehung gesetzt, um
weitere Parameter zur Erkennung abzuleiten. Auch hier wird
das zu erkennende Signalmuster selbst nicht mehr direkt
für die Erkennung verwendet.
Aufgabe der Erfindung ist es, eine Anordnung der eingangs
genannten Art anzugeben, die automatisch nur solche Teile
der zu untersuchenden Signale bzw. diese in solcher
Orientierung dem Vergleich zuführt, daß dabei mit
möglichst hoher Wahrscheinlichkeit die Erkennung eines
gesuchten Musters erfolgt.
Diese Aufgabe wird erfindungsgemäß dadurch gelöst, daß
eine Fensteranordnung aus der vorgegebenen Anzahl
digitaler Signale im ersten Speicher eine zusammenhängende
Teilmenge, ausgehend von vorgegebenen Koordinaten, auswählt
und dem Vergleicher zuführt,
daß eine Schrittanordnung das durch die Fensteranordnung
gebildete Fenster über mindestens eine Koordinate der
digitalen Signale im ersten Speicher verschiebt und somit
jeweils eine verschobene Teilmenge der digitalen Signale
dem Vergleicher zuführt,
daß eine Gradientenbestimmungsanordnung für vorgegebene
Koordinatenwerte im Fenster je den absoluten Werten des
Gradienten der digitalen Signale in mindestens einer
Koordinatenrichtung bestimmt, und
daß ein Momentbestimmer aus diesen absoluten Werten deren
Moment in bezug auf mindestens einen vorgegebenen Visierpunkt
im Fenster bestimmt und beim Erreichen eines vorgegebenen
Mindestwertes des Moments zur Anzeige eines örtlich
hohen Werts des über die ausgewählte Teilmenge der
digitalen Signale gebildeten Gradienten je Koordinatenrichtung
ein Ausgangssignal erzeugt, das den Vergleicher
aktiviert.
Der Erfindung liegt die Erkenntnis zugrunde, daß viele
Muster aus an sich bereits bedeutsamen Teilen zusammengesetzt
sind. So können medizinische Röntgenphotos einige
Einzelheiten wie Skeletteile enthalten. Andere Bilder
enthalten beispielsweise Chromosome oder Blutkörper, die
gezählt und/oder identifiziert werden müssen. Die Erfindung
berücksichtigt, daß die Information zum wesentlichen
Teil in Teilbildern mit großen Gradienten enthalten ist
(also beispielsweise Sprünge in der Intensität eines
Bildes).
Beispielsweise ist es möglich, das unbekannte Bild laufend
abzutasten, wobei die Zeit oder die Stelle die unabhängige
Variable bilden. Dabei wird jeweils das Moment bestimmt
und bei einer Zentrierung (in Zeit oder Ort) auf einem
Maximum des über das örtliche Muster gemittelten Werts im
koordinatenweisen Gradienten der Vergleich gestartet. Dies
kann also ein Nulldurchgang einer Anordnung sein, die den
erwähnten gemittelten Wert zeitlich differenziert. Die
Bildung des Moments erfolgt derart, daß tatsächlich auf
ein Maximum eingestellt wird (und also nicht auf ein
Minimum, denn dies ergibt entsprechend obiger Beschreibung
nur eine beschränkte Informationsmenge). Der Gradient läßt
sich auf verschiedene Weisen bestimmen. Das erwähnte
Moment kann ein erstes Moment oder ein höheres Moment
betreffen. Nach der Erfindung erfolgt der Vergleich erst
dann, wenn die Fensteranordnung einwandfrei eingestellt
ist.
Es ist vorteilhaft, wenn eine Voreinstellschrittanordnung
vorgesehen ist, um mit Hilfe einer vorgegebenen Anzahl von
Voreinstellschritten genauso viele Anfangspositionen der
Fensteranordnung zuzuführen, und daß ein Ausgang der
Voreinstellschrittanordnung mit einem Eingang des Momentbestimmers
verbunden ist, um letzteren erst nach dem
Erreichen einer Anfangsposition zu aktivieren.
Eine jede der Anfangspositionen kann eine einzige endgültige
Einstellung und somit auch einen einzigen Vergleich
ergeben. Durch eine gute Verteilung der Anfangspositionen
kann eine große Anzahl digitaler Signale auf
bedeutsame Einzelheiten untersucht werden. Nahe einer
jeden der Anfangspositionen kann ein örtliches Maximum des
koordinatenweisen Gradienten gefunden werden, beispielsweise
dadurch, daß eine vorgegebene Reihenfolge von
Fenstereinstellung nach dem Starten mit einer Anfangsposition
durchlaufen wird. Es ist möglich, daß die endgültige
Einstellung von zwei oder sogar mehreren Anfangspositionen
aus erreicht wird. Nach Bedarf kann dies
dadurch verhindert werden, daß eine zusätzliche Anordnung
vorgesehen ist, die speichert, welche Stellen bereits
untersucht wurden, und daß, wenn eine derartige Stelle zum
zweiten Male erreicht wird, der Vergleicher ein sperrendes
Signal abgibt. So können die digitalen Signale systemeatisch
mit Hilfe einer geeigneten Zwischenraumbildung
zwischen den erwähnten Anfangspositionen untersucht
werden.
Es ist vorteilhaft, wenn eine Rückkopplungsverbindung
zwischen einem Ausgang des Momentbestimmers und einem
Aktivierungseingang der Schrittanordnung vorgesehen ist,
um dieser ein Schrittsignal zuzuführen. Das Fenster wird
dabei nach der Einstellung auf eine Anfangsposition
jeweils schrittweise in der geeigneten Richtung verschoben,
um möglichst schnell das Moment zu minimalisieren.
So läuft die Einstellung automatisch ab und werden
wenige Schritte zum Erreichen der Endstellung benötigt.
Es ist vorteilhaft, wenn ein Beendungselement vorgesehen
ist, das die Anzahl der aus einer Anfangsposition der
Schrittanordnung zugeführten Schrittsignale auf eine
Obergrenze beschränkt. Auf diese Weise wird die
weitere Einstellung des Fensters beendet, wenn zum
Erreichen der Endeinstellung die Schrittanzahl zu groß
werden würde. Diese Schrittanzahl kann groß werden, wenn in
einem bestimmten Bereich kein örtliches Maximum des
koordinatenweisen Gradienten vorhanden ist (aber z. B. nur
ein örtliches Minimum): Dabei kann die endgültige
Einstellung auch von einer anderen Anfangsposition aus
erreicht werden. Auch hiermit wird die zweifache Durchführung
des Einstellvorgangs auf den gleichen endgültigen
Einstellpunkt vermieden. Ein anderer Fall, bei dem viele
Schritte auftreten können, besteht darin, daß die zum
Vergleich zugeführten digitalen Signale mit Rauschen
überlagert sind. Dies kann beispielsweise durch geringe
Pegelverschiebungen in Diskriminatoren erfolgen, die ein
analoges Eingangsmuster in ein digitales Muster umsetzen.
Dabei kann die optimale Einstellung der Fensteranordnung
auch zeitabhängig sein, so daß wiederholt die gleiche
Einstellung erhalten wird. Auch dabei vermeidet die
Verwendung eines erwähnten Beendungselements Zeitverlust.
Es ist vorteilhaft, wenn der Vergleicher mit Mitteln
versehen ist, die bei einem Unterschied eines zum Vergleich
zugeführten Signalpaars aus dem ersten und dem
zweiten Speicher für einen bestimmten Koordinatenwert,
doch ein Übereinstimmungssignal erzeugen, wenn die umgebenden
Signale beider Speicher für diesen Koordinatenwert
einen koordinatenweise vorgegebenen Gradienten im
Signalwert aufweisen. Bei einem binären Bild ist der
erwähnte vorgegebene Unterschied ein Unterschied zwischen
"1" und "0". Bei einem mehrwertigen Bild kann es sich um
einen gewissen Schwärzungs- oder Farbunterschied handeln.
Der Gradient kann auf gleiche Weise wie bei der Einstellung
des Fensters oder auf eine andere Weise bestimmt
werden. Durch die Berücksichtigung der Gradienten werden
beispielsweise geringe Verschiebungen im Rand eines
Zeichenteils oder geringe Zeitunterschiede im Anfkunftmoment
einer Änderung in einer Signalamplitude nicht als
ein Beitrag zu einem Unterschied betrachtet. Es zeigt
sich, daß dies eine große Ersparnis in der Musteranzahl
gibt, die im zweiten Speicher gespeichert werden muß. Auch
bei einer geringeren Anzahl gespeicherter Muster ist dabei
dennoch eine gute Erkennung möglich. So wird also ein
günstiger Kompromiß einerseits zwischen dem Auftreten von
Gradienten des Signalwerts im jeweiligen Muste rim
zweiten Speicher und zum anderen einer zulässigen Toleranz
im Koordinatenwert, in dem ein derartiger Gradient auftritt,
gefunden. Dies ergibt eine genau dosierte Toleranz
in den zulässigen Unterschieden zwischen Beispiel und zu
untersuchendem Objekt.
Es ist vorteilhaft, wenn ein dritter Speicher vorgesehen
ist, der unter der Steuerung eines Übereinstimmungssignals
aus dem Vergleicher die dabei erreichten Koordinatenwerte
der Schrittanordnung und die Adresse für den zweiten
Speicher speichert. Durch diese Speicherung wird es
möglich, ein Bild zu fixieren, das auf zunächst noch nicht
festgestellte Weise aus einer Anzahl bekannter Komponenten
oder Teilmuster aufgebaut ist.
Es ist vorteilhaft, wenn ein Zyklusgenerator die Muster
nacheinander aus dem zweiten Speicher dem Vergleicher
zuführt, daß das Übereinstimmungssignal ein erstes Stoppsignal
zum Signalisieren einer Erkennung darstellt und ein
Unterschiedsignal als Fortschaltsignal weitere im zweiten
Speicher enthaltene Muster dem Vergleicher zuführt, bis
alle Muster zugeführt worden sind, wobei ein zweites
Stoppsignal die digitalen Signale an einem Ausgang des
ersten Speichers in den zweiten Speicher an einer unbenutzten
Speicherstelle einschreibt. Die gespeicherten
Bilder können alle gleichzeitig in verschiedenen
Vergleichselementen oder auch aufeinanderfolgend zum
Vergleich zugeführt werden. Das Ergebnis kann dabei sein,
daß das unbekannte Teilmuster als eines der gespeicherten
Bilder identifiziert wird, und darauf kann das erste
Stoppsignal ein Aktivierungssignal für den Schrittmechanismus
bedeuten. Auch kann es sein, daß das erste Stoppsignal
nur einen Buchhaltungsmechanismus aktiviert, der
speichert, welche örtlichen Bilder eine Übereinstimmung
ergeben haben: Dabei aktiviert immer das zweite Stoppsignal
den Schrittmechanismus. Wenn das Muster der digitalen
Signale jedoch unbekannt ist, kann dieses automatisch
als neues Beispielmuser gespeichert werden. Es ist
besonders vorteilhaft, daß für die digitalen Signale so
eine Lernphase und die Benutzungs- oder Erkennungsphase
zusammen auftreten: Denn es ist möglich, daß nicht von
vornherein bekannt ist, wie viele verschiedene Muster
vorhanden sein werden. So weist die Anordnung gewissermaßen
einen Fähigkeit zur Selbstorganisation auf. In der
obigen Beschreibung kann das neu dargestellte Muste raus
der Aufnahmeeinrichtung abgeleitet werden (beispielsweise
dadurch, daß die Fensteranordnung in der Aufnahmekamera
verkörpert ist). Zum anderen kann der erste Speicher auch
in einem spezifischen Speicher, z. B. in einem Schieberegister,
verkörpert sein.
Es ist vorteilhaft, wenn eine zweite Fensteranordnung an
einen Datenanschluß des zweiten Speichers angeschlossen
ist, die die aktivierte Zuführung von Daten zum Vergleicher
auf Koordinatenpositionen eines in den
zweiten Speicher einzuschreibenden Musters beschränkt,
wodurch entweder ein vorgegebener koordinatenweiser Gradient
des erwähnten Signalwerts oder bei einer benachbarten
Koordinatenposition ein vorgegebener koordinatweiser
Gradient des Signalwerts detektiert ist. In einem zweidimensionalen
binären Bild wird ein derartiger Musterteil,
für den sogar eine benachbarte Koordinatenposition keinen
Gradienten aufweist, durch einen farbgleichen Teil
(schwarz oder weiß) gebildet, der keine Daten über die
Form des Bildes enthält. Wenn die zweite Fensteranordnung
an den Dateneingang des zweiten Speichers angeschlossen
ist, werden derartige gradientenfreie Teile der Muster als
indifferente (don't care) Information eingeschrieben und
später nicht in den Vergleich aufgenommen: Eine indifferente
Information gibt mit einer beliebigen anderen Information
keinen Unterschied an. Der Vergleich mit späteren
zu erkennenden Mustern wird dabei schärfer, weil beispielswiese
Signalrauschen in einem im übrigen gradientenfreien
Musterteil keinen Einfluß auf das Vergleichungsergebnis
ausübt. Wenn zum anderen die zweite Fensteranordnung an
den Datenausgang des zweiten Speicher angeschlossen ist,
werden derartige gradientenfreie Teile zwar eingeschrieben,
aber bei späterer Vergleichung dennoch außer Betracht
gelassen. Im letzten Fall kann dabei mit einer etwas
geringeren Speicherkapazität ausgekommen werden. So gibt es
eine enge Zusammenarbeit zwischen den zwei Fensteranordnungen:
Die erste bestimmt die Stelle und die zweite darin
die Größe des zu vergleichenden Teilmusters. Ein kennzeichnender
Fall von Störungen am Rand des Bildes kann
durch benachbarte Objekte gebildet werden, die weniger
weit oder weiter entfernt sein können.
Es ist vorteilhaft, wenn eine Rückkopplungsverbindung
zwischen einem Ausgang des Momentgenerators und einem
Aktivierungseingang der Schrittanordnung vorgesehen ist,
um dieser ein Schrittrichtungssignal zuzuführen, wobei ein
vierter Speicher vorgesehen ist, der nach dem Zuführen
aller im zweiten Speicher gespeicherten Muster eine dabei
auftretende Referenzposition der Fensteranordnung einstweilen
speichert, und daß eine Wiederholungsanordnung
vorgesehen ist, die zumindest eine zusätzliche Anfangsposition
erzeugt, und daß ein Vergleichselement vorgesehen
ist, um nach dem erneuten Erreichen des Minimalwerts des
erwähnten Moment danach die dabei auftretenden Referenzposition
der Fensteranordnung mit der in den vierten Speicher
gespeicherten Position zu vergleichen und ein Saldo
von Übereinstimmungen zu bilden und schließlich das
zweite Stoppsignal nach dem Erreichen eines vorgegebenen
Minimumsaldos zu erzeugen, wobei von der zumindest einen
zusätzlichen Anfangsposition ausgegangen wird.
Es hat sich gezeigt, daß manchmal ein örtliches
Maximum im Gradienten des Signalwerts für die Fensteranordnung
nur einen sehr kleinen Fangbereich bildet: Nur
eine ganz spezifische Anfangsposition ergibt eben jenes
stabile und sogar indifferente Gleichgewicht. In diesem
Fall ist ein derartiges örtliches Muster wenig bedeutsam,
und es wird daher nicht als Beispielmuster gespeichert.
Die zusätzlichen Anfangspositionen lassen sich auf verschiedene
Weisen bilden: Es können "normale" Anfangspositionen
sein, die also nur ein neues Beispielmuster
lifern, wenn dieses wenigstens aus zwei "normalen"
Anfangspositionen erreicht wird. Es können auch eine oder
mehrere zusätzliche Positionen sein, die auf einen bestimmten
Koordinatenunterschied in bezug auf den erreichten
Einstellpunkt positioniert werden.
Zum andern ist es vorteilhaft, wenn ein fünfter
Speicher vorgesehen ist, der unter der Steuerung des
erwähnten zweiten Stoppsignals ein Vorläufigkeitsmarkierungssignal
speichert und ein Saldo aktualisiert, und eine
Wiederholungsanordnung vorgesehen ist, die dabei zumindest
eine zusätzliche Anfangsposition erzeugt und durch ein
nachfolgendes erstes Stoppsignal für das zuletzt in den
zweiten Speicher eingeschriebene Muster das Saldo erhöht
und so, ausgehend von der erwähnten zumindest einen zusätzlichen
Anfangsposition, nur beim Erreichen eines vorangegebenen
minimalen Saldos das erwähnte Vorläufigkeitsmarkierungssignal
zurückstellt, jedoch zum anderen das
letztgenannte Muster ungültig macht.
In einer Richtung kann die Stabilität der Zentrierung
indifferent sein. Dies ist z. B. mit einer gerade verlaufenden
Grenze der Fall. Wenn dabei etwas später das
gleiche Bild vorgefunden wird, ist dies dennoch ein interessierendes
Muster.
In obiger Beschreibung wird angegeben, daß nicht
alle Teilmuster gleich sinnvoll sind, um als Beispielmuster
gespeichert zu werden. Dies hängt insbesondere von der
weiteren Benutzung ab, die mit den gespeicherten Erkennungsergebnissen
bezweckt wird. Es ist z. B. möglich, daß
ein allgemeines Muster eine bestimmte Anzahl erkannter
Teilmuster sowie ein oder mehrere unerkennbare Teilmuster
enthält. Es kann dabei auch noch an Hand einer ziemlich
beschränkten Anzahl erkannter Teilmuster noch erkennbar
sein. Dieser Fall kann eintreten, wenn Produkte erkannt
werden müssen, die jedoch von anderen Produkten (beispielsweise
formgestanzte Plättchen) überlappt werden.
Die Teilmuster, die durch die Überlappung gebildet werden,
sind für die Erkennung nicht relevant. Weiter ist es für
die in dem zweiten Speicher gespeicherten Beispiele
besonders vorteilhaft, wenn sie invariant für den Maßstab
der Koordinatenpositionen sind. Für eine Bildabtastung ist
meist die Größe des Bildes (beispielsweise durch den
Abstand des Objekts vom Abtastdorgan gegeben) nicht von
vornherein bekannt). Deshalb kann als Zusatzbedingung
an ein zu speicherndes Speichermuster gefordert werden,
daß unter einer vorgegebenen Variation im erwähnten
Koordiantenwert das Muster höchstens einen vorgegebenen
Unterschied aufweist.
Ausführungsbeispiele der Erfindung werden nachstehend
an Hand der Zeichnung näher erläutert. Es zeigt
Fig. 1 erste Muster digitaler Signale,
Fig. 2 zweite Muster digitaler Signale,
Fig. 3 eine Blockschaltung einer erfindungsgemäßen
Anordnung,
Fig. 4a bis 4k Einzelheiten zu Fig. 3,
Fig. 5a bis 5d einige Bilder zur Erläuterung den
Vergleichsregeln,
Fig. 6a, b und c Flußdiagramme der Signalverarbeitung.
Bereits erwähnt wurde, daß die Erfindung zur Verwendung
bei verschiedener Musterarten digitaler Signale
verwendbar ist. Der Einfachheit halber ist die nachstehende
Beschreibung zweidimensionalen Bildern binären Daten
gewidmet: schwarz bzw. weiß. Es gibt also zwei unabhängige
Koordinaten, die mit "x" und "y" bezeichnet werden können.
In Fig. 1 ist die ursprüngliche Ausführungsform eines
derartigen zweidimensionalen Bilds in gestrichelten Linien
und die binärkodierte Ausführungsform desselben in ausgezogenen
Linien dargestellt. Die erwünschte Erkennung kann
jetzt das Zurückfinden der Stelle und der Anzahl der
zusammensetzenden Figuren sein, die rotiert und/ober
überlappend angeordnet sein können. Relevante Teilmuster
(örtliche Bilder) sind für den Kreis beispielsweise Oberrand,
Unterrand, linker und rechter Rand. Relevante Teilmuster
für das Dreieck sind beispielsweise die drei Ecken.
Letztere werden nicht durch den Maßstab der Darstellung des
Dreiecks beeinflußt.
In Fig. 2 ist auf gleiche Weise ein binärkodiertes
Zeichen "4" dargestellt. Relevante Teilbilder sind hier
mit den Buchstaben A-F bezeichnet. Das Zeichen ist erkennbar
wenn eine genügende Anzahl von Teilbildern in
einer annehmbaren gegenseitigen Lage erkannt ist. Wenn
manche Zeichen eine große Varianz aufweisen, werden
davon verhältnismäßig viele Teilbilder gespeichert. So
wird die Kapazität des früher erwähnten zweiten Speichers
gut ausgenutzt. Es sei noch darauf hingeweisen, daß derartige
Zeichen vorbearbeitet sein können, beispielsweise
durch Skelettieren oder Glätten der Ränder, um die
erwähnten Teilbilder charakteristischer oder weniger
stark beeinflußt von Störungen und Rauschen zu machen.
In Fig. 3 ist ein Blockschaltbild einer erfindungsgemäßen
Anordnung insbesondere für zweidimensionale
Bilder dargestellt. Der Aufnehmer 1 ist ein bekannter
Rasteraufnehmer, der die zugeführten Bilder unter synchronisierender
Steuerung durch die Taktimpulse auf der
Leitung 5 a abtastet. Das Element 1 a ist der Generator für
den eigentlichen Abtasthub und enthält auf bekannte Weise
einen x-Zähler, einen y-Zähler und einen Generator für
den Voreinstell- oder Anfangspunkt der Abtastung (also
zwei Voreinstellkoordinaten, die in genau so viele
Register gespeichert sein können). Das Bild wird im Vorverstärker
2 in einen Bitstrom unter der Synchronisation
durch die Taktimpulse auf der Leitung 5 a umgesetzt. Im
Beispiel enthält das Bild ein Viereck von 20 × 20 Bildpunkten,
das beispielsweise einen Teil des ganzen, zur
Analyse zugeführten Bilds sein kann, das den Umfang beispielsweise
eines Fernsehbilds haben kann. Die Information
der erwähnten 400 Punkte gelangt an das Element 3, das
als ein zweidimensionales Schieberegister ausgeführt ist
(siehe weiter Fig. 4a). Die Speicherung erfolgt unter der
Steuerung der Taktimpulse auf der Leitung 5 a, die (siehe
Fig. 4b) in der Steuereinheit 5 vom UND-Gatter 162 durchgelassen
werden, wenn das Datenflipflop 160 in der "1"-Stellung
steht. Die Vorderflanken der Taktimpulse am Eingang
163 steuern Elemente 1, 2, 3. Das Flipflop 160 geht
in die "1"-Stellung unter der Steuerung eines Rückstellsignals
auf RAZ am Anschluß 6, das mit dem über die
Umkehrstufe 161 invertierten Taktimpulse zusammenarbeitet.
Anschließend wird über das ODER-Gatter 165 das Flipflop
160 in der "1"-Stellung festgehalten. Das Signal RAZ muß
also zumindest für die Dauer einer Taktimpulsperiode vorhanden
sein, aber kann beispielsweise ein manuelles Signal
sein. Gegebenenfalls kann der Ausgang des ODER-Gatters 165
eine Maßnahme gegen Prellungen eingebaut haben. Das
Element 7 empfängt auch die Taktimpulse aus dem Taktgeber 5
und zählt seine Vorderflanken. In der Stellung "400" gibt
das Element 7 ein Übertragssignal auf der Leitung 8. Es
kann dabei in die Nullstellung gehen, Eine andere Möglichkeit
ist, daß es auch vom Signal RAZ in die Nullstellung
gebracht wird. Das Signal auf der Leitung 8 arbeitet als
Rückstellsignal (Anschluß 164) für das Flipflop 160, und
zwar mit Priorität vor dem Ausgangssignal des ODER-Gatters
165. Solange das Signal RAZ nicht mehr erscheint, bleibt
der Flip-Flop in der Nullstellung stehen, und damit ist die
Aufnahmephase beendet.
In diesem Zusammenhang zeigt Fig. 4a ein zweidimensionales
Schieberegister von 3 × 3 Positionen. Die Stufen
130 enthalten alle eine Bitinformation oder zum anderen
soviel Information als von der Anordnung 2 für jede Bildposition
erzeugt wird. Die Stufen werden zusammen mit Hilfe
nicht dargestellter Taktimpulse gesteuert, um eine Information
auszugeben bzw. einzugeben, wozu jede Stufe eine
Master-Slave-Flipflop aufweisen kann. An sich ist die
Verwendung eines zweidimensionalen Schieberegisters im
Bereich der Mustererkennung bekannt und z. B. im Buch von
J.R. Ullmann, Pattern Recognition Techniques, London 1973,
insbesondere auf den Seiten 34-37 beschrieben. In einer
bestimmten Ausführungsform wird beim Aufnehmen der Wählschalter
137 A in die unterste Stellung gebracht und werden
weiter Durchlaßelemente 131 und 132 erregt, bis nach
drei Taktimpulsen die erste Spalte gefüllt ist. Beim vierten
Taktimpuls werden Durchlaßelemente 131 und 133 erregt,
und die bereits gespeicherte Information schiebt um eine
Spalte weiter. Dabei folgen zwei Taktimpulse unter Erregung
von Durchlaßelemente 131 und 132, ein Taktimpuls
unter Erregung der Durchlaßelemente 131 und 133, zwei
Taktimpulse unter Erregung der Durchlaßelemente 133 und
132, wonach neun Bits gespeichert sind und der Schalter
137 A in die obere Stellung gebracht wird. Für ein größeres
Schieberegister ist die Organisation entsprechend.
Die Information des Abtasters erreicht den Eingang 136.
Die Stufen 130 haben je einen Dateneingang, der mit vier
Durchlaßelementen gekoppelt ist, und einen Datenausgang,
der mit vier weiteren Durchlaßelementen gekoppelt ist.
Die Sequenz der Steuerung der Durchlaßelemente wird vom
Zähler 300 in Fig. 4c versorgt, der die Speichertaktimpulse
empfängt und dessen Stellung zum Aktivieren der
entsprechenden Durchlaßelemente dekodiert wird. Für
weitere Grau- oder Farbpegel enthalten die Stufen 130 eine
ausreichende Anzahl parallel geschalteter Bitspeicherelemente.
In Fig. 4c ist die Steuerung des zweidimensionalen
Schieberegisters 3 veranschaulicht. Der Zähler 300 empfängt
die Taktimpulse auf der Leitung 5 a: Für ein 20 × 20 Punktschieberegister
besitzt dieser Zähler wie der Zähler 7
400 Stellungen. Der Dekoder 301 dekodiert die Stellungen
dieses Zählers und erzeugt selektiv Durchlaßsteuersignale
zu den Durchlaßelemente 131, 132 und 133 an den auf
gleiche Weise indizierten Ausgängen. Durch an sich bekannte
Maßnahmen ist gewährleistet, daß bei der Aktivierung
der Schieberegisterstufen durch einen Taktimpuls der Leitung
5 a der Signalzustand an den Ausgängen der Dekoders
301 ungeändert bleibt. Der Zähler 300 kann einen weiteren
Ausgang 305 für ein Ausgangsübertragssignal und einen Eingang
306 besitzen, um ihn am Anfang der Eingabe in die
Nullstellung zurückzubringen (beispielsweise durch das
Signal RAZ). Letztgenannte zwei Signale bedienen dabei den
Schalter 137 A. Weiter enthält die Steuerung des Schieberegisters 3
einen inneren Tatkgeber 302, dessen Frequenz
an die höchste Schiebegeschwindigkeit im Register 3 angepaßt
ist. Diese Frequenz muß also zumindest genau so
hoch sein wie die entsprechende Eingabegeschwindigkeit,
aber die Geschwindigkeit der Datenverarbeitung (siehe
weiter unten) kann viel niedriger sein. Es gibt weiter ein
x-Adreßregister 303 mit einem Dateneingang 307 und einem
Ladesteuereingang 308. Weiter gibt es ein y-Adreßregister
311 mit einem Dateneingang 309 und einem Ladesteuereingang
310. Es gibt einen bidirektional arbeitenden
x-Adreßzähler 13 und einen entsprechenden y-Adreßzähler
14 mit Zähleingängen 312 bzw. 313 (letztere entstammen
den Selektoren 13 bzw. 14 A, deren Eingänge sowohl für
innere als auch für äußere Aktivierung zweifach ausgeführt sind).
Die Stellungen des x-Adreßzählers 13 und des
x-Adreßregisters 303 werden im Vergleichselement 304
verglichen, das ein aktivierendes Taktsignal aus dem
Taktgeber 302 erhält. Auf gleiche Weise gibt es ein Vergleichselement
314, das die Stellungen des y-Adreßregisters
311 und des y-Zählers vergleicht und ein aktivierendes
Taktsignal aus dem Taktgeber 302 erhält. Der Taktgeber
302 wird von einem Ladesteuersignal an den Eingängen
308/310 gestartet. Die Elemente 304 und 314 werden anschließend
abwechselnd aktiviert und erzeugen bei der
Aktivierung ein "größer als/gleich/kleiner als-Signal.
Wenn das Gleichsignal erscheint, geschieht weiter nichts.
Wenn das "größer als"- oder "kleiner als"-Signal erscheint,
empfängt der betreffende Adreßzähler einen Zählimpuls
der entsprechenden Polarität (oder gegebenenfalls ein
Zweibitsignal, ein Zählbit und ein Richtungsbit) und
werden die x-Durchlaßelemente 131, 133 oder 135 durch das
Vergleichselement 304 bzw. werden die y-Durchlaßelemente
132, 134 oder 136 A durch das Vergleichselement 314 auf
entsprechende Weise aktiviert, so daß anschließend das
gespeicherte Bild um einen Schritt verschoben ist. Die
"gleich"-Signale aus den Elementen 304 und 314 erscheinen
an den Ausgängen 315 und 316. Wenn der Taktgeber 302 von
einem Signal am Eingang 317 angehalten ist, erzeugen auch
die Vergleichselemente 304 und 314 keine Signale mehr.
Die Zähler 13 und 14 können von einem geeigneten Signal
(beispielsweise vom Signal RAZ) an den entsprechenden
Eingängen 318 und 319 auf Null gestellt werden, welches
Signal auch die Selektoren 13 a und 14 a in die Stellung
zum Durchlassen der Ausgangssignale aus den Elementen
304 und 314 bringen kann (die Steuereingänge der Elemente
13 A und 14 A sind fortgelassen).
Das Signal auf der Leitung 8 in Fig. 3 aktiviert
einen Lesezyklus im Speicher 9 über das ODER-Gatter 10.
Das Element 9 kann ein Festwertspeicher sein (ROM oder
PROM), dadurch wird also eine erste Adresse eingegeben:
An jeder Adreß-Stellung enthält der Speicher 9 die
Adreßdaten eines sogenannten Initialvisierpunktes. Diese
Initialvisierpunkte werden zum Starten der weiteren Verarbeitung
benutzt. Die Bildpunkte (und also auch die
Informationen im Schieberegister 3) bilden ein zweidimensionales
Raser mit den Koordonaten [1 bis 20, 1 bis 20].
Die Visierpunkte bilden ein groberes Raster beispielsweise
mit den Koordinaten [3,3; 3,8; 3,13; 3,18; 8,3;
8,8 . . . 18,18]. Die vom Speicher 9 ausgegebenen Wörter
bilden die x- und y-Koordinaten des zweidimensionalen
Schieberegisters 3. Dadurch können die dort gespeicherten
Informationalen mit Hilfe eines Fensters fürt Weiterverarbeitung
verfügbar werden. Wie bereits erläutert, verläuft
die Einstellung des Schieberegisters auf einen Initialvisierpunkt
im Innern durch die in Fig. 4c dargestellten
Elemente.
Durch eine Master-Slave-Organisation für die
Stufen 130 des Schieberegisters 3 und dadurch, daß die
Ausgänge der äußeren Reihen des Registers nach der anderen
Seite hin ringgekoppelt sind, gehen beim Schieben keine
Informationen verloren. Die Information eines bestimmten
Teils der Elemente des Schieberegisters ist für Weiterverarbeitung
an nicht dargestellten Ausgängen der Schieberegisterstufen
verfügbar. Die Anordnung dieser Ausgänge
bildet ein sogenanntes "Fenster" am Bild. Zum Schieben
dieses Fensters in der negativen x-Richtung wird die
Information in der positiven x-Richtung geschoben. Dies
geschieht in Fig. 4a dadurch, daß alle Stufen ein Schiebeimpuls
empfangen und die Durchlaßelemente 131 und 133
erregt sind. Die Information der ganz rechten Spalte wird
bei erneut in der ganz linken Spalte dadurch gespeichert,
daß der Schalter 137 A dabei in der oberen Stellung steht.
Für die Verschiebung des Fensters in der positiven x-Richtung
werden die Durchlaßelemente 135 erregt, und die Information
der ganz linken Spalte wird in der ganz rechten
Spalte neu geschrieben. Auf gleiche Weise ist eine nicht
dargestellte Ringkopplung für Zweirichtungsverkehr
zwischen der unteren Zeile und der oberen Zeile des Schieberegisters
vorgesehen. Erregung der Durchlaßelemente 134
ermöglicht eine Verschiebung der Information in der
negativen y-Richtung; Erregung der Durchlaßelemente 136 A
ermöglicht eine Verschiebung in der positiven y-Richtung.
Weiter kann das Schieberegister noch eine Anzahl zusätzlicher
Zeilen/Spalten enthalten, die beim Eingeben der
Information nicht gefüllt werden. Dadurch wird beispielsweise
eine Wechselwirkung zwischen der Information des
oberen Bildrandes und der des unteren Bildrandes vermieden.
Diese zusätzlichen Positionen sind auch im Ringkopplungssystem
enthalten, werden aber beim Füllen des Schieberegisters
mit einem neuen Bild ungefüllt gehalten, beispielsweise
dadurch, daß der Eingang 136 nicht mit einer
Randstufe verbunden ist. Die eigentliche Gesamtkapazität
des Schieberegisters 3 kann beispielsweise 26 × 26 Punkte
sein. Eine ganz andere Lösung für die Speicherung des
Bilds wird mit Hilfe eines Schreib/Lese-Speichers mit
wahlfreiem Zugriff gelöst, aus dem durch Adressieren eine
Reihe von Wörtern (Zeilen oder Spalten des Bilds) für
Weiterbearbeitung zur Verfügung stehen. So geben also die
Elemente 13 und 14 die Position des Bildes im Schieberegister
an, beispielsweise dadurch, daß sie nach einer
Art Gray-Kode zählen. Wenn an beiden Ausgängen 314 und 316
ein "gleich"-Signal angekommen ist, ist das Fenster auf dem
vom Speicher 9 ausgegebenen Initialvisierpunkt eingestellt.
Dabei ist beispielsweise die Information eines Vierecks
von 11 × 11 Punkten im Schieberegister für nähere Auswertung
verfügbar. Das Fenster ist durch eine gestrichelte
Linie (18) angegeben und wird dadurch gebildet, daß nur
von den betreffenden Stufen die Datenausgänge mit weiteren
Teilen der Schaltung verbunden sind. Zusammen bilden die
betreffenden 121 Ausgangsleitungen das Bündel 19. Dieses
Bündel ist mit der Anordnung 20 für die Bestimmung des
koordinatenweisen Gradienten für die 9 × 9 zentral liegenden
Positionen des Fensters verbunden. Hierfür sei auf
Fig. 4d verwiesen.
In Fig. 4d ist für einen der 9 × 9 Fensterpunkte
eine Schaltung angegeben. Das Element 106 symbolisiert
den zentralen Punkt und seine vier Nachbarn. Die Informationen
daraus werden auf die angegebene Weise den vier
EXKLUSIV-ODER-Gattern 107-110 zugeführt. Sie erzeugen
also eine "1", wenn die erhaltenen Informationen ungleich
sind, sonst eine "0". Die Ausgangssignale werden im Summierer
111 addiert, und die Summe steht am Anschluß 112 für
Weiterverwendung zur Verfügung. Der Wertbereich dieser
Summe ist das geschlossene Intervall [0,4]. In einer
anderen Ausführungsform kann der Algorithmus für die
Bestimmung des Gradienten z. B. dadurch anders sein, daß
der zentrale Punkt mit Hilfe von 8 EXKLUSIV-ODER-Gattern
mit seinen 8 Nachbarn (nach einer 3 × 3 Matrix) verglichen
wird. Wenn mit Graupegeln gearbeitet wird, könnten die
Elemente 107-110 Differenzverstärker sein und den
absoluten Wert der Differenz abgeben. Dann besteht ein
anderes Verfahren zur Bestimmung eines Gradienten noch
im Unterschied zwischen den extremsten Intensitätswerten
unter den benachbarten Punkten. Die Gradienteninformation
eines Fensters von 9 × 9 Punkten werden aus der Einheit 20
auf der Leitung 330 der Einheit 21 zugeführt, ein diesbezügliches
Schema ist in Fig. 4e dargestellt. Die 9 × 9
Punkte sind im Viereck 100 symbolisiert. Die Gradientenwerte
für die obersten neun Fensterpunkte werden im
Summierverstärker 101 summiert. Das Element 102 vervielfacht
dem empfangenen Wert um einen festen Faktor 4 (dieser
Faktor kann auch in das Element 101 fest eingebaut sein).
Das Ausgangssignal gelangt an den Summierer 103, und auf
gleiche Weise werden die Signale der anderen Zeilen verarbeitet,
nur nehmen die Vervielfachungsfaktoren nach
unten hin zunächst ab, und anschließend nimmt der Faktor
mit negativem Vorzeichen wieder zu. Die mittlere Zeile
wird hierbei nicht berücksichtigt, indem der Vervielfachungsfaktor
gleich Null ist. Der zentrale Fensterpunkt
ist der Visierpunkt. Das Ausgangssignal am Ausgang des
Summierers 103 kann positiv, negativ oder gleich null
sein (im geschlossenen Intevall [-360, +360]; der
größte Wert wird erreicht, wenn eine Hälfte des Bildes
ein Schachbrettmuster betrifft). Das Ergebnis ist gleich
dem Produkt der Summen der Gradienten und des Moments
(in der y-Richtung) des absoluten Werts des Gradienten um
die horizontale Symmetrieachse und in bezug auf den Visierpunkt
(ursprünglich Fenstermitte). Implizit läßt
sich so auch das Moment finden, und durch nicht näher
beschriebene, herkömmliche Teile der Schaltungen kann es
auf Wunsch zurückgefunden werden. In obiger Beschreibung
wird angenommen, daß der Rand des Bilds von 20 × 20
Punkten keinen Beitrag zum Gradienten liefern. Für dieses
Problem gibt es mehrere Lösungen. Die erste ist, daß nicht
so weit geschoben wird, daß der Rand erreicht wird. Dazu
kann die Anzahl der Initialvisierpunkte in nur einem
kleinen Mittelbereich des 20 × 20 Punktteilbilds gelegt
werden. Eine gute Anzahl ist dabei 4 Initialvisierpunkte
an den Positionen (8,8), (8,13), (13,8) und (13,13) und
weiterhin eine Obergrenze für die Anzahl zulässiger Verschiebungen
je Initialvisierpunkt. Eine andere Möglichkeit
ist, daß das Bild aus "schwarzen" Elementen gegen
einen "weißen" Hintergrund besteht und daß zusätzliche
Schieberregisterstellen (siehe oben) ebenfalls als "weiß"
gelten. Eine andere Möglichkeit ist, daß die zusätzlichen
Schieberegisterstellen ursprünglich mit einer "don't care"-
Information gefüllt werden, die niemals ein Signal am
Ausgang eines EXKLUSIV-ODER-Gatters ergibt.
Wenn das erwähnte Moment positiv ist, ist in der
oberen Hälfte des Fensters ein größerer Gradient enthalten
und es muß also aufwärts geschoben werden. Wenn
die Zahl negativ ist, muß das Fenster nach unten geschoben
werden. Wenn die Zahl Null ist (oder wenigstens kleiner
als ein vorgegebener Wert), kann das Fenster, gegebenenfalls
einstweilen, auf gleicher Höhe bleiben. Fig. 4f
und 4g zeigen den Fall der Zentrierung auf den vorspringenden
Winkel eines schwarzen (schraffierten) Teils eines
Bilds. Fig. 4g zeigt hierbei die Gradientenwerte, wobei
die Werte Null fortgelassen sind. Das Ergebnis des Summierers
103 ist in diesem Fall
8 + 6 + 4 + 2 - 2 - 10 - 9 = -1.
Dies ist eine optimale Zentrierung. Auf gleiche Weise wird in den Elementen 113-115 eine spaltenweise Summe der Gradienten bestimmt. Wenn diese Summe positiv ist, muß das Fenster nach rechts geschoben werden. Wenn diese Summe negativ ist, muß das Fenster nach links geschoben werden. In dieser Situation ist die Summe
8 + 6 + 18 + 7 = 39.
Beim Verschieben über eine Stelle nach rechts werden die gebildeten Summen:
103 : -6 115 : +27
noch einmal nach rechts:
103 : -11 115 : +13
noch einmal nach rechts:
103 : -16 115 : -3
einmal nach unten:
103 : 0 115 : 0
8 + 6 + 4 + 2 - 2 - 10 - 9 = -1.
Dies ist eine optimale Zentrierung. Auf gleiche Weise wird in den Elementen 113-115 eine spaltenweise Summe der Gradienten bestimmt. Wenn diese Summe positiv ist, muß das Fenster nach rechts geschoben werden. Wenn diese Summe negativ ist, muß das Fenster nach links geschoben werden. In dieser Situation ist die Summe
8 + 6 + 18 + 7 = 39.
Beim Verschieben über eine Stelle nach rechts werden die gebildeten Summen:
103 : -6 115 : +27
noch einmal nach rechts:
103 : -11 115 : +13
noch einmal nach rechts:
103 : -16 115 : -3
einmal nach unten:
103 : 0 115 : 0
In dieser Position ist der Winkel durch eine gestrichelte
Linie angegeben. Jetzt ist die Zentrierung in beiden Richtungen
optimal. In Fig. 3 enthält das Element 20 die
optimal. In Fig. 3 enthält das Element 20 die
Bestimmung des örtlichen Gradienten für die 9 × 9 Fensterpunkte
also beispielsweise 81mal die Schaltung nach Fig. 4d,
die dabei mit den Informationen eines Blocks von
11 × 11 = 121 Punkten des Schieberegisters 3 arbeitet. Das
Element 21 empfängt die 81 gebildeten Informationen beispielsweise
als einen Dreibitkode und enthält die Teile
nach Fig. 4e. Die Ausgangssignale der Elemente 103 und 115
werden von einer nicht dargestellten Schaltung dreiwertig
gemacht. Diese Schaltung besteht für eine jede der zwei
Koordinatenrichtungen aus zwei Schwellenelementen, die
beispielsweise ein Signal "1" abgeben, wenn das Moment
größer als +4 bzw. kleiner als -4 ist. Wenn die Summe
im Intervall [-4, +4] liegt, ist das Zweibitausgangssignal
somit (0,0) für die betreffende Koordinatenrichtung.
Die Elemente 103 und 115 empfangen beide weiter noch einen
aktivierenden Taktimpuls aus dem Taktgeber 4 auf den
Leitungen 320 bzw. 321. Diese besitzen beispielsweise eine
niedrigere Frequenz (beispielsweise 10mal niedriger) als
die Taktimpulse auf der Leitung 5 a, weil die Elemente
20 und 21 einige Zeit für die Signalverarbeitung benötigen.
Diese Taktimpulse werden vom Element 15 (siehe Fig. 4h)
durchgelassen. Das Element 15 empfängt die Signale aus den
Anschlüssen 315 und 316. Diese Anschlüsse bringen die
entsprechenden Flipflops 322 und 323 in die "1"-Stellung.
Wenn beide Flipflops eine logische "1" liefern, erzeugt
das UND-Gatter 327 mit einem differenzierenden Ausgang
einen logischen "1"-Impuls, um den Durchlaßflipflop 324
in die "1"-Stellung zu bringen, so daß die Durchlaß-UND-Gatter
325 und 326 für die erwähnten alternierenden
Taktimpulsreihen freigegeben werden. Eine andere Lösung
besteht darin, daß die Signalen auf den Leitungen 315
und 316 je einen monostabilen Multivibrator ansteuern.
Diese Multivibratoren haben eine astabile Zeit, die etwas
größer als die Halbperiode zwischen zwei aufeinanderfolgenden
Taktimpulsen für die Elemente 304 und 314 ist.
Die Ausgänge dieser monostabilen Multivibratoren steuern
das Gatter 327 an, so daß die Flipflops 322 und 323 unterbleiben
können. In der dargestellten Schaltung werden die
Flipflops 322, 323 und 324 von einem Impuls am Eingang 328
auf Null gestellt. Der Ausgangsimpuls des Gatters 327 kann
dazu verwendet werden, den Taktgeber 302 über den Eingang
317 anzuhalten und die Selektoren 13 A und 14 A für die
Signale auf der Leitung 23 A durchlässig zu machen. In
Fig. 2 sind diese Selektoren der Kürze halber nicht angegeben.
Die beiden Zweibitausgangssignale des Elements 21
steuern über die Leitungen 23 A die Adreßzähler 13 und 14
auf gleiche Weise an wie die Ausgangssignale der Vergleichselemente
304 und 314. Das Fenster ist im Ausführungsbeispiel
als der Absolutwert der beiden Momente unter 5 zentriert.
Wenn das Fenster zentriert ist, jedoch braucht
dies nicht sofort zu erfolgen, können die Flipflops des
Elements 15 wiederum in die sperrende Stellung (0) über
die Leitung 328 gebracht werden. Im Ausführungsbeispiel
erfolgt dieses Rückstellen dadurch, daß die vom Gatter 325
durchgelassenen Impulse in einem Teiler 174 durch sechs
geteilt werden: Dies bietet den Vorteil, daß das Fenster
beim Zentrieren nicht soweit "wegläuft", daß andere
Initialvisierpunkte passiert werden (die Anzahl 6 ist
selbstverständlich anders wählbar). Das Ausgangssignal
des Teilers 174 erscheint am Anschluß 328 und kann auch
dazu verwendet werden, die Beending der Zentrierung anzugeben.
Nunmehr aktiviert dieses letzte Signal (auf der Leitung
24 in Fig. 3) einen Vergleichszyklus, zunächst durch
ein Lesesteuersignal über das ODER-Gatter 27, wodurch die
Adresse 0 im Speicher 25 ausgelesen wird. Der Speicher 25
hat eine Anzahl von Adreßstellen. An einer jeden dieser
Adreßstellen muß ein örtliches Beispielmuster gespeichert
werden. Weiter aktiviert das Signal auf der Leitung 24
noch das Vergleichselement 26, indem darin der Flipflop
180 gesetzt wird (Fig. 4i). Das Element 26 empfängt über
einen Abzweig 19 a des Bündels 19 die Information der
9 × 9 zentralen Fensterpunkte. Wenn es aktiviert ist, erzeugt
es unter der Mitsteuerung durch ein Signal des
Taktgebers 4 ein zweiwertiges Signal "gleich" oder "ungleich".
In einer einfachen Ausführung wird jeweils die
zweiwertige Information eines Fensterpunkts mit einer aus
dem Speicher 25 ausgelesenen Information verglichen, die
über die Datenleitung 23 der Vergleichsanordnung 26 zugeführt
wird. Die Anordnung 26 kann je Fensterpunkt einen
EXKLUSIV-ODER-Gatter enthalten (Fig. 4i zeigt der Einfachheit
halber nur drei: 182-184), die den Vergleich
durchführen und der Ausgangssignale dem Summierer 185
zugeführt werden. Das Ausgangssignal dieses Summierers
wird dabei in der Diskriminatorschaltung 186 bearbeitet.
Diese Schaltung wird über das UND-Gatter 181 von einem
Taktimpuls angesteuert.
In diesem Zusammenhang ist die Fig. 4j in Verbindung
mit Fig. 5a-c eine weitere Detaillierung der
Behandlung im Element 26 dargestellt. Zunächst enthält die
Figur die Elemente 106-111 nach Fig. 4d. Dies können
also die Teile des Elements 20 in Fig. 3 sein. Am Ausgang
des Elements 111 erscheint also eine Gradientengröße,
die über das Leitungsbündel 330 auch dem Element 26 zugeführt
werden kann. Je Bildpunkt ist der Wertbereich im
geschlossenen Intervall [0,4]. Weiter ist eine Parallelanordnung
vorgesehen, die im Element 137 die symbolisierten
Informationswerte von fünf entsprechenden, in den Speicher
25 eingeschriebenen Beispielpunkten enthält. Auch hiervon
wird mit Hilfe von vier EXKLUSIV-ODER-Gattern 138-141
und des Summierers 142 der Gradientenwert bestimmt. Elemente
143 und 144 bilden aus den empfangenen Signalen ein
binäres Signal, das also bedeutet: Gradient = 0 oder ≠ 0.
Das Element 145 ist ein EXKLUSIV-ODER-Gatter, das die
Informationen der zwei zentralen Punkte miteinander vergleicht
und eine "0" abgibt, wenn diese zwei Informationen
übereinstimmen: Dieses Gatter entspricht also den
Gattern 182-184 in Fig. 4i. Das Element 146 ist ein
logisches NICHT-UND-Gatter, das eine "0" abgibt, wenn für
beide Zentralpunkte der Gradient ungleich Null ist. Sonst
erzeugt dieses Gatter eine logische "1". Das UND-Gatter 147
gibt bei eine logische "1" ab, wenn die zwei Punkte verschieden
sind, und außerdem ist für zumindest einen dieser
Punkte der Gradient "0". Eine derartige Anordnung kann also
für ein jedes der EXKLUSIV-ODER-Gatter in Fig. 4i vorgesehen
werden.
Bei einem Bild mit Grauwerten kann die Gleichheit
wie folgt detektiert werden: Für den zu untersuchenden
Bildpunkt bestimmt sein Grauwert zusammen mit den Grauwerten
der 4 Nachbarpunkte ein zulässiges Graupegelintervall.
Gleiches erfolgt für das gespeicherte Beispielmuster.
Wenn sich die Grauwerte des Bildpunkts und des
Beispielpunkts im gegenseitigen zulässigen Graupegelintervall
befinden, wird dies zu einer Gleichheit. Bei
einem großen örtlichen Gradienten sind also auch größere
Unterschieden in den Grauwerten des Bildpunkts und des
Beispielpunkts zulässig.
In Fig. 5a-d ist ein anderer Aufbau des Fensters
dargestellt; dieses Fenster zählt einerseits wiederum 81
Punkte, aber nähert sich mehr der Kreisform. Unter manchen
Bedingungen gibt dies eine bessere Verwirklichung. In
Fig. 5a ist ein Rand eines dunklen Bildteils dargestellt.
Die gezeigte Position ist eine der zwei Positionen, in
denen die Zentrierung optimal ist (der Rand kann auch um
eine Spalte nach rechts verschoben sein). In Fig. 5b ist
ein derartiger Rand gezeigt, der z. B. aus einem Objekt
herrührt, das etwas gedreht ist. Fig. 5a und Fig. 5b besitzen
einen Unterschied von 5 Punkten. Fig. 5c zeigt
einen Rand mit einem Vorsprung. Die Zentrierung ist hier
nicht optimal, denn der Rand müßte eigentlich weiter nach
rechts im Fenster liegen aber dies wird hier vernachlässigt.
Der Unterschied ist auch jetzt 5 Punkte. Die Anordnung
nach Fig. 4j berechnet den Unterschied zwischen Fig. 5a/b
als 0 zwischen Fig. 5a und c als 4. So wird die Anordnung
für geringe Verschiebungen im Bild unempfindlich. Obiges
bildet die Rechtfertigung für die Verwendung der verwickelten
Anordnung nach Fig. 4j über den EXKLUSIV-ODER-Gattern
nach Fig. 4i und für das entsprechende kompliziertere
Herantreten bei mehreren Grauwerten.
Wenn beim Vergleichen im Element 26 das Ausgangssignal
des Summierers 185 (dieser kann also die Signale
der EXKLISIV-ODER-Gatter 182-184 oder auch der
UND-Gatter 147 in Fig. 4j erhalten) größer ist als ein
Mindestwert, wird dies in ein "ungleich"-Bit umgewandelt.
Die Anordnung 26 kann die 9 × 9 zentral liegenden Zenterpunkte
oder eine andere Auswahl empfangen, wie bei Fig. 5a
dargelegt ist. Unter der Mitsteuerung durch ein Taktsignal
(wiederum mit einer verhältnismäßig niedrigen Taktfrequenz)
über das Gatter 181 erscheint bei Übereinstimmung
das "gleich"-Signal auf der Leitung 28 und aktiviert die
Notizanordnung 29 in Fig. 3. In einer einfachen Ausführung
ist dies ein Speicher mit genau soviel Adreßstellen wie
der Speicher 25. Das Signal auf der Leitung 28 arbeitet
dabei zur Steuerung eines Lese-, Modifizier-, Schreibzyklus,
in dem der Speicher 29 vom Adreßregister 30 des
Speichers 25 über die Leitung 30 A adressiert wird und die
Modifizierung der adressierten Speicherstelle eine Erhöhung
um "1" ist. So wird im Speicher 29 eine Liste zum
Erkennen von Teilbildern aufgebaut. Aus dieser Liste
können in einer folgenden Stufe nähere Schlüsse über das
ganze Bild gezogen werden. Diese nächste Stufe fällt nicht
in den Rahmen der Erfindung und wird deshalb nicht beschrieben.
Die erwähnte Erkennung kann als erstes Stoppsignal den
Zyklus beenden und einen folgenden Visierpunkt aktivieren.
Eine andere Möglichkeit dabei ist, daß die Erkennung in
einem parallel zum Speicher 29 angeordneten Halteelement
ein Markierungssignal setzt, das eine spätere Speicherung
des örtlichen Musters als "neuen" Musters im Speicher 25
blockieren wird. Auf entsprechende Weise erscheint das
Signal "ungleich" auf der Leitung 31 und aktiviert den
Speicher 27 über das ODER-Gatter 27 erneut, um ein folgendes
Muster auszugeben. Dabei wird über ein Signal auf der
Leitung 32 das Adreßregister um eine Einheit erhöht. Über
die Leitung 33 wird die Adresse aus dem Adreßregister 30
dem Vergleichselement 35 zugeführt. Dieses Element erhält
weiter die Stellung des Zählers 34. Diese Stellung ist um
eine Einheit höher als die höchste belegte Adresse. Wenn
eine Ungleichheit festgestellt wird, erzeugt der Vergleicher
35 kein Signal, denn dabei muß der Speicher 25 weiter
durchgearbeitet werden. Wenn eine Gleichheit festgestellt
wird, bedeutet dies, daß alle besetzten Adreßstellen
im Speicher 25 zum Vergleich zugeführt sind, ohne daß
eine Übereinstimmung detektiert worden ist. In einer einfachen
Ausführung kann dieses "gleich"-Signal als zweites
Stoppsignal arbeiten, so daß anschließend ein neuer
Initialvisierpunkt aktiviert wird. In einer selbstorganisierenden
Auführung arbeitet dieses "gleich"-Signal als
Schreibsteuersignal auf der Leitung 36. Dieses Signal
steuert auf der nächsthöheren Adresse im Speicher 25 eine
Schreibaktion, wobei die Informationen auf der Leitung 19 A
als Daten arbeiten. Die Schreibaktion kann beispielsweise
auf der Vorderflanke des impulsförmigen Signals auf der
Leitung 36 erfolgen. Die Rückflanke dieses Signals steuert
bei einer Erhöhung des Zählers 34. Gleichzeitig mit dem
Schreiben des neuen Musters im Speicher 25 kann auch die
bereits erwähnte Schreibaktion im Speicher 29 erfolgen.
Der Kürze halber ist dies nicht weiter angegeben. Das
"gleich"-Signal auf der Leitung 28 und das Inkrementbildungssignal
auf der Leitung 36 werden im ODER-Gatter 37
kombiniert. Bei dem früher erwähnten Markierungssignal
(daß in einem Halteelement gespeichert ist) entfällt das
ODER-Gatter 37, aber zweigt sich die Leitung 36 erst aus
einem Sperrgatter ab, das vom Element 35 und von einem
sperrenden Signal aus dem erwähnten Halteelement betätigt
wird. Nach kurzer Verzögerung erhält das erwähnte Halteelement
wieder ein Rückstellsignal. Das Element 38 wird
stets direkt vom Vergleicher 35 erregt. Das Element 38
verzögert ein empfangenes Signal kurze Zeit. Darauf wird
es dem Vergleichselement 26 (siehe Fig. 4i) zugeführt, um
dieses mit Hilfe der Rückstellung des Flipflops 180 außer
Betrieb zu setzen, wodurch das UND-Gatter gesperrt ist.
Weiter wird das Signal des Elements 38 dem Eingang R des
(zählenden) Adreßregisters 30 zugeführt, um es in die
Nullstellung zurückzubringen. Schließlich wird das Signal
des Elements 38 dem Adreßregister 9 A des Speichers 9
zugeführt, um es um eine Einheit zu erhöhen, und es wird
dem ODER-Gatter 10 zugeführt, um auf der erhöhten Adresse
eine Leseaktion einzuleiten. Weiter wird das Signal des
Gatters 10 wieder den Ladeeingängen der Register 303 und
311 und dem Aktivierungseingang des Taktgebers 302
(in Fig. 4c) zugeführt. So wird eine neue Vergleichsoperation
gestartet. Wenn der Adreßzähler des Speichers eine
vorgegebene Stellung erreicht hat, erscheint an dessen
Ausgang 39 das Signal "fertig". Dies kann zum Starten
des Eingebens eines neuen Bilds benutzt werden (also als
das Signal RAZ, wobei ein neuer Anfangswert dem Element 1 A
zugeführt werden muß), um ein sich zeitlich änderndes
Bild wiederum einzugeben, oder als Signal zu einem Benutzer
(Operateur). Auch hält dieses Signal nach Bedarf den Taktgeber
302 über die Leitung 317 an. Das Signal des Anschlusses
39 kann dazu über ein nicht dargestelltes
ODER-Gatter mit dem Ausgangssignal des Elements 15 kombiniert
werden.
In obiger Beschreibung gab es einen festen Zusammenhang
zwischen den Speichern 25 und 29. Ein komplizierterer
Aufbau ist folgender: Beim Nicht-Erkennen ist der Vorgang
wie oben beschrieben. Wenn eine Gleichheit auftritt, erhält
der Speicher 29 über die Leitung 30 A die Adresse im
Speicher 25 (womit das Beispiel bekannt ist). Außerdem erhält
der Speicher 27 über einen Abzweig der Adreßzähler
13 und 14 (nicht dargestellt) seinen Inhalt, während das
Signal "gleich" auf der Leitung 28 eine Schreibaktion
steuert und anschließend das Adreßregister um eine Einheit
erhöht. So kann ein Gesamtbild erkannt werden, wenn
genügend Einzelheiten des Gesamtbilds an Positionen mit
Beziehungen untereinander detektiert werden. Es ist dabei
möglich an Hand zweier oder mehrerer Einzelheiten eines
Werkstücks die Orientierung und Lage zu bestimmen, sogar
wenn eine gemischte Reihe verschiedener Werkstücke zugeführt
wird. An sich ist die Steuerung einer Werkzeugmaschine
durch ein erkanntes Werkstückdetail der
DE-OS 25 44 233 der Anmelderin bekannt, aber dabei handelt
es sich nur um ein einziges festes Detail. Wenn alle
Initialvisierpunkte behandelt sind, enthält der Speicher
29 dabei für alle in den Speicher 25 geschriebenen Beispiele
eine Liste, ob diese Beispiele erkannt sind oder
nicht und an welcher Stelle sie erkannt wurden (es
dürfen dabei keine zwei gleichen Werkstücke in gleicher
Orientierung im allgemeinen Bild ergeben).
Zur weiteren Erläuterung diene folgendes.
In Fig. 5d ist eine gut zentrierte Abbildung dargestellt,
aber diese Zentrierung ist instabil: Wenn das
Zenter um eine Spalte nach rechts geschoben wird, ergibt
dies einen weiteren Verschiebungsbefehl nach rechts. Durch
auffolgende Verschiebungen kann sich das Fenster dabei
auf den rechten Rand der Abbildung zentrieren. Eine weitere
Anforderung für ein zu speicherndes Muster kann dabei
sein, daß der Empfangbereich groß genug ist, also der
Bereich von dem aus auch dieses Muster zentriert wird. Eine
Anforderung kann beispielsweise sein, daß der Fangbereich
mindestens zwei Initialvisierpunkte enthalten muß. Obiger
Vorgang kann also dadurch verwirklicht werden, daß erst
bei der zweiten Begegnung mit einem Muster (das erste Mal
ergibt die Speicherung im Speicher 25 und das zweite Mal
ergibt die Erkennung) ein Gültigkeitsbit zugeführt wird.
Eine bevorzugte Möglichkeit dabei ist das Zufügen zusätzlicher
Initialvisierpunkte an einen Zentrierpunkt, beispielsweise
in geringerer Entfernung als zwischen benachbarten
Visierpunkten. Der Zentrierpunkt wird nur angenommen,
wenn er, ausgehend von einer Mindestanzahl zusätzlicher
Initialvisierpunkte, wiedergefunden wird. Dies ist
auf zwei Weisen möglich:
- a) das gleiche Muster wird wiedergefunden, unabhängig von der Stelle, an der es wiedergefunden wird. Dies ist zum Wiederfinden von Mustern mit einer indifferenten Stabilität vorteilhaft (siehe Fig. 5d weiter unten). D. h. also, daß eine Erkennung für den höchsten Stand des Adreßzählers 50 auftritt, der noch eine gefüllte Speicherstelle angibt. Ein Saldobilder ist dabei vorgesehen, dessen Stand erhöht wird, wenn gerade bei dieser letzten Adresse Erkennung auftritt. Also: es gibt Erkennung und weiter gibt der Vergleicher 35 ein "gleich"-Signal ab.
- b) der gleiche Zentrierpunkt wird wiedergefunden. Dabei wird der Stand der Adreßzähler 13 und 14 mit den Daten des früher gefundenen Zentierpunkts verglichen, welche Daten in den Speicher 29 eingeschrieben sein können, wie oben bereits erwähnt. Wenn eine Gleichheit vorhanden ist, wird auch hier ein Saldozähler erhöht. Vorteilhaft ist die räumliche Trennung zwischen Initialvisierpunkten bei 5 Punkten in x- und y-Richtung. Nahe einem Zentrierpunkt werden dabei vier zusätzliche Initialvisierpunkte in Abständen von ± 3 Punkten in der x- oder y-Richtung erzeugt. Diese Punkte werden durch die Zuführung genauso vieler Schrittsignale zu den Adreßzählern 13 und 14 gebildet. Wenn jedesmal das Saldo erhöht wird, ist es ein interessierendes örtliches Muster, was beispielsweise von einem Überlaufsignal des Saldozählers signalisiert wird. Wenn dieses Überlaufsignal nicht erzeugt wird, ist es ein nicht interessierendes Muster. Durch die Rückstellung des Zählers 34 um eine Einheit kann es ungültig gemacht werden. In beiden Fällen gibt das Element 15 nach dem Zentrieren vom vierten zusätzlichen Initialvisierpunkt aus das Signal "weiterarbeiten". Der erwähnte Vorgang verringert stark die Anzahl der im Speicher 25 geschriebenen Muster.
Im Zusammenhang mit obiger Beschreibung ist die
Zentrierung in der y-Richtung in Fig. 5d indifferent. In
diesem Fall handelt es sich bei der Erzeugung der zusätzlichen
Visierpunkte darum, ob das gleiche örtliche Muster
wiedergefunden wird, gegebenenfalls an einer anderen
Koordinatenposition.
Eine weitere Verbesserung wird im Zusammenhang mit
Fig. 5b und 4k beschrieben. In Fig. 5b gibt eine gestrichelte
Linie einen Mittelbereich an, in dem sich die eigentliche
relevante Information befindet: der Rand und der
Bereich nahe dem Rand zwischen schwarz und weiß. Das
gestrichelte Linienpaar gibt eine Maske an, nur der
Zwischenbereich wird zum späteren Vergleich zugeführt, der
Rest wird maskiert, beispielsweise durch eine im Speicher
25 vorgesehene ergänzende Information, die jeweils für
einen gespeicherten Punkt "don't care" angeben kann. So
ist also ein Punkt relevant, wenn entweder ein koordinatenweiser
Gradient an diesem Punkt vorhanden ist oder ein
koordinatenweiser Gradient für eine (oder mehrere) seiner
vier direkten Nachbarn in der x- und y-Richtung vorhanden
ist. In Fig. 4k ist eine Anordnung 190-196 der Gradienteninformationen
pro Punkt angegeben. Dies ist also
das binärkodierte Ausgangssignal des Summierers 111 in
Fig. 4d. Das ODER-Gatter 199 empfängt die Informationen der
Elemente 191, 193-196 und bildet die Information für
den zentralen Punkt 206: Wenn sie eine "1" ist, liegt der
Punkt 194 also in der Maske. Für die anderen Punkte ist nur
ein Teil der Maskenbildung angegeben. Diese Anordnung kann
also vor dem Dateneingang des Speichers 25 eingefügt sein,
um pro Punkt Information auch eine Maskeninformation darzustellen:
Wenn sie eine "1" ist, aktiviert sie nach dem
Ausgeben mit dem UND-Gatter 147 in Fig. 4j, so daß ein
Unterschied zum Ausdruck kommen kann. Wenn die Maskeninformation
"0" ist, gibt es immer Übereinstimmung. Eine
Schaltung nach Fig. 4k kann auch im Datenweg zwischen dem
Speicher 25 und dem Vergleicher 26 vorhanden sein. So ist
eine zweite Fensteranordnung realisiert.
In Fig. 6a-c sind Flußdiagramme der Verarbeitung
der Bilddaten in der Anordnung nach Fig. 3 dargestellt. Die
Blöcke haben folgende Bedeutungen:
401:
Start: hier startet das Eingeben des 20 × 20 Punktebilds;
402:
den Zähler auf Null stellen;
403:
Erregung des Schieberegisters 3 durch Taktimpulse;
404:
einen Bildpunkt eingeben;
405:
Zählerstellung (7) erhöhen;
406:
Counter = 400?: ist das Teilbild ausgegeben?
407:
Speicher 9 adressieren;
408:
die Adressen (x, y) in die Register 303 und 304 einschreiben;
409:
Taktgeber 302 starten;
410:
einen positiven, negativen oder Nullschritt in der
x-Richtung unter der Steuerung des Vergleichselements
304 machen;
411:
das gleiche in der y-Richtung unter der Steuerung des
vergleichselements 214 machen;
412:
ist das Schieberegister 3 gut eingestellt?
413:
Taktgeber 302 stoppen;
414:
die Anordnung 21 für die Bestimmung der Momente durch
die Sperrung der Einheit 15 aktivieren;
415:
die Stellung des Zählers 174 erhöhen;
416:
ist der Zähler 174 vollgezählt?
417:
für die Punkte des Fensters den punktweisen Gradienten
bestimmen (Element 20);
418:
Im Element 21 die Momente des Gradienten in der x- und
y-Richtung bestimmen;
419:
liegt eines der Momente (oder beide) zu weit von Null
entfernt?
420:
einen Schritt in der ± x-Richtung, ± y-Richtung oder
einen Schritt Null machen, um so das erwähnte Moment
zu verkleinern;
421:
Vergleichselement 26 erregen;
422:
den Speicher 25 für ein Referenzmuster auslesen;
423:
entspricht das unbekannte Muster dem gespeicherten
Muster;
424:
den Stand des Adreßzählers 30 erhöhen;
425:
ist die Stellung des Adreßzählers gleich dem Inhalt
des Zählers 34?
426:
das unbekannte Muster als neues Referenzmuster in den
Speicher 25 einschreiben;
427:
die Stellung des Zählers 34 erhöhen;
428:
die Adresse in den Speicher 25 und die Koordinaten der
Register 13 und 14 in den Speicher 29 einschreiben;
429:
Sperren des Vergleichselements 26 durch Zurückstellen
des Elements 15 in die sperrende Stellung;
430:
die Stellung des Adreßzählers des Speichers 9 für
die Initialvisierpunkte erhöhen;
431:
sind alle Initialvisierpunkte verarbeitet?
432:
stopp.
Eine von der obigen Lösung abweichende Lösung ist:
421:
Adreßzähler 50 auf Null stellen;
422:
den Speicher 25 für ein Referenzmuster auslesen und
das Vergleichselement 26 aktivieren.
Claims (10)
1. Anordnung zum Erkennen eines Musters in einer vorgegebenen
Anzahl nach mindestens einer Koordinate geordneter
digitaler Signale mit einem ersten Speicher (3) zum Aufnehmen
der Signale, einem zweiten Speicher (25) zum Aufnehmen
der zu erkennenden Muster und einem Vergleicher
(26), dessen Eingänge an Datenausgänge des ersten und
zweiten Speichers (3, 25) angeschlossen sind und der
abhängig vom Vergleichsergebnis ein Unterschiedssignal
oder ein Übereinstimmungssignal abgibt,
dadurch gekennzeichnet,
daß eine Fensteranordnung (130 bis 135, 136 A) aus der vorgegebenen Anzahl digitaler Signale im ersten Speicher (3) eine zusammenhängende Teilmenge, ausgehend von vorgegebenen Koordinaten, auswählt und dem Vergleicher (26) zuführt,
daß eine Schrittanordnung (13, 14) das durch die Fensteranordnung (130 bis 135, 136 A) gebildete Fenster über mindestens eine Koordinate der digitalen Signale im ersten Speicher (3) verschiebt und somit jeweils eine verschobene Teilmenge der digitalen Signale dem Vergleicher (26) zuführt,
daß eine Gradientenbestimmungsanordnung (20; 107 bis 111) für vorgegebene Koordinatenwerte im Fenster je den absoluten Werten des Gradienten der digitalen Signale in mindestens einer Koordinatenrichtung bestimmt, und daß ein Momentbestimmer (21; 101 bis 103, 113 bis 115) aus diesen absoluten Werten deren Moment in bezug auf mindestens einen vorgegebenen Visierpunkt im Fenster bestimmt und beim Erreichen eines vorgegebenen Mindestwertes des Moments zur Anzeige eines örtlich hohen Werts des über die ausgewählte Teilmenge der digitalen Signale gebildeten Gradienten je Koordinatenrichtung ein Ausgangssignal (24; 328) erzeugt, das den Vergleicher (26) aktiviert.
daß eine Fensteranordnung (130 bis 135, 136 A) aus der vorgegebenen Anzahl digitaler Signale im ersten Speicher (3) eine zusammenhängende Teilmenge, ausgehend von vorgegebenen Koordinaten, auswählt und dem Vergleicher (26) zuführt,
daß eine Schrittanordnung (13, 14) das durch die Fensteranordnung (130 bis 135, 136 A) gebildete Fenster über mindestens eine Koordinate der digitalen Signale im ersten Speicher (3) verschiebt und somit jeweils eine verschobene Teilmenge der digitalen Signale dem Vergleicher (26) zuführt,
daß eine Gradientenbestimmungsanordnung (20; 107 bis 111) für vorgegebene Koordinatenwerte im Fenster je den absoluten Werten des Gradienten der digitalen Signale in mindestens einer Koordinatenrichtung bestimmt, und daß ein Momentbestimmer (21; 101 bis 103, 113 bis 115) aus diesen absoluten Werten deren Moment in bezug auf mindestens einen vorgegebenen Visierpunkt im Fenster bestimmt und beim Erreichen eines vorgegebenen Mindestwertes des Moments zur Anzeige eines örtlich hohen Werts des über die ausgewählte Teilmenge der digitalen Signale gebildeten Gradienten je Koordinatenrichtung ein Ausgangssignal (24; 328) erzeugt, das den Vergleicher (26) aktiviert.
2. Anordnung nach Anspruch 1,
dadurch gekennzeichnet, daß eine Voreinstellschrittanordnung
(9, 303, 304, 305, 311) vorgesehen ist, die mit
Hilfe einer vorgegebenen Anzahl von Voreinstellschritten
genauso viele Anfangspositionen der Fensteranordnung (130
bis 135, 136 A) zuführt und daß ein Ausgang (315, 316) der
Voreinstellschrittanordnung (9, 303, 304, 305, 311) mit
einem Eingang (320, 321) des Momentbestimmers (21, 101 bis
103, 113 bis 115) zum Aktivieren des letztgenannten erst
nach dem Erreichen der Anfangsposition verbunden ist.
3. Anordnung nach Anspruch 2,
dadurch gekennzeichnet, daß eine Rückkopplungsverbindung
(23 A) zwischen einem Ausgang des Momentbestimmers
(21, 101 bis 103, 113 bis 115) und einem Aktivierungseingang
(312, 313) der Schrittanordnung (13, 14)
vorgesehen ist, um dieser ein Schrittsignal zuzuführen.
4. Anordnung nach Anspruch 3,
dadurch gekennzeichnet, daß ein Beendungselement (174)
vorgesehen ist, das die Anzahl der aus einer Anfangsposition
der Schrittanordnung (13, 14) zugeführten
Schrittsignale auf eine Obergrenze beschränkt.
5. Anordnung nach einem der Ansprüche 1 bis 4,
dadurch gekennzeichnet, daß der Vergleicher (26) mit
Mitteln (145 bis 147) versehen ist, die bei einem Unterschied
eines zum Vergleich zugeführten Signalpaars aus dem
ersten und dem zweiten Speicher (3, 25) für einen bestimmten
Koordinatenwert doch ein Übereinstimmungssignal
erzeugen, wenn die umgebenden Signale beider Speicher für
diesen Koordinatenwert einen koordinatenweise vorgegebenen
Gradienten im Signalwert aufweisen.
6. Anordnung nach einem der Ansprüche 1 bis 5,
dadurch gekennzeichnet, daß ein dritter Speicher (29) vorgesehen
ist, der unter der Steuerung eines Übereinstimmungssignals
aus dem Vergleicher (26) die dabei
erreichten Koordinatenwerte der Schrittanordnung (13, 14)
und die Adresse für den zweiten Speicher (25) speichert.
7. Anordnung nach einem der Ansprüche 2 bis 6,
dadurch gekennzeichnet, daß ein Zyklusgenerator (180, 181)
die Muster nacheinander aus dem zweiten Speicher (25) dem
Vergleicher (26) zuführt, daß das Übereinstimmungssignal
ein erstes Stoppsignal zum Signalisieren einer Erkennung
darstellt und ein Unterschiedsignal als Fortschaltsignal
weitere im zweiten Speicher (25) enthaltene Muster dem
Vergleicher (26) zuführt, bis alle Muster zugeführt worden
sind, wobei ein zweites Stoppsignal die digitalen Signale
an einem Ausgang (19 A) des ersten Speichers (3) in den
zweiten Speicher (25) an einer unbenutzten Speicherstelle
einschreibt.
8. Anordnung nach Anspruch 7,
dadurch gekennzeichnet, daß ein vierter Speicher vorgesehen
ist, der nach dem Zuführen aller in dem zweiten
Speicher (25) gespeicherten Muster eine dabei auftretende
Referenzposition der Fensteranordnung einstweilen
speichert, und daß eine Wiederholungsanordnung vorgesehen
ist, die zumindest eine zusätzliche Anfangsposition
erzeugt, und daß ein Vergleichselement (35) vorgesehen
ist, das nach dem erneuten Erreichen des Mindestwerts des
erwähnten Moments danach die dabei auftretenden Referenzposition
der Fensteranordnung mit der in den vierten
Speicher gespeicherten Referenzposition vergleicht, ein
Saldo von Übereinstimmungen bildet und schließlich das
zweite Stoppsignal nach dem Erreichen eines vorgegebenen
Minimumsaldos erzeugt, wobei von der zumindest einen
zusätzlichen Anfangsposition ausgegangen wird.
9. Anordnung nach Anspruch 7,
dadurch gekennzeichnet, daß ein fünfter Speicher vorgesehen
ist, der unter der Steuerung des erwähnten zweiten
Stoppsignals ein Vorläufigkeitsmarkierungssignal speichert
und ein Saldo aktualisiert, und daß eine Wiederholungsanordnung
vorgesehen ist, die dabei zumindest eine zusätzliche
Anfangsposition erzeugt und durch ein nachfolgendes
erstes Stoppsignal für das in den zweiten Speicher (25)
zuletzt eingeschriebene Muster das Saldo erhöht und so,
ausgehend von der erwähnten zumindest einen zusätzlichen
Anfangsposition, nur beim Erreichen eines vorgegebenen
Minimumsaldos das erwähnte Vorläufigkeitsmarkierungssignal
zurückstellt, jedoch zum anderen das letztgenannte Muster
ungültig macht.
10. Anordnung nach einem der Ansprüche 1 bis 9,
dadurch gekennzeichnet, daß eine zweite Fensteranordnung
an einen Datenanschluß des zweiten Speichers (25) angeschlossen
ist, die die aktivierte Zuführung von Daten zum
Vergleich (26) auf Koordinatenpositionen eines in den
zweiten Speicher (25) einzuschreibenden Musters beschränkt,
für das ein vorgegebener koordinatenweiser
Gradient des Signalwerts oder bei einer benachbarten
Koordinatenposition ein vorgegebener koordinatenweiser
Gradient des Signalwerts detektiert ist.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
NL7810943A NL7810943A (nl) | 1978-11-03 | 1978-11-03 | Lerende inrichting voor het herkennen van patronen van digitale signalen. |
Publications (2)
Publication Number | Publication Date |
---|---|
DE2943749A1 DE2943749A1 (de) | 1980-05-14 |
DE2943749C2 true DE2943749C2 (de) | 1988-06-16 |
Family
ID=19831832
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE19792943749 Granted DE2943749A1 (de) | 1978-11-03 | 1979-10-30 | Lernende anordnung zum erkennen von mustern digitaler signale |
Country Status (6)
Country | Link |
---|---|
US (1) | US4327354A (de) |
JP (1) | JPS5566052A (de) |
DE (1) | DE2943749A1 (de) |
FR (1) | FR2440584B1 (de) |
GB (1) | GB2036400B (de) |
NL (1) | NL7810943A (de) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE4141880C1 (de) * | 1991-12-18 | 1993-03-11 | Hendrik Hoefer |
Families Citing this family (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4434502A (en) | 1981-04-03 | 1984-02-28 | Nippon Electric Co., Ltd. | Memory system handling a plurality of bits as a unit to be processed |
JPS60204086A (ja) * | 1984-03-28 | 1985-10-15 | Fuji Electric Co Ltd | 物体識別装置 |
JP2607457B2 (ja) * | 1984-09-17 | 1997-05-07 | 株式会社東芝 | パターン認識装置 |
DE3580918D1 (de) * | 1984-12-14 | 1991-01-24 | Sten Hugo Nils Ahlbom | Anordnung zur behandlung von bildern. |
NL8500172A (nl) * | 1985-01-23 | 1986-08-18 | Philips Nv | Beeldverwerkingsinrichting voor het op echte-tijd basis bewerken en herkennen van tweedimensionale beelden, en beeldverwerkingssysteem bevattende tenminste twee in serie verbondene van zulke beeldverwerkingsinrichtingen. |
US4853971A (en) * | 1985-03-18 | 1989-08-01 | Dainippon Screen Mfg. Co., Ltd. | Method and apparatus for processing image data |
JPH0778823B2 (ja) * | 1985-12-09 | 1995-08-23 | 株式会社応用計測研究所 | 画像処理方法 |
US4887304A (en) * | 1987-09-30 | 1989-12-12 | Raytheon Company | Library image optimization |
US5072452A (en) * | 1987-10-30 | 1991-12-10 | International Business Machines Corporation | Automatic determination of labels and Markov word models in a speech recognition system |
US5103485A (en) * | 1988-03-29 | 1992-04-07 | Canon Kabushiki Kaisha | Pattern information reading apparatus |
US5027422A (en) * | 1988-08-29 | 1991-06-25 | Raytheon Company | Confirmed boundary pattern matching |
US5173949A (en) * | 1988-08-29 | 1992-12-22 | Raytheon Company | Confirmed boundary pattern matching |
US5168530A (en) * | 1988-08-29 | 1992-12-01 | Raytheon Company | Confirmed boundary pattern matching |
US5168529A (en) * | 1988-08-29 | 1992-12-01 | Rayethon Company | Confirmed boundary pattern matching |
US5052045A (en) * | 1988-08-29 | 1991-09-24 | Raytheon Company | Confirmed boundary pattern matching |
US5063521A (en) * | 1989-11-03 | 1991-11-05 | Motorola, Inc. | Neuram: neural network with ram |
JP2867055B2 (ja) * | 1990-01-29 | 1999-03-08 | 富士写真フイルム株式会社 | エッジ判定方法および装置 |
US5058190A (en) * | 1990-09-14 | 1991-10-15 | The United States Of America As Represented By The Secretary Of The Navy | Selective readout of a detector array |
DE4133590A1 (de) * | 1991-07-03 | 1993-01-14 | Bosch Gmbh Robert | Verfahren zur klassifikation von signalen |
US5315668A (en) * | 1991-11-27 | 1994-05-24 | The United States Of America As Represented By The Secretary Of The Air Force | Offline text recognition without intraword character segmentation based on two-dimensional low frequency discrete Fourier transforms |
JPH05328121A (ja) * | 1992-05-20 | 1993-12-10 | Ricoh Co Ltd | 画像処理方法およびその装置 |
US5761440A (en) * | 1994-09-15 | 1998-06-02 | International Business Machines Corporation | System and method utilizing multiple search trees to route data within a data processing network |
US6568581B2 (en) * | 2001-03-15 | 2003-05-27 | Asm Technology Singapore Pte. Ltd. | Detection of wire bonding failures |
US20070250532A1 (en) * | 2006-04-21 | 2007-10-25 | Eastman Kodak Company | Method for automatically generating a dynamic digital metadata record from digitized hardcopy media |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
USRE25679E (en) * | 1955-02-14 | 1964-11-10 | System for analysing the spatial distribution of a function | |
NL226945A (de) * | 1957-04-17 | 1900-01-01 | ||
CA947428A (en) * | 1969-12-15 | 1974-05-14 | William H. Hart | Method and system for identifying patterns |
JPS5035379B1 (de) * | 1970-05-25 | 1975-11-15 | ||
DE2113264C3 (de) * | 1971-03-19 | 1975-11-06 | Siemens Ag, 1000 Berlin Und 8000 Muenchen | Verfahren zum automatischen Erkennen zweidimensionaler Muster mit Hilfe von Momenten zweiter Ordnung |
JPS5425782B2 (de) * | 1973-03-28 | 1979-08-30 | ||
US4005385A (en) * | 1975-06-23 | 1977-01-25 | General Electric Company | Pattern recognition machine for analyzing line orientation |
-
1978
- 1978-11-03 NL NL7810943A patent/NL7810943A/nl not_active Application Discontinuation
-
1979
- 1979-09-28 FR FR7924169A patent/FR2440584B1/fr not_active Expired
- 1979-10-30 DE DE19792943749 patent/DE2943749A1/de active Granted
- 1979-10-31 GB GB7937656A patent/GB2036400B/en not_active Expired
- 1979-11-01 US US06/090,806 patent/US4327354A/en not_active Expired - Lifetime
- 1979-11-05 JP JP14212179A patent/JPS5566052A/ja active Granted
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE4141880C1 (de) * | 1991-12-18 | 1993-03-11 | Hendrik Hoefer |
Also Published As
Publication number | Publication date |
---|---|
DE2943749A1 (de) | 1980-05-14 |
FR2440584A1 (fr) | 1980-05-30 |
NL7810943A (nl) | 1980-05-07 |
US4327354A (en) | 1982-04-27 |
GB2036400B (en) | 1983-05-05 |
JPH0128432B2 (de) | 1989-06-02 |
GB2036400A (en) | 1980-06-25 |
JPS5566052A (en) | 1980-05-19 |
FR2440584B1 (fr) | 1986-11-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE2943749C2 (de) | ||
DE2801536A1 (de) | Zeichenerkennungsvorrichtung | |
DE2432129C3 (de) | Verfahren zum maschinellen Lesen von Zeichen und Vorrichtung zur Durchführung des Verfahrens | |
DE3305710C2 (de) | Schaltungsanordnung zur Merkmalserkennung bei auf einem Bildschirm darstellbaren Objekten | |
DE3633743C2 (de) | ||
DE3406618C2 (de) | Verfahren und Vorrichtung zur automatischen Bestimmung der Grenzen von Objekten | |
DE3923449A1 (de) | Verfahren zum bestimmen von kanten in bildern | |
DE1179747B (de) | Verfahren und Anord nung zur Identifizierung von Schriftzeichen | |
DE3425449A1 (de) | Verfahren und vorrichtung zur alphanumerischen handschriftenerkennung | |
DE2544703B2 (de) | Verfahren und schaltungsanordnung zum erkennen von farben einer farbigen flaeche | |
DE2555566A1 (de) | Vorrichtung und verfahren zum speichern eines informationssatzes in einem digitalen speicher | |
DE3508400C2 (de) | Mustererkennungsvorrichtung | |
DE2515245A1 (de) | Musteranalysiersystem | |
DE2338561A1 (de) | Verfahren und vorrichtung zum identifizieren von objekten | |
DE3815869C2 (de) | ||
DE3038499A1 (de) | Farbisolationsverfahren | |
DE2256617B2 (de) | Einrichtung zur analyse einer vorlage | |
DE3622222A1 (de) | Zeichenerkennung in zweidimensionalen signalen | |
DE1524431A1 (de) | Vorrichtung zur selbsttaetigen Einstellung des Abtasters eines Zeichenerkennungsgeraetes symmetrisch zur Zeilenmitte | |
DE1524409B2 (de) | Zeichenerkennungsgeraet | |
DE1953725A1 (de) | Vorrichtung zur visuellen Datenwiedergabe durch Erzeugung von Flaechenelementen einer bestimmten Struktur | |
DE2631073C3 (de) | Vorrichtung zur Struktur- und Textur-Analyse zumindestens eines Mediums | |
AT408377B (de) | Verfahren und vorrichtung zur prüfung bzw. untersuchung von gegenständen | |
EP0220467B1 (de) | Verfahren zur einheitlichen symbolischen Beschreibung von Dokumentmustern in einem Automat | |
DE1524409C (de) | Zeichenerkennungsgerat |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8110 | Request for examination paragraph 44 | ||
D2 | Grant after examination | ||
8364 | No opposition during term of opposition | ||
8339 | Ceased/non-payment of the annual fee |