DE2340597A1 - Bildverarbeitungsanordnung - Google Patents
BildverarbeitungsanordnungInfo
- Publication number
- DE2340597A1 DE2340597A1 DE19732340597 DE2340597A DE2340597A1 DE 2340597 A1 DE2340597 A1 DE 2340597A1 DE 19732340597 DE19732340597 DE 19732340597 DE 2340597 A DE2340597 A DE 2340597A DE 2340597 A1 DE2340597 A1 DE 2340597A1
- Authority
- DE
- Germany
- Prior art keywords
- data
- bit
- unknown
- register
- image
- 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.)
- Withdrawn
Links
- 238000012545 processing Methods 0.000 title claims description 70
- 230000015654 memory Effects 0.000 claims description 91
- 230000006870 function Effects 0.000 claims description 23
- 238000004458 analytical method Methods 0.000 claims description 17
- 230000000694 effects Effects 0.000 claims description 12
- 230000008859 change Effects 0.000 claims description 7
- 238000003860 storage Methods 0.000 claims description 6
- 230000001360 synchronised effect Effects 0.000 claims description 6
- 238000012546 transfer Methods 0.000 claims description 5
- 238000005070 sampling Methods 0.000 claims description 4
- 230000014509 gene expression Effects 0.000 claims description 3
- XEEYBQQBJWHFJM-UHFFFAOYSA-N Iron Chemical compound [Fe] XEEYBQQBJWHFJM-UHFFFAOYSA-N 0.000 claims 2
- 229910052742 iron Inorganic materials 0.000 claims 1
- 230000000875 corresponding effect Effects 0.000 description 46
- 238000000034 method Methods 0.000 description 15
- 239000011159 matrix material Substances 0.000 description 14
- 238000010586 diagram Methods 0.000 description 12
- 230000003287 optical effect Effects 0.000 description 9
- 210000004027 cell Anatomy 0.000 description 8
- 238000012360 testing method Methods 0.000 description 8
- 230000008569 process Effects 0.000 description 7
- 238000010276 construction Methods 0.000 description 6
- 230000009466 transformation Effects 0.000 description 6
- 230000005484 gravity Effects 0.000 description 4
- 230000004048 modification Effects 0.000 description 4
- 238000012986 modification Methods 0.000 description 4
- 230000007704 transition Effects 0.000 description 4
- 210000000349 chromosome Anatomy 0.000 description 3
- 238000010191 image analysis Methods 0.000 description 3
- 238000012015 optical character recognition Methods 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 2
- 238000012512 characterization method Methods 0.000 description 2
- 230000000295 complement effect Effects 0.000 description 2
- 230000002596 correlated effect Effects 0.000 description 2
- 238000009826 distribution Methods 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- 101100116570 Caenorhabditis elegans cup-2 gene Proteins 0.000 description 1
- 101100116572 Drosophila melanogaster Der-1 gene Proteins 0.000 description 1
- 206010035148 Plague Diseases 0.000 description 1
- 241000607479 Yersinia pestis Species 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 239000000654 additive Substances 0.000 description 1
- 230000000996 additive effect Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 238000004140 cleaning Methods 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 239000004020 conductor Substances 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 230000001186 cumulative effect Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000006073 displacement reaction Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 230000001747 exhibiting effect Effects 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 230000008571 general function Effects 0.000 description 1
- 210000003917 human chromosome Anatomy 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000005461 lubrication Methods 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 238000012856 packing Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000010971 suitability test Methods 0.000 description 1
- 230000001629 suppression Effects 0.000 description 1
- 238000000844 transformation Methods 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
- 238000011144 upstream manufacturing Methods 0.000 description 1
- 230000003936 working memory Effects 0.000 description 1
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
-
- 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/20—Image preprocessing
- G06V10/26—Segmentation of patterns in the image field; Cutting or merging of image elements to establish the pattern region, e.g. clustering-based techniques; Detection of occlusion
-
- 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/28—Quantising the image, e.g. histogram thresholding for discrimination between background and foreground patterns
-
- 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/30—Noise filtering
-
- 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/34—Smoothing or thinning of the pattern; Morphological operations; Skeletonisation
-
- 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/36—Applying a local operator, i.e. means to operate on image points situated in the vicinity of a given point; Non-linear local filtering operations, e.g. median filtering
-
- 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
-
- 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/42—Global feature extraction by analysis of the whole pattern, e.g. using frequency domain transformations or autocorrelation
-
- 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/46—Descriptors for shape, contour or point-related descriptors, e.g. scale invariant feature transform [SIFT] or bags of words [BoW]; Salient regional features
-
- 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/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/74—Image or video pattern matching; Proximity measures in feature spaces
- G06V10/75—Organisation of the matching processes, e.g. simultaneous or sequential comparisons of image or video features; Coarse-fine approaches, e.g. multi-scale approaches; using context analysis; Selection of dictionaries
-
- 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/94—Hardware or software architectures specially adapted for image or video understanding
- G06V10/955—Hardware or software architectures specially adapted for image or video understanding using specific electronic processors
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01N—INVESTIGATING OR ANALYSING MATERIALS BY DETERMINING THEIR CHEMICAL OR PHYSICAL PROPERTIES
- G01N15/00—Investigating characteristics of particles; Investigating permeability, pore-volume, or surface-area of porous materials
Description
Patentanwälte Dipl.-Ing. F. We ic* μ λ iv ν,
Dipl.-Ing. H.Weickmann, Dip^-Phis. Dr. K. Fincke
Dipl.-Ing. RA.¥eickmann, Dipl.-Chem. B. Huber
8 MÜNCHEN 86, DEN
POSTFACH 860 820
MÖHLSTRASSE 22, RUFNUMMER 98 39 21/22
Information International, Inc.
12435 West Olympic Blvd.
Los Angeles, Californien 9oo64/
USA
Bildverarbeitungsanordnung
Die Erfindung betrifft eine Anordnung zur Verarbeitung von Zahlenfeldern zu verschiedenen Zwecken, wie z.B.
zur Zeichenerkennung und Klassifiziex'ung.
Die im Anspruch 1 angegebene Lehre löst hierbei die Aufgabe eine äußerst schnelle, vielseitige und leicht an
unterschiedliche Verwendungszwecke anpassbare Bildverarbeitungsanordnung anzugeben.
Eine Bildverarbeitungsanordnung gemäß der Erfindung kann höchst vielseitig Zahlenfelder verarbeiten, da sie auf
ein Programm oder eine in einem digitalen Speicher gespeicherte Befehlsfolge anspricht. In einer bevorzugten
Ausführungsform der Erfindung enthält die Anordnung eine Bildverarbeitungseinrichtung und einen Universalrechner
bzw. eine zentrale Bildverarbeitungseinrichtung (ZVE),
409813/0794
deren Hauptspeicher die Befehlsfolge der .Bildverarbeitungseinrichtung
speichert. Anders ausgedrückt, die Bildverarbeitungseinrichtung führt eine Befehlsfolge aus,
nachdem die ZVE eine Befehlsanfangsadresse und ein Startsignal vorgegeben hat. Ein typischer Befehl veranlasst die
Bildverarbeitungseinrichtung zum Abrufen mehrerer hundert Bits detaillierter Steuerdaten oder Parameter; hierauf
beginnt die eigentliche Bildverarbeitung auf der Grundlage der abgerufenen Parameter.
Während der Bildverarbeitung werden ein oder zwei mit TJ (unbekannte Daten) bzw. M (Maskendaten) bezeichnete
Datenfelder aus aufeinanderfolgenden Plätzen des Hauptspeichers abgerufen, während ein mit R (Ergebnisdaten),
bezeichnetes Ausgangsdatenfeld als Punktion von U und M erzeugt und in den Speicher rückgespeichert werden kann*
Gleichzeitig können die drei Felder U,M und R auf verschiedene Weise untersucht werden und die Untersuchungsergebnisse können nach Beendigung der Bildverarbeitung
durch Ausführen eines weiteren Verarbeitungsbefehls im Speicher gespeichert werden. Die Bildverarbeitung umfasst
eine weitere Hauptfunktion, die das Korrelieren der U- und
M-Felder einschließt. Die Korrelation kann z.B. auf der
Grundlage einer quadratischen 3x3-Nachbarschaft von Relativverschiebungen
des U-Pelds bezogen auf das M-PeId durchgeführt
werden. Die Bildverarbeitung schließt weiterhin eine Analyse oder eine Messung des als Punktion von U
und M erzeugten R-Pelds ein. Die Analyse des R-Pelds kann
z.B. auf der Grundlage eines 2x2-Abtastfensters erfolgen. Alle Punktionen der Bildverarbeitung können gleichzeitig
erfolgen.
In bevorzugten Ausführungsformen der Bildverarbeitungseinrichtung ist eine Serie von wenigstens drei Registern
für unbekannte Bilddaten vorgesehen. Die Register für
4098 1 3/0794
unbekannte Bilddaten speichern jeweils aufeinanderfolgenden Zeilen entsprechende Teile des unbekannten
Datenfelds. Die aufeinanderfolgenden Zeilen sind hierbei entlang einer Achse,z.B. der horizontalen Achse des
Datenfelds, beabstandet. Die Register weisen Abtasteinrichtungen auf, die in den Registern gespeicherte
Daten entlang der zweiten oder vertikalen Achse in aufeinanderfolgenden Blöcken abtasten. Die Blöcke erstrecken
sich vorzugsweise wenigstens drei Bits entlang jeder Achse, v/obei jeder aufeinanderfolgend abgetastete
Block gegenüber dem vorhergehenden Block um ein Bit verschoben ist, womit sich die Blöcke beträchtlich
überlappen. In einer Ausführungsform der Erfindung weist die Anordnung ein Register für bekannte Bilddaten
auf, das bekannte bzw. Maskendaten an Plätzen innerhalb des jeweiligen Bilds speichert, die einer Zeile der
in einem der Register für unbekannte Daten gespeicherten unbekannten Daten entsprechen. Das Register für bekannte
Daten ist auf gleiche Weise abtastbar wie die Register für unbekannte Daten.
In einer weiteren Ausführungsform der Erfindung sind Einrichtungen vorgesehen, die eine. Vielzahl Korrelationssignale erzeugen. Pur jede Bitposition innerhalb eines
abgetasteten Blocks der unbekannten Daten ist hierbei ein Korrelationssignal vorgesehen. Jedes Korrelationssignal ist eine vorgewählte logische Funktion des jeweiligen
Bits der unbekannten Daten im abgetasteten Block und eines einzelnen Bits der bekannten Bilddaten,
welches der speziellen Position im Block entspricht. Jedes der Korrelationssignale schaltet einen Zähler fort,
wobei die beim Abtasten des Felds der unbekannten Daten aufsummierten Zählungen der Zähler ein Maß für den Grad
der Ähnlichkeit zwischen den bekannten und den unbekannten Bildern für verschiedene verschobene Positionen liefern.
409813/0794
In einer noch weiteren Ausführungsform der Erfindung werden die verschiedenen Bits im Block der unbekannten
Katen jeweils miteinander und in gewissen Fällen mit verschiedenen Steuerparameterbits und bekannten Bildbits
entsprechend vorwählbaren logischen Funktionen kombiniert. Man erhält auf diese Yfeise ein Ergebnisbildsignal und
jedes hierbei erhaltene Ergebnisbit wird einem Register für Ergebnisbilddaten an einer Stelle zugeführt, die
der Stelle des abgetasteten Blocks innerhalb der unbekannten Daten entspricht. Indem im Speicher aufeinanderfolgend
erzeugte Zeilen der Ergebnisdaten gespeichert werden, wird im Speicher ein Datenfeld aufgebaut, das
ein Ergebnisbild als vorgewählte logische Modifizierung des unbekannten Bilds wiedergibt.
Die Anordnung kann außerdem ein zweites Register für
Ergebnisbilddaten aufweisen, das vorher erzeugte Zeilen
der Ergebnisdaten speichert. Die Daten in den beiden Registern für Ergebnisbilddaten können in zwei Bits
entlang jeder Feldachse sich erstreckenden Blöcken abgetastet werden. Es sind Einrichtungen vorgesehen, die
eine Vielzahl von Eigenschaftssignalen des Ergebnisbilds erzeugen, von denen jedes das Auftreten einer speziellen
Klasse von Datenmustern im abgetasteten Block der Ergebnisdaten anzeigt. Verschiedene jeweils von den Eigenschaftssignalendes
Ergebnisbilds fortgeschaltete Zähler summieren Zählungen auf, die beim Erzeugen des Ergebnisbilds
dessen Eigenschaften und damit auch die Eigenschaften des unbekannten Bilds bezogen auf das bekannte
oder Maskenbild angeben.
Die oben beschriebene Bildverarbeitungseinrichtung kann in einer ersten Ausführungsform unter Verwendung von
Schieberegistern ausgeführt sein, womit die Daten in den Registern für unbekannte Daten bzw. für Maskendaten
zum Vergleichen gleichzeitig ausgeschoben werden; die
/►09813/0794
erzeugten Ergebnisbits werden hierbei in das Register
für Ergebnisdaten eingeschoben. Me Datenregister können alternativ statische Register mit einer Abtastlogik
aufweisen, die irgendeinen festgelegten Teil der Registerlänge zur Verarbeitung abtasten kann. Die
Verwendung statischer Register zusammen mit einer Abtastlogik ergibt im allgemeinen größere Anpassungsfähigkeit
als die Verwendung von Schieberegistern, da auch kleinere Bildmuster in kürzerer Zeit verarbeitet
werden können.
Im folgenden soll die Erfindung anhand von Zeichnungen näher erläutert werden. Hierbei zeigt:
Pig. 1 ein Blockschaltbild einer erfindungsgemäßen Bildverarbeitungsanordnung;
Fig. 2 ein Übersichtsdiagramm, das die Datenverarbeitungsoperationen der binären Bildverarbeitungseinrichtung
nach Fig. 1 allgemein darstellt;
Pig. 3 ein Format diagramm, das die TJ-, M- und R-Pe Ider
und die Bezeichnungsweise spezieller Bits darstellt;
Pig. 4 ein Blockdiagramm einer erfindungsgemäßen binären Bildverarbeitungseinrichtung;
Pig. 5 ein Formatdiagramm eines Parameterregisters;
Fig. 6 ein der Erläuterung dienendes Diagramm, das ein
Beispiel einer Verarbeitungsoperation in binärer Betriebsart zeigt, die entsprechend der im Speicher
gespeicherten Datenfeldinformation durchgeführt wird;
40981 3/0794
Pig. 7 ein erläuterndes Diagramm, das ein Beispiel einer Verarbeitungsoperation in der Dichte-Betriebsart
zeigt;
Fig. 8a,b und c Blockdiagramme, die, genauer als in
Pig. 4, erste Ausführungsformen erfindungsgemäßer
TJ-, M- und R-Register zeigen;
Pig. 9 ein Blockdiagramm einer anderen Ausführungsform
eines erfindungsgemäßen U-Registers;
Fig. 1oa,b,c und d Blookdiagramme, die, genauer als in
Pig. 4, spezielle logiknetzwerke sowie den Datenfluss darin zeigen;
Pig. 11 eine Darstellung eines typischen Dichte-Betriebsartbilds;
und
und
Fig. 12a und b Darstellungen, die eine bei Zeichenerkennungsanwendungen
verwendete typische Bildverarbeitung zeigen.
In Fig. 1 ist ein BildverarbeitungssystemmLt einer erfindungsgemäßen
binären Bildverarbeitungseinrichtung dargestellt. Das Bildverarbeitungssystem nach Fig. 1 kann
zur Durchführung vielfältigster Bildverarbeitungsfunktionen, wie z.B. Zeichenerkennung, Zeichenerfassung, Digitalisierung
von Kurvenformen, Auswertung biomedizinischer Darstellungen, Erkennung und Klassifizierung von Fingerabdrucken, usw.
herangezogen werden. Das System nach Fig. 1 ist, wie noch, deutlich werden wird, in seiner Bildverarbeitungsfähigkeit
höchst wandelbar. Dies ist in erster Linie darauf zurückzuführen, daß es auf einem gespeicherten Programm beruht
0 9 813/0794
anstatt für spezielle Anwendungsfälle fest verdrahtet
zu sein.
Das System nach Fig. 1 v/eist einen Wandler, wie z.B.
einen Filmabtaster 2o auf, der abhängig von den einem Bild entsprechenden analogen Eingangsdaten dem gleichen
Bild entsprechende digitale Ausgangsdaten erzeugt. Der Filmabtaster 2ο weist insbesondere vorzugsweise einen
sehr genauen Wandler auf, der die Filmschwärzungen in digitale Daten umwandelt, welche über eine Speichersammelleitung
22 einem digitalen Speicher 21 zugeführt werden können. Der Speicher 21 kann, wie in einer bevorzugten
Ausführungsform vorgesehen, den internen Speicher einer universell verwendbaren, zentralen ■Verarbeitungseinheit 24 aufweisen, welcher so abgeändert wurde, daß
jedes Bauelement einer Vielzahl an die Speichersammelleitung 22 angeschlossener Bauelemente direkten Zugriff
zu ihm hat. Die zentrale Verarbeitungseinheit 24 soll im folgenden kurz mit "ZVE 24" bezeichnet werden. Zusätzlich
zum Filmabtaster 2o und zur ZVE 24 sind eine binäre Bildverarbeitungseinrichtung 26 (kurz bezeichnet im
folgenden "BBV 26") und Eingabe/Ausgabegeräte 28 an die Speichersammelleitung 22 angeschlossen. Als direkter
Nachrichtenweg ist zwischen den Baueinheiten 2o,24,26 und 28 eine Eingabe/Ausgabe-Sammelleitung 3o vorgesehen. Die
ZVE 24 kann irgendeinen der ohne weiteres erhältlichen Universalrechner mit Programmspeicher,etwa den von Digital
Equipment Corporation of Maynard, Massachusetts, verkauften PDP-10, aufweisen.
Bei Betrieb des Systems nach Fig. 1 veranlasst die ZVE 24»
daß der BBV 26 Felddaten und Verarbeitungsbefehle zugeführt werden. Die BBV 26 erzeugt daraufhin ihrerseits
verschiedene numerische Beschreibungssignale, die die
4 0 9 8 13/0794
Eigenschaften der zugeführten Datenfelder, sowie die Beziehungen zwischen diesen Datenfeldern allgemein
beschreiben. Im einzelnen gibt die ZVE 24 zu Beginn eine Startadresse an die BBY 26 ab, die im Speicher 21
einen Wörterblock bestimmt, in dem jedes Wort einen BBV-Befehl darstellt. Der Wörterblock stellt damit das
BBV-Programm dar. Die BBV 26 ruft dann die Befehle der
Eeihe nach ab, wobei jeder Befehl die Ausführung einer vollständigen Bildverarbeitung bewirken kann. Im einzelnen
bewirkt ein einziger Befehl, daß die BBV 26 sechs Wörter der im Zusammenhang mit Pig. 5 näher erläuterten Steuerparameter
in sechs Parameterx'egister (Fig.4) lädt. Anschließend
wird die durch die Steuerparameter bestimmte Bildverarbeitung durchgeführt. Nach einer vollständig
durchgeführten Bildverarbeitung kann ein weiterer Befehl abgerufen werden, auf den hin z.B. die Parameterregister
erneut geladen und erneut verarbeitet werden können, oder auf den hin die BBV 26 angehalten und an die ZVE 24
rückgemeldet wird. Es sind weiterhin Befehle vorgesehen, die z.B. numerische Ergebnisse aus der BBV 26 in den
Speicher 21 übertragen.
Während der von der BBV 26 durchgeführten Bildverarbeitung werden ein oder zwei als unbekannt (U) und als bekannt (M =
durch Masken bestimmt) bezeichnete Datenfelder von aufeinanderfolgenden Stellen des Speichers 21 abgerufen und
der BBV 26, wie im Abbildungsdiagramm der Pig. 2 dargestellt, als Eingangssignale zugeführt. Die BBV 26 führt dann, wie
durch Ausgangsblöcke in Pig. 2 dargestellt, mit den U- und M-Datenfeldern verschiedene Operationen durch. Die BBV
kann z.B. wie durch einen Ausgangsblock 4o dargestellt ist, eine Korrelationszähloperation durchführen und neun
Ausgangskorrelationszählungen CQ bis CQ erzeugen, die den
Vergleich U mit M für jeweils eine von neun relativen Verschiebungen entsprechend einer 3x:3-Nachbarschaft wieder-
40981 3/0794
geben. Zur Erläuterung sei auf die das TJ-FeId und das
M-FeId darstellende Figur 3 verwiesen, in der das U-FeId
in einer 3x3-Nachbarschaft und ein entsprechendes Bit
des M-Felds dargestellt sind. Die im U-FeId dargestellte
3x3-Nachbarschaft erläutert außerdem die im folgenden zur Identifizierung jedes der neun Bit innerhalb der
3x3-Haehbarschaft verwendeten Bezeichnungsweise. Die am
Ausgang des die Korrelationszählungen durchführenden Ausgangsblocks· 4o in Fig. 2 abgegebenen Korrelationszählungen
Cq bis Cg stellen somit die Korrelation
zwischen dem innerhalb des M-Felds in Fig. 3 gezeigten M-Bits und jedem der Bits innerhalb der entsprechenden
3x3-Nachbarschaft des U-Felds dar.
Neben den durch den Ausgangsblock 4o in Fig. 2 dargestellten
Korrelationszählungen kann die BBV 26 außerdem
ein Ergebnisfeld (R) als Funktion der U- und M-Felder auf zwei unterschiedlichen, in Fig„ 2 durch einen Operationsblock
42 dargestellten Wegen erzeugen. Das in Fig. 3 durch den äußeren rechten Winkel dargestellte E-FeId wird
durch aufeinanderfolgendes Erzeugen individueller R-Bits geschaffen. Bei Betrieb in einer Dichte-Betriebsart führt
der Operationsblock 42 eine Byte-Vergleichsoperation aus,
bei der die Bytes des U-Felds mit den Bytes des M-Felds arithmetisch verglichen werden. Ist; das Byte des U-Felds
arithmetisch kleiner oder gleich dem entsprechenden Byte des M-Felds, so wird ein R = 1 Bit erzeugt. Ist andererseits
das Byte des U-Feldsarithmetisch größer als das
entsprechende Byte des M-Felds, so wird ein R=O Bit erzeugt.
Bei Betrieb in einer im Gegensatz zrur oben stehend erwähnten
Dichte-Betriebsart stehenden binären Betriebsart erzeugt derOperationsblock 42 aus Pig. 2 aufeinanderfolgend
409813/0794
R-Bits und bildet hierdurch das R-PeId als Boole'sehe
Funktion der U- und M-Pelder. Wie noch gezeigt wird,
kann jedes R-Bit eine Punktion des entsprechenden M-Bits
und aller U-Bits der entsprechenden 3x3-Nach.barsch.af t
sein.
Sowohl in der Dichte-Betriebsart als auch in der binären Betriebsart wird das durch den Operationsblock 42 erzeugte
R-PeId im Speicher 21 des Systems rückgespeichert; es
kann außerdem einer eine 2x2-Bit-Nachbarschaft umfassenden
Analyse-Operation unterworfen werden, wobei die 2x2-Bit-Nachbarschaft aus Rq,R^,R7 und RQ besteht. Der
weitere Nachbar R? wird zn einem anderen, untenstehend
näher erläuterten Zweck verwendet. Ein in Pig. 2 dargestellter Operationsblock 44 erzeugt als Punktion von RQi
R.J ,R„ und Ro gewisse mit RAR und RQ- _ RQ^ bezeichnete
Zählungen, deren Bedeutung ebenfalls später erläutert werden soll. An dieser Stelle genüget der Hinweis, daß
diese Zählungen numerische Beschreitmngssignale des
R-Pelds sind.
Im folgenden soll Pig. 4 erläuert werden, die ein Blockdiagramm
der erfindungsgemäßen binären Bildverarbeitungseinrichtung (BBV) 26 zeigt.
Die BBV 26 weist vorzugsweise sur Überwachung und Polgesteuerung
eine eigene Steuerschaltung 5o auf und kann
damit wenigstens eine begrenzte Folge von Operationen unabhängig von der ZVE 24 durchführen. Zu diesem Zweck
ist die BBV 26 über geeignete Koppelschaltungen direkt mit der Speichersammelleitung 22 gekoppelt und kann
Daten und/oder Anweisungen unmittelbar mit dem Speicher austauschen. Bei Beschreibung des Systems sollen im
folgenden aus Zweckmäßigkeitsgründen diejenigen "Anweisungen",
die von der BBV 26 selbst unmittelbar aus dem Speicher 21 bezogen werden, als "Befehle" bezeichnet werden, während
durch den Ausdruck "Anweisungen" Anweisungen im Programm der ZVE 24 bezeichnet werden sollen.
409813/0794
Die Steuerschaltung 5o der binären Bildverarbeitungseinrichtung 26 weist vorzugsweise zumindest folgende
Bestandteile auf:
1. ein Befehlsadressenregister 52, das aufeinanderfolgend diejenigen Adressen des Speichers 21 bestimmt, aus
denen die BBV 26 aufeinanderfolgende Befehle erhält;
2. ein Befehlsregister 53, das die aus dem Speicher 21 auf die letzte Adresse des Befehlsadressenregisters
52 hinzugeführten Befehlsdaten speicherts
Das Parameterregister 54 umfasst funktionsmäßig einen Maskendaten-Adressenspeicher, der im Speicher 21 Adressen
bezeichnet, aus denen die BBY 26 Daten für gewisse untenstehend näher erläuterte bekannte Kaskenbilder bezieht.
Das Parameterregister 54 weist weiterhin einen Speicher für unbekannte' Daten auf, der im Speicher 21 Adressen
bezeichnet, aus denen die BBY 26 Daten für unbekannte Bilder erhält, die sie analysieren oder identifizieren
soll. Ein Ergebnisdatenspeicher des Parameterregisters bezeichnet im Speicher 21 Adressen, in die die BBV 26
Ergebnisbilder darstellende Daten einspeichern kann, welche als Teil der Operation der BBV 26 erzeugt wurden.
Das Parameterregister 54 weist schließlich einen Parameterspeicher
auf, der in Verbindung mit Fig. 5 untenstehend näher erläuterte andere Parameterdaten speichert..
Trotzdem die vorliegende Erfindung in erster Linie die BBV 26 betrifft, soll die gesamte Betriebsweise peripherer
Apparate und ihr Zusammenwirken mit der ZVE 24 und dem Speicher 21 weiter erläutert werden, da es dem
Verständnis von Zweck und Punktionsweise der eigentlichen BBV 26 sicherlich dienlich ist. Unter der Annahme, daß
eine geeignete Folge von Befehlen für die BBV 26,Tabellen
0 9 813/0794
geeigneter Operationsparameter und Felder von Bilddaten, mit denen die BBY 26 arbeiten soll» in den etwa als
Kernspeicher ausgeführten Speicher 21 geladen wurden, kann die ZVE 24- den Betrieb der BBY 26 auslösen, indem
sie das Befehlsadressenregister auf die Speicheradresse des ersten auszuführenden Befehls setzt. Die Steuerschaltung
5o der BBV 26 lädt dann die Befehle des Speichers 21 in das Befehlsregister 53. Der erste Befehl
wird typischerweise die Steuerschaltung 5o zum Laden der verschMenen Parameterregister 54 veranlassen. Auf
das Laden der Parameterregister 54 folgend, beginnt die
eigentliche Bildverarbeitung, während der aus dem Speicher 21 Wörter abgerufen werden, die die Felder der
Maskenbilder und der unbekannten Bilder darstellen, und während der die Wörter für Felder der Ergebnisbilder
im Speicher 21 gespeichert werden können. Wenn die Maskenwörter und die unbekannten Wörter aus dem Speicher
21 abgerufen sind, werden sie in ein Maskendatenregister
6o (M-Register) bzw. in ein Register 62 für unbekannte
Daten (U-Register) der BBV 26 geladen. Die Maskendaten und die unbekannten Daten werden dann zur Bildverarbeitung
herangezogen und nach Beendigung derselben wird das Befehlsadressenregister 52 fortgeschaltet, um
in aufeinanderfolgender Reihe einen nachfolgenden Befehl· aus dem Speicher 21 in das Befehlsregister 53 zu laden.
Der nachfolgende Befehl kann dann die numerischen Ergebnisse des Zählers der BBV in äen Speicher 21 rückspeichern
oder aber die gleichen oder andere Felder einer weiteren Bildverarbeitung unterwerfen. Der letzte Befehl
der Befehlsfolge kann, wie üblich, als Kennzeichen der Steuerschaltung 5o dienen, die daraufhin die ZVE 24 unterbricht,
sodaßder weitere Betrieb der BBV 26 entsprechend der Programmsteuerung der ZVE 24 erneut ausgelöst werden
kann.
Λ 0 9 8 1 3/079A
Die erfindungsgemäße BBV 26 arbeitet mit Bildern, die in Form von Feldern binärer im Speicher 21 gespeicherter
Daten vorliegen. Ein Teil dieser Daten stellt die zu analysierenden oder zu identifizierenden unbekannten
Bilder dar. Derartige Bilder können z.B. aus einem Dokumenten- oder Mikrofilmleser bzw. -Abtaster stammen,
der im Echtzeitbetrieb arbeitet und ebenfalls von der ZVE 24 auf einer Zeitmultiplexgrundlage gesteuert wird.
Die unbekannten Bilder können alternativ unter Zwischenschaltung eines Magnetbands oder einer Magnetplatte oder
anderer Kurzzeitdatenspeicher dem Speicher 21 zugeführt werden. In der nachstehenden Beschreibung wird allgemein
angenommen, daß die Bildpunkte bzw. -elemente durch eine binäre "1" dargestellt sind, während jeder Punkt "
des Hintergrunds durch eine "O" wiedergegeben wird. Es soll jedoch hervorgehoben werden, daß eine komplementäre
Organisation gleichwertig wäre und daß die Ansprüche dementsprechend ausgelegt werden sollten.Es kann entweder
die binäre "1" oder die binäre "O" als vorbestimmter binärer Zustand betrachtet werden.
Ein anderer Teil der gespeicherten Daten stellt bekannte Bilder dar. Einige dieser bekannten Bilder können als
Masken aufgefasst werden, mit denen die unbekannten Bilder verglichen und korreliert werden sollen, während
andere der bekannten Bilder speziellen Zwecken dienende Muster oder Mosaiken sein können, die in einer unter
der Steuerung eines optischen Zeichenlese- oder Bildanalyse-Programms der ZVE 24 vorteilhaft verwendet
werden können. Ein Teil des Speichers 21 dient, v/ie bereits erwähnt, zur Speicherung der von der BBV 26
zu verarbeitenden aufeinanderfolgenden Befehle oder Operationssteuerkods, sowie zur Speicherung der von der
BBV 26 verwendeten verschiedenen Parameter.
409813/0794
Weiterhin wurde bereits erwähnt, daß die aus dem Speicher 21 abgerufenen Maskandaten und unbekannten
Daten in das Maskendatenregister 60 baw, in das Register
für unbekannte Daten 62 geladen werden. Im Betrieb liefert das Maslcendatenregister 60 seriell
Maskendatenbits (1 Maskendatenbit pro Zeiteinheit)
an einen Ausgangsanschluß 64. Das Register für unbekannte Daten 62 liefert Maskendatenbits (1 Maskendatenbit
pro Zeiteinheit) an einen Ausgangsanschluß 66. Das Register für unbekannte Daten 62 liefert parallel
neun Ausgangsbits entsprechend Un bis U0 in Fig. 3a.
Die Ausgangsbits UQ bis U7 werden auf acht Ausgangsleitungen
abgegeben, die in Pig. 4- zusammen durch das Bezugszeichen 66 bezeichnet sind. Das Ausgangsbjt
Ug wird an einem Ausgangsanschluß- 68 abgegeben.
Jeder der Ausgangsanschlüsse 64,66 und 63 ist jeweils
mit den Eingängen untenstehend näher erläuterter Logiknetzwerke 7o,72,74 und 76 verbunden. Das Logiknetzwerk
7o ist an der obenstehend in Zusammenhang mit ilig. 2 (Block 4o) erläuterten Korrelationszähloperation
beteiligt. Es spricht auf die an den Ausgangsanschlüssen 64,66 und 68 abgegebenen Daten an und vergleicht
jedes Maskenbit mit neun Bits UQ bis Ug der unbekannten
Daten (siehe Pig. 3a). Das Logiknetzwerk 7o bestimmt jeweils, ob das Maskenbit gleich oder ungleich jedem
Bit der entsprechenden 3x3-Nachbarschaft der unbekannten
Daten ist und überträgt diese Information auf neun Korrelationszähler 78» die die Zahlungen über eine ein
Maskendatenfeld bildende Folge von Maskenbits aufsummieren. Die im Korrelationszähler 78 aufsummierte Information
ist das Maß der EOrmähnlichkeit und der relativen Lage
abweichung zwischen den Maskendatenfeldern und den unbekannten Datenfeldern. Die durch die Korrelationszähler 78 aufsummierten Zählungen werden, gesteuert durch
das Programm, über die Speichersammelleitung 22 in den
Λ 0 9 813/0794
Speicher 21 des Systems rückgespeichert. Diese Korrelationsoperation
soll nachstehend im Zusammenhang mit Fig. 1o näher erläutert werden.
Das Logiknetzwerk 72 vergleicht zwischen den aus dem M-Register 6o und dem U-Register 62 zugeführten Vielfachbit-Bytes.
Das Logiknetzwerk 72 kann damit die durch eine Serie von Bits aus dem M-Register 6o dargestellte
arithmetische Größe mit einer entsprechenden Serie vom U-Register 62 gelieferter Bits vergleichen
und ein Ergebnisbit (R-Bit) liefern. Ist z.B. das Byte
eines U-Pelds arithmetisch kleiner als das entsprechende
Byte eines M-Felds, so wird ein R = "1" Bit erzeugt. Ist andererseits das Byte des U-Pelds arithmetisch
größer als das entsprechende Byte des M-Felds, so wird ein R = "0" Bit erzeugt. Die vom Logiknetzwerk 72 erzeugte
R-Bitinformation wird einem Brgebnisart-Gatter
zugeführt. Das Ergebnisart-Gatter 8o lädt sowohl Ausgangssignale des Logiknetzwerks 72 als auch des Logiknetzwerks
74 in ein Ergebnisregister 82 (R-Register).
Bei binärer Betriebsart führt das Ergebnisart-Gatter 8o das Ausgangssignal des Logiknetzwerks 74 dem Ergebnisregister
82 zu. Das Logiknetzwerk 74 erzeugt das R-Bit als Punktion des über den Ausgangsanschluß 64 zugeführten
Maskenbits, des über den Ausgangsanschluß -68 zugeführten Bit Uq und eines vom Logiknetzwerk 76 erzeugten P-Bits.
Das Logiknetzwerk 76 spricht auf die am Ausgangsanschluß 66 des U-Registers 62 verfügbaren Bits Uq bis U^ an. Wie
untenstehend anhand der Figuren 5 und 1o noch näher
erläutert werden soll, wird das P-Bit als spezielle Punktion der Bits UQ bis U7 gebildet. Die spezielle
Punktion wird hierbei durch die Ausführung des Parameter- registers
54 bestimmt. Entsprechend wird R im Logiknetz-
40981 3/079*
werk 74 als spezielle Funktion von Uft, M und P gebildet,
wobei die spezielle Punktion durch den Inhalt des Parameterregisters 54 bestimmt wird.
Die vom Ergebnisart-Gatter 8o durchgelassenen R-Bits
werden außer dem Ergebnisregister 82 auch einem Ergebnisanalysenetzwerk
84 zugeführt, das, zusammen mit Ergebniszählern 86 dem in Fig. 2 dargestellten Operationsblock
44 entspricht. Das nachstehend noch näher zu erläuternde Ergebnisanalysenetzwerk 84 zählt verschiedene Mustersätze
innerhalb einander überlappender 2x2-Nachbarschäften.
In einer bevorzugten erfindungsgemäßen Ausführungsform werden die Parameterregister 54 der Fig. 2 vorzugsweise,
wie in Fig. 5 dargestellt, durch sechs 36 Bit-Parameterregister 54-j bis 54g ausgeführt. Ue die exakte Bildverarbeitung
der BBV 26 vollständig bestimmen zu können, müssen die sechs Register 54* bis 54,- mit Parameterinformationen
aus dem Speicher 21 geladen werden. Innerhalb der Register 54-] bis 54g in Fig. 5 sind folgende
Bereiche von Bedeutung:
Symboldefinitionen
NTR: Nachbarschaftsschwellwert - bestimmt für welche
Nachbarschaftsdichten das P-Bit = 1 wird.
BSL: Boole'sehe Auswahl - bestimmt die Funktion R(UQ,M,P)
NSL: Nachbarschaftsauswahl - ist mit der W-Nachbarschaft
UND- verknüpft (siehe Fig. 1Ob).
NMT: Nachbarschaftsgleichheit - ist mit (NSL-W) ODER verknüpft.
RWA: Ergebniswortadresse - Ausgangsstelle im Speicher des R-Bildfelds.
Λ0981 3/0794
RBA.: Ergebnisbitadresse - Ausgangsbitadresse des R-Worts.
RBW: Ergebnisbytes (Bits) pro Wort - Formfaktor für das R-Bildfeld.
RSK: Ergebnissprung - ermöglicht es dem R-PeId nicht
aufeinanderfolgende Adressen zu besetzen.
UBA: siehe RWA, RBA, RSK
MBA: siehe RWA, RBA, RSK
MBW: Maskenbits (Bytes) pro Wort - Formfaktor des M-Bildfelds.
WDS: Wortumfang - bestimmt die Anzahl der von der BBV zu verarbeitenden Wörter des Bildfelds.
BTS: Bitumfang - bestimmt wieviele Bits in jedem Wort des Bilds verarbeitet werden sollen.
DNS: Dichte-Betriebsart - läßt die BBV 26 R-Bitsdurch
einen Speicherzelle-für-Speicherzelle-Vergleich
der Bytes der U-Bilder und M-Bilder erzeugen.
SMW: Einzelmaskenwort - bewirkt, daß ein einzelnes Speicherwort wiederholt für das gesamte M-PeId
verwendet wird.
PUB: Polarität, unbekannte Daten, Bitachse - kehrt jedes Wort von U um, bevor es die Seriellverarbeitungsstufe
erreicht.
PUW: Polarität, unbekannte Daten, Wortachse - bewirkt, daß U aus aufeinanderfolgend niedrigeren Adressen
des Speichers abgerufen wird.
; siehe PUB, PUW
ρτρ τι.
jjj; Analog PUB, PUV/
A0981 3/Q794
OWN: kumulative Wortnachbaren - bewirken, daß Nachbarschaftsbits
U0 ,-IL· ,TJ2 durch entsprechende
Bits des vorher erzeugten R—Worts ersetzt v/erden«
COIi: bewirkt, daß die W-Nachfcarsehaftsdichte (Zahl
der 1'sen) auf das "Euler'sehe Differential"
der Nachbarschaft bezogen wird.
CTJM: korreliere bezüglich U*M - Einschaltbedingung
der neun Korrelationszähler.
CNM: korrelxere bezüglich Ϊ7·Μ.
CTJN: korreliere bezüglich TJ-H.
CTJN: korreliere bezüglich TJ-H.
ROT: Ergebnis-Außenwerte - Zustand des R-Felds außerhalb
seiner Grenzen; wird für gewisse 2x2-Nachbarschäften
gebraucht.
Die Startstellungen im Speicher der Eingangsfelder TJ und M und des Ausgangsfelds R werden, wie in Pig. 5
dargestellt, durch die 18-Bit-Wortadressenfelder RWA,
TJWA und MWA in den Registern 54*, 54, und 54p- spezifiziert.
Die sechs Bitgrößen TJBA und MBA definieren anfängliche Vertikal- oder Bitachsenkoordinaten: das Bi
in der Stellung TJBA, 0_<UBA<35, ist das erste, das von
der TJ-Logik in jedem Wort des TJ-Bilds abgerufen wird entsprechendes
gilt für M. RBA ist die Bitachsenkoordinate, an der das erste Bit in jedem Wort von R
gespeichert wird. Wird ein Bildverarbeitungsprozess in
binärer Betriebsart begonnen, so werden die in (UWA, UBA) und (MWA, MBA) befindlichen Bits zusammen mit den acht
Nachbarn des U-Bits abgerufen. Das erste R-Bit wird dann
als Funktion dieser zehn Bits erzeugt und anschließend im Speicher bei (RWA, RBA) gespeichert. Die BBV 26 verarbeitet
dann kontinuierlich aufeinanderfolgende Bits in den Wörtern bei UViA und MWA und. erzeugt v/eitere R-Bits
die in Adressen RWA gespeichert werden. Dies wird fortgesetzt, bis BTS Bits erzeugt wurden. Die BBV 26 ruft
dann die Bits bei (UWA+1 , UBA) und (MWA+1 , MBA) ab. In
gleicher Weise werden aufeinanderfolgende Wörter verarbeitet, bis insgesamt WDS Wörter/ verarbeitet wurden.
4098 13/07
Pig. 6 zeigt als Beispiel eine binäre Bildtransformation, in.der ein Ergebnisfeld durch Bit für Bit "Exklusiv-ODER"-Verknüpfung
der unbekannten Felder und Maskenfelder erzeugt wird. Weiterhin ist ein 3x3-Nachbarschafts-Fenster"
mit dessen normaler Abtastrichtung des BiIo.s dargestellt. Es ist zu beachten, daß die
Größen (UV/A, UBA) und (JWA, MBA) die zu vergleichenden
Teile der unbekannten Felder und Maskenfelder bezeichnen und daß (RWA, RBA) die Speicherstellen bezeichnen, in
die das Ergebnisfeld eingespeichert wird.
Zusätzliche geometrische Anpassungsfähigkeit bei der Behandlung der Felder wird durch die Sprungfaktoren
RSK, USK und MSK sowie durch die Packungsfaktoren (Bytes oder Bilderspalten pro Wort) RBW und MBW erzielt. Wird
USK>0 gesetzt, so wird U nicht aus aufeinanderfolgenden Speicherstellen abgerufen, sondern von UWA, UWA +
(USK+1), UWA + 2 (USK + 1) usw., wobei entsprechendes
für MSK und RSK gilt. Indem MBW>1 gesetzt wird, kann mehr als eine geometrische Feldspalte in jedem Speicherwort
von M gespeichert werden; entsprechendes gilt für RBW.
Das Parameterregister 54-j bestimmt, wie unten noch
näher erläutert werden soll, wie die P- und R-Bits normalerweise erzeugt werden* Das Parameterregister 54p
enthält obenstehend definierte Operations- oder Betriebsartsteuerbits, von denen jedes spezielle Operationen
oder Betriebsarten spezifiziert.
Insbesondere das Steuerbit DNS ist wichtig, da die Bildverarbeitung
der BBY, wenn DNS = "1" ist, in Wirklichkeit nicht Bits des M-Felds und Nachbarschaften des U-Felds
prüft, sondern U und M jeweils als aus Zeichenfolgen numerischer Bytes bestehend ansieht, wobei jedes Byte,
wie durch BTS definiert, eine Vielzahl Bits aufweist.
A09813/0794
-2ο-
Ein Byte aus U wird arithmetisch mit einem entsprechenden Byte aus M verglichen und wenn UBYte~MB t is'fc>
wird ein "1" Bit erzeugt und in das R-FeId eingesetzt. Wenn
üBvte>MBvte ist) wird ein "°" Bit iür das R~Feld er~
zeugt. Ein Beispiel des Bildformats für die DNS-Betriebsart ist in Fig. 7 dargestellt. Die Bytelänge für M und U
wird durch den Parameter BTS (= 7 in Fig.7) bestimmt;
die Anzahl der Bytes pro M- und U-Wort wird durch den Parameter MBW(=4) festgesetzt; die Anzahl der Reihen
des R-Bilds ist durch RBW(=6) gegeben; die Anzahl der
Spalten von R wird durch WDS(=3) festgesetzt.
Sowohl in binärer als auch in Dichte-Betriebsart wird das Bild in untenstehend noch näher erläuterter Weise
nachbarschaftsanalysiert. ■
Es sollen nun die Figuren 8a, b und c erläutert werden,
die erste Ausführungsformen der U-,M-und R-Register 62,
6o und 82 aus Fig. 4 zeigen. Die Ausführungsformen der Fig. 8 ermöglichen das obenstehend erwähnte 3x3-Fenster
beim U-FeId und das 2x2-Fenster beim R-FeId durch Verwendung von Vielfachschieberegistern.
Im einzelnen besteht das U-Register 62 der Fig. 8a aus drei Ein-WortSchieberegistern 87,88 und 89, von denen
jedes 36 Bits enthält, um Teile der unbekannten Bilddaten zu speichern und zu verarbeiten. Das erste Schieberegister
87 ist so ausgebildet, daß es aus dem Speicher 21 über eine Pufferstufe 9o und einen Gatterschaltkreis 91 geladen
werden kann. Jedes der anderen Register 88 und ist so ausgebildet, daß es Daten aus den in Serie vorgeschalteten
Registern parallel und synchron mit der Datenübertragung aus der Pufferstufe 9o in das erste
Schieberegister 87 aufnehmen kann. Aus später noch zu
Λ 0 9 8 1 3/0794
erläuternden Gründen werden die im Register 88 enthaltenen unbekannten Bilddaten als momentanes unbekanntes
Bildwort bezeichnet, während die Register 87 und 88 jeweils das nächste bzw. das vorhergehende
unbekannte Bildwort enthalten.
Die Zeilen oder Wörter der in den Registern 87,88,89 enthaltenen binären Daten können innerhalb der jeweiligen
Register, durch ein über eine Leitung 92 zugeführtes U-Bitschiebesignal herkömmlich synchron gesteuert, verschoben
werden. Jedes der Register. 87,88,89 ist, wie dargestellt, so geschaltet, daß der Datenüberlauf am
Austrittsende des Registers dem Eintrittsende des gleichen Registers zugeführt werden kann. Die binären Daten oder
das binäre Wort in jedem Register werden also aufeinanderfolgend wiederholt verschoben und befinden sich nach
einer mit der Länge des Registers übereinstimmenden Anzahl von Schiebevorgängen wieder in der Ausgangsstellung. Die
Schieberegister 87,88,89 weisen außerdem Ausleseeinrichtungen 93»94,95 für die letzten drei Bits in jedem
Schieberegister auf, so daß ein 3-Bit- auf >-Bit~J)atenblock
zur Abtastung verfügbar ist« In Fig. 8 wie auch sonst ist ein eine Vielzahl paralleler oder gleichzeitiger
binärer Signale aufweisender Datenfluss durch einen breiten Pfeil dargestellt, während Einzelbitsignale oder
-Leiter durch eine einzelne Linie dargestellt sind. Als Alternative zur Parallelverschiebung von Daten zwischen
den oben beschriebenen Registern könnte der Übertrag aus den ersten beiden dem linschiebeende des nächsten
Registers zugeführt werden.
Wenn die in den drei Schieberegistern 87>88,89 gespeicherten
binären Wörter durchgeschoben werden, so werden in Wirklichkeit die gespeicherten Daten in einer Aufeinanderfolge
von Blöcken entlang einer der oben beschriebenen
Λ0981 3/0794
Achsen abgetastet. Um die Beschreibung des Betriebs dieses Apparats zu vereinfachen, soll diese Achse
nachfolgend als vertikale oder Bitachse bezeichnet werden. Die andere dieser zwei Achsen soll als horizontale
oder Wortachse bezeichnet werden. Die auf die vollständige Abtastung jedes Worts entlang der Bitachse
folgende Abtastung des Bilds entlang der Wortachse erfolgt, wie dem Fachmann geläufig sein wird, durch Schieben
binärer Wörter aus jedem Schieberegister der Serie in ein nachfolgendes Register, wobei die binären Daten des
letzten Schieberegisters 89 verloren gehen, wenn das erste Schieberegister 87 über die Pufferstufe 9o aus
dem Speicher 21 aufgefüllt wird. Es soll hervorgehoben werden, daß die drei aus jedem der Schieberegister 87i88,
89 erhaltenen Bits den neun Bits Uq bis UQ aus Fig. 3a
entsprechen und daß die in Pig. 4 dargestellten Registerausgangsanschlüsse 66 und 68 den durch die Auslöseeinrichtungen
95,94,95 bezeichneten letzten drei Bitpositionen dieser Register entsprechen.
Fig. 8b zeigt das oben stehend erwähnte M-Register 6o,
das vorzugsweise ein einziges Schieberegister 97 zur Speicherung eines einzigen, ein bekanntes oder Maskenbild
wiedergebenden Datenworts (Datenzeile) aufweist. Das Schieberegister 97 kann vom Speicher 21 aus über eine
Pufferstuf'e 98 und einen Gatterschaltkreis 99 aus selektiv
geladen werden. Die Daten im Schieberegister 97 können Bit für Bit durch ein über eine Leitung 1oo zugeführtes
M-Schiebesignal verschoben werden; das Schieberegister
ist so geschaltet, daß der Überlauf aus dem Ausschiebeende in das Einschiebeende des Registers rückführbar ist.
Diese Ausführungsforia ermöglicht Zirkulieren der gespeicherten Maskenbilddaten in einer den unbekannten
Bilddaten in den Schieberegistern 87,68,89 entsprechenden
A0981 3/0794
Weise. Da jedoch diese Baten typischerweise nicht mehr
als einmal verwendet werden, bestellt eine Alternative einfach in der Unterdrückung der Daten des Überlaufs.
Es soll hervorgehoben werden, daß der Ausgang der letzten Stufe des Schieberegisters 97 dem Ausgangsanschluss 64
in Fig. 4 entspricht und das in Fig. 3 dargestellteM-Bit
abgibt.
Unter der Voraussetzung, daß die bekannten Bilddaten im Schieberegister 97 synchron mit den unbekannten Bilddaten
in den Schieberegistern 87,83,89 zirkulieren, entspricht jedes aus dem Schieberegister 97 der bekannten
Bilddaten ausgelesene Bit im allgemeinen in seiner lage innerhalb des jeweiligen Bilds der lage des entsprechenden
3x3-Blocks abgetasteter Daten innerhalb des unbekannten Bilds.
Es bleibt dem Fachmann überlassen, die Felder der Bilddaten auf jeder der beiden Achsen bei der gewünschten
vorbestimmten Registrierung zwischen den unbekannten und Maskenbildern, abhängig von den entsprechenden Bildformaten,
um einen vorbestimmten Betrag vor- und rückzuschieben. Da jedoch diese Erfordernisse von der speziellen
Konstruktion und dem verwendeten Logiksystem abhängig sind, bzw. keinen Kernpunkt der Erläuterung dieser Erfindung
bilden, sollen diese Änderungsmöglichkeiten auch nicht im einzelnen erläutert werden. Da das unbekannte
Bild in jeweils drei binäre Wörter oder Zeilen der Bilddaten umfassenden Blöcken überprüft oder abgetastet wird,
während das Maskenbild Bit für Bit innerhalb jedes Worts abgetastet wird, wird ein Vorversciiieben der unbekannten
Bilddaten auf der Wortachse im allgemeinen vorzuziehen sein, so daß das momentan im Schieberegister 88 gespeicherte
unbekannte Bildwort in seiner Lage innerhalb
A09813/0794
des gewünschten Bildformats der Lage des einzelnen Maskenworts im Schieberegister 97 entspricht. Dementsprechend
ist auch ein Vorversefoieben der unbekannten Daten entlang der Bitachse vorzuziehen, so
daß das mittlere Bit U8 des 3x3-Blocks der unbekannten
Daten in seiner Lage innerhalb des gesamten Bilds der Lage des speziell abgetasteten M-Bits der bekannten
Bilddaten entspricht. Dieses Vorverschieben v/ird vorzugsweise innerhalb der peripheren Apparate selbst
und ohne Zwischenschaltung der ZVE 24 gesteuert, wobei die gewünschten Vorverschiebungsgrößen in den Parametern,
wie z.B. die Differenz zwischen den Bitachsen-Koordinaten UBA und MBA im Parameterregister 54· gespeichert werden.
Da das unbekannte Bild in einem 3x3-Block abgetastet
wird, während lediglich ein einziges Bit aus dem bekannten oder Maskenbild entnommen wird, gibt es dementsprechend
eine "Grenze" von Abtastlagen des unbekannten Bilds innerhalb des gesamten Bilds für die
es keine entsprechende Abtastlage des bekannten Bilds gibt. Diese Grenzenbits in der U-iTachbarschaft werden
zweckmäßigerweise auf einen vorbestimmten V/ert, vorzugsweise "O" als "Hintergrunds"-Wert gesetzt.
Wenn die Datenfelder der bekannten und der unbekannten Bilder abgetastet werden, wird das von dem Ergebnisärt-Gatter
8o (Fig.4) abgegebene Ergebnissignal Bit für Bit
einem Einzelwort-Schieberegister 1o1 (Fig.8c) zugeführt.
Bei normalem Betrieb werden die im Schieberegister 1o1 gespeicherten Daten, auf ein über eine Leitung 1o2 zugeführtes
R-Bit-Schiebesignal hin synchron mit den Zeilen der in den Schieberegistern 87,88,89 bzw. 97 gespeicherten
unbekannten und bekannten Daten verschoben. Für jedes abgetastete Wort (Zeile) der bekannten und unbekannten
4098 1 3/079A
Daten wird eine entsprechende Zeile der Ergebnisbilddaten erzeugt und im Schieberegister 1 o1 gespeichert.
Die Daten des Schieberegisters 1o1 können, wie dargestellt, parallel auf ein zweites Ergebnisdatenregister
1 o3 übertragen werden, wobei die Daten dieses zweiten Ergebnisdatenregisters 1o3 synchron zu den Daten des
Schieberegisters 1o1 verschoben werden. Nachdem ein erstes binäres Ergebniswort erzeugt und vom Schieberegister
1o1 auf das Ergebnisdatenregister 1o3 übertragen wurde, stehen somit Ergebnisbilddatenwörter
paarweise zur Verfugung.
Das im Ergebnisdatenregister 1o3 gespeicherte binäre Wort wird, wie in Fig. 4 dargestellt, der Speicher- '
Sammelleitung 22 zugeführt. Wenn jede Zeile der Ergebnisdaten entsprechend einer gegebenen Zeile der unbekannten
Daten vervollständigt ist, wird somit ein vorhergehendes Wort der Ergebnisbilddaten an einer durch die Ergebniswortadresse
im Parameterregister 54 bestimmten Stelle im Speicher 21 gespeichert. Wird ein gesamtes unbekanntes
Bild abgetastet, so wird ein entsprechend einer vorgewählten logischen Funktion auf das unbekannte Bild
bezogenes Ergebnisbild aufgebaut und im Speicher 21 gespeichert. Zugriffseinrichtungen 1o4 und 1o5 rufen
die letzten zwei Bits jedes der Register 1o1 und 1o3 ab und liefern das im Zusammenhang mit Fig. 3 erwähnte, aus
den Bits RQ,R^,R„,Rg bestehende 2x2-Bit-Fenster; außerdem
wird das BitRpabgerufen, das, zusammen mit RQ,R-, wie
nachstehend noch erläutert wird, in der CWN-Betriebsart verwendet wird.
Obwohl die Schieberegisterausführungen der Register 62,6o
und 82 (Fig. 4 und 8) aufgrund ihrer Einfachheit und
40981 3/079*
niedrigen Kosten vorteilhaft sind, soll doch hervorgehoben werden, daß die Register 62,60 und 82 unter
dem Gesichtspunkt spezieller Vorteile unterschiedlich ausgeführt sein können. Z.B. wird in der Schieberegisterausführung
nach Fig. 8 der Inhalt jedes der Register (36 Bits) einmal vollständig herumgaschoben,
bevor ein nachfolgendes Wort in das Register eingebracht werden kann. Beim Register 62 sind also 36 Bit-Zeitintervalle
der U-Schiebeimpulse erforderlich, um das Wort im Schieberegister 87 henimzuschieben, bevor
es in das Schieberegister 88 übertragen und durch ein neues Wort ersetzt werden kann. Die Verarbeitungsgeschwindigkeit
ist damit durch die lange der Schieberegister begrenzt. Da für manche Verarbeitungsaufgaben
nur ein !Teil des 36 Bit-Worts erforderlich ist, kann
durch Verwendung einer die interessierenden Abtastbits willkürlich abrufenden, in Fig. 9 dargestellten Ausführungsform
die Gesamtverarbeitungsgeschwindigkeit erhöht werden.
Im einzelnen sind in Fig. 9 drei parallel ausgebende Register 87f,88» und 89' für Einzelwörter (36 Bits)
dargestellt, die in ihrer Funktionsweise den drei oben stehend erläuterten Schieberegistern 87,88 und 89 der
Fig. 8a entsprechen. In jedes der Begister 87',88',Sg1
können 36 Bits parallel geladen und parallel abgerufen werden. Wie in Fig. 8a wird das Eegister 87' der Fig.9
über die Speichersammelleitung 22 geladen. Das Register 88'
wird parallel aus dem Register 87* geladen und dementsprechend wird das Register 89' parallel aus dem
Register 88' geladen (die hierzu jeweils erforderlichen Einrichtungen sind nicln. dargestellt).
Im Gegensatz zur Ausführungsform nach -Fig. 8a, bei der
40981 3/0794
das Wort innerhalb jedes Registers vollständig umlaufen muß, bevor ein neues Wort in dieses Register
übertragen werden kann, ermöglicht die Ausführungsform nach Fig. 9 den willkürlichen Zugriff zu Wortteilen.
Dies hat zur Folge, daß die G-esamtverarbeitungszeit,
anders als im Fall der Fig. 8a, bei dem sie vollständig unabhängig von der Bildgröße war, ungefähr proportional
zur verarbeiteten Bildgröße ist.
Wie bereits bei der Beschreibung der Figuren 4 und 5
ausgeführt wurde, werden die Paraiaeterregister 54 mit
zwei durch UBA und BTS bezeichnete sechs Bitgrößen geladen. Die Größe UBA bezeichnet im Speicher 21 eine
Startbitposition, aus der ein unbekanntes Datenbit abgerufen wird. Die Größe.BTS bezeichnet die Anzahl der
zu verarbeitenden Bits. Zur Erläuterung sei angenommen, daß ein vollständig zwischen den Bitpositionen
12 und 2o des unbekannten Datenworts enthaltenes kleines Bild verarbeitet werden soll. In dieser Situation erhält
die Größe UBA, wie in Fig. 6 dargestellt ist, den Wert 12, d.h.daß das erste zu verarbeitende Bit das Bit 12 ist.
Die Größe BTS erhält den Wert 9; es sind also insgesamt 9 Bits, d.h. die Bits 12 bis 2o zu verarbeiten. Durch
Bestimmen der speziellen Teile der zu verarbeitenden unbekannten Datenwörter wird die Gesamtverarbeitungszeit
etwa proportional zur Bildgröße; sie ist nicht mehr unabhängig von der Bildgröße wie im Fall der Schieberegister
nach Fig. 8.
Um einen speziellen Teil des unbekannten Datenworts aus den Registern 87',8S1 und 89' der Fig. 9 abrufen zu
können, sind an die Ausgänge der Register 87',88· und 89'
parallel jeweils identische Mehrwegschalter (multiplexer)
409813/0794
1o8, 11o und 112 angeschlossen. Ϋ/le untenstehend noch
näher erläutert wird, sprechen die Mehrwegschalter 1o8, 11o,112 beim Abrufen jeweils spezieller 3 Bits aus
jedem der Register auf das Ausganges signal eines "1 aus 36"
Dekodiernetzwerks 114 an.
Zum anfänglichen Speichern der Größen UBA und BTS sind
Zähler 116 bzw. 118 vorgesehen. Im oben angeführten Beispiel würde die Größe UBA =12 aus dem bezeichneten
Teil des Parameter-"°gisters 54* (Fig. 5) in den Zähler
116 übertragen wer ι. Dementspreeilend würde die Größe
BTS = 9 aus dem hierfür vorgesehenen Feld des Parameterregisters 54g in den Zähler 118 übertragen werden. Zum
Aufwärtsfortschalten des Zählers 116 und zum Abwärtsfortschalten
des Zählers 118 ist eine Bitimpulsquelle 121 vorgesehen. Es wird solange aufwärts- bzw. abwärtsfortgeschaltet
bis der Zähler 118 -einen Zählerstand Null erreicht hat, wobei der Zähler 116 alle infrage kommenden
Bitzählungen durchlaufen hat. Zum Erfassen des Zählerinhalts
Null im Zähler 118 ist ein Kull-Detektorkreis
vorgesehen. Sobald der Zählerinhalt Null erfasst wird, verhindert ein Gatter 122 das weitere Portschalten des
Zählers 116. Das Ausgangssignal des Zählers 116 wird dem Dekodiernetzwerk 114 zugeführt, das für jeden der
36 verschiedenen Zählungen des Zäklers 116 eine von
36 Ausgangsleitungen übertragungsfahig macht. Jede der 36 Ausgangsleitungen des Dekodiern-etzwerks 114 bewirkt
das Abrufen eines unterschiedlichen 3-Bitsatzes aus den
Registern 87f,88· und 89'.
Die Mehrwegschalter 1o8,11o und 112 sind, wie bereits
erwähnt, identisch. Zur Vereinfachrang ist in Fig. 9 jedoch lediglich der Mehrwegschalter 11o im Detail dargestellt.
Weiterhin dargestellt ist die Verbindung der Bitausgangs-
4Q98 1 3 / 0 79A
leitung "34" des Dekodiernetzwerks 114 mit internen
Gattern des Mehrwegschalters 11o. Die dargestellte Zwischenverbindung ist typisch für alle anderen Zwischenverbindungen
zwischen den Bitausgangsleitungen des Dekodiernetzwerks 114 und der Mehrwegschalter 1o8,11o,112.
Wie bereits im Zusammenhang mit Fig. 8a erläutert wurde, sollen jeweils drei benachbarte Bits gleichzeitig aus
den Registern 87',88' und 89' abgerufen werden. Wird z.B. die Bitausgangsleitung 34 des Dekodiernetzwerks 114
erregt, so sollen die Bits 33»34 und 35 der Register
87',88' und 89' abgerufen werden. Hierzu ist der Ausgang
jeder Stufe der Register mit drei getrennten UND-Gattern 122,124 und 126 verbunden. Die Ausgänge aller UND-Gatter
122 sind mit den Eingängen eines ODER-Gatters 128 verbunden. Dementsprechend sind die Ausgänge aller UND-Gatter
124 mit den Eingängen eines ODER-Gatters 13o und die Ausgänge aller UND-Gatter 126 rait den Eingängen eines
ODER-Gatters 132 verbunden. Die Ausgänge der ODER-ffattei·
128,13o und 132 des auf das Register 88' ansprechenden
Mehrwegschalters 11o liefern jeweils die Bits U^, Ug und
U„, die der mittleren Spalte des in Fig. 3 dargestellten 3x3-Bitfensters entsprechen.
Wird eine Bit-Ausgangsleitung des Dekodiernetzwerks 114
erregt, so erregt sie ihrerseits ein mit den Ausgängen dreier benachbarter Stufen in jedem der drei Register
87',88' und 89' verbundenen UND-Gatter. Bei der in Fig.9
dargestellten typischen Zwischenverbindung wird, beim Erregen der Bitausgangsleitung 34 das der Stufe.35 zugeordnete
UND-Gatter 126, das der Stufe 34 zugeordnete UND-Gatter 124 und das der Stufe 33 zugeordnete UND-Gatter
122 übertragungsfähig. Die Bits der Stufen 33,34?35 können
damit die ODER-Gatter 128,13o und 132 passieren und bilden
40981 3/0794
- 3ο -
die Bits U7,Ug und U, des 3x3-Bitfensters nach Pig. 3.
Wenn jeder 3-Bitsatz aus'den Registern 87',88',89'
abgerufen wurde, wird der Zähler 116 aufv/ärtsfortgeschaltet
und der Zähler 118 abwärtsfortgeschaltet bis der Zähler 118 den Zählerinhalt Null erreicht. Sobald
dies geschieht, wird der Zählerinnalt der Register 87' und 88* jeweils parallel in die Register 88' und 89'
übertragen und aus detfl Speicher 21 wird ein nachfolgendes
Wort in das Register 87' eingebracht.
Die obenstehenden Erläuterungen zu Fig. 9 sollen hervorheben,
daß die zur Verarbeitung der abgerufenen Bits der unbekannten Daten erforderliche Verarbeitungszeit
proportional der Bildgröße und nicht unabhängig von der Bildgröße wie im Fall der Fig. 8a ist. Obwohl die
Punktionsweise der Pig.-9 lediglich für das U-Register dargestellt wurde, versteht es sich von selbst, daß das
M- und das R-Register 60 bzw. 82 der Pig. 4 entsprechend ausgeführt sein muß, wenn die Verarbeitungszeit verkürzt
werden soll.
Im folgenden rollen anhand you Pig. 1o die Logiknetzwerke
7oj74j84 und .'2 der Pig. 4 näher erläutert werden. Wie
bereits ausgeführt wurde, erzeugt das Korrelations-Logiknetzwerk
7o für jedes Bit der aus den im Register 62 gespeicherten unbekannten Daten entnommenen 3x3-Bitprobe
ein Korrelationssignal.
Jedes Korrelationssignal ist eine vorgewählte logische Kombination oder Punk eion äea jeweiligen unbekannten Bildbits
(Uq bis Ug) und ocs einzelnen oder gemeinschaftlichen
bekannten Bildbits (M), wobei zur Erzeugung der jev^eiligen
Korrelationssignale jeweils die gleiche Kombinationslogikfunktion für alle neun der unbekannten DaSenprobebits
verwendet wird. Die speziell erzeugte Logik-Funktion wird
409 813/0794
durch einen binären Korrelationskode gesteuert, der einer der im Register 54o (Fig.5) gespeicherten Steuerparameter
ist. Der Korrelationskode weist drei mit CTIM, CUN und CNM bezeichnete Steuerbits auf, die einer
Korrelationslogikmatrix 2oo (Fig. 1oa) zuführbar sind. Das Ausgangssignal (ACC«) für jede der neun Positionen
des 3x3-Probefelds, d..h. für N = O bis 8, kann wie folgt in Boole'scher Algebra ausgedrückt werden:
ACCn = CUM-Un-M + CUN-Un'1 + CNM«ÜN«M
Die Korrelationslogikmatrix 2oo ist damit im wesentliehen
eine allgemein verwendbare Logikgattermatrix, die unter
Steuerung durch den Korrelationskode sehr zweckmäßig Boole'sehe Kombinationen jedes unbekannten Bildbits und
des gemeinsamen bekannten Bildbits durchführen kann.
Die neun von der Korrelationslogiksiatrix 2oo gelieferten
Korrelationssignale schalten jeweils Zähler 2o2Q bis 2o2Q
fort, wobei die von diesen Zählern, aufsummierten Zählungen
entsprechend den unbekannten Probebits Uq bis Ug mit
CCq bis CCg bezeichnet sind. Beim Abtasten der bekannten
bzw. unbekannten Bilder geben die von den Zählern 2o2Q bis 2o2g aufsummierten Zählungen an, wie oft die spezielle
vorgewählte logische Punktion für jede Bitposition innerhalb des Probeblocks eine logische "1" oder ein "Richtig"-Signal
erzeugt hat. Auf diese Weise erhält man eine Korrelationsinformation, die den Zusammenhang des
unbekannten Bilds(U) mit dem bekannten Bild (M) nicht nur für die Mittelposition, sondern auch für jede der acht
verschobenen Positionen des Bilds angibt. Weiterhin kann die Grundlage ,auf der die Korrelation durchgeführt wird,
durch den Programmierer des Rechners über die Wahl des Korrelationskodes flexibel variiert werden. Die gebräuch-
409813/079*
lichste Korrelationsart ist die der EXKLUSIV-ODER-Punktion,
die durch Setzen von GUN und CNM erhalten wird. Es gilt:
© M
Die Zähler 2o2Q bis 2o2Q sind an die SpeicherSammelleitung
22 (Fig.4) angeschlossen; die aufsummierten Zählungen
können somit, nachdem das gesamte Bild abgetastet wurde, in den Speicher 21 überführt werden; die Zähler können
dann rückgestellt werden. Die BBV 26 weist weiterhin vorzugsweise eine Gattermatrix 2o4 auf, durch die derjenige
der Zähler 2o2Q bis 2o2g bestimmt und identifiziert
werden kann, der die größte Zählung aufsummiert hatte.
Seine Bezeichnung wird über die Speichersammelleitung 22 ebenfalls dem Speicher 21 zugeführt und dort gespeichert,
um nachfolgend in einem optischen Zeichenleseprogramm verarbeitet werden zu können und so die Position mit der
besten Korrelation schnell identifizieren zu können.
Wie oben stehend erläutert,werden die neun U-Bits und das
einzelne bekannte Datenbit (M) außerdem dem Ergebnislogikschaltkreis
74,76 zugeführt. Dieser Schaltkreis erzeugt ein Einzelbitausgangssignal R, das eine vorwählbare logische
Kombination verschiedener zugeführter Signale, einschließlich der zehn unbekannten und bekannten Bilddatenproben
Uq bis Ug und M, darstellt.
Wie untenstehend noch näher erläutert wird, kann das Ergebnisbild, abhängig von dem zur Erzeugung des R-Bitsignals
verwendeten Verfahrens auch eine modifizierte oder verbesserte Version des ursprünglichen unbekannten Bilds
0 9 8 1 3/0794
sein. Da das Ergebnisbild normalerweise die gleiche relative Größe wie das ursprüngliche unbekannte Bild
hat, soll hervorgehoben werden, daß das unbekannte Bild in Wirklichkeit auch verkleinert oder vergrößert
werden kann, wenn das Abtasten der unbekannten und Ergebnis-Bilddatenfelder entlang einer oder beider
Achsen asynchron und nicht synchron erfolgt. Wird das Ergebnisbild .schneller als das ursprüngliche unbekannte
Bild abgetastet, so wird das Bild vergrößert, wobei ein gegebenes R-Bit in mehr als einer R-Registerstelle
gespeichert wird, um die zusätzlich erforderliche binäre Information zu liefern. Dementsprechend kann das Bild
verkleinert werden, indem das unbekannte Bild schneller als das Ergebnisbild verschoben wird, wobei die überzähligen
R-Bits übergangen und nicht gespeichert werden.
Wie obenstehend erwähnt, besteht äer 3x3-Block der unbekannten
Daten aus einem zentralen Bit U8 und acht benachbarten
Bits Uq bis U7. Wie aus Fig. 1 ob hervorgeht,
wird das zentrale Bit Ug bei der Erzeugung des Ergebnisbits
Rg in Abhängigkeit der acht getrennt von UQ erzeugten
benachbarten Bits UQ bis U7 bewertet. Die Verarbeitung
der acht benachbarten Bits UQ bis U7 kann geeigneterweise
als Erzeugung aufeinanderfolgender Sätze von Nachbarschaftssignalen aufgefasst werden, wobei die
Funktionstransformation,durch die jeder aufeinanderfolgende
Satz erzeugt wird, mit Hilfe eines entsprechenden Teils der im Register 54 gespeicherten Operationssteuerparameter
erfolgt. Da die Konstruktion einer speziellen Logikmatrix, mit deren Hilfe ein definierten
logischen Kombinationen gegebener Eingangssignale entsprechendes
Ausgangssignal erzeugt werden kann, zum Grundwissen eines Fachmanns für digitale Logikschaltkreise
gehört, sollen die verschiedenen zur Durchführung dieser
3/0794
!Transformationen herangezogenen logischen Matrizen nicht näher erläutert werden. Diese Matrizen lassen
sich leichter in Form der durchzuführenden logischen Kombinationen als Boole'sehe Funktionen ausdrucken.
Bevor auf die Einzelheiten der Fig. 1 ob eingegangen
"51 2 werden soll, soll hervorgehoben werden, daß es 2.^
mögliche Funktionen einer 3x3-Nachbarschaft gibt. Um
eine völlig allgemeine Funktion bezeichnen zu können, ist deshalb ein 512-Bitregister erforderlich, was
hinsichtlich seiner Parameterladeaeit und der Kompliziertheit seines Aufbaus zu umfangreich wäre. Eine
beträchtliche Verringerung der Steuerlogik läßt sich durch eine von der Behandlung seiner acht Nachbarn
getrennte Behandlung des mittleren Bits UQ erreichen.
Auf diese Weise kann man dann jede Funktion der 8-Bit-Nachbarschaft
mit 256 Steuerbits bezeichnen. Die sich ergebende 1-Bit-Aussage kann dann mit dem U0-Bit in
2 durch ein 4-Bit-Register bezeichenbaren Möglichkeiten
kombiniert werden. Diese 26o Bits sind jedoch noch immer zu zahlreich. In einer Ausfiihrungsform der Erfindung
wird deshalb eine gedrängte aber wirkungsvolle Untergruppe dieser 2 ° Funktionen ausgewählt. Diese Untergruppe
schließt eine allgemeine Form einer Nachbarschaftsmajoritätslogik ein. Die zugelassenen Funktionen
beruhen auf der Wachbar schaftsdichte, oder 1 ser-Zählung der 8-Bit-Nachbarschaft und speziell modifizierten
Formen hiervon.
Die U-Nachbarschaft (UQ bis U^) der Fig. 3 kann zu Anfang
durch Substitution der drei entsprechenden Bits des vorher erzeugten Ergebnisworts, d.h. der BitsROQ bis RO2
an die Stelle der drei Bits UQ bis Up in der linken
Spalte des 3x3-Felds, selektiv modifiziert werden.
409813/079A
Diese Substitution wird bei Vorliegen eines Steuerbits CWN in einer Logikmatrix 21 ο durchgeführt. Im folgenden
soll das Feld der acht auf diese Weise erzeugten Signale
als V-Naehbarschaft bezeichnet werden und einzelne mit Vq bis V7 bezeichnete Signale umfassen. Diese Signale
sind in herkömmlicher Boole'scher Form entsprechend der untenstehenden Tabellei definiert. Die V-Naehbarschaft
ist, wie hieraus zu ersehen ist, bei Fehlen des CWN-Steuerbits mit der ursprünglichen U-Naehbarschaft
identisch.
Tabelle | 1 | cwn * |
V0 = CWN · R0 | + | ÜWN - |
V1 = CWN · R1 | + | cwl · |
V2 = CWN · R2 | + | |
T4 = \ | ||
T6 - V | ||
T- TI7 | ||
Ein als W-Nachbarschaft bezeichnetes Feld von acht Signalen wird auf folgende Art gebildet; Für jedes
der geradzahligen V~Nachbarschaftesignale VQ, V2, V.
und Vg wird in einer Logikmatrix 212 ein entsprechendes
W-Nachbarschaftssignal erzeugt, das entweder mit dem
entsprechenden V-Nachbarschaftssignal identisch ist,
oder das eine vorbestimmte logische Kombination des entsprechenden V-Nachbarschaftssigrnals mit zwei seinen
Nachbarn ist; es gilt also W^ = f(VN, Vn-1, V)
4098 1 3/0794
Die Auswahl wird mit Hilfe eines Operationssteuer— parataeterbits CDN durchgeführt. Die Logikmatrix 212
führt typischerv/eise die in den Tabellen 2 und 3 angegebenen Gleichungen aus:
W0 = (V0 +V7) · V^ CON + CON·V0
W2 = (V2 + V1 ) · V5" CON + CON-V2
W. = (V. + V5) · VT CON + CÖI*V
¥c = (V-; + Vc) ' VT CON + CON*VC
Die Tablle 2 definiert die zur Erzeugung der geradzahligen W-Nachbarschaftssignale erforderlichen
Gleichungen.. Für Jedes der ungeradzahligen V-Nachbarschaftssignale V19V-,Vj- und V^ wird ebenso ein entsprechendes
W-Nachbarschaftssignal erzeugt, das entweder
mit dem entsprechenden V-Nachbarschaftssignal
identisch ist, oder das eine etwas abweichende logische Funktion des entsprechenden V-Nachbarschaftssignals
und zwei seiner Nachbarn darstellt. Die Auswahl ist wiederum eine Punktion des Steuerparameterbits CON.
Diese vier Signale sind in der folgenden Tabelle 3 definiert.
W1 = (YZ + V0") · V1.CON + CON-V1
W, = Tj" + V2") · V5 CON + ΟΌΝ·ν5
W = (vT + VT) · V5 CON + ÜÜIT'V
W? = (V5 + V6) · V7 CON + C0N«V7
40981 3/0794
Wie untenstehend noch näher erläutert wird, beruhen die speziellen logischen"Punktionen,durch die jedes
V-Nachbarschaftssignal ersetzt werden kann, auf der
Bestimmung der Euler'sehen Zusammenhangszahl des gesamten Bilds und der Auswirkung auf diese Zusammenhangszahl,
die durch Ändern des zentralen Bits (Üq) in
jeder gegebenen 3x3-Nachbarschafi (U bis TJ7) des unbekannten
Bilds,herausgefunden werden kann. Dieser Effekt
wird als "Euler1 sches Differential1' bezeichnet.
In einer Logikmatrix 214 wird ein Feld von acht X-NachbarSchaftssignalen
durch Kombination der W-Nachbarschaftssignale mit zwei 8-Bit-Steiaerpararaetern NMT und
NSL gebildet. Die einzelnen Bits ±n jedem dieser Parameter entsprechen jeweils einem der Nachbarschaftssignale,
d.h. der Parameter NMT weist acht einzelne Bits NMT ^ für N=O bis 7 auf. Die X-Nachbarschaftssignale werden
entsprechend der folgenden Boole1 fachen Beziehung erzeugt:
Xn = Wn . NSLn ©
in der das Symbol Q- die Exklusiv-©DER-Funktion darstellt.
in der das Symbol Q- die Exklusiv-©DER-Funktion darstellt.
Aus dieser Beziehung ist ersichtlich, daß durch Laden geeigneter Operationssteuerparametier in das Register 58
jedes Bit der Nachbarschaft entweder unabhängig von dem entsprechenden W-Nachbarschafüssignal auf einen
gewünschten oder vorbestimmten Wert gesetzt werden kann, oder daß es eine ausgewählte Punktxon des entsprechenden
W-Nachbarschaftssignals sein kann- Sind z.B. die NMT-Bits
in einem speziell gewählten Muster gesetzt, und sind alle NSL-Bite Eins, so beruht die Zahl der im X-Nachbarschaftsfeld
der Signale vorliegenden Einsen auf dem Ausmaß oder Grad der Übereinstimmung zwischen dem W-Nachbarschaftsfeld
409813/0794
und dem vorgewählten KMT-Bit-Muster. Dementsprechend
können ausgewählte Bitstellungen wirksam ausgeschlossen werden, so daß z.B. nur die geradzahligen W-Nachbarschaftssignale
ein ErgebnisMt in der X-Nachbarschaft erzeugen
können.
Die Anzahl der in der X-Naohbarschaft vorliegenden Einsen
wird in einem in Fig. 1 ob dargestellten Zähler 216 gezählt
und die Zählung als 1-aus-9-Kode ausgelesen. Es werden mit anderen Worten neun Ausgangssignale (C0 bis
CR) vorgesehen und es wird nur auf demjenigen Signalleiter
eine "1" erzeugt, der dem Wert der Zählung, d.h. der _ Anzahl der im gesamten X-Nachbarschaftsfeld der Signale
vorliegenden Einsen, entspricht. Die verbleibenden acht Signale sind "0". Die vom Zähler 216 abgegebenen
neun Signale werden in einer Logikmätrix 218 mit einem
9-Bit-Operationssteuerparameter KTE entsprechend der
folgenden Boole'sehen Punktion kombiniert und liefern
ein als P-Bit bezeichnetes Einzelbitsignal.
P = C0 · IiTR0 + G1 · NTR1 + C2-NTR2 +...+Cq-NTRq
Hierbei sind NTRQ bis NTRQ die neun einzelnen Bits des
Parameters NTR.
Da der 1-aus-9-Kode die Anzahl der "Einsen" in der X-Nachbarschaft
wiedergibt, kann der 9-Bit-Steuerparameter NTH eine Schwellwertoperation bezüglich dieser Anzahl
ausführen. Wenn alle NTR-Bits, die Werten unterhalb des gewählten Schwellwerts entsprechen, auf "0" und die
anderen NTR-Bits auf "1" gesetzt werden, so wird das P-Bit nur dann zu "1", wenn die Anzahl der "Einsen"
der X-Naehbarschaft über dem Schwellwert liegt. Da jedoch der NTR-Parameter mit einem Satz Signale aus einem
409313/0794
1-aus-9-Kocle kombiniert wird, katro über das P-Bit
ebenso anzeigt werden, ob die Anzahl der Einsen in
der X-Naehbarschaft irgendeine aus einer Vielzahl willkürlich gewählter diskreter Werte ist. Wie untenstehend
noch näher erläutert wird, ist diese Eigenschaft bei der Bestimmung verschiedener Zusammenhänge
bei der Bildanalyse und Modifizierung von Nutzen.
Das P-Bit wird dann in einer Logifematrix 22o mit dem
abgetasteten Masken- oder bekannten -Bit (M) und mit' dem zentralen Bit des unbekannten Prüfblocks (Ug) kombiniert,
wobei die Logikmatrix 22o das R-Bit entsprechend der folgenden Boole'sehen Gleichung erzeugt:
R8 = UQH5»BSLA
ο U
BSL2
BSI,
+ UDMP* »BSLC
ο b
+ U0MP-BSL7
Hierbei bedeuten BSL bis BSL7 die einzelnen Bits eines
allgemein mit BSL bezeichneten 8-Bit-0perationssteuer-
parameters. Da BSL 2 mögliche Zustände einnehmen kann,
können alle 2 möglichen Boole'sehen Punktionen von Ug,
M und P erzeugt werden. Das R-Bit -wird dann, wie in Pig. 4 dargestellt, dem Register 82 zugeführt. Das R-Bit
ist mit Rgbezeichnet, um anzuzeigen, daß es in der
binären Betriebsart in seiner Stellung normalerweise
40981 3/0794
dem zentralen Bit Uß der U-Nachbarschaft (Fig.3) entspricht.
Da die Konstruktion einer Logikmatrix, die die in den Tabellen 1,2,3 und 4 definierten verschiedenen
Signalkombinationen und die P- und R-Signale erzeugen
kann, von der Art des verwendeten kompatiblen elektronischen Logiksystems abhängt, soll die spezielle
Konstruktion, wie bereits erläutert wurde, nicht näher dargestellt .werden.
Als Beispiel einer Nachbarschaftsverarbeitung soll eine Bildreinigung angeführt werden, bei der gestreute Einsen
entfernt werden sollen. Dies bedeutet, daß das Ergebnisbit R8 außer für U8 = 1 , gleich U8 ist und 7 oder 8 Null-Nachbarn
hat. Zuerst wird P = 1 gesetzt für diejenigen Zellen, die 0 bis 6 Einser-Nachbarn haben, indem
NTR0 =...= NTR6 = 1 gesetzt wird, (oktal: NTR = 774).
Als nächstes ist R = Ug*P erforderlich; dies erhält man
durch BSL,. = BSL^7 = 1. (oktal: BSL =5). In diesem Beispiel
ist, wie in den meisten Anwendungsfallen, CWN = CON
= NMT = O und NSL =11111111(377 oktal).
Zusätzlich zur Erzeugung und Speicherung des Ergebnisbilds kann die BBY 26 außerdem gewisse Eigenschaften des Ergebnisbilds
analysieren oder messen, indem sie gleichzeitig mit der Erzeugung des Ergebnisbilds einen in
Fig. 3 dargestellten und aus 4 Bits Rq>R-i >R7 "und R8
bestehenden Block von Prüfdaten untersucht. Der hierbei
erhaltene 4-Bit-Block der Prüfdaten wird dem eine Logikmatrix
23o (Fig.io) aufweisenden Ergebnisanalysenetzwerk
84 zugeführt, das 5 Ausgangssignale ARQ1, ARQ2, ARQ,,
ARQ-, und ARAR entsprechend den in Tabelle 4 angegebenen
Boole'sehen Punktionen aus den vier Probebits erzeugt.
Λ098 1 3/0794
!Tabelle | 4 |
-B0S1 | R7 |
+ E0 E1 | R7 |
+ E0 E1 | E7 |
0 R1 R7
ARQ2 | = R0 | R1 | R7 | E8 |
+ R0 | R1 | R7 | R8 | |
+ R0 | R1 | R7 | R8 | |
+ R0 | R1 | R7 | R8 | |
ARQ5 | = R0 | R1 | R7 | \ |
+ R0 | R1 | R7 | R8 | |
+ R0 | R1 | R7 | R8 | |
+ R0 | R1 | R7 | R8 | |
AHQ4 | = R0 | R1 | R7 | R8 |
ARAR | = R8 |
Diese Signale werden jeweils Zählern 232-j bis 232j- zugeführt,
deren Zählung angibt, wieoft eine "1" im jeweiligen Signal beim Abtasten des gesamten Bilds auftritt. Die
Erzeugung einer "1" in einem der Signale ARQ-j, ARQo» ARQ-z
ARQ. zeigt das Auftreten eines jeweils zugeordneten Datenmustertyps im 2x2-Bit-Probeblock an. Diese von den
Zählern 2321 bis 232,- aufsummierten Zählungen können
409813/0794
deshalb in einer halbgraphischen Form nach Tabelle 5
dargestellt werden.
+ n(J°) + n(°°)
RQ2 = n(°°) + nig]) + n(JJ) + n(]°)
Aus dem Vorstehenden wir deutlich, daß die vom ersten Zähler 232., auf summierte Zählung die Anzahl
der im Ergebnisbild auftretenden "Außenecken" anzeigt, daß die vom zweiten Zähler 232? aufsummierte
Zählung (RQ2) die Anzahl der im Ergebnisbild gefundenen
Einheiten an "Seitenkanten"darstellt, daß die dem dritten Zähler 232-z auf summierte Zählung
(RQ,) die Anzahl der im ErgebnisTsild auftretenden
"Innenecken" anzeigt, und daß die vom vierten Zähler 232. aufsummierte Zählung (RQ^) die Anzahl der im
Ergebnisbild auftretenden "geschlossenen Blöcke" anzeigt. Die im letzten Zähler 232^ aufsummierte Zählung
(RAR) stellt lediglich die gesamte Anzahl der im gesamten Ergebnisbild auftretenden "Einsen" oder Bildpunkte
dar. Pig. 7 zeigt die Werte der Ergebniszählungen RAR und RQ^ bis RQ, für das dargestellte Ergebnisbild.
Die verschiedenen, in den Zählern 232., bis 232^ auf-
4098 1 3/0794
summierten Zählungen werden an die Speichersammelleitung 22 abgegeben und zur späteren Verwendung
bei der Durchführung der Bildanalyse durch die ZVE 24 im Speicher 21 gespeichert. Dies, soll nachstehend noch
näher erläutert werden. Zusätzlich zu den mehr direkt gemessenen Größen RQ1, RQ?» ^v ^U un(^· ^-^ kann eine
weitere Größe RQD definiert werden, die die Anzahl "diagonaler Verbindungen" wiedergibt. Es ergibt sich:
RQD = ηφ +n(J°)
Diese Größe kann aus der folgenden Beziehung gewonnen werden.
RAR = R0-1 + R0-2 + RQ]D + 3RQ3 +
RQ>
Bei der Berechnung der Zählungen RQ-j ,..., RQ^, werden
zweckraäßigerweise die an der Kante des R-Felds liegenden
2x2-Blöcke eingeschlossen. Y/enn nicht alle vier Bits
des Blocks innerhalb des momentanen R-Pelds liegen, werden die verbleibenden Bits gleich einem Operationssteuerbit
ROT gesetzt. Die Anzahl der gezählten 2x2-Blöcke ist damit (BTS+1)«(WDS+1 ).
Eine zusätzliche Größe RQQ kann als
RQ0 = n(°°)
definiert werden. Sie kann indirekt wie folgt berechnet werden:
RQ0 + RQ1 + RQ2 + RQD + RQ3 + RQ4 = (BTS+1 )· (WDS+1)
4098 13/0794
Die Ergebnisanalyselogik 84 und äie Ergebniszähler 86
weisen weiterhin vorzugsweise nicht dargestellte Übergangszähler auf, die zwei mit WZS und ZWT bezeichnete
Zählungen durchführen. Wenn die Bildverarbeitung vollständig ist und das gesamte Ergebnisbild erzeugt wurde,
definiert die Zählung WZT die Wortachsenkoordinate der ersten unmittelbar auf eine Spalte mit nicht nur Nullen
folgende Spalte mit nur Nullen. Sementsprechend definiert die Zählung ZV/T die erste Spalte mit nur Nullen
auf die unmittelbar eine Spalte mit nicht nur Nullen folgt. Diese Übergangszähler werden insbesondere bei
der optischen Zeichenerkennung verwendet. In derartigen Anv/endungsfallen enthält das Ergebnisbild oftmals mehrere
gedruckte Zeichen, deren Bitachse der vertikalen Richtung einer gedruckten Seite und deren Wortachse
der horizontalen Richtung einer gedruckten Zeile entspricht. Die Übergangszähler werden zweckmäßig zum
Peststellen des Anfangs und des Endes der Zeichen herangezogen.
Beispiele und Anwenüungsformen
Die obenstehende Beschreibung bezog sich hauptsächlich auf die Gestaltung und Konstruktion der erfindungsgemäßen
Anordnung und weniger auf Ausführungsbeispiele, die die Verwendbarkeit dieser Anordnung demonstrieren. Obgleich
die Verwendbarkeit der von der beschriebenen Anordnung gelieferten Information bei der Identifizierung, Verarbeitung
und Analyse binär zugefiihrter Bilder für Fachleute auf dem Gebiet der Iopologie,des optischen Zeichenlesens
und der Bildanalyse offensichtlich ist, soll der Nutzen dieser Anordnung und ihre bevorzugte Betriebsart
anhand von Beispielen der Bildverarbeitung erläutert werden.
40981 3/0794
Eine der einfacheren aber gebräuchlicheren Punktionen
der dargestellten Anoränung ist die Identifizierung unbekannter Bilder bezogen auf bekannte Bilder oder
Masken. Die bekannten Bilder können im Speicher als Bezugsbild gespeichert v/erden. Bäe bekannten und unbekannten
Bilder werden direkt verglichen, wenn die Felder der die einzelnen geeignet abgetastet und orientierten
Zeichen, etwa gedruckte Suchstaben oder Zahlen wiedergebenden binären Daten an jeweils diskreten
Stellen des Speichers gespeichert sind. Ein individuelles, ein unbekanntes Bild wiedergebendes Datenfeld
kann dann durch die Register 87,38,89 (Fig.8a) synchron zur Abtastung der ein ausgewähltes Bild oder eine
Maske wiedergebenden Daten durch das Register 97 abgetastet werden. Der Zähler 2o2 (Fig.io) wird dann auf
Zählungen fortgeschaltet, die den Korrelationsgrad zwischen den bekannten und den unbekannten Bildern
für jeweils verschobene oder unverschobene relative Positionen wiedergeben. Eine unter einem gewissen
Pegel liegende, auf einer Exklusiv-ODER-Korrelation
beruhende Fehlanpassungszählung Scann dann als Angleichung akzeptiert werden, oder es kann eine Serie
von Masken durchlaufen werden, wobei die beste erhaltene Korrelationszählung zur Anzeige einer akzeptierbaren
Angleichung herangezogen werden kann. Es versteht sich, daß unter der Steuerung des Rechnerprogramms
eine voraussagende Analyse eines Worts oder eines Satzes die zuerst auszuprobierende Maske
bestimmt werden kann, um so auf einer statistischen Grundlage die Anzahl der auszuprobierenden Masken
zu verringern.
Da jedes Bit des das bekannte BiXd wiedergebenden
40981 3/0794
Datenfelds nicht nur mit dem zentralen oder Haupfbit
(Uo) des 3x3-I)rüfblocks der unbekannten Daten verglichen
wird, sondern auch mit jedem seiner acht
unmittelbaren Nachbarn (XJq bis U^), deren einzelne Korrelationen
unabhängig voneinander erhalten v/erden,erhält tnav
nicht nur Korrelationszählungen für vermutlich ausgerichtete Lagen zweier zu vergleichender Bilder, sondern
auch für acht seitlich verschobene lagen. Hierdurch kann die Registrierung überprüft werden, und, falls notwendig,
können Korrekturmaßnahmen durchgeführt werden. Derartige Korrekturmaßnahmen können entweder über das die binären
das Bild wiedergebenden Daten liefernde ursprüngliche Abtastverfahren, oder mit Hilfe eines weiteren BBV-Korrelationsdurchgangs
durchgeführt werden, v/obei zwar das gleiche unbekannte Bild und die gleiche Maske verwendet
wird, jedoch zum Beispiel UWA und UBA geringfügig geändert und hierdurch eine unterschiedliche
Lage von U relativ zu M bewirkt wird.
Wie bereits erwähnt, kann das während des Abtastens des
unbekannten Bilds erzeugte und gespeicherte Ergebnisbild eine verbesserte Version des ursprünglichen unbekannten
Bilds sein. Damit können die Eigenschaften des ursprünglichen unbekannten Bilds durch Analyse des
Ergebnisbilds bestimmt werden. Durch geeignete Wahl der Ergebniskodeparameter kann, falls gewünscht, auch
Identität zwischen dem Ergebnisbild und dem ursprünglichen unbekannten Bild hergestellt werden.
Die Länge des Umfangs eines gegebenen Ergebnisbilds kann auf folgende Weise erhalten v/erden. Da der RC^-
Zähler (Fig.Tod) jedesmal fortgeschaltet wird, wenn eine 2x2-Nachbarschaft festgestellt wird, die zwei
4098 1 3/0794
unmittelbar benachbarte Einsen in einem keine weiteren Einsen enthaltenden Feld aufweist, kann jede Einheit
im RQ2-Zähler als eine Einheit des Umfangs angesehen
werden. Der RQ--Zähler wird jedesmal fortgeschaltet,
wenn eine 2x2-Hachbarschaft mit lediglich einer einzigen
Eins auftritt. Da die einzige Eins notwendigerweise an einer von drei Nullen umgebenen Ecke des 2x2-Pelds liegt,
bildet der Umfang notwendigerweise an dieser Stelle eine Ecke. Als geeigneter wirksamer Beitrag zum Umfang kann
die Diagonale über das einzelne Bit, d.h. 1 Ein-
heiten des Umfangs angesehen werden. Ebenso kann der den RQ-z-Zähler fortschaltende Typ einer 2x2-Hachbarschaft
als Ecke des Bilds angesehen werden; damit kann jedes Portschalten der Zählung des RQ,,-Zählers ebenfalls als
1
Beitrag von ' Einheiten zum gesamten Umfang angesehen
Beitrag von ' Einheiten zum gesamten Umfang angesehen
v2
werden. Die gesamte Länge des Umfangs eines Bildes (P)
kann deshalb durch Berechnen der Größe P=RQP +RQi
s/2 bestimmt werden. Diese Bestimmung kann mit Hilfe der
allgemeinen Rechenfähigkeiten des Rechners 11 erfolgen. Besteht das gegebene Ergebnisbild im Gegensatz zu einer
großen Menge von "Einsen" oder Bildpunkten, aus Zeilen, so kann eine mittlere Zeilenlänge (L^) in erster Näherung
gleich der halben Umfangslänge, d.h. Lt= P gesetzt werden
Während die Zähler RQ1, RQ2, BQ, und RQ. die Frequenz
anzeigen, mit der verschiedene Muster in dem aus dem Ergebnisbild entnommenen 2x2-Datenblock auftreten, gibt
die vom RAR-Zähler gelieferte Zählung lediglich die gesamte Anzahl an Einsen des Ergebnisbilds an. Diese
Zählung kann damit als Gesamtgewicht oder "auf Masse" des Bilds angesehen-werden. Hat man die mittlere Zeilenlänge
eines Bilds sowie seine Masse, so kann eine mittlere Zeilenbreite W in einer ersten Näherung durch
09 813/0794
Dividieren der RAR-Zählung durch die mittlere Zeilenlänge
erhalten v/erden. Eine Möglichkeit, ein Bild danach zu bewerten, ob es für Zwecke optischen Zeichenlesens,
d.h. zum Vergleich mit Masken, geeignet ist, besteht in der Bewertung der mittleren Zeilendicke. Pur
einen gegebenen Satz von Masken sollte die mittlere Zeilendicke, um zufriedenstellende Korrelationsergebnisse
erhalten zu können, zwischen vorbestimmbaren Grenzen liegen.
Eine weitere Verwendung der vom Zähler 232 (Pig.io) gemessenen
Größen ist die Bestimmung der relativen Anzahl an Körpern (B) und Löchern (H) eines gegebenen Bilds.
Bei Durchführung einer derartigen Analyse ist die Beachtung des Umfangsverlaufs jedes Körpers im Uhrzeigersinn
von Nutzen, wobei jeder Körper und jedes Loch durch quadratische Elemente des Ergebnisbilds gebildet wird.
Aus den quasi grafischen Definitionen der zum Portschalten des Zählers 232 in Tabelle 5 gegebenen Definitionen
ist ersichtlich, daß der RQ*-Zähler bei jeder
Rechtswendung beim Durchlaufen des Umfangs im Uhrzeigersinn fortgeschaltet wird, und daß der RQ^-Zähler für
jede■Linkswendung beim Durchlaufen des Umfangs im Uhrzeigersinn
einmal fortgeschaltet wird. Unter Durchlaufendes Umfangs im Uhrzeigersinn soll verstanden werden, daß
das Innere des Umfangs beim Durchlaufen rechts liegt. Bei einem einen einzigen Körper umgebenden geschlossenen
Umfang ist damit die Anzahl der Rechtswendungen um vier größer als die Anzahl der Linkswendungen, d.h. mit anderen
Worten, für den Außenumfang eines einzigen Körpers gilt RQ1=RQ,+4. Entsprechend gilt für den Umfang eines einzigen
Lochs RQ =RQ., +4. Da die von den Zählern 232 gelieferten
3 ·
Zählungen jedoch nicht von sich aus entweder die absolute Zahl der Körper (B) oder der Löcher (H) eines Bild definieren, wird die im folgenden als wEulerfsche Zahl" E benannte Größe B-H wie folgt definiert: E=B-H=—
Zählungen jedoch nicht von sich aus entweder die absolute Zahl der Körper (B) oder der Löcher (H) eines Bild definieren, wird die im folgenden als wEulerfsche Zahl" E benannte Größe B-H wie folgt definiert: E=B-H=—
09813/0794
Diese und entsprechende Formeln werden in S.B.Gray
"Local Properties of Binary Images in Two Dimensions" ,
IEEE Transactions on Computers, May 1971 streng abge-. leitet.
Ein Weg, auf dem man abschätzen kann, ob sich ein Bild zur Korrelation mit einer Reihe von Masken zu Zwecken
optischen Zeichenlesens eignet, besteht in der Berechnung der Euler·sehen Zahl B-H. Liegt die Euler'sehe
Zahl z.B. zwischen -2 und +3, so deutet dies mit ziemlicher Wahrscheinlichkeit darauf hin, daß das Datenfeld
ein gutes Einzelzeichenbild darstellt. Liegt die Euler'sehe Zahl andererseits außerhalb dieser Grenzen,
so zeigt diese Information üblicherweise an, daß das Bild unvollständig ist, oder daß es eine Anzahl zusätzlicher
Flecke ("Rauschen") enthält und daß es, um die Wahrscheinlichkeit einer richtigen Identifizierung zu
erhöhen, weiterentwickelt, verfeinert oder abgeändert werden sollte.
Ein weiteres "Rauschen" des Bilds anzeigendes Maß ist ein üblicherweise großer Wert von RQD. Da diese Größe
ein Maß "diagonaler Berührungspunkte" oder "beinahe zustande gekommener Berührungspunkte" ist, wird diese
Größe bei einer großen Anzahl kleiner, dicht benachbarter Teilbereiche sehr groß werden. Bei Durchführung
einer ersten, bzw. einer Versuchsabtastung eines Bilds zeigt damit ein hoher Wert dieser Größe an, daß die
Abtastung mit einer zu geringen Auflösung erfolgte; die Abtastung also Abstände zwischen Bildeleraenten nicht
richtig auflösen konnte.
In Fig. 11 ist ein Grautonbild eines typischen menschlichen Chromosoms dargestellt, das optisch in ein
t* 0 9 8 1 3 / 0 7 9
binäres Bild umgewandelt werden soll. Die dick ausgezogene "6" bezeichnet Punkte mit einer Dichte (Graupegel)
von sechs Einheiten oder mehr; "5" bezeichnet Punkte mit der Dichte 5 oder mehr, jedoch weniger als
6. Entsprechendes gilt für die anderen Zahlen; die Punkte bezeichnen Stellen mit einer Dichte größer als O.
Bei der Verarbeitung des Bilds nach Pig. 11 würde die BBV 26 üblicherweise zuerst in der Dichtebetriebsart
betrieben werden ,um das Grautonbild in ein binäres Bild umzuwandeln.
Im allgemeinen werden,wie in Tabelle 6 angegeben, unterschiedliche Sehwellwerte verwendet, wobei jeder .
der unterschiedlichen Schwellwerte ein unterschiedliches Ergebnisbild erzeugt. Wenn jedes Ergebnisbild erzeugt
wurde, wird es einer 2x2-lTachbarschaftsanalyse unterworfen,
wobei die Ergebniszählungen RAR und RQ- bis RQ,
erzeugt werden. Die Ergebnissählungen für jedes Ergebnisbild werden im Speicher gespeichert und ermöglichen
die Berechnung, der abgeleiteten Parameter E (Euler'sehe
■Zahl), L-r (Zeilenlänge) und Ü7 (mittlere Zeilenbreite)
durch die ZVE 25. Die ZVE 24 kann damit die in Tabelle dargestellten Daten erzeugen und speichern.
Schwellwert | Fläche | Zeilenlänge | mittlere Zeilenbreite |
Euler'sehe Zahl |
O | 456 | 1o2 | 4.5 | 15 |
1 | 242 | 58 | 4.2 | 1.0 |
2 | 176 | 57 | 3.1 | 0.5 |
3 | 113 | 56 | 2.0 | 3.5 ■ |
4 | 79 | 47 | 1.7 | 5.5 |
VJl | 34 | 32 | 1.1 | 6.5 |
6 | 5 | 7 | 0.7 | 5.0 |
4098 1 3/0794
Nachdem die ZVE 24 die Daten der Tabelle 6 berechnet hat, führt sie einen "Zweckmäßigkeitstest" durch und
bestimmt hierdurch den geeignetsten Schwellwert. Der .Zweckmäßigkeitstest wird durch ein geeignet formuliertes
Programm definiert, das unter Verwendung der in geeigneter Weise gewichteten Werte aus Tabelle 6
einen Güte- bzw, Zweckmäßigkeitsfalttor berechnet. Pur
ein annehmbares Objekt wird ein geeigneter Schwellwert durch eine beinahe den Wert UuIl einnehmende Euler'sehe
Zahl, eine entsprechend der Art des Bilds und dem Maßstab der Abtastung geeignet angepasste Zeilenbreite
und durch eine Zeilenlänge gekennzeichnet, die vom Schwellwert nur wenig beeinflussbar ist. In Tabelle
würde der Zweckmäßigkeitstest z.B. den Schwellwert Null aufgrund einer übermäßig hohen Euler'sehen Zahl ausschließen,
da diese möglicherweise ^rein gutes Bild eines
einzelnen Chromosoms charakterisiert. Die Schwellwerte 3 und darüber haben ebenfalls au hohe Euljr'sche Zahlen;
weiterhin sind die zugehörigen Zeilenbreiten für den bekannten Maßstab eines Chromosoms und den zum Abtasten
verwendeten bekannten Maßstab nicht geeignet. Der Zweckmäßigkeitstest würde also anzeigen, daß die Schwellwerte
1 oder 2 zu einem höchstwahrscheinlich eine gute Darstellung eines Chromosoms ergebenden binären Bild führen
würden.
Das unbekannte Bild wird unter der Steuerung des die Erzeugung des R-Bit-Signals (d.h. Rg in Pig.1 ob) bestimmenden
Ergebniskode abgeändert, wobei das R-Bit-Signal seinerseits das Ergebnisbild bestimmt. Eine mögliche
Abänderung des unbekannten Bilds besteht in der Erzeugung eines Ergebnisbilds, bei dem Teile des Bilds verbreitert,
d.h. in Wirklichkeit "verschmiert", wurden. Wie bereits erwähnt, kann die X-Nachbarschaft (Fig. 1ob) durch den
409813/0794
Einser-Zähler 218 und die Logikmatrix 22o durch. Schwellwerte bewertet werden; das P-Bit ist damit
immer dann eine "1", wenn die X-Fachbarschaft mehr als eine vorbestimmte Anzahl an Einsen enthält. Indem
Identität zwischen der X-Nachbarschaft und der ursprünglichen
unbekannten Kachbarschaft herbeigeführt wird, weiterhin ein relativ niedriger Sehwellwert
festgesetzt wird und indem das eigentliche P-Bit als R-Bit verwendet wird, kann ein Ergebnisbild erzeugt
werden, dessen Bildelemente wirksam verbreitert oder verschmiert sind. Ist ein Bild durch kleine Kicken
aufgeteilt, so können diese Lücken durch Verbreiterung geschlossen und die Anzahl der vorliegenden Körper
wesentlich verringert werden. Entsprechend können die Bildelemente auch dünner gemacht oder verringert
werden, indem ein relativ hoher Schwellwert festgesetzt wird. Wie jedoch untenstehend noch näher erläutert
werden soll, kann zum Dünnermachen von Bildkomponenten
oder Linien auch eine andere Methode angewandt werden, wobei diese andere Methode in den meisten Fällen bevorzugt
wird.
Bei einem in Echtzeit arbeitenden optischen Zeichenlesesystem, d.h. bei einer im wesentlichen gleichzeitig
mit der Bildabtastung erfolgenden Zeichenerkennung und Analyse, kann die Möglichkeit das Bild zu verschmieren
auch zur Erkennung einer Seitenkante oder einer Zeile innerhalb einer Seite verwendet werden. Bei einer derartigen
Betriebsweise erfolgt die Abtastung über ein relativ großes Feld hin, so daß eine die Fläche eines
einzelnen Zeichens wesentlich übersteigende Fläche abgetastet wird. Durch Verwendung der eben beschriebenen
Schmiertechnik ist es möglich, eine Zeichenzeile als
-40981 3/0794
ausgefüllter Balken erscheinen zu lassen, obwohl der eigentliche Abtaster scharf fokusiert ist. Die
BBV 26 kann also mit anderen Worten eine nichtfokusierte Abtastung simulieren. Da (Sie BBV 26 weiterhin
mit der Geschwindigkeit der Elektronik arbeitet, kann diese Änderung des Bilds bei Verwendung der BBV 26
schneller durchgeführt werden, aXs es durch entsprechende Steuerung des Betriebs, d.h. der Fokusierung,
des optischen Abtasters möglich wäre.
Wie bereits erwähnt, kann die die W-Naehbarschaft (Pig.
1ob) bildende Gruppe von Signalen unter Steuerung des
Operationssteuerbits CON selektiv abgeändert werden. Hierdurch können Punktionen gebildet werden, die zur
Bestimmung des Euler · sehenDifferentials ΔΕ herangezogen
werden können. Das Euler 'sehe Differential ΔΕ ist die
Änderung der Euler1sehen Zahl des Bilds, die bei einer
Änderung des zentralen Bits Ug von Hull auf Eins auftritt,
Die Zusammenhangszahl des Bilds kann auf zwei verschiedenen Wegen einschließlich eines dritten Wegs, der eine
Kombination der ersten beiden darstellt, gebildet werden. Bei einer 2x2-Nachbarschaft nach Eig. 3b, die zwei
lediglich an einer Ecke sich berührende "Einsen" aufweist, kann die Zusammenhangszahl des diesen Block
enthaltenden Bilds in einer ersten Art so definiert werden, als ob die beiden "Einsen-* zusammenhängen wurden.
Diese erste Art soll im folgenden als W-Typ der Euler1
sehen oder Zusammenhangs-Zahl bezeichnet werden. Sieht
man die "Nullen" als miteinander verbunden an, wobei die "Einsen" dann nicht miteinander verbunden sind, so
wird diese zweite Art der Zusammenhangszahl willkürlich
als "Z-Typ" der Euler1sehen bzw. Zusammenhangs-Zahl
bezeichnet. In beiden Fällen wird jedoch die Euler1 sehe
bzw. Zusammenhangs-Zahl (E) für die obenstehend mit
Bezug auf die Zähler 1o1 bis 1o5 der Ergebnisbildeigen-
409813/0794
schäften definierte Größe B-H genommen. Um unterscheiden
zu können, welche Art der Zusammenhangszahl
gemeint ist, v/erden geeignete Indizes verwendet, d.h. E für W-Iype der Zusammenhangs zahl und E53 für
den Z-Typ»
Die Auswirkung, die jedes ausgewählte zentrale Probebit TJg auf die Zusammenhangszahl eines Bilds haben kann,
ist alsAE (Euler'sches Differential) definiert. ΔΕ ist
die Differenz zwischen der sich für ein zentrales Bit = 1(E-) ergebenden Zusammenhangszahl und der für ein
zentrales Bit = 0 (Eq) ergebenden Zusammenhangszahl.
Porme!mäßig ausgedrückt bedeutet dies:
Δ E = E1 - E0
Zusätzliche Indizes können zur Bezeichnung des Z-Typs
oder des W-Typs der Zusammenhangszahl verwendet werden.
Es kann mathematisch gezeigt werden, daß ΔΕ und ΔΕ
lediglich gewisse diskrete V/erte, d.h. -3, -2, -1,0
und +1 einnehmen können. Es kann weiterhin gezeigt werden, daß die Auswirkung (ΔΕ) die ein gegebenes
zentrales Bit Ug auf die Zusammenhangs zahl des gesamten Bilds aus der 8-Bit Ü-Nachbarschaft (UQ bis U7) allein,
d.h. ohne Berücksichtigung des eigentlichen zentralen Bits, bestimmt werden kann. Dies ergibt sich aus der
Überlegung, daß das zentrale Bit möglicher Bestandteil jeder der vier 2x2-Nachbarschaften sein kann. Zur Bestimmung
von ΔΕ für eine gegebene U-Nachbarschaft wird
die W-Nachbarschaft in der Zusammenhangs-Betriebsart
erzeugt, d.h. der Operationssteuerpararaeter COIi wird
auf "1" gesetzt und die NMQi-und NSL-Parameter werden so
ausgewählt, daß, wie bereits beschrieben, lediglich die geradzahligen X-NachbarSchaftspositionen ϋβ,υρ,υ. und
409813/0794
TJg wirksam sind. Es kann dann mathematisch nachgewiesen
werden (siehe S.B. Gray, "Local Properties of Binary Images in Two Dimensions", IEEE Transactions·
on Computers, May 1971)» daß die durch den Einser-Zähler 94 bestimmte Zählung gleich 1 - AEW ist. Mit Hilfe der
9-Bit-Steuergröße NTR kann dann bestimmt werden, ob der so erzeugte δE -Werf ein Wert aus einem spezifischen
Wertesatz oder irgendein von Null verschiedener Wert ist. Dementsprechend kann auch ein P-Bit erzeugt werden. Die
Bildung des Ergebnisbilds wird damit je nach dem beeinflusst,
ob jedes einzelne zentrale Probebit Ug den W-Typ
der Zusammenhangszahl des Bilds auf spezielle Weise beeinflussen
kann.
Wenn die Auswirkung des zentralen Bits auf den Z-Typ'
der Zusammenhangszahl bestimmt werden soll, so werden die NMT- und NSL-Parameter so ausgewählt, daß lediglich
die ungeradzahligen X-Nachbarschaftspositionen X^ ,X^,X,-
und X7 wirksam v/erden. Es kann gezeigt werden, daß die
durch den Einser-Zähler 218 bestimmte Zählung gleich 1 -ΔΕΖ ist.
Da das P-Bit als Punktion der Auswirkung, die das zentrale
Bit Uq auf die Zusammenhangszahl haben kann, steuerbar
ist, und da jedes Ergebnisbit als beliebige Funktion des P-Bits beeinflusst werden kann, kann ein Ergebnisbild
erzeugt werden, das dem ursprünglichen unbekannten Bild entspricht, wobei jedoch alle nicht die Zusammenhangszahl
des gesamten Bilds betreffenden Bits entfernt wurden. Wie Fachleuten auf dem Gebiet der Topologie verständlich sein
wird, bewirkt das Entfernen der nicht die Zusammenhangszahl des Bilds beeinflussenden Bits ein Dünnerwerden der Linien
eines Linienbilds, ohne jedoch irgendwelche Linien zu unterbrechen, da das Entfernen irgendeines eine Unter-
-4098 1 3/0794
brechung einer Linie bewirkendem Bits die Euler1sehe
Zahl ändern würde und damit ein von Null verschiedenes Euler1sches Differential ergeben, würde. Durch wiederholtes
Erzeugen von Ergebnisbiläern in der hier beschriebenen Weise und durch Verwendung jedes Ergebnisbilds
als nächstes unbekanntes Bild, kann ein Mnienbild schrittweise verfeinert werden bis jede der zum
Bild beitragenden Linien nur noch ein einziges Bit breit ist. Wie bereits beschrieben, kann zur Bestimmung der
allgemeinen Auswirkung dieser Behandlung auf das zu verarbeitende Bild die mittlere Linienbreite berechnet
werden.
In Pig. 12a ist als Beispiel die Anwendung zur optischen Zeichenerkennung dargestellt. Pig. 12a zeigt in vereinfachter Form ein allgemeines Problem, bei dem zwei
benachbarte gedruckte Zeichen sich zwar überlappen, aber nicht berühren. Es muß nun einerseits erfasst
werden, daß sie sich nicht berühren, und andererseits muß das Bild des T (Spalten O bis 7) so dem nachfolgenden
Korrelationsprozess zugeführt werden, daß die zum A gehörenden Bits entfernt worden sind,und umgekehrt.
Der mit "a" zu bezeichnende erste Durchgang der BBY 26
führt eine von links nach rechts gerichtete Skelettieroperation im gesamten Bild (Spalten 0-14) durch. Durch
Anwendung des Betriebsartbits CON können Bits mit einem Euler1sehen Differential = 0 herausgefunden und entfernt
werden. Die Anwendung des Betriebsartbits CWN führt dazu, daß die linksseitigen Nachbarn jedes Bits (die
Zahlen 0,1 und 2 in Fig.3) aus dem neuen bzw. Ergebnisfeld
und nicht aus dem ungeänderten unbekannten Feld entnommen werden. Es soll hervorgehoben werden, daß zwei
benachbarte Bits, wie z.B. die an den Koordinaten 65
4098 13/0 7 94
und 75 (Reihe - Spalte) jeweils für sieh entfernbar sind, ohne daß der Zusammehang unterbrochen wird,
daß aber, wenn sie zusammen entfernt werden, die Zusammenhangszahl (des T in diesem Fall) geändert
werden kann. Aus diesem Grund können im ersten Durchgang
der BBV 26 lediglich Bits aus den Reihen O, 2, 4,und 6 entfernt werden. Wie bereits erwähnt, können
die Register NSL und NTR so eingestellt werden, daß das P-Bit in jeder nicht z.B. zur V/-Zusammenhangszahl
des Felds beitragenden Speicherzelle = 1 ist. Um lediglich in den geradzahligen Reihen Bits in einem
einzigen Durchgang entfernen zu können, wird im Speicher ein einziges Wort erzeugt, das nur Einsen
in den Bits 0, 2, 4, 6, 8 usw. aufweist. Der Parameter MWA wird gleich der Adresse dieses Worts gesetzt und
das Betriebsartbit SMW wird so gewählt, daß es eine wiederholte Verwendung dieses einzigen' Worts ermöglicht.
Nun kann BSL auf denjenigen Wert eingestellt werden, der die Nullen in U in Mullen in R transformiert
und der Einsen in U in Nullen in R transformiert, wenn M=1 und P=1 ist. Weitere einzustellende
Steuerparameter von Bedeutung sind: UWA, der auf die erste dargestellte Adresse (Bildspalte) hinweisen
muß; RWA, der gleich TJWA sein kann, oder der auf einen anderen "Arbeitsspeicher" im Speicher hinweisen soll;
und BTS und WDS, die in diesem Beispiel gleich 8 bzw. 15 sein können.
Nachdem die geeigneten Parameter eingestellt wurden, beginnt
die eigentliche Bildverarbeitung "a" von links nach rechts. Die Eins im Speicherplatz 60 ist in einer
geradzahligen Reihe und hat ein W-Differential gleich Null; sie wird also zurückgestellt. Dies wird durch den
Buchstaben "a" bezeichnet. Als nächstes wird das Bit
A09813/0794
im Speicherplatz 61 zurückgestellt; diesem folgt 62. Der Speicherplatz 63 hat ebenfalls ein W-Differential
gleich Null, da sein linker Nachbar, in der GWN-Betriebsart, 62 ist, der bereits zurückgestellt wurde.
In dieser Spalte werden außerdem die Bits 03, 23 und zurückgestellt. In der nächsten Spalte können die Bits
24 und 44 nicht ohne W-Unterbreclmng zurückgestellt werden; beim Speicherplatz 64 ist dies hingegen möglich,
da die W-Zusämmenhangszahl des Zeichens durch die Eckverbindung
54-65 bewahrt wird.
Nach Beendigung des Durchgangs "a" wird mit dem Ergebnis
von 11A" der Durchgang "b" durchgeführt. Dieser ist identisch,
wobei jedoch lediglich, in ungeradzahligen Reihen gelegene Bits entsandt werden können. Dies kann
entweder durch geeignete Änderung von BSL oder dadurch geschehen, daß MBA=I gesetzt wird, was zu einer Folge
von M—Bits gleich 0, 1 , 0, 1 , usw. anstelle von 1,0,
1, 0, ... führt. Damit werden "b" Bits entfernt. Es ist ersichtlich, daß das auf diese Art erzeugte "additives
Skelett" mit dem Original topologisch identisch ist, insoweit als die Zusammenhangszahl jedes Zeichens
wie auch die dazwischen liegende Ungleichmäßigkeit beibehalten wurde. Die Ungleichmäßigkeit ist jedoch
nun breiter und enthält nur Nullen aufweisende Wörter. Die im Skelett von den Durchgängen "a" und "b" verbleibenden
Bits sind in Fig. 12b durch querschraffierte Quadrate dargestellt.
Nach dem Durchgang "b" enthält dae Register WZT für den
ersten nicht Null auf Null-Übergang die Zahl 7, die in Wirklichkeit das Ende des skelettierten "T" darstellt.
Dieser Wert für WZO? zeigt der ZVE 24 an, daß das Bild einen sogenannten "Weißkanal" aufweist, der sich vom
oberen bis zum unteren Ende erstreckt. Die ZVE weiß dann,
09813/0794
wie unten beschrieben wird, daß die Zeichen getrennt werden können, berechnet einige Adressen und startet
die BBV erneut. Nun wird ein mit 11C" bezeichneter dritter Durchgang durchgeführt, der bei der durch WZT
bezeichneten Koordinate beginnt und nach links ausgeführt wird. Dieser Durchgang wird das Skelett des T
von rechts nach links in schneller, linienfächerförmiger Weise additiv wachsen und sich ausbreiten lassen, wobei
gleichzeitig dieses wachsende Muster mit dem ursprünglichen Feld UND-verknüpft wird. Die Parameter werden
wie folgt festgesetzt: WA zeigt die Spalte 7 des aus dem Durchgang b sich ergebenden Felds an; HWA zeigt
ein "Start"-Feld (scratch) des Speichers an; 39WA zeigt
die Spalte 7 des ursprünglichen Felds an; NSL wird so eingestellt, daß alle acht Nachbarn ausgewählt werden
können; NMT=O; NTR wird so eingestellt, daß P jedesmal zu Eins wird, wenn die Nachbarschaft eine oder mehrere
Einsen enthält; BSL wird so eingestellt, daß E=1 wird, wenn M(ü+P)=1 ist; durch PUW=PMW=PRW=I wird eine Rückwärt
sverarbeitung entlang der Y/ortachse bewirkt? und
CWN=I führt dazu, daß die infolge PUW=I rechts von U0 liegenden Nachbarn 0, 1, und 2 aus dem neuen bzw.
Ergebnisfeld kommen.
Das erste Wort, das nach dem Starten der Bildverarbeitung die zentrale Position der U-Logik besetzen soll, ist
in Fig. 12b mit 7 bezeichnet. Die Zellen 67,77 und 87 haben wenigstens einen Nachbarn und erzeugen drei
entsprechende P=1-Bits; die Boolesche Funktion M(ü+P)
wird damit für die Zellen 67 und 77 erfüllt. Hinzugefügte Bits sind mit "G" bezeichnet. Die Verarbeitung
wird für die Spalten 6, 5, 4 und 3 fortgesetzt. Die Zelle 73 hat bei den Unbekannten keine Nachbarn, da jedoch.
CWN=I ist, bewirken die Zellen 64 und 74, daß die Nach-
40981 3/0794
- 6ο
2340537
barschaft von 75 nicht unbesetzt bleibt. Am Ende des Durchgangs C enthält das Ergebnisfeld das gesamte
flTH-Zeichen ohne fehlerhafte oder fehlende Bits.
Dieses Feld wird dann dem Erkennungsverfahren unterworfen. Hierauf folgend wird das 11A" durch einfaches
Exklusiv-ODER-Verknüpfen des isolierten "T" mit dem
ursprünglichen Feld abgetrennt. KA" wird abschließend
durch ein übliches Verfahren erkannt.
Es soll hervorgehoben werden, daß auch andere Beziehungen als die in den Tabellen 2 und 5 gezeigten
Beziehungen zwischen W und 7 definiert werden können, um das Rg-Bit (Fig.io) erzeugen zu können:
V1) T5)
W0 = | V0 " | κ con . |
W2..= | Y2 - | ι- CON . |
Λ - | V4 - | l· CON . |
W6 = | V6 H | h CON . |
W1 = | V1 | |
X - | V5 | |
W7 = | V7 |
+ v
Es kann dann mathematisch gezeigt werden, daß, wenn CON=I, NSL=377 und NMT=I25 (Komplementierender Nachbarn
W-j ,W,,W5>W„) ist, die vom Einserzähler 218 bestimmte
und |X| bezeichnete Zählung gleich 5 - ΔΕ ist.
Die sechs NachbarschaftszeIlen sollen für das hexagonale
4098 13/0794
Gitter im Uhrzeigersinn mit UQ, TJ1,..., U5 beziffert
werden. Die gewünschte' Nachbarschaftstransformation wird dann
W0 = V0 (CON + Y7)
W1 = Y1 (CON + V0)
W2 = V2 (CON + V1)
W5 = V5 (ÜÖN +V2)
W4 = V4 (CON + V5)
W5 = V5 (CÖN + V4)
W6 = V6 (CÖN + V5)
W7 = V7 (CON + V6)
Wenn ΔΕ die durch eine Änderung der zentralen Zelle IL-von
O auf 1 bewirkte Änderung der Euler1sehen Zahl
des Bilds für CON=I ist, kann gezeigt werden, daß gilt
ΔΕ = 1 - |x|
Hierbei ist |x| die vom Schaltkreis 218 gezählte Anzahl der Einsen in der X-Nachbarschaft.
Eine entsprechende Nachbarschaftstransformation ist für ein aus dicht gepackten gleichseitigen Dreiecken bestehendes
Gitter möglich.
Die Zusammenhangsbetriebsart ist weiterhin zur Bestimmung derjenigen Punkte nützlich, an denen sich Linien kreuzen
oder treffen. Nachdem ein Linienbild so verdünnt wurde, daß alle Linien im wesentlichen nur noch ein einziges
Bit breit sind, kann der Punkt, an dem sich zwei Linien
40981 3/0794
kreuzen, leicht identifiziert werden, da für diesen Punkt ΔΕ gleich -3 ist. Wenn eine Zeile lediglich
auf eine andere trifft, d.h., wenn ein T-förmiger Kreuzungspunkt gebildet wird, so wird ΔΕ gleich -2.
Wurde ein Linienbild so verdünnt, daß alle Linien lediglich ein Bit breit sind, so können die Endpunkte
dieser Linien leicht identifiziert werden, da dies die einzigen Bits sind, deren ΔΕ-Wert gleich Null ist.
Einem Fachmann auf dem Gebiet der Topologie und des optischen Zeichenlesens ist damit klar, daß diese eine
Art Merkmalsextraktion darstellende Information bei der Charakterisierung und Analyse unbekannter Bilder
äußerst nützlich ist. Bildpunkte mit speziellen Δ E-Werten können durch Auswahl des NTR-Parameters identifiziert
werden, womit lediglich für die dem gewünschten ΔΕ-Wert entsprechende Einser-Zählung ein P-Bit erzeugt
wird.
Die Analyse und Charakterisierung von Bildern kann nicht nur zur optischen Zeichenlesezwecken, für die reine
Korrelation mit Masken ungeeignet ist, herangesogen werden, sondern diese Analysearten können auch auf anderen
Gebieten verwendet werden. Z.B. ist bei der Analyse von Konstruktionszeichnungen zur Faksimile-Übertragung ohne hoch
redundantes Abtasten einer redundanten Information die Bestimmung der Endpunkte und Kreuzungspunkte verschiedener
Linienabschnitte äußerst vorteilhaft, wenn diese Linienabschnitte so definiert werden sollen, daß die
nach der Übertragung ohne ein herkömmliches, hoch auflösendes
Abtastverfahren neu gebildet werden können.
Die Verwendung speziellen Zwecken dienender Masken oder bekannter Bilder zur Abänderung oder Analyse eines unbe-
40981 3/0794
kannten Bilds wurde bereits in dieser Beschreibung kurz erwähnt. Bei einer speziell verwendbaren,
speziellen Zwecken dienenden Maske ist die Dichte entlang einer oder der anderen der beiden Achsen
abgestuft; diese Maske weist eine sehr dünne Verteilung der "Einsen"· entlang der einen Kante und
eine sehr dichte Verteilung der "Einsen" entlang der anderen Kante auf, wobei die Dichte dazwischen
linear abgestuft ist. Wenn ein derartiges Maskenbild mit dem unbekannten Bild korreiiert wird, so wird
eine Korrelationszeilung erzeugt, die die Korrelation
des Maskenbits mit dem als "gewichtete" Masse des Bilds auffassbaren Bit zählt. Mit anderen Worten bedeutet
dies, daß der Beitrag der auf der dichten Seite des Maskenbilds liegenden Bereiche des unbekannten
Bilds relativ größer sein wird, als der Beitrag der auf der hellen bzw. dünnen Seite des Maskenbilds
liegenden Bereiche des unbekannten Bilds. Durch Dividieren der gewichteten Masse durch die Masse des
ursprünglichen unbekannten Bilds, erhält man damit einen dem Teilabstand vom Schwerezentrum entlang
der Achse der Maskenabstufung entsprechenden Wert.
Ist die Maske z.B. von links nach rechts" abgestuft,
und ist die gewichtete Masse dividiert durch die ungewichtete Masse =0,6, so bedeutet dies, daß das
SchwereZentrum des Bilds bei 3/5 der gesamten Bildbreite von links nach rechts liegt. Das SchwereZentrum
entlang der anderen Achse kann auf entsprechende Weise bestimmt werden. Die Kenntnis des Schwerezentrums ist
ein weiteres zur Identifizierung oder Analyse des unbekannten Bilds verwendbares Bit der Information,
das herangezogen werden kann, wenn das unbekannte Bild · nicht lediglich mit vorbestimmten, bekannten Masken
4098 13/0794
korreliert werden kann. Diese Information kann weiterhin zur anfänglichen Zuordnung von unbekannten
Bildern zu Masken dienen. Weiterhin kann der Korrelationszähler 2o2 zur Korrelation des unbekannten
Bilds' mit sich selbst in jeder der acht verschobenen Stellungen herangezogen werden. Ϋ/enn das Ug-Bit, etwa
durch Auswahl eines geeigneten Operationsparameters,
anstelle des; M-Bits verwendet wird, so wird jeder der Hachbarschaftszähler 71-77 eine Zählung aufsummieren,
die die Korrelation des unbekannten Bilds mit sich selbst führt. Eine entsprechend verschobene
Stellung, d.h. ACC^ = 1V11E wieäergibt. Der letzte
Zähler CCg summiert eine Zählung auf, die der Masse
des Bilds, d.h. der gesamten Anzahl der "Einser" des gesamten Bilds gleich ist, da er das unbekannte Bild
mit sich selbst korreliert. Wenn das Bild im wesentlichen aus vertikalen Linien besteht, werden die den
vertikal verschobenen Stellungen entsprechenden Zählungen nur wenig vom Massewert abweichen, während
sich die den horizontal verschobenen Stellungen entsprechenden Zählungen stark von diesem Wert unterscheiden
werden. Diese Zähler können damit eine Information liefern, mit deren Hilfe das Programm
bestimmen kann, ob die horizontale Kantenlänge des Bilds größer ist als die vertikale Kantenlänge und
umgekehrt. Pur den einfachen PaIX, daß das Bild auf einer Seite einer diagonalen Linie nur aus "Einsen"
und auf der anderen Seite nur aus "Nullen" besteht, können die Korrelationszähler eine den Winkel θ der
Linie definierende Information entsprechend dem folgenden Zusammenhang liefern:
tan θ = CC8 - CoCj +
409813/0794
Diese Situation kann auftreten, wenn die Kante einer Seite abgetastet wird und die Orientierung der Seite
bestimmt werden soll, um die Abtastung im Sinne einer gewünschten horizontalen Abtastachse korrigieren
zu können.
Obwohl die verschiedenen Operationen der Bildtransfor~
mation und Abänderung sowie der Korrelation und Analyse , durch verschiedene herkömmliche Universalrechner aus- *
geführt werden könnten, so würde doch das zur Erzeugung der gleichen Datenmenge erforderliche Programm viele
iterative Schleifen benötigen. Die gesamte Durchführung wäre damit, verglichen mit der Durchführung durch die
vorliegende Anordnung ziemlich langsam, da diese verschiedene Korrelationen und Ergebnisbildzeichenzählungen
durchführt und gleichzeitig ein verfeinertes oder abgeändertes Irgebnisbild erzeugt und dadurch relativ schnell
arbeitet. Bei Verwendung der erfindungsgemäßen Anordnung
können damit Bilddaten mit einer die. Verwendung von in einem Speicher gespeicherten Masken ermöglichenden Geschwindigkeit
verarbeitet werden,und es kann ein optisches Zeichenerkennungssystem in Echtzeit betrieben werden.
- Patentansprüche:
409813/0794
Claims (4)
- AnsprücheAnordnung zur Verarbeitung von in einem 3x3-DatenfeIdformat binärer Bits vorliegenden Bilddaten eines unbekannten Bilds, wobei eine zentrale Bitposition des Datenfelds mit Ug, eine Ecken-Bitposition mit Uq und Bitpositionen, die die zentrale Bitposition Uo aufeinanderfolgend entlang des Randes des Datenfelds umgeben mit U., bis U7 bezeichnet sind, gekennzeichnet durch. Logikschaltkreise (21o,212), die entsprechend den Zuständen der Bits in den Bitpositionen Uq bis U7 ein Bits WQ Ms W7 enthaltendes, zweites Datenfeld erzeugen, wobei die Bitpositionen der Bits WQ bis W7 des zweiten Datenfelds jeweils den Bitpositionen Uq bis U7 des Datenfelds entsprechen, durch Schaltkreise (214, 216), die auf das zweite Datenfeld ansprechen und eine quantitative Auswirkung Δ E auf eine Zusammenhangs zahl des Bilds für eine Zustandsänderung der zentralen Bitposition Ug ermitteln, durch eine Schwellwertschaltung (54^)f die einen Schwellwert festlegt, und durch eine Vergleioherschaltung (218), die die quantitative Auswirkung Δ E mit dem Schwellwert vergleicht.
- 2. Anordnung nach Anspruch 1, dadurch gekennzeichnet, daß die Logikschaltkreise (212) die Bits WQ bis W7 entsprechend folgenden Boole 'sehen Ausdrücken erzeugen:W0 = (V0 + V7) . V1 CON + CON . V0W1 = (V7 + V^) . V-, .CON + CON . V1W2 = (V2 + V1) . V^ CON + CON . V2W5 = (V\j + Vp . V5 .CON + CON . V5409813/07 94C0N¥5 = ^3 + "^V *" V5 #C0N + ^ ' V5W6 = (V6 + V5) . V7 CON +"CÖI . V6w„ = (j +T-) . v„ .con +~cm . v_ι Ρ ο ι 7
- 3. Anordnung nach Anspruch 2, dadurch gekennzeichnet, daß die auf das zweite Datenfeld ansprechenden Schaltkreise (214,216) Schaltkreise (214) aufweisen,die ein Bits Xq bis X7 enthaltendes drittes Datenfeld erzeugen,wobei die Bitpositionen der Bits XQ bis X7 des dritten Datenfelds jeweils den Bitpositionen Wq bis W7 des zweiten Datenfelds entsprechen, und daß die das dritte Datenfeld erzeugenden Schaltkreise (214) durch ein acht Bit umfassendes Steuersignal (NSI) steuerbar sind, das die Übertragung von Bits des aweiten Datenfelds auf das dritte Datenfeld selektiv ermöglicht oder verhindert.
- 4. Anordnung nach Anspruch 3, dadurch gekennzeichnet, daß die das dritte Datenfeld erzeugenden Schaltkreise (214) die Bits X0 bis X7 entsprechend der Boole 'sehen GleichungXn = (Wn . NSLn ) Φ NMTnerzeugen, wobei NSL und NMT jeweils acht Bits umfassende Steuarsignale sind.5. Anordnung nach einem der Ansprüche 3 oder 4, dadurch gekennzeichnet, daß eine auf das dritte Datenfeld ansprechende Zählerschaltung (216) die Gesamtzahl an Bits eines gegebenen Zustande im dritten Datenfeld zählt und durch ihre Zählung die quantitative Auswirkung Δ Ε angibt.409813707946. Anordnung nach Anspruch 5» dadurch gekennzeichnet, daß die Zählerschaltung (216) neun Ausgangsanschlüsse und einen Durchschaltekreis aufweist, der lediglich an dem der Zählung entsprechenden Ausgangsanschluß ein Durchschaltesignal abgibt, daß die Schwellwertschaltung (54* ) ein 9~Bit-Steuersignal (NTR) abgibt, und daß die Vergleicherschaltung (218) eine Logi-kschaltung aufweist, die die Signale an jedem der neun Ausgangsanschlüsse mit dem entsprechenden Bit des 9-Bit-Steuersignals (ETR) vergleicht.7. Anordnung nach einem der Ansprüche 5 oder 6, dadurch gekennzeichnet, daß die Vergleicherschaltung (218) ein Einzelbit-Signal P abgibt, dessen Zustand dem , Über- oder Unterschreiten des Schwellwerts (NTR) durch die Zählung der Zählerschaltung (216) entspricht.8. Anordnung nach einem der Ansprüche 1 bis 4, dadurch gekennzeichnet, daß die Vergleicherschaltung (218) ein Einzelbit-Signal P abgibt, dessen Zustand dem Über- oder Unterschreiten des Schwellwerts (NTR) durch die quantitative Auswirkung Δ Ε entspricht.9. Anordnung nach einem der Ansprüche 7 oder 8, dadurch gekennzeichnet, daß eine Logikschaltung (22o) das Einzelbit-Signal P logisch mit dem Bit der zentralen Bitposition Ug kombiniert und hierbei ein Ergebnisbit-Signal Rq erzeugt.1o. Anordnung nach einem der Ansprüche 8 oder 9» dadurch gekennzeichnet, daß Einrichtungen (82,84,86) vorgesehen sind, die entsprechend aufeinanderfolgend erzeugten Ergebnisbit-Signalen Rg ein Ergebnis-Datenfeld erzeugen.A0981 3/079411. Anordnung nach Anspruch 1o, dadurch gekennzeichnet, daß ein Steuersignal CWN erzeugende Schaltkreise (54p) vorgesehen sind, und daß die das zweite Datenfeld erzeugenden Logikschaltkreise (21o,212Schaltkreise (21 ο) aufv/eisen, die entsprechend dem Steuersignal CWN selektiv die Bits in den Bitpositionen Uq bis TJ7 durch zuvor erzeugte Bits des Ergebnis-Datenfelds ersetzen.12. Anordnung nach einem der Ansprüche 1o oder 11, dadurch gekennzeichnet, daß eine Steuerschaltung (54-1) ein Vielfachbit-Steuersignal BSL erzeugt, und daß die das Ergebnisbit-Signal Rg erzeugende Logikschaltung (22o) entsprechend den verschiedenen Zuständen des Vielfachbit-Steuersignals BSL verschiedene logische Kombinationen mit dem Einzelbitsignal P ermöglicht.13. Anordnung, insbesondere nach einem der vorhergehenden Ansprüche, gekennzeichnet durch einen Speicher (21) mit einer Vielzahl von Wortplätzen, von denen jeder eine Vielzahl von Bitplätzen aufweist, durch eine Bildverarbeitungseinrichtung (26; 52,53,54) mit einem Befehlsadressenregister (52), einem Befehlsregister (53) und einer Vielzahl Parameterregister (54), durch Einrichtungen, die entsprechend der im Befehlsadressenregister (52) gespeicherten, einen der Wortplätze im Speicher (21) bezeichnenden Information aus diesem eine Befehlsinformation abrufen und in das Befehlsregister (53) einspeichern, durch Einrichtungen, die entsprechend der im Befehlsregister (53) gespeicherten Befehlsinformation eine Parameterinformation aus dein Speicher (21) abrufen und in das Parameterregister (54) einspeichern, wobei die Parameterinformation Wortplätze in dem Daten eines Datenfelds für ein4Q98 1 3/0794- 7ο -234Q597unbekanntes Bild und eines Datenfelds für ein Maskenbild speichernden Speicher (21) bestimmt, durch ein Register (62) für unbekannte Daten und ein Register (6o) für Maskendaten zur Speicherung der aus den durch die Parameterinformation bestimmten, die Daten der Datenfelder des unbekannten Bilds bzw. des Maskenbilds speichernden Wortplätzen abgerufenen unbekannten Daten bzw. Maskendaten, durch einen Vergleicher (42j72), der aufeinanderfolgend die Werte entsprechender Vielfachbit-Bytes der im Register (62) für unbekannte Daten und im Register (6o) für Maskendaten vergleicht und Ergebnisbits mit einem ersten Wert erzeugt, wenn der Wert des Bytes der unbekannten Daten größer ist als der des Bytes der Maskendaten, bzw. Ergebnisbit3 mit einem zweiten Wert erzeugt, wenn der Wert des Bytes der Maskendaten größer ist als der des Bytes der unbekannten Daten und durch Einrichtungen (8o,82) zum Einspeichern der Ergebnisbits im Speicher (21).14. Anordnung nach Anspruch 13» dadurch gekennzeichnet, daß die Parameterinformation eine Bitlängeninformation der Bytes enthält, und daß der Vergleicher (4-2; 72) hierauf anspricht.15. Anordnung nach einem der Ansprüche 13 oder 14, dadurch gekennzeichnet, daß die Parameterinformation eine einen Wortplatz im Speicher (21) bestimmende Ergebnisadresseninforraation enthält, und daß die Einrichtungen (8o,82) zum Einspeichern der Ergebnisbits im Speicher (21) auf die Ergebnisadresseninformation ansprechen.4098 1 3/079416. Anordnung für eine auf.Maskenbilder bezogene Analyse unbekannter Bilder, wobei die unbekannten Bilder und die Maskenbilder jeweils durch Datenfelder von in Richtung einer ersten und einer zweiten Achse anordenbaren binären Daten dargestellt sind, mit einer Bildverarbeitungseinrichtung, insbesondere nach einem der vorhergehenden Ansprüche,gekennzeichnet durch eine Vielzahl jeweils eine Vielzahl von Bitstufen aufweisende Register (62;87,88,89) für Daten unbekannter Bilder, die aufeinanderfolgenden, entlang der ersten Achse beabstandeten Zeilen entsprechende Teile der unbekannten Daten speichern, durch ein eine Vielzahl von Bitstufen aufweisendes Register (6o;97) für Daten der· Maskenbilder, das die Maskendaten an Plätzen speichert, die innerhalb der jeweiligen Bilder einer einzigen Zeile der gespeicherten unbekannten Daten entsprechen, durch Zuführungsschaltungen (98,99»9o,9i), die dem Register (6o}97) für Daten der Maskenbilder und einem der Register (87) für Daten unbek nnter Bilder aufeinanderfolgende Zeilen der bekannten Daten bzw. der Maskendaten zuführen, und die jedem der anderen Register (88,89) für Daten unbekannter Bilder Daten aus einem in der R.eihe vorhergehenden Register (87,88) für Daten unbekannter Bilder zuführen, durch Schaltungen (114,116,118,12ο), die einen Bitstufensatz innerhalb der Vielzahl von Bitstufen der Register (62;87,88,89) für Daten unbekannter Bilder und innerhalb der Vielzahl der Bitstufen des Registers (6o;97) für.Daten der Maskenbilder festlegen, durch Abtastschaltungen (93,94-,95;1o8,11o,112) der Register (62; 87,88,89) für Daten unbekannter Bilder, die den darin festgelegten Bitstufensatz in aufeinanderfolgenden, aus Bitstufenteilsätzen gebildeten Blöcken abtasten4098 1 3/0 794und aus jedem Register (62; 87,88,89) aufeinanderfolgend Bitgruppen abrufen, durch eine Abtastschaltung (64) des Registers (6o;97) für Daten der Maskenbilder, die den darin festgelegten Bitstufenßatz Bit für Bit synchron zum Abtasten der Register (62;87,88,89) für Daten unbekannter Bilder abtasten, durch eine Korrelationsschaltung (7o;2oo), die eine Vielzahl von jeweils einem der Bitplätze innerhalb eines abgetasteten Blocks der unbekannten Daten zugeordnete Korrelationssignale erzeugt, wobei jedes der Korrelationssignale eine vorwählbare logische Funktion des jeweiligen Bits der unbekannten Daten im abgetasteten Block und des dem Platz des abgetasteten Blocks entsprechenden, einzelnen Bits der Daten des Maskenbildes.ist, durch jeweils einen von Korrelationssignalen fortschaltbaren Zähler (2o2) für jedes Korrelationssignal,und durch Ausleseeinrichtungen (2o4) zum Auslesen von Daten aus den Zählern (2o2), wobei die beim Abtasten eines Datenfelds unbekannter Daten aufsummierten Zählungen ein Maß der Ähnlichkeit zwischen den Maskenbildern und den unbekannten Bildern angeben.17. Anordnung, insbesondere nach einem der Ansprüche 1 bis 15, gekennzeichnet durch einen Speicher (21) mit einer Vielzahl von Wortplätzen, von denen jeder eine Vielzahl von Bitplätzen aufweist, durch eine Bildverarbeitungseinrichtung (26;52,53,54) mit einem Befehlsadressenregister (52), einem Befehlsregister (53) und einer Vielzahl Parameterregister (54), durch Einrichtungen, die entsprechend der im Befehlsadressenregister (52) gespeicherten, einen der Wortplätze im Speicher (21) bezeichnenden Information aus diesem eine Befehlsinformation abrufen und in das Befehls-4098 1 3/0794register (53) einspeichern, durch Einrichtungen, die entsprechend der im Befehlsregister (53) gespeicherten Befehlsinformation eine Parameterinformation aus dem Speicher (21) abrufen und in das Parameterregister (54) einspeichern, wobei die Parameterinformation Wortplätze in dem Daten eines Datenfelds für ein unbekanntes Bild und eines Datenfelds für ein Maskenbild speichernden Speicher (21) bestimmt, durch eine Registeranordnung (62) für unbekannte Daten und eine Registeranordnung (6o) für Maskendaten zur Speicherung der aus den durch die Parameterinformation bestimmten, die Daten der Datenfelder des unbekannten Bilds bzw. des Maskenbilds speichernden Wortplätzen abgerufenen unbekannten Daten bzw. Maskendaten, wobei die Registeranordnung (62) für unbekannte Daten eine Vielzahl von jeweils eine Vielzahl Bitstufen aufweisende Register (87,88,89) für unbekannte Daten enthält, welche eine Vielzahl Datenzeilen aus dem Datenfeld des unbekannten Bilds speichern, wobei die Registeranordnung (6o) für Maskendaten ein einziges, eine Vielzahl Bitstufen aufweisendes Register (97) für Maskendaten enthält, das eine einzige Datenzeile aus dem Datenfeld des Maskenbilds speichert, und wobei die Earameterinformation in den Bitstufen der Register (87,88,89) für unbekannte Daten und dem Register (97) für Maskendaten einen Bitstufensatz festlegt, durch Abtastschaltungen (93,94,95; 1o8,11o,112) der Registeranordnimg (62) für unbekannte Daten, die den darin festgelegten Bitstufensatz in aufeinanderfolgenden, jeweils Bitstufenteilsätze bildenden Blöcken abtasten und aus jedem Register aufeinanderfolgend Bitgruppen abrufen, durch. Abtastschaltungen (64) der Registeranordnung (6o) für Maskendaten, die den darin festgelegten Bitstufensatz Bit Tür Bit synchron zum Abtasten der Register (62) für unbekannte Daten abtasten,409813/0794durch eine Korrelationsschaltung (7o;2oo), die eine Vielzahl von jeweils einem der Bitplätze des abgetasteten Blocks der unbekannten Daten zugeordnete Korrelationssignale erzeugt, wobei jedes dieser Korrelationssignale eine vorwählbare Punktion der jeweiligen Bits der unbekannten Daten im abgetasteten Block und des dem Platz des abgetasteten Blocks entsprechenden einzelnen Bits der Maskendaten ist, durch jeweils einen vom Korrelationssignal fortschaltbaren Zähler (2o2) für jedes Korrelationssignal und durch Ausleseeinrichtungen (2o4) zum Auslesen von Daten aus den Zählern (2o2), wobei die beim Abtasten eines Datenfelds unbekannter Daten aufsummierten Zählungen ein Maß der Ähnlichkeit zwischen den Maskenbildern und den unbekannten Bildern liefern.18. Anordnung nach einem der Ansprüche 16 oder 17» dadurch gekennzeichnet, daß drei Register (87,88,89) für Daten unbekannter Bilder vorgesehen sind und die abgetasteten Blöcke jeweils drei Bits umfassen, wobei die in den Registern (87,88,89) für Daten unbekannter Bilder jeweils abgetasteten Daten mit Uq,U^,Up und U^,Ug,U~, und Ug,U ,U. und das im Register (97) für Daten der Maskenbilder mit M bezeichnet sind, und daß die Korrelationsschaltung (2oo) entsprechend dem Boole'sehen Ausdruck
ACCn=CUM*üjj· M + CUN'UjJM + CNM'Üjj'M für N = 0^8 Signale Δ CC^ACCg erzeugt, wobei CUM, CUN und CNM Steuerbitsignale sind.4 0 9 8 ■ 3 ■-' 0 7 9
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US4812470A | 1970-06-22 | 1970-06-22 | |
US289326A US3905018A (en) | 1970-06-22 | 1972-09-15 | Binary image processor |
Publications (1)
Publication Number | Publication Date |
---|---|
DE2340597A1 true DE2340597A1 (de) | 1974-03-28 |
Family
ID=26725811
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE19732340597 Withdrawn DE2340597A1 (de) | 1970-06-22 | 1973-08-10 | Bildverarbeitungsanordnung |
Country Status (6)
Country | Link |
---|---|
US (2) | US3706071A (de) |
JP (1) | JPS4966241A (de) |
CA (1) | CA1022680A (de) |
DE (1) | DE2340597A1 (de) |
FR (1) | FR2205225A5 (de) |
GB (2) | GB1353912A (de) |
Families Citing this family (58)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3706071A (en) * | 1970-06-22 | 1972-12-12 | Information Int Inc | Binary image processor |
JPS5231134B2 (de) * | 1972-01-24 | 1977-08-12 | ||
NL7201225A (de) * | 1972-01-28 | 1973-07-31 | ||
JPS57546B2 (de) * | 1974-03-14 | 1982-01-07 | ||
US3990045A (en) * | 1974-06-24 | 1976-11-02 | International Business Machines Corporation | Array logic fabrication for use in pattern recognition equipments and the like |
US3987410A (en) * | 1974-06-24 | 1976-10-19 | International Business Machines Corporation | Array logic fabrication for use in pattern recognition equipments and the like |
US3973243A (en) * | 1974-10-15 | 1976-08-03 | The Bendix Corporation | Digital image processor |
US3997719A (en) * | 1975-03-19 | 1976-12-14 | Bell Telephone Laboratories, Incorporated | Bi-level display systems |
JPS51112236A (en) * | 1975-03-28 | 1976-10-04 | Hitachi Ltd | Shape position recognizer unit |
FR2317645A1 (fr) * | 1975-07-11 | 1977-02-04 | Armines | Appareil destine a analyser au moins un milieu heterogene bi ou tridimensionnel |
GB1545117A (en) * | 1976-05-25 | 1979-05-02 | Nat Res Dev | Comparison apparatus eg for use in character recognition |
JPS5313840A (en) * | 1976-07-23 | 1978-02-07 | Hitachi Ltd | Analogy calculator |
US4322716A (en) * | 1976-11-15 | 1982-03-30 | Environmental Research Institute Of Michigan | Method and apparatus for pattern recognition and detection |
US4174514A (en) * | 1976-11-15 | 1979-11-13 | Environmental Research Institute Of Michigan | Parallel partitioned serial neighborhood processors |
US4167728A (en) * | 1976-11-15 | 1979-09-11 | Environmental Research Institute Of Michigan | Automatic image processor |
JPS5832434B2 (ja) * | 1976-11-15 | 1983-07-13 | 富士通株式会社 | 認識装置 |
US4094000A (en) * | 1976-12-16 | 1978-06-06 | Atex, Incorporated | Graphics display unit |
US4149184A (en) * | 1977-12-02 | 1979-04-10 | International Business Machines Corporation | Multi-color video display systems using more than one signal source |
US4244029A (en) * | 1977-12-12 | 1981-01-06 | Goodyear Aerospace Corporation | Digital video correlator |
SE412966B (sv) * | 1978-01-20 | 1980-03-24 | Danielsson Per Erik | Anordning for kontroll av avstand mellan objekt i en tvadimensionell diskretiserad bild |
DE2813157C2 (de) * | 1978-03-25 | 1988-08-18 | Dornier Gmbh, 7990 Friedrichshafen | Gerät zur selbsttätigen, lageunabhängigen Mustererkennung |
DE2903855A1 (de) * | 1979-02-01 | 1980-08-14 | Bloss Werner H Prof Dr Ing | Verfahren zum automatischen markieren von zellen und bestimmung der merkmale von zellen aus zytologischen abstrichpraeparaten |
US4288782A (en) * | 1979-08-24 | 1981-09-08 | Compression Labs, Inc. | High speed character matcher and method |
US4301443A (en) * | 1979-09-10 | 1981-11-17 | Environmental Research Institute Of Michigan | Bit enable circuitry for an image analyzer system |
US4442543A (en) * | 1979-09-10 | 1984-04-10 | Environmental Research Institute | Bit enable circuitry for an image analyzer system |
US4464788A (en) * | 1979-09-10 | 1984-08-07 | Environmental Research Institute Of Michigan | Dynamic data correction generator for an image analyzer system |
US4290049A (en) * | 1979-09-10 | 1981-09-15 | Environmental Research Institute Of Michigan | Dynamic data correction generator for an image analyzer system |
US4369430A (en) * | 1980-05-19 | 1983-01-18 | Environmental Research Institute Of Michigan | Image analyzer with cyclical neighborhood processing pipeline |
US4395698A (en) * | 1980-08-15 | 1983-07-26 | Environmental Research Institute Of Michigan | Neighborhood transformation logic circuitry for an image analyzer system |
US4398176A (en) * | 1980-08-15 | 1983-08-09 | Environmental Research Institute Of Michigan | Image analyzer with common data/instruction bus |
US4395700A (en) * | 1980-08-15 | 1983-07-26 | Environmental Research Institute Of Michigan | Image analyzer with variable line storage |
US4395697A (en) * | 1980-08-15 | 1983-07-26 | Environmental Research Institute Of Michigan | Off-image detection circuit for an image analyzer |
US4499595A (en) * | 1981-10-01 | 1985-02-12 | General Electric Co. | System and method for pattern recognition |
JPS58139241A (ja) * | 1982-02-10 | 1983-08-18 | Toshiba Corp | 画像メモリアクセス方式 |
US4490848A (en) * | 1982-03-31 | 1984-12-25 | General Electric Company | Method and apparatus for sorting corner points in a visual image processing system |
US4493105A (en) * | 1982-03-31 | 1985-01-08 | General Electric Company | Method and apparatus for visual image processing |
JPS5979349A (ja) * | 1982-10-29 | 1984-05-08 | Toshiba Corp | 演算装置 |
US4700401A (en) * | 1983-02-28 | 1987-10-13 | Dest Corporation | Method and apparatus for character recognition employing a dead-band correlator |
JPS60159973A (ja) * | 1984-01-31 | 1985-08-21 | Toshiba Corp | 画像処理装置 |
JPS6112188A (ja) * | 1984-06-27 | 1986-01-20 | Hitachi Ltd | 走査形表示画像を検出する装置および方法 |
JPS61107477A (ja) * | 1984-10-30 | 1986-05-26 | Toshiba Corp | イメ−ジデ−タ処理装置 |
US4728925A (en) * | 1985-07-03 | 1988-03-01 | Tektronix, Inc. | Data communications analyzer |
US5222159A (en) * | 1985-07-19 | 1993-06-22 | Canon Kabushiki Kaisha | Image processing method and apparatus for extracting a portion of image data |
JPS6254373A (ja) * | 1985-09-02 | 1987-03-10 | Minolta Camera Co Ltd | 画像処理装置 |
US4791675A (en) * | 1985-12-31 | 1988-12-13 | Schlumberger Systems And Services, Inc. | VSP Connectivity pattern recognition system |
US5046190A (en) * | 1988-09-06 | 1991-09-03 | Allen-Bradley Company, Inc. | Pipeline image processor |
JPH03174684A (ja) * | 1989-12-02 | 1991-07-29 | Ezel Inc | ナンバープレート認識装置 |
US5796410A (en) * | 1990-06-12 | 1998-08-18 | Lucent Technologies Inc. | Generation and use of defective images in image analysis |
US5231663A (en) * | 1991-03-18 | 1993-07-27 | Earl Joseph G | Image processing system |
JPH07117498B2 (ja) * | 1991-12-11 | 1995-12-18 | インターナショナル・ビジネス・マシーンズ・コーポレイション | 検査システム |
US5392360A (en) * | 1993-04-28 | 1995-02-21 | International Business Machines Corporation | Method and apparatus for inspection of matched substrate heatsink and hat assemblies |
US6685832B2 (en) * | 1995-08-11 | 2004-02-03 | Zenon Environmental Inc. | Method of potting hollow fiber membranes |
GB2305798B (en) * | 1995-09-28 | 1999-10-20 | Sony Uk Ltd | Spatial frequency-domain video signal processing |
US6393154B1 (en) | 1999-11-18 | 2002-05-21 | Quikcat.Com, Inc. | Method and apparatus for digital image compression using a dynamical system |
US7027649B1 (en) * | 2000-11-27 | 2006-04-11 | Intel Corporation | Computing the Euler number of a binary image |
US7917906B2 (en) * | 2004-07-02 | 2011-03-29 | Seagate Technology Llc | Resource allocation in a computer-based system |
US8947736B2 (en) * | 2010-11-15 | 2015-02-03 | Konica Minolta Laboratory U.S.A., Inc. | Method for binarizing scanned document images containing gray or light colored text printed with halftone pattern |
US9319556B2 (en) | 2011-08-31 | 2016-04-19 | Konica Minolta Laboratory U.S.A., Inc. | Method and apparatus for authenticating printed documents that contains both dark and halftone text |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
NL274810A (de) * | 1961-02-16 | |||
DE1250166B (de) * | 1962-05-21 | 1967-09-14 | International Business Machines Corporation Armonk, NY (V St A) | Vorrichtung zur maschinellen Zeichen erkennung |
US3384875A (en) * | 1965-09-27 | 1968-05-21 | Ibm | Reference selection apparatus for cross correlation |
US3434109A (en) * | 1966-06-01 | 1969-03-18 | Cutler Hammer Inc | Multifield comparator adjustable to compare any combinations of fields and to provide selectable bases of comparison |
US3576534A (en) * | 1969-08-11 | 1971-04-27 | Compuscan Inc | Image cross correlator |
US3573730A (en) * | 1969-10-15 | 1971-04-06 | Ibm | Stored logic recognition device |
US3706071A (en) * | 1970-06-22 | 1972-12-12 | Information Int Inc | Binary image processor |
-
1970
- 1970-06-22 US US48124A patent/US3706071A/en not_active Expired - Lifetime
-
1971
- 1971-06-22 GB GB2927171A patent/GB1353912A/en not_active Expired
-
1972
- 1972-09-15 US US289326A patent/US3905018A/en not_active Expired - Lifetime
-
1973
- 1973-05-31 GB GB2604673A patent/GB1394326A/en not_active Expired
- 1973-06-29 CA CA175,270A patent/CA1022680A/en not_active Expired
- 1973-07-03 JP JP48075172A patent/JPS4966241A/ja active Pending
- 1973-08-10 DE DE19732340597 patent/DE2340597A1/de not_active Withdrawn
- 1973-09-17 FR FR7333318A patent/FR2205225A5/fr not_active Expired
Also Published As
Publication number | Publication date |
---|---|
FR2205225A5 (de) | 1974-05-24 |
GB1353912A (en) | 1974-05-22 |
US3706071A (en) | 1972-12-12 |
US3905018A (en) | 1975-09-09 |
JPS4966241A (de) | 1974-06-27 |
GB1394326A (en) | 1975-05-14 |
CA1022680A (en) | 1977-12-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE2340597A1 (de) | Bildverarbeitungsanordnung | |
DE3305710C2 (de) | Schaltungsanordnung zur Merkmalserkennung bei auf einem Bildschirm darstellbaren Objekten | |
DE2703158C3 (de) | Einrichtung zum Erfassen der Position eines Musters oder Zeichens | |
DE2801536C2 (de) | Zeichenformkodiervorrichtung | |
DE2909153C2 (de) | Einrichtung zur digitalen Analyse von Bild- oder Zeichenmustern | |
DE3546337C2 (de) | ||
DE69628711T2 (de) | Verfahren und Vorrichtung zum Korrigieren von Pixelwerten eines digitalen Bildes | |
DE1549930C3 (de) | Einrichtung zum Erkennen vorzugsweise handgeschriebener Schriftzeichen | |
DE3415470A1 (de) | Geraet und verfahren zum codieren und speichern von rasterabtastbildern | |
DE2835689A1 (de) | Anordnung zur veraenderung der aufloesung bei der bild-datenerfassung und -uebertragung | |
DE2525155C2 (de) | Anordnung zur computergesteuerten Rasterpunktdarstellung von codierter, Liniensegmente bezeichnender Vektorinformation als eine Folge von X/Y Koordinatenwerten | |
DE2726746A1 (de) | Verfahren und einrichtung zur fehlerkontrolle von objekten | |
DE2438202B2 (de) | Vorrichtung zur Erzeugung eines vorbestimmten Textes von Zeicheninformation, welche auf dem Bildschirm einer Videowiedergabeeinheit darstellbar ist | |
DE2740483A1 (de) | Merkmal-detektor | |
DE3202365A1 (de) | Datenspeicher mit fensterabtastung | |
DE3248451A1 (de) | Positionsanzeigergenerator, damit ausgeruestetes fernsehmonitorsystem und verfahren zum anzeigen eines positionsanzeigers | |
DE3141196A1 (de) | Videobildverarbeitungsvorrichtung | |
DE69729368T2 (de) | Bildprozessor, Gerät und Verfahren zur Bildverarbeitung | |
DE2816609C2 (de) | Anordnung zur Bildverarbeitung | |
DE2746969C2 (de) | Einrichtung zum Vergleichen von Mustern | |
DE4215094C2 (de) | Bildverarbeitungsverfahren und -vorrichtung | |
EP1038259B1 (de) | Vorrichtung zur bilderfassung | |
DE4115902C2 (de) | Halbton-Bildverarbeitungsschaltung | |
DE2148152B2 (de) | Verfahren und Schaltungsanordnung zum automatischen Erkennen von Schriftzeichen mit Hilfe einer translationsinvarianten Klassifikationsmatrix | |
DE2823679C2 (de) |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8139 | Disposal/non-payment of the annual fee |