DE3885294T2 - Parallele pipeline-bildverarbeitungseinheit mit einem 2x2-fenster. - Google Patents
Parallele pipeline-bildverarbeitungseinheit mit einem 2x2-fenster.Info
- Publication number
- DE3885294T2 DE3885294T2 DE88908014T DE3885294T DE3885294T2 DE 3885294 T2 DE3885294 T2 DE 3885294T2 DE 88908014 T DE88908014 T DE 88908014T DE 3885294 T DE3885294 T DE 3885294T DE 3885294 T2 DE3885294 T2 DE 3885294T2
- Authority
- DE
- Germany
- Prior art keywords
- output
- data
- storage
- input
- neighborhood
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Lifetime
Links
- 238000012545 processing Methods 0.000 title claims description 19
- 230000009466 transformation Effects 0.000 claims description 73
- 210000004027 cell Anatomy 0.000 claims description 39
- 238000000844 transformation Methods 0.000 claims description 5
- 238000013500 data storage Methods 0.000 claims description 3
- 230000004044 response Effects 0.000 claims 1
- 210000000352 storage cell Anatomy 0.000 claims 1
- 238000000034 method Methods 0.000 description 13
- 239000011159 matrix material Substances 0.000 description 12
- 238000010586 diagram Methods 0.000 description 11
- 238000005192 partition Methods 0.000 description 7
- 230000005540 biological transmission Effects 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 238000013507 mapping Methods 0.000 description 4
- 238000012546 transfer Methods 0.000 description 3
- 230000000295 complement effect Effects 0.000 description 2
- 238000005070 sampling Methods 0.000 description 2
- 230000002457 bidirectional effect Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000013144 data compression Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000003909 pattern recognition Methods 0.000 description 1
- 238000000638 solvent extraction Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 230000001131 transforming effect Effects 0.000 description 1
- 210000004725 window cell Anatomy 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T1/00—General purpose image data processing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/20—Image enhancement or restoration using local operators
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Image Processing (AREA)
- Facsimile Image Signal Circuits (AREA)
Description
- Diese Erfindung bezieht sich auf Bildprozessoren. Insbesondere verarbeitet ein serieller Nachbarschafts- Transformationsprozessor für ein 2x2-Fenster getrennte Segmente einer unterteilten Bilddatenmatrix.
- Nachbarschafts-Bildprozessoren sind eine Vorrichtungsklasse, die ein erstes Feld bzw. Matrix von Bildsensordaten, die in Zellen oder Registern eines Bilddatenspeichers gespeichert sind, verarbeitet. Die in jeder der Zellen gespeicherten Bilddatenwerte stammen im allgemeinen von diskreten Pixeln in dem Bild, das durch eine zweidimensionale Sensorebene erzeugt wird, welche auf darauf projiziertes Licht anspricht. Nachbarschafts- Bildprozessoren verarbeiten die Bilddatenwerte, um nachfolgende Transformationsmatrizen zu erzeugen, in denen jede Zelle einen Wert besitzt der von ihrem Wert in der vorangehenden Matrix des Bilddatenspeichers abhängt und von den Werten der umgebenden bzw. benachbarten Zellen in der vorangehenden Matrix. Daraufhin können nachfolgende Transformationen erzeugt werden, indem die vorangehende Transformationsmatrix verarbeitet wird. Nachbarschafts- Transformationsverarbeitungen sind wesentlich für eine wirksame Bildverarbeitung auf niedrigem Pegel und mit hoher Verarbeitungsgeschwindigkeit für das Bildverständnis, die Sehanwendungen und ähnliches. Rechenanforderungen von Nachbarschafts- Transformationsprozessoren können in der Größenanordnung von Milliarden von Operationen pro Sekunde liegen. Dies liegt an den hohen Datenraten, die bei der Bildverarbeitung (ungefähr 8 Millionen Pixel pro Sekunde für eine Fernsehaufzeichnung mit 525 Zeilen) und bei der großen Anzahl von Operationen beteiligt sind, welche bei der Bearbeitung von Algorithmen (einige hundert Operationen pro Pixel) ausgeführt werden müssen. Nachbarschafts-Transformationsprozessoren haben sich als wirksam bei der Herausziehung vieler primitiver Charakteristiken aus einer Abbildung erwiesen, die von Bedeutung zum Verständnis des Bildinhalts und bei einer Bilddatenkompression (z.B. beim Auffinden von Grenzen oder Kanten von Objekten, d.h. Sobel- und Roberts-Kanten) sind.
- Die vorliegende Erfindung soll auf irgendeine zweidimensionale Anordnung von Bilddaten angewendet werden, die durch den Nachbarschafts- Transformationsprozeß umgeformt werden sollen.
- Ein Beispiel eines Nachbarschafts-Bildprozessors ist in dem auf David L. McCubbrey ausgegebenen US-Patent 4 484 349 offenbart, wobei auf dieses hier Bezug genommen wird. McCubbrey offenbart einen seriellen Nachbarschaftsprozessor, der eine Kette bzw. eine Pipeline von individuell programmierbaren seriellen Nachbarschafts-Transformationsstufen verwendet. Jede Stufe ist in der Lage, den transformierten Wert eines Pixels innerhalb eines einzigen Taktimpulsintervalles zu erzeugen. Der Ausgang einer jeden seriellen Nachbarschafts-Transformationsstufe tritt mit der gleichen Rate an ihrem Eingang auf. Dies gestattet die Vorgabe des Ausgangs einer Stufe an den Eingang einer nachfolgenden Stufe, welche unterschiedliche Nachbarschaftstransformationen ausführen kann. Jede Stufe führt somit eine spezifische Transformation über das gesamte Bild aus.
- Ferner offenbart McCubbrey die Technik der Unterteilung der Bildmatrix, so daß aneinandergrenzenden Segmente des Bildes gleichzeitig durch zwei oder mehr benachbarte serielle Nachbarschafts-Transformationsprozessoren verarbeitet werden können. In einem solchen System müssen Vorkehrungen getroffen werden für eine bidirektionale Datenübertragung zwischen benachbarten seriellen Nachbarschaftsprozessoren. Diese Übertragung wird erforderlich, wenn benachbarte Zellen der in einem Prozessor transformierten Zellen in dem Bildmatrixsegment eines benachbarten Bildmatrixsegmentes enthalten sind.
- In der US-A 4 484 349 wird die Bildspeichermatrix durch ein 3x3-Pixelfenster abgetastet. Ein anderer Bildanalysator für die Mustererkenntnung ist aus der US-A 4 395 699 bekannt, welche wenigstens eine Nachbarschafts-Transformationsstufe für die Analyse von Gruppen von Nachbarschafts-Pixelwerten verwendet und selektiv die Pixelwerte als Ergebnis der Analyse transformiert. Das zentrale Pixel in dem 3x3-Fenster wird auf einen programmierbaren Transformationswert verändert, wenn es und seine Nachbarpixel bestimmte Werte aufweisen. Ein programmierbarer Speicher, der durch eine zentrale Steuerung geladen wird, wird verwendet, um festzustellen, ob Nachbarpixel mit bestimmten Werten in einem zuvor ausgewählten Muster enthalten sind.
- Patent Abstracts of Japan, Band 9, Nr. 285 (P-404) beschreibt im Abstract der JP 60-124785 eine Bildverarbeitungseinheit, die ein 2x2-Bitfenster zusammen mit Registern verwendet, die die Differenz zwischen einer Adresse des spezifischen Bits in dein Fenster und einer Adresse von anderen Bits speichern. Addierschaltkreise addieren spezifische Bits bei der Schreib-/Leseoperation der Speichereinheit. Auf diese wird unter Verwendung der Adresse des spezifischen Bits und der Adresse des Addierschaltkreises zugegriffen. Alle Bits in dem Fenster des Bildspeichers werden durch einen Zugriff gelesen.
- Die Aufgabe der vorliegenden Erfindung liegt in der Vorgabe einer einfachen Architektur für einen Nachbarschafts-Transformationsmodul, der in einem parallelen Pipeline-Bildprozessor enthalten sein kann.
- Eine andere Aufgabe der Erfindung liegt in der Vorgabe einer Nachbarschafts-Transformationsmodul-Architektur, die Nachbarschafts-Transformationen bezüglich eines 2x2-Fensters ausführt.
- Die vorliegende beanspruchte Erfindung sieht einen Nachbarschafts-Transformationsmodul (NTM) für die Ausführung einer 2x2-Fenstertransformation vor. In der vorliegenden Erfindung umfaßt der NTM zwei Speicherregister, die durch eine Segmentverzögerung voneinander getrennt sind. Der Eingang des ersten Speicherregisters, die Ausgänge des ersten und zweiten Speicherregisters und der Ausgang der Segmentverzögerung werden einem Mehrwegschalter für die nachfolgende Nachbarschafts-Transformationsverarbeitung zugeführt. Ferner umfaßt die 2x2-Nachbarschafts- Transformationsmodul-Architektur ebenfalls zwei Schieberegister und ein zusätzliches Speicherregister für die Übertragung von Daten zwischen parallelen Nachbarschafts-Transformationsmodulen.
- Im bevorzugten Ausführungsbeispiel verriegelt eines der Schieberegister des NTM-Moduls einen Kanten-Datenwert für die Verfügbarkeit durch benachbarte (parallele) NTM-Module. Die Binärdaten des Schieberegisters werden seriell an ein benachbartes NTM-Eingangsschieberegister weitergereicht. Das Eingangsschieberegister ist in geeigneter Weise mit dem Mehrwegschalter verbunden, so daß die Nachbarschaftstransformation unter Verwendung von benachbarten NTM-Kantendaten ausgeführt werden kann.
- Ferner sieht die vorliegende Erfindung die Verwendung von Raster-Abtastumkehrungen zusammen mit dem 2x2-Fenster-Nachbarschafts-Transformationsschema vor. Die Nachbarschafts-Transformationsmodul-Architektur der vorliegenden Erfindung gestattet die Abtastumkehrung durch die gleiche NTM-Architektur ohne jegliche zusätzliche Änderung in der Hardware bzw. Steuersynchronisation.
- Figur 1 ist ein Blockdiagramm eines seriellen Nachbarschafts-Bildverarbeitungssystems für eine parallele Unterteilung.
- Figur 2 ist ein Blockdiagramm eines Nachbarschafts- Transformationsmoduls gemäß der vorliegenden Erfindung.
- Figur 3 ist ein Blockdiagramm, das die Verbindung der drei parallelen Nachbarschafts- Transformationsmodule zeigt.
- Fig. 4a - 4d sind schematische Darstellungen der Rasterabtast-Steuerschemen.
- Figur 5 ist ein Diagramm, das die Nachbarschafts- Transformationsfenster in einer Speicherabbildung veranschaulicht.
- Figur 6 ist ein Taktzyklus-Zeitdiagramm, das den Betrieb des Nachbarschafts-Transformationsmoduls von Figur 2 veranschaulicht.
- Figur 7 ist eine Speicherabbildung eines in drei Segmente unterteilten Speichers gemäß der vorliegenden Erfindung.
- Figur 8 ist ein Taktzyklus-Zeitdiagramm, das den Betrieb des Nachbarschafts-Transformationsmoduls mit der Umkehrabtastung gemäß Figur 4b veranschaulicht.
- Figur 9 ist ein weiteres Ausführungsbeispiel des Nachbarschafts-Transformationsmoduls gemäß der vorliegenden Erfindung.
- In Figur 1 ist ein paralleler Pipeline-Bildprozessor ähnlich demjenigen dargestellt, wie er in dem US-Patent 4 484 349 gezeigt und früher beschrieben wurde. Bildsensordaten aus einer zweidimensionalen Bildsensorebene 10 mit N-Spalten und M-Zeilen werden in eine Bilddaten-Speichereinrichtung 20 übertragen. Zum Zwecke der Erläuterung kann der Speicher 20 als eine zweidimensionale Anordnung von Speicherregistern angesehen werden, die ebenfalls M-Zeilen und N-Spalten besitzt. Jedes der Register in dem Speicher 20 kann durch seine Zeilen- und Spaltenadresse adressiert werden. Wie dies durch den Fachmann verstanden werden sollte, können viele Techniken der Speicherabbildung verwendet werden, um das beabsichtige Resultat der Positionsverfolgung des Bildes zu erzielen. Wie ferner in Figur 1 veranschaulicht, ist der Speicher 20 geographisch in K-Unterteilungen (K = 3 in der Zeichnung) unterteilt, die numerisch mit 21, 22 und 23 bezeichnet sind. Jede der Unterteilungen umfaßt M-Zeilen und P-Spalten. In der vorliegenden Erfindung sind die Unterteilungen vorzugsweise in ihrer Feldgröße identisch.
- Daten aus einer ersten Unterteilung 21 werden seriell dem Nachbarschafts-Transformationsmodul (NTM) 30 angeboten. Der Ausgang des NTM 30 wird seriell dem NTM 40 angeboten. Der Ausgang 60 des NTM 40 ist auf die Speichereinrichtung 20 zurückgeführt.
- In einer ähnlichen Weise wird eine zweite Unterteilung 22 der Speichereinrichtung 20 seriell dem NTM 31 und in der Folge dem NTM 41 angeboten. Der Ausgang 61 des NTM 41 ist auf die Speichereinrichtung 20 zurückgeführt. In gleicher Weise wird die dritte Unterteilung, die mit der Bezugsziffer 23 beziffert ist, dem NTM 32 und in der Folge dem NTM 42 angeboten, und der Ausgang 62 des Moduls 42 ist ebenfalls auf diese Speichereinrichtung 20 zurückgeführt.
- In der Praxis sind die NTM-Module 30, 31 und 32 im wesentlichen identisch und führen im wesentlichen den gleichen Nachbarschafts-Transformationsprozeß aus (d. h. sie verwenden im wesentlichen den gleichen Nachbarschafts-Transformationsalgorithmus). In gleicher Weise sind die NTM-Module 40, 41 und 42 im wesentlichen identisch und führen eine identische Nachbarschafts- Transformation aus. Der Transformationsalgorithmus, der durch die erste Transformationsstufe, welche die NTM-Module 30, 31 und 32 umfaßt, ausgeführt wird und der Transformationsalgorithmus, der durch die zweite Transformationsstufe, die die NTM-Module 40, 41 und 42 umfaßt, ausgeführt wird, sind gewöhnlicherweise unterschiedlich, obgleich sie durch den gleichen Algorithmus vorgegeben sein können. Jeder der Algorithmen, die durch jede der Stufen ausgeführt werden, hängt von dem Typ der gewünschten Bildverarbeitung ab. In der vorliegenden Erfindung ist jeder der Nachbarschafts- Transformationsmodule mit Ausnahme der Steuerinformation (nicht dargestellt) identisch, die den Algorithmus verändern kann, der durch jeden der NTM-Module ausgeführt wird.
- Unter erneuter Bezugnahme auf Figur 1 gibt die Verbindungseinrichtung 51 eine Wegstrecke für die Übertragung von Kantendaten zwischen den Modulen 30 und 31 vor. In gleicher Weise gibt die Verbindungseinrichtung 52 eine Einrichtung für die Übertragung von Kantendaten zwischen den Modulen 31 und 32 vor. Die Verbindungseinrichtung 53 überträgt Kantendaten zwischen den Modulen 40 und 41, und die Verbindungseinrichtung 54 gibt eine Übertragungsstrecke für Kantendaten zwischen den Modulen 41 und 42 vor.
- Es sei für den Fachmann vermerkt, daß eine Anzahl von Unterteilungen zwischen der zweiten Unterteilung, die durch die Bezugsziffer 22 bezeichnet ist, und der dritten Unterteilung, die durch die Bezugsziffer 23 bezeichnet ist, vorhanden sein kann. Die Anzahl der ausgewählten Unterteilungen ist eine Angelegenheit der Entwurfswahl.
- Wie in Figur 1 gezeigt, umfaßt der Speicher 20 eine Ausgangseinrichtung 70, die an eine Verwertungseinrichtung 71, wie beispielsweise eine Anzeigeelektronik für einen Videoausgang im allgemeinen angeschlossen ist. Es sei jedoch vermerkt, daß der Ausgang der Module 40, 41 und 42 ebenfalls direkt an eine Verwertungseinrichtung angeschlossen werden kann.
- Die bislang vorgelegte Beschreibung ist im wesentlichen zum Teil im Stand der Technik bekannt und insbesondere in dem US-Patent 4 484 349 beschrieben. In Figur 2 ist ein schematisches Blockdiagramm einer der Nachbarschafts- Transformationsmodule gemäß Figur 1 in Übereinstimmung mit der vorliegenden Erfindung dargestellt, wobei eine 2x2-Fenstertransformation einen integralen Teil des Transformationsprozesses bildet. Die in Figur 2 veranschaulichten einzelnen Signal leitungen können tatsächlich mehrere Signalleitungen, d.h. einen parallelen Signalbus, darstellen.
- Die Architektur des in Figur 2 veranschaulichten Nachbarschafts-Transformationsmoduls 100 führt, wie zuvor gesagt, eine 2x2-Fenster-Nachbarschaftstransformation aus, und sie kann für irgendeinen der NTM-Module in Figur 1 verwendet werden. Jeder NTM-Modul umfaßt eine Eingangseinrichtung 201, die einem Speicherregister (SR) 203 zugeführt wird. Das Speicherregister 203 umfaßt einen Ausgang 204, der ebenfalls durch den Buchstaben A bezeichnet ist, welcher einem Eingang des Speicherregisters 205 und dem Mehrwegschalter 207 auf den Verbindungseinrichtungen 204a und 204b entsprechend zugeführt wird. Das Speicherregister 205 umfaßt einen Ausgang 206, der ebenfalls mit dem Buchstaben B bezeichnet ist und welcher dem Ausgangsschieberegister 211, dem Verzögerungsregister 212 und dem Mehrwegschalter 207 über Verbindungseinrichtungen 206a, 206b und 206c entsprechend zugeführt wird. Das Ausgangs-Schieberegister 211 umfaßt einen Ausgang 218, der ebenfalls mit dem Buchstaben H bezeichnet ist. Das Verzögerungsregister 212 umfaßt einen Ausgang 213, der ebenfalls mit dem Buchstaben C bezeichnet ist und der dem Speicherregister 215 und dem Mehrwegschalter 207 über Verbindungseinrichtungen 213a und 213b entsprechend zugeführt wird. Das Speicherregister 215 umfaßt einen Ausgang 219, der ebenfalls mit dem Buchstaben D bezeichnet ist und der dem Mehrwegschalter 207 zugeführt wird.
- Der Modul 100 umfaßt ferner ein Eingangs-Schieberegister 221, dessen Ausgang 225, der auch mit dem Buchstaben F bezeichnet ist, dem Speicherregister 223 und dem Mehrwegschalter 207 über Verbindungseinrichtungen 225a und 225b entsprechend zugeführt wird. Der ebenfalls mit dem Buchstaben G bezeichnete Ausgang 227 des Speicherregisters 223 ist über die Verbindungseinrichtung 227 an den Mehrwegschalter 207 angeschlossen. Das Eingangs-Schieberegister 221 erhält seinen Eingang über Eingangseinrichtungen 231 oder 233 über den Multiplexer 235 unter Steuerung durch die Schaltersteuerung S2.
- Der Mehrwegschalter 207 besitzt vier Ausgänge 241, 242, 243 und 244, deren Signale auch durch die Buchstaben a, b, c und d entsprechend bezeichnet sind. Diese Ausgänge werden als Eingänge dem Nachbarschafts- Transformationsprozessor 250 zugeführt, welcher Arithmetik/Logikeinheiten (ALU) 251, 252 und 253 umfaßt. Die ALU 251 verarbeitet die Signale a und b, und die ALU 252 verarbeitet die Signale c und d. Der Ausgang der ALU 251 wird der ALU 253 über ein Speicherregister 255 zugeführt. In gleicher Weise wird der Ausgang der ALU 252 der ALU 253 über das Speicherregister 257 zugeführt. Es sei vermerkt, daß der Eingang, der Ausgang und die internen Verbindungen des Prozessors 250, wie sie gerade beschrieben wurden, nur beispielhaft für die Ausführung der beabsichtigten Funktion sind.
- Jedes der Speicherregister, das Verzögerungsregister 212 und die Arithmetik/Logikeinheiten werden synchron durch ein zentrales Taktsignal CK1 (nicht dargestellt) betätigt. Das Taktsignal CK1 ist aus dem Diagramm ausgelassen worden, um die Zeichnung für das leichtere Verständnis der vorliegenden Erfindung zu vereinfachen (synchrone und asynchrone Steuerung sind in der Steuertechnik wohl bekannt). Sowohl das Ausgangs- Schieberegister 211 als auch das Eingangs-Schieberegister 221 werden seriell durch ein gemeinsames Taktsignal CK2 getaktet. Es können jedoch auch unabhängige Taktsignale verwendet werden (es sei vermerkt, daß der Eingang zu dem Schieberegister 221 und der Ausgang des Schieberegisters 211 seriell ist und daß sich daher die Architektur vereinfacht, da keine parallele Busleitung erforderlich ist). Ferner umfaßt das Ausgangs-Schieberegister 211 ebenfalls ein Freigabesignal E1, um die Speicherung des Ausgangs des Registers 205 unter der Steuerung von E1 hervorzurufen. Das Speicherregister 223 umfaßt ebenfalls ein Freigabesignal E2, um die Speicherung des Ausgangs des Eingangs-Schieberegisters 221 unter der Steuerung von E2 zu bewirken. Letztlich ist der Mehrwegschalter 207 mit einem Steuerschaltersignal S1 dargestellt, das in einer Weise arbeitet, wie dies nachfolgend beschrieben wird.
- Figur 3 veranschaulicht den parallelen Pipeline- Nachbarschafts-Transformationsprozessor der vorliegenden Erfindung, indem das Feld in drei Unterteilungen unterteilt ist. Der Zweck von Figur 3 liegt in der Veranschaulichung der Verbindungen zwischen drei identischen Nachbarschafts-Transformationsmodulen 100 und insbesondere zum Aufzeigen der Verbindungen zwischen dem Ausgangs- und Eingangs-Schieberegister 211 und 221 in den entsprechenden Modulen, um die Übertragung von Kanten- Dateninformation in einer noch zu beschreibenden Weise zu gestatten.
- In Figur 3 ist der linke NTM-Modul als Modul 301, der rechte NTM-Modul als Modul 303 und der mittlere NTM-Modul als Modul 302 bezeichnet. Alle NTM-Module 301, 302 und 303 sind identisch ähnlich den Modulen 30, 31 und 32 in Figur 1. Die Komponenten in jedem der NTM-Module 301, 302, 303, welche die gleiche beabsichtigte Funktion wie in Figur 2 besitzen, sind mit identischen Bezugszeichen entsprechend jenen des NTM-Moduls 100 in Figur 2 versehen. Der Ausgang des Ausgangs-Schieberegisters 211 des Moduls 302 ist mit der Eingangseinrichtung 233 des vorangehenden Moduls 301 und der Eingangseinrichtung 231 des nachfolgenden Moduls 303 verbunden. Der Ausgang des Schieberegisters 211 des Moduls 301 wird der Eingangseinrichtung 231 des folgenden Moduls 302 zugeführt. Der Ausgang des Ausgangs-Schieberegisters 211 des Moduls 303 wird der Eingangseinrichtung 233 des vorangehenden Moduls 302 zugeführt.
- Die Figuren 4a, 4b, 4c und 4d veranschaulichen Rasterzeilen-Abtaststeuerschemen und ein Nachbarschafts- Transformationsspeicher-Abbildungsschema gemäß der vorliegenden Erfindung. Insbesondere zeigt Figur 4a eine Rasterzeilenabtastung, die sich von links nach rechts bewegt und von oben nach unten, d.h. eine Rechts/Abwärts- Abtastung. Ferner werden Daten des 2x2-Fensters mit vier Eckadressen a, b, c und d mit der Entscheidung verarbeitet, daß die sich ergebende Transformation der zuvor erwähnten Viereckdatenwerte in dem adressierten Speicherplatz der Speichereinrichtung 20 gespeichert wird, der dem früheren Speicherplatz der b-Adresse entspricht. Das obige Steuerschema ist ferner in Figur 5 veranschaulicht.
- Figur 5 zeigt ein kleines Matrixbeispiel von Adressen im Speicher A, der vier Spalten und vier Zeilen besitzt. Jede der Zellen in der Matrix des Speichers A ist durch eine numerische Adresse 1a bis 16a bezeichnet. Im Schritt 1 bearbeitet eine erste 2x2-Nachbarschaftstransformation Daten in den Zellen 1a, 2a, 5a und 6a und speichert das Ergebnis NT1 an dem Speicherplatz der Adresse 5b des Speichers B, wobei der Speicher B entsprechende numerische Adressen wie der Speicher A aufweist. Im Schritt 2 bewegt sich die Rasterabtastung um eine Spalte und führt die Nachbarschaftstransformation bezüglich Daten in den Zellen 2a, 3a, 6a und 7a aus und speichert das Ergebnis NT2 in der Zelle 6b. Nach dem Schritt 3 wird das Ergebnis der Nachbarschaftstransformation bezüglich der Zellen 3a, 4a, 7a und 8a unter der Adresse 7b gespeichert und als NT3 bezeichnet. Es sei vermerkt, daß nach dem Schritt 3 keine weiteren gültigen 2x2-Fenstertransformationen bezüglich der Datenwerte in den Zeilen 1 und 2 ausgeführt werden können. Daher erzeugt der Schritt 4 (nicht dargestellt) ungültige Daten, wie dies durch das Sternchen in der Zelle 8b vermerkt ist. Am Ende des Schrittes 4 wird die Rasterzeilenabtastung um eine Zeile nach unten zurückversetzt und zurück nach links, wie dies durch den Schritt K veranschaulicht ist. Im Schritt K wird eine Nachbarschaftstransformation NT4 bezüglich der Zellen 5a, 6a, 9a und 10a ausgeführt und unter der Adresse 9b gespeichert. Der Schritt 9 veranschaulicht die vorletzte 2x2-Fenstertransformation, die bezüglich Datenwerte in der in dem Speicher A gespeicherten Matrix von Datenwerten ausgeführt wird. Im Schritt N wird eine Nachbarschaftstransformation NT11 bezüglich der Zellen 11a, 12a, 15a und 16a ausgeführt und unter der Adresse 15b abgespeichert.
- Es sei für den Fachmann vermerkt, daß nach einer vollständigen Rasterabtastung eines in dem Speicher A gespeicherten Bildes und bei Verwendung einer 2x2-Fenster-Nachbarschafts-Transformationsabtastung und Speicherung der sich ergebenden Transformationen unter entsprechenden Adressen in der Zelle b des Speichers B das sich ergebende Bild ein solches ist, in der das Bild geschrumpft ist, da die obere Zeile und die rechte Spalte nicht länger gültige Nachbarschafts-Transformationsdaten aufweisen. Dies ist insbesondere in Figur 5 durch die Sternchen in der oberen Zeile und der rechten Spalte des Speichers B nach dem Schritt N gezeigt. Ferner wurde das sich ergebende Bild in der Speichermatrix um eine Zeile nach unten und um eine Spalte nach links verschoben.
- Es sei für den Fachmann vermerkt, daß für jede Nachbarschaftstransformation, beispielsweise durch die zweite Transformation durch die in Figur 1 veranschaulichten NTM-Module 40, 41 und 42 das Bild im Speicher um eine zusätzliche Zeile und Spalte in der gleichen Richtung für das gleiche Rasterzeilen- Abtastmuster verschoben wird. Wie später erläutert wird, kann die Architektur der vorliegenden Erfindung eine umgekehrte Abtastung verwenden, wie dies in Figur 4b veranschaulicht ist, wobei der gleiche NTM-Modul und das gleiche Steuerschema mit dem Ergebnis verwendet werden, daß das sich ergebende Nachbarschafts-Transformationsbild in einer komplementären Weise verschoben wird, um das Bild zentral innerhalb der Bildspeicherabbildung neu zu positionieren.
- Der Betrieb des Nachbarschafts-Transformationsmoduls von Figur 2 sei unter Bezugnahme auf Figur 3, die Taktzyklus- Zeittakttabelle in Figur 6, die Speicherdiagramme in Figur 7 und das Rasterzeilen-Abtastdiagramm in Figur 4a beschrieben.
- Figur 7 veranschaulicht die in drei Segmente unterteilten Bilddaten-Speicherabbildungen A, B und A+ ähnlich wie in Figur 5. Jede Speicherabbildung besitzt vier Zeilen und zwölf Spalten. Ferner sei in Betracht gezogen, daß die Bilddaten und die entsprechende Speicherabbildung in drei Segmente unterteilt sind, wie dies durch die Speicher- Abbildungsegmente 601, 602 und 603 veranschaulicht ist. In jeder Speicherabbildung ist die obere linke Speicherzelle durch die Adresse 1 bezeichnet und die unterste rechte Zelle durch die Adresse 16. Ferner sei angenommen, daß die Ausgangsdaten aus den Speicherunterteilungen 601, 602 und 603 der Reihe nach auf einem Signalbus (über nicht dargestellte Verbindungen) in den der Transformationsmodule 301, 302 und 303 entsprechend überführt werden, wie dies in Figur 3 veranschaulicht ist, wobei dies gemäß der Rasterzeilenabtastung geschieht, wie sie in Figur 4a veranschaulicht ist. Das heißt die Zellendaten werden der Reihe nach mit einem ausgewählten Taktzyklus Zelle für Zelle und Zeile für Zeile aus dem Speicher entnommen, wobei mit der Adresse gestartet wird entsprechend der oberen linken Ecke der Speicherabbildung und die Abtastung von links nach rechts für jede Zeilenabtastung verläuft. Die Einzelheiten in Figur 6 zeigen die Adressen der Daten (nicht die Daten selbst) auf den Eingangseinrichtungen a, b, c und d, welche dem Nachbarschafts-Transformationsprozessor 250 bei jedem Taktzyklus CK1 angeboten werden.
- Die Taktzyklus-Zeittakttabelle in Figur 6 und die in Figur 7 veranschaulichten Speicher-Abbildungsdiagramme veranschaulichen schematisch den Betrieb irgendeines der NTM-Module und insbesondere den Betrieb des mittleren NTM-Moduls 302 für eine Rechts/Abwärts-Abtastung. Die Überschrift der Tabelle in Figur 6 zeigt die Signalbuchstaben, wie sie früher anhand von Figur 2 definiert wurden. Die Zahl unter der Buchstabenspalte gibt die Zellenadresse des speziellen unterteilten Speichers an. Die folgende Darstellung beschreibt den Datenfluß nach jedem vollständigen Taktzyklus CK1. Die mit einem Kreis versehenen Zellen zeigen an, daß Kantendaten durch den benachbarten NTM-Modul benötigt werden. Die mit einem Rechteck versehenen Zellen zeigen an, daß Zellendaten für die 2x2-Nachbarschaftstransformation erforderlich sind.
- Nach dem zweiten Taktzyklus wird das Signal B, das Daten der Zelle 1 enthält, in das Schieberegister 211 auf Anweisung des Signales E1 geladen. Bei dem Zeittakt- Hintergrund des veranschaulichten Beispiels wird mit einer im allgemeinen schnelleren Taktgeschwindigkeit CK2 der Inhalt des Ausgangs-Schieberegisters 211 seriell in das Eingangs-Schieberegister 221 des vorangehenden NTM-Moduls 301 über die Verbindungseinrichtung 231 verschoben. Zur gleichen Zeit wird der Inhalt des Ausgangs-Schieberegisters 211 des folgenden NTM-Moduls 303 seriell in das Eingangs-Schieberegister 221 des Moduls 302 über die Verbindungseinrichtung 233 verschoben. Auf Anweisung des Signales E2 wird das Signal F in das Schieberegister 223 geladen. In gleicher Weise wird nach dem sechsten Taktzyklus der Inhalt der Zelle 5 in das Eingangs-Schieberegister 221 geladen. Somit repräsentiert vor dem zehnten Taktzyklus das Signal G den Inhalt der Zelle 1, und das Signal F repräsentiert den Inhalt der Zelle 5. Die Kombination des Ausgangs- Schieberegisters 211 und des Eingangs-Schieberegisters 221 gestattet die Durchreichung und Speicherung von Kantendaten über ein einzige serielle Daten- Übertragungsleitung zwischen den NTM-Modulen. Dies gestattet daher Hintergrund-Zeittaktaktivitäten, während Zellendaten durch die Register 205, 212 und 215 hindurchgereicht werden, bei einem Minimum an Signalleitungen zwischen den NTM-Modulen.
- Allgemein sei vermerkt, daß die Taktrate CK2 nicht schneller als die Taktrate CK1 sein muß und tatsächlich die gleiche Rate wie CK1 aufweisen kann. Das heißt CK2 kann gleich sein wie CK1 (oder sogar langsamer), wenn die Anzahl der Spalten pro Segment größer als die Anzahl der Bits pro Datenwert ist, der in einer Speicherzelle gespeichert ist (d.h. die Länge des seriellen Ausgangsschieberegisters, z.B. das Register 211).
- Eine Erläuterung der Funktion des Verzögerungsregisters 212 und der Größe der Verzögerung sei nunmehr gegeben. In dem in Figur 6 veranschaulichten Beispiel ist das Speicherbild in drei Segmente unterteilt, wobei jedes Segment vier Spalten umfaßt. Für einen geeigneten Betrieb des NTM-Moduls 100 muß das Verzögerungsregister 212 einem Wert entsprechend den gesamten N-Bildspalten 12 geteilt durch die Anzahl der K-Unterteilungen (3) weniger 1 entsprechen, d.h. (N/K) -1. Im vorliegenden Beispiel muß das Verzögerungsregister das Äquivalent von drei Taktzyklen (12 geteilt durch 3 weniger 1) vorgeben. Daher muß bei dem vorliegenden Beispiel das Verzögerungsregister dem Äquivalent von drei Taktzyklen entsprechen, lange bevor Daten am Ausgang 213 des Verzögerungsregisters verfügbar sind, der mit dem Buchstaben C bezeichnet ist. Demgemäß ist der Inhalt der Zelle Nr. 1 am Ausgang C nach dem fünften Taktzyklus verfügbar. Nach dem sechsten Taktzyklus bildet der Wert der Signale A, B, C, und D genau das Fenstermuster von Figur 4a und das Fenster, das im Schritt 1 von Figur 5 für den Speicher A veranschaulicht ist. Namentlich besitzt D den Wert der Zelle Nr. 1 und C den Wert der Zelle Nr. 2, B den Wert der Zelle Nr. 5 und A den Wert der Zelle Nr. 6. In gleicher Weise entsprechen nach jedem Taktzyklus CK1 die Werte von A, B, C und D dem abtastenden 2x2-Fenster.
- Die folgende Erläuterung beschreibt den Betrieb des Mehrwegschalters bei der Ausführung von Nachbarschaftstransformationen bei Unterteilungskanten. Nach dem sechsten Taktzyklus wird der Mehrwegschalter 207 durch den Schalter S1 so eingestellt, daß er die Ausgänge A, B, C und D als Eingänge a, b, c und d an den Nachbarschafts-Transformationsprozessor 250 ausgibt. Nach dem siebten Taktzyklus beginnt die Nachbarschaftstransformation der Zellen 2, 3, 6 und 7 in dem Prozessor 250. Der Transformationsprozeß findet der Reihe nach während eines oder mehrerer Taktzyklen statt, bis die Daten am Ausgang 290 des Prozessors 250 für die nachfolgende Speicherung in dem Speicher B oder für die Weitergabe an eine nachfolgende Transformationsstufe, wie in Figur 1 gezeigt, verfügbar sind. Unter der Annahme, daß nur eine Transformationsstufe vorliegt, entsprechen die Daten die durch die Signale A, B, C und D nach dem sechsten, siebten und achten Taktzyklus repräsentiert werden, dem 2x2-Fenster, das sich bewegt, wie dies durch die Schritte 1, 2 und 3 in Figur 5 entsprechend gezeigt ist. Unter diesen Umständen ist das Steuersignal S1 für den Mehrwegschalter 207 dergestalt, daß die Signale A, B, C und D die Eingangssignale a, b, c und d, werden die dem Nachbarschaftsprozessor 250 angeboten werden. Daher können die Nachbarschafts-Transformationswerte NT1, NT2 und NT3 der Reihe nach durch den Nachbarschafts- Transformationsprozessor berechnet werden.
- Nach dem neunten Taktzyklus erfordert jedoch der mittlere NTM-Modul Kantendaten von dem folgenden NTM-Modul 303. Unter diesen Umständen verändert der Steuerschalter S1 die Steuerung des Mehrwegschalters 207, so daß diese das Signal G mit dem Signaleingang a des Prozessors 250 und das Signal F mit dem Signaleingang c des Prozessors 250 verbindet. Zu diesem Zeitpunkt kann der Prozessor 250 die Nachbarschaftstransformation NT4 mit den geeigneten 2x2-Fenster-Zellendaten ausführen, wie dies durch das Fenster 610 in Figur 7 veranschaulicht ist.
- Nach dem neunten Taktzyklus ist das Schieberegister 223 erneut freigegeben, um das Signal F zu speichern. Ferner wird nach dem zehnten Taktzyklus die Zelle 9 seriell zu dem Eingangsregister 221 für die Verwendung nach dem dreizehnten Taktzyklus weitergereicht, wenn Kantendaten erneut angefordert werden, um die NT8-Transformation zu erhalten. Das Muster wiederholt sich natürlich für Kantendaten, die bei dem siebzehnten Taktzyklus benötigt werden. Somit wird eine vollständige Rasterzeilenabtastung unter Verwendung einer 2x2-Fensterabtastung nach dem siebzehnten Taktzyklus vervollständigt. Da jeder der NTM-Module 301, 302 und 303 in der gleichen Weise zur gleichen Zeit betrieben wird, ist das vollständige Bild nach siebzehn Taktzyklen transformiert.
- Gemäß Figur 7 werden die Nachbarschaftstransformationen NT1 bis NT12 im Speicher B gespeichert, wobei das Bild nach rechts und nach unten verschoben wird, wie dies bereits erläutert wurde. Wie jedoch bereits früher angezeigt, kann eine Pipeline von Prozessoren seriell den Ausgang des Nachbarschafts-Transformationsprozessors verarbeiten, um ferner die Bilddaten zu transformieren, bevor sie zurück zu dem Speicher B geführt werden. Es versteht sich, daß der Speicher B der gleiche sein kann, wie der Speicher A oder alternativ eine getrennte Unterteilung eines Speichers sein kann, der wenigstens der Größe des Speichers A entspricht.
- Bei der vorliegenden Erfindung können die gleichen NTM-Module mit dem gleichen Steuerschema verwendet werden, um das Bild in der Speicherebene ohne ein komplexes bzw. ausgeklügeltes Speicher-Steuerschema neu zu positionieren. Alles, was bei der vorliegenden Erfindung erforderlich ist, ist die einfache Umkehrung der Speicherabtastung, wie sie insbesondere durch Figur 4b veranschaulicht ist, nämlich eine Abtastung nach links und nach oben. Die in Figur 8 veranschaulichte Tabelle zeigt die Signalwerte ähnlich wie die Tabelle in Figur 6 für die Situation, in der die Abtastung nach links und nach oben erfolgt. Die Ergebnisse sind insbesondere durch die Speicherabbildung in Figur 7 veranschaulicht, in der die Werte des Speichers B umgekehrt abgetastet werden und im Speicher A+ gespeichert werden. Das sich im Speicher A+ ergebende Bild ist nach rechts und nach oben verschoben entgegengesetzt der sich ergebenden Verschiebung aufgrund der Abtastung nach rechts und nach unten.
- Es sei jedoch vermerkt, daß bei der zuvor erwähnten Umkehrung der Abtastung es zum Erzielen von Kantendaten für das Fenster erforderlich ist, daß die Kantendaten von dem vorhergehenden NTM-Modul erhalten werden. Unter diesen Umständen wird das Signal S2 betätigt, um den Multiplexer 235 zu veranlassen, die Verbindungseinrichtung 231 mit dem Eingang des Eingangs- Schieberegisters 221 zu verbinden. Die verbleibenden Signale und der Betrieb des NTM-Moduls verbleibt die gleiche wie bei der vorangegangenen Erläuterung.
- Es sei vermerkt, daß das Fenster-Speicherschema bei Verwendung der umgekehrten Abtastung das gleiche ist wie bei der Abtastung nach rechts und nach unten. Namentlich werden Ergebnisse in dem Zellenspeicherplatz b gespeichert. Ein Vergleich der 2x2-Fenster in den Figuren 4a und 4b zeigt, daß das Bild auf den Kopf gestellt ist und von rechts nach links verläuft. Demgemäß kann nach der umgekehrten Abtastung die zuvor erwähnte umgekehrte Bildabtastung direkt aus dem Speicher ohne weitere Verarbeitung oder Speichersteuerung gelesen werden. Ferner können komplementäre Abtastungen, wie jene, die in den Figuren 4c und 4d dargestellt sind und ähnliche durch den NTM-Modul der vorliegenden Erfindung ebenfalls verarbeitet werden.
- Figur 9 veranschaulicht eine verbesserte Version des NTM-Moduls gemäß Figur 2 mit verbesserten Bildverarbeitungsalgorithmen und ähnlichen Möglichkeiten. Gleiche Funktionskomponenten, wie in Figur 2, tragen in Figur 9 die gleichen Bezugszeichen. Der NTM-Modul von Figur 9 umfaßt einen Mehrwegschalter 900 für die serielle Vorgabe einer von zwei Bildmatrizen an den NTM-Transformationsprozessor 950 oder für die Vorgabe verschiedener Kombinationen. Der Mehrwegschalter kann die Verbindung von einem der beiden Signaleingänge 201 oder 902 auswählen und kann diese an irgendeiner von drei oder mehr Ausgangsleitungen 911, 912 oder 913 unter Steuerung durch das Anweisungssignal S9 ausgeben. Der Ausgang 911 ähnelt der Ausgangseinrichtung 204 in Figur 2. Der Ausgang 912 gestattet die Verbindung direkt mit dem Mehrwegschalter 207 für die weitere selektive Verarbeitung durch einen komplexeren Mehrwegschalter und durch den Nachbarschafts-Transformationsprozessor.
- Wie in Figur 9 gezeigt, umfaßt der Prozessor 950 eine zusätzliche ALU 955 und einen Entscheidungs- Logikschaltkreis 956 zusammen mit mehreren Speicherregistern (SR) für den geeigneten Zeittakt der Signalverarbeitung. Wie der NTM-Modul in Figur 2 kann der Ausgang 990 des Prozessors 950 wiederum der Reihe nach in der gewöhnlichen Pipeline verarbeitet werden oder in der bereits beschriebenen Weise zu dem Speicher zurückgeführt werden.
- Der NTM-Modul von Figur 9, der den Prozessor 950 umfaßt, gestattet einen ungeheueren Spielraum bei der Kombination von Bildern, sowohl laufenden als auch vergangenen Bildern, um eine große Vielzahl von Bildverarbeitungsstrategien vorzugeben. Es versteht sich, daß sowohl dem NTM-Modul von Figur 2 als auch von Figur 9 die Verwendung der 2x2-Fenster-Nachbarschafts- Transformationsarchitektur gemeinsam ist, die extrem einfach im Aufbau ist und eine größere Flexibilität in der Bildverarbeitung und eine schnelleren Durchfluß gestattet.
- Es versteht sich, daß es eine Vielzahl von Speicher- Abbildungsschemen gibt, die verwendet werden können.
- Es sei ferner vermerkt, daß der Ausdruck Speicherregister durch eine große Vielzahl von Schaltkreistechniken vorgegeben sein kann, um die beabsichtigte Funktion zu erzielen. Obgleich die Erfindung mit einer 4x4-Speicherabbildung beschrieben worden ist, ist jede Speichergröße anwendbar.
- Letztlich ist der Mehrwegschalter 207 dargestellt worden, um spezifische Schalterverbindungen A, B, C und D mit Ausgängen a, b, c und d entsprechend vorzugeben. Die allgemeine Verwendung des Mehrwegschalters 207 gestattet jedoch eine beliebige Verbindung von A, B, C und D mit a, b, c und d in einer Vielzahl von Weisen, z.B. von A zu d, von B zu a, von C zu b und D zu e, usw.
Claims (5)
1. Parallel-Pipeline-Bildverarbeitungseinrichtung für
die Verarbeitung von in adressierbaren Zellen einer
N Spalten und M Zeilen aufweisenden Speicheranordnung
(20) gespeicherten Bilddaten mit:
a) Lesemitteln zum aufeinanderfolgenden Aus lesen
von Daten aus den Bilddatenspeicherzellen
entsprechend einem ausgewählten Rasterzeilen-
Abtastmuster und zum Bereitstellen jener
Bilddaten an einer ersten
Ausgangssignaleinrichtung (201);
b) Mitteln zum Übertragen jener Daten an mehrere
parallele Pipelines (30, 40; 31, 41; 32, 42) von
Nachbarschaftstransformationsmodulen NTM (30 -
42), welche gleichzeitig
Nachbarschaftstransformationen bezüglich eines
Bildpunktfensters ausführen und das Ergebnis an
eine Verbrauchseinrichtung (71) liefern; und
c) Datenverbindungsmittel (51 - 54) zum
Datenaustausch zwischen den
Nachbarschaftstransformationsmodulen
benachbarter Pipelines; wobei
d) jeder Nachbarschaftstransformationsmodul einen
Nachbarschaftstransformationsprozessor (52),
Datenspeichermittel sowie Steuerlogikmittel
(207) aufweist;
dadurch gekennzeichnet,
daß jeder Nachbarschaftstransformationsmodul
(100) ferner umfaßt:
e) Datenfortschalteinrichtungen (203, 205, 211,
212, 215), welche eine erste Eingangsvorrichtung
(201) zum Empfangen der ausgelesenen Daten über
die erste Ausgangssignaleinrichtung (201) sowie
zweite (204b), dritte (206c), vierte (213b) und
fünfte (219) Ausgangssignaleinrichtungen
aufweist und wobei die
Datenfortschalteinrichtung den vier Ecken eines 2 x 2-Fensters
der Bildspeicheranordnung (20) entsprechende
Datenwerte gleichzeitig auf den zweiten,
dritten, vierten und fünften
Ausgangssignaleinrichtungen ausgibt und die vier
Eckdatenwerte in aufeinanderfolgenden Taktzyklen
eines ersten Taktsignals sich nacheinander
entsprechend einem laufenden 2 x 2-Fenster
ändern, welches in einem dem ausgewählten
Rasterzeilenabtastmuster ähnlichen
Rasterzeilenabtastmuster verschoben wird;
f) Eingabemitteln (207, 241, 242, 243, 244) für den
Empfang der vier Eckdatenwerte auf den zweiten
(204b), dritten (206c), vierten (213b) und
fünften (219) Ausgangssignaleeinrichtungen sowie
mit einer sechsten Ausgangssignaleinrichtung
(290), wobei der Prozessor (250) eine
ausgewählte Nachbarschaftstransformation
bezüglich der empfangenen vier Eckdatenwerte
ausführen kann und deren Ergebnis in
aufeinanderfolgenden Taktzyklen des ersten
Taktsignals nacheinander auf der sechsten
Ausgangssignaleinrichtung (290) ausgibt; und
wobei
g) die Datenfortschalteinrichtung erste (205) und
zweite (215) Speicherregister sowie eine
Verzögerungseinrichtung (212) umfaßt, die
jeweils mit Eingabe- und Ausgabeeinrichtungen
versehen sind; und wobei
h) die Eingabevorrichtung (204a) des ersten
Speicherregisters (205) an die erste
Ausgangssignaleinrichtung (201) angeschlossen
ist;
i) die Ausgabevorrichtung (206) des ersten
Speicherregisters (205) an die
Eingabevorrichtung (206b) der
Verzögerungseinrichtung (212) angeschlossen ist;
j) die Ausgabevorrichtung (213) der
Verzögerungseinrichtung (212) an die
Eingabevorrichtung (213a) des zweiten
Speicherregisters (215) angeschlossen ist; und
wobei
k) die Eingabevorrichtung des ersten
Speicherregisters (205), die
Verzögerungseinrichtung (212) und das zweite
Speicherregister (215) als zweite (204b), dritte
(206c) und vierte (213b)
Ausgangssignaleinrichtungen dienen und die
Ausgabevorrichtung (219) des zweiten
Speicherregisters (215) die fünfte
Ausgangssignaleinrichtung (219) bildet.
2. Einrichtung nach Anspruch 1, dadurch
gekennzeichnet, daß die
Verzögerungseinrichtung (212) eine Verzögerung
praktisch gleich einer ganzen Anzahl von Taktzyklen
bewirkt, wobei die ganze Zahl gleich dem ganzen Wert
der Anzahl N von Spalten in der Anordnung minus 1
ist.
3. Einrichtung nach Anspruch 1 oder 2, bei der die
Lesemittel den Bilddatenspeicher entsprechend einem
ausgewählten Rasterzeilenabtastmuster von P Spalten
mal M Zeilen eines unterteilten Segments (601, 602,
603) der Bildsensoranordnung (10) mit N Spalten und
M Zeilen ausliest und wobei P x K = N und K die
Anzahl der Segmente ist;
gekennzeichnet durch
a) eine an die erste Eingangsvorrichtung (201)
angeschlossene Ausgabespeichervorrichtung (211)
zum aufeinanderfolgenden Speichern der
Kantendatenwerte einer ausgewählten Spalte der
ersten und letzten Spalten der
P-Spalten-Anordnung;
b) eine an die Ausgabespeichervorrichtung (211)
eines ausgewählten Moduls aus den vorangehenden
und folgenden
Nachbarschaftstransformationsmodulen (30 - 42) angeschlossene
Eingabespeichervorrichtung (221, 223) für den
Empfang der in der Ausgabespeichervorrichtung
(211) gespeicherten Kantendatenwerte; wobei
c) die Eingabespeichervorrichtung (221, 223) Mittel
zum Speichern zweier aufeinanderfolgender
Kantendatenwerte der ausgewählten ersten und
letzten Spalten aufweist und die
Eingabespeichervorrichtung erste (227) sowie
zweite (225b) Kantendatenausgabemittel umfaßt
zur gleichzeitigen Ausgabe der beiden
aufeinanderfolgenden Kantendatenwerte;
d) eine Schalteinrichtung (207) zum
d1) selektiven Anschluß der zweiten (2o4b),
dritten (206c), vierten (213b) und fünften
(219) Ausgangssignalvorrichtungen an erste
(241), zweite (242), dritte (243) bzw.
vierte (244) Schaltausgangsmittel und zwar
für jede Rasterzeilenabtastung des
Fensters, die keine Kantendaten aus einem
ausgewählten vorangehenden und folgenden
Segment benötigt; und
d2) zum selektiven Anschluß
(i) der ersten (227) und zweiten (225b)
Kantendatenausgabemittel an die ersten
(241) bzw. dritten (243)
Schalterausgangsmittel, und
(ii) der zweiten (204b) und vierten (213b)
Ausgangssignaleinrichtungen an die
zweiten (242) bzw. vierten (244)
Schalterausgangsmittel zu denjenigen
Zeiten am Ende jeder Zeile der
Rasterzeilenabtastung des Fensters,
welche Kantendaten benötigen, so daß
e) die ersten, zweiten, dritten und vierten
Schalterausgangsmittel vier Eckdatenwerte des
gleitenden 2 x 2-Fensters bilden einschließlich
derjenigen Fenster, welche die Kantendaten eines
ausgewählten vorangehenden und nachfolgenden
unterteilten Segments einschließen.
4. Einrichtung nach Anspruch 3, dadurch
gekennzeichnet, daß die
Ausgangsspeichervorrichtung (211) ein erstes
Schieberegister ist.
5. Einrichtung nach Anspruch 3 oder 4, dadurch
gekennzeichnet, daß
a) die Eingabespeichervorrichtung ein zweites
Schieberegister (221) und ein drittes
Schieberegister (223) aufweist, welche jeweils
mit Eingabe- und Ausgabemitteln versehen sind;
b) die Ausgabemittel (225) des zweiten
Schieberegisters (221) an die Eingabemittel
(225a) des dritten Speicherregisters (223)
angeschlossen sind;
c) die Ausgabemittel (225) des zweiten
Schieberegisters (221) die zweiten
Kantendatenausgabemittel (225b) bilden;
d) der Ausgang (227) des dritten Speicherregisters
(223) die ersten Kantendatenausgabemittel (227)
bildet; und
e) die Einrichtung ferner eine Zeitgabesteuerung
(CK2) aufweist zum
(i) seriellen Verschieben der im ersten
Schieberegister (211) gespeicherten
Kantendatenwerte auf Grund eines
Aktivierungssignals (E1) in das zweite
Schieberegister (221) der zweiten
Eingangsspeichereinrichtung; und
(ii) Übertragung des Ausgangssignals des zweiten
Schieberegisters (221) in Abhängigkeit von
einem dem dritten Speicherregister
zugeführten Befehlssignal (E2) in das
dritte Speicherregister (223).
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US07/085,057 US4805227A (en) | 1987-08-13 | 1987-08-13 | Parallel pipeline image processor with 2×2 window architecture |
Publications (2)
Publication Number | Publication Date |
---|---|
DE3885294D1 DE3885294D1 (de) | 1993-12-02 |
DE3885294T2 true DE3885294T2 (de) | 1994-03-10 |
Family
ID=22189190
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE88908014T Expired - Lifetime DE3885294T2 (de) | 1987-08-13 | 1988-08-08 | Parallele pipeline-bildverarbeitungseinheit mit einem 2x2-fenster. |
Country Status (7)
Country | Link |
---|---|
US (1) | US4805227A (de) |
EP (1) | EP0380521B1 (de) |
JP (1) | JP2949589B2 (de) |
KR (1) | KR920003460B1 (de) |
AU (1) | AU603971B2 (de) |
DE (1) | DE3885294T2 (de) |
WO (1) | WO1989001670A1 (de) |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4939575A (en) * | 1987-11-13 | 1990-07-03 | Texas Instruments Incorporated | Fault-tolerant serial video processor device |
US5379351A (en) * | 1992-02-19 | 1995-01-03 | Integrated Information Technology, Inc. | Video compression/decompression processing and processors |
CA2016348C (en) * | 1989-05-10 | 2002-02-05 | Kenichi Asano | Multiprocessor type time varying image encoding system and image processor |
NL8902726A (nl) * | 1989-11-06 | 1991-06-03 | Oce Nederland Bv | Werkwijze en inrichting voor het bewerken van data afkomstig van beelden. |
US5321510A (en) * | 1989-11-13 | 1994-06-14 | Texas Instruments Incorporated | Serial video processor |
US5077810A (en) * | 1990-07-19 | 1991-12-31 | Eastman Kodak Company | Distributed digital signal processing system using standard resolution processors for a high resolution sensor |
US6965644B2 (en) * | 1992-02-19 | 2005-11-15 | 8×8, Inc. | Programmable architecture and methods for motion estimation |
US5594813A (en) * | 1992-02-19 | 1997-01-14 | Integrated Information Technology, Inc. | Programmable architecture and methods for motion estimation |
JP3221085B2 (ja) * | 1992-09-14 | 2001-10-22 | 富士ゼロックス株式会社 | 並列処理装置 |
US5909520A (en) * | 1997-08-25 | 1999-06-01 | The United States Of America As Represented By The Secretary Of The Navy | Noise coding processor |
US20060245642A1 (en) * | 2005-04-29 | 2006-11-02 | Stmicroelectronics S.R.L. | Software implemented image generating pipeline using a dedicated digital signal processor |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4167728A (en) * | 1976-11-15 | 1979-09-11 | Environmental Research Institute Of Michigan | Automatic image processor |
US4395699A (en) * | 1979-09-10 | 1983-07-26 | Environmental Research Institute Of Michigan | Method and apparatus for pattern recognition and detection |
US4574394A (en) * | 1981-06-01 | 1986-03-04 | Environmental Research Institute Of Mi | Pipeline processor |
US4484349A (en) * | 1982-03-11 | 1984-11-20 | Environmental Research Institute Of Michigan | Parallel pipeline image processor |
JPS59149556A (ja) * | 1983-02-16 | 1984-08-27 | Hitachi Ltd | 画像デ−タ並列処理回路 |
US4689823A (en) * | 1984-01-04 | 1987-08-25 | Itek Corporation | Digital image frame processor |
US4601055A (en) * | 1984-04-10 | 1986-07-15 | The United States Of America As Represented By The Secretary Of Commerce | Image processor |
US4685144A (en) * | 1984-10-29 | 1987-08-04 | Environmental Research Institute Of Michigan | Image processing system with transformation detection |
JPH0814842B2 (ja) * | 1986-03-25 | 1996-02-14 | インタ−ナシヨナル ビジネス マシ−ンズ コ−ポレ−シヨン | イメ−ジ処理方法及び装置 |
-
1987
- 1987-08-13 US US07/085,057 patent/US4805227A/en not_active Expired - Lifetime
-
1988
- 1988-08-08 WO PCT/US1988/002786 patent/WO1989001670A1/en active IP Right Grant
- 1988-08-08 KR KR1019890700633A patent/KR920003460B1/ko not_active IP Right Cessation
- 1988-08-08 JP JP63507422A patent/JP2949589B2/ja not_active Expired - Lifetime
- 1988-08-08 DE DE88908014T patent/DE3885294T2/de not_active Expired - Lifetime
- 1988-08-08 AU AU23881/88A patent/AU603971B2/en not_active Expired
- 1988-08-08 EP EP88908014A patent/EP0380521B1/de not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
JP2949589B2 (ja) | 1999-09-13 |
DE3885294D1 (de) | 1993-12-02 |
US4805227A (en) | 1989-02-14 |
KR920003460B1 (ko) | 1992-05-01 |
AU603971B2 (en) | 1990-11-29 |
WO1989001670A1 (en) | 1989-02-23 |
AU2388188A (en) | 1989-03-09 |
KR890702153A (ko) | 1989-12-23 |
EP0380521A1 (de) | 1990-08-08 |
JPH03500698A (ja) | 1991-02-14 |
EP0380521B1 (de) | 1993-10-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE3804938C2 (de) | Bildverarbeitungseinrichtung | |
DE69522380T2 (de) | Parallel-Verarbeitungsarchitektur für Bildverarbeitung | |
DE3587750T2 (de) | Peripheriegerät für Bildspeicher. | |
DE3852909T2 (de) | Lineare Kette von Parallelprozessoren und Benutzungsverfahren davon. | |
DE3687358T2 (de) | Bildpufferspeicher mit variablem zugriff. | |
DE69520974T2 (de) | Eine integrierte Halbleiterschaltung | |
DE2819571C2 (de) | ||
DE69231497T2 (de) | Massivparalleles rechnersystem mit eingangs-ausgangsanordnung | |
DE3338345C2 (de) | ||
DE69122226T2 (de) | Verfahren und Einrichtung zur Zugriffsanordnung eines VRAM zum beschleunigten Schreiben von vertikalen Linien auf einer Anzeige | |
DE3851005T2 (de) | Paralleles Nachbarverarbeitungssystem und -Verfahren. | |
DE68919781T2 (de) | Videospeicheranordnung. | |
EP0252911B1 (de) | Programmierbare schaltung zur steuerung einer flüssigkristallanzeige | |
DE69125874T2 (de) | Generator für mehrdimensionale Adressen und Anordnung zum Steuern desselben | |
DE3885294T2 (de) | Parallele pipeline-bildverarbeitungseinheit mit einem 2x2-fenster. | |
DE3786409T2 (de) | Zeitschalter mit einem als Doppelspeicher strukturierten Steuerspeicher. | |
DE68927202T2 (de) | Paralleler Prozessor | |
DE4022149A1 (de) | Halbleiterspeichereinrichtung und betriebsverfahren fuer diese | |
DE68929451T2 (de) | Integrierte Schaltung mit synchronen Halbleiterspeicher, Methode zum Zugriff auf diesen Speicher und System mit einem solchen Speicher | |
DE4227733A1 (de) | Konfigurierbarer cachespeicher und datenverarbeitungssystem mit einem derartigen speicher | |
DE3851264T2 (de) | Bildverarbeitungsverfahren. | |
DE3850389T2 (de) | Verfahren zum unterteilen einer figur in bereiche in einem graphischen anzeigesystem. | |
DE3854039T2 (de) | Bildverarbeitungssystem. | |
DE3786225T2 (de) | Bildbehandlungsvorrichtung. | |
DE19528760A1 (de) | Bildverarbeitende Schaltung eines hohen Integrationsgrads |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8364 | No opposition during term of opposition |