DE3845004C2 - High speed parallel image processing appts. - Google Patents

High speed parallel image processing appts.

Info

Publication number
DE3845004C2
DE3845004C2 DE3845004A DE3845004A DE3845004C2 DE 3845004 C2 DE3845004 C2 DE 3845004C2 DE 3845004 A DE3845004 A DE 3845004A DE 3845004 A DE3845004 A DE 3845004A DE 3845004 C2 DE3845004 C2 DE 3845004C2
Authority
DE
Germany
Prior art keywords
image
elements
memory
processor
data
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 - Fee Related
Application number
DE3845004A
Other languages
German (de)
Inventor
Yoshinobu Mita
Miyuki Enokida
Yoshihiro Ishida
Naoto Kawamura
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Priority claimed from JP62033182A external-priority patent/JPS63201784A/en
Priority claimed from JP62033181A external-priority patent/JPS63201783A/en
Priority claimed from JP62033173A external-priority patent/JP2647376B2/en
Priority claimed from JP62033174A external-priority patent/JP2647377B2/en
Priority claimed from JP62033172A external-priority patent/JPS63201757A/en
Priority claimed from JP62033171A external-priority patent/JP2647375B2/en
Priority claimed from JP62033179A external-priority patent/JP2647380B2/en
Priority claimed from JP62033176A external-priority patent/JP2647379B2/en
Priority claimed from JP62033177A external-priority patent/JPS63201779A/en
Priority claimed from JP62033180A external-priority patent/JPS63201782A/en
Priority claimed from JP62033175A external-priority patent/JP2647378B2/en
Priority claimed from JP62033178A external-priority patent/JP2728663B2/en
Priority claimed from DE3844921A external-priority patent/DE3844921C2/en
Application filed by Canon Inc filed Critical Canon Inc
Publication of DE3845004C2 publication Critical patent/DE3845004C2/en
Application granted granted Critical
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/76Architectures of general purpose stored program computers
    • G06F15/80Architectures of general purpose stored program computers comprising an array of processing units with common control, e.g. single instruction multiple data processors
    • G06F15/8007Architectures of general purpose stored program computers comprising an array of processing units with common control, e.g. single instruction multiple data processors single instruction multiple data [SIMD] multiprocessors
    • G06F15/8023Two dimensional arrays, e.g. mesh, torus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/20Processor architectures; Processor configuration, e.g. pipelining

Abstract

The image memory contains independently addressable storage elements. Image element data of an image divided into regions have associated addresses corresp. to the regions. A processor unit consisting of processor elements corresp. to the storage elements simultaneously processes the stored data for a number of image elements. Each processor element has a density convertor which converts the density of the image elements enabling the processor unit to perform density conversion of the image. It also contains a colour distinguishing device and a colour converter. Image element data are converted to a defined colour when the distinguishing device detects a preselected colour.

Description

Die Erfindung bezieht sich auf ein Bildverarbeitungsgerät, bei dem mit einer Vielzahl von Prozessoren gleichzeitig eine Bildverarbeitung durchgeführt wird.The invention relates to an image processing device, where with a large number of processors at the same time Image processing is performed.

Infolgedessen ist es erforderlich, eine Parallelverar­ beitung unter Benutzung einer endlich kleinen Anzahl von Prozessoren auszuführen. In der US 4 786 820 ist ein Verfahren für eine derartige Parallelverarbeitung vorge­ schlagen, das die Unterteilung der Bilddaten in eine Vielzahl von Blöcken aus jeweils mehreren Bilddaten­ posten und das Verarbeiten der Bilddaten in einen jeden Block durch jeweils eine von einer Vielzahl von Zen­ traleinheiten vorsieht. Die Anordnung ist derart getrof­ fen, daß jede Zentraleinheit die Bilddaten des entspre­ chenden Blocks sowie die Bilddaten der benachbarten Blöcke aufnimmt und daß die Zentraleinheit die Bilddaten des entsprechenden Blocks verarbeitet.As a result, parallel processing is required processing using a finite number of Processors. In US 4,786,820 there is one Methods for such parallel processing are provided suggest that the division of the image data into a Large number of blocks from several image data each post and processing the image data into each Block through one of a variety of zen tral units. The arrangement is so that each central unit corresponds to the image data of the blocks and the image data of the neighboring ones Blocks and that the central processing unit the image data of the corresponding block processed.

Das vorgeschlagene System läßt jedoch noch viel Spiel­ raum zur Verbesserung hinsichtlich der Leistungsfähig­ keit und des Aufbaus offen.However, the proposed system leaves a lot of play room for improvement in terms of performance construction and open.

Die Druckschrift J. L. Potter: "Image Processing an the Massively Parallel Processor", Computer, Januar 1983, S. 62-­ 67, befasst sich mit dem Problem, das bei der Berechnung von Werten an den Rändern eines Prozessorarrays entsteht. Dieses Problem besteht sowohl bei seriellen als auch bei parallelen Computern und ist eine Funktion der Speichergröße gegenüber der zu verarbeitenden Gesamtdatenmenge. Wenn mehr Daten zu speichern sind, als der Computerspeicher fassen kann, wird gemäß der Druckschrift dieses Problem durch Überlappen der Daten auf dem nächsten Puffer gelöst, so dass alle Werte berechnet werden können. Dabei ermöglicht die wahlfreie Zugriffsmöglichkeit des Stufenspeichers dem Programmierer die Auswahl eines beliebigen Überlappungsausmaßes. Die Druckschrift beschreibt allerdings nicht, wie eine Vielzahl von Prozessorelementen auf Bildelementdaten in jedem unterteilten Bereich zweidimensional überlappend zugreift, um in Frage kommende Bildelemente in einem Grenzabschnitt zu verarbeiten. Dies ist auch den Druckschriften A. Rosenfeld: "Parallel Image Processing Using Cellular Arrays", Computer, Januar 1983, S. 14-20, und T. Kushner, A. Y. Wu, A. Rosenfeld: "Image Processing on ZMOB", IEEE Trans. on Computers, Band C- 31, Nr. 10, Oktober 1982, S. 943-951, nicht zu entnehmen.J. L. Potter: "Image Processing an the Massively Parallel Processor ", Computer, January 1983, pp. 62- 67, addresses the problem that arises when calculating Values at the edges of a processor array arise. This There is a problem with both serial and parallel Computers and is a function of memory size versus the total amount of data to be processed. If more data too save than the computer memory can hold according to the document this problem by overlapping the Data on the next buffer resolved so that all values can be calculated. The optional Accessibility of the level memory to the programmer Selection of any degree of overlap. The However, publication does not describe how a variety from processor elements to pixel data in each divided area accesses two-dimensionally overlapping to picture elements in question in a border section to process. This is also the A. Rosenfeld publications: "Parallel Image Processing Using Cellular Arrays", Computer, January 1983, pp. 14-20, and T. Kushner, A. Y. Wu, A. Rosenfeld: "Image Processing on ZMOB", IEEE Trans. On Computers, Volume C- 31, No. 10, October 1982, pp. 943-951.

Der Erfindung liegt die Aufgabe zugrunde, eine durch eine Vielzahl von Prozessoreinrichtungen durchgeführte Bildverarbeitung zu verbessern.The invention has for its object one by one Variety of processor devices performed To improve image processing.

Diese Aufgabe wird erfindungsgemäß durch das Bildverarbeitungsgerät gemäß Patentanspruch 1 gelöst. This object is achieved by the Image processing device according to claim 1 solved.  

Vorteilhafte Weiterbildungen sind in den Unteransprüchen angegeben.Advantageous further developments are in the subclaims specified.

Die Erfindung wird nachstehend anhand von Ausführungs­ beispielen unter Bezugnahme auf die Zeichnung näher er­ läutert, in deren Figuren durchgehend gleiche Bezugszei­ chen die gleichen oder gleichartige Teile bezeichnen.The invention is based on execution examples with reference to the drawing he refines, in their figures the same reference numeral Chen denote the same or similar parts.

Fig. 1 ist eine Blockdarstellung, die eine Bildverarbei­ tungseinrichtung gemäß einem Ausführungsbeispiel zeigt. Fig. 1 is a block diagram showing a Bildverarbei processing device according to an embodiment.

Fig. 2 ist eine Darstellung, die den Zusammenhang zwi­ schen einem Einzelbild und Adressen von Speicherelemen­ ten veranschaulicht. FIG. 2 is a diagram illustrating the relationship between a frame and addresses of memory elements.

Fig. 3 ist eine Darstellung, die einen Speicher mit 4 × 4 Speicherelementen als Ganzen zeigt. Fig. 3 is a diagram showing a memory with 4 × 4 memory elements as a whole.

Fig. 4 zeigt einen Speicher mit zugeordneten Adressenge­ neratoren. Fig. 4 shows a memory with assigned address generators.

Fig. 5 zeigt einen Teil eines Bildes. Fig. 5 shows a part of an image.

Fig. 6 zeigt die Zuordnung eines Speichers für einen Teil eines Bildes. Fig. 6 shows the assignment of a memory for a part of an image.

Fig. 7 ist ein Blockschaltbild einer Speicheradressen- Steuerschaltung. Fig. 7 is a block diagram of a memory address control circuit.

Fig. 8 ist ein Blockschaltbild einer Bildelementda­ ten-Steuerschaltung. Fig. 8 is a block diagram of a pixel data control circuit.

Fig. 9(a) und (b) sind Blockdarstellungen, die den Aufbau der Bildverarbeitungseinrichtung gemäß anderen Ausfüh­ rungsbeispielen zeigen. Fig. 9 (a) and (b) are block diagrams showing the construction of the image processing device according to other examples approximately exporting.

Fig. 10 ist eine Darstellung eines Einzelbilds. Fig. 10 is an illustration of a frame.

Fig. 11 zeigt k × ℓ Speicherelemente. Fig. 11 shows k × ℓ memory elements.

Fig. 12 und 13 zeigen eine einzelne Speicherein­ heit. FIGS. 12 and 13 show a single spoke clean unit.

Fig. 14 und 15 sind Blockschaltbilder von Speicher­ elementabruf-Steuerschaltungen. FIGS. 14 and 15 are block diagrams of memory element fetch control circuits.

Fig. 16 zeigt ein Einzelbild. Fig. 16 shows a still image.

Fig. 17 zeigt k × ℓ Speicherelemente. Fig. 17 shows k × ℓ memory elements.

Fig. 18 ist ein Blockschaltbild einer Adressenum­ setzschaltung. Fig. 18 is a block diagram of an address conversion circuit.

Fig. 19(a) ist ein Blockschaltbild, das das Konzept der Gestaltung eines Prozessorelements veranschaulicht. Fig. 19 (a) is a block diagram illustrating the concept of designing a processor element.

Fig. 19(b) ist ein Blockschaltbild eines Prozes­ sorelements, in welchem eine logische Recheneinheit nach Fig. 19(a) durch einen Mikroprozessor gebildet ist. Fig. 19 (b) is a block diagram of a processor element in which a logic arithmetic unit of Fig. 19 (a) is formed by a microprocessor.

Fig. 20 ist eine grafische Darstellung zur Erläute­ rung einer Dichteumsetzung. Fig. 20 is a graph for Erläute tion of a density conversion.

Fig. 21 veranschaulicht einen Maskiervorgang. Fig. 21 illustrates a masking operation.

Fig. 22 ist ein Ablaufdiagramm eines Verfahrens zur Dichteumsetzung. Fig. 22 is a flow chart of a method for the density conversion.

Fig. 23 ist ein Ablaufdiagramm eines Verfahrens zur Farbumsetzung. Fig. 23 is a flowchart of a method for color conversion.

Fig. 24 ist ein Ablaufdiagramm eines Verfahrens zum Maskieren. Fig. 24 is a flow chart of a method for masking.

Fig. 25 zeigt eine Bilddatenanordnung vor einer Drehung. Fig. 25 shows an image data arrangement before rotation.

Fig. 26 zeigt einen Zustand, der sich ergibt, wenn eine Drehung in Bildelementeblock-Einheiten ausgeführt wurde. Fig. 26 shows a state that results when rotation is performed in picture element block units.

Fig. 27 zeigt einen Zustand, der sich ergibt, wenn die Drehung in Bildelementeinheiten innerhalb der Blöcke ausgeführt wurde. Fig. 27 shows a state which arises when the rotation in picture element units has been carried out within the blocks.

Fig. 28 zeigt die Anordnung von Bildelementen in Blöcken vor der Drehung und nach der Drehung in Bildelemente­ block-Einheiten. Fig. 28 shows the arrangement of picture elements in blocks before the rotation and after the rotation in picture element block units.

Fig. 29 zeigt die Anordnung der Bildelemente in den Blöcken nach der Drehung innerhalb der Bildelementeblöcke. Fig. 29 shows the arrangement of the picture elements in the blocks after the rotation within the picture element blocks.

Fig. 30 ist ein Blockschaltbild einer Schaltung für das Ausführen einer Drehung. Fig. 30 is a block diagram of a circuit for performing a rotation.

Fig. 31 zeigt eine Blockdaten-Wählschaltung. Fig. 31 shows a block data selection circuit.

Fig. 32 zeigt ein Beispiel für eine Adressenum­ setzschaltung für das Umsetzen von Adressen innerhalb von Blöcken. Fig. 32 shows an example of a Adressenum setting circuit for translating addresses within blocks.

Fig. 33 zeigt eine Schaltung zum Erzeugen von Ad­ ressen innerhalb von Blöcken vor einer Umsetzung. Fig. 33 shows a circuit for generating addresses within blocks prior to implementation.

Fig. 34 ist ein Blockschaltbild einer weiteren Schaltung für das Ausführen einer Drehung. Fig. 34 is a block diagram of another circuit for performing rotation.

Fig. 35 zeigt Bereichsunterteilungen und Abtastun­ gen in bezug auf ein Bild. Fig. 35 shows area divisions and scans with respect to an image.

Fig. 36 zeigt Teilbereiche, die nicht einer Orts­ frequenzfilterung unterzogen werden. Fig. 36 shows partial areas that are not subjected to spatial frequency filtering.

Fig. 37 ist eine Blockdarstellung einer Bildverar­ beitungseinrichtung zur Ortsfrequenzfilterung. Fig. 37 is a block diagram of Bildverar beitungseinrichtung for spatial frequency filtering.

Fig. 38(a) veranschaulicht die Vergrößerung und Abtastung von Bereichen, die durch das Unterteilen eines Einzelbilds gebildet werden. Fig. 38 (a) illustrates the enlargement and scanning of areas formed by dividing a frame.

Fig. 38(b) zeigt einen Teil eines Bereiches. Fig. 38 (b) shows a part of an area.

Fig. 39 ist eine Blockdarstellung, die eine andere Anordnung einer Bildverarbeitungseinrichtung zur Ortsfre­ quenzfilterung zeigt. Fig. 39 is a block diagram showing another arrangement of an image processing device for spatial frequency filtering.

Fig. 40 zeigt eine Datensteuerschaltung. Fig. 40 shows a data control circuit.

Fig. 41 ist eine Blockdarstellung eines Prozessor­ elements. Fig. 41 is a block diagram of a processor element.

Fig. 42 zeigt die Zusammenhänge zwischen dem Format eines Eingangs-Bildelementebereichs eines eingangsseitigen Speichers, dem Format eines Ausgangs-Bildelementebereichs eines ausgangsseitigen Speichers und dem Matrixformat einer Prozessoreinheit. Fig. 42, the relationships between the format of an input picture element region shows an input-side memory, the format of an output pixel region of an output-side memory and the matrix format of a processor unit.

Fig. 43 veranschaulicht die Datenübertragung zwi­ schen Prozessorelementen einer Prozessoreinheit. Fig. 43, the data transfer illustrated Zvi rule processor elements of a processor unit.

Fig. 44 zeigt eine Koeffizientenmatrix für eine Ortsfrequenzfilterung mittels der Prozessoreinheit. Fig. 44 shows a coefficient matrix for a spatial frequency filtering means of the processor unit.

Fig. 45 ist ein Blockschaltbild einer Schaltung zur Ortsfrequenzfilterung. Fig. 45 is a block diagram of a circuit for spatial frequency filtering.

Fig. 46 ist eine Blockdarstellung, die das Konzept für eine Vergrößerung veranschaulicht. Fig. 46 is a block diagram illustrating the concept for enlargement.

Fig. 47 ist eine Blockdarstellung eines Adressen­ generatorteils einer Prozessoreinheit. Fig. 47 is a block diagram of an address generator portion of a processor unit.

Fig. 48 ist eine Blockdarstellung, die das Konzept für den Innenaufbau der Prozessoreinheit veranschaulicht. Fig. 48 is a block diagram illustrating the concept for the internal structure of the processor unit.

Fig. 49 zeigt schematisch eine Datenwählschaltung in einem jeweiligen Prozessorelement. Fig. 49 shows schematically a data select circuit in a respective processor element.

Fig. 50 ist ein Blockschaltbild der Datenwählschal­ tung. Fig. 50 is a block diagram of the data selection circuit.

Fig. 51 ist ein Blockschaltbild, das Einzelheiten eines Hauptabtastungswählers und eines Unterabtastungswählers nach Fig. 50 zeigt. Fig. 51 is a block diagram showing details of a main scan selector and a sub- scan selector shown in Fig. 50.

Fig. 52 ist eine schematische Darstellung einer Schaltung zur zweidimensionalen linearen Interpolation. Fig. 52 is a schematic diagram of a circuit for two-dimensional linear interpolation.

Fig. 53 veranschaulicht die Zusammenhänge zwischen Formaten von Eingabe/Ausgabe-Bildelementebereichen und dem Matrixformat einer Prozessoreinheit. Fig. 53 illustrates the relationship between formats of input / output picture element areas and the matrix format of a processor unit.

Fig. 54 zeigt die Zusammenhänge zwischen einem eingangsseitigen Bildspeicher, einer Prozessoreinheit und einem ausgangsseitigen Bildspeicher bei einem Ausführungsbei­ spiel. Fig. 54 shows the relationship between an input-side frame memory, a processor unit and an output-side frame memory play at a Ausführungsbei.

Fig. 55 zeigt das Format von bei dem Ausführungs­ beispiel verwendeten Bildreduktionsdaten. Fig. 55 shows the format of image reduction data used in the embodiment.

Fig. 56 ist eine Darstellung der Funktion eines jeden Prozessorelements bei dem Ausführungsbeispiel. Fig. 56 is a representation of the function of each processor element in the embodiment.

Fig. 57 zeigt die Zusammenhänge zwischen einem eingangsseitigen Bildspeicher, einer Prozessoreinheit und einem ausgangsseitigen Bildspeicher bei einem weiteren Aus­ führungsbeispiel der Bildverarbeitungseinrichtung. Fig. 57 shows the relationship between an input-side frame memory, a processor unit and an output-side image memory in another example guidance from the image processing device.

Fig. 58 und 59 veranschaulichen schematisch die Funktion eines jeden Prozessorelements bei dem Ausführungs­ beispiel. Fig. 58 and 59 the function illustrate schematically example of each processor element in the execution.

Fig. 60 zeigt die Zusammenhänge zwischen einem Eingangsbildspeicher, einer Prozessoreinheit und einem Aus­ gangsbildspeicher bei dem Ausführen einer Vergrößerung mit der Bildverarbeitungseinrichtung gemäß einem Ausführungsbei­ spiel. Fig. 60, the relationship between an input image memory, a processor unit and an off shows input image memory while executing a magnification to the image processing device according to a Ausführungsbei game.

Fig. 61 zeigt die Zusammenhänge zwischen Bildspei­ chern und Prozessoreinheiten bei einem Ausführungsbeispiel der Bildverarbeitungseinrichtung. Fig. 61 shows the relationships between Bildspei manuals and processor units in one embodiment, the image processing device.

Fig. 62 zeigt Einzelheiten einer Prozessoreinheit bei dem Ausführungsbeispiel. Fig. 62 shows details of a processor unit in the embodiment.

Fig. 63 ist ein Ablaufdiagramm einer Farbsteuerung bei einem Ausführungsbeispiel der Bildverarbeitungseinrichtung. Fig. 63 is a flowchart of a color control in an embodiment of the image processing device.

Fig. 64 veranschaulicht einen Datenaustausch bei einer Farbkorrektur. Fig. 64 illustrates a data exchange in a color correction.

Fig. 65 veranschaulicht eine Bildversetzung. Fig. 65 illustrates an image offset.

Fig. 66 zeigt den Aufbau einer Prozessoreinheit 312 nach Fig. 46 sowie einen mittels der Prozessoreinheit 312 in einem Eingabe-Bildspeicher 316 abgerufenen Bereich. FIG. 66 shows the structure of a processor unit 312 according to FIG. 46 and an area called up in an input image memory 316 by means of the processor unit 312 .

Fig. 67 veranschaulicht die Zusammenhänge zwischen jeweiligen Prozessorelementen PE nach Fig. 65 und einem Aus­ gabe-Bildspeicher 317. FIG. 67 illustrates the relationships between respective processor elements PE according to FIG. 65 and an output image memory 317 .

Fig. 68 zeigt den Aufbau jeweiliger Digital-Inte­ gratoren nach Fig. 66. Fig. 68 shows the structure of respective digital integrators according to Fig. 66.

Anhand der Fig. 1 wird nun ein erstes Ausführungsbeispiel der Bildverarbeitungseinrichtung beschrieben.A first embodiment of the image processing device will now be described with reference to FIG. 1.

Die Bildverarbeitungseinrichtung gemäß diesem Ausführungsbei­ spiel hat einen Bildspeicher 1 für das Speichern des Bilds einer Seite, eine Prozessoreinheit 2 und einen peripheren Teil 3 wie eine Eingabe/Ausgabe-Einheit. Die Fig. 1 veran­ schaulicht nur die Anordnung dieser Grundkomponenten und zeigt, daß die Prozessoreinheit 2 mit dem Bildspeicher 1 verbunden ist. Nach Fig. 1 werden n × m Bilddatenposten an irgendwelchen Stellen in dem Bildspeicher 1 zu der Prozessor­ einheit 2 übertragen, die aus einer n × m-Matrix von Prozes­ sorelementen 2a gebildet ist, in denen die Daten mit hoher Geschwindigkeit verarbeitet werden, wonach sie in den Bild­ speicher 1 zurückgeleitet werden. Die n × m Prozessorelemente 2a in der Matrix führen die Verarbeitung gleichzeitig aus. The image processing device according to this embodiment has an image memory 1 for storing the image of a page, a processor unit 2 and a peripheral part 3 such as an input / output unit. Veran Fig. 1, only the arrangement illustrates these basic components and shows that the processor unit 2 is connected to the image memory 1. According to Fig. 1 n x m image data item at any points in the image memory 1 are sent to the processor unit 2 transmitted, the sorelementen of an n × m matrix of Prozes 2 is formed a, in which the data are processed at high speed, according to which they are returned to the image memory 1 . The n × m processor elements 2 a in the matrix execute the processing simultaneously.

Damit ist die Gesamtausstattung eine solche für die sog. Parallelverarbeitung. Die Fig. 9(a) und (b) zeigen andere mögliche Anordnungen. Nach Fig. 9(a) werden Bilddaten aus einem eingangsseitigen Bildspeicher 91 einer Prozessoreinheit 92 zugeführt, die eine Vielzahl von Prozessorelementen ent­ hält, in denen eine Vielzahl von Bildelementen der vorge­ schriebenen parallelen Verarbeitung unterzogen werden, wonach die sich ergebenden Bilddaten in einen ausgangsseitigen Bild­ speicher 93 eingespeichert werden. Dies erfolgt unter Steue­ rung durch eine Steuerschaltung 94, die mit den Bildspeichern 91 und 93 und mit der Prozessoreinheit 92 verbunden ist. Nach Fig. 9(b) ist der Bildspeicher 91 oder 93 mit der Prozessor­ einheit 92, einer Eingabeeinheit 95 und einer Ausgabeeinheit 96 über eine gemeinsame Sammelleitung verbunden.The overall equipment is thus one for so-called parallel processing. The Fig. 9 (a) and (b) show other possible arrangements. According to Fig. 9 (a), image data are supplied from an input image memory 91 to a processor unit 92 which contains a plurality of processor elements in which a plurality of image elements are subjected to the prescribed parallel processing, after which the resulting image data is converted into an output image memory 93 can be stored. This is done under control by a control circuit 94 which is connected to the image memories 91 and 93 and to the processor unit 92 . According to FIG. 9 (b), the image memory 91 or 93 is integral with the processor 92, an input unit 95 and an output unit 96 via a common manifold connected.

Es wird nun der Bildspeicher 1 ausführlich beschrieben.The image memory 1 will now be described in detail.

Zur Vereinfachung sei angenommen, daß ein Bild das Format 1024 × 1024 Bildelemente hat und daß der Bildspeicher Daten in Form von acht Bit je Bildelement speichert. Eine Änderung des Bildformats wird lediglich durch Ändern der Architektur des Ausführungsbeispiels bewerkstelligt. Ferner sei angenommen, daß die Prozessoreinheit 2 aus 4 × 4, also insgesamt 16 Prozes­ sorelementen 2a gebildet ist.For the sake of simplicity it is assumed that an image has the format 1024 × 1024 picture elements and that the image memory stores data in the form of eight bits per picture element. A change in the image format is accomplished only by changing the architecture of the exemplary embodiment. Furthermore, it is assumed that the processor unit 2 is formed from 4 × 4, that is to say a total of 16 processor elements 2 a.

Die Fig. 2 veranschaulicht die Gestaltung des Bildspeichers 1. Nimmt man an, daß gemäß der Darstellung ein Bild aus 1024 × 1024 Bildelementen zusammengesetzt ist und das Bild in Einheiten aus 4 × 4 Bildelementen unterteilt wird, so wird das Bild auf 256 × 256 Blöcke, also insgesamt 64k (= 65536) Blöcke aufgeteilt. Dies kann gemäß Fig. 3 dargestellt werden, in welcher 64k Einheiten aus 4 × 4 Bildelementen angenommen sind, von denen jedes die Länge von 8 Bit hat. Hinsichtlich der Adressenbereiche des Speichers erfolgt daher die Adressierung in drei Dimensionen mit 4 × 4 × 64k. Falls einem einzelnen Speicherbaustein 64k Bildelemente für eine Bildelementestelle aus der 4 × 4-Matrix der Bildelemente gemäß der Darstellung in Fig. 3 zugeordnet sind, ist ein Speicherbaustein erforder­ lich, in dem für die 64k Adressenstellen eine jede Adresse eine Tiefe von 8 Bit hat. Dies würde einen Speicherbaustein mit einer Kapazität von 512 kBit (= 64 kByte) erforderlich machen. Bei dem beschriebenen Ausführungsbeispiel werden zwei dynamische Schreib/Lesespeicher (DRAM) für jeweils 256 kBit in Kombination verwendet. D. h., es werden zwei dynamische 256 kBit-Speicher für jeweils 64k × 4 Bit verwendet und in der Form 64k × 8 Bit eingesetzt. Diese beiden Speicherbausteine werden als ein Speicherelement 1a bezeichnet. Nachstehend wird eine Prozessoreinheit als "PU", ein Prozessorelement als "PE" und ein Speicherelement als "ME" bezeichnet. Fig. 2 illustrates the configuration of the image memory 1. Assuming that, according to the illustration, an image is composed of 1024 × 1024 picture elements and the picture is divided into units of 4 × 4 picture elements, the picture is divided into 256 × 256 blocks, that is a total of 64k (= 65536) blocks. This can be illustrated in FIG. 3, in which 64k units of 4 × 4 picture elements are assumed, each of which has the length of 8 bits. With regard to the address areas of the memory, addressing is therefore carried out in three dimensions with 4 × 4 × 64k. If 64k picture elements for a picture element location from the 4 × 4 matrix of the picture elements are assigned to a single memory module, as shown in FIG. 3, a memory module is required in which each address has a depth of 8 bits for the 64k address locations. This would require a memory module with a capacity of 512 kBit (= 64 kByte). In the exemplary embodiment described, two dynamic read / write memories (DRAM), each for 256 kbit, are used in combination. That is, two dynamic 256 kBit memories are used for each 64k × 4 bit and used in the form 64k × 8 bit. These two memory modules are referred to as a memory element 1 a. In the following, a processor unit is referred to as "PU", a processor element as "PE" and a memory element as "ME".

Der Bildspeicher 1 ist aus 16 Bildelementen 1a entsprechend einer Matrix von 4 × 4 Bildelementen zusammengesetzt. Die Fig. 4 zeigt die Anordnung dieser 4 × 4 Speicherelemente 1a. Für jedes Speicherelement 1a wird dessen Zeilenadresse und dessen Spaltenadresse bestimmt, so daß Bilddaten für die 64k Adres­ senstellen für ein einzelnes Bildelement aus den 4 × 4 Bildele­ menten in ein jedes Speicherelement eingegeben bzw. aus diesem ausgegeben werden können. An jedes der 4 × 4 Speicher­ elemente 1a werden die Adressen von einem Zeilenadressengene­ rator 4 und einem Spaltenadressengenerator 5 angelegt. Es ist anzumerken, daß ein einziger Adressengenerator ausreichend ist, wenn die Speicherelemente 1a dynamische Speicher sind und die Zeilen- und Spaltenadressen im Zeitmultiplex angelegt werden. Wenn dies der Fall ist, ist eine Umschaltsteuerung für die Zeitmultiplex-Verschachtelung der Zeilen- und Spal­ tenadressen erforderlich. Die Zeilen- und Spaltenadressen entsprechen jeweils A bzw. B für einen jeweils mit (A1, B1) bezeichneten Block in einem jeweiligen Einzelbild gemäß Fig. 2. The image memory 1 is composed of 16 picture elements 1 a corresponding to a matrix of 4 × 4 picture elements. Fig. 4 shows the arrangement of these 4 × 4 memory elements 1 a. For each memory element 1 a, its row address and its column address are determined, so that image data for the 64k address locations for a single image element from the 4 × 4 image elements can be entered into and output from each memory element. At each of the 4 × 4 memory elements 1 a, the addresses of a row address generator 4 and a column address generator 5 are created. It should be noted that a single address generator is sufficient if the memory elements 1 a are dynamic memories and the row and column addresses are created in time division multiplex. If this is the case, a switch control for the time-division interleaving of the row and column addresses is required. The row and column addresses each correspond to A and B for a block designated by (A1, B1) in a respective single image according to FIG. 2.

Durch das Anlegen der Adressen aus den jeweiligen Adressenge­ neratoren 4 und 5 kann in die Speicherelemente 1a für die 4 × 4 Bildelemente eingeschrieben bzw. aus diesen ausgelesen wer­ den. D. h., durch eine einzige Adressenbestimmung können 4 × 4 Speicherelemente gleichzeitig betrieben werden. Es sei ange­ nommen, daß zu diesem Zweck Datenleitungen für acht Bit direkt von jedem der Speicherelemente 1a wegführen.By applying the addresses from the respective address generators 4 and 5 can be written into the memory elements 1 a for the 4 × 4 picture elements or read from them. That is, 4 × 4 memory elements can be operated simultaneously by a single address determination. It is assumed that for this purpose data lines for eight bits lead away directly from each of the memory elements 1 a.

Falls Daten mit der Zeilenadresse A (0 ≦ A ≦ 255) und der Spaltenadresse B (0 ≦ B ≦ 255) aus dem Bildspeicher 1 abgeru­ fen werden, werden die der Adresse (A, B) nach Fig. 2 ent­ sprechenden Bilddaten aus 4 × 4 Bildelementen ausgelesen, von denen jedes die Länge von acht Bit hat.If data with the row address A (0 ≦ A ≦ 255) and the column address B (0 ≦ B ≦ 255) are retrieved from the image memory 1, the image data corresponding to the address (A, B) according to FIG × 4 picture elements, each of which is eight bits long.

Der gleichzeitige Zugriff zu einer Vielzahl von Bildelementen wird nun in allgemeiner Form beschrieben.Simultaneous access to a large number of picture elements will now be described in general terms.

Die Fig. 10 zeigt eine Bildseite. Gemäß der Darstellung sind die Bilddaten in aneinander angrenzende Blöcke aus jeweils k × ℓ Bildelementen unterteilt. Gemäß der Darstellung in Fig. 11 sind die k × ℓ Bildelemente in einen jeden Block mit k × ℓ Speicherelementen 1a in Beziehung gesetzt bzw. diesen zuge­ ordnet. Die aus diesen k × ℓ Bildelementen gebildeten Blöcke sind von einem Rand her mit (0, 0), (0, 1), (0, 2), (0, 3), . . . numeriert und entsprechen der Speichereinheit 1 aus den k × ℓ. Speicherelementen 1a gemäß Fig. 12. In der Fig. 13 ist die Speichereinheit 1 zweidimensional dargestellt. Das Speicherformat bei dem Abruf der Speichereinheit 1 sind Einheiten im Blockformat aus k × ℓ. Bildelementen. Daher werden auch bei dem Abruf eines Blocks R aus k × ℓ Bildelementen in beliebiger Lage in der Speichereinheit 1 alle k × ℓ Speicher­ elemente 1a abgerufen. Darüberhinaus wird je Speicherelement 1a eine Adresse abgerufen. Demgemäß werden k × ℓ Bildelemente zum gleichen Zeitpunkt herausgegriffen. Fig. 10 shows an image side. According to the illustration, the image data are subdivided into adjacent blocks each consisting of k × ℓ picture elements. As shown in Fig. 11, the k × ℓ picture elements in each block with k × ℓ memory elements 1 a are related or assigned to them. The blocks formed from these k × ℓ picture elements are marked with (0, 0), (0, 1), (0, 2), (0, 3),. , , numbered and correspond to the storage unit 1 from the k × ℓ. Memory elements 1 a according to FIG. 12. In FIG. 13, the memory unit 1 is shown in two dimensions. The storage format when the storage unit 1 is called up is block format units from k × ℓ. Picture elements. Therefore, when a block R is retrieved from k × auch picture elements in any position in memory unit 1, all k × ℓ memory elements 1 a are retrieved. In addition, an address is retrieved for each memory element 1 a. Accordingly, k × ℓ picture elements are picked out at the same time.

Auf diese Weise werden Bilddaten aus k × ℓ benachbarten Bild­ elementen an beliebigen Stellen in dem Bild gleichzeitig abgerufen und ausgelesen, wonach diese Bilddaten mittels der Prozessoreinheit 2 verarbeitet werden. Die mittels der Pro­ zessoreinheit 2 verarbeiteten Bilddaten können durch Zugriff zu beliebigen Stellen der Speichereinheit 1 wieder in einen Block H aus k' × ℓ' Bildelementen der Speichereinheit 1 einge­ schrieben werden. Die nachfolgende Beschreibung beruht auf der Annahme, daß k' = k und ℓ' = ℓ gilt.In this way, image data from k × ℓ adjacent image elements at any point in the image are retrieved and read, after which this image data is processed by means of the processor unit 2 . The image data processed by the processor unit 2 can be rewritten into a block H from k '× ℓ' image elements of the memory unit 1 by accessing any locations of the memory unit 1 . The following description is based on the assumption that k '= k and ℓ' = ℓ.

Der Zugriff zu einem Speicher für nur k' × ℓ' Bildelemente wird nun ergänzend erläutert. Falls die von der Prozessoreinheit 2 ausgeführte Verarbeitung eine Raum- bzw. Ortsfrequenzfilte­ rung gemäß einem Rechenvorgang unter Verwendung eines Ziel- Bildelements und der dieses umgebenden Bildelemente ist, ist das schreibseitige Blockformat k' × ℓ' kleiner als das lesesei­ tige Blockformat k × ℓ. Im allgemeinen erfolgt daher eine Ver­ arbeitung in der Weise, daß das schreibseitige Blockformat k' × ℓ' zu 1 × 1 wird. Auch wenn die von der Prozessoreinheit 2 ausgeführte Verarbeitung nicht eine Ortsfrequenzfilterung, sondern eine Bildreduktion ist, wird das an der Schreibseite abgerufene Blockformat k' × ℓ' kleiner als das an der Leseseite abgerufene Blockformat k × ℓ.Access to a memory for only k '× ℓ' picture elements will now be explained in addition. If the processing carried out by the processor unit 2 is a spatial or spatial frequency filtering according to a calculation process using a target picture element and the picture elements surrounding it, the write-side block format k '× ℓ' is smaller than the read-side block format k × ℓ. In general, therefore, processing takes place in such a way that the write-side block format k '× ℓ' becomes 1 × 1. Even if the processing carried out by the processor unit 2 is not a spatial frequency filtering but an image reduction, the block format k '× ℓ' called up on the write side becomes smaller than the block format k × ℓ called up on the read side.

Allgemein sind hinsichtlich des schreibseitigen Blockformats k' × ℓ' die Werte k' und ℓ' die kleinsten ganzen Zahlen, die den Bedingungen k' ≧ αk und ℓ' < βℓ genügen, wobei α und β jeweils das Längsreduktionsverhältnis bzw. das Querreduk­ tionsverhältnis sind. Falls bei der Ausführung der Verarbei­ tungen gemäß den vorstehend genannten beiden Beispielen der Lesespeicher und der Schreibspeicher identisch sind bzw. die gleiche k × ℓ-Speicheranordnung verwendet wird, muß schreibsei­ tig das Einschreiben in einem Format k' × ℓ' erfolgen, das kleiner als das Format k × ℓ der Speichereinheit 1 ist. In einem solchen Fall erfolgt der Zugriff zu nicht allen k × ℓ Speicherelementen 1a. Stattdessen muß die Gestaltung derart getroffen werden, daß die nicht für den Schreibvorgang benö­ tigten Speicherelemente 1a maskiert und nicht abgerufen wer­ den. Das Maskieren der nicht für den Schreibvorgang benötig­ ten Speicherelemente und der gleichzeitige Zugriff zu nur k' × ℓ' Speicherelementen können auf einfache Weise dadurch bewerkstelligt werden, daß Freigabesignale nur an die k' × ℓ' Elemente aus den Bausteinen der k × ℓ Speicherelemente 1a und nicht an die restlichen (k × ℓ) - (k' × ℓ') Speicherelemente angelegt werden.In general, with regard to the block format k '× klein' on the writing side, the values k 'and ℓ' are the smallest integers which satisfy the conditions k '≧ αk and ℓ'<βℓ, where α and β are the longitudinal reduction ratio and the transverse reduction ratio, respectively , If in the execution of the processing according to the above two examples the read memory and the write memory are identical or the same k × ℓ memory arrangement is used, the write side must be written in a format k '× ℓ' which is smaller than is the format k × ℓ of the storage unit 1 . In such a case, not all k × ℓ memory elements 1 a are accessed. Instead, the design must be made in such a way that the memory elements 1 a not required for the write operation are masked and not accessed. The masking of the memory elements not required for the write operation and the simultaneous access to only k '× ℓ' memory elements can be accomplished in a simple manner in that release signals only to the k '× ℓ' elements from the components of the k × ℓ memory elements 1 a and not to the remaining (k × ℓ) - (k '× ℓ') storage elements.

Im Hinblick auf ein Ausführungsbeispiel, bei dem vorgeschrie­ bene Bildelemente an beliebigen Stellen abgerufen werden, werden nun ein Fall, bei dem die Speichereinheit 4 × 4-Anord­ nung hat, sowie ein Fall beschrieben, bei dem die Speicher­ einheit k × ℓ-Anordnung hat. Ferner wird auch die Baustein- Freigabesteuerung für das vorangehend genannte Maskieren beschrieben.With regard to an embodiment in which the prescribed the picture elements can be called up at any point, will now be a case where the storage unit 4 × 4 arrangement has described, as well as a case in which the memory unit has k × ℓ arrangement. Furthermore, the building block Release control for the above masking described.

Zunächst wird das Ausführungsbeispiel für den Fall beschrie­ ben, daß das Blockformat k × ℓ das Format 4 × 4 ist.The exemplary embodiment for the case is first described ben that the block format k × ℓ is the format 4 × 4.

In der Fig. 5 ist ein Teil der Fig. 2 vergrößert dargestellt. Die Verarbeitung wird für einen Fall beschrieben, daß Bildda­ ten aus irgendeinem 4 × 4-Block S in dem Bildspeicher 1 ausge­ lesen werden, die Daten mittels der Prozessoreinheit 2 verar­ beitet werden und die Ergebnisse in irgendeinen beliebigen 4 × 4-Block T übertragen werden. (Gemäß Fig. 5 kann der Block S mehrere in Fig. 2 gezeigte Blöcke überlappen.) Die in Fig. 5 und 6 gezeigten 4 × 4-Zellen grenzen 4 × 4 bzw. 16 Speicherele­ mente 1a ab. Es sei angenommen, daß diese 16 Speicherelemente 1a mit Aa, Ab, . . ., Ba, Bb, . . ., Ca, . . . Dc, Dd bezeichnet sind. Falls zuerst der 4 × 4-Block S ausgelesen wird, werden (N, M) als Zeilen- und Spaltenadresse an das Speicherelement Dd aus den 16 Speicherelementen 1a angelegt. Ferner werden (N, M + 1) an die Speicherelemente Da, Db und Dc, (N + 1, M) an die Speicherelemente Ad, Bd und Cd sowie (N + 1, M + 1) an die restlichen Speicherelemente angelegt. Diese Adressen werden von dem Zeilenadressengenerator 4 und dem Spaltenadressenge­ nerator 5 erzeugt. Es ist offensichtlich, daß dann, wenn der Ort eines Eckpunktes u des 4 × 4-Blocks S bestimmt wurde, die Ortsadressen in horizontaler und vertikaler Richtung durch vier dividiert werden und die Zeilen- und Spaltenadressen für die Speicherelemente Aa bis Dd eindeutig durch Reste n und m bestimmt sind. Für den Eckpunkt u sei die Ortsadresse u (Y, X) angenommen. Es ergibt sich dann folgendes:
In FIG. 5 is a part of FIG. Magnified. 2 The processing will be described for a case that image data is read out from any 4x4 block S in the image memory 1 , the data is processed by the processor unit 2 , and the results are transferred to any 4x4 block T. , (According to FIG. 5, the block S can overlap several blocks shown in FIG. 2.) The 4 × 4 cells shown in FIGS. 5 and 6 delimit 4 × 4 or 16 storage elements 1 a. It is assumed that these 16 memory elements 1 a with Aa, Ab,. , ., Ba, Bb,. , ., Ca,. , , Dc, Dd are designated. If the 4 × 4 block S is read out first, (N, M) are applied as row and column address to the memory element Dd from the 16 memory elements 1 a. Furthermore, (N, M + 1) are applied to the memory elements Da, Db and Dc, (N + 1, M) to the memory elements Ad, Bd and Cd and (N + 1, M + 1) to the remaining memory elements. These addresses are generated by the row address generator 4 and the column address generator 5 . It is obvious that when the location of a corner point u of the 4 × 4 block S has been determined, the location addresses in the horizontal and vertical directions are divided by four and the row and column addresses for the storage elements Aa to Dd are clearly divided by residues n and m are determined. The local address u (Y, X) is assumed for the corner point u. The following then results:

Y = 4N + n (n = 0, 1, 2, 3)
Y = 4N + n (n = 0, 1, 2, 3)

X = 4M + m (m = 0, 1, 2, 3)X = 4M + m (m = 0, 1, 2, 3)

Es ist beispielsweise eine Anordnung denkbar, bei der die Informationen M und N und die Informationen m und n in Nach­ schlagetabellen eingegeben werden und die Adressen mittels der Adressengeneratoren 4 und 5 an die Speicherelemente Aa bis Dd ausgegeben werden. Aus der vorstehenden Beschreibung ist ersichtlich, daß der ausgegebene Wert zu diesem Zeitpunkt irgendeiner der Werte M, N, N + 1 oder M + 1 ist. Unter Nutzung dieser Eigenschaft ist es ausreichend, in eine Nachschlageta­ belle n oder m einzugeben, in Abhängigkeit von dem eingegebe­ nen Wert "0" oder "1" auszugeben und eine Steuerung zu der Ermittlung auszuführen, ob die an die Speicherelemente Aa bis Dd anzulegende Adresse N oder M aufzustufen ist oder nicht, wie es in Fig. 7 dargestellt ist. Hierbei werden die Werte n und N an dem Zeilenadressengenerator 4 und die Werte m und M an dem Spaltenadressengenerator 5 eingesetzt.For example, an arrangement is conceivable in which the information M and N and the information m and n are entered in look-up tables and the addresses are output to the memory elements Aa to Dd by means of the address generators 4 and 5 . From the above description, it can be seen that the output value at this time is any of the values M, N, N + 1 or M + 1. Using this property, it is sufficient to enter n or m in a lookup table, to output "0" or "1" depending on the entered value, and to perform control to determine whether the address to be applied to the memory elements Aa to Dd N or M is to be ranked or not, as shown in FIG. 7. Here, the values n and N are used on the row address generator 4 and the values m and M on the column address generator 5 .

Auf diese Weise werden über eine Nachschlagetabelle 71 und Addierer 72a bis 72p gemäß Fig. 7 Adressen aus den Adressen- Generatoren 4 und 5 an die 4 × 4-Matrix der 16 Speicherelemente 1a angelegt, so daß gleichzeitig 16 Datenposten erhalten werden können. In this way, addresses from the address generators 4 and 5 are applied to the 4 × 4 matrix of the 16 memory elements 1 a via a look-up table 71 and adders 72 a to 72 p according to FIG. 7, so that 16 data items can be obtained simultaneously ,

Diese 16 Datenposten werden nach irgendeiner Verarbeitung in der Prozessoreinheit 2 oder ohne Verarbeitung in den in Fig. 5 gezeigten Block T für 4 × 4 Bildelemente übertragen. Die aus den 16 Speicherelementen Aa bis Dd ausgelesenen Bilddaten müssen jedoch nicht unbedingt zu den gleichen Speicherelemen­ ten Aa bis Dd übertragen werden. Falls der 4 × 4-Bildelemente- Speicherblock S nach Fig. 5 in den 4 × 4-Bildelemente-Speicher­ block T übertragen wird, müssen die aus dem Speicherelement Aa des 4 × 4-Bildelemente-Speicherblocks S ausgelesenen Daten zu dem Speicherelement Dc übertragen werden.These 16 data items are transferred after any processing in the processor unit 2 or without processing in the block T for 4 × 4 picture elements shown in FIG. 5. However, the image data read from the 16 memory elements Aa to Dd do not necessarily have to be transmitted to the same memory elements Aa to Dd. If the 4 x 4 pel memory block S of Fig. Is transferred in the 4 × 4 picture elements memory block T 5, which from the memory element Aa of the 4 × 4 picture elements memory block S read out data must be transferred to storage element Dc become.

Es wird nun beschrieben, in welche Speicherelemente der Spei­ cherelemente Aa bis Dd die aus den Speicherelementen Aa bis Dd ausgelesenen 16 Datenposten einzuschreiben sind, wenn Anfangs- bzw. Eckpunkte u und v der 4 × 4-Speicherblöcke S bzw. T beliebige Ortsadressen (Y, X) und (Y', X') haben.It will now be described in which memory elements the memory cher elements Aa to Dd from the storage elements Aa to The 16 data items read are to be registered if Starting and corner points u and v of the 4 × 4 memory blocks S and T have any location addresses (Y, X) and (Y ', X').

Wenn Y, X, Y' und X' folgendermaßen ausgedrückt sind:
If Y, X, Y 'and X' are expressed as follows:

Y = 4N + n (n = 0, 1, 2, 3)
Y = 4N + n (n = 0, 1, 2, 3)

X = 4M + m (m = 0, 1, 2, 3)
X = 4M + m (m = 0, 1, 2, 3)

Y' = 4P + p (p = 0, 1, 2, 3)
Y '= 4P + p (p = 0, 1, 2, 3)

X' = 4Q + q (q = 0, 1, 2, 3)
X '= 4Q + q (q = 0, 1, 2, 3)

ergeben sich x und y aus:
x and y result from:

p - n = 4y' + y (y' = -1, 0 y = 0, 1, 2, 3) (1)
p - n = 4y '+ y (y' = -1, 0 y = 0, 1, 2, 3) (1)

q - m = 4x' + x (x' = -1, 0 x = 0, 1, 2, 3) (2)q - m = 4x '+ x (x' = -1, 0 x = 0, 1, 2, 3) (2)

Zuerst wird die Zeilenreihe A aus den Speicherelementen Aa, Ab, Ac und Ad unter zyklischer Vertauschung x-malig nach rechts versetzt. Dadurch ergibt sich eine Zeilenreihe A'. Auf gleichartige Weise werden Zeilenreihen B, C und D unter zyklischer Vertauschung nach rechts versetzt, wodurch sich mit B', C' und D' bezeichnete Zeilenreihen ergeben.First, row row A is made up of storage elements Aa, Ab, Ac and Ad with cyclical swapping x times after offset to the right. This results in a row A '. On in the same way row rows B, C and D are below  cyclic exchange shifted to the right, causing rows of lines labeled B ', C' and D 'result.

Als nächstes werden die Spaltenreihen (ABCD)' aus den Zeilen­ reihen A', B', C' und D' unter zyklischer Vertauschung y- malig nach unten versetzt.Next, the column rows (ABCD) 'from the rows rows A ', B', C 'and D' with cyclic reversal y- sometimes shifted down.

Aus der Fig. 5 ist ersichtlich, daß n, m, p und q jeweils die Werte 3, 3, 2 bzw. 1 haben. Daher ergibt sich aus den Glei­ chungen (1) und (2): y' = -1, y = 3, x' = -1, x = 2. Infolge­ dessen wird gemäß der vorstehenden Beschreibung folgende Matrix erreicht:
Wenn eine zweimalige zyklische Vertauschung nach rechts vor­ genommen ist, ergibt sich:
From Fig. 5, it is seen that n, m, p and q in each case the values of 3, 3, 2 and 1 have. Therefore, the following results from equations (1) and (2): y '= -1, y = 3, x' = -1, x = 2. As a result, the following matrix is achieved as described above:
If a double cyclic swap is made to the right, the result is:

A' = (Ac, Ad, Aa, Ab)
B' = (Bc, Bd, Ba, Bb)
C' = (Cc, Cd, Ca, Cb)
D' = (Dc, Dd, Da, Db)
A '= (Ac, Ad, Aa, Ab)
B '= (Bc, Bd, Ba, Bb)
C '= (Cc, Cd, Ca, Cb)
D '= (Dc, Dd, Da, Db)

Wenn dann eine dreimalige zyklische Vertauschung nach unten vorgenommen ist, ergibt sich die Matrix:
If a cyclical downward swap is then carried out three times, the matrix results:

(Bc, Bd, Ba, Bb)
(Cc, Cd, Ca, Cb)
(Dc, Dd, Da, Db)
(Ac, Ad, Aa, Ab) (3)
(Bc, Bd, Ba, Bb)
(Cc, Cd, Ca, Cb)
(Dc, Dd, Da, Db)
(Ac, Ad, Aa, Ab) (3)

Es wird nun die Matrix (3) mit folgender Grund- bzw. Ur­ sprungsmatrix (4) verglichen:
The matrix ( 3 ) is now compared with the following basic or original matrix ( 4 ):

Aa, Ab, Ac, Ad
Ba, Bb, Bc, Bd
Ca, Cb, Cc, Cd
Da, Db, Dc, Dd (4)
Aa, Ab, Ac, Ad
Ba, Bb, Bc, Bd
Ca, Cb, Cc, Cd
Da, Db, Dc, Dd (4)

Die Ursprungsmatrix (4) wird einfach durch zweidimensionales Anordnen der aus den Speicherelementen Aa bis Dd ausgelesenen Daten in der Aufeinanderfolge von links nach rechts und von oben nach unten gebildet. Die Matrix (3) entspricht einer Matrix, die durch Anordnen der in die Speicherelemente Aa bis Dd einzuschreibenden Daten auf zweidimensionale Weise in der Aufeinanderfolge erzielt wird. Im einzelnen zeigt die Matrix (3) als Beispiel, daß die aus dem Speicherelement Aa ausgele­ senen Daten in die vierte Zeile und dritte Spalte einge­ schrieben werden. Die Ursprungsmatrix (4) zeigt, daß die vierte Zeile, dritte Spalte Dc ist. Infolgedessen ist es ersichtlich, daß die aus dem Speicherelement Aa ausgelesenen Daten in das Speicherelement Dc einzuschreiben sind.The origin matrix ( 4 ) is simply formed by two-dimensionally arranging the data read from the memory elements Aa to Dd in the sequence from left to right and from top to bottom. The matrix ( 3 ) corresponds to a matrix which is achieved by arranging the data to be written into the memory elements Aa to Dd in a two-dimensional manner in the sequence. In detail, the matrix ( 3 ) shows as an example that the data read from the memory element Aa are written into the fourth row and third column. The origin matrix ( 4 ) shows that the fourth row, third column is Dc. As a result, it can be seen that the data read out from the storage element Aa is to be written into the storage element Dc.

Da es leicht ersichtlich ist, daß die aus dem Speicherelement Aa in Fig. 5 ausgelesenen Daten in den Ort Dc eingeschrieben werden sollen, ist die Versetzung von Aa zu dem Ort Dc äqui­ valent einem Übergang von der Ortsadresse u zu der Ortsadres­ se v. Da ferner die Speicherelemente 1a die 4 × 4-Anordnung haben, können die durch das Dividieren der Ortsadressen in der horizontalen und vertikalen Richtung durch "4" erhaltenen Reste als Versetzungen x und y der Speicherelemente angesehen werden. Falls beispielsweise die Versetzungen der Ortsadres­ sen u und v Vielfache von "4" sind, werden die Versetzungen x und y zu "0", so daß die aus einem bestimmten Speicherelement ausgelesenen Daten nach der Verarbeitung in das gleiche Spei­ cherelement eingeschrieben werden.Since it is easy to see that the data read from the storage element Aa in FIG. 5 is to be written into the location Dc, the shift from Aa to the location Dc is equivalent to a transition from the location address u to the location address se v. Furthermore, since the memory elements 1 a have the 4 × 4 arrangement, the residues obtained by dividing the location addresses in the horizontal and vertical directions by "4" can be regarded as offsets x and y of the memory elements. For example, if the offsets of the location addresses sen u and v are multiples of "4", the offsets x and y become "0" so that the data read from a particular memory element is written into the same memory element after processing.

Die Ausführung der vorstehenden Verarbeitung durch Schal­ tungsausstattung wird nun kurz beschrieben. Die Fig. 8 ist eine Blockdarstellung, gemäß der gleichzeitig aus der Spei­ chereinheit 1 mit der 4 × 4-Matrix aus 16 Speicherelementen 1a ausgelesene Daten mittels der Prozessoreinheit 2 verarbeitet werden. Diese Daten werden zu vier Elementen gleichzeitig durch zyklische Vertauschung in x-Versetzungs-Umlauftauschern 81a bis 81d x-malig versetzt. Die Ergebnisse werden dann mittels eines y-Versetzungs-Umlauftauschers 82 durch zykli­ sche Vertauschung y-malig versetzt und jeweils in die Spei­ cherelemente Aa bis Ad, Ba bis Bd, Ca bis Cd bzw. Da bis Dd eingeschrieben.The execution of the above processing by circuit equipment will now be briefly described. The Fig. 8, according to the can be processed simultaneously from the SpeI chereinheit 1 with the 4 x 4 matrix of 16 memory elements 1 a read-out data by means of the processor unit 2 is a block diagram. These data d by cyclic permutation in x-displacement circulation exchangers 81 a to 81 x-times shifted to four elements simultaneously. The results are then offset y-times by means of a y-displacement circulation exchanger 82 by cyclic exchange and are written into the storage elements Aa to Ad, Ba to Bd, Ca to Cd and Da to Dd, respectively.

Die jeweils in den y-Versetzungs-Umlauftauscher (Rotator) 82 eingegebenen Daten sind die Daten für vier Elemente, so daß daher selbstverständlich der y-Versetzungs-Umlauftauscher 82 aus vier Umlauftauschern gebildet sein kann, die genau die gleichen wie die x-Versetzungs-Umlauftauscher 81a bis 81d sind. Selbstverständlich müssen die Umlauftauscher die glei­ che Bit-Anzahl-Tiefe wie die Speicherdatentiefe haben und die Anzahl der eingesetzten Umlauftauscher muß gleich der Tiefe der Speicherdaten sein. Als Umlauftauscher können Schiebere­ gister oder Bläschenspeicher verwendet werden.The data entered into the y-displacement circulation exchanger (rotator) 82 is the data for four elements, so that the y-displacement circulation exchanger 82 can of course be formed from four circulation exchangers which are exactly the same as the x-displacement Circulation exchangers 81 a to 81 d are. Of course, the circulation exchangers must have the same bit number depth as the storage data depth and the number of circulation exchangers used must be equal to the depth of the storage data. Slider registers or bubble accumulators can be used as circulation exchangers.

Das vorstehende wird nun in allgemeinerer Hinsicht betrach­ tet.The above will now be considered in more general terms tet.

Falls ein Speicherblock das Format k × ℓ hat, erhält die Spei­ chereinheit 1 eine k × ℓ-Anordnung. Wenn in diesem Fall der Speicherblock S aus k × ℓ Bildelementen an beliebigen Stellen mittels der Prozessoreinheit 2 verarbeitet wird und die Er­ gebnisse in den Speicherblock T aus k × ℓ Bildelementen an beliebigen Stellen übertragen werden, erhält man die Werte n, m, p und q aus folgenden Gleichungen:
If a memory block has the format k × ℓ, the storage unit 1 receives a k × ℓ arrangement. In this case, if the memory block S from k × ℓ picture elements is processed at any point by means of the processor unit 2 and the results are transferred to the memory block T from k × ℓ picture elements at any point, the values n, m, p and are obtained q from the following equations:

Y = kN + n (n = 0, 1, . . ., k - 1)
Y = kN + n (n = 0, 1,..., K - 1)

X = ℓM + m (m = 0, 1, . . ., ℓ - 1) (N, M, P, Q = 1, 2, 3, . . .)
X = ℓM + m (m = 0, 1,..., ℓ - 1) (N, M, P, Q = 1, 2, 3,...)

Y' = kP + p (p = 0, 1, . . ., k - 1)
Y '= kP + p (p = 0, 1,..., K - 1)

X' = ℓQ + q (q = 0, 1, . . ., ℓ - 1) (10)
X '= ℓQ + q (q = 0, 1,..., ℓ - 1) (10)

wobei die Ortsadresse des Eckpunkts des Blocks S (Y, X) ist und die Ortsadresse des Eckpunkts des Blocks T (Y', X') ist. Unter Einsetzen von x und y in
where the location address of the corner point of the block is S (Y, X) and the location address of the corner point of the block T is (Y ', X'). Inserting x and y in

p - n = Ky' + y (y' = 1, 0, y = 0, 1, 2, 3, . . ., k - 1)
p - n = Ky '+ y (y' = 1, 0, y = 0, 1, 2, 3,..., k - 1)

q - m = ℓx' + x (x' = 1, 0, x = 0, 1, 2, 3, . . ., ℓ - 1) (11)
q - m = ℓx '+ x (x' = 1, 0, x = 0, 1, 2, 3,..., ℓ - 1) (11)

ist es ausreichend, zum Ausführen der Verarbeitung die x- Versetzungs-Umlauftauscher 81a bis 81d und den y-Versetzungs- Umlauftauscher 82 der in Fig. 8 gezeigten Art zu verwenden. In diesem Fall hat der x-Versetzungs-Umlauftauscher ℓ Eingän­ ge und ermöglicht eine Versetzung von 0 bis ℓ - 1. Der y- Versetzungs-Umlauftauscher hat k Eingänge und ermöglicht eine Versetzung von 0 bis k - 1. Da darüberhinaus die k Eingangssig­ nale des y-Versetzungs-Umlauftauschers 82 jeweils ℓ Elemente haben, werden ℓ Umlauftauscher für eine Eingabe von k Elemen­ ten angeordnet.it is sufficient to use the x-displacement circulation exchangers 81 a to 81 d and the y-displacement circulation exchanger 82 of the type shown in FIG. 8 to carry out the processing. In this case, the x-displacement circulation exchanger has ℓ inputs and enables a displacement from 0 to ℓ - 1. The y-displacement circulation exchanger has k inputs and enables a displacement from 0 to k - 1. Since, in addition, the k input signals of the y-displacement circulation exchanger 82 each have ℓ elements, ℓ circulation exchangers are arranged for an input of k elements.

Als nächstes wird die Speicherelemente-Zugriffsteuerung für den gleichzeitigen Zugriff zu dem vorangehend genannten k' × ℓ'-Block gemäß Fig. 10 beschrieben.Next, the memory element access control for simultaneous access to the aforementioned k '× ℓ' block shown in Fig. 10 will be described.

Es sei angenommen, daß die Ortsadresse eines Eckpunkts i des k' × ℓ'-Blocks (f, g) ist. Falls der entsprechend der Gleichung (10) abgerufene Speicher gelesen wird, wird f, g in Y, X eingesetzt. Falls in den Speicher entsprechend dem Zugriff gemäß der Gleichung (10) eingeschrieben wird, wird f, g in Y', X' eingesetzt. Wenn das Ergebnis in die Gleichung (11) eingesetzt wird, um y, x zu erhalten, kann die Schaltung gemäß dem in den Fig. 7 und 8 gezeigten Ausführungsbeispiel direkt als für k × ℓ verallgemeinerte Anordnung angewandt wer­ den.Assume that the location address is a vertex i of the k '× ℓ' block (f, g). If the memory retrieved according to equation (10) is read, f, g is substituted in Y, X. If the memory is written according to the access according to equation (10), f, g is inserted in Y ', X'. If the result is put into equation (11) to obtain y, x, the circuit according to the embodiment shown in FIGS. 7 and 8 can be directly applied as a generalized arrangement for k × ℓ.

Hierbei werden nur die Bausteine für die k × ℓ' Speicherelemente aus den k × ℓ Speicherelementen eingeschaltet bzw. frei­ gegeben. Falls für die Bausteinfreigabe die Ortsadresse (f, g) des Eckpunktes i des k' × ℓ'-Blocks festgelegt worden ist, sind durch die Gleichung (10) die Werte n, m oder p, q ein­ deutig bestimmt, so daß auch der Zugriff zu den k' × ℓ' Spei­ cherelementen eindeutig bestimmt ist.Here, only the building blocks for the k × ℓ 'storage elements  from the k × ℓ memory elements switched on or free given. If the local address (f, g) the corner point i of the k '× ℓ' block has been determined, are the values n, m or p, q by equation (10) clearly determined, so that access to the k '× ℓ' Spei elements is clearly determined.

Bei einer Speicheranordnung aus k × ℓ Speicherelementen gemäß der bisherigen Beschreibung kann ein Fall in Betracht gezogen werden, bei dem ein k' × ℓ'-Block gleichzeitig für das Lesen und ein k" × ℓ"-Block gleichzeitig für das Schreiben ausgelesen wird (wobei 0 ≦ k" ≦ k und 0 ≦ ℓ" ≦ ℓ gilt). Die vorstehende Beschreibung gilt auch in diesem Fall. Ein Ausführungsbei­ spiel für die in diesem Fall an den Speicherelementen auszu­ führende Bausteinfreigabe-Steuerung ist in der Fig. 14 darge­ stellt.In the case of a memory arrangement comprising k × ℓ memory elements as described so far, a case can be considered in which a k '× ℓ' block is read out simultaneously for reading and a k "× ℓ" block is simultaneously read out for writing ( where 0 ≦ k "≦ k and 0 ≦ ℓ" ≦ ℓ applies). The above description also applies in this case. An exemplary embodiment for the block release control to be carried out in this case on the memory elements is shown in FIG. 14.

Falls die Ortsadressen der Eckpunkte der Blöcke k' × ℓ' und k" × ℓ" jeweils (Y, X) und (Y', X') sind, werden die Werte n, m und p, q aus der Gleichung (10) erhalten. Diese Werte n, m und p, q werden an die Dateneingänge eines Wählers 141a angelegt. An den Wähler wird als Wählsteuersignal ein Spei­ cherzugriff-Lese/Schreib-Signal R/W angelegt. Für das Lesen der Daten werden selektiv n und m ausgegeben, während für das Schreiben der Daten selektiv p und q ausgegeben werden.If the location addresses of the corner points of the blocks k '× ℓ' and k "× ℓ" are (Y, X) and (Y ', X'), respectively, the values n, m and p, q from the equation (10) receive. These values n, m and p, q are applied to the data inputs of a selector 141 a. A memory access read / write signal R / W is applied to the selector as the dial control signal. Selectively, n and m are output for reading the data, and p and q are selectively output for writing the data.

Auf gleichartige Weise werden die Blockformate k × ℓ und k" × ℓ" in einen Wähler 141b eingegeben, an dem das Signal R/W als Wählsteuersignal dient. Wenn die Daten gelesen werden, werden selektiv k' und ℓ' ausgegeben, während bei dem Schrei­ ben der Daten selektiv k" und ℓ" ausgegeben werden. Es ist offensichtlich, daß dann, wenn für das Lesen die Werte n, m, k' und ℓ' bzw. für das Schreiben k", ℓ", p und d festgelegt worden sind, die Speicherelemente 1a für den Zugriff eindeu­ tig bestimmt sind. Daher werden die von diesen Wählern 141a und 141b ausgegebenen Daten in eine Nachschlagetabelle 142 eingegeben, die Signale zur Steuerung der abzurufenden Spei­ cherelemente 1a aus den k × ℓ. Speicherelementen abgibt.In the same way, the block formats k × ℓ and k “× ℓ” are input into a selector 141 b, on which the signal R / W serves as a selection control signal. When the data is read, k 'and ℓ' are selectively output, while when the data is written, k "and ℓ" are selectively output. It is obvious that if the values n, m, k 'and ℓ' for reading and k ", ℓ", p and d have been defined for writing, the storage elements 1 a are uniquely determined for access are. Therefore, the data output from these selectors 141 a and 141 b are entered into a look-up table 142 , the signals for controlling the memory elements 1 a to be retrieved from the k × ℓ. Emits storage elements.

Es ist ersichtlich, daß dann, wenn der Bildspeicher zur Speicherung vor der Verarbeitung durch die Prozessoreinheit 92 gemäß Fig. 9(a) und (b) von dem Bildspeicher zur Speiche­ rung nach der Verarbeitung verschieden ist und die Speicher­ anordnungen jeweils k × ℓ. bzw. K × L sind, zwei Nachschlagetabel­ len 151 und 152 gemäß Fig. 15 verwendet werden müssen. In diesem Fall haben die Nachschlagetabellen 151 und 152 vonein­ ander verschiedenen Inhalt.It can be seen that if the image memory for storage before processing by the processor unit 92 shown in FIG. 9 (a) and (b) is different from the image memory for storage after processing and the memory arrangements are each k × ℓ. or K × L, two look-up tables len 151 and 152 according to FIG. 15 must be used. In this case, look-up tables 151 and 152 have different contents.

Es treten auch dann keine Probleme auf, wenn k = K und ℓ = L gilt. Falls die vorstehend beschriebene Anordnung verwendet wird, müssen die abzurufenden Speicherelemente nicht alle k × ℓ Speicherelemente sein und es ist eine teilweise Maskierung möglich. Es ist ausreichend, wenn die Anordnung der k × ℓ Speicherelemente auf das Format k × ℓ gewählt ist, welches das größte erforderliche Format ist.There are no problems even if k = K and ℓ = L applies. If the arrangement described above is used the memory elements to be retrieved do not all have to be k × ℓ Be storage elements and it's a partial masking possible. It is sufficient if the arrangement of the k × ℓ Storage elements on the format k × ℓ is selected, which is the largest format required.

Es wird nun der Zugriff zu den Speicherelementen für die Verarbeitung aller Bilddaten eines Vollbilds beschrieben. D. h., die folgende Beschreibung betrifft ein Abtast- bzw. Abfrageverfahren für den Abruf aller Speicherdaten.There is now access to the storage elements for the Processing of all image data of a full image is described. That is, the following description relates to a scan Query procedure for the retrieval of all stored data.

Anhand der Fig. 5 und 6 wurde schon der Zugriff zu einem Speicher in dem Fall beschrieben, daß die Ortsadresse des Anfangs- bzw. Eckpunktes u des Blocks aus aneinander angren­ zenden k × ℓ Bildelementen schon festgelegt wurde, nämlich Y, X festgelegt wurden, wobei Y die bei der aufeinanderfolgenden Zählung von 0 an in der vertikalen Richtung ausgehend von dem Eckpunkt erhaltene Zahl ist und X die bei der aufeinanderfol­ genden Zählung von 0 an in der horizontalen Richtung ausge­ hend von dem Eckpunkt erhaltene Zahl ist. Anhand folgender Beispiele wird nun beschrieben, in welcher Aufeinanderfolge X und Y für das Verarbeiten des Vollbilds abzufragen sind.Referring to Figs. 5 and 6, access has already been described to a memory in the case that the local address of the start or vertex has already been established and the block of each other angren collapsing k × ℓ picture elements, namely, Y, X have been defined, where Y is the number obtained from the corner point in the successive count from 0 in the vertical direction, and X is the number obtained from the corner point in the successive count from 0 in the horizontal direction. The following examples will now be used to describe the sequence in which X and Y are to be queried for processing the full image.

Beispiel 1example 1 Erstes FolgeabfrageverfahrenFirst follow-up query procedure

Dies ist ein Verfahren, bei dem Ortsadressen X, Y von Bildda­ ten für den Abruf von k × ℓ Speicherelementen dadurch abgefragt werden, daß die Werte um ein ganzzahliges Vielfaches von k bzw. ℓ aufgestuft oder abgestuft werden. Beispielsweise wer­ den Y und X anfänglich auf "0" eingestellt und X wird aufein­ anderfolgend in Stufen ℓ erhöht. Wenn X bis zu dem Endwert in der horizontalen Richtung erhöht worden ist, wird X auf "0" rückgesetzt, Y um k erhöht und X in Stufen ℓ erhöht. Dies wird aufeinanderfolgend wiederholt, um das ganze Bild oder einen Teil hiervon abzutasten. Dieses Verfahren wird als erstes Folgeabfrageverfahren bezeichnet.This is a method in which location addresses X, Y of Bildda queried for the retrieval of k × ℓ memory elements that the values are an integer multiple of k or ℓ can be graded or graded. For example, who initially set the Y and X to "0" and X will be on subsequently increased in stages ℓ. If X up to the final value in the horizontal direction has been increased, X becomes "0" reset, Y increased by k and X increased in steps ℓ. This is repeated successively to the whole picture or to sample part of it. This procedure is called called the first follow-up query procedure.

Beispiel 2Example 2 Erstes ZufallsabfrageverfahrenFirst random polling procedure

X und Y werden nicht gemäß der vorstehenden Beschreibung aufeinanderfolgend erhöht oder vermindert. Stattdessen werden hier und da in dem Vollbild gelegene aufeinanderfolgende k × ℓ- Blöcke unter Zufallsverteilung abgerufen, wobei die zum Zeit­ punkt des Abrufs geltenden Werte X und Y Versetzungen sind, die ganzzahlige Vielfache von k und ℓ sind. Dieses Verfahren wird als erstes Zufallsabfrageverfahren bezeichnet.X and Y are not as described above successively increased or decreased. Instead be successive k × ℓ- here and there in the full screen Blocks accessed at random, which are currently values X and Y are dislocations, are the integer multiples of k and ℓ. This method is called the first random polling procedure.

Beispiel 3Example 3 Zweites FolgeabfrageverfahrenSecond follow-up query procedure

Bei diesem Verfahren werden die Ortsadressen X, Y der Bildda­ ten für den Zugriff zu den k × ℓ Speicherelementen durch Auf­ stufen oder Abstufen um eine ganze Zahl abgefragt. Beispiels­ weise werden Y und X anfänglich auf "0" eingestellt, wonach X aufeinanderfolgend in Stufen "1" erhöht wird. Wenn X bis zu dem Endwert in der horizontalen Richtung erhöht worden ist, wird dann X auf "0" rückgesetzt, Y um "1" aufgestuft und X in Stufen "1" erhöht. Dies wird aufeinanderfolgend wiederholt, um ein Einzelbild vollständig oder zum Teil abzutasten. Dieses Verfahren wird als zweites Folgeabfrageverfahren be­ zeichnet. In diesem Fall wird der gleiche Speicherdatenbe­ reich mehrmalig abgefragt.In this method, the location addresses X, Y of the image da ten to access the k × ℓ storage elements by opening increment or increment by an integer. example Y and X are initially set to "0", after which X is successively increased in steps "1". If X up to the final value has been increased in the horizontal direction,  X is then reset to "0", Y is increased by "1" and X in Levels "1" increased. This is repeated in sequence, to scan all or part of a frame. This procedure is called the second follow-up query procedure records. In this case, the same storage data is used richly queried several times.

Beispiel 4Example 4 Zweites ZufallsabfrageverfahrenSecond random polling procedure

X und Y werden nicht auf die vorstehend beschriebene Weise aufeinanderfolgend erhöht oder vermindert. Stattdessen werden hier und da in dem Vollbild liegende k × ℓ-Blöcke unter Zu­ fallsverteilung abgerufen, was für alle Werte X und Y ausge­ führt wird. Alternativ kann diese Verarbeitung für die Werte X und Y von aufeinanderfolgenden Teilbereichen in dem Voll­ bild ausgeführt werden. Wenn dies zufallsbedingt erfolgt, wird das Verfahren als zweites Zufallsabfrageverfahren be­ zeichnet.X and Y are not in the manner described above successively increased or decreased. Instead be here and there in the full screen k × ℓ blocks under Zu case distribution retrieved, what for all values X and Y leads. Alternatively, this processing can be done for the values X and Y of successive partial areas in the full image can be executed. If this happens randomly, the procedure will be the second random polling procedure records.

Beispiel 5Example 5 Block-FolgeabfrageverfahrenBlock-sequential scan method

Wenn ein abzurufender Speicherblock ein k' × ℓ' -Speicherblock in einer Speicheranordnung mit k × ℓ Speicherelementen ist, werden Ortsadressen Y, X (1 ≦ k' ≦ k, 1 ≦ ℓ' ≦ ℓ) um ganzzahlige Vielfache von k' und ℓ' erhöht oder vermindert, was aufeinan­ derfolgend zum Abtasten eines Vollbilds wiederholt wird. Dieses Verfahren wird zur Unterscheidung von dem ersten Fol­ geabfrageverfahren als Block-Folgeabfrageverfahren bezeich­ net.If a block of memory to be retrieved is a k '× ℓ' block of memory in a memory arrangement with k × ℓ memory elements, place addresses Y, X (1 ≦ k '≦ k, 1 ≦ ℓ' ≦ ℓ) are integers Multiples of k 'and ℓ' increased or decreased, which match which is repeated to scan a frame. This procedure is used to distinguish the first fol interrogation procedure referred to as block follow-up interrogation procedure net.

Beispiel 6Example 6 Block-ZufallsabfrageverfahrenBlock-random interrogation methods

X und Y werden nicht gemäß der vorstehenden Beschreibung des Beispiels 5 aufeinanderfolgend erhöht oder vermindert. Statt­ dessen werden hier und da in dem Vollbild liegende aufeinanderfolgende k' × ℓ'-Blöcke unter Zufallsverteilung abgerufen, wobei X und Y Versetzungen sind, die ganzzahlige Vielfache von k' und ℓ' sind. Dieses Verfahren wird als Block-Zufalls­ abfrageverfahren bezeichnet.X and Y are not as described above Example 5 successively increased or decreased. instead of here and there, successive ones lying in the full screen become  k '× ℓ' blocks retrieved at random, where X and Y are offsets, the integer multiples of k 'and ℓ'. This procedure is called block random interrogation procedure.

Beispiel 7Example 7 Sequentielles AbfrageverfahrenSequential query procedure

Die Abfrage erfolgt sequentiell ohne Zusammenhang mit der Speicheranordnung der k × ℓ Speicherelemente. Beispielsweise erfolgt die Abfrage durch das Verändern von X, Y um jede zweite beliebig gewählte Zahl d', f'. Dies wird einfach als sequentielle Abfrage bezeichnet.The query takes place sequentially with no connection to the Memory arrangement of the k × ℓ memory elements. For example the query is made by changing X, Y by each second arbitrarily chosen number d ', f'. This is simply called called sequential query.

Beispiel 8Example 8 Zufallsbedingtes AbfrageverfahrenRandom interrogation

Falls die Speicherabfrage nicht im Falle der Zufallsabfrage gemäß Beispiel 7 oder 4 bezüglich aller Kombinationen aus X und Y ausgeführt wird, wird das Verfahren einfach als zu­ fallsbedingte Abfrage bezeichnet.If the memory query is not in the case of the random query according to Example 7 or 4 with respect to all combinations of X and Y is executed, the process is simply considered too referred to if necessary query.

Gemäß den vorstehenden Ausführungen können einige Abfragever­ fahren in Betracht gezogen werden und es ist der Speicherzu­ griff an dem leseseitigen Speicher und dem schreibseitigen Speicher möglich, wobei das Abfrageverfahren für den Lese­ speicher nicht unbedingt mit dem Abfrageverfahren für den Schreibspeicher übereinstimmen muß.According to the above, some query ver drive can be considered and it is the memory close grabbed the read-side memory and the write-side Memory possible, the polling method for reading do not necessarily save using the query method for the Write memory must match.

Wenn das leseseitige Abfrageverfahren festgelegt worden ist, werden schreibseitig die Werte X' und Y' durch den Inhalt der von der Prozessoreinheit 2 ausgeführten Verarbeitung be­ stimmt. Es kann auch zuerst das schreibseitige Abfrageverfah­ ren festgelegt werden, wobei in diesem Fall dann das lesesei­ tige Abfrageverfahren durch den Inhalt der von der Prozessor­ einheit 2 ausgeführten Verarbeitung bestimmt ist. When the read-side query method has been determined, the values X 'and Y' on the write side are determined by the content of the processing carried out by the processor unit 2 . It is also possible to first determine the write-side query method, in which case the read-side query method is then determined by the content of the processing carried out by the processor unit 2 .

Falls auch die Blockformate k × ℓ der in dem Lesespeicher und dem Schreibspeicher abzurufenden Blöcke voneinander verschie­ den sind, unterscheiden sich auch die Formate der Speicher­ elemente-Anordnung k × ℓ.If the block formats k × ℓ that in the read memory and the blocks to be retrieved from the write memory memory formats also differ element arrangement k × ℓ.

Die Fig. 19(a) ist ein Schaltbild, das das Konzept des Auf­ baus eines Prozessorelements PE veranschaulicht. Eine logi­ sche und arithmetische Recheneinheit 12, die über eine Daten­ eingabeeinheit 11 Daten aus einem oder mehreren Speicherele­ menten sowie über einen Empfangspuffer 13 Daten aus einem oder mehreren Prozessorelementen aufnimmt, führt gemäß diesen Daten vorbestimmte logische und arithmetische Rechenvorgänge aus und gibt die Ergebnisse über eine Datenausgabeeinheit 15 an ein oder mehrere Speicherelemente ab. Die logische und arithmetische Recheneinheit 12 sendet ferner die Daten aus der Dateneingabeeinheit 11 oder die Ergebnisse der logischen und arithmetischen Rechenvorgänge über einen Sendezwischen­ speicher bzw. Sendepuffer 14 zu einer oder mehreren Prozes­ soreinheiten.The Fig. 19 (a) is a circuit diagram illustrating the concept of construction on a processor element PE. A logical and arithmetic arithmetic unit 12 , which receives data from one or more memory elements via a data input unit 11 and data from one or more processor elements via a receive buffer 13 , performs predetermined logical and arithmetic arithmetic processes according to this data and outputs the results via a Data output unit 15 to one or more storage elements. The logical and arithmetic arithmetic unit 12 also sends the data from the data input unit 11 or the results of the logical and arithmetic arithmetic operations via a transmission buffer or transmission buffer 14 to one or more processor units.

Die Fig. 19(b) ist ein Blockschaltbild, gemäß dem die logi­ sche und arithmetische Recheneinheit 12 durch einen Mikropro­ zessor gebildet ist. Fig. 19 (b) is a block diagram according to which the logic and arithmetic arithmetic unit 12 is formed by a microprocessor.

An eine interne Sammelleitung 10 sind eine Zentraleinheit (CPU) 12a, ein Festspeicher (ROM) 12b zum Speichern eines Steuerprogramms und ein Schreib/Lesespeicher (RAM) 12c als Hilfsspeicher angeschlossen, die zusammen die logische und arithmetische Recheneinheit 12 bilden. Ferner sind an die Sammelleitung 10 die Dateneingabeeinheit 11, die Datenausga­ beeinheit 15, der Empfangspuffer 13 und der Sendepuffer 14 angeschlossen, die in Fig. 19(a) gezeigt sind.To an internal bus 10 , a central processing unit (CPU) 12 a, a read-only memory (ROM) 12 b for storing a control program and a read / write memory (RAM) 12 c are connected as auxiliary storage, which together form the logical and arithmetic computing unit 12 . Further, to the bus 10, the data input unit 11 , the data output unit 15 , the reception buffer 13 and the transmission buffer 14 are connected, which are shown in Fig. 19 (a).

Die einzelnen Prozessorelemente führen die gleiche oder je­ weils ein eigene Verarbeitung und den Datenaustausch mit den anderen Prozessorelementen aus. Unter der Steuerung gemäß einem zuvor in dem jeweiligen Prozessorelement gespeicherten Steuerprogramm oder unter der Steuerung durch eine externe Steuerschaltung oder einen Verarbeitungsrechner führt die ganze, aus dieser Prozessorelementegruppe gebildete Prozes­ soreinheit die vorbestimmte Verarbeitung parallel aus.The individual processor elements carry the same or each because it has its own processing and data exchange with the  other processor elements. Under the control according to one previously stored in the respective processor element Control program or under the control of an external Control circuit or a processing computer performs the whole process formed from this processor element group Soreinheit the predetermined processing in parallel.

Dichteumsetzung, Farbumsetzung und Maskierung von BilddatenDensity conversion, color conversion and masking of image data

Die Dichteumsetzung, die Farbumsetzung und dergleichen kann mittels eines Systems vorgenommen werden, in dem sowohl lese­ seitig als auch schreibseitig das erste Folgeabfrageverfahren angewandt wird. Dies wird nun ausführlich beschrieben.The density conversion, the color conversion and the like can by means of a system in which both reading the first follow-up query process on both sides and on the write side is applied. This will now be described in detail.

Die Farbumsetzung ist eine Verarbeitung, bei der dann, wenn Bilddaten bestimmte Farbinformationen enthalten, die Farbin­ formationen in andere vorbestimmte Farbinformationen umge­ setzt werden.The color conversion is a processing in which if Image data contain certain color information, the color Formations in other predetermined color information be set.

Bei einem Maskieren wird gemäß der Darstellung in Fig. 21(a) bis 21(c) nur ein bestimmter Teil der Bilddaten unverändert ausgegeben, während der Rest der Bilddaten als Untergrund, wie beispielsweise weißer Untergrund ausgegeben wird. Als Untergrund können auch andere Daten beispielsweise für "Grau", "Farblos" oder dergleichen ausgegeben werden. Die Fig. 21(a) zeigt Daten, die einen zu maskierenden Bereich angeben, die Fig. 21(b) zeigt ein zu maskierendes Bild und die Fig. 21(c) zeigt die ausgegebenen Ergebnisse.When masking, as shown in FIGS. 21 (a) to 21 (c), only a certain part of the image data is output unchanged, while the rest of the image data is output as a background, such as a white background. Other data can also be output as a background, for example for "gray", "colorless" or the like. Fig. 21 (a) shows data indicating an area to be masked, Fig. 21 (b) shows an image to be masked, and Fig. 21 (c) shows the outputted results.

Für die Dichteumsetzung arbeitet beispielsweise ein jedes Prozessorelement 2a in der Prozessoreinheit 2 gemäß dem Ab­ laufdiagramm in Fig. 22. Hierbei ist ein einem Eingangswert Vin entsprechender Ausgangswert Vout (nach Fig. 20) durch folgende Gleichung bestimmt:
For the density conversion, for example, each processor element 2 a works in the processor unit 2 according to the flow diagram in FIG. 22. Here, an output value Vout (according to FIG. 20) corresponding to an input value Vin is determined by the following equation:

Vout = Vin2/64 (12)Vout = Vin 2/64 (12)

Die Prozessoreinheit enthält 16 Prozessorelemente, von denen jedes jeweils 4 × 4 Bildelementen mit einer Länge von 8 Bit entspricht. In diese Prozessoreinheit 2 werden die der Adres­ se (A, B) nach Fig. 2 entsprechenden 4 × 4 Datenposten mit 8 Bit Länge eingegeben. Die Prozessorelemente 2a arbeiten pa­ rallel und geben jeweils Daten ab. Infolgedessen werden die gleichzeitig abgerufenen 4 × 4 Datenposten mit 8 Bit Länge in der Prozessoreinheit 2 gleichzeitig verarbeitet, wonach die Ergebnisse gleichzeitig ausgegeben werden. Auf diese Weise ist eine Bildverarbeitung mit hoher Geschwindigkeit ermög­ licht.The processor unit contains 16 processor elements, each of which corresponds to 4 × 4 picture elements with a length of 8 bits. In this processor unit 2 , the 4 × 4 data items corresponding to the address (A, B) according to FIG. 2 and 8 bits long are entered. The processor elements 2 a work in parallel and each deliver data. As a result, the 4 × 4 8-bit data items retrieved simultaneously are processed simultaneously in the processor unit 2 , after which the results are output simultaneously. In this way, high speed image processing is made possible.

Die Prozessorelemente 2a führen Verarbeitungen wie eine Dich­ teumsetzung, eine Farbumsetzung und ein Maskieren aus.The processor elements 2 a carry out processing such as conversion, color conversion and masking.

Gemäß der vorstehenden Beschreibung umfaßt die Dichteumset­ zung das Verändern eines Eingangswerts in einen entsprechen­ den Ausgangswert in Übereinstimmung mit einer vorbestimmten Eingabedichte/Ausgabedichte-Wechselbeziehung und die Abgabe des Ausgangswerts. Auf diese Weise kann der Kontrast eines Bilds erhöht und dessen Helligkeit geändert werden. Die Fig. 20 veranschaulicht eine Dichteumsetzung, bei der der Rechen­ vorgang gemäß Gleichung (12) ausgeführt wird.As described above, density conversion comprises changing an input value to a corresponding output value in accordance with a predetermined input density / output density correlation and outputting the output value. In this way, the contrast of an image can be increased and its brightness changed. FIG. 20 illustrates a density conversion, in which the computing operation according to equation (12) is executed.

Für eine Farbumsetzung arbeitet beispielsweise ein jedes Prozessorelement 2a in der Prozessoreinheit 2 gemäß dem in Fig. 23 gezeigten Ablaufdiagramm. Hierbei wird eine Farbin­ formation als Kombination aus beispielsweise Rot R, Grün G und Blau B ausgedrückt, wobei für R, für G und für B der vorange­ hend genannte Bildspeicher vorgesehen ist und jeder Bildspei­ cher für das Speichern von Daten mit einer Länge von 8 Bit ausgelegt ist. Die einzelnen identischen Prozessorelemente sind entsprechenden Bildspeicherzellen für R, G und B zugeordnet. Eine Kombination aus bestimmten R-, G- und B-Werten ist im voraus als eine bestimmte Farbe gespeichert, während gleichermaßen die Farbinformation nach einer Änderung als eine Kombination aus bestimmten R-, G- und B-Werten vorge­ speichert ist. Es können natürlich mehrere bestimmte Farben gespeichert sein.For a color conversion, for example, each processor element 2 a works in the processor unit 2 according to the flow chart shown in FIG. 23. Here, a color information is expressed as a combination of, for example, red R, green G and blue B, wherein the above-mentioned image memory is provided for R, G and B, and each image memory for storing data with a length of 8 bits is designed. The individual identical processor elements are assigned to corresponding image memory cells for R, G and B. A combination of certain R, G and B values is stored in advance as a certain color, while likewise the color information after a change is pre-stored as a combination of certain R, G and B values. Of course, several specific colors can be stored.

Für ein Maskieren arbeitet beispielsweise jedes Prozessorele­ ment in der Prozessoreinheit gemäß dem in Fig. 24 gezeigten Ablaufdiagramm. Hierbei betrifft das Maskieren Bitdaten in einem Speicher, der durch einen Bit-Verzeichnisspeicher ge­ bildet ist, dessen Bits den jeweiligen Zellen des vorangehend genannten Bildspeichers entsprechen. Diese Daten zeigen an, ob sie innerhalb einer Maske liegen oder nicht. In diesem Fall ist ein einzelnes Prozessorelement gleichfalls den ent­ sprechenden Zellen des Maskierspeichers und des Bildspeichers zugeordnet.For masking, for example, each processor element in the processor unit operates according to the flowchart shown in FIG. 24. Here, the masking relates to bit data in a memory which is formed by a bit directory memory whose bits correspond to the respective cells of the above-mentioned image memory. These data indicate whether or not they are within a mask. In this case, a single processor element is also assigned to the corresponding cells of the mask memory and the image memory.

Falls die Gestaltung derart getroffen ist, daß eine Daten­ übertragung zwischen den Prozessorelementen 2a der beschrie­ benen Prozessoreinheit 2 ermöglicht ist, kann in der Prozes­ soreinheit 2 sowohl eine Raum- bzw. Ortsfrequenzfilterung als auch eine Zeichenerkennung, Komprimierung und Decodierung ausgeführt werden.Is if the design is made such that a data transfer between the processor elements 2a of beschrie surrounded processor unit 2 allows both a spatial, or spatial frequency filtering can be executed as a character recognition, compression, and decoding in the Prozes soreinheit. 2

Es wird nun ein zweites Ausführungsbeispiel beschrieben, bei dem Bilddaten zum gleichzeitigen Abruf von k × ℓ Datenposten k × ℓ Speicherelementen zugeordnet sind. Die Fig. 16 veran­ schaulicht einen Zustand, der sich dann ergibt, wenn die Informationen für ein Einzelbild durch Daten ersetzt sind. Die Informationen sind horizontal in ℓ gleiche Abschnitte und vertikal in k gleiche Abschnitte unterteilt. Zur Beschreibung der sich durch diese Unterteilung ergebenden k × ℓ-Bereiche sind diese mit (0, 0), (0, 1), . . . (0, ℓ), . . . (k, ℓ) bezeich­ net, wobei gemäß der Darstellung in Fig. 17 einem jeden einzelnen Bereich ein einzelnes eigenes Speicherelement 1b zugeordnet ist. D. h., die Anzahl der Speicherelemente 1b ist gleich der Anzahl der in Fig. 16 gezeigten Unterteilungen. Bei der Zuordnung der Bereiche ist jeder schattierte Teilbe­ reich nach Fig. 16 der Adresse 0 des entsprechenden Speicher­ elements 1b zugeordnet, während die benachbarten Bilddaten der Adresse 1 des entsprechenden Speicherelements zugeordnet sind usw., bis alle Daten einer einzelnen Zeile in einem jeweiligen Bereich vollständig zugeordnet sind. Danach er­ folgt die Zuweisung auf gleichartige Weise für die zweite Zeile von links nach rechts. Dies wird wiederholt, bis alle Bilddaten zugeordnet sind. Wenn alle Adressen identisch sind, die von dem Zeilenadressengenerator 4 und dem Spaltenadres­ sengenerator 5 nach Fig. 4 an alle k × ℓ Speicherelemente 1b angelegt werden, können beliebige Bilddaten gleichzeitig abgerufen werden, wie es durch die schattierten Teilbereiche in Fig. 16 dargestellt ist.A second exemplary embodiment will now be described in which image data for the simultaneous retrieval of k × ℓ data items are assigned to k × ℓ storage elements. Fig. 16 illustrates a state that occurs when the information for one frame is replaced by data. The information is divided horizontally into ℓ identical sections and vertically into k identical sections. To describe the k × ℓ areas resulting from this subdivision, they are denoted by (0, 0), (0, 1),. , , (0, ℓ),. , , (k, ℓ) denotes net, with each individual area being assigned an individual memory element 1 b as shown in FIG. 17. That is, the number of the memory elements 1 b is equal to the number of the divisions shown in FIG. 16. When the areas are assigned, each shaded partial area according to FIG. 16 is assigned to the address 0 of the corresponding memory element 1 b, while the adjacent image data are assigned to the address 1 of the corresponding memory element, etc., until all the data of a single line in a respective area are fully assigned. Then he assigns in the same way for the second line from left to right. This is repeated until all image data have been assigned. If all addresses are identical, which are applied by the row address generator 4 and the column address generator 5 according to FIG. 4 to all k × ℓ memory elements 1 b, any image data can be called up simultaneously, as is shown by the shaded partial areas in FIG. 16 ,

Mit dieser Anordnung ist es ermöglicht, eine bestimmte Adres­ se zu wählen, aus dem Bildspeicher 1 die Daten an dieser Adresse auszulesen, die Daten in der Prozessoreinheit 2 zu verarbeiten und dann die sich ergebenden Daten ohne Änderung der Adresse in die k × ℓ Speicherelemente 1b einzuschreiben. Falls beispielsweise jeder der Bereiche gemäß Fig. 16 aus K × L Bilddaten zusammengesetzt ist, ist es ohne Belang, wenn die Leseadresse und die Schreibadresse identisch sind, falls eine Verarbeitung zum Bewegen oder Übertragen eines Teilbereichs eines Einzelbilds um eine Versetzung ausgeführt wird, die ein ganzzahliges Vielfaches von L in horizontaler Richtung und ein ganzzahliges Vielfaches von K in vertikaler Richtung ist. Hierdurch wird die Belastung der die Adressensteuerung be­ treffenden Komponenten wie des Zeilenadressengenerators 4 und des Spaltenadressengenerators 5 beträchtlich vermindert.With this arrangement, it is possible to choose a specific address, to read the data at this address from the image memory 1 , to process the data in the processor unit 2 and then to process the resulting data into the k × ℓ memory elements 1 without changing the address b enroll. For example, if each of the areas shown in Fig. 16 is composed of K × L image data, it does not matter if the read address and the write address are the same if processing for moving or transferring a portion of a frame by an offset is carried out which a is an integer multiple of L in the horizontal direction and an integer multiple of K in the vertical direction. As a result, the load on the address control components such as the row address generator 4 and the column address generator 5 is considerably reduced.

Die Verarbeitung für das Bewegen oder Übertragen wird von der Prozessoreinheit 2 ausgeführt. Die Prozessoreinheit 2 emp­ fängt eine Eingabe von k × ℓ Bilddatenposten gemäß der Darstel­ lung durch die strichlierten Teilbereiche in Fig. 16 und eine Eingabe aus Bilddaten über das ganze Einzelbild. Da die einzelnen dieser Datenposten um ein ganzzahliges Vielfaches von L und K in horizontaler bzw. vertikaler Richtung versetzt werden, werden in der Prozessoreinheit 2 die k × ℓ Datenposten ausgetauscht bzw. bewegt und übertragen, wobei die Verarbei­ tung aufeinanderfolgend in der Reihenfolge von 0 an bezüglich aller Adressen der Speicherelemente ausgeführt werden kann. Infolgedessen kann das ganze Einzelbild verarbeitet werden.The processing for moving or transferring is carried out by the processor unit 2 . The processor unit 2 receives an input of k × ℓ image data items according to the representation by the dashed partial areas in FIG. 16 and an input of image data over the entire individual image. Since the individual of these data items are offset by an integer multiple of L and K in the horizontal and vertical directions, the k × ℓ data items are exchanged or moved and transmitted in the processor unit 2 , the processing successively in the order from 0 can be executed with respect to all addresses of the memory elements. As a result, the whole frame can be processed.

Bei diesem Ausführungsbeispiel kann erwogen werden, durch Verwendung einer 1 × ℓ- oder k × l-Anordnung für die k × ℓ-Spei­ cherzusammensetzung und durch Zuordnen einer horizontalen oder einer vertikalen Linie in einem Einzelbild zu jedem der Speicherelemente die in der Prozessoreinheit 2 ausgeführte Verarbeitung für verschiedenartige Bildverarbeitungen anzu­ wenden, wie für eine Histogramm- bzw. Häufigkeitsverteilungs- Aufbereitung für eine einzelne Linie eines Bilds oder für eine eindimensionale Fourier-Transformation. Darüberhinaus besteht bei dem gleichzeitigen Zugriff zu einer Vielzahl von Bildelementen keinerlei Einschränkung darauf, welche Adressen welcher Speicherelemente den Daten in einem Einzelbild zuge­ wiesen werden.In this embodiment, it can be considered by using a 1 × ℓ or k × l arrangement for the k × ℓ memory composition and by associating a horizontal or a vertical line in a frame with each of the memory elements that is executed in the processor unit 2 Processing to be used for various image processing, such as a histogram or frequency distribution preparation for a single line of an image or for a one-dimensional Fourier transformation. In addition, with simultaneous access to a large number of picture elements, there is no restriction as to which addresses of which storage elements are assigned to the data in a single picture.

BilddatendrehungImage data rotation

Es wird nun ein Beispiel für die Anwendung einer derartigen Speicheranordnung beschrieben. Da vorstehend eine Übertragung bzw. Versetzung der Daten beschrieben wurde, wird nun eine Drehung bzw. Verschwenkung der Daten erläutert. Zur Vereinfa­ chung sei angenommen, daß für die k × ℓ Unterteilungen einer k × ℓ-Speicherelementeanordnung k = ℓ gilt, so daß sich eine ℓ × ℓ-Anordnung ergibt. Ferner sei für einen Bereich mit K × L Bildelementedaten angenommen, daß K = L gilt. Wenn in diesem Fall ein Einzelbild um +90° oder -90° mit der Bildmitte als Achse geschwenkt werden soll, werden von der Prozessoreinheit vier Datenposten aus den ℓ × ℓ Bilddatenposten vertauscht, nämlich vier voneinander um 90° versetzte Datenposten in bezug auf die Mitte geschwenkt. Wenn dies hinsichtlich des ganzen Einzelbilds wiederholt wird, wird dadurch das Einzel­ bild um 90° gedreht. Infolgedessen wird für das Drehen des ganzen Einzelbilds die vorstehend genannte Schwenkung ℓ2/4- malig ausgeführt. Im Falle einer 180°-Drehung genügt es, zwei gegeneinander um 180° versetzte Datenposten in bezug auf die Mitte zu schwenken bzw. zu vertauschen. Zur Drehung des ganzen Einzelbilds um 180° erfolgt das Schwenken ℓ2/2-malig. Auf diese Weise wird mit diesem Vorgang ein Einzelbild einer Grob-Drehung unterzogen. Dies entspricht einer Drehung von den ℓ × ℓ Bereichen nach Fig. 25 auf die ℓ × ℓ Bereiche nach Fig. 26. Tatsächlich müssen die Drehungen um +90°, -90°, +180° und dergleichen auf gleichartige Weise auch innerhalb der glei­ chen Bereiche ausgeführt werden.An example of the application of such a memory arrangement will now be described. Since a transfer of the data has been described above, a rotation of the data will now be explained. For the sake of simplification it is assumed that k = ℓ applies to the k × ℓ subdivisions of a k × ℓ memory element arrangement, so that a ℓ × ℓ arrangement results. Furthermore, for an area with K × L pixel data, assume that K = L. In this case, if a single image is to be pivoted through + 90 ° or -90 ° with the center of the image as the axis, the processor unit exchanges four data items from the ℓ × ℓ image data items, namely four data items offset from one another with respect to the center pivoted. If this is repeated with respect to the entire individual image, the individual image is thereby rotated by 90 °. As a result, the above-mentioned panning ℓ is carried out 2/4 times for rotating the whole frame. In the case of a 180 ° rotation, it is sufficient to swivel or swap two data items offset by 180 ° relative to the center. To rotate an entire image frame by 180 °, the tilting takes place ℓ 2/2-times. In this way, a single image is roughly rotated with this process. This corresponds to a rotation from the ℓ × ℓ regions according to FIG. 25 to the ℓ × ℓ regions according to FIG. 26. In fact, the rotations by + 90 °, -90 °, + 180 ° and the like must be carried out in the same way within the same areas.

Die Drehung innerhalb eines Einzelbilds wäre ohne die Drehung innerhalb der Bereiche unvollständig. Es wird nun die Drehung innerhalb eines Bereichs beschrieben. Dieser Vorgang umfaßt eine Verarbeitung, bei dem eine beim Auslesen eines Speicher­ elements geltende Adresse zu einer bei dem Einschreiben in ein Speicherelement geltenden Adresse umgesetzt wird. Die Adressenumsetzung erfolgt auf die in der nachstehenden Tabel­ le 1 dargestellte Weise. The rotation within a frame would be without the rotation incomplete within the ranges. Now there is the rotation described within a range. This process includes a processing in which one when reading out a memory elements valid address to a when registered in a memory element applicable address is implemented. The Addresses are converted to those in the table below le 1 shown way.  

Tabelle 1 Table 1

Eine Schaltung für diese Verarbeitung ist in Fig. 18 ausführ­ lich als Blockschaltbild dargestellt, gemäß dem ein Wählsig­ nal in Abhängigkeit von dem Drehwinkel verändert wird und als Wählsteuersignal in Wähler 181, 182, 183 und 184 eingegeben wird.A circuit for this processing is shown in Fig. 18 in detail as a block diagram, according to which a dial signal is changed depending on the rotation angle and is input as dial control signal in dialers 181 , 182 , 183 and 184 .

Normalerweise werden bei dem Drehwinkel 0° die Ausgangssig­ nale des Zeilenadressengenerators 4 und des Spaltenadressen­ generators 5 jeweils direkt über die Wähler 181 und 183 bzw. 182 und 184 den Zeilen- und Spaltenadressen der Speicherele­ mente zugeführt. Wenn der Drehwinkel +90° oder -90° beträgt, werden den Spalten- und Zeilenadressen jeweils Ausgangssig­ nale a und b der Wähler 181 bzw. 182 zugeführt.Normally, at the angle of rotation 0 °, the output signals of the row address generator 4 and the column address generator 5 are each fed directly via the selector 181 and 183 or 182 and 184 to the row and column addresses of the memory elements. If the angle of rotation is + 90 ° or -90 °, the column and row addresses are output signals a and b of the selector 181 and 182 respectively.

Wenn der Drehwinkel 0° oder 180° beträgt, ergeben die Aus­ gangssignale a und b der Wähler 181 bzw. 182 jeweils die Zeilen- bzw. Spaltenadressen. Bei den Drehwinkeln 90° und 180° wird von dem Wähler 184 das Ausgangssignal einer Rechen­ einheit 186 gewählt. Bei den Drehwinkeln -90° und 180° wird von dem Wähler 184 das Ausgangssignal einer Recheneinheit 185 gewählt. In den Recheneinheiten 185 und 186 werden die einge­ gebenen Daten von der Länge L einer Seite eines Bereichs subtrahiert und Signale für das Ergebnis ausgegeben. Mit einer derartigen Anordnung wird die in der Tabelle 1 darge­ stellte Verarbeitung zur Drehung eines ganzen Einzelbilds ausgeführt.If the angle of rotation is 0 ° or 180 °, the output signals a and b of the selectors 181 and 182 respectively give the row and column addresses. At the angles of rotation 90 ° and 180 °, the output signal of a computing unit 186 is selected by the selector 184 . At the rotation angles -90 ° and 180 °, the output signal of a computing unit 185 is selected by the selector 184 . In the arithmetic units 185 and 186 , the input data are subtracted from the length L of one side of an area and signals for the result are output. With such an arrangement, the processing for rotating a whole frame shown in Table 1 is carried out.

Es wird nun der Zugriff zu den Speicherelementen für die Verarbeitung aller Bilddaten über ein ganzes Vollbild hinweg beschrieben. D. h., die folgende Beschreibung betrifft ein Abtast- bzw. Abfrageverfahren für den Zugriff zu allen Spei­ cherdaten.There is now access to the storage elements for the Processing of all image data across a full frame described. That is, the following description relates to one Sampling or query procedure for access to all storage cherdaten.

Es wurde vorstehend schon der Zugriff zu einem Speicher in dem Fall beschrieben, daß die Ortsadresse des Anfangs- bzw. Eckpunkts u von abzurufenden aneinandergrenzenden k × ℓ-Blöcken festgelegt worden ist, nämlich Y, X festgelegt wurden, wobei Y die durch das Zählen in Aufeinanderfolge von "0" an in vertikaler Richtung von dem Eckpunkt ausgehend erhaltene Zahl ist und X die durch das Zählen in Aufeinanderfolge von "0" an in horizontaler Richtung von dem Eckpunkt ausgehend erhaltene Zahl ist. Anhand eines Beispiels wird nun beschrieben, in welcher Reihenfolge die Werte X und Y abzurufen sind, um das Vollbild zu verarbeiten.Access to a memory in described the case that the local address of the start or Corner point u of adjacent k × ℓ blocks to be retrieved has been set, namely Y, X have been set, where Y which by counting in sequence from "0" to in number obtained in the vertical direction from the corner point and X is the one by counting in sequence from "0" obtained in the horizontal direction from the corner point Number is. An example will now be used to describe in the order in which the values X and Y are to be called up in order to Process full screen.

Es wird ein Beispiel für an die Speicherelemente anzulegende Abfrageadressen erläutert. Die durch das Unterteilen eines Einzelbilds in ℓ × ℓ. Abschnitte erhaltenen Bereiche entsprechen den jeweiligen Speicherelementen. Daher werden zum Abtasten eines Einzelbilds die gleichen Adressen an alle Speicherele­ mente angelegt und die Adressen aufeinanderfolgend von "0" an aufgestuft. Da die Adressen der Speicherelemente die Spalten- und Zeilenadressen sind, werden diese zuerst beide auf "0" gesetzt, wonach dann die Spaltenadresse von "0" an bis zu der letzten Adresse aufgestuft wird. Danach wird die Zeilenadres­ se aufgestuft, wonach dann wieder die Spaltenadresse von "0" an bis zu der letzten Adresse aufgestuft wird. Dies wird für den Zugriff zu allen Speicherelementen wiederholt.It will be an example of those to be applied to the storage elements  Query addresses explained. By dividing one Single image in ℓ × ℓ. Sections obtained correspond to areas the respective storage elements. Therefore, to be scanned of a single picture the same addresses to all memory elements elements and the addresses consecutively from "0" incremented. Since the addresses of the storage elements and row addresses, they are both both set to "0" then the column address from "0" to the last address is upgraded. Then the row address level, after which the column address of "0" up to the last address. This is for repeated access to all storage elements.

Es wird nun ein konkreteres Beispiel für die Verarbeitung zur Drehung eines Bilds beschrieben.There will now be a more concrete example of processing for Rotation of an image described.

Es wird nachstehend ein Verfahren erläutert, nach welchem bei dem gleichzeitigen Abruf einer Vielzahl von Blöcken eines ursprünglichen Bilds die Daten aus diesen Blöcken parallel eingegeben, parallel verarbeitet und parallel ausgegeben werden, wobei die Ausgabe nach einer Verarbeitung zur Drehung um Winkel von 0°, 90°, 180° und 270° erfolgt.A method is explained below, according to which the simultaneous retrieval of a plurality of blocks of one original image the data from these blocks in parallel entered, processed in parallel and output in parallel the output after processing for rotation at angles of 0 °, 90 °, 180 ° and 270 °.

Die Fig. 25 zeigt das in Blöcke unterteilte ursprüngliche Bild in einem Zustand, der erreicht wird, wenn ein Bereich von 256 × 256 Bildelementen in Blöcke aus jeweils 4 × 4 Bildelementen unterteilt ist. Fig. 25 shows the original image divided into blocks in a state which is achieved when an area of 256 x 256 picture elements is divided into blocks of 4 x 4 picture elements each.

Die Fig. 26 zeigt einen Zustand, der erreicht wird, wenn das ursprüngliche Bild in Blockeinheiten um 90° entgegen dem Uhrzeigersinn gedreht wird. Die Fig. 27 zeigt einen Zustand, der erreicht wird, wenn das ursprüngliche Bild in Bildelemen­ teeinheiten innerhalb eines jeden Blocks um 90° entgegen dem Uhrzeigersinn gedreht wird. Fig. 26 shows a state which is achieved when the original image is rotated 90 ° counterclockwise in block units. Fig. 27 shows a state that is achieved when the original image is rotated counterclockwise by 90 degrees in image element units within each block.

Die Fig. 28 und 29 zeigen die Relativlagen der Bildelemente in den jeweiligen Blöcken des in Fig. 25 dargestellten ur­ sprünglichen Bilds bzw. des in Fig. 27 gezeigten gedrehten Bilds. In den Bildern gemäß Fig. 25 und 26 sind die Relativ­ lagen der Bildelemente in den jeweiligen Blöcken gleich. Wenn dies in der in Fig. 28 gezeigten Form dargestellt wird, ergibt sich durch das Schwenken der jeweiligen Bildelemente in einem jeden Block um 90° entgegen dem Uhrzeigersinn der in Fig. 29 dargestellte Zustand. FIGS. 28 and 29 show the relative positions of the pixels in the respective blocks of the shown in FIG. Ur sprünglichen image or the rotated image shown in Fig. 27 25. In the images shown in FIG. 25 and 26 are the relative positions of the image elements in the respective blocks equal. If this is shown in the form shown in FIG. 28, the state shown in FIG. 29 results from the pivoting of the respective picture elements in each block by 90 ° counterclockwise.

Zum Erzielen eines durch Drehen des ursprünglichen Bilds um 90° entgegen dem Uhrzeigersinn erzeugten Bilds wird das in Fig. 25 dargestellte ursprüngliche Bild hinsichtlich der Zusammenhänge zwischen den Blöcken zu der in Fig. 26 gezeig­ ten Anordnung aufbereitet, wonach dann die Bildelemente in den jeweiligen Blöcken von der in Fig. 28 gezeigten relativen Anordnung auf die in Fig. 29 gezeigte Anordnung verändert werden.In order to obtain an image produced by rotating the original image by 90 ° counterclockwise, the original image shown in FIG. 25 is processed with regard to the relationships between the blocks to the arrangement shown in FIG. 26, and then the picture elements in the respective blocks may be changed from the relative arrangement shown in FIG. 28 to the arrangement shown in FIG. 29.

Die Fig. 30 ist eine Blockdarstellung eines Beispiels für eine Schaltungsanordnung für das Ausführen einer Folge der vorstehend beschriebenen Verarbeitungen. Mit 1601 und 1602 sind Bildspeicher für das Speichern aller in den Fig. 25 bis 29 gezeigten Bildelemente ursprünglicher Bilder bezeichnet, wobei der Bildspeicher 1601 zur Eingabe und der Bildspeicher 1602 zur Ausgabe dient. Mit 1603 ist eine arithmetische bzw. Rechenschaltung mit einer Verarbeitungsschaltung für das Verarbeiten jeweils parallel ausgelesener Bildelementedaten- Posten. Es ist für einen jeden Block eine Verarbeitungsschal­ tung vorgesehen, so daß die Daten aus den Blöcken jeweils in eine entsprechende der Verarbeitungsschaltungen eingegeben werden, wonach die verarbeiteten Daten an jeweils entspre­ chende ausgangsseitige Blöcke abgegeben werden. Mit 1604 ist eine Blockdatenwählschaltung bezeichnet, deren Einzelheiten in der Fig. 31 dargestellt sind. Mit 1605 ist eine Schaltung für die Ausgabe von Adressen bezeichnet, die als "Innenblock­ adressen" die abzurufenden Stellen in den Blöcken des Einga­ be-Bildspeichers bestimmen (Eingabeadressengenerator). Mit 1606 ist eine Schaltung für die Ausgabe von Adressen bezeich­ net, die als Innenblockadressen die anzuwählenden Stellen in den Blöcken des Ausgabe-Bildspeichers bestimmen. Mit 1607 ist eine Steuerschaltung für das Steuern der Schaltungen 1604, 1605 und 1606 in Abhängigkeit von dem Drehwinkel bezeichnet. Fig. 30 is a block diagram of an example of a circuit arrangement for executing a sequence of the processes described above. 251 and 1602 designate image memories for storing all image elements of original images shown in FIGS. 25 to 29, image memory 1601 being used for input and image memory 1602 for output. With 1603 is an arithmetic or arithmetic circuit with a processing circuit for processing picture element data items which are respectively read out in parallel. A processing circuit is provided for each block, so that the data from the blocks are each input to a corresponding one of the processing circuits, after which the processed data are output to respective output blocks. 1604 denotes a block data selection circuit, the details of which are shown in FIG. 31. 1605 denotes a circuit for the output of addresses which, as "inner block addresses", determine the positions to be called up in the blocks of the input image memory (input address generator). 1606 denotes a circuit for the output of addresses which, as inner block addresses, determine the positions to be selected in the blocks of the output image memory. 1607 denotes a control circuit for controlling circuits 1604 , 1605 and 1606 as a function of the angle of rotation.

Die Blockdatenwählschaltung 1604 ist gemäß Fig. 31 durch Wähler gebildet, deren Anzahl gleich der Anzahl der Blöcke, nämlich bei diesem Ausführungsbeispiel 64 ist. Ein jeder Wähler entspricht einem jeweiligen Block des ausgangsseitigen Speichers. Ein Wähler, der einem nachstehend als Block (i, j) bezeichneten Block in der i-ten Zeile und j-ten Spalte des ausgangsseitigen Speichers entspricht, empfängt Daten aus vier Blöcken (i, j), (m - j + 1, i), (m - j + 1, m - j + 1) und (j, m - j + 1) des eingangsseitigen Speichers. Hierbei bedeutet m, daß der eingangsseitige Speicher und der ausgangsseitige Speicher beide aus m × m Blöcken bestehen. Dieses Ausführungsbeispiel wird unter der Annahme beschrieben, daß m = 8 gilt. Ferner gilt 1 ≦ i ≦ m und 1 ≦ j ≦ m.The Blockdatenwählschaltung 1604 according to Fig. 31 formed by voters whose number is equal to the number of blocks, namely, in this embodiment Example 64. Each selector corresponds to a respective block of the output memory. A selector corresponding to a block in the i-th row and j-th column of the output memory, hereinafter referred to as block (i, j), receives data from four blocks (i, j), (m-j + 1, i ), (m - j + 1, m - j + 1) and (j, m - j + 1) of the input memory. Here, m means that the input-side memory and the output-side memory both consist of m × m blocks. This embodiment is described on the assumption that m = 8 holds. Furthermore, 1 ≦ i ≦ m and 1 ≦ j ≦ m.

Wenn das ursprüngliche Bild um 0° entgegen dem Uhrzeigersinn gedreht werden soll, steuert die Steuerschaltung 1607 die Blockdatenwählschaltung 1604 in der Weise, daß jeder Wähler (i, j) abgibt. Auf gleichartige Weise steuert die Steuer­ schaltung 1607 die Blockdatenwählschaltung 1604 derart, daß für eine Drehung um 90° entgegen dem Uhrzeigersinn (j, m - j + 1) gewählt wird, für eine Drehung um 180° entgegen dem Uhrzei­ gersinn (m - j + 1, m - j + 1) gewählt wird und für eine Drehung um 270° entgegen dem Uhrzeigersinn (m - j + 1, i) gewählt wird. Auf diese Weise wird eine der Darstellung in den Fig. 25 bis 27 entsprechende Umsetzung bzw. Drehung herbeigeführt. When the original image is to be rotated 0 ° counterclockwise, the control circuit 1607 controls the block data selection circuit 1604 so that each selector (i, j) outputs. Similarly, the control circuit 1607 controls the block data selection circuit 1604 such that a counterclockwise rotation (j, m - j + 1) is selected for a 90 ° rotation and a counterclockwise rotation (m - j + for a 180 ° rotation) 1, m - j + 1) is selected and for a rotation by 270 ° counterclockwise (m - j + 1, i) is selected. In this way, an implementation or rotation corresponding to the illustration in FIGS. 25 to 27 is brought about.

Die Steuerschaltung 1607 steuert die Innenblockadressen der Adressenausgabeschaltungen bzw. Adressengeneratoren 1605 und 1606. Wenn ein Block n × n Bildelemente enthält und eine Aus­ gabe an ein Bildelement an einer Stelle (k, ℓ) in diesem Block erfolgen soll, wird für die Ausgabe bei einer Drehung des ursprünglichen Bilds um 0° entgegen dem Uhrzeigersinn die Innenblockadresse für den eingangsseitigen Block auf (k, ℓ) gesteuert. Auf gleichartige Weise wird die Adresse für eine Drehung um 90° auf (ℓ, n - k + 1), für eine Drehung um 180° auf (n - k + 1, n - ℓ + 1) und für eine Drehung um 270° auf (n - ℓ + 1, k) gesteuert. Bei dem beschriebenen Ausführungsbeispiel gilt n = 4. Dies kann beispielsweise dadurch erfolgen, daß als Schal­ tung 1605 eine Nachschlagetabelle gemäß Fig. 32 und als Schaltung 1606 ein Aufwärtszähler gemäß Fig. 33 verwendet wird. Umgekehrt ist es natürlich auch möglich, den Zähler nach Fig. 33 als Schaltung 1605 und die Nachschlagetabelle nach Fig. 32 als Schaltung 1606 zu verwenden. Auf diese Weise kann eine Umsetzung bzw. Drehung bewerkstelligt werden, die einer solchen von Fig. 25 auf Fig. 27 (oder von Fig. 28 auf Fig. 29) entspricht.The control circuit 1607 controls the inner block addresses of the address output circuits or address generators 1605 and 1606 . If a block contains n × n picture elements and an output is to be made to a picture element at one point (k, ℓ) in this block, the inner block address for the input side is used for the output when the original picture is rotated counterclockwise by 0 ° Block controlled on (k, ℓ). In the same way, the address is set to (ℓ, n - k + 1) for a 90 ° rotation, (n - k + 1, n - ℓ + 1) for a 180 ° rotation and for 270 ° rotation controlled to (n - ℓ + 1, k). In the described embodiment, n = 4. This can be done, for example, by using a look-up table as shown in FIG. 32 as circuit 1605 and an up counter as shown in FIG. 33 as circuit 1606 . Conversely, it is of course also possible to use the counter according to FIG. 33 as circuit 1605 and the look-up table according to FIG. 32 as circuit 1606 . In this way, a conversion or rotation can be accomplished which corresponds to that from FIG. 25 to FIG. 27 (or from FIG. 28 to FIG. 29).

Aus der Fig. 30 ist ersichtlich, daß gemäß Fig. 34 die Block­ datenwählschaltung natürlich auch an dem Ausgang der Rechen­ schaltung angeordnet werden kann. In diesem Fall wird das Ausgangssignal einer jeden Verarbeitungsschaltung der Rechen­ schaltung in jeden der vier Wähler der Blockdatenwählschal­ tung eingegeben. In anderer Hinsicht ist die Anordnung völlig gleich der in Fig. 30 gezeigten.From Fig. 30 it can be seen that, according to Fig. 34, the block data selection circuit can of course also be arranged at the output of the computing circuit. In this case, the output of each processing circuit of the arithmetic circuit is input to each of the four selectors of the block data selection circuit. In other respects, the arrangement is entirely the same as that shown in FIG. 30.

Bei dem vorstehend beschriebenen Ausführungsbeispiel werden mehrere Posten von Bilddaten an der Drehung entsprechenden Stellengleichzeitig aufgenommen, wodurch eine schnelle Verar­ beitung möglich wird und die Drehung des Bilds mittels einer klein ausgelegten Schaltung bewerkstelligt werden kann. In the embodiment described above multiple items of image data corresponding to the rotation Recorded at the same time, which means that processing is quick processing is possible and the rotation of the image by means of a small-scale circuit can be accomplished.  

Nachstehend wird nun ein Ausführungsbeispiel ergänzend be­ schrieben.An exemplary embodiment will now be described below in addition wrote.

Wenn die den k × ℓ Speicherelementen zugeordneten Adressen in der Aufeinanderfolge von der Adresse 0 bis zu einer Endadres­ se auf die vorstehend beschriebene Weise abgerufen werden, werden aus den jeweiligen k × ℓ. Speicherelementen die Bilddaten aus jedem der Bereiche ausgegeben, die jeweils 1/(k × ℓ) des Vollbilds entsprechen. Betrachtet man nur ein einziges Bild­ element, so wird das Bild eines einem einzelnen Bereich entsprechenden Teilbereichs aufeinanderfolgend in horizonta­ ler und vertikaler Richtung abgefragt und ausgelesen. Falls dies bei der herkömmlichen Verarbeitung eines Bilds angewandt wird, das aufeinanderfolgend über ein Einzelbild hinweg hori­ zontal und vertikal abgetastet wird, kann eine Verarbeitungs­ geschwindigkeit erreicht werden, die k × ℓ-mal so groß wie die herkömmliche ist. Da darüberhinaus der behandelte Bildbe­ reich kleiner wird, werden auch die Zeilenpuffer und derglei­ chen kleiner. Infolgedessen kann die Prozessoreinheit 2 auf einfache Weise als Matrixprozessor aufgebaut sein. Dies wird nachstehend ausführlich beschrieben.If the addresses assigned to the k × ℓ memory elements are retrieved in the sequence from address 0 to an end address in the manner described above, the respective k × ℓ. Storage elements output the image data from each of the areas, each corresponding to 1 / (k × ℓ) of the frame. If one considers only a single image element, the image of a partial area corresponding to a single area is successively queried and read out in the horizontal and vertical directions. If this is applied to the conventional processing of an image that is successively scanned horizontally and vertically across a frame, a processing speed can be achieved that is k × ℓ times as large as the conventional one. In addition, since the treated image area becomes smaller, the line buffers and the like also become smaller. As a result, the processor unit 2 can be constructed in a simple manner as a matrix processor. This is described in detail below.

OrtsfrequenzfilterungSpatial frequency filtering

Gemäß den vorangehenden Ausführungen werden die Bilddaten aus den k × ℓ Speicherelementen 1b aufeinanderfolgend in die Pro­ zessoreinheit 2 eingegeben, die während des aufeinanderfol­ genden Abfragens für das Auslesen des Speichers die Raum- bzw. Ortsfrequenzfilterung ausführt. Obgleich dies erst nach­ folgend beschrieben wird, enthält die Prozessoreinheit 2 Puffer für eine Vielzahl von horizontalen Linien mit einer Kapazität für einen rechteckigen Bereich, in welchem einzelne Prozessorelemente, die die Bestandteile der Prozessoreinheit sind, jeweils einem einzelnen der durch die Unterteilung gebildeten k × ℓ Bereiche entsprechen. Nach der zweidimensionalen Raum- bzw. Ortsfrequenzfilterung werden die sich ergeben­ den Daten ausgangsseitig aufeinanderfolgend durch einen Abruf eingeschrieben, der mit dem eingangsseitigen Abruf zum Lesen identisch ist. Dieses Ausführungsbeispiel wird nun ausführ­ lich beschrieben.According to the foregoing, the image data from the k × ℓ memory elements 1 b are successively input into the processor unit 2 , which performs the spatial or spatial frequency filtering for the readout of the memory during the successive query. Although this will only be described after the following, the processor unit 2 contains buffers for a plurality of horizontal lines with a capacity for a rectangular area, in which individual processor elements, which are the components of the processor unit, each have a single one of the k × ℓ formed by the division Areas correspond. After the two-dimensional spatial or spatial frequency filtering, the resulting data are successively written in on the output side by a call which is identical to the call on the input side for reading. This embodiment will now be described in detail.

Gemäß den Fig. 35 bis 38 ist ein Einzelbild in 2 × 2 Bereiche unterteilt, während die Speicherelemente 1b, nämlich insge­ samt vier Speicherelemente als 2 × 2-Matrix angeordnet sind. In diesem Fall wird der leseseitige Bildspeicher derart ausgele­ sen, daß gemäß Fig. 35 die Bereiche gleichzeitig in horizon­ taler und vertikaler Richtung abgetastet werden. Da jedoch das Bild dem Speicher auf die vorangehend angeführte Weise zugeordnet ist, werden dabei die Speicheradressen in der Weise abgerufen, daß die Vertikaladresse von 0 bis zu der Endadresse jedesmal dann um "1" aufgestuft wird, wenn die Horizontaladresse von 0 bis zu der Endadresse aufgestuft worden ist, was im Hinblick auf alle Speicheradressen wieder­ holt wird.Referring to FIGS. 35 to 38 a single frame in 2 x 2 areas is divided while the memory elements 1 b, namely IMP EXP including four memory elements than 2 × 2 matrix are arranged. In this case, the image memory on the read side is read out in such a way that, according to FIG. 35, the areas are scanned simultaneously in the horizontal and vertical directions. However, since the image is assigned to the memory in the above-mentioned manner, the memory addresses are fetched in such a manner that the vertical address is incremented by "1" from 0 to the end address each time the horizontal address is from 0 to the end address has been upgraded, which is repeated with regard to all memory addresses.

Speicherelemente R1, R2, R3 und R4 nach Fig. 37, die den leseseitigen Bildspeicher bilden, speichern bei diesem Aus­ führungsbeispiel jeweils die Bilder von Bereichen 1, 2, 3 bzw. 4 nach Fig. 35.Storage elements R1, R2, R3 and R4 according to FIG. 37, which form the read-side image memory, store the images of areas 1 , 2 , 3 and 4 according to FIG. 35 in this exemplary embodiment.

Von einem durch eine Steuerschaltung gesteuerten Adressenge­ nerator werden als an den leseseitigen Bildspeicher angelegte Adressen an die Speicherelemente R1 bis R4 die gleichen Adressen angelegt. Diese Adressen werden auf die vorangehend beschriebene Weise abgetastet bzw. abgerufen. Die aus den Speicherelementen R1 bis R4 ausgelesenen Bilddaten werden jeweils in Prozessorelemente PE1 bis PE4 eingegeben. Die Prozessorelemente PE1 bis PE4 nehmen als Eingangssignale aus der Steuerschaltung erforderliche Steuersignale auf, die den Inhalt der Verarbeitung bestimmen. Mittels der Prozessorelemente PE1 bis PE4 wird die Raum- bzw. Ortsfrequenzfilterung ausgeführt. Da jedoch die Prozessorelemente PE1 bis PE4 je­ weils Zeilenpuffer enthalten, werden von dem Adressengenera­ tor Horizontaladressen zugeführt. Alternativ können die Hori­ zontaladressen in den Prozessorelementen PE1 bis PE4 erzeugt werden.From an address set controlled by a control circuit nerators are applied to the read-side image memory Addresses to the memory elements R1 to R4 are the same Addresses created. These addresses are preceded by the described or retrieved. The from the Image elements read out from memory elements R1 to R4 each entered in processor elements PE1 to PE4. The Processor elements PE1 to PE4 take out as input signals the control circuit required control signals that the Determine the content of the processing. By means of the processor elements  PE1 to PE4 is the spatial or spatial frequency filtering executed. However, since the processor elements PE1 to PE4 each Because line buffers are included, the address genera Tor supplied horizontal addresses. Alternatively, the Hori zontal addresses generated in the processor elements PE1 to PE4 become.

Die durch die Prozessorelemente PE1 bis PE4 der Ortsfrequenz­ filterung unterzogenen Ausgangsdaten werden in jeweilige Speicherelemente W1 bis W4 eingeschrieben, die den schreib­ seitigen Bildspeicher bilden. Dabei werden an die Speicher­ elemente W1 bis W4 des schreibseitigen Bildspeichers die gleichen Adressen angelegt. Die angelegten Adressen werden jedoch durch das Verzögern der an den leseseitigen Speicher angelegten Adressen gebildet. Das Ausmaß der Verzögerung entspricht dem Ausmaß der Verzögerung der Ziel-Bildelemente in den Zeilenpuffern, die in der Prozessoreinheit für die Ortsfrequenzfilterung vorgesehen sind.The by the processor elements PE1 to PE4 of the spatial frequency Filtered output data are divided into respective Memory elements W1 to W4 are written, which write form image storage. In doing so, the memory elements W1 to W4 of the image memory on the write side same addresses. The addresses created are however, by delaying the read-only memory created addresses. The extent of the delay corresponds to the amount of delay of the target picture elements in the line buffers that are in the processor unit for the Spatial frequency filtering are provided.

Mit der vorstehend beschriebenen Anordnung kann die Ortsfre­ quenzfilterung hinsichtlich nahezu des ganzen. Raums in dem Vollbild ausgeführt werden. Da jedoch die in Fig. 36 durch Schräglinien sowie durch Schattierung dargestellten Teilbe­ reiche die Umfangsränder der Bereiche sind, bleiben diese Teilbereiche unverarbeitet, da die zweidimensionale Maske für die Ortsfrequenzfilterung übersteht. Zum Auffüllen der unbe­ arbeiteten Bereiche bewirkt die Steuerschaltung an dem Adres­ sengenerator das Erzeugen von Adressen für die durch die Schräglinien dargestellten Teilbereiche, die schattierten Teilbereiche und den den Umfang entsprechenden Speicherbe­ reich. Die Bilddaten werden aufeinanderfolgend aus dem lese­ seitigen Bildspeicher aufgenommen, wonach mittels einer Zen­ traleinheit in der Steuerschaltung die Ortsfrequenzfilterung ausgeführt wird. Die Ergebnisse der Filterung werden in den schreibseitigen Bildspeicher eingeschrieben. Hinsichtlich der Adressen steuert die Steuerschaltung den Adressengenerator in der Weise, daß der schreibseitige Bildspeicher genau wie der leseseitige Bildspeicher adressiert wird. Bei dem vorstehend beschriebenen Ausführungsbeispiel wird eine gewisse Verarbei­ tungszeit infolge des Umstands benötigt, daß die Ortsfre­ quenzfilterung unter Verwendung der in Fig. 36 durch die Schräglinien dargestellten Teilbereiche von der Zentralein­ heit in der Steuerschaltung ausgeführt wird. Da jedoch das Verhältnis der Schräglinien-Teilbereiche und der schattierten Teilbereiche in Fig. 36 zu dem ganzen Vollbild sehr klein ist, ist die Einwirkung auf die Verarbeitungszeit nahezu vernachlässigbar.With the arrangement described above, the spatial frequency filtering can be carried out with respect to almost the whole. Room in the full screen. However, since the partial areas shown in FIG. 36 by oblique lines and by shading are the peripheral edges of the areas, these partial areas remain unprocessed since the two-dimensional mask for spatial frequency filtering survives. To fill the unprocessed areas, the control circuit on the address generator causes the generation of addresses for the partial areas represented by the oblique lines, the shaded partial areas and the memory area corresponding to the extent. The image data are recorded successively from the image memory on the read side, after which the spatial frequency filtering is carried out by means of a central unit in the control circuit. The results of the filtering are written into the image memory on the write side. With regard to the addresses, the control circuit controls the address generator in such a way that the write-side image memory is addressed in exactly the same way as the read-side image memory. In the above-described embodiment, a certain processing time is required due to the fact that the spatial frequency filtering using the portions shown in Fig. 36 by the oblique lines is carried out by the central unit in the control circuit. However, since the ratio of the slant line portions and the shaded portions in Fig. 36 to the whole frame is very small, the effect on the processing time is almost negligible.

Es wird nun ein Ausführungsbeispiel beschrieben, bei dem diese Zentraleinheit-Verarbeitung nicht ausgeführt wird.An embodiment will now be described in which this CPU processing is not carried out.

Die Fig. 39 ist eine vereinfachte Blockdarstellung dieses Ausführungsbeispiels. Mit der Ausnahme, daß das ganze Einzel­ bild in 3 × 3 Bereiche unterteilt ist und daß eine Datensteuer­ schaltung vorgesehen ist, ist dieses Ausführungsbeispiel mit dem vorangehend beschriebenen Ausführungsbeispiel identisch. Daher wird das Ausführungsbeispiel nur unter Betrachtung der Unterschiede ausführlich beschrieben. FIG. 39 is a simplified block diagram of this embodiment. With the exception that the entire single image is divided into 3 × 3 areas and that a data control circuit is provided, this embodiment is identical to the embodiment described above. The exemplary embodiment is therefore only described in detail when considering the differences.

Bei dem Ausführungsbeispiel ist zwar ein Einzelbild in 3 × 3 Bereiche unterteilt, jedoch wird auch als allgemein gültiger Fall ein Fall beschrieben, bei dem ein Einzelbild in m × n Bereiche unterteilt ist, wobei m und n ganze Zahlen sind.In the exemplary embodiment, a single image is in 3 × 3 Areas are divided, however, is also considered to be more general Case described a case in which a single image in m × n Ranges is divided, where m and n are integers.

Die Fig. 38(a) und (b) zeigen, wie ein ganzes, in 3 × 3 Berei­ che unterteiltes Einzelbild abgetastet wird.The Fig. 38 (a) and (b) show how a whole, che in 3 × 3 preparation divided frame is scanned.

Für einen jeden durch die Unterteilung eines Einzelbilds erhaltenen Bereich wird ein vergrößerter Bereich gemäß der Darstellung durch die gestrichelten Linien gebildet, wobei das Ausgangssignal für den vergrößerten Bereich in ein jewei­ liges Prozessorelement (1, 1) bis (3, 3) eingegeben wird. Ein vergrößerter Bereich erhält ein Format, mit dem die nach Fig. 35 nach der Ortsfrequenzfilterung unbearbeitet verbliebenen. Teilbereiche überdeckt sind, nämlich insbesondere z. B. die unbearbeiteten Teilbereiche an den Grenzen zwischen den Be­ reichen (1, 1), (1, 2), (2, 1) und (2, 2) im Hinblick auf den Bereich (1, 1). Ferner wird auch hinsichtlich eines beliebigen Bereichs (k, ℓ) (mit 1 ≦ k ≦ m und 1 ≦ ℓ ≦ n) der Bereich derart vergrößert, daß die unbearbeiteten Teilbereiche an den Grenzen des Bereichs (k, ℓ) zu den Bereichen (k, ℓ + 1), (k + 1, ℓ) und (k + 1, ℓ + 1) bei der Ortsfrequenzfilterung mit erfaßt werden.For each area obtained by dividing a frame, an enlarged area as shown by the broken lines is formed, and the output signal for the enlarged area is input to a respective processor element ( 1 , 1 ) to ( 3 , 3 ). An enlarged area is given a format with which those which have remained unprocessed according to FIG. 35 after the spatial frequency filtering. Sub-areas are covered, namely in particular z. B. the unprocessed subareas at the borders between the loading areas ( 1 , 1 ), ( 1 , 2 ), ( 2 , 1 ) and ( 2 , 2 ) with regard to the area ( 1 , 1 ). Furthermore, with regard to any area (k, ℓ) (with 1 ≦ k ≦ m and 1 ≦ ℓ ≦ n), the area is enlarged in such a way that the unprocessed partial areas at the borders of the area (k, ℓ) to the areas (k , ℓ + 1), (k + 1, ℓ) and (k + 1, ℓ + 1) are also included in the spatial frequency filtering.

Im Falle einer 3 × 3-Glättungsverarbeitung mittels der Prozes­ soreinheit bleibt beispielsweise ein Bildelement an dem rech­ ten Rand eines jeden Bereichs (k, ℓ) unverarbeitet. In dem angrenzenden Bereich (k, ℓ + 1) bleibt ein Bildelement an dem linken Rand unverarbeitet. Daher wird der Bereich (k, ℓ) um insgesamt zwei Bildelemente nach rechts erweitert. Gleicher­ maßen ist eine Vergrößerung um zwei Bildelemente nach unten erforderlich.In the case of 3 × 3 smoothing processing using the processes sensor unit remains, for example, a picture element on the computer th edge of each area (k, ℓ) unprocessed. By doing adjacent area (k, ℓ + 1) remains a picture element on the left margin unprocessed. Therefore, the area (k, ℓ) around a total of two picture elements extended to the right. the same is an enlargement by two picture elements downwards required.

Die vergrößerten Bereiche (1, 1) bis (3, 3) werden unter Abta­ stung gemäß der Darstellung in Fig. 38(a) und (b) in die Prozessorelemente (1, 1) bis (3, 3) eingegeben. Es wird nun kurz die Adressierung der Speicherelemente beschrieben. Die Steuerschaltung steuert den Adressengenerator in der Weise, daß die Horizontaladresse aufeinanderfolgend von 0 bis zu der Maximaladresse aufgestuft wird. Danach wird die Adresse von 0 bis zu der Adresse des nach rechts vergrößerten Bereichs aufgestuft. Falls die Erweiterung um zwei Bildelemente nach rechts erfolgt, werden die Adressen 0 und 1 ausgegeben, wonach als Horizontaladresse die Adresse 0 ausgegeben wird. Als nächstes wird die Vertikaladresse von 0 ausgehend aufgestuft und die Abtastung der Horizontaladresse wiederholt. Dann wird die Vertikaladresse erneut aufgestuft und die Abta­ stung der Horizontaladresse wiederholt. Nach der Wiederholung dieser Vorgänge ist die Vertikaladresse die maximale Adresse und die Abtastung der Horizontaladresse abgeschlossen, wo­ raufhin die Vertikaladresse dann auf 0 gebracht wird und die vorstehenden Vorgänge bis zu der Adresse des nach unten vergrößerten Bereichs wiederholt werden. Hierbei übermittels die Datensteuerschaltung die Daten in einer derartigen Auf­ einanderfolge, daß die Ausgangssignale aus den vergrößerten Bereichen (1, 1) bis (3, 3) den Prozessorelementen (1, 1) bis (3, 3) zugeordnet werden.The enlarged portions (1, 1) to (3, 3) are Abta stung as shown in Fig. 38 (a) and (b) in the processor elements (1, 1) to (3, 3) is entered. The addressing of the memory elements will now be briefly described. The control circuit controls the address generator so that the horizontal address is sequentially incremented from 0 to the maximum address. After that, the address is incremented from 0 to the address of the area enlarged to the right. If two picture elements are expanded to the right, addresses 0 and 1 are output, after which address 0 is output as the horizontal address. Next, the vertical address is incremented from 0 and the scanning of the horizontal address is repeated. Then the vertical address is upgraded again and the scanning of the horizontal address is repeated. After repetition of these operations, the vertical address, the maximum address and the scanning of the horizontal address are completed, whereupon the vertical address is then brought to 0 and the above operations are repeated up to the address of the area enlarged downwards. The data control circuit transmits the data in such a sequence that the output signals from the enlarged areas ( 1 , 1 ) to ( 3 , 3 ) are assigned to the processor elements ( 1 , 1 ) to ( 3 , 3 ).

Als nächstes wird die in Fig. 40 gezeigte Datensteuerschal­ tung beschrieben. Im allgemein gültigen Fall ist die k-te Schaltung aus m × n 4 : 1-Wählern gebildet.Next, the data control circuit shown in Fig. 40 will be described. In the generally applicable case, the kth circuit is formed from m × n 4: 1 selectors.

Das an ein Prozessorelement (1, 1) abgegebene Ausgangssignal eines Wählers (1, 1) ist eines der aus den Speicherelementen (1, 1), (1, 2), (2, 1) und (2, 2) eingegebenen Signale. Auf ein Wählsteuersignal aus der Steuerschaltung hin gibt ein jeder Wähler eines der angelegten vier Eingangssignale ab. Die bei der Ausgabe an die Prozessorelemente (k, ℓ) an den Wählern anliegenden Eingangssignale kommen aus den Speicherelementen (k, ℓ), (k, ℓ + 1), (k + 1, ℓ) und (k + 1, ℓ + 1). Falls jedoch hinsicht­ lich der Bereichsunterteilungen m und n für beliebige Werte k und ℓ die Werte k + 1 und ℓ + 1 die entsprechenden Werte m und n überschreiten, werden dementsprechend an dem Eingang keine oder Leerdaten eingegeben.The to a processor element (1, 1) output signal output of a selector (1, 1) is one of the (2 2) input signals from the memory elements (1, 1), (1, 2), (2, 1) and. In response to a selection control signal from the control circuit, each selector outputs one of the four input signals applied. The input signals applied to the selectors at the output to the processor elements (k, ℓ) come from the memory elements (k, ℓ), (k, ℓ + 1), (k + 1, ℓ) and (k + 1, ℓ + 1). However, if the values k + 1 and ℓ + 1 exceed the corresponding values m and n with regard to the range subdivisions m and n for any values k and ℓ, no or empty data are accordingly entered at the input.

Es wird nun das von der Steuerschaltung abgegebene Wähl­ steuersignal für die Wähler beschrieben. Während der Zeit, während die Steuerschaltung den Adressengenerator zur Aufstu­ fung der Horizontaladresse von 0 bis zu der Endadresse und danach zu der Abtastung von 0 bis zu der Adresse des vergrößerten Bereichs steuert, wie es vorstehend beschrieben ist, nämlich der Bereich (k, ℓ + 1) überdeckt wird, wird das Ausgangssignal (k, ℓ + 1) gewählt und ausgegeben. Ferner wird während der Zeit, während der die Vertikaladresse von 0 bis zu der Endadresse aufgestuft wird und danach von 0 bis zu der Adresse des vergrößerten Bereichs abgetastet wird (die bei­ spielsweise bei der 3 × 3-Ortsfrequenzfilterung "1" ist), näm­ lich bei der Überlappung des Bereichs (k, ℓ) mit dem Bereich (k + 1, ℓ) das Ausgangssignal (k + 1, ℓ) gewählt und ausgegeben. Wenn beides der Fall ist, nämlich der vergrößerte Bereich den Bereich (k + 1, ℓ + 1) überlappt, wird mittels der Steuerschaltung das Ausgangssignal des Speicherelements (k + 1, ℓ + 1) gewählt. Dies wird ergänzend hinsichtlich einer Datensteuerschaltung zwischen der Prozessoreinheit und dem schreibseitigen Bild­ speicher erläutert. Die Schaltungsanordnung ist derjenigen nach Fig. 40 gleichartig. Die Eingangssignale für die Aus­ gabe des Ausgangssignals eines Wählers an ein Speicherelement (k, ℓ) sind jedoch in diesem Fall die Signale (k, ℓ), (k, ℓ - 1), (k - 1, ℓ) und (k - 1, ℓ - 1). Falls die vergrößerten Bereiche der in Fig. 38(a) gezeigten Art nicht die unbearbeiteten Teilberei­ che der drei Bereiche links, unterhalb und unten links in bezug auf den Bereich (k, ℓ) überdecken, sondern die Bereiche in der Weise vergrößert sind, daß nur die oberen, unteren, rechten und linken unbearbeiteten Teilbereiche innerhalb des Bereichs (k, ℓ) erfaßt sind, ist eine Datensteuerschaltung zwischen der Prozessoreinheit und dem schreibseitigen Bild­ speicher nicht erforderlich. In diesem Fall müssen für das Wähler-Ausgangssignal (k, ℓ) die Eingangssignale der Daten­ steuerschaltung zwischen dem leseseitigen Bildspeicher und der Prozessoreinheit die Signale (k, ℓ), (k - 1, ℓ - 1), (k - 1, ℓ), (k - 1, ℓ + 1), (k, ℓ - 1), (k, ℓ + 1), (k + 1, ℓ - 1), (k + 1, ℓ) und (k + 1, ℓ + 1) sein. Dies ist leicht aus der Fig. 38(b) zu ersehen. Ergän­ zend ist hinzuzufügen, daß die Wähler die Daten aus neun in den vergrößerten Bereichen enthaltenen Bereichen, nämlich neun Speicherelementen wählen müssen und diese Daten in das Prozessorelement (k, ℓ) der Prozessoreinheit eingeben müssen. Es ist eine Datensteuerschaltung für die Steuerung von k × ℓ Wählern erforderlich.There will now be described the dial control signal output from the control circuit for the voters. During the time that the control circuit controls the address generator to step the horizontal address from 0 to the end address and then to scan from 0 to the address of the enlarged area as described above, namely the area (k, ℓ + 1) is covered, the output signal (k, ℓ + 1) is selected and output. Further, during the time that the vertical address is incremented from 0 to the end address and then scanned from 0 to the address of the enlarged area (which is "1" in 3 × 3 spatial frequency filtering, for example) if the range (k, ℓ) overlaps with the range (k + 1, ℓ), the output signal (k + 1, ℓ) is selected and output. If both are the case, namely the enlarged area overlaps the area (k + 1, ℓ + 1), the output signal of the memory element (k + 1, ℓ + 1) is selected by means of the control circuit. This is additionally explained with regard to a data control circuit between the processor unit and the write-side image memory. The circuit arrangement is similar to that of FIG. 40. In this case, however, the input signals for the output of the output signal of a selector to a memory element (k, ℓ) are the signals (k, ℓ), (k, ℓ - 1), (k - 1, ℓ) and (k - 1, ℓ - 1). If the enlarged areas of the type shown in Fig. 38 (a) do not cover the unprocessed partial areas of the three areas on the left, below and below left with respect to the area (k, ℓ), but the areas are enlarged in such a way that only the upper, lower, right and left unprocessed partial areas within the area (k, ℓ) are detected, a data control circuit between the processor unit and the writing image memory is not required. In this case, for the selector output signal (k, ℓ), the input signals of the data control circuit between the read-side image memory and the processor unit must have the signals (k, ℓ), (k - 1, ℓ - 1), (k - 1, ℓ ), (k - 1, ℓ + 1), (k, ℓ - 1), (k, ℓ + 1), (k + 1, ℓ - 1), (k + 1, ℓ) and (k + 1 , ℓ + 1). This is easily seen from Fig. 38 (b). It should be added that the voters must select the data from nine areas contained in the enlarged areas, namely nine memory elements, and must enter this data into the processor element (k, ℓ) of the processor unit. A data control circuit is required to control k × ℓ voters.

Als nächstes werden die von der Datensteuerschaltung abgege­ benen Daten in die jeweiligen Prozessorelemente eingegeben, die die Prozessoreinheit bilden. Die Prozessorelemente (1, 1) bis (3, 3) enthalten Zeilenpuffer für mehrere Zeilen der er­ weiterten Bereiche. Nach der Ortsfrequenzfilterung werden die Daten über die in Fig. 39 nicht dargestellte Datensteuer­ schaltung an die Speicherelemente (1, 1) bis (3, 3) abgegeben, die den schreibseitigen Bildspeicher bilden. Die Datensteuer­ schaltung korrigiert auch die Ergebnisse der Ortsfrequenzfil­ terung, wenn ein Bereich ein vergrößerter Teilbereich ist. Hierbei sind die an die jeweiligen Speicherelemente des schreibseitigen Bildspeichers von dem Adressengenerator ange­ legten Adressen identisch. In bezug auf die an den leseseiti­ gen Bildspeicher angelegten Adressen sind jedoch die an den schreibseitigen Bildspeicher angelegten Adressen um eine Zeitspanne verzögert, die einer Verzögerung in den Prozessor­ elementen entspricht. Selbst wenn dabei in den vergrößerten Bereichen die Ortsfrequenzfilterung vorgenommen wird, werden die Ränder der vergrößerten Bereiche im wesentlichen keiner Ortsfrequenzfilterung unterzogen. Beispielsweise werden bei einer Verarbeitung zur 3 × 3-Glättung oder dergleichen die Ausgangsbereiche um die Breite eines Bildelements gleichzei­ tig nach links, nach rechts, nach oben und nach unten kleiner als die vergrößerten Bereiche. Der schreibseitige Bildspei­ cher wird nur dann eingeschaltet, wenn Daten für einen Be­ reich ausgegeben werden, der der Ortsfrequenzfilterung unter­ zogen wurde.Next, the data output from the data control circuit is input into the respective processor elements that constitute the processor unit. The processor elements ( 1 , 1 ) to ( 3 , 3 ) contain line buffers for several lines of the extended areas. After the spatial frequency filtering, the data are output via the data control circuit, not shown in FIG. 39, to the memory elements ( 1 , 1 ) to ( 3 , 3 ) which form the image memory on the write side. The data control circuit also corrects the results of the spatial frequency filtering when an area is an enlarged partial area. Here, the addresses applied to the respective memory elements of the write-side image memory by the address generator are identical. With respect to the addresses applied to the read-side image memory, however, the addresses applied to the write-side image memory are delayed by a time period which corresponds to a delay in the processor elements. Even if spatial frequency filtering is carried out in the enlarged areas, the edges of the enlarged areas are essentially not subjected to spatial frequency filtering. For example, in processing for 3 × 3 smoothing or the like, the output areas are made smaller by the width of one picture element to the left, right, up and down at the same time than the enlarged areas. The image memory on the write side is only switched on when data are output for an area that has been subjected to spatial frequency filtering.

Wenn bei der Ortsfrequenzfilterung mittels eines Prozessor­ elements die Breite des Ausgabebereichs oben, unten, links und rechts verringert wird, wird der Bereich auf das gleiche Format wie dasjenige des Bereichs (k, ℓ) zurückgeführt, wel­ cher dem Speicherelement (k, ℓ) des schreibseitigen Bildspei­ chers entspricht. Daher ist keine Datensteuerschaltung zwi­ schen der Prozessoreinheit und dem schreibseitigen Bildspei­ cher erforderlich.If in spatial frequency filtering using a processor elements the width of the output area at the top, bottom, left and decreased right, the area is the same  Format returned as that of the range (k, ℓ), wel cher the memory element (k, ℓ) of the picture-side image memory chers corresponds. Therefore, there is no data control circuit between the processor unit and the picture-side image memory required.

Die bei diesem Ausführungsbeispiel die Prozessoreinheit bil­ denden Prozessorelemente werden nun ausführlich beschrieben.The bil in this embodiment the processor unit The processor elements are now described in detail.

Die Fig. 41 ist ein Blockschaltbild, das den Aufbau eines 3 × 3-Glättungs-Raumfilters bzw. Ortsfrequenzfilters gemäß einem Beispiel zeigt. Die aus einem leseseitigen Speicherele­ ment über die Datensteuerschaltung an ein Prozessorelement angelegten Bilddaten werden in einen Zwischenspeicher 2604 und einen Zeilenpuffer 2601 eingegeben. Die Ausgangssignale des Zeilenpuffers 2601 werden in einen Zwischenspeicher 2607 und einen Zeilenpuffer 2602 eingegeben. Die Ausgangssignale des Zeilenpuffers 2602 werden in einen Zwischenspeicher 2610 eingegeben. Den Zeilenpuffern 2601 und 2602 werden eine Ad­ resse aus eine Zähler 2603 und eine Adresse aus einem (nicht gezeigten) Adressenzähler gemäß der Darstellung in Fig. 39 zugeführt. Der Zähler 2603 erhält aus der Steuerschaltung ein Bildübertragungstaktsignal bei jedem zweiten horizontalen Bildelement des vergrößerten Bereichs, um damit die Adresse aufzustufen, sowie als Eingangssignal aus der Steuerschaltung ein Löschsignal bei jeder horizontalen Zeile, wodurch die Adresse gelöscht wird. Die Zeilenpuffer sind für das gleich­ zeitige Lesen von Eingangssignalen und Schreiben von Aus­ gangssignalen ausgebildet.The Fig. 41 is a block diagram according to an example of the structure of a 3 × 3 smoothing filter room or spatial frequency filter. The image data applied to a processor element from a read-side memory element via the data control circuit are input into a buffer memory 2604 and a line buffer 2601 . The output signals of the line buffer 2601 are input into a buffer 2607 and a line buffer 2602 . The output signals of line buffer 2602 are input to a buffer 2610 . The line buffers 2601 and 2602 are supplied with an address from a counter 2603 and an address from an address counter (not shown) as shown in FIG. 39. The counter 2603 receives an image transfer clock signal from the control circuit at every second horizontal picture element of the enlarged area to thereby increment the address, and as an input signal from the control circuit a delete signal at every horizontal line, whereby the address is deleted. The line buffers are designed for simultaneous reading of input signals and writing of output signals.

Als Ergebnis dieser Funktion werden Bilddaten von bestimmten Stellen auf drei zusammenhängenden horizontalen Linien in die Zwischenspeicher 2604, 2607 und 2610 eingegeben. Zwischen­ speicher 2604 bis 2612 sind durch D-Flip-Flops gebildet. Durch die Bildübertragungstaktsignale aus der Steuerschaltung werden die Ausgangssignale der Zwischenspeicher 2604, 2607 und 2610 über die Zwischenspeicher 2605, 2608 und 2611 auf­ einanderfolgend an die Zwischenspeicher 2606, 2609 und 2612 abgegeben.As a result of this function, image data from specific locations on three contiguous horizontal lines are entered into buffers 2604 , 2607 and 2610 . Between memories 2604 to 2612 are formed by D flip-flops. The output signals of buffers 2604 , 2607 and 2610 are successively output to buffers 2606 , 2609 and 2612 via buffers 2605 , 2608 and 2611 by the image transfer clock signals from the control circuit .

Die Ausgangssignale der Zwischenspeicher 2604 bis 2612 sind zu diesem Zeitpunkt 3 × 3 zusammenhängende Bildelemente in einem Einzelbild. Diese Ausgangssignale werden an einen Ad­ dierer 2613 angelegt, der die gesamte Anzahl der Bildelemente berechnet bzw. zusammenfaßt. Das Ergebnis wird in einen Divi­ dierer 2614 eingegeben, der das Eingangssignal mit 1/9 multi­ pliziert, um damit die 3 × 3-Glättung auszuführen. Das sich ergebende Ausgangssignal des Dividierers 2614 wird an das schreibseitige Speicherelement oder die mit dem schreibseiti­ gen Speicherelement verbundene Datensteuerschaltung abgege­ ben.The output signals of the latches 2604 to 2612 at this point in time are 3 × 3 contiguous picture elements in a single picture. These output signals are applied to an adder 2613 which calculates or summarizes the total number of picture elements. The result is input to a divider 2614 which multiplies the input signal by 1/9 to perform 3 × 3 smoothing. The resulting output signal of the divider 2614 is output to the write-side memory element or the data control circuit connected to the write-side memory element.

Es wurde zwar der Ortsfrequenzfilterungsvorgang beschrieben, jedoch können selbstverständlich die die Prozessoreinheit bildenden Prozessorelemente jeweils durch Prozessoren wie Zentraleinheiten gebildet sein.Although the spatial frequency filtering process has been described, however, of course, the processor unit forming processor elements each by processors such as Central units should be formed.

Ferner kann selbstverständlich der Randbereich eines Einzel­ bilds, nämlich der in Fig. 36 gezeigte schattierte bzw. graue Teilbereich bei beiden Ortsfrequenzfilterungs-Prozessen nicht der Ortsfrequenzfilterung unterzogen werden.Furthermore, the edge region of a single image, namely the shaded or gray partial region shown in FIG. 36, cannot of course be subjected to the spatial frequency filtering in the case of both spatial frequency filtering processes.

Da gemäß den vorangehenden Ausführungen ein Einzelbild in m × n Bereiche unterteilt ist, ist der Bildbereich verkleinert, der einem einzelnen Speicherelement zugeordnet ist. Der dieser Erfordernis entsprechende Ortsfrequenzfilter-Prozessor hat nur einen Zeilenpuffer für einen kleinen Bereich. Hierdurch wird es möglich, einen Prozessor mit hohem Integrationsgrad einzusetzen, der eine Vielzahl von Puffern enthält. Als Pro­ zessor kann eine Zentraleinheit (CPU) oder eine Zentraleinheit mit einem internen Schreib/Lesespeicher (RAM) bzw. Ar­ beitsspeicher eingesetzt werden. Da m × n Bereiche gleichzeitig der Ortsfrequenzfilterung unterzogen werden, ist die Verar­ beitungszeit beträchtlich verkürzt.Since, according to the preceding explanations, a single image in m × n Areas is divided, the image area is reduced is associated with a single storage element. This one Requires corresponding spatial frequency filter processor just a line buffer for a small area. hereby it becomes possible to have a processor with a high degree of integration use that contains a variety of buffers. As a pro processor can be a central processing unit (CPU) or a central processing unit  with an internal read / write memory (RAM) or Ar be used memory. Since m × n areas at the same time the spatial frequency filtering is the Verar processing time considerably reduced.

Bei den vorstehend beschriebenen Ausführungsbeispielen wird eine Anordnung aus m × n Speicherelementen verwendet, was das gleichzeitige Abrufen und Verarbeiten von m × n Bildelementen ermöglicht, so daß eine schnelle Bildverarbeitung erreicht wird.In the above-described embodiments uses an array of m × n memory elements, what that simultaneous retrieval and processing of m × n picture elements enables so that fast image processing is achieved becomes.

Ferner ist durch das Verwenden einer Anordnung für ein Sys­ tem, in dem m × n zusammenhängende Bildelemente in einem Ein­ zelbild m × n Speicherelementen derart zugeordnet sind, daß die Bildelemente gleichzeitig abgerufen werden können, oder für ein System, in dem m × n zufallsverteilte Bildelemente in einem Einzelbild m × n Speicherelementen in der Weise zugeordnet sind, daß diese Bildelemente gleichzeitig abgerufen werden können, die zweidimensionale Filterung kleiner zusammenhän­ gender Räume in ersterem Fall und eine Verarbeitung zum Bewegen bzw. Versetzen in letzterem Fall erleichtert. Auf diese Weise ist der Speicherzugriff für das Ausführen der für die Bildverarbeitung geeigneten Prozesse ermöglicht.Furthermore, by using an arrangement for a sys tem, in which m × n contiguous picture elements in one zelbild m × n memory elements are assigned such that the Image elements can be called up simultaneously, or for a system in which m × n randomly distributed picture elements in one Single image m × n memory elements assigned in the manner are that these picture elements are retrieved simultaneously can, the two-dimensional filtering is smaller gender spaces in the former case and processing to Moving or moving in the latter case easier. On this is the memory access for executing the for the image processing enables suitable processes.

Ferner ist bei den vorstehend beschriebenen Ausführungsbei­ spielen infolge der k × ℓ-Speicherelemente-Anordnung anstelle des Abrufens aller Speicherelemente das Maskieren ermöglicht. D. h., bei der Ausführung einer Verarbeitung wie der Ortsfre­ quenzfilterung läuft die Verarbeitung häufig derart ab, daß die Verarbeitungsergebnisse Blöcke kleinen Formats wie des Formats 1 × 1 werden. Es wird jedoch eine Verarbeitung möglich, bei der wie bei den vorstehend beschriebenen Ausführungsbei­ spielen das Format der Speicherelementeanordnung und das Format des abgerufenen Bilds voneinander verschieden sind. Furthermore, in the above-described embodiments play as a result of the k × ℓ memory element arrangement instead retrieval of all memory elements enables masking. That is, when processing such as the local fre frequency filtering, the processing often proceeds in such a way that the processing results blocks of small format like the Format 1 × 1. However, processing becomes possible in the embodiment as described above play the format of the memory element array and that Format of the retrieved image are different from each other.  

Auf diese Weise wird mit den Ausführungsbeispielen eine Bild­ verarbeitungseinrichtung geschaffen, die die Bildverarbeitung durch die parallele Verarbeitung in einer endlichen kleinen Anzahl von Prozessoren mit hoher Geschwindigkeit ausführt.In this way, with the exemplary embodiments, an image processing device created that image processing through parallel processing in a finite small Number of processors running at high speed.

Anhand der Zeichnung wird nun die Verarbeitung zur Raum- bzw. Ortsfrequenzfilterung weiter beschrieben. Im folgenden wird ein Prozeß beschrieben, bei dem die jeweils rechteckigen Bereichen von m × n Bildelementen eines ursprünglichen Bilds entsprechenden Bilddaten in einem Bildspeicher gleichzeitig abgerufen werden, die Bilddaten von einer Matrixprozessorein­ heit aus m × n Prozessorelementen aufgenommen werden, von denen jedes einem entsprechenden Bildelement zugeordnet wird, durch die Matrixprozessoreinheit die Ortsfrequenzfilterung ausge­ führt wird und die Ergebnisse ausgegeben werden.Based on the drawing, the processing for room or Spatial frequency filtering further described. The following will described a process in which the respective rectangular Areas of m × n picture elements of an original picture corresponding image data in an image memory at the same time the image data are retrieved from a matrix processor unit from m × n processor elements, of which each is assigned to a corresponding picture element by the matrix processor unit out the spatial frequency filtering leads and the results are output.

Die Fig. 42 zeigt die Zuordnungen zwischen einem einem ur­ sprünglichen Bild entsprechenden Eingabeblock 281, Bildele­ menten 281a in dem Eingabeblock, einer Matrixprozessoreinheit 282, Prozessorelementen 282a in der Matrixprozessoreinheit, einem Ausgabeblock 283 und Bildelementen 283a in dem Ausgabe­ block. Hierbei gilt m = n = 4. Infolgedessen werden 16 Bild­ elementedaten des eingangsseitigen Speichers gleichzeitig abgerufen und von der Matrixprozessoreinheit aufgenommen. Die Matrixprozessoreinheit besteht aus 16 Prozessorelementen. Die Matrixprozessoreinheit führt die Ortsfrequenzfilterung in einem Gebiet von 3 Bildelemente × 3 Bildelemente aus und gibt die Ergebnisse an einen aus 2 Bildelemente × 2 Bildelemente, nämlich insgesamt 4 Bildelementen gebildeten Block des aus­ gangsseitigen Speichers ab. Fig. 42 shows the mapping between a one ur sprünglichen image corresponding input block 281, Figu elements 281 a in the input block, a matrix processing unit 282, processor elements 282 a in the matrix processor unit, an output block 283 and picture elements 283 a in the output block. Here, m = n = 4. As a result, 16 picture element data of the input-side memory are called up simultaneously and recorded by the matrix processor unit. The matrix processor unit consists of 16 processor elements. The matrix processor unit carries out spatial frequency filtering in an area of 3 picture elements × 3 picture elements and outputs the results to a block of the output-side memory formed from 2 picture elements × 2 picture elements, namely a total of 4 picture elements.

Die Prozessorelemente in der Matrixprozessoreinheit sind entsprechend den 4 × 4 Bildelementen zu einer Quadratischen gitterartigen 4 × 4-Matrix angeordnet. Die Prozessorelemente sind aufeinanderfolgend in Zeilenrichtung und Spaltenrichtung numeriert. Gemäß Fig. 43 können die Prozessorelemente vonein­ ander durch ihre Bezeichnung mit der Zeilennummer und der Spaltennummer unterschieden werden.The processor elements in the matrix processor unit are arranged corresponding to the 4 × 4 picture elements to form a square grid-like 4 × 4 matrix. The processor elements are numbered sequentially in the row direction and column direction. Referring to FIG. 43, the processor elements can be distinguished by their vonein other designation with the row number and the column number.

Die Ortsfrequenzfilterung besteht darin, daß unter Verwendung einer Koeffizienten-Matrix der beispielsweise in Fig. 44 gezeigten Art das Produkt von Koeffizienten für jeweils ent­ sprechende Bildelemente gebildet wird und die Summe in eine einer mittigen Stelle entsprechende Speicherstelle ausgegeben wird. Dies wird anhand der Fig. 42 beschrieben. Im einzelnen wird der durch die Prozessorelemente (1, 1), (1, 2), (1, 3), (2, 1), (2, 2), (2, 3), (3, 1), (3, 2) und (3, 3) gebildete 3 × 3- Bereich einem Rechenvorgang mittels des Prozessorelements (2, 2) unterzogen. Aus den anderen Prozessorelementen werden die Daten aufgenommen und es wird die Ortsfrequenzfilterung ausgeführt. Auf gleichartige Weise erfolgt die Ortsfrequenz­ filterung an dem durch die Prozessorelemente (1, 2), (1, 3), (1, 4), (2, 2), (2, 3), (2, 4), (3, 2), (3, 3) und (3, 4) gebildeten 3 × 3-Bereich durch das Prozessorelement (2, 3) und an dem durch die Prozessorelemente (2, 1), (2, 2), (2, 3), (3, 1), (3, 2), (3, 3), (4, 1), (4, 2) und (4, 3) durch das Prozessorelement (3, 2). Ferner wird der durch die Prozessorelemente (2, 2), (2, 3), (2, 4), (3, 2), (3, 3), (3, 4), (4, 2), (4, 3) und (4, 4) gebildete 3 × 3-Bereich der Ortsfrequenzfilterung durch das Prozessorelement (3, 3) unterzogen.The spatial frequency filtering consists in that, using a coefficient matrix of the type shown, for example, in FIG. 44, the product of coefficients for each corresponding picture element is formed and the sum is output in a memory location corresponding to a central location. This is described with reference to FIG. 42. Specifically, the processor elements ( 1 , 1 ), ( 1 , 2 ), ( 1 , 3 ), ( 2 , 1 ), ( 2 , 2 ), ( 2 , 3 ), ( 3 , 1 ), ( 3 , 2 ) and ( 3 , 3 ) formed 3 × 3 area subjected to a computing process by means of the processor element ( 2 , 2 ). The data are recorded from the other processor elements and the spatial frequency filtering is carried out. In a similar manner, the spatial frequency filtering is carried out on the processor elements ( 1 , 2 ), ( 1 , 3 ), ( 1 , 4 ), ( 2 , 2 ), ( 2 , 3 ), ( 2 , 4 ), ( 3 , 2 ), ( 3 , 3 ) and ( 3 , 4 ) 3 × 3 area formed by the processor element ( 2 , 3 ) and on the by the processor elements ( 2 , 1 ), ( 2 , 2 ), ( 2 , 3 ), ( 3 , 1 ), ( 3 , 2 ), ( 3 , 3 ), ( 4 , 1 ), ( 4 , 2 ) and ( 4 , 3 ) through the processor element ( 3 , 2 ). Furthermore, the processor elements ( 2 , 2 ), ( 2 , 3 ), ( 2 , 4 ), ( 3 , 2 ), ( 3 , 3 ), ( 3 , 4 ), ( 4 , 2 ), ( 4 , 3 ) and ( 4 , 4 ) formed 3 × 3 area of the spatial frequency filtering by the processor element ( 3 , 3 ).

Die Prozessorelemente (2, 2), (2, 3), (3, 2) und (3, 3) für die Ortsfrequenzfilterung enthalten eine Schaltung der in Fig. 45 gezeigten Art, durch die die Ortsfrequenzfilterung ausgeführt wird. In der Schaltung nach Fig. 45 werden die Daten aus den jeweils acht angrenzenden Prozessorelementen mittels Addie­ rern 221 bis 227 addiert und dann mittels einer Schiebeschal­ tung bzw. eines Schieberegisters 228 mit 1/8 multipliziert. Ein Subtrahierer 229 berechnet die Differenz zwischen dem Ausgangssignal des Schieberegisters 228 und einem Wert für das Ziel-Bildelement, der von dem Prozessorelement mit dieser Schaltung für sich bzw. direkt aufgenommen und zuerst mittels einer Verzögerungsschaltung 231 verzögert wird. Ein Addierer 230 addiert die von dem Subtrahierer 229 abgegebene Differenz mit dem von dem Prozessorelement direkt aufgenommenen Wert nach dessen Verzögerung mittels einer Verzögerungsschaltung 232. Auf diese Weise wird ein 4 × 4-Bildelementebereicheinge­ geben und ein Ausgangssignal in einen 2 × 2-Bildelementebereich ausgegeben.The processor elements ( 2 , 2 ), ( 2 , 3 ), ( 3 , 2 ) and ( 3 , 3 ) for the spatial frequency filtering contain a circuit of the type shown in Fig. 45 by which the spatial frequency filtering is carried out. In the circuit of Fig. 45, the data is HEADPHONES from the eight adjacent processor elements by means of Addie adds 221-227 and then processing by means of a sliding formwork and a shift register 228 multiplied by 1/8. A subtractor 229 calculates the difference between the output signal of the shift register 228 and a value for the target picture element, which is taken up by the processor element with this circuit itself or directly and is first delayed by means of a delay circuit 231 . An adder 230 adds the difference output by the subtractor 229 with the value directly received by the processor element after its delay by means of a delay circuit 232 . In this way, a 4 × 4 picture element area is input and an output signal is output to a 2 × 2 picture element area.

Bei dieser Beschreibung ist die Ortsfrequenzfilterung eines 3 × 3-Bildelementebereichs mit einem 4 × 4-Bildelementebereich als Eingabe und einem 2 × 2-Bildelementebereich als Ausgabe erläutert. Es besteht jedoch keine Einschränkung auf diese Anordnung. Vielmehr ist es offensichtlich, daß die Ortsfre­ quenzfilterung für einen p × q-Bildelementebereich mit m ≧ k + p und n ≧ ℓ + q mit einer Eingabe eines m × n-Bildelementebereichs und einer Ausgabe eines k × ℓ-Bildelementebereichs vorgenommen werden kann. Außerdem besteht hinsichtlich der Koeffizienten für die Raum- bzw. Ortsfrequenzfilterung keine Einschränkung auf die in der Fig. 44 gezeigten. Es muß nur ein Prozessor­ element mit einer Verarbeitungsschaltung eingesetzt werden, die einer Koeffizientenmatrix entspricht.In this description, spatial frequency filtering of a 3 × 3 picture element area with a 4 × 4 picture element area as input and a 2 × 2 picture element area as output is explained. However, there is no limitation to this arrangement. Rather, it is obvious that the spatial frequency filtering for a p × q picture element area with m ≧ k + p and n ≧ ℓ + q can be carried out with an input of an m × n picture element area and an output of a k × ℓ picture element area. In addition, with regard to the coefficients for spatial or spatial frequency filtering, there is no restriction to those shown in FIG. 44. It is only necessary to use a processor element with a processing circuit which corresponds to a coefficient matrix.

Während nach dem Stand der Technik die Verarbeitung für ein jedes einzelne Ausgangsbildelement wiederholt wird, werden bei dem beschriebenen Ausführungsbeispiel die Ergebnisse der Verarbeitung für mehrere Ausgangsbildelemente im gleichen Zyklus ausgegeben, so daß eine sehr hohe Verarbeitungsge­ schwindigkeit erreicht werden kann.While processing according to the prior art for a every single output pixel is repeated in the described embodiment, the results of Processing for multiple output pixels in the same Cycle output, so that a very high processing area speed can be reached.

Durch die gleichzeitige Eingabe zusammenhängender, eng be­ nachbarter Bildelemente an dem Eingang kann die Ortsfrequenz­ filterung in einem Zyklus ausgeführt werden, so daß es mög­ lich ist, die Ergebnisse der Ortsfrequenzfilterung für eine Vielzahl von Ausgabebildelementen gleichzeitig auszugeben.By entering coherent, closely related Neighboring picture elements at the entrance can be the spatial frequency filtering can be carried out in one cycle so that it is possible is the results of spatial frequency filtering for a  Output a plurality of output pixels simultaneously.

Durch das gleichzeitige Abrufen und Verarbeiten einer Viel­ zahl eingegebener Daten ist die Verarbeitungsgeschwindigkeit im Vergleich zu dem jeweils einzelnen Abrufen der Daten erhöht. Darüberhinaus kann eine Verarbeitung (Ortsfrequenz­ filterung, Farbverarbeitung usw.), bei der der Zusammenhang zwischen gleichzeitig abgerufenen Daten durch einen Datenaus­ tausch zwischen Prozessorelementen in Rechnung zu ziehen ist, durch einen einzigen Eingangsdatenabruf ausgeführt werden.By simultaneously retrieving and processing a lot Number of data entered is the processing speed compared to the individual retrieval of the data elevated. In addition, processing (spatial frequency filtering, color processing, etc.) where the context between simultaneously retrieved data by a data exchange between processor elements is to be taken into account, be carried out by a single input data retrieval.

Bilddaten-Erweiterung und -ReduktionImage data expansion and reduction

Bei nachstehend beschriebenen weiteren Ausführungsbeispielen der Bildverarbeitungseinrichtung wird in der Prozessoreinheit 2 eine Bildvergrößerung vorgenommen. Es besteht jedoch keine Einschränkung hinsichtlich der Anzahl k × ℓ oder K × L der Speicherelemente, die den leseseitigen Bildspeicher und den schreibseitigen Bildspeicher bilden. Obwohl bei diesem Aus­ führungsbeispiel nur die Erweiterung bzw. Vergrößerung be­ schrieben ist, wird auf gleiche Weise eine Reduktion bzw. Verkleinerung erzielt. Weiterhin besteht keine Einschränkung hinsichtlich der Blockformate k' × ℓ' oder K × L' der leseseitig und schreibseitig abgerufenen Bildelemente. Es ist jedoch vorauszusetzen, daß bei einer Bildvergrößerung mittels der Prozessoreinheit 2 das durch die Vergrößerung des leseseitig abgerufenen Formats k' × ℓ' erhaltene Format den Bedingungen K' < αk' und L' < βℓ' genügen muß, wobei α und β die maximalen Faktoren der Vergrößerung in Längsrichtung 60895 00070 552 001000280000000200012000285916078400040 0002003845004 00004 60776und Querrichtung sind.In further exemplary embodiments of the image processing device described below, an image enlargement is carried out in the processor unit 2 . However, there is no restriction on the number k × ℓ or K × L of the memory elements that form the read-side image memory and the write-side image memory. Although only the expansion or enlargement is described in this exemplary embodiment, a reduction or reduction is achieved in the same way. Furthermore, there is no restriction with regard to the block formats k '× ℓ' or K × L 'of the picture elements called up on the read side and on the write side. However, it must be assumed that when the image is enlarged by means of the processor unit 2, the format obtained by enlarging the format k '× ℓ' retrieved on the read side must meet the conditions K '<αk' and L '<βℓ', where α and β are the maximum Longitudinal magnification factors are 60895 00070 552 001000280000000200012000285916078400040 0002003845004 00004 60776 and transverse direction.

Als nächstes wird die Vergrößerung beschrieben. Gemäß Fig. 46 enthält eine Prozessoreinheit 312 einen Adressengenerator 313 und eine Rechenschaltung 315 und wird unter der Steuerung durch eine Steuerschaltung 311 betrieben. Der Adressengenerator 313 erzeugt eine Anfangsadresse für einen eingangsseiti­ gen Bildspeicher 316, der für die Berechnung erforderliche Eingangsbilddaten enthält. Ein jeweiliges Prozessorelement in der Rechenschaltung 315 berechnet aus den eingegebenen Bild­ daten Ausgangsbilddaten für die Ausgabe an einen ausgangssei­ tigen Bildspeicher 317. Die Rechenschaltung 315 nimmt alle Bilddaten eines Datenbereichs mit der Anfangsadresse als ein Rand des Bildbereichs auf. Ein jedes Prozessorelement wählt aus den aufgenommenen Daten die der Stelle in dem ausgangs­ seitigen Bildspeicher 317 entsprechenden Eingangsbilddaten für die Ausgabe der Verarbeitungsergebnisse aus, führt eine zweidimensionale Interpolation aus und gibt die Ergebnisse ab.Next, the enlargement will be described. According to Fig. 46 312 includes a processor unit an address generator 313 and a computing circuit 315 and is operated under the control of a control circuit 311. The address generator 313 generates a start address for an input image memory 316 which contains input image data required for the calculation. A respective processor element in the arithmetic circuit 315 calculates output image data for output to an output-side image memory 317 from the input image data. The arithmetic circuit 315 receives all image data of a data area with the start address as an edge of the image area. Each processor element selects the input image data corresponding to the position in the output image memory 317 for the output of the processing results from the recorded data, carries out a two-dimensional interpolation and outputs the results.

Dies wird etwas ausführlicher beschrieben. Für die Beschrei­ bung sei angenommen, daß die Prozessoreinheit 312 mit Prozes­ sorelementen für vier Spalten in einer Hauptabtastrichtung und vier Zeilen in einer Unterabtastrichtung, nämlich mit 16 Prozessorelementen ausgestattet ist. Der eingangsseitige Bildspeicher 316 gibt gleichzeitig an die Prozessoreinheit Daten für fünf Spalten in der Hauptabtastrichtung und fünf Zeilen in der Unterabtastrichtung, nämlich einen Datenbereich aus 25 Bildelementen ab. Welche Daten in dem Datenbereich aus 5 × 5 Bildelementen ausgegeben werden, wird durch den Adressen­ generator 313 bestimmt. Der Aufbau und die Funktion des Adressengenerators 313 werden nun anhand der Fig. 47 be­ schrieben. Der Adressengenerator 313 ist mit einer Hauptab­ tastrichtungs-Schaltung, die nachstehend als Hauptabtast­ schaltung 1 bezeichnet wird und die eine die Hauptabtastrich­ tung bestimmende Adresse aus den Adressen eines vorbestimmten 5 × 5-Bildelementebereichs abgibt, und mit einer Unterabtast­ richtungs-Schaltung aufgebaut, die nachstehend als Unterab­ tastschaltung 1 bezeichnet wird und die eine die Unterabtast­ richtung bestimmende Adresse aus den Adressen des vorbestimm­ ten 5 × 5-Bildelementebereichs abgibt. In einem Register 321 wird durch die Steuerschaltung 311 ein Wert voreingestellt, der das Vierfache des Kehrwerts des Vergrößerungsfaktors für die Hauptabtastrichtung ist. In einem Register 322 wird durch die Steuerschaltung 311 ein Wert voreingestellt, der das Vierfache des Kehrwerts des Vergrößerungsfaktors für die Unterabtastrichtung ist. Ein Zwischenspeicher 325 wird durch ein Betriebssynchronisierungssignal für die Unterabtastrich­ tung auf "0" gelöscht, wonach der Zwischenspeicher auf ein Betriebssynchronisierungssignal 327 für die Hauptabtastrich­ tung hin das Ausgangssignal eines Addierers 323 aufnimmt. Auf das Betriebssynchronisierungssignal 327 für die Hauptabtast­ richtung hin wird von dem Addierer 323 der in dem Register 321 eingestellte Wert mit einem in dem Zwischenspeicher 325 gespeicherten Wert addiert und das Ergebnis ausgegeben. In­ folgedessen wird durch die Synchronisierung der Funktion für die Hauptabtastrichtung der von dem Zwischenspeicher 325 abgegebene Wert stufenweise um einen Wert erhöht, der dem Vierfachen des Kehrwerts des Vergrößerungsfaktors für die Hauptabtastrichtung entspricht, wonach der Zwischenspeicher auf "0" gelöscht wird, sobald die Synchronisierung für die Unterabtastrichtung erfolgt. Das Register 322, ein Addierer 324 und ein Zwischenspeicher 326 arbeiten auf genau die gleiche Weise dann, wenn an die Stelle der Hauptabtastungs- Synchronisierung die Unterabtastungs-Synchronisierung sowie an die Stelle der Unterabtastungs-Synchronisierung eine Seitensynchronisierung tritt. Bei diesem Ausführungsbeispiel wird ein Signal, das einen 5 × 5-Bildelementebereich in dem eingangsseitigen Bildspeicher 316 bestimmt, in Abhängigkeit von den in den Zwischenspeichern 325 und 326 gespeicherten ganzzahligen Teilen gebildet. Entsprechend diesem Bestim­ mungssignal gibt der eingangsseitige Bildspeicher 316 die 25 Bildelementedaten für einen Bereich mit fünf Bildelementen in der Hauptabtastrichtung und fünf Bildelementen in der Unter­ abtastrichtung beginnend mit der vorangehend genannten Adres­ se aus. Hinsichtlich der Adressen für den ausgangsseitigen Bildspeicher 317 werden in der Hauptabtastrichtung die Adres­ sen für vier Bildelemente des ausgangsseitigen Bildspeichers 317 entsprechend der Hauptabtastungssynchronisierung und in der Unterabtastrichtung die Adressen für vier Bildelemente des Bildspeichers 317 entsprechend der Unterabtastungssyn­ chronisierung erhöht.This is described in somewhat more detail. For the description it is assumed that the processor unit 312 is equipped with processor elements for four columns in a main scanning direction and four lines in a sub-scanning direction, namely with 16 processor elements. The input image memory 316 simultaneously outputs to the processor unit data for five columns in the main scanning direction and five lines in the sub-scanning direction, namely a data area of 25 picture elements. The address generator 313 determines which data in the data area is output from 5 × 5 picture elements. The structure and function of the address generator 313 will now be described with reference to FIG. 47. The address generator 313 is constructed with a main scanning direction circuit, hereinafter referred to as a main scanning circuit 1 , which outputs an address determining the main scanning from the addresses of a predetermined 5 × 5 pixel area, and with a sub-scanning direction circuit, which follows is referred to as subsampling circuit 1 and outputs an address determining the subsampling direction from the addresses of the predetermined 5 × 5 pixel area. In a register 321 , the control circuit 311 presets a value which is four times the reciprocal of the magnification factor for the main scanning direction. In a register 322 , a value is preset by the control circuit 311 which is four times the reciprocal of the magnification factor for the sub-scanning direction. A latch 325 is cleared to an "0" by an operation sync signal for the sub-scan, after which the latch receives the output of an adder 323 upon an operation sync signal 327 for the main scan. In response to the operating synchronization signal 327 for the main scanning direction, the value set in the register 321 is added by the adder 323 to a value stored in the buffer memory 325 and the result is output. As a result, by synchronizing the function for the main scanning direction, the value output from the buffer 325 is gradually increased by a value which is four times the reciprocal of the magnification factor for the main scanning direction, after which the buffer is cleared to "0" as soon as the synchronization for the sub-scanning direction takes place. Register 322 , adder 324, and latch 326 operate in exactly the same way when sub-scan synchronization replaces main scan synchronization and page synchronization replaces sub-scan synchronization. In this embodiment, a signal defining a 5 × 5 pixel area in the input frame memory 316 is formed depending on the integer parts stored in the latches 325 and 326 . In accordance with this determination signal, the input frame memory 316 outputs the 25 picture element data for an area having five picture elements in the main scanning direction and five picture elements in the sub-scanning direction starting from the above address. With respect to the addresses for the output-side frame memory 317, the Adres be sen for four pixels of the output image memory 317 corresponding to the main scanning synchronization and in the sub-scanning the addresses for four picture elements of the image memory 317 is increased in accordance with the Unterabtastungssyn chronisation in the main scanning direction.

Von einem Adressenkorrekturteil 314 in der Prozessoreinheit 312 werden aus den eingegebenen 25 Bildelementedaten geeigne­ te vier Bildelementedaten gewählt und Adressenkorrektursig­ nale für das Anlegen eines Interpolationskoeffizienten für die Interpolation an die 16 Prozessorelemente in der Rechen­ schaltung 315 erzeugt.From an input correction part 314 in the processor unit 312 , suitable four picture element data are selected from the entered 25 picture element data and address correction signals for the application of an interpolation coefficient for the interpolation to the 16 processor elements in the computing circuit 315 are generated.

Die Fig. 48 zeigt den Aufbau der Prozessoreinheit 2 bzw. 312, in welcher mit 331 der anhand der Fig. 47 beschriebene Adres­ sengenerator 313 bezeichnet ist. Der Adressenkorrekturteil 314 enthält Abschnitte 332 und 332' aus Hauptabtastschaltun­ gen 2, 3 und 4 bzw. Unterabtastschaltungen 2, 3 und 4, die der Hauptabtastschaltung 1 bzw. der Unterabtastschaltung 1 gleichartig sind, die in Zusammenhang mit Fig. 47 beschrieben sind. Von den Hauptabtastungs-Registern 321 in den Hauptab­ tastschaltungen 2 bis 4 enthält das Register 321 in der Hauptabtastschaltung 2 einen Wert, der stets um den Kehrwert des Vergrößerungsfaktors für die Hauptabtastrichtung größer als der Wert in dem Register 321 der Hauptabtastschaltung 1 ist. Gleichermaßen enthält von den Registern 321 in den Schaltungen das Register in der Hauptabtastschaltung 3 einen größeren Wert als das Register in der Hauptabtastschaltung 2 und das Register in der Hauptabtastschaltung 4 einen größeren Wert als das Register in der Hauptabtastschaltung 3. Anderer­ seits sind die Werte in den Unterabtastungsregistern 322 in den Unterabtastschaltungen 2 bis 4 jeweils um den Kehrwert des Vergrößerungsfaktors für die Unterabtastrichtung größer, wobei der Wert in der Unterabtastschaltung 4 größer als derjenige in der Unterabtastschaltung 3 ist, der Wert in der Unterabtastschaltung 3 größer als derjenige in der Unterab­ tastschaltung 2 ist und der Wert in der Unterabtastschaltung 2 größer als derjenige in der Unterabtastschaltung 1 ist. Die Ausgangssignale der Hauptabtastschaltungen 2 bis 4 und der Unterabtastschaltungen 2 bis 4 werden jeweils als Signale herangezogen, die bestimmen, welche vier Bildelemente der 25 Bildelemente in dem eingegebenen Bereich zu wählen sind. Als Beispiel sei der Fall betrachtet, daß ein Vergrößerungsfaktor 2,5 für die Hauptabtastrichtung und ein Vergrößerungsfaktor 1,5 für die Unterabtastrichtung vorgesehen sind. Die Hauptab­ tastschaltung 1 zählt jedesmal bis 1,600 (= 4 × 1/2,5) hoch, während die Unterabtastschaltung 1 jeweils bis 2,666 (= 4 × 1/1,5) hochzählt, wobei die ganzzahligen Teile der Zähl­ stände in der Hauptabtastschaltung 1 und der Unterabtast­ schaltung 1 herangezogen werden und als Anfangsadressen für den Bereich aus 25 Bildelementen in den eingangsseitigen Bildspeicher 316 eingesetzt werden. Ferner wird der von der Hauptabtastschaltung 1 ausgegebene Dezimalbruchteil als Hilfskoeffizienten-Datenwert für die Hauptabtastrichtung für eine Spalte der Prozessormatrix, nämlich für die vier Prozes­ sorelemente (1, 1), (2, 1), (3, 1) und (4, 1) nach Fig. 48 einge­ setzt. Der Dezimalbruchteil aus der Unterabtastschaltung 1 wird als Hilfskoeffizient-Datenwert für die Unterabtastrich­ tung für eine Zeile der Prozessormatrix, nämlich für die vier Prozessorelemente (1, 1), (1, 2), (1, 3) und (1, 4) nach Fig. 48 eingesetzt. Die von den Hauptabtastschaltungen 2, 3 und 4 gezählten Größen unterscheiden sich voneinander jeweils um 0,4 (= 1/2,5), während sich die von den Unterabtastschaltungen 2, 3 und 4 gezählten Größen voneinander um jeweils 0,666 (= 1/1,5) unterscheiden. Die diese Zählstände speichernden Zwischenspeicher werden jedesmal hinsichtlich ihrer ganzzah­ ligen Teile gelöscht, während sie dagegen die Dezimalbruch­ teile aufaddieren. Die Hauptabtastschaltungen 2 bis 4 geben die ganzzahligen Teile und die Dezimalbruchteile an die Prozessorelemente in der zweiten bis vierten Spalte der Prozes­ sormatrix ab, während die Unterabtastschaltungen 2 bis 4 die ganzzahligen Teile und die Dezimalbruchteile an die Prozes­ sorelemente in der zweiten bis vierten Zeile der Prozessor­ matrix abgeben. Eine jede Prozessormatrix wählt vier Bildele­ mente aus den 25 Bildelementedaten aus dem eingangsseitigen Bildspeicher 316 in Abhängigkeit von den ganzzahligen Teilen der Daten, die in den entsprechenden Hauptabtastungs-Zwi­ schenspeichern 325 und den entsprechenden Unterabtastungs- Zwischenspeichern 326 gespeichert sind, führen dann die zwei­ dimensionale Interpolation mit einem von dem Dezimalbruchteil abhängigen Interpolationskoeffizienten aus und geben die Interpolationsergebnisse an den entsprechenden ausgangsseiti­ gen Bildspeicher 317 ab. Der ausgangsseitige Bildspeicher 317 wird immer unter Einsetzen eines 16-Bildelemente-Bereichs aus 4 × 4 Bildelementen als Einheit adressiert, wobei jeder Prozes­ soreinheit eines der 16 Bildelemente zugeordnet ist. FIG. 48 shows the structure of processor unit 2 or 312 , in which 331 denotes the address generator 313 described with reference to FIG. 47. The address correction part 314 includes sections 332 and 332 'of main scanning circuits 2 , 3 and 4 and sub-scanning circuits 2 , 3 and 4 , respectively, which are similar to the main scanning circuit 1 and the sub-scanning circuit 1 described in connection with FIG. 47. Of the main scanning registers 321 in the Hauptab 2 tastschaltungen to 4 includes the register 321 in the Hauptabtastschaltung 2 is a value which is always to the reciprocal of the magnification for the main scanning direction larger than the value in the register 321 of the Hauptabtastschaltung. 1 Similarly, of the registers 321 in the circuits, the register in the main scanning circuit 3 contains a larger value than the register in the main scanning circuit 2 and the register in the main scanning circuit 4 contains a larger value than the register in the main scanning circuit 3 . On the other hand, the values in the subsampling registers 322 in the subsampling circuits 2 to 4 are each larger by the reciprocal of the magnification factor for the subsampling direction, the value in the subsampling circuit 4 being larger than that in the subsampling circuit 3 , the value in the subsampling circuit 3 being larger than that in the Unterab sampling circuit 2, and the value is in the sub-sampling circuit 2 is larger than that in the sub-sampling. 1 The output signals of the main scanning circuits 2 to 4 and the sub-scanning circuits 2 to 4 are each used as signals which determine which four picture elements of the 25 picture elements in the input range are to be selected. As an example, consider the case that a magnification factor of 2, 5 for the main scanning direction and a magnification factor of 1, 5 are provided for the sub-scanning direction. The Hauptab sampling circuit 1 by one every time to 1.600 (= 4 × 1 / 2.5) high, while the sub-sampling circuit 1 in each case counts up to 2,666 (= 4 × 1 / 1.5), wherein the integer part of the count in the stands 1 Hauptabtastschaltung and the subsampling circuit 1 are used and are used as start addresses for the area of 25 picture elements in the input-side image memory 316 . Furthermore, the decimal fraction output from the main scanning circuit 1 is used as the auxiliary coefficient data for the main scanning direction for one column of the processor matrix, namely for the four processor elements ( 1 , 1 ), ( 2 , 1 ), ( 3 , 1 ) and ( 4 , 1 ) is inserted according to FIG. 48. The decimal fraction from the subsampling circuit 1 is used as the auxiliary coefficient data value for the subsampling device for one row of the processor matrix, namely for the four processor elements ( 1 , 1 ), ( 1 , 2 ), ( 1 , 3 ) and ( 1 , 4 ) Fig. 48 used. The sizes counted by the main scanning circuits 2 , 3 and 4 differ from each other by 0.4 (= 1 / 2.5), while the sizes counted by the sub-scanning circuits 2 , 3 and 4 differ from each other by 0.666 (= 1/1 , 5) differentiate. The intermediate memories storing these counts are deleted each time with regard to their integer parts, while they add up the fractional parts. The Hauptabtastschaltungen 2 to 4 giving the integer part and the decimal fractions to the processor elements in the second to fourth column of the Prozes sormatrix, while the Unterabtastschaltungen 2 to 4, the integer part and the decimal fractions of the Prozes sorelemente in the second to fourth rows of the processor submit matrix. Each processor matrix selects four picture elements from the 25 picture element data from the input picture memory 316 depending on the integer parts of the data stored in the corresponding main-scan latches 325 and the corresponding sub-scan latches 326 , then perform the two-dimensional interpolation with an interpolation coefficient dependent on the decimal fraction and output the interpolation results to the corresponding output-side image memory 317 . The output-side image memory 317 is always addressed using a 16-pixel area of 4 × 4 pixels as a unit, with each processor unit being assigned one of the 16 pixels.

Die Fig. 49 zeigt eine Wählschaltung, von denen jeweils eine in jedem Prozessorelement enthalten ist, nämlich eine Schal­ tung für das Wählen von vier Bildelementen aus 25 Bildelemen­ ten. Die Fig. 50 zeigt ein Beispiel für den Aufbau einer in Fig. 49 gezeigten Wählschaltung 720, die dabei aus Hauptab­ tastungs-Wählern 351 bis 355 und Unterabtastungs-Wählern 356 und 357 bestehend dargestellt ist. Die Fig. 51 zeigt ein Beispiel für den Aufbau eines jeweiligen Hauptabtastungs- oder Unterabtastungs-Wählers. Ein jeder Hauptabtastungs- oder Unterabtastungs-Wähler kann aus zwei Wählern 361 und 362 mit jeweils vier Eingängen und einem Ausgang aufgebaut sein. Hinsichtlich der ganzzahligen Teile aus der Hauptabtastschal­ tung 1 und der Unterabtastschaltung 1 werden immer an die Prozessorelemente einer jeden einzelnen Spalte und einer jeden einzelnen Zeile die Werte "0" ausgegeben. Infolgedessen wählt ein jedes Prozessorelement (i, j) ein I-tes, ein (I + 1)- tes, ein J-tes und ein (J + 1)-tes der vier Eingangssignale entsprechend einem Ausgangssignal (I, J) für die ganzzahligen Teile einer Hauptabtastschaltung i und einer Unterabtast­ schaltung j. Dadurch werden von dem Prozessorelement (i, j) als vier Bildelemente aus den 25 Bildelementen die Bildele­ mente (I, J), (I + 1, J), (I, J + 1) und (I + 1, J + 1) gewählt. FIG. 49 shows a selection circuit, one of which is contained in each processor element, namely a circuit for selecting four picture elements from 25 picture elements. FIG. 50 shows an example of the construction of a selection circuit shown in FIG. 49 720 , which is shown consisting of main scan selectors 351 to 355 and sub-scan selectors 356 and 357 . Fig. 51 shows an example of the structure of each main scan or sub-scan selector. Each main scan or sub-scan selector can be constructed from two selectors 361 and 362 , each having four inputs and one output. Regarding the integer parts from the main scanning circuit 1 and the sub-scanning circuit 1 , the values "0" are always output to the processor elements of each individual column and each individual row. As a result, each processor element (i, j) selects an I-th, an (I + 1) -th, a J-th and an (J + 1) -th of the four input signals corresponding to an output signal (I, J) for the integer parts of a main scanning circuit i and a sub-scanning circuit j. As a result, the processor elements (i, j) as four picture elements out of the 25 picture elements form the picture elements (I, J), (I + 1, J), (I, J + 1) and (I + 1, J + 1 ) selected.

Als nächstes sei bei einer in Fig. 52 gezeigten Interpolier­ schaltung 740 zur zweidimensionalen linearen Interpolation angenommen, daß die eingegebenen Werte für die vier Bildele­ mente V(I, J), V(I, J + 1), V(I + 1, J) und V(I + 1, J + 1) sind und daß die Interpolationskoeffizienten für die Hauptabtastrichtung und für die Unterabtastrichtung jeweils α und β sind. Diese werden als Dezimalbruchteile aus den entsprechenden Hauptab­ tastschaltungen 1 bis 4 und den Unterabtastschaltungen 1 bis 4 angelegt. Dann wird die Berechnung (1 - β){(1 - α)V(I, J) + αV(I + 1, J)} + β{(1 - α)V(I, J + 1)) + V(I + 1, J + 1)} ausgeführt, wo­ nach die Interpolationsergebnisse ausgegeben werden, wobei 0 ≦ α und β < 1 gilt.Next, in an interpolation circuit 740 for two-dimensional linear interpolation shown in Fig. 52, assume that the input values for the four picture elements V (I, J), V (I, J + 1), V (I + 1, J) and V (I + 1, J + 1) and that the interpolation coefficients for the main scanning direction and for the sub-scanning direction are α and β, respectively. These are known as decimal fractions from the corresponding Hauptab tastschaltungen 1 to 4 and applied to Unterabtastschaltungen 1 to 4. Then the calculation is (1 - β) {(1 - α) V (I, J) + αV (I + 1, J)} + β {(1 - α) V (I, J + 1)) + V (I + 1, J + 1)}, where the interpolation results are output, with 0 ≦ α and β <1.

Vorstehend ist die Funktion der Prozessoreinheit 312 be­ schrieben. Der Zusammenhang zwischen den Bildelementeberei­ chen des eingangsseitigen Bildspeichers 316, der Prozessor­ einheit 312 und des ausgangsseitigen Bildspeichers 317 ist in der Fig. 53 dargestellt. Im einzelnen ist die Anzahl der Prozessorelemente in der Prozessoreinheit 312 gleich der Anzahl der Bildelemente in dem ausgangsseitigen Bildspeicher 317, während die Anzahl der Bildelemente in dem zur Verarbei­ tung herangezogenen Bildbereich in dem eingangsseitigen Bild­ speicher kleiner als die Anzahl der Prozessorelemente in der Prozessoreinheit 312 ist.The function of the processor unit 312 is described above. The relationship between the picture element areas of the input-side image memory 316 , the processor unit 312 and the output-side image memory 317 is shown in FIG. 53. Specifically, the number of processor elements in the processor unit 312 is equal to the number of picture elements in the output-side image memory 317 , while the number of image elements in the image area used for processing in the input-side image memory is smaller than the number of processor elements in the processor unit 312 ,

Während bei dem Stand der Technik die Verarbeitung für ein jedes einzelne ausgegebene Bildelement wiederholt wird, wer­ den bei dem vorstehend beschriebenen Ausführungsbeispiel die Verarbeitungsergebnisse für eine Vielzahl von Ausgangsbildelementen im gleichen Zyklus ausgegeben, so daß eine sehr hohe Verarbeitungsgeschwindigkeit erreicht werden kann.While in the prior art processing for one every single picture element output is repeated, who the in the embodiment described above Processing results for a variety of output pixels  issued in the same cycle, so a very high processing speed can be achieved.

Ferner ist es möglich, die Interpolation unter gleichzeitiger Eingabe zusammenhängender, eng benachbarter Bildelemente aus dem eingangsseitigen Speicher auszuführen.It is also possible to use interpolation at the same time Input of contiguous, closely adjacent picture elements the input memory.

Der Aufbau und die Funktion der in Fig. 46 gezeigten Prozes­ soreinheit 2 bzw. 312 werden nun ergänzend unter Bezugnahme auf die Fig. 66 bis 68 beschrieben.The structure and function of the processor unit 2 and 312 shown in FIG. 46 will now be described in addition with reference to FIGS . 66 to 68.

Die Fig. 66 zeigt den Aufbau des eingangsseitigen Bildspei­ chers 316 und der Prozessoreinheit 312. Die Prozessoreinheit 312 ist gemäß Fig. 66 mit einer Gruppe digitaler Differenz­ analysatoren bzw. Integratoren (DDA) aus Hauptabtastschaltun­ gen 1 bis 4 für die Hauptabtastrichtung, einer Gruppe digita­ ler Integratoren aus Unterabtastschaltungen 1 bis 4 für die Unterabtastrichtung, einer Gruppe von Wählern für das Wählen von vier aus 25 Bildelementen und einer Prozessorelemente­ gruppe aus Prozessorelementen für die jeweiligen Wähler der Wählergruppe aufgebaut.The Fig. 66 shows the structure of the input side Bildspei Chers 316 and the processor unit 312. The processor unit 312 is Fig mutandis. 66 analyzers with a set of digital difference or integrators (DDA) from Hauptabtastschaltun gen 1 to 4 for the main scanning direction, a group of both digital integrators Unterabtastschaltungen 1 to 4 for the sub-scanning direction, a group of voters for the Select four from 25 picture elements and a processor element group composed of processor elements for the respective voters of the voter group.

Die Fig. 67 zeigt die Zusammenhänge zwischen den Prozessor­ elementen der Prozessorelementegruppe und den Bildelementen in einem Bildelementeblock des ausgangsseitigen Bildspeichers 317.The Fig. 67 shows the relationships between the processor elements of the processor elements and the group of pixels in a pixel block of the output image memory 317th

Die Fig. 68 ist eine die Fig. 47 ergänzende Darstellung und dient zur Beschreibung des Hauptteils eines digitalen Inte­ grators, der in Fig. 66 als Hauptabtastschaltungen 1 bis 4 und Unterabtastschaltungen 1 bis 4 dargestellt ist. Fig. 68 is a Fig. 47 supplementary representation and serves to describe the main part of a digital integrator, which is shown in Fig. 66 as main sampling circuits 1 to 4 and subsampling circuits 1 to 4 .

Gemäß Fig. 68 erhält der als Hauptabtastschaltungen 1 bis 4 und Unterabtastschaltungen 1 bis 4 dargestellte digitale Integrator als Aufstufungswert einen Wert, der das Vierfache des Kehrwerts des zu verändernden Vergrößerungsfaktors ist. Da bei diesem Ausführungsbeispiel die Prozessorelementegruppe aus 4 × 4 bzw. 16 Prozessorelementen besteht, haben die Haupt­ abtastschaltungen 1 bis 4 und die Unterabtastschaltungen 1 bis 4 als Aufstufungswerte alle die Werte, die das Vierfache des Kehrwerts des Vergrößerungsfaktors sind. Falls die Pro­ zessorelementegruppe aus m × n Prozessorelementen gebildet ist, erhält ein digitaler Integrator aus Hauptabtastschaltungen 1 bis m einen Aufstufungswert, der das m-fache des Kehrwerts des Vergrößerungsfaktors ist, während ein digitaler Integra­ tor aus Unterabtastschaltungen 1 bis n einen Aufstufungswert erhält, der das n-fache des Kehrwerts des Vergrößerungsfak­ tors ist. Falls beispielsweise der Vergrößerungsfaktor 8 ist, ist der Aufstufungswert 4 × 1/8 = 1/2. Dementsprechend arbeiten in dem digitalen Integrator für die Hauptabtastrichtung, nämlich in den Hauptabtastschaltungen 1 bis 4 die Addierer und Zwischenspeicher synchron mit dem Hauptabtastungs-Syn­ chronisiersignal. Auf dieses Synchronisiersignal hin gibt jedes Prozessorelement einen Wert ab, der einem einzelnen Bildelement des Ausgabebilds entspricht. Diese Werte werden unter Zeitsteuerung durch ein einzelnes Synchronisier-Takt­ signal an den Block des Bildspeichers 317 für die Ausgabe eines Bilds aus 4 × 4 bzw. 16 Bildelementen abgegeben. Zum Zeitpunkt des nächsten Synchronisiertaktsignals werden die Bildelementewerte für den benachbarten Block aus 4 × 4 Bildele­ menten in dem ausgangsseitigen Bildspeicher 317 abgegeben und in den Speicher eingeschrieben. Danach werden die Bildele­ mentewerte aufeinanderfolgend in der Hauptabtastrichtung in Einheiten von Blöcken aus 4 × 4 Bildelementen ausgegeben. Diese Bildelementewerte werden ausgegeben und in den ausgangsseiti­ gen Bildspeicher 317 bis zu dessen rechten Rand hin einge­ schrieben, woraufhin die Hauptabtastung zu dem Ausgangspunkt zurückkehrt und die Unterabtastung zu einem Block fortschrei­ tet, der (in bezug auf den Bildbereich nach unten) um einen Block versetzt ist. Dies wird dadurch erreicht, daß das Speicherausgangssignal in dem digitalen Integrator mit den Unterabtastschaltungen 1 bis 4 synchron mit dem Unterabta­ stungs-Synchronisiersignal um den Aufstufungswert erhöht wird und der Zwischenspeicher des digitalen Integrators mit den Hauptabtastschaltungen 1 bis 4 durch das Unterabtastungs- Synchronisiersignal rückgesetzt wird. Die Übereinstimmung zwischen den von den Prozessorelementen ausgegebenen Werten und den Bildelementen des Bildelementeblocks in dem ausgangs­ seitigen Bildspeicher ist in Fig. 67 dargestellt.Referring to FIG. 68, the illustrated as Hauptabtastschaltungen 1 to 4 and 1 to 4 Unterabtastschaltungen digital integrator receives as Aufstufungswert a value that is four times the reciprocal of the magnification to be changed. In this embodiment, since the processor element group consists of 4 × 4 and 16 processor elements, respectively, the main sampling circuits 1 to 4 and the sub-sampling circuits 1 to 4 have, as step-up values, all the values which are four times the reciprocal of the magnification factor. If the processor element group is formed from m × n processor elements, a digital integrator from main scanning circuits 1 to m receives a step-up value that is m times the reciprocal of the magnification factor, while a digital integrator from sub-sampling circuits 1 to n receives a step-up value that is n times the reciprocal of the magnification factor. For example, if the magnification factor is 8 , the gradation value is 4 × 1/8 = 1/2. Accordingly, in the digital integrator for the main scanning direction, namely in the main scanning circuits 1 to 4, the adders and buffers operate in synchronism with the main scanning sync signal. In response to this synchronization signal, each processor element outputs a value which corresponds to a single picture element of the output picture. These values are output under time control by a single synchronization clock signal to the block of the image memory 317 for the output of an image from 4 × 4 or 16 picture elements. At the time of the next synchronizing clock signal, the picture element values for the adjacent block of 4 × 4 picture elements are output in the output-side picture memory 317 and written into the memory. Thereafter, the picture element values are sequentially output in the main scanning direction in units of blocks of 4 × 4 picture elements. These pixel values are output and written into the output side image memory 317 to the right edge thereof, whereupon the main scan returns to the starting point and the sub-scan proceeds to a block which is shifted by one block (with respect to the image area down) is. This is achieved in that the memory output signal in the digital integrator with the subsampling circuits 1 to 4 is increased in synchronization with the subsampling synchronizing signal by the increment value and the buffer of the digital integrator with the main sampling circuits 1 to 4 is reset by the subsampling synchronizing signal. The correspondence between the values output by the processor elements and the picture elements of the picture element block in the output-side image memory is shown in FIG. 67.

Jedes Prozessorelement erhält zum Bilden der Wechselbeziehung bzw. Korrelation einen Interpolationskoeffizienten durch das Heranziehen der Dezimalbruchteile des digitalen Hauptabta­ stungs-Integrators und des digitalen Unterabtastungs-Integra­ tors (wobei für die Prozessorelement-Stelle (i, j) der Haupt­ abtastungs-Integrator der Hauptabtastschaltung i und der Unterabtastungs-Integrator der Unterabtastschaltung j ent­ spricht). D. h., als Interpolationskoeffizienten werden die Dezimalbruchteile selbst herangezogen. Die von dem digitalen Hauptabtastungs-Integrator und dem digitalen Unterabtastungs- Integrator (DDA) abgegebenen ganzzahligen Teile drücken die Zuordnung zwischen den einzuschreibenden Ausgangs-Bildelemen­ ten, deren Werte von den Prozessorelementen ausgegeben wer­ den, und den Adressen der Bildelemente in dem Eingangsbild­ speicher aus. "Um ein einzelnes Bildelement benachbart" in dem Speicher für das Ausgangsbild hat die Bedeutung einer Stelle, die um eine Strecke benachbart ist, welche in dem Eingabebildspeicher dem Kehrwert des Vergrößerungsfaktors äquivalent ist (nämlich bei dem Vergrößerungsfaktor 8 die um 1/8 benachbarte Stelle). Diese Stelle soll als "Imaginärstel­ le" bezeichnet werden. Infolgedessen ist zum Erzielen von Daten für diese Imaginärstelle die Interpolation erforder­ lich. Von dem Ausgangssignal des digitalen Integrators gibt der ganzzahlige Teil eine Adresse in dem Eingabebildspeicher an, an der am nächsten an der Imaginärstelle liegend tatsächlich ein Eingabebildelement vorhanden ist, während der Dezi­ malbruchteil eine Versetzung von der Stelle des tatsächlich vorhandenen Eingabebildelements zu der Imaginärstelle dar­ stellt. Infolgedessen wird der Dezimalbruchteil zum Bilden des Interpolationskoeffizienten herangezogen. Der ganzzahlige Teil wird als Adresse in dem Eingabebildspeicher für die Eingangsbilddaten herangezogen, um die vorangehend beschrie­ bene Interpolation auszuführen. Die ganzzahligen Teile aus der Hauptabtastschaltung 1 und der Unterabtastschaltung 1 sind Adressen der Stelle in der oberen linken Ecke des 5 × 5- Bildelementebereichs, der in den 16 Prozessorelementen verar­ beitet werden kann. Dies ist in Fig. 66 dargestellt. Wenn der Vergrößerungsfaktor "1" ist (Maßstab 1 : 1), werden alle 5 × 5 Bildelemente zumindest einmal in irgendeinem der 16 Prozes­ sorelemente benutzt. Sobald der Vergrößerungsfaktor größer ist, werden nur die Bildelemente in einem kleinen Bereich von dem oberen linken Abschnitt des 5 × 5-Bildelementebereichs weg benutzt. Infolgedessen werden bei einem Vergrößerungsfaktor über "1" durch die ganzzahligen Teile aus der Hauptabtast­ schaltung 1 und der Unterabtastschaltung 1 die 25 Bildelemen­ tedaten für die an den Stellen am oberen linken Rand gelege­ nen 5 × 5 Bildelemente in alle 16 Wähler eingegeben. Die Wähler SEL sind jeweils einem der Prozessorelemente zugeordnet, so daß ein Prozessorelement PE(i, j) einem Wähler SEL(i, j) ent­ spricht. Gemäß den mittels Subtrahierern 710 und 712 berech­ neten Differenzen zwischen den ganzzahligen Teilen der ent­ sprechenden digitalen Integratoren für die Hauptabtastung und Unterabtastung und den ganzzahligen Teilen aus der Hauptab­ tastschaltung 1 und der Unterabtastschaltung 1 wählt das entsprechende Prozessorelement, welche vier Bildelemente aus den 5 × 5 bzw. 25 Bildelementen die erforderlichen Eingangs­ bilddaten sind. Diese Zuordnung ist in Fig. 66 dargestellt. Die Prozessorelemente der ersten Spalte verarbeiten immer Bildelemente der ersten und zweiten Spalte der eingegebenen 5 × 5-Bildelementegruppe. Gleichermaßen verarbeiten die Prozessorelemente der ersten Zeile immer die Bildelemente der ersten und zweiten Zeile der eingegebenen 5 × 5-Bildelemente­ gruppe. Daher zeigt die Fig. 66, daß in die Wähler der ersten Spalte statt der ganzzahligen Werte aus den digitalen Haupt­ abtastungs-Integratoren eine Konstante eingegeben wird und in die Wähler der ersten Zeile statt der ganzzahligen Werte aus den digitalen Unterabtastungs-Integratoren gleichfalls eine Konstante eingegeben wird.Each processor element receives an interpolation coefficient to form the correlation or correlation by using the decimal fractions of the digital main sampling integrator and the digital subsampling integrator (whereby for the processor element location (i, j) the main sampling integrator of the main sampling circuit i and the subsampling integrator of the subsampling circuit speaks j). That is, the decimal fractions themselves are used as interpolation coefficients. The integer parts output by the digital main-scan integrator and the digital sub-scan integrator (DDA) express the correspondence between the output picture elements to be written, the values of which are output by the processor elements, and the addresses of the picture elements in the input picture memory. "Adjacent to a single picture element" in the memory for the output image means a position which is adjacent by a distance which is equivalent to the reciprocal of the magnification factor in the input image memory (namely, in the case of the magnification factor 8, the position adjacent to 1/8) , This position should be referred to as the "imaginary position". As a result, interpolation is required to obtain data for this imaginary location. The integer part of the output signal of the digital integrator indicates an address in the input image memory at which an input image element closest to the imaginary location actually exists, while the decimal fraction represents a displacement from the location of the actually existing input image element to the imaginary location. As a result, the decimal fraction is used to form the interpolation coefficient. The integer part is used as an address in the input image memory for the input image data to carry out the above-described interpolation. The integer parts of the main scanning circuit 1 and the sub-scanning circuit 1 are addresses of the location in the upper left corner of the 5 × 5 pixel area that can be processed in the 16 processor elements. This is shown in Fig. 66. If the magnification factor is "1" (1: 1 scale), all 5 × 5 picture elements are used at least once in any of the 16 processor elements. Once the magnification factor is larger, only the pixels in a small area away from the upper left portion of the 5 × 5 pixel area are used. As a result, circuit at a magnification factor of about "1" by the integer parts from the main scan 1 and sub-sampling circuit 1, the 25 Bildelemen device data for the clutch at the points at the upper left nen 5 × 5 pixels in every 16 voters entered. The selector SEL are each assigned to one of the processor elements, so that a processor element PE (i, j) speaks to a selector SEL (i, j). According to the differences calculated by subtractors 710 and 712 between the integer parts of the corresponding digital integrators for the main scanning and subsampling and the integer parts from the main scanning circuit 1 and the sub-scanning circuit 1 , the corresponding processor element selects which four picture elements from the 5 × 5 or 25 picture elements are the required input picture data. This assignment is shown in Fig. 66. The processor elements of the first column always process picture elements of the first and second column of the input 5 × 5 picture element group. Similarly, the processor elements of the first line always process the picture elements of the first and second lines of the input 5 × 5 picture element group. Therefore, Fig. 66 shows that a constant is entered in the first column selector instead of the integer values from the main digital scanning integrators, and a constant is also entered in the first row selector instead of the integer values from the digital subsampling integrators becomes.

Das von einem jeden Prozessorelement ausgeführte Interpola­ tionsverfahren ist gleichartig der in Fig. 52 gezeigten In­ terpolierschaltung 740 zur zweidimensionalen Interpolation ausgeführten Verarbeitung und muß daher nicht noch einmal beschrieben werden.The interpolation process performed by each processor element is similar to the interpolation circuit 740 shown in FIG. 52 for two-dimensional interpolation processing and therefore need not be described again.

BilddatenkomprimierungImage data compression

Bei einem nachstehend beschriebenen Ausführungsbeispiel der Bildverarbeitungseinrichtung ist die von der Prozessoreinheit 2 ausgeführte Verarbeitung eine Bildkomprimierung. Es besteht keine bestimmte Einschränkung hinsichtlich der Anzahl k × ℓ oder K × L von Speicherelementen, die den leseseitigen oder schreibseitigen Bildspeicher bilden.In one exemplary embodiment of the image processing device described below, the processing carried out by the processor unit 2 is an image compression. There is no particular restriction on the number k × ℓ or K × L of memory elements that form the image memory on the read side or write side.

Ferner besteht hinsichtlich der Blockformate k' × ℓ' und K' × L' der in den Speichern abgerufenen Bildelemente keine Ein­ schränkung auf das nachstehend beschriebene Beispiel. Es sind jedoch die Bedingungen 1 ≦ k' ≦ k, 1 ≦ ℓ' ≦ ℓ, 1 ≦ K' ≦ K und 1 ≦ L' ≦ L einzuhalten.Furthermore, with regard to the block formats k '× ℓ' and K '× L' the picture elements retrieved in the memories are not On restriction to the example described below. There are but the conditions 1 ≦ k '≦ k, 1 ≦ ℓ' ≦ ℓ, 1 ≦ K '≦ K and 1 ≦ L' ≦ L observed.

Es wird nun die Abtastung für den Speicherzugriff bei dem nachfolgend beschriebenen Ausführungsbeispiel erläutert. Aus den vorangehenden Ausführungen (hinsichtlich des ersten Bei­ spiels) ist zu entnehmen, daß ohne Beschränkung auf die Leseseite oder die Schreibseite dann, wenn das abgerufene Bildelementeformat gleich dem Format der den jeweiligen Bild­ speicher bildenden Speicherelemente ist, die Abtastung in jedem der Bildspeicher nach dem vorangehend beschriebenen ersten Folgeabfrageverfahren vorgenommen werden kann. Falls andererseits in dem leseseitigen und schreibseitigen Bild­ speicher ein Bildelementeformat abgerufen werden soll, das kleiner als das Format der den Speicher bildenden Speicher­ elemente ist, kann die Abtastung nach dem vorangehend be­ schriebenen Block-Folgeabfrageverfahren vorgenommen werden (5. Beispiel).It will now scan for memory access at the The embodiment described below is explained. Out the previous statements (regarding the first case it can be seen that without limitation to the Read side or the write side then when the retrieved  Picture element format equal to the format of the respective picture memory-forming memory elements, the sampling in each of the image memories according to the one described above first follow-up query procedure can be carried out. If on the other hand in the read-side and write-side image memory to retrieve a picture element format that smaller than the format of the memories forming the memory elements, the sampling can be according to the previous block follow-up polling procedures (5th example).

Es wird nun ein Prozeß beschrieben, bei dem aus einem Bild­ speicher gleichzeitig Bilddaten abgerufen werden, die recht­ eckigen Bereichen aus m × n Bildelementen eines ursprünglichen Bilds entsprechen, die Bilddaten gleichzeitig von einer Pro­ zessoreinheit aus Prozessorelementen in einer Anzahl aufge­ nommen werden, die kleiner als das Blockformat m × n des recht­ eckigen Bereichs in dem Bildspeicher ist, die Bilddaten dann als Informationen von den jeweiligen Prozessorelementen unter Informationsaustausch zwischen den Prozessorelementen verar­ beitet werden, wodurch die eingegebenen Bilddaten komprimiert werden, und die Ergebnisse in den ausgangsseitigen Bildspei­ cher in einen rechteckigen Bereich ausgegeben werden, der kleiner als das Blockformat m × n des rechteckigen Bereichs im eingangsseitigen Bildspeicher für das ursprüngliche Bild ist, so daß dadurch die eingangsseitigen ursprünglichen Bild­ daten komprimiert sind. Zur Vereinfachung der Beschreibung sei angenommen, daß das Blockformat des rechteckigen Bereichs im eingangsseitigen Bildspeicher m = n = 4 ist, daß die Anzahl der Prozessorelemente "2" ist und daß das Blockformat des rechteckigen Bereichs im ausgangsseitigen Bildspeicher 1 × 1 = 1 ist.A process will now be described in which an image store image data at the same time, which is right angular areas from m × n picture elements of an original Image, the image data simultaneously from a Pro processor unit made up of processor elements in a number are taken that are smaller than the block format m × n of the right square area in the image memory, then the image data as information from the respective processor elements below Exchange of information between the processor elements be processed, whereby the input image data is compressed and the results in the output image be output in a rectangular area that smaller than the block format m × n of the rectangular area in input image memory for the original image is so that the original image on the input side data is compressed. To simplify the description assume that the block format of the rectangular area in the input image memory m = n = 4 is that the number of the processor elements is "2" and that the block format of the rectangular area in the output image memory 1 × 1 = 1 is.

Die Fig. 54 zeigt die Zusammenhänge zwischen einem Eingabe- Bildelementeblock 561 in einem eingangsseitigen Bildspeicher 560 für das ursprüngliche Bild, Bildelementen 561a, einer Prozessoreinheit 562, Prozessorelementen 563a und 563b und Ausgabe-Bildelementen 564a in einem ausgangsseitigen Bild­ speicher 564 für die Ausgabe komprimierter Daten. Aus einer Steuereinheit 565 wird in die Prozessoreinheit 562 und den eingangsseitigen Bildspeicher 560 ein Steuersignal eingege­ ben, wodurch die Bilddaten aus dem Bildelementeblock 561 aus 16 zugehörigen Bildelementen in dem eingangsseitigen Bild­ speicher 560 gleichzeitig abgerufen werden und die benötigten Bilddaten von dem entsprechenden Prozessorelement 563a und 563b in der Prozessoreinheit 562 aufgenommen werden. Die Prozessoreinheit 562 berechnet aus den Bilddaten für die 16 Bildelemente eine typische Dichteinformation 571 und eine Detailinformation 572 gemäß der Darstellung in Fig. 55 und gibt die komprimierten Bilddaten als Ausgabe-Bildelemente 564a zu den entsprechenden Stellen in dem ausgangsseitigen Bildspeicher 564 aus. Fig. 54 shows the relationship between an input pixel block 561 in an input-side frame memory 560 to the original image, picture elements 561 a, a processor unit 562, processor elements 563 a and 563 b and output picture elements 564 a memory in an output-side image 564 for the output of compressed data. A control signal is input from a control unit 565 into the processor unit 562 and the input-side image memory 560 , whereby the image data from the image element block 561 from 16 associated image elements in the input-side image memory 560 are called up simultaneously and the required image data from the corresponding processor element 563 a and 563 b are recorded in the processor unit 562 . The processor unit 562 calculates typical density information 571 and detailed information 572 from the image data for the 16 image elements as shown in FIG. 55 and outputs the compressed image data as output image elements 564 a to the corresponding locations in the output-side image memory 564 .

Von den beiden Prozessorelementen 563a und 563b in der Pro­ zessoreinheit 562 ist eines, nämlich das Prozessorelement 563a für die Berechnung der typischen Dichteinformation 571 aus den Bilddaten für die 16 Bildelemente bestimmt, während das andere, nämlich das Prozessorelement 563b zum Berechnen der Detailinformation 572 dient, welche auf einer Bildinfor­ mation beruhend berechnet wird, die mittels eines festen Schwellenwerts binär codiert ist, der der Charakteristik des eingegebenen Bilds entspricht. Die Detailinformationen sind beispielsweise Daten, die durch Vektorquantisierung der binär codierten Bildinformationen gewonnen werden, und Daten über die Verteilung der Bildinformationen. Vorstehend sind zusam­ mengefaßt die Einrichtung und der Prozessablauf für das Kom­ primieren eingegebener ursprünglicher Bilddaten beschrieben. Es werden nun die Einzelheiten der von den Prozessorelementen 563a und 563b ausgeführten Verarbeitung beschrieben. Of the two processor elements 563 a and 563 b in the processor unit 562 , one, namely the processor element 563 a, is intended for the calculation of the typical density information 571 from the image data for the 16 picture elements, while the other, namely the processor element 563 b, is used to calculate the Detail information 572 is used, which is calculated based on image information which is binary-coded by means of a fixed threshold value which corresponds to the characteristic of the input image. The detailed information is, for example, data obtained by vector quantization of the binary-coded image information and data on the distribution of the image information. The setup and the process flow for compressing inputted original image data are summarized above. The details of the processing performed by processor elements 563 a and 563 b will now be described.

Das ausschließlich für das Berechnen der typischen Dichtein­ formation 571 vorgesehene Prozessorelement 563a weist gemäß Fig. 56 einen Puffer 581 für das vorübergehende Speichern der Bilddaten für die 16 Bildelemente und eine arithmetische bzw. Recheneinheit 582 auf. Das Prozessorelement 563a bildet aus den Bilddaten für die 16 Bildelemente einen mittleren Dichte­ wert und gibt diesen Wert als typische Dichteinformation an den ausgangsseitigen Bildspeicher 564 ab. Das ausschließlich zum Zusammenstellen der Detailinformation 572 dienende Pro­ zessorelement 563b weist gleichfalls einen 16-Bildelemente- Puffer 581 und eine Recheneinheit 582 gemäß Fig. 56 auf. Entsprechend den Eigenschaften des eingegebenen ursprüngli­ chen Bilds wird die Detailinformation 572, die eine Block­ innenmuster-Information, welche durch das binäre Codieren der Tönungsinformationen für die 16 Bildelemente mit einem von einer nicht gezeigten Einrichtung vorbestimmten Schwellenwert ermittelt wird, und eine aus dem Schwellenwert und einem jeweiligen Bildelement der Bilddaten in dem Block ermittelte Verteilungsinformation enthält, zusammen mit der typischen Dichteinformation 571 an den ausgangsseitigen Bildspeicher 564 ausgegeben.The processor element 563 a provided exclusively for calculating the typical density information 571 has, according to FIG. 56, a buffer 581 for temporarily storing the image data for the 16 image elements and an arithmetic or computing unit 582 . The processor element 563 A forms from the image data for the picture elements 16 has an average density value and outputs this value as a typical density information to the output-side frame memory 564 from. The processor element 563 b, which is used exclusively for compiling the detailed information 572 , likewise has a 16-pixel buffer 581 and a computing unit 582 according to FIG. 56. According to the properties of the input original image, the detailed information 572 , which is a block of interior pattern information obtained by binary coding the tint information for the 16 picture elements with a threshold value predetermined by a device not shown, and one of the threshold value and one contains the respective image element of the image data in the block, ascertained distribution information, together with the typical density information 571 , is output to the output-side image memory 564 .

Dabei sind die beiden Prozessorelemente 563a und 563b zu parallelem Arbeiten ausgebildet, so daß die Komprimierung mit hoher Geschwindigkeit ausgeführt wird.The two processor elements 563 a and 563 b are designed to work in parallel, so that the compression is carried out at high speed.

Bei dem vorstehend beschriebenen Komprimieren, wird der ein­ gangsseitige Bildspeicher aufeinanderfolgend in Speicher­ blockeinheiten aus 4 × 4 Bildelementen abgefragt. Durch das Wiederholen dieses Vorgangs bis zum Abschluß der Verarbeitung des letzten Speicherblocks aus 4 × 4 Bildelementen in dem Bildspeicher wird das ursprüngliche Bild einer Seite kompri­ miert.When compressing as described above, the one aisle side image memory successively in memory block units of 4 × 4 picture elements queried. By the Repeat this process until processing is complete the last memory block of 4 × 4 picture elements in the Image storage will compress the original image of a page mized.

Gemäß der vorstehenden Beschreibung wird für das Berechnen der Detailinformation aus den komprimierten Daten der durch Vorgabe eines Schwellenwerts erhaltene feste Schwellenwert benutzt. Es ist jedoch ersichtlich, daß dieser Schwellenwert auch ein Wert sein kann, der der von dem Prozessorelement 563a abgegebenen mittleren Dichte entspricht. Ferner kann in der Prozessoreinheit 562 ein einziges Prozessorelement einge­ setzt sein.As described above, the fixed threshold value obtained by specifying a threshold value is used for calculating the detailed information from the compressed data. However, it can be seen that this threshold value can also be a value which corresponds to the average density output by the processor element 563 a. Furthermore, a single processor element can be inserted in the processor unit 562 .

Bei dem vorstehend beschriebenen Ausführungsbeispiel werden die Rohdaten für das eingegebene ursprüngliche Bild während des aufeinanderfolgenden Abrufens in Blöcken aus m × n Bildele­ menten, nämlich 4 × 4 Bildelementen komprimiert. Daher werden statt des mehrmaligen Abrufens eines jeden Bildelements in dem eingangsseitigen Bildspeicher die Bilddaten für m × n Bild­ elemente gleichzeitig abgerufen. Hierdurch wird es möglich, die Bilddaten unter deren Komprimierung mit hoher Geschwin­ digkeit zu übertragen.In the embodiment described above the raw data for the entered original image during successive fetching in blocks of m × n pixels ment, namely 4 × 4 picture elements compressed. Therefore instead of fetching each picture element multiple times in the image data for m × n image to the input-side image memory elements accessed simultaneously. This makes it possible the image data under high speed compression transferability.

Wenn die Bilddaten in Blockeinheiten aus m × n Bildelementen codiert werden, kann ein einzelner Codierprozeß durch einen einzelnen Speicherabruf dadurch ausgeführt werden, daß das Format des eingangsseitigen Speicherblocks auf die gleichen m × n Bildelemente festgelegt wird. Hierdurch wird das schnelle Verarbeiten ermöglicht und der Aufbau der Einrichtung ver­ einfacht. Ferner können dadurch, daß in der Prozessoreinheit Prozessorelemente in einer Anzahl m' × n' vorgesehen werden, die kleiner als die Anzahl m × n der Bildelemente in dem eingangsseitigen Speicherblock ist, und daß an jedem Prozes­ sorelement das gesonderte Verarbeiten herbeigeführt wird, die Kosten für die Prozessoreinheit verringert werden, wobei durch das parallele Verarbeiten die Verarbeitungsgeschwindig­ keit zum Komprimieren gesteigert werden kann.When the image data in block units of m × n picture elements can be encoded, a single encoding process by a single memory polling can be performed by that Format of the input memory block to the same m × n picture elements is set. This will make it quick Processing enabled and the structure of the facility ver simplified. Furthermore, in that in the processor unit Processor elements are provided in a number m '× n', which are smaller than the number m × n of picture elements in the input memory block, and that at every process sorelement the separate processing is brought about, the Cost of the processor unit can be reduced through the parallel processing the processing speed compression can be increased.

Es wird nun ein weiteres Ausführungsbeispiel für einen Kom­ primiervorgang beschrieben. Another embodiment of a comm priming process described.  

Im folgenden wird ein Prozeß beschrieben, bei dem aus einem Bildspeicher Bilddaten für rechteckige Bereiche aus m × n Bild­ elementen eines ursprünglichen Bilds gleichzeitig abgerufen werden, die Bilddaten von einer Prozessoreinheit mit m × n Prozessorelementen aufgenommen werden, von denen jedes einem entsprechenden Speicherelement für die jeweiligen Bildelemen­ te zugeordnet ist, die Bilddaten mittels der jeweiligen Pro­ zessorelemente komprimiert werden und die Ergebnisse in einem Bildspeicher ausgegeben werden. Bei dieser Beschreibung ist es zur Vereinfachung angenommen, daß m = n = 4 gilt.The following describes a process in which a Image memory Image data for rectangular areas from m × n image elements of an original image retrieved at the same time the image data from a processor unit with m × n Processor elements are included, each one corresponding storage element for the respective picture elements te is assigned, the image data by means of the respective pro processor elements are compressed and the results in one Image memory can be output. In this description is for the sake of simplicity, assume that m = n = 4.

Die Fig. 57 zeigt die Zusammenhänge zwischen einem Eingabe- Bildelementeblock 591 in einem eingangsseitigen Bildspeicher 590 für ein ursprüngliches Bild, Bildelementen 591a, einer Prozessoreinheit 592, Prozessorelementen 592a und Ausgangs­ bilddaten 593a in einem ausgangsseitigen Bildspeicher 593. Entsprechend einem Steuersignal aus einer Steuereinheit 594 werden die Bilddaten des Bildelementeblocks 591 mit 16 geeig­ neten Bildelementen aus dem eingangsseitigen Bildspeicher 590 gleichzeitig abgerufen und von den jeweiligen Prozessorele­ menten 592a in der Prozessoreinheit 592 aufgenommen. Die Prozessoreinheit 592 berechnet aus den Bilddaten für die 16 Bildelemente die typische Dichteinformation 571 und die De­ tailinformation 572 gemäß Fig. 55 und gibt die Ergebnisse an den ausgangsseitigen Bildspeicher 593 aus. Fig. 57 shows the relationship between an input pixel block 591 in an input-side frame memory 590 for an original image pixels 591 a, a processor unit 592, processor elements 592 a and output image data 593 a in an output-side frame memory 593. According to a control signal from a control unit 594 , the image data of the picture element block 591 with 16 suitable picture elements are simultaneously retrieved from the input-side image memory 590 and recorded by the respective processor elements 592 a in the processor unit 592 . The processor unit 592 calculates the typical density information 571 and the detailed information 572 according to FIG. 55 from the image data for the 16 image elements and outputs the results to the image memory 593 on the output side.

Die Prozessorelemente 592a der Prozessoreinheit 592 stehen in 1 : 1-Zuordnung zu den 4 × 4 Bildelementen und sind gitter- bzw. rasterförmig in einer 4 × 4-Matrix aus 16 Elementen angeordnet.The processor elements 592 a of the processor unit 592 are in a 1: 1 assignment to the 4 × 4 picture elements and are arranged in a grid or grid pattern in a 4 × 4 matrix of 16 elements.

Vorstehend ist die Verarbeitung zur Bilddatenkomprimierung zusammengefaßt beschrieben. Es werden nun die Einzelheiten der von den Prozessorelementen 592a ausgeführten Verarbeitung erläutert. The processing for image data compression is described in summary above. The details of the processing performed by processor elements 592 a will now be explained.

Die Prozessorelemente 592a in der Prozessoreinheit 592 werden in Zeilen- und Spaltenrichtung numeriert, so daß sie gemäß Fig. 58 und 59 voneinander durch die Kombination dieser Nummern unterschieden werden.The processor elements 592 a in the processor unit 592 are numbered in row and column directions, so that they are shown in FIG. 58 and 59 distinguished from each other by the combination of these numbers.

Es wird nun der Prozeß für das Bilden der typischen Dichtein­ formation aus den Bilddaten für die 16 Bildelemente beschrie­ ben. Es sei angenommen, daß die in Fig. 58 gezeigten 16 Prozessorelemente 592a die entsprechenden Bilddaten aufgenom­ men haben. Ein jedes der parallel arbeitenden Prozessorele­ mente (1, 1), . . . (4, 4) errechnet 1/16 der Dichtedaten für ein jedes Bildelement, wonach alle Rechenergebnisse gleichzeitig von dem Prozessorelement (1, 1) addiert werden, aus den Dich­ teinformationen für die 16 Bildelemente ein Mittelwert gebil­ det wird und dieser Wert als Wert der in Fig. 55 gezeigten typischen Dichteinformation 571 über die typische Dichte der komprimierten Daten an den ausgangsseitigen Bildspeicher abgegeben wird.The process for forming the typical density information from the image data for the 16 picture elements will now be described. It is assumed that the 16 processor elements 592 a shown in FIG. 58 have taken the corresponding image data. Each of the processor elements working in parallel ( 1 , 1 ),. , , ( 4 , 4 ) calculates 1/16 of the density data for each picture element, after which all the calculation results are added simultaneously by the processor element ( 1 , 1 ), from the density information for the 16 picture elements an average is formed and this value as the value of is given in Fig. typical density information 571 shown 55 over the typical density of the compressed data to the output-side frame memory.

Nachstehend wird nun das Ermitteln der in Fig. 55 gezeigten Detailinformation 572 über die Details in den Komprimierungs­ daten beschrieben. Die in Fig. 59 gezeigten Prozessorelemente sind die gleichen wie die in Fig. 58 gezeigten.The determination of the detail information 572 shown in FIG. 55 about the details in the compression data will now be described. The processor elements shown in FIG. 59 are the same as those shown in FIG. 58.

Zum schnellen Ermitteln der Musterinformation eines jeden Bildelements, die durch binäres Codieren der Tönungsinforma­ tion eines jeden Bildelements in den 16 Prozessorelementen 592a mit der von dem Prozessorelement (1, 1) nach Fig. 58 abgegebenen Durchschnittsdichteinformation erhalten wird, sowie der Durchschnittsdichteinformation und der Verteilungs­ information aus jedem Posten der Bildelementedaten in dem Block werden die 4 × 4 Prozessorelemente in vier Blöcke aus jeweils 2 × 2 Prozessorelementen gemäß der Darstellung durch die ausgezogenen Linien in Fig. 59 unterteilt; in den vier Blöcken aus 2 × 2 Prozessorelementen werden die Musterinformationen und die Verteilungsinformationen parallel verarbeitet, wonach die Ergebnisse als Zwischenergebnisse in die vier mittigen Prozessorelemente (2, 2), (2, 3), (3, 2) und (3, 3) eingespeichert werden; die vorstehend beschriebene Verarbei­ tung wird dann im mittigen Block aus 2 × 2 Prozessorelementen ausgeführt, wonach in dem Prozessorelement (2, 2) das Ender­ gebnis gebildet wird und dieser Wert als Detailinformation 572 über die betreffenden 16 Bildelemente an den ausgangssei­ tigen Bildspeicher ausgegeben wird.For quickly determining the pattern information of each picture element, which is obtained by binary coding of the tint information of each picture element in the 16 processor elements 592 a with the average density information given by the processor element ( 1 , 1 ) according to FIG. 58, as well as the average density information and the distribution information from each item of picture element data in the block, the 4 × 4 processor elements are divided into four blocks of 2 × 2 processor elements each, as shown by the solid lines in FIG. 59; in the four blocks of 2 × 2 processor elements, the pattern information and the distribution information are processed in parallel, after which the results as intermediate results in the four central processor elements ( 2 , 2 ), ( 2 , 3 ), ( 3 , 2 ) and ( 3 , 3 ) are saved; The processing described above is then carried out in the central block of 2 × 2 processor elements, after which the end result is formed in the processor element ( 2 , 2 ) and this value is output as detailed information 572 on the 16 image elements concerned to the output-side image memory.

Durch das Wiederholen der vorstehend beschriebenen Verarbei­ tung unter aufeinanderfolgendem Abrufen des eingangsseitigen Bildspeichers in Blockeinheiten aus 4 × 4 Bildelementen bis zum Abschluß der Komprimierungsverarbeitung des letzten 4 × 4- Bildelementeblocks des ursprünglichen Bilds werden kompri­ mierte Daten erhalten, die dem ursprünglichen Bild einer Seite äquivalent sind.By repeating the processing described above tion by successively calling up the input side Image memory in block units of 4 × 4 picture elements up to Completion of compression processing of the last 4 × 4- Blocks of picture elements of the original picture are compressed receive data that matches the original image of a Side are equivalent.

Bei dem vorstehend beschriebenen Ausführungsbeispiel werden die Rohdaten des eingegebenen ursprünglichen Bilds aufeinan­ derfolgend in Speicherblöcken aus m × n Bildelementen, wie z. B. aus 4 × 4 Bildelementen abgerufen. Daher können statt des mehr­ maligen Abrufens eines jeden Bildelements in dem eingangssei­ tigen Bildspeicher die Bilddaten für m × n Bildelemente gleich­ zeitig abgerufen werden. Dies ermöglicht eine schnelle Kom­ primierung und Übertragung der Bilddaten.In the embodiment described above the raw data of the input original image subsequently in memory blocks of m × n picture elements, such as e.g. B. retrieved from 4 × 4 picture elements. Therefore, instead of more retrieving each pixel in the input page the image data for m × n picture elements is the same can be called up in good time. This enables a quick comm priming and transmission of image data.

Bei der Codierung der Bilddaten in Blockeinheiten aus m × n Bildelementen kann ein einzelner Codierprozeß durch einen einzelnen Speicherabruf dadurch ausgeführt werden, daß das Format des eingangsseitigen Speicherblocks die gleichen m × n Bildelemente erhält. Hierdurch wird eine schnelle Verarbei­ tung ermöglicht und der Aufbau der Einrichtung vereinfacht. Da ferner in der Prozessoreinheit die m × n Prozessorelemente mit dem gleichen Format wie die eingangsseitigen Speicherblöcke zum parallelen Codieren ausgebildet sind, wird dadurch die Verarbeitungsgeschwindigkeit der Prozessoreinheit erhöht.When encoding the image data in block units from m × n Picture elements can be encoded by a single coding process single memory polling can be performed by that Format of the input memory block the same m × n Receives picture elements. This will result in quick processing device enables and the structure of the facility simplified. Furthermore, since the m × n processor elements in the processor unit with the same format as the input memory blocks  are designed for parallel coding the processing speed of the processor unit increases.

Bilddatenkomprimierung und -ExpandierungImage data compression and expansion

Es wird nun ein weiteres Ausführungsbeispiel beschrieben. Bei diesem werden aus einem eingangsseitigen Bildspeicher für ein ursprüngliches Bild gleichzeitig mehrere Bilddatenposten abgerufen, die jeweils rechteckigen Bereichen aus m × n Bild­ elementen entsprechen, wonach die Bilddaten von den Prozes­ sorelementen der Prozessoreinheit aufgenommen werden, die Bilddaten komprimiert werden und die Ergebnisse aufeinander­ folgend an entsprechende Stellen in dem ausgangsseitigen Bildspeicher in einem Format m' × n' ausgegeben werden, das kleiner als das Blockformat bei der Eingabe ist (m < m', n < n'). Im Gegensatz dazu werden gleichzeitig Bildelemente in einem Blockformat m' × n' aus dem eingangsseitigen Bildspeicher abge­ rufen, die Bilddaten von der Prozessoreinheit aufgenommen, eine Expansions- bzw. Erweiterungsverarbeitung ausgeführt und danach gleichzeitig an den ausgangsseitigen Bildspeicher die Bilddaten für alle Bildelemente im Format m × n ausgegeben, das größer als das Blockformat bei der Eingabe ist (m < m', n < n'). Dabei werden jeweils die. Speicherblockformate m × n und m' × n' festgelegt. Abhängig von dem Inhalt der Verarbeitung, nämlich einer Verarbeitung zum Komprimieren oder Expandieren wird eingangsseitig das Format m × n und ausgangsseitig das Format m' × n' oder umgekehrt eingangsseitig das Format m' × n' und ausgangsseitig das Format m × n gewählt (wobei m < m' und n < n' gilt). Nachstehend wird der Ablauf der Verarbeitung zum Kom­ primieren und Expandieren beschrieben. Zur Vereinfachung sei angenommen, daß m = n = 4 und m' = n' = 1 gilt und daß die Prozessoreinheit zwei Prozessorelemente enthält.Another embodiment will now be described. at this are from an input-side image memory for a original image multiple image data items at the same time retrieved the respective rectangular areas from m × n image elements correspond, after which the image data from the processes sensor elements of the processor unit are included, the Image data are compressed and the results are consecutive following at corresponding points in the output side Image memories are output in a format m '× n' that is smaller than the block format when entering (m <m ', n <n'). In contrast, picture elements are simultaneously in one Block format m '× n' abge from the input image memory call, the image data recorded by the processor unit, executes expansion processing, and then at the same time to the image memory on the output side Image data for all image elements in the format m × n output, the is larger than the block format when entering (m <m ', n <n'). The. Memory block formats m × n and m '× n' established. Depending on the content of the processing, namely processing for compressing or expanding the format m × n on the input side and the format on the output side m '× n' or vice versa the format m '× n' and the format m × n is selected on the output side (where m <m 'and n <n' applies). In the following, the processing flow for Com priming and expanding described. To simplify assume that m = n = 4 and m '= n' = 1 and that the processor unit contains two processor elements.

Zunächst wird gemäß der Darstellung in Fig. 54 bei dem Kom­ primieren aus einer Steuereinheit 544 an eine Prozessorein­ heit 541 ein Steuersignal abgegeben, das eingangsseitige Blockformat auf 4 × 4 Bildelemente festgelegt und das ausgangs­ seitige Blockformat auf 1 Bildelement festgelegt; dann werden die Bilddaten für entsprechende 16 Bildelemente aus einem eingangsseitigen Bildspeicher 540 für das ursprüngliche Bild gleichzeitig abgerufen und die benötigten Bilddaten von je­ weiligen Prozessorelementen 541a und 541b in der Prozessor­ einheit 541 aufgenommen. Von der Prozessoreinheit 541 werden aus den Bilddaten für die 16 Bildelemente die typische Dich­ teinformation 571 und die Detailinformation 572 gemäß Fig. 55 berechnet und die komprimierten Bilddaten an entsprechende Stellen in einem ausgangsseitigen Bildspeicher 542 ausgege­ ben.First, as shown in FIG. 54, when compressing from a control unit 544 to a processor unit 541, a control signal is emitted, the input block format is set to 4 × 4 picture elements and the output block format is set to 1 picture element; then the image data for respective pixels 16 from an input-side frame memory 540 to retrieve the original image simultaneously and the required image data from each weiligen processor elements 541 a and 541 b in the processor unit 541 added. From the image data for the 16 image elements, the typical density information 571 and the detailed information 572 according to FIG. 55 are calculated by the processor unit 541 and the compressed image data are output to corresponding locations in an output-side image memory 542 .

Nachstehend wird nun eine Verarbeitung für das Expandieren der komprimierten codierten Daten beschrieben.Processing for expanding will now be described below of the compressed encoded data.

Die Fig. 60 zeigt die Zusammenhänge zwischen codierten Daten 540a in dem eingangsseitigen Bildspeicher 540, der Prozessor­ einheit 541 mit den Prozessorelementen 541a und 541b, einem Ausgabe-Bildelementeblock 543 für den ausgangsseitigen Wie­ dergabe-Bildspeicher 542 und Ausgabe-Bildelementen 543a. Aus einer Steuereinheit 544 wird in die Prozessoreinheit 541 ein Steuersignal eingegeben, das eingangsseitige Blockformat wird auf 4 × 4 Bildelemente festgelegt, die codierten Daten gemäß der Darstellung in Fig. 55 aus dem eingangsseitigen Bildspei­ cher werden in die Prozessoreinheit 541 eingegeben, mit den Prozessorelementen 541a und 541b wird die jeweils betreffende Verarbeitung ausgeführt und die reproduzierten Bilddaten für 16 Bildelemente werden gleichzeitig an einen entsprechenden 4 × 4-Rechteckbereich in dem ausgangsseitigen Bildspeicher 542 ausgegeben. Ein jedes der Prozessorelemente 541a und 541b der Prozessoreinheit 541 führt eine Verarbeitung aus, die zu derjenigen bei dem Komprimieren entgegengesetzt ist. Bei­ spielsweise wird die Dichteinformation für die Bilddaten der 16 Bildelemente aus der typischen Dichteinformation 571 in den codierten Daten sowie der Verteilungsinformation in der Detailinformation 572 ermittelt. Die Bilddaten für die 16 Bildelemente werden gleichzeitig reproduziert. Hierbei arbei­ ten die mehreren Prozessorelemente 541a und 541b parallel, so daß die Verarbeitung für die Expansion mit hoher Geschwindig­ keit ausgeführt werden kann. Fig. 60 shows the relationships between encoded data 540 a in the input side image memory 540 , the processor unit 541 with the processor elements 541 a and 541 b, an output image element block 543 for the output side image storage 542 and output image elements 543 a , A control signal is input from a control unit 544 into the processor unit 541 , the input-side block format is set to 4 × 4 picture elements, the coded data as shown in FIG. 55 from the input-side image memory are input into the processor unit 541 with the processor elements 541 a and 541 b, the respective processing is carried out and the reproduced image data for 16 picture elements are simultaneously output to a corresponding 4 × 4 rectangular area in the output-side image memory 542 . Each of the processor elements 541 a and 541 b of the processor unit 541 carries out processing that is opposite to that in the compression. For example, the density information for the image data of the 16 picture elements is determined from the typical density information 571 in the coded data and the distribution information in the detail information 572 . The image data for the 16 picture elements are reproduced simultaneously. Here, the plurality of processor elements 541 a and 541 b work in parallel so that the processing for the expansion can be carried out at high speed.

Bei dieser Verarbeitung für die Expansion werden die ein­ gangsseitigen codierten Daten aufeinanderfolgend abgerufen und es wird hinsichtlich der ausgangsseitigen Bilddaten die Verarbeitung der aufeinanderfolgenden Daten in Blockeinheiten aus 4 × 4 Bildelementen ausgeführt, bis eingangsseitig keine codierten Daten mehr vorliegen. Auf diese Weise werden aus den Bilddaten für eine Seite codierter Daten reproduzierte Bilddaten geformt.With this processing for expansion, the one coded data on the transmission side successively and it becomes the regarding the output image data Processing the successive data in block units made of 4 × 4 picture elements, up to none on the input side encoded data are available. That way will be out reproduced the image data for one page of encoded data Image data shaped.

Gemäß dieser Beschreibung wird für die Berechnung der Detail­ information bei dem Komprimieren der Daten ein durch Vorgabe eines Schwellenwerts bestimmter fester Schwellenwert benutzt. Dieser Schwellenwert kann jedoch auch ein Wert sein, der dem von einem weiteren Prozessorelement ausgegebenen Durch­ schnittsdichtewert entspricht. Ferner kann in der Prozessor­ einheit ein einziges Prozessorelement vorgesehen werden.According to this description, for the calculation of the detail information when compressing the data by default a fixed threshold is used. However, this threshold can also be a value that corresponds to the Through issued by another processor element section density value corresponds. Furthermore, in the processor A single processor element can be provided.

Weiterhin können bei dem vorstehend beschriebenen Ausfüh­ rungsbeispiel, bei dem das eingangsseitige oder ausgangssei­ tige Blockformat groß ist, die Prozessorelemente als raster­ förmige 4 × 4-Matrix angeordnet werden. Bei dem beschriebenen Ausführungsbeispiel sind zwar die Blockformate 4 × 4 Bildele­ mente und ein Bildelement genannt, jedoch können diese For­ mate beliebig gewählt werden.Furthermore, in the embodiment described above Example in which the input or output side block format is large, the processor elements as a grid shaped 4 × 4 matrix can be arranged. With the described The block formats 4 × 4 picture are exemplary embodiments elements and a picture element, however, these For mate can be chosen arbitrarily.

Bei dem vorstehend beschriebenen Ausführungsbeispiel werden die Rohdaten für das eingegebene ursprüngliche Bild oder die ausgangsseitig reproduzierten Bilddaten aufeinanderfolgend in jeweiligen Speicherblöcken aus m × n Bildelementen, wie bei­ spielsweise 4 × 4 Bildelementen abgerufen. Daher können statt des mehrmaligen Abrufens eines jeden Bildelements in dem eingangsseitigen Bildspeicher gleichzeitig Bilddaten für m × n Bildelemente abgerufen werden. Dies ermöglicht das Übertragen der Bilddaten unter deren Komprimierung mit hoher Geschwin­ digkeit.In the embodiment described above the raw data for the entered original image or the  output data reproduced successively in respective memory blocks from m × n picture elements, as in for example, 4 × 4 picture elements. Therefore, instead of retrieving each pixel multiple times in the image memory on the input side simultaneously image data for m × n Image elements are retrieved. This enables the transfer the image data under compression at high speed speed.

Da ferner die Blockformate der Bildspeicher an der Eingangs­ seite und der Ausgangsseite gewechselt werden können, wie beispielsweise von 4 × 4 Bildelemente und 1 Bildelement auf 1 Bildelement und 4 × 4 Bildelemente, müssen nicht gesondert eine Komprimiereinrichtung und eine Expandiereinrichtung vorgese­ hen werden, so daß eine einzige Einrichtung ausreichend ist. Auf diese Weise kann die Anzahl erforderlicher Komponenten der Einrichtung auf ein Mindestmaß herabgesetzt werden.Furthermore, since the block formats of the frame buffer at the input side and the output side can be changed as for example from 4 × 4 picture elements and 1 picture element per 1 Picture element and 4 × 4 picture elements do not have to be separate Compressing device and an expanding device hen be so that a single facility is sufficient. In this way, the number of components required the facility is reduced to a minimum.

Da darüberhinaus die eingangsseitigen Blockformate als geson­ derte Blockformate gewählt werden können, kann eine Maskie­ rungsverarbeitung entfallen, bei welcher erforderliche Bild­ daten nicht gelesen oder nicht wieder eingeschrieben werden.In addition, since the input block formats as separate Other block formats can be selected, a maskie Processing no longer apply, at which required picture data not read or not re-registered.

Da auch die Prozessorelemente in der Prozessoreinheit die Verarbeitung parallel ausführen, wird dadurch die Verarbei­ tungsgeschwindigkeit der Prozessoreinheit erhöht.Since the processor elements in the processor unit also Executing processing in parallel becomes processing processing speed of the processor unit increased.

Bei dem vorstehend beschriebenen Ausführungsbeispiel erfolgt eine parallele Verarbeitung zur Bildkomprimierung und Bildex­ pandierung mit hoher Geschwindigkeit. Bei dem Komprimieren und Expandieren eines Bilds ist es ausreichend, die Adressen gemäß der vorangehenden Beschreibung anhand der Fig. 16 und 17 zuzuweisen. In the above-described embodiment, parallel processing for image compression and image expansion is carried out at high speed. When compressing and expanding an image, it is sufficient to assign the addresses as described above with reference to FIGS. 16 and 17.

FarbbildverarbeitungColor processing

Es wird nun eine Bildverarbeitung eines digitalen Farbbilds beschrieben. Die Farbinformation in einem digitalen Farbbild ist als Kombination beispielsweise aus Rot R, Grün G und Blau B ausgedrückt. Daher werden Bildspeicher für R, G und B vorgesehen, von denen jeder eine Kapazität zum Speichern von Daten mit einer Tiefe von 8 Bit für eine jeweilige Farbe hat. Zu einer schnellen Verarbeitung der auf die vorstehend ge­ nannten Weise gespeicherten Farbinformationen wird eine der­ artige Anordnung gewählt, daß jeweils entsprechende Prozes­ sorelemente in 1 : 1-Übereinstimmung entsprechenden Bildspei­ cherzellen für R, G und B zugeordnet werden, die Verarbeitung für R, für G und B parallel ausgeführt wird und ein Infor­ mationsaustausch zwischen den jeweiligen Prozessorelementen ermöglicht ist. Die Fig. 61 zeigt die Gestaltung eines Bild­ speichers 402 für eine Seite und eine n × n - Prozessoreinheit 401, wie beispielsweise eine 4 × 4-Prozessoreinheit.Image processing of a digital color image will now be described. The color information in a digital color image is expressed as a combination of, for example, red R, green G and blue B. Therefore, image memories are provided for R, G and B, each of which has a capacity to store data with a depth of 8 bits for a respective color. For rapid processing of the color information stored in the manner mentioned above, one of the type arrangement is selected such that corresponding processor elements are assigned in a 1: 1 correspondence to corresponding image memory cells for R, G and B, the processing for R, for G and B is executed in parallel and an information exchange between the respective processor elements is made possible. Figs. 61 shows the configuration of an image memory 402 for one page, and an n × n - processor unit 401, such as a 4 x 4 processor unit.

Die Fig. 61 veranschaulicht nur die theoretische Anordnung der Grundkomponenten und zeigt, daß an den Bildspeicher 402 für R, G und B die Prozessoreinheit 401 angeschlossen ist. Nach Fig. 61 werden n × n Bilddatenposten für jeweils R, G und B an irgendwelchen Bildelementestellen in dem Bildspeicher 402 zu der Prozessoreinheit 401 übertragen, die aus n × n Prozessorelementen für eine jede Farbe zusammengesetzt ist, in denen die Daten mit hoher Geschwindigkeit verarbeitet und dann in den Bildspeicher 402 zurückgeführt werden. Der Aufbau der Prozessoreinheit 401 für die jeweilige Farbe ist in der Fig. 62 ausführlich dargestellt. Eine jede Prozessoreinheit besteht aus n × n, wie z. B. 4 × 4 Prozessorelementen, von denen aneinander angrenzende Prozessorelemente miteinander in Ver­ bindung stehen, während Prozessorelemente an gleichen Stellen in bezug auf die Prozessoreinheiten auch miteinander in Ver­ bindung kommen können. Es wird nun das Funktionsprinzip beschrieben. Fig. 61 illustrates only the theoretical arrangement of the basic components and shows that the processor unit 401 is connected to the image memory 402 for R, G and B. According to Fig. 61 n x n image data item for each of R, G and B are transmitted at any pixel locations in the image memory 402 to the processor unit 401, which is composed of n x n processing elements for each color, in which the data is processed at high speed and then returned to image memory 402 . The structure of the processor unit 401 for the respective color is shown in detail in FIG. 62. Each processor unit consists of n × n, such as. B. 4 × 4 processor elements, of which adjacent processor elements are connected to each other in connection, while processor elements in the same places with respect to the processor units can also come into connection with each other. The principle of operation will now be described.

Farbumsetzungcolor conversion

Es sei nun eine Verarbeitung zur Farbumsetzung betrachtet. Die Farbumsetzung ist eine Verarbeitung, bei der an Bilddaten mit Farbinformation die Farbinformation in eine andere vorbe­ stimmte besondere Farbinformation umgesetzt wird. Gemäß dem in Fig. 23 gezeigten und schon beschriebenen Ablaufdiagramm führen die Prozessorelemente der Prozessoreinheit die Farbum­ setzung parallel für 16 Bildelemente aus, wobei die jeweils an den gleichen Stellen gelegenen Prozessorelemente für R, G und B Informationen austauschen.Processing for color conversion is now considered. The color conversion is a processing in which the color information is converted into another predetermined special color information on image data with color information. According to the flowchart shown in FIG. 23 and already described, the processor elements of the processor unit carry out the color conversion in parallel for 16 picture elements, the processor elements for R, G and B located in the same places in each case exchanging information.

Die Verarbeitungsvorgänge zwischen einem jeweiligen Speicher und der Prozessoreinheit werden nun ausführlich anhand der Fig. 61 und 62 beschrieben.The processing operations between a respective memory and the processor unit will now be described in detail with reference to FIGS. 61 and 62.

Als erstes wird die Farbinformation vor und nach einer Ände­ rung festgelegt und die Information an einer Speicherstelle wie einem Register für die Speicherung eines Werts gespei­ chert. Danach werden entsprechend Steuersignalen 411 aus einer in Fig. 62 gezeigten Steuereinheit 410 jeweils entspre­ chende Bilddaten aus 4 × 4 Speicherelementen des Bildspeichers für die drei Farben R, G und B gleichzeitig ausgelesen und zu entsprechenden Prozessorelementen 417, 416 und 415 von Pro­ zessoreinheiten 412R, 412G und 412B für Rot, Grün und Blau übertragen. Danach führen entsprechend dem Ablaufdiagramm in Fig. 23 die 4 × 4 Prozessorelemente parallel die Verarbeitung aus, wobei die Prozessorelemente für R, G und B an den glei­ chen Stellen, nämlich die Prozessorelemente 415, 416 und 417 miteinander in Verbindung stehen. Wenn die Verarbeitung durch die Prozessoreinheiten beendet ist, werden die Bilddaten in den Bildspeicher zurückgeleitet. Dann werden die Bilddaten aus den nächsten 4 × 4 Speicherelementen ausgelesen. Es genügt, die vorstehend beschriebene Verarbeitung hinsichtlich der Bilddaten für eine Seite auszuführen. Die gewählte Farbe oder die gewählten Farben können ein Farbwert oder drei Farbwerte aus den Farben R, G und B sein, wobei für die Farbinformation vor der Änderung natürlich ein Bereich bestimmt werden kann oder mehrere Farbinformationen gewählt werden können.First, the color information is set before and after a change, and the information is stored in a storage location such as a register for storing a value. Thereafter, corresponding control signals 411 from a control unit 410 shown in FIG. 62 each corresponding image data from 4 × 4 memory elements of the image memory for the three colors R, G and B are read out simultaneously and to corresponding processor elements 417 , 416 and 415 of processor units 412 R , 412 G and 412 B for red, green and blue. Thereafter, according to the flowchart in FIG. 23, the 4 × 4 processor elements execute the processing in parallel, the processor elements for R, G and B being connected to one another at the same points, namely the processor elements 415 , 416 and 417 . When processing by the processor units is complete, the image data is returned to the image memory. Then the image data are read out from the next 4 × 4 storage elements. It is sufficient to carry out the processing described above for the image data for one page. The selected color or the selected colors can be one color value or three color values from the colors R, G and B, wherein a range can of course be determined for the color information before the change, or a plurality of color information can be selected.

Farbkorrekturcolor correction

Es sei nun eine Verarbeitung zur Farbkorrektur betrachtet. Die Farbkorrektur ist eine Verarbeitung, bei der dann, wenn Bilddaten eine bestimmte Farbinformation enthalten, die Farb­ information entsprechend den Eigenschaften der Einheit für die Bildeingabe oder die Bildausgabe korrigiert wird.Processing for color correction is now considered. The color correction is a processing in which if Image data contain a certain color information, the color information according to the characteristics of the unit for the image input or output is corrected.

Diese Verarbeitung kann allgemein durch folgende Gleichungen ausgedrückt werden:
This processing can generally be expressed by the following equations:

R' = α.R + β.G + γ.B
R '= α.R + β.G + γ.B

G' = α'.R + β'.G + γ'.B
G '= α'.R + β'.G + γ'.B

B" = α".R + β".G + γ".B (20)
B "= α" .R + β ".G + γ" .B (20)

wobei R, G und B die Eingangsbilddaten sind, R', G' und B' die Ausgangsbilddaten sind und α, β, . . ., β", γ" Koeffizien­ ten sind.where R, G and B are the input image data, R ', G' and B ' the output image data is and α, β,. , ., β ", γ" coefficients are.

Als Koeffizienten α, β, . . ., β", γ" in der Gleichung (20) werden numerische Werte eingesetzt, die den Eigenschaften der Bildeingabeeinheit oder Bildausgabeeinheit entsprechen. Gemäß dem Ablaufdiagramm in Fig. 63 wird die Verarbeitung von den Prozessorelementen in den Prozessoreinheiten parallel für 16 Bildelemente ausgeführt, wobei zwischen den den gleichen Bildelementen entsprechenden Prozessorelementen für R, G und B ein Informationsaustausch stattfindet. As coefficients α, β,. , ., β ", γ" in equation (20), numerical values are used which correspond to the properties of the image input unit or image output unit. According to the flow chart in Fig. 63, the processing executed by the processing elements in the processor units in parallel for 16 picture elements, takes place an exchange of information between the corresponding picture elements of the same processor elements for R, G and B.

Diese Verarbeitung wird nun ausführlich beschrieben. Als erstes werden als Koeffizienten α, β, . . . in der Gleichung (20) numerische Werte bestimmt, die den Bildeingabe- und Bildausgabeeinheiten entsprechen, wie beispielsweise α = 0.8, β = 0.3 und γ = 0.2; diese Koeffizienten werden an Speicherstel­ len wie beispielsweise in Registern für das Festhalten der Werte gespeichert. Danach führen entsprechend den von der Steuereinheit 410 nach Fig. 62 abgegebenen Steuersignalen 411 die 4 × 4 Prozessorelemente die Verarbeitung auf die nachste­ hend beschriebene Weise aus.This processing will now be described in detail. First, as coefficients α, β,. , , in the equation (20) determines numerical values corresponding to the image input and output units, such as α = 0.8, β = 0.3 and γ = 0.2; these coefficients are stored in storage locations such as registers for holding the values. Thereafter, according to the control signals 411 output from the control unit 410 of FIG. 62, the 4 × 4 processor elements carry out the processing in the manner described below.

Auf die Adressierung durch das Steuersignal 411 hin werden die 4 × 4 Speicherelemente abgerufen, die entsprechenden Bild­ daten für die drei Farben R, G und B aus dem Bildspeicher mittels einer (nicht gezeigten) Einrichtung gleichzeitig ausgelesen und die Bilddaten gleichzeitig in die zugeordneten Prozessorelemente der jeweiligen Prozessoreinheit übertragen. Danach führen gemäß dem Ablaufdiagramm in Fig. 63 die 4 × 4 Prozessorelemente parallel die Verarbeitung aus, wobei die an den gleichen Stellen gelegenen Prozessorelemente für R, G und B, wie beispielsweise die Prozessorelemente 415, 416 und 417 miteinander in Datenverbindung stehen. Wenn diese von den Prozessoreinheiten ausgeführte Verarbeitung beendet ist, werden die verarbeiteten Bilddaten in den Bildspeicher zu­ rückgebracht. Es genügt, die vorstehend beschriebene Verar­ beitung hinsichtlich einer Seite von Bilddaten auszuführen.Upon addressing by the control signal 411 , the 4 × 4 memory elements are called up, the corresponding image data for the three colors R, G and B are simultaneously read out of the image memory by means of a device (not shown) and the image data are simultaneously transferred into the assigned processor elements transfer respective processor unit. Thereafter, according to the flowchart in FIG. 63, the 4 × 4 processor elements carry out the processing in parallel, the processor elements for R, G and B located in the same places, such as processor elements 415 , 416 and 417 , being in data communication with one another. When this processing carried out by the processor units is finished, the processed image data is returned to the image memory. It suffices to carry out the above-described processing on one page of image data.

Während nach dem Stand der Technik die Verarbeitung für ein jedes einzelne Ausgangsbildelement wiederholt wird, werden bei dem beschriebenen Ausführungsbeispiel die Verarbeitungs­ ergebnisse für eine Vielzahl von Ausgangsbildelementen in dem gleichen Zyklus ausgegeben, so daß eine sehr hohe Farbbild- Verarbeitungsgeschwindigkeit erzielt werden kann.While processing according to the prior art for a every single output pixel is repeated the processing in the described embodiment results for a variety of output pixels in the same cycle, so that a very high color image Processing speed can be achieved.

Durch das gleichzeitige Eingeben von eingangsseitigen zusammenhängenden, eng benachbarten Bildelementen kann die Orts­ frequenzfilterung in einem Zyklus ausgeführt werden, so daß gleichzeitig die Ergebnisse der Ortsfrequenzfilterung an eine Vielzahl von Ausgangsbildelementen ausgegeben werden können.By simultaneous input of related,  closely adjacent picture elements can be the location frequency filtering can be carried out in one cycle, so that simultaneously the results of the spatial frequency filtering to a A large number of output picture elements can be output.

Durch das gleichzeitige Abrufen und Verarbeiten einer Viel­ zahl von Eingabedaten ist im Vergleich zu dem einzelnen Abruf der Daten zu einem jeweiligen Zeitpunkt die Verarbeitungsge­ schwindigkeit erhöht. Darüberhinaus kann durch einen einzel­ nen Abruf von Eingangsdaten durch einen Datenaustausch zwi­ schen Prozessoreinheiten eine Verarbeitung ausgeführt werden, bei der der gegenseitige Zusammenhang zwischen gleichzeitig abgerufenen Daten zu berücksichtigen ist, wie beispielsweise eine Raum- bzw. Ortsfrequenzfilterung, eine Farbverarbeitung und dergleichen.By simultaneously retrieving and processing a lot Number of input data is compared to the single call of the data at a particular point in time speed increased. In addition, a single Retrieval of input data through a data exchange between processing units are carried out, where the mutual connection between at the same time retrieved data is to be considered, such as spatial or spatial frequency filtering, color processing and the same.

Aus jedem m × n-, z. B. 4 × 4-Speicherblock werden die durch die eingegebene Farbinformation (z. B. R, G und B) ausgedrückten Rohdaten des ursprünglichen Bilds aufeinanderfolgend und für die drei Farben R, G und B gleichzeitig abgerufen. Daher können statt des mehrmaligen Abrufens eines jeden Bildele­ ments aus dem eingangsseitigen Bildspeicher jeweils gleich­ zeitig Bilddaten für m × n Bildelemente für die drei Farben abgerufen werden. Dies ermöglicht eine Bilddatenübertragung mit hoher Geschwindigkeit.From each m × n, e.g. B. 4 × 4 memory block will be by the entered color information (e.g. R, G and B) expressed Raw data of the original image sequentially and for the three colors R, G and B accessed simultaneously. Therefore can instead of repeatedly calling up each picture elements from the input image memory in each case the same early image data for m × n image elements for the three colors be retrieved. This enables image data transmission at high speed.

Darüberhinaus besteht an den Prozessorelementen in den Pro­ zessoreinheiten eine Informationsverbindung nicht nur zwi­ schen den Elementen für die gleiche Farbe, sondern auch zwischen Elementen für verschiedene Farben. Infolgedessen können die Farbinformationen für die drei Farben R, G und B gleichzeitig verarbeitet werden, so daß eine Verarbeitung zur Farbumsetzung, Farbkorrektur und dergleichen mit hoher Ge­ schwindigkeit ausgeführt werden kann. Da ferner die Prozes­ soreinheiten aus Prozessorelementen in einer Anzahl zusammengesetzt sind, die gleich der Anzahl m × n der Bildelemente in den eingangsseitigen und ausgangsseitigen Speicherblöcken ist, können gleichzeitig in Blockeinheiten m × n Bilddaten eingegeben und ausgegeben werden. Ferner ermöglichen die m × n Prozessorelemente ebensogut eine Parallelverarbeitung für Berechnungen, so daß eine zufriedenstellend hohe Verarbei­ tungsgeschwindigkeit erreicht wird.In addition, there is the processor elements in the Pro processor units not only an information connection between elements for the same color, but also between elements for different colors. Consequently the color information for the three colors R, G and B are processed simultaneously, so that processing for Color conversion, color correction and the like with high Ge speed can be executed. Furthermore, since the Prozes sensor units composed of processor elements in a number  are equal to the number m × n of picture elements in the input-side and output-side memory blocks , m × n image data can be stored simultaneously in block units can be entered and output. Furthermore, the m × n Processor elements also parallel processing for Calculations so that a satisfactorily high processing speed is reached.

Bewegungsverarbeitung bei dem zweiten AusführungsbeispielMotion processing in the second embodiment

Es wird nun ein Fall beschrieben, bei dem bei Zuweisung von Adressen gemäß Fig. 16 und 17 eine Versetzung der in Fig. 65 dargestellten Art vorgenommen wird.A case will now be described in which, when addresses are assigned according to FIGS. 16 and 17, an offset of the type shown in FIG. 65 is carried out.

In k × ℓ Speicherelementen 1b werden bei dem Anlegen einer einzelnen Adresse aus jedem von k × ℓ Teilbereichen Daten für entsprechende Stellen in einem Posten zu einem Zeitpunkt ausgelesen. Wenn alle k × ℓ Daten durch die Prozessoreinheit 2 umgeordnet und in die gleiche Adresse eingeschrieben sind, ist ein einzelner Verarbeitungsschritt zur Übertragung zwi­ schen den k × ℓ-Bereichen abgeschlossen. Wenn die Prozessorein­ heit 2 diesen Vorgang im Hinblick auf alle Adressen der Speicherelemente 1b ausführt, ist damit die Verarbeitung des ganzen Bilds abgeschlossen.In k × ℓ memory elements 1 b, when a single address is created, data for corresponding locations in one item are read out from each of k × ℓ subareas at a time. When all the k × ℓ data has been rearranged by the processor unit 2 and written into the same address, a single processing step for transmission between the k × ℓ areas is completed. If the processor unit 2 executes this process with regard to all addresses of the memory elements 1 b, the processing of the entire image is thus completed.

Die Prozessoreinheit 2 muß jedoch die Daten zu den k × ℓ Spei­ cherelementen 1b zurückbringen. Tatsächlich wird jedoch die Belastung der Prozessoreinheit 2 erleichtert, wenn die Pro­ zessoreinheit 2 nur eine Anzahl von Bereichen in einem Be­ reich A aufnimmt und nur die Anzahl der Bereiche in einen Bereich B ausgibt. Die Anzahl der Bereiche im Bereich A und im Bereich B müssen nicht unbedingt gleich sein. Beispiels­ weise ist es möglich, daß der Bereich A 3 × 3 Bereiche enthält, an denen die Prozessoreinheit 2 eine Reduktion bzw. Verklei­ nerung auf 2/3 ausführt, wonach die Ergebnisse in den Bereich B übertragen werden, der aus 2 × 2 Bereichen besteht.However, the processor unit 2 must return the data to the k × ℓ storage elements 1 b. In fact, however, the load on the processor unit 2 is relieved if the processor unit 2 only accepts a number of areas in a region A and outputs only the number of regions in a region B. The number of areas in area A and area B need not necessarily be the same. For example, it is possible that the area A contains 3 × 3 areas on which the processor unit 2 performs a reduction or reduction to 2/3, after which the results are transferred to area B, which consists of 2 × 2 areas ,

Daher genügt es, in dem Fall, daß das Lesen und Schreiben nicht an allen Speicherelementen 1b immer erforderlich ist, die Bausteinfreigabe aller Speicherelemente 1b unter Benut­ zung einer Anordnung gemäß der Fig. 15 zu steuern, nämlich diejenigen Speicherelemente zu maskieren, in die keine Daten eingeschrieben werden sollen. In diesem Fall werden als ein­ gangsseitige Daten in zwei Nachschlagetabellen die Informa­ tionen hinsichtlich der Längsformate und Querformate der Bereiche A und B sowie hinsichtlich der Lagen dieser Bereiche eingegeben.Therefore, in the event that reading and writing is not always required on all memory elements 1 b, it is sufficient to control the block release of all memory elements 1 b using an arrangement according to FIG. 15, namely to mask those memory elements into which no data should be written. In this case, the information relating to the longitudinal and transverse formats of areas A and B and the locations of these areas is entered as data on the aisle in two look-up tables.

Eine Bildverarbeitungseinrichtung enthält einen Bildspeicher aus einer Vielzahl von Speicherelementen und eine Prozessor­ einheit aus einer Vielzahl von Prozessorelementen. Durch geeignetes Gestalten der Anordnung des Bildspeichers aus den Speicherelementen, der Anordnung der Prozessoreinheit aus den Prozessorelementen und der Verbindungen zwischen den Spei­ cherelementen und den Prozessorelementen ist es möglich, mit einfachem Aufbau eine schnelle Bildverarbeitung zu erreichen, wie eine Dichteumsetzung, eine Farbumsetzung, ein Maskieren, eine Ortsfrequenzfilterung, eine Bildvergrößerung, eine Bild­ verkleinerung, eine Bilddrehung, eine Bildkomprimierung, eine Bildexpandierung und eine Farbkorrektur. Es wird auch eine Bildverarbeitungseinrichtung für Farbbilder mit einer Viel­ zahl von Bildspeichern und einer Vielzahl von Prozessorein­ heiten sowie eine allgemein anwendbare, multifunktionelle Verarbeitungseinrichtung zur parallelen Verarbeitung einer großen Datenmenge mit hoher Geschwindigkeit beschrieben.An image processing device contains an image memory from a variety of memory elements and a processor unit made up of a multitude of processor elements. By appropriate design of the arrangement of the image memory from the Memory elements, the arrangement of the processor unit from the Processor elements and the connections between the Spei cherelemente and the processor elements, it is possible with simple structure to achieve fast image processing, like a density conversion, a color conversion, a masking, spatial frequency filtering, image enlargement, image downsizing, image rotation, image compression, one Image expansion and color correction. It will be one too Image processing device for color images with a lot number of image memories and a variety of processors units as well as a generally applicable, multifunctional Processing device for parallel processing of a large amount of data written at high speed.

Claims (5)

1. Bildverarbeitungsgerät zum Verarbeiten eines in Frage kommenden Bildelements unter Verwendung von zu dem in Frage kommenden Bildelement benachbarten Bildelementen, mit
einer Prozessoreinrichtung mit einer Vielzahl von Prozessorelementen, die jeweils jeden durch zweidimensionale Teilung eines Bildes erhaltenen unterteilten Bereich des Bildes gleichzeitig verarbeiten,
wobei die Vielzahl der Prozessorelemente auf Bildelementdaten in einem in zweidimensionalen Richtungen überlappenden Bereich unter der Steuerung einer Adress- und Speicherauswahl zugreift, um in Frage kommende Bildelemente in einem Grenzabschnitt von benachbarten unterteilten Bereichen unter Verwendung der Bildelementdaten zu verarbeiten, auf die überlappend zugegriffen wird.
1. Image processing device for processing an image element in question using image elements adjacent to the image element in question
a processor device with a multiplicity of processor elements, each of which processes each divided area of the image obtained by two-dimensional division of an image,
wherein the plurality of processor elements access pixel data in an area overlapping in two-dimensional directions under the control of an address and memory selection to process candidate pixels in a border portion of adjacent divided areas using the pixel data that are overlapped accessed.
2. Bildverarbeitungsgerät nach Anspruch 1, wobei die Prozessoreinrichtung eine Ortsfilterverarbeitung des Bildes ausführt.2. The image processing apparatus according to claim 1, wherein the Processor device a spatial filter processing of the image performs. 3. Bildverarbeitungsgerät nach Anspruch 1, wobei die Prozessoreinrichtung eine Dichteumsetzung des Bildes ausführt. 3. The image processing apparatus according to claim 1, wherein the Processor device a density conversion of the image performs.   4. Bildverarbeitungsgerät nach Anspruch 1, wobei die Prozessoreinrichtung eine Farbumsetzung des Bildes ausführt.4. The image processing apparatus according to claim 1, wherein the Processor device a color conversion of the image performs. 5. Bildverarbeitungsgerät nach Anspruch 1, wobei die Prozessoreinrichtung eine Maskierverarbeitung des Bildes ausführt.5. The image processing apparatus according to claim 1, wherein the Processor means masking the image performs.
DE3845004A 1987-02-18 1988-02-17 High speed parallel image processing appts. Expired - Fee Related DE3845004C2 (en)

Applications Claiming Priority (13)

Application Number Priority Date Filing Date Title
JP62033175A JP2647378B2 (en) 1987-02-18 1987-02-18 Image processing device
JP62033172A JPS63201757A (en) 1987-02-18 1987-02-18 Image processor
JP62033171A JP2647375B2 (en) 1987-02-18 1987-02-18 Image processing device
JP62033179A JP2647380B2 (en) 1987-02-18 1987-02-18 Color image processing equipment
JP62033176A JP2647379B2 (en) 1987-02-18 1987-02-18 Image processing device
JP62033182A JPS63201784A (en) 1987-02-18 1987-02-18 Picture processing device
JP62033173A JP2647376B2 (en) 1987-02-18 1987-02-18 Image processing device
JP62033174A JP2647377B2 (en) 1987-02-18 1987-02-18 Image processing device
JP62033178A JP2728663B2 (en) 1987-02-18 1987-02-18 Image processing device
JP62033180A JPS63201782A (en) 1987-02-18 1987-02-18 Picture processing device
JP62033181A JPS63201783A (en) 1987-02-18 1987-02-18 Picture processing device
JP62033177A JPS63201779A (en) 1987-02-18 1987-02-18 Picture processor
DE3844921A DE3844921C2 (en) 1987-02-18 1988-02-17 High speed parallel image processing appts.

Publications (1)

Publication Number Publication Date
DE3845004C2 true DE3845004C2 (en) 2002-04-04

Family

ID=27583968

Family Applications (2)

Application Number Title Priority Date Filing Date
DE3845005A Expired - Fee Related DE3845005C2 (en) 1987-02-18 1988-02-17 Image processing means
DE3845004A Expired - Fee Related DE3845004C2 (en) 1987-02-18 1988-02-17 High speed parallel image processing appts.

Family Applications Before (1)

Application Number Title Priority Date Filing Date
DE3845005A Expired - Fee Related DE3845005C2 (en) 1987-02-18 1988-02-17 Image processing means

Country Status (1)

Country Link
DE (2) DE3845005C2 (en)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4786820A (en) * 1984-12-14 1988-11-22 Canon Kabushiki Kaisha Apparatus for parallel-processing image data

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4786820A (en) * 1984-12-14 1988-11-22 Canon Kabushiki Kaisha Apparatus for parallel-processing image data

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
A.ROSENFELD:"Parallel Image Processing Using Cel- lular Arrays", Computer, Jan. 1983, S.14-20 *
J.L.POTTER:"Image Processing on the Massively Parallel Processor", Computer, Jan.1983, S.62-67 *
T.KUSHNER, A.Y.WU, A.ROSENFELD:"Image Prozessing on ZMOB", IEEE Trans. on Computers, Vol. C-31, No.10, Oct. 1982, S. 943-951 *

Also Published As

Publication number Publication date
DE3845005C2 (en) 2002-04-04

Similar Documents

Publication Publication Date Title
DE3804938A1 (en) Image processing device
DE69433031T2 (en) IMAGE PROCESSOR
DE69333103T2 (en) Device for converting digital data
DE3202365C2 (en) Data storage with window scanning
DE69630345T2 (en) Video enlarger
DE3141196A1 (en) VIDEO IMAGE PROCESSING DEVICE
DE3230679C2 (en) Image line buffering device
DE3631333C2 (en)
DE4231158C2 (en) Process and device for composing and displaying images
DE2825930A1 (en) VIEWER WITH COMPRESSED IMAGE REPEAT
DE2835689A1 (en) ARRANGEMENT FOR CHANGING THE RESOLUTION FOR IMAGE DATA ACQUISITION AND TRANSFER
DE2636093A1 (en) DEVICE FOR CONVERTING INPUT DATA INTO DATA WITH A BALANCED FREQUENCY DISTRIBUTION OF ITS INTENSITY
DE2340597A1 (en) IMAGE PROCESSING ARRANGEMENT
DE102006022062A1 (en) Method and apparatus for efficient image rotation
DE3619427A1 (en) METHOD AND ARRANGEMENT FOR GENERATING FRACTALS
DE3218815C2 (en)
DE3632639C2 (en) Device for high-speed processing of image data by folding
DE2816609C2 (en) Arrangement for image processing
DE10261373A1 (en) Apparatus and method for converting picture elements from the YUV format to the RGB format using color conversion tables
DE4234985C2 (en) Method for transforming color signals and device for carrying out the method
DE69433392T2 (en) Video data processor and video signal data processing
DE4408522C2 (en) Device for processing image data and method for processing image data
DE10334627A1 (en) Line buffer and method for providing line data for color interpolation
DE3845004C2 (en) High speed parallel image processing appts.
DE3844921C2 (en) High speed parallel image processing appts.

Legal Events

Date Code Title Description
Q172 Divided out of (supplement):

Ref country code: DE

Ref document number: 3844921

8110 Request for examination paragraph 44
AC Divided out of

Ref country code: DE

Ref document number: 3844921

Format of ref document f/p: P

AC Divided out of

Ref country code: DE

Ref document number: 3844921

Format of ref document f/p: P

D2 Grant after examination
8364 No opposition during term of opposition
8339 Ceased/non-payment of the annual fee