DE3619427C2 - - Google Patents

Info

Publication number
DE3619427C2
DE3619427C2 DE3619427A DE3619427A DE3619427C2 DE 3619427 C2 DE3619427 C2 DE 3619427C2 DE 3619427 A DE3619427 A DE 3619427A DE 3619427 A DE3619427 A DE 3619427A DE 3619427 C2 DE3619427 C2 DE 3619427C2
Authority
DE
Germany
Prior art keywords
sample
sample space
convolution
pattern
space
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
DE3619427A
Other languages
English (en)
Other versions
DE3619427A1 (de
Inventor
Joan Mary Ogden
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.)
RCA Corp
Original Assignee
RCA Corp
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
Application filed by RCA Corp filed Critical RCA Corp
Publication of DE3619427A1 publication Critical patent/DE3619427A1/de
Application granted granted Critical
Publication of DE3619427C2 publication Critical patent/DE3619427C2/de
Granted legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/001Texturing; Colouring; Generation of texture or colour
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/40Analysis of texture
    • G06T7/41Analysis of texture based on statistical description of texture
    • G06T7/48Analysis of texture based on statistical description of texture using fractals

Landscapes

  • Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Probability & Statistics with Applications (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Image Processing (AREA)
  • Complex Calculations (AREA)
  • Processing Or Creating Images (AREA)
  • Image Generation (AREA)

Description

Die Erfindung betrifft ein Verfahren und eine Anordnung zur Berechnung einer Klasse von Funktionen, die als "Fraktalen" bezeichnet werden. Mit der Erfindung soll die Rechenzeit für die Bildung solcher Funktionen vermindert werden, insbesondere zur Erzeugung von Video-Graphiken mittels Computer.
Traditionelle mathematische Verfahren zur Beschreibung der Natur stützen sich auf idealisierte Modelle der komplizierten und unregelmäßigen Formen und physikalischen Vorgänge, wie sie in der Natur vorkommen. Diese idealisierten Modelle können mit Hilfe stetiger, differenzierbarer Funktionen beschrieben werden, und ihre Erzeugung beruht auf keinerlei statistischen Grundlagen. Graphiken, die Wolken, Berge, Küstenlinien, Bäume und dergleichen darstellen, sind jedoch mit solchen Mitteln äußerst schwierig zu beschreiben. In dem Buch "The Fractal Geometry of Nature" von Benoit Mandelbrot (Verlag Freeman, San Francisco, 1982) wird ausführlich eine neue Klasse von Funktionen behandelt, die sogenannten "Fraktalen", mit denen sich solche unregelmäßigen, gestückelten oder klastischen Naturformen ausdrücken lassen.
Eine Fraktalfunktion enthält sowohl die einer Gestalt innewohnende Grundform als auch die statistischen oder unregelmäßigen Eigenschaften der Anordnung dieser Gestalt im Raum. So kann man beispielsweise eine Wolke unter Verwendung sich überlappender Kreise zeichnen. Der Kreis ist hier die Grundgestalt, und die unregelmäßig bestimmte Größe und Position der Kreise gibt der Wolke ihr natürliches Aussehen.
Fraktalen haben die Eigenschaft, daß sie zu sich selbst ähnlich bleiben (Eigenählichkeit), wenn der räumliche Maßstab über viele Größenordnungen verändert wird. Als Beispiel sei eine felsige, sehr gezackte und schartige Küstenlinie betrachtet. Das Aussehen der Küstenlinie bleibt ähnlich, ob man sie von einem Düsenflugzeug (aus 10 km Höhe) sieht oder von einem niedrig fliegenden Flugzeug (100 m) oder auf der Erde stehend (etwa 1 m) betrachtet. Ein Gebirge ist ein anderes Beispiel für eine eigenähnliche Form. Wenn der Beobachter dem Gebirge näherkommt, ähneln seine Nebengipfel und Hügel dem Ganzen. Bei einem kleineren Maßstab haben die das Gebirge ausmachenden Felswände und Klüfte eine Struktur, die an die Struktur des gesamten Gebirges erinnert. Betrachtet man die Wolken, die Küstenlinie oder das Gebirge, läßt sich erkennen, daß dort jeweils eine bestimmte Grundform, der "Erzeuger", in vielen verschiedenen räumlichen Maßstäben von riesig groß bis winzig klein dargestellt ist.
Eigenähnliche Strukturen können die Unregelmäßigkeit eines Gebirges oder von Wolken haben, oder sie können in einer regelmäßigeren Weise geometrisch definiert und aufgebaut sein. Eigenähnliche Strukturen mit einer unendlichen Anzahl räumlicher Maßstäbe lassen sich bilden, indem man mit einer gewünschten Struktur, dem sogenannten "Initiator", beginnt und dann zielbewußt eine zweite Struktur, den "Erzeuger" in fortschreitend kleinerem spektralem Maßstab einfügt. Die resultierende Fraktale nennt man ein "Teragon". Mandelbrot führt viele Beispiele von Teragonen an, sowohl regelmäßige als auch unregelmäßige.
Die "gewöhnliche topologische Dimension" DT ist das intuitive euklidische Maß: für einen Punkt gilt DT=0, eine Linie hat DT=1, bei einer Fläche ist DT=2, und ein Kubus hat DT=3. Mandelbrot verallgemeinert den Dimensionsbegriff von der gewöhnlichen topologischen Dimension DT auf die Hausdorff- oder Fraktal-Dimension D, die geeignet ist um die kompolizierte, manchmal unendlich lange Ausdehnung einer fraktalen Struktur zu messen. Mit der Fraktaldimension kan auch eine "Ähnlichkeitsdimension" assoziiert werden. Um das Beispiel von Mandelbrot hinsichtlich dieses Dimensionsbegriffs zu interpretieren, sei noch einmal die rauhe gezackte Küstenlinie betrachtet. Mißt man auf einer detaillierten Landkarte die Länge der Küstenlinie zwischen zwei Punkten unter Verwendung einer kleinen geradlinigen Meßrute ab, deren Länge ε=10 km des Kartenmaßstabes ist, dann erhält man als Meßergebnis eine bestimmte Entfernung L=Nε. Bei Verwendung enes solchen groben Maßes müssen jedoch zwangsläufig einige Buchten der Küste übergangen werden, und das Meßergebnis L ist zu klein. Wiederholt man die Messung mit einer Meßrute deren Länge ε=1 km des Kartenmaßstabes ist, dann wird die Gesamtlänge L größer. Zur weiteren Verkürzung der einzelnen geradlinigen Meßschritte kann man die Küstenlinie direkt ausmessen, zunächst mit Hilfe von Landvermessungsinstrumenten, dann mittels Echtmeßlatten, und dann mit einem Mikroskop. Wenn ε gegen 0 geht und jede noch so winzige Einzelheit ausgemessen wird, geht die Gesamtlänge der Küstenlinie gegen unendlich. Dieses Problem rührt daher, daß L in eindimensionalen Einheiten gemessen wird, d. h. L(ε)=Nε¹. Mißt man L stattdessen in Einheiten von εD, wobei D die Fraktaldimension (Hausdorff-Dimension) ist, dann gibt es eine Zahl D, (1<D<2), bei welcher die gemessene Länge L=NεD unabhängig vom Wert der Größe ε ist. Die fraktale Küstenlinie liegt irgendwo zwischen einer Reihe verbundener geradliniger Abschnitte, die man eindeutig mit einem eindimensionalen Meßstab messen könnte, und einer raumfüllenden zweidimensionalen Struktur, bei welcher das übliche zweidimensionale Flächenmaß passend wäre. Die Fraktaldimension D liegt irgendwo zwischen 1 und 2. Eine Fraktale ist eine Struktur, deren Hausdorff-Dimension D größer ist als ihre topologische Dimension DT. Je größer D gegenüber DT ist, desto gewundener oder "raumfüllender" oder unregelmäßiger ist die Fraktale.
Die Fraktalgeometrie wurde in jüngster Zeit auch von Fachleuten der Computergraphik herangezogen, als ein Weg zur synthetischen Darstellung natürlich aussehender Formen und Texturen. Die Erzeugung von Fraktalen nach dem Stand der Technik erfordert viel Rechenaufwand, typischerweise viele Minuten oder gar Stunden Computerzeit pro Bild. Bei den meisten der Simulationen wird eine Regel zur Schaffung der Grundform vorgegeben, und ein statistischer Prozeß ähnlich einer Zufallsbewegung wird begonnen. Es wird eine große Anzahl an Schritten durchgeführt, und das Endprodukt ist ein Fraktal-Bild. Eine Übersicht über die bekannte Verwendung von Fraktalen findet sich in einem Artikel von Alex Pentland "Fractal-Based Description of Natural Szenes" (I.E.E.E. Transactions on Pattern and Machine Intelligence, Band PAMI-6, No. 6, November 1984, Seiten 661-674). Eine andere Übersicht geben A. Fournier, D. Fussell und L. Carpenter in ihrem Aufsatz "Computer Rendering of Stochastic Models" (Communications of the ACM, Band 25, No. 6, Juni 1982, Seiten 371-384). Wünschenswert ist ein weniger mühsamer Weg zur Erzeugung von Fraktalen, mit dem ihre Berechnung in kürzerer Zeit durchgeführt werden kann. Dabei soll es sich zweckmäßigerweise um eine Methode handeln, die in digitaler Hardware realisiert werden kann, um Fraktalen in Realzeit mit den Geschwindigkeiten der üblichen Fernsehabtastung zu erzeugen.
Bei der vorliegenden Erfindung handelt es sich um eine neue, viel wirkungsvollere Methode zur Erzeugung von Fraktalen, wobei diese Methode nach Art einer Teragonbildung funktioniert. Die Methode beruht auf der Einsicht, daß die Eigenschaft der Eigenähnlichkeit bei Fraktalen in Beziehung gesetzt werden kann zu einer Eigenähnlichkeit, die bei inversen Pyramiden-Transformierten existiert.
Pyramiden-Transformierte und deren Inverse sind z. B. von P.J. Burt in der Arbeit "The Pyramid as a Structure for Efficient Computation" beschrieben (Veröffentlichung IPL-TR-038 des Image Processing Laboratory, Electrical and Systems Engineering Department, Rensselaer Polytechnik Institute, Troy, NY 12 181). Eine speziellere Beschreibung inverser Pyramiden-Transformierter geben P.J. Burt und E.H. Adelson in ihrer Arbeit "A Multiresolution Spline with Application to Image Mosaics" (ACM Transactions on Graphics, Band 2, No. 4, Oktober 1983, Seiten 217-236).
Die Pyramiden-Transformation nach Burt ist ein Algorithmus zur Spektralanalyse, der ein Signal in Komponenten eines Raumfrequenzspektrums aufteilt, und zwar in Bandpaßkomponenten, deren jede in einer oder mehreren Dimensionen ungefähr eine Oktave breit ist, und in eine restliche Tiefpaßkomponente. Die Bandpaßkomponenten haben der Reihe nach fortschreitend niedrigere Mittenfrequenz und geringere Abstastdichte in jeder Dimension, und zwar nehmen beide Größen von einer Bandpaßkomponente zur jeweils nächstniedrigeren Komponente immer auf die Hälfte ab. Die restliche Tießpaßkomponente kann mit der gleichen Dichte abgetastet sein wie die niedrigste Bandpaßkomponente, oder ihre Abtastdichte kann halb so groß sein, und zwar in jeder Dimension. Vorgänge, die auf die Komponenten des Transformationsresultates einwirken, beeinflussen in verschiedenen Maßstäben die Rekonstruktion des Signals in einem inversen Transformationsprozeß. Einwirkungen auf solche Komponenten des Transformationsresultates, die niedrigere Raumfrequenz haben und spärlicher abgetastet sind, beeinflussen das rekonstruierte Signal über einen größeren Bereich als Einwirkungen auf Komponenten des Transformationsresultates, die höhere Raumfrequenz haben und dichter abgetastet sind. Dies liegt an der Natur der inversen Pyramiden-Transformation (inverser Pyramiden-Prozeß).
Bei dem inversen Pyramiden-Prozeß werden die spärlicher abgetasteten (und möglicherweise modifizierten) Komponenten des Transformationsresultates durch Interpolation erweitert, damit sie die gleiche Abtastdichte wie das am dichtesten abgetastete Transformationsresultat bekommen. Die erweiterten Komponenten des Transformationsresultates, die nun mit der gleichen Abtastdichte erscheinen, werden durch einfache Matrix-Summierung linear miteinander kombiniert. Das heißt, an jedem Abtastpunkt des am dichtesten abgetasteten Probenraumes findet eine Zusammensummierung der den betreffenden Punkt mitbelegenden erweiterten Komponenten des Transformationsresultates statt.
Wegen der assoziativen und distributiven Eigenschaften in dem beschriebenen Erweiterungs- und linearen Kombinationsprozeß wird dieser Prozeß am wirtschaftlichsten in der folgenden Weise durchgeführt. Die am spärlichsten abgetastete Komponente des Transformationsresultates wird auf die gleiche Abtastdichte erweitert, wie sie die am zweitwenigsten dicht abgetastete Komponente hat, dann wird sie linear mit dieser letztgenannten Komponente kombiniert, um die lineare Kombination der beiden Komponenten mit der zweitgeringsten Abtastdichte zu erhalten. Diese lineare Kombination der zwei Komponenten des Transformationsresultates wird dann auf diejenige Abtastdichte erweitert, wie sie die am drittwenigsten dicht abgetastete Komponente hat, und wird dann linear mit dieser kombiniert, um die lineare Kombination der drei Komponenten des Transformationsresultates mit der drittkleinsten Abtastdichte zu erhalten. Diese aufeinanderfolgende schrittweise Erweiterung und lineare Kombination geht weiter, bis man die lineare Kombination aller Komponenten des Transformationsresultates mit der größten Abtastdichte (d. h. mit der Abtastdichte der obersten Oktave der Transformierten) erhält.
Ein guter Weg zur Interpolation von Funktionen, die in Form diskreter Abtastwerte oder "Proben" vorliegen, ist von R. W. Schaefer und L. R. Rabiner in der Arbeit "A Digital Signal Processing Approach to Interpolation" beschrieben (erschienen in Proceedings of the IEEE, Band 61, Nr. 6, Juni 1973, Seiten 692-702). Bei spärlichen Abtastmustern sind Nullwerte oder leere Stellen zwischen die Datenproben eingefügt, um dichtere Abtastmuster entwickeln zu können, und die durch die Einfügung der leeren Stellen erzeugten ungewollten harmonischen Frequenzen werden durch Tiefpaßfilterung entfernt.
Bei dem erfindungsgemäßen Verfahren zur Erzeugung einer Fraktalen werden mehrere Abtastpunkt- oder Probenräume definiert, die der Reihe nach mit Ordnungszahlen von 1 bis n durchnumeriert sind. Der erste der Probenräume wird in mehreren Dimensionen regelmäßig abgetastet, und jeder andere Probenraum wird ebenfalls regelmäßig in diesen Dimensionen abgetastet, jedoch mit einer Dichte, die spärlicher (d. h. geringer) ist als die Abtastdichte, die im Probenraum der jeweils nächstniedrigeren Ordnungszahl benutzt wird. In jedem Probenraum ist ein Punktmuster (Saatmuster oder "Streumuster") vorgesehen. Jedes Punktmuster kann von unregelmäßiger oder zufälliger Art, halb-zufälliger Art oder regelmäßiger Art sein, und es kann dem in den anderen Probenräumen vorgesehenen Punktmuster ähneln oder anders als dieses sein. In manchen der Probenräume kann das Punktmuster auch ohne Punkte sein. Außerdem wird ein sogenannter "Erzeuger" vorgesehen, bei dem es sich um ein primitives Bild handelt, z. B. um eine Form der ebenen Geometrie oder um ein von einer Videokamera abgeleitetes Bild. Der Erzeuger wird durch Faltungen in der Raumdomäne (räumliche Faltungen) mit den jeweiligen Mustern verknüpft, um einzelne Faltungsresultate zu erhalten. Der Erzeuger ist für jeden Probenraum derselbe, kann aber bei den verschiedenen Räumen unterschiedlich gedreht oder etwas verschieden groß bemessen sein. Die Faltungsresultate in den Probenräumen, die höhere Ordnungszahl als 1 haben, werden durch Interpolierungsprozesse auf dieselbe Abfragedichte erweitert wie der erste Probenraum und mit dem Faltungsergebnis im ersten Probenraum kombiniert, um die Fraktale zu erzeugen. Diese Interpolations- und Kombinationsprozesse können am wirtschaftlichsten durchgeführt werden, indem man die assoziativen und distributiven Eigenschaften in den Erweiterungs- und Kombinationsprozessen ausnutzt.
Eine nach diesem Verfahren arbeitende Anordnung kann gemäß einem weiteren Aspekt der Erfindung Fraktalen zur Darstellung auf einem Videomonitor erzeugen.
Die Erfindung wird nachstehend an Ausführungsbeispielen anhand von Zeichnungen näher erläutert.
Fig. 1 ist ein Blockschaltbild einer erfindungsgemäßen Anordnung zur Erzeugung von Fraktalen;
Fig. 2 veranschaulicht in Blockdarstellung Einzelheiten eines Adressengenerators in der Anordnung nach Fig. 1 zur Erzeugung von Leseadressen und Basis- Schreibadressen;
Fig. 3 und 4 sind Blockschaltbilder alternativer Ausführungsformen von Faltungseinrichtungen, wie sie in der Anordnung nach Fig. 1 verwendet werden können;
Fig. 5 ist ein Blockschaltbild einer möglichen Ausführungsform der in der Anordnung nach Fig. 1 verwendeten Erweiterungseinrichtungen;
Fig. 6 ist ein Blockschaltbild eines Fraktalprozessors, welcher der Anordnung nach Fig. 1 nachgeschaltet werden kann, um Graphikbilder aus den erzeugten Fraktalen zu erzeugen;
Fig. 7 ist ein Blockschaltbild eines Schreibadressengenerators für die Anordnung nach Fig. 1, um für translatorische oder Driftbewegungen in den aus den Fraktalen erzeugten Graphikbildern zu sorgen;
Fig. 8 ist ein Blockschaltbild eines Schreibadressengenerators zum Hervorrufen von Drehbewegungen in den aus den Fraktalen erzeugten Graphikbildern;
Fig. 9 ist ein Blockschaltbild einer Modifikation für den Schreibadressengenerator nach Fig. 7 oder 8, um für eine Zufälligkeit in den Bewegungen des aus den Fraktalen erzeugten Graphikbildes zu sorgen;
Fig. 10 ist ein Blockschaltbild eines Schreibadressengenerators, der dazu dient, wahlweise kompliziertere Bewegungen in den aus den Fraktalen erzeugten Graphikbildern hervorzurufen;
Fig. 11 ist ein Blockschaltbild einer Einrichtung zum Drehen des Erzeugermusters vor der Faltung mit den Streumustern in Abwandlungen der Anordnung nach Fig. 1;
Fig. 12 ist ein Blockschaltbild einer anderen Ausführungsform einer erfindungsgemäßen Anordnung zur Erzeugung von Fraktalen;
Fig. 13 ist ein Blockschaltbild eines Adressenerzeugers zur Verwendung in der Anordnung nach Fig. 12;
Fig. 14 und 15 sind Blockschaltbilder weiterer Ausführungsformen erfindungsgemäße Anordnungen zur Erzeugung von Fraktalen.
Das Verfahren zur Bildung von Fraktalen gemäß der Erfindung macht es möglich, in Realzeit Videosignale zu erzeugen, die auf Fraktalen beruhende Graphikbilder darstellen. Das Verfahren wird in Verbindung mit einem solchen Graphikbilderzeuger beschrieben, es kann jedoch auch als Arbeitsvorschrift (Software) dienen, um Bilder in verlängerter Zeit zu erzeugen.
Die Fig. 1 zeigt schematisch das Gesamtsystem einer Anordnung, die in Realzeit ein Videosignal zu erzeugen vermag, das irgendeines einer Vielzahl von Graphikbildern darstellt, die auf Fraktalen beruhen. In jedem der aufeinanderfolgenden Fernseh-Teilbilder wird ein aus Punkten bestehendes Muster, im folgenden "Streumuster" genannt, mit einem Muster gefaltet, das die Rolle des eingangs erwähnten "Erzeugers" spielt und daher im folgenden als "Erzeugermuster" bezeichnet wird. Im einzelnen findet während jedes Fernseh-Teilbildintervalls eine Folge solcher Faltungsvorgänge statt, wobei von Vorgang zu Vorgang die Abtastung der Bilder innerhalb der jeweiligen Abtast- oder Probenräume immer mehr verdichtet wird, derart, daß Formen in zunehmend größer werdenden Maßstäben erzeugt werden. Diese Formen werden dann unter Anwendung eines Erweiterungs- und Kombinationsprozesses miteinander kombiniert. Die Faltungen werden durchgeführt, indem man die Streumuster über Erzeugermuster gleiten läßt, und die gleitenden Streumuster werden erhalten durch Abtastung von RAM-Speichern, in denen die Streumuster gespeichert sind (die Abkürzung RAM steht für Random Access Memory und wird im folgenden gemäß dem auch hierzulande üblichen Sprachgebrauch dazu verwendet, Speicher mit wahlfreiem oder direktem Zugriff zu bezeichnen).
Aufeinanderfolgende Teilbilder seien als nicht-verflochtene Teilbilder angesehen, die aufeinanderfolgend in Modulo-zwei-Ziffern numeriert sind; Modifikationen zur Teilbildverflechtung durch zeilenweise oder bildpunktweise Verschachtelung können von einem Fachmann auf dem Gebiet der Fernsehtechnik leicht vorgenommen werden. Zur Vereinfachung sei angenommen, daß jedes Teilbild aus 2⁸ Zeilen und jede Zeile aus 2⁸ Bildpunkten besteht und daß die Teilbildperiode 1/60 Sekunden beträgt. Jeder Durchschnittsfachmann auf dem Gebiet der Fernsehtechnik wird wissen, welche Modifikationen er vorzunehmen hat, um eine Anpassung an Normen des Fernsehrundfunks oder an Normen der Video-Graphik zu erreichen.
Eine Gruppe 10 von RAM-Speichern 11, 12, 13 und 14 speichert die Streumuster, die für die Faltungsvorgänge in den geradzahligen, abwechselnden Exemplaren der Video- Teilbilder benutzt werden. Der RAM 11 ist für Bit-Abbildung (bit mapping) des Video-Graphikbildes organisiert. Das heißt, die Speicherplätze im RAM 11 sind durch ganzzahlige Werte orthogonaler Adressenkoordinaten adressierbar, welche für jeden Speicherplatz kartographisch angeben, wo sich der betreffende Bildpunkt innerhalb des Bildes befindet, wie es in Videosignalform erzeugt wird, um es auf dem Schirm eines Videomonitors darzustellen. Der RAM 11 hat 2¹⁶ Speicherplätze, wobei 256 Reihenadressen die 2⁸ Zeilen pro Teilbild angeben und wobei 256 Spaltenadressen die 2⁸ Bildpunktpositionen innerhalb einer Zeile angeben. Der RAM 11 speichert ein sehr feines oder ultra-hochauflösendes Streumuster aus Punkten, wobei jeder Punkt einen durch eine entsprechende Reihen- und eine entsprechende Spaltenadresse adressierten Speicherplatz im RAM 11 hat. Der RAM 12 hat 2¹⁴ Plätze, die durch 2⁷ Reihenadressen und 2⁷ Spaltenadressen adressiert werden. Der RAM 12 speichert ein feines oder hochauflösendes Streumuster aus Punkten, wobei jeder Punkt einen durch eine entsprechende Reihenadresse und eine entsprechende Spaltenadresse adressierten Speicherplatz hat. Jeder Speicherplatz im RAM 12 speichert den Wert eines jeweils anderen Bildbereichs von 2 mal 2 Bildpunkten des Video-Graphikbildes. Der Speicher 13 hat 2¹² Speicherplätze und speichert ein grobes oder schwach auflösendes Streumuster aus Punkten. Jeder Speicherplatz im RAM 13 speichert den Wert eines jeweils anderen Bildbereichs von 4 mal 4 Bildpunkten. Der RAM 14 hat 2¹⁰ Speicherplätze und speichert ein sehr grobes, noch geringer aufgelöstes Streumuster aus Punkten. Jeder Speicherplatz im RAM 14 speichert den Wert eines jeweils anderen Bildbereichs von 8 mal 8 Bildpunkten.
Eine Gruppe 15 von RAM-Speichern 16, 17, 18, und 19 speichert die Streumuster, die für die Faltungsvorgänge in den ungeradzahligen alternierenden Exemplaren der Video-Teilbilder verwendet werden. Die RAM-Speicher 16, 17, 18 und 19 der Gruppe 15 entsprechen in der angegebenen Reihenfolge den RAM-Speichern 11, 12, 13 und 14 der Gruppe 10, was die Art und Weise anbetrifft, wie sie Bildpunkte und Haufen von Bildpunkten des Videobildes speichern.
Die Einschreibung von Punktmustern und die Auslesung der Streumuster an den RAM-Speichern der Gruppe 10 und der Gruppe 15 geht folgendermaßen vor sich: Während jedes ungeradzahligen Teilbildes werden Streumuster in die RAM-Speicher der Gruppe 10 eingeschrieben und aus den RAM-Speichern der Grupp 15 ausgelesen, und während jedes der dazwischenliegenden geradzahligen Teilbilder werden Streumuster aus den RAM-Speichern der Gruppe 10 ausgelesen und in die RAM-Speicher der Gruppe 15 eingeschrieben.
Dieses Verfahren wird aus mehreren Gründen angewandt. Zum einen erlaubt es eine Anpassung an die Verzögerungen, die bei den Erweiterungs- und Kombinationsprozessen auftreten, wie es noch beschrieben wird. Ferner erleichtert das Verfahren eine Animation (Belebung) der Graphikbilder, die aus den erzeugten Fraktalen abgeleitet werden. Schließlich vereinfacht das Verfahren die Eingabe neuer Streumuster in die Gruppe 10 oder in die Gruppe 15 der RAM-Speicher.
Um das genannte Verfahren durchzuführen, wird die Modulo- zwei-Teilbildnummer als Schreibbefehl-Signal an die RAM- Speicher 11, 12, 13 und 14 und als Lesebefehl-Signal an die RAM-Speicher 16, 17, 18 und 19 gelegt. Die Befehle werden beim Logikzustand "1" ausgeführt. Ein Logikinverter 20 bildet das Komplement der Modulo-zwei-Teilbildnummer. Dieses Komplement wird als Lesebefehl an die RAM- Speicher 11, 12, 13 und 14 und als Schreibbefehl an die RAM-Speicher 16, 17, 18 und 19 gelegt. Ein Speicheradressen- Multiplexer 21 spricht auf die Modulo-zwei-Teilbildnummer oder auf deren Komplement oder (wie dargestellt) auf beides an, um Leseadressen-Signale an die jeweils auszulesende RAM-Speichergruppe 10 oder 15 zu wählen und um Schreibadressen-Signale an jeweils diejenige der RAM-Speichergruppen 10 und 15 zu legen, in die eingeschrieben wird.
Ein Lese/Schreib-Adressengenerator 22 erzeugt Basis- Schreibadressen, die an einen Leseadressengenerator 23 gelegt werden, der sie modifiziert, um die Leseadressen zu erzeugen. Die genannten Adressengeneratoren 22 und 23 können eine Schaltungsanordnung enthalten, wie sie in Fig. 2 dargestellt ist. Ein Haupttaktoszillator 24 erzeugt Impulse mit der Bildpunkt-Abtastfrequenz, die als Taktsignal für den ersten Probenraum ("Erstraum-Takt") verwendet werden können. Dieses Signal wird auf den Eingang einer Kaskade 25 von Schaltungen gegeben, deren jede eine Teilung der Impulsfrequenz durch 2 bewirkt, um nacheinander ein schnelles Taktsignal für den zweiten Probenraum ("Zweitraum-Zweifachtakt"), ein Normaltaktsignal für den zweiten Probenraum ("Zweitraum-Takt"), ein schnelles Taktsignal für den dritten Probenraum ("Drittraum-Zweifachtakt"), ein Normaltaktsignal für den dritten Probenraum ("Drittraum-Takt"), ein schnelles Taktsignal für den vierten Probenraum ("Viertraum-Zweifachtakt") und ein Normaltaktsignal für den vierten Probenraum ("Viertraum-Takt") zu erzeugen. Die Erzeugung dieser Taktsignale ist verbunden mit der Erzeugung der Basisschreibadressen- und Leseadressen-Signale für sich.
Die Erzeugung dieser Adressensignale erfolgt in der Schaltungsanordnung 26. Die Impulse aus dem Haupttaktoszillator 24 werden in einem 16stufigen Binärzähler 27 gezählt, dem ein einstufiger Binärzähler 28 nachgeschaltet ist. Alle Stufen in den Zählern 27 und 28 können beim Übergang zwischen einem ungeradzahligen und einem geradzahligen Teilbild auf 0 zurückgestellt werden, um den Fraktalen-Generator mit der Bildwiedergabeeinrichtung oder einer anderen bilderzeugenden Einrichtung zu synchronisieren. Die vom Zähler 27 gelieferte 16stellige Binärzahl ist das rasterabtastende Basisschreibadressen- Signal im ersten Probenraum und wird außerdem als Leseadressen-Signal an das jeweils zur Auslesung ausgewählte Exemplar der RAM-Speicher 11 und 16 gelegt. Die 8 höchstwertigen Bits des Ausgangssignals des Zählers 27 geben die Nummer der Abtastzeile an und werden als Reihenadresse verwendet, und die 8 niedrigstwertigen Bits des Ausgangssignals des Zählers 27 geben die Nummern der Bildpunkte entlang der Abtastzeile an und werden als Spaltenadresse verwendet. Der Ausgang des Zählers 28 liefert die weiter oben erwähnte Modulo- zwei-Teilbildnummer.
Dank des Umstandes, daß für die Anzahl der Zeilen pro Teilbild und für die Anzahl der Bildpunkte pro Zeile jeweils eine ganzzahlige Potenz von 2 gewählt wurde, können die höchstwertigen Bits und die niedrigstwertigen Bits des Ausgangssignals des Zählers 27 direkt als Reihen- bzw. Spaltenadresse verwendet werden, um die Speicherplätze des jeweils zur Auslesung gewählten Exemplars der RAM-Speicher 11 und 16 rastermäßig abzutasten. Benutzt man eine andere Zeilenzahl und eine andere Bildpunktzahl, dann benötigt man kompliziertere Anordnungen, um den Bildpunkt-Zählwert zu dividieren, damit man die Angaben für die Abtastzeile und die Bildpunktposition erhält. Das Vorsehen solcher Anordnungen ist lediglich eine Konstruktionsfrage, die ein Durchschnittsfachmann auf dem Gebiet der Fernsehtechnik und Schaltungsauslegung ohne weiteres von sich aus lösen kann. Die Wahl ganzzahliger Potenzen von 2 für die Zeilenzahl pro Teilbild und für die Bildpunktzahl pro Abtastzeile vereinfacht ebenso die rastermäßige Abtastung der RAM-Speicher 12, 13, 14, 17, 18 und 19.
Die Rasterabtastgeschwindigkeit für das jeweils zur Auslesung ausgewählte Exemplar der RAM-Speicher 12 und 14 beträgt ein Viertel der Abtastgeschwindigkeit für das zur Auslesung ausgewählte Exemplar der RAM-Speicher 11 und 16. Die Reihenadressen für den jeweils auszulesenden RAM-Speicher 12 oder 17 werden teilweise dadurch erhalten, daß man das niedrigstwertige Exemplar der 8 höchstwertigen Bits des Zählers 27 fallenläßt, um den sich auf die Reihe beziehenden Teil der Basisschreibadresse für den zweiten Probenraum zu erzeugen. Die Spaltenadressen für den jeweils auszulesenden RAM-Speicher 12 oder 17 wird teilweise dadurch erhalten, daß man das niedrigstwertige Exemplar der 8 niedrigstwertigen Bits des Zählers 27 fallenläßt, um den sich auf die Spalte beziehenden Teil der Basisschreibadresse für den zweiten Probenraum zu erzeugen. Die resultierende, aus 14 Bits bestehende Basisschreibadresse für den zweiten Probenraum wird an einen Eingang eines Addierers 29 gelegt, dessen anderer Eingang zur Addierung eines Offsetwertes angeschlossen ist. Dieser Offsetwert sorgt für einen Ausgleich des Laufzeitunterschiedes zwischen dem Faltungsresultat im Probenraum, der durch das Ausgangssignal des Zählers 27 definiert ist, und dem Faltungsresultat im Probenraum, der durch die 14-Bit-Basisschreibadresse definiert ist. (Der Addierer 29 und auch die Addierer 30 und 31 führen in Wirklichkeit eine Subtraktion von Offsetwerten durch, jedoch erfolgt die Substraktion durch Addition, die ein Überlaufbit erzeugt, das dann fallengelassen wird.) Das 14-Bit-Ausgangssignal des Addierers 29 wird als Leseadresse an den jeweils auszulesenden RAM-Speicher 12 oder 17 gelegt. Die 7 höchstwertigen Bits werden zur Adressierung der Reihe benutzt, und die 7 niedrigstwertigen Bits dienen als Spaltenadresse.
Die Tasterabtastgeschwindigkeit für das jeweils auszulesende Exemplar der RAM 13 und 18 ist gleich einem Viertel der Abtastgeschwindigkeit für den jeweils auszulesenden RAM-Speicher 12 bzw. 17. Die Reihenadresse für den jeweils auszulesenden RAM-Speicher 13 bzw. 18 wird zum Teil dadurch erhalten, daß die beiden niedrigstwertigen Exemplare der 8 höchstwertigen Bits des Zählers 27 fallengelassen werden, um den sich auf die Reihe beziehenden Teil der Basisschreibadresse für den dritten Probenraum zu erzeugen. Die Spaltenadressen für den jeweils auszulesenden RAM-Speicher 13 bzw. 18 wird zum Teil dadurch erhalten, daß die beiden niedrigstwertigen Exemplare der 8 niedrigstwertigen Bits des Zählers 27 fallengelassen werden, um den sich auf die Spalte beziehenden Teil der Basisschreibadresse für den dritten Probenraum zu erzeugen. Die resultierende 12-Bit-Basisschreibadresse für den dritten Probenraum wird auf einen Eingang des Addierers 30 gegeben, dessen anderer Eingang zur Addition einens Offsetwertes angeschlossen ist. Dieser Offsetwert sorgt für die Kompensation des Laufzeitunterschiedes zwischen dem Faltungsergebnis im Probenraum, der durch das Ausgangssignal des Zählers 27 definiert wird, und dem Faltungsergebnis im Probenraum, der durch die 12-Bit-Basisschreibadresse definiert wird. Das 12-Bit-Ausgangssignal des Addierers 30 wird als Leseadresse an das jeweils auszulesende Exemplar der RAM-Speicher 13 und 18 gelegt. Die 6 höchstwertigen Bits werden als Reihenadresse und die 6 niedrigstwertigen Bits als Spaltenadresse verwendet.
Die Rasterabtastgeschwindigkeit für das jeweils zur Auslesung ausgewählte Exemplar der RAM-Speicher 14 und 19 ist gleich einem Viertel der Rasterabtastgeschwindigkeit des jeweils auszulesenden RAM-Speichers 13 bzw. 18. Die Reihenadressen für den auszulesenden RAM-Speicher 14 bzw. 19 wird teilweise dadurch erhalten, daß die drei niedrigstwertigen Exemplare der 8 höchstwertigen Bits des Zählers 27 fallengelassen werden, um den die Reihe angebenden Teil der Basisschreibadresse für den vierten Probenraum zu erzeugen. Die Spaltenadressen für den jeweils auszulesenden RAM-Speicher 14 bzw. 19 wird zum Teil dadurch erhalten, daß die drei niedrigstwertigen Exemplare der 8 niedrigstwertigen Bits des Zählers 27 fallengelassen werden, um den sich auf die Spalte beziehenden Teil der Basisschreibadresse für den vierten Probenraum zu erzeugen. Die resultierende 10-Bit-Basisschreibadresse für den vierten Probenraum wird auf einen Eingang des Addierers 31 gegeben, dessen anderer Eingang zur Addition eines Offsetwertes angeschlossen ist. Dieser Offsetwert sorgt für die Kompensations des Laufzeitunterschiedes zwischen dem Faltungsresultat im Probenraum, der durch das Ausgangssignal des Zählers 27 definiert wird, und dem Faltungsresultat im Probenraum, der durch die 10- Bit-Basisschreibadresse definiert wird. Das 10-Bit-Ausgangssignal des Addierers 31 wird als Leseadresse auf den jeweils auszulesenden RAM 14 bzw. 19 gegeben. Die 5 höchstwertigen Bits werden als Reihenadresse und die 5 niedrigstwertigen Bits als Spaltenadresse verwendet.
Es ist zweckmäßig, wenn die RAM-Speicher 11-14 und 16-19 die Bildelemente für ein Teilbild ohne Rücklaufintervalle speichern. Die Nichtspeicherung der Rücklaufintervalle in den RAM-Speichern 11-14 und 16-19 macht es leichter, die erzeugten Fraktalen in aufeinanderfolgenden Teilbildern zu bewegen. Jeder der RAM-Speicher 11-19 ist für Bit-Abbildung der Bilddaten in der folgenden Weise organisiert: Zunächst wird das Abtastmuster des Bildes als eine Folge von Abtastzeilen betrachtet, deren Enden mit ihren jeweiligen Anfängen zurückverbunden sind. Das heißt, die jeweiligen Abtastzeilen werden als Kreise betrachtet, welche die Oberfläche eines Kreiszylinders umringen und deren jeder den Rand eines Querschnittes definiert, der rechtwinklig zur Hauptachse durch den Zylinder gelegt ist. Die Strecke längs jedes Kreises entspricht der abgelaufenen Zeit innerhalb einer Abtastzeile, ausgedrückt durch Bildpunkt-Abtasteinheiten. Die Entfernung längs der Zylinderachse entspricht der abgelaufenen Zeit innerhalb eines Teilbildintervalls, ausgedrückt in Zeilen-Abtasteinheiten. Als nächstes wird die Achse des Zylinders zu einem Kreis geformt, um den Zylinder in einen Torus zu überführen, so daß die Abtastzeilen-Ringe an einzelnen Querschnitten des Torus erscheinen. Die Organisation jedes der RAM-Speicher 11 bis 19 nach diesem Abbildungsprinzip macht es möglich, die RAM-Speicher 11 bis 14 und 16 bis 19 kontinuierlich "weiterwälzend" in der horizontalen und der vertikalen Richtung abzutasten, ohne auf die Lage von Teilbild-Rücklaufintervallen oder Zeilen-Rücklaufintervallen während der Erzeugung der Fraktalen Rücksicht nehmen zu müssen. Die Rücklaufintervalle können später eingefügt werden, nachdem die Fraktalen erzeugt und zur Bildung von Videosignalproben verarbeitet worden sind. Dies vermeidet die Probleme, sich mit Diskontinuitäten an den Teilbildrändern befassen zu müssen.
Gemäß der Fig. 1 erzeugt der Schreibadressengenerator 22 die Schreibadressen-Signale, die vom Multiplexer 21 zugeteilt werden. Diese Schreibadressen-Signale können die gleichen wie die zum Leseadressengenerator 23 gegebenen Basisschreibadressen-Signale sein, oder auch nicht. Wie weiter unten noch ausführlicher beschrieben wird, lassen sich am Schreibadressengenerator 22 mehrere Arten auswählen, wie die Schreibadressen-Signale erzeugt werden. Wenn die Streumuster in eine der RAM-Speichergruppen 10 und 15 einzugeben sind, ist es zweckmäßig, mit Hilfe des Speicheradressen-Multiplexers 21 die Basisschreibadressen- Signale als Schreibadressensignale für diese Speichergruppe auszuwählen. Fürs erste sei angenommen, daß dies geschieht.
Es ist praktisch, oft benutzte Streumuster in programmierbaren Festwertspeichern (abgekürzt PROM) zu speichern, wie sie bei 33, 34 und 35 dargestellt sind, so daß solche Muster durch Anlegen von Lesesadressen-Signalen an diese Speicher abgerufen werden können. Ein PROM kann ein Streumuster aus Punkten in der Organisation einer Bit-Abbildung speichern; dies ist vorteilhaft, wenn das Punktmuster dicht genug ist. Ein PROM kann ein Streumuster aus Punkten auch in Run-Längen-Codierung speichern, was im Falle spärlicher (d. h. wenig dichter) Punktmuster vorzuziehen ist. Ein PROM kann inhaltsadressiert sein und ein Streumuster als Liste von Leseadressesignalen speichern.
Es ist zweckmäßig, das sehr hochauflösende Streumuster mit einer Hälfte jedes Wortes in einem PROM zu speichern und als seine Leseadressen-Signale die Basisschreibadressen- Signale vom Generator 27 zuzuführen. Die andere Hälfte jedes PROM-Wortes verschachtelt im räumlichen Multiplex Streumuster geringerer Auflösung. Die RAM-Schreibsteuereinrichtung bewirkt eine Aussortierung (für die Zuteilung zu den RAM-Speichern in der Gruppe 10 oder der Gruppe 15) von Streumustern in Halbwörtern, die aus einem PROM abhängig von Bits ausgelesen werden, die in den Basisschreibadressen-Signalen enthalten sind und durch einen Bitwähler 38 ausgewählt werden.
Ein Streumuster zur Verwendung in der RAM-Speichergruppe 10 oder 15 kann auch von einem Punktmustergenerator 36 oder durch einen Zufallsgenerator 37 geliefert werden.
Das zur Erzeugung einer Fraktalen heranzuziehende Streumuster wird durch Wahl eines der PROM-Speicher 33 bis 37 ausgewählt, und zwar abhängig von einem an diese Speicher gelegten Streumuster-Lesebefehl.
Die RAM-Schreibsteuereinrichtung 40 legt bei Empfang eines Streumuster-Schreibbefehls das ausgewählte Streumuster, das in vier Probenraum-Matrizen fortschreitend geringer werdender Abtast- oder Probendichte definiert ist, an folgende Stellen:
  • a) an die Eingangs/Ausgangs-Schiene 41, die den RAM-Speichern 11 und 16 gemeinsam ist,
  • b) an die Eingangs/Ausgangs-Schiene 42, die den RAM-Speichern 12 und 17 gemeinsam ist,
  • c) an die Eingangs/Ausgangs-Schiene 43, die den RAM-Speichern 13 und 18 gemeinsam ist, und
  • d) an die Eingangs/Ausgangs-Schiene 44, die den RAM-Speichern 14 und 19 gemeinsam ist.
(Bei dem Fraktalen-Generator gehen die Übergänge von einem auf einer Fraktalen beruhenden Videobild zum nächsten über ein dazwischenliegendes schwarzes Teilbild. Umschalteinrichtungen für die Eingangs/Ausgangs-Schienen sind einfach zu realisieren und können gewünschtenfalls so ausgebildet werden, daß sie einen Übergang zwischen Teilbildern ohne ein dazwischenliegendes schwarzes Teilbild erlauben.) Die Streumuster werden in diejenige der RAM-Speichergruppen 10 und 15 eingeschrieben, die während des betreffenden Teilbildes für den Einschreibvorgang ausgewählt sind.
Wenn die RAM-Speicher geladen sind und das nächste Teilbild beginnt, wird ein Erzeugermuster ausgewählt, um es mit dem Streumuster in jedem der vier Probenräume zu falten, die von einem zum anderen fortschreitend geringere Probendichte haben. Dieses Erzeugermuster muß über das nächste Teilbild beibehalten werden, in welchem die jeweils zum Lesen ausgewählte RAM-Speichergruppe 10 bzw. 15 eine Abtastung ihrer Speicherplätze erfährt. Jeder der für die Auslesung ausgewählten RAM-Speicher 11 oder 16, 12 oder 17, 13 oder 18, 14 oder 19 liefert eine Eingangsgröße an jeweils den einen Eingang einer zugeordneten Faltungseinrichtung 45 bzw. 46 bzw. 47 bzw. 48. Der andere Eingang jeder dieser Faltungseinrichtungen 45 bis 48 empfängt das Erzeugermuster.
Es ist zweckmäßig, die Erzeugermuster in einem für Parallelzugriff, ausgelegten Speicher 49 zu speichern, aus dem ein ganzes Erzeugermuster in Parallelform gegriffen werden kann, wenn seinem Adresseneingang ein Erzeugermuster- Wählsignal und seinem Steuereingang ein Erzeugermuster- Lesebefehl angelegt wird. Die Speicherausgänge liefern für die gesamte Dauer der Teilbildabtastung der für Auslesung ausgewählten RAM-Speichergruppe 10 bzw. 15 das Erzeugermuster an die Faltungseinrichtungen 45 bis 48. Der Speicher 49 ist für sogenannte "Fenster-Abtastung" organisiert und kann z. B. aus einer Bank von PROM-Speichern aufgebaut sein, wie es in der US-Patentschrift 44 60 958 beschrieben ist. Die Faltungseinrichtungen 45 bis 48 können so konstruiert sein, daß man keine Pufferspeicher zwischen ihnen und der jeweils auszulesenden RAM-Speichergruppe 10 bzw. 15 braucht, falls jeder der RAM-Speicher 11-14 und 16-19 und auch der PROM-Speicher 49 ebenfalls für Fenster-Abtastung geeignet sind. Unter der Annahme, daß die Faltungseinrichtungen 45-48 aus Speichern versorgt werden, die in Fenster-Abtatstung betrieben sind, kann jede dieser Faltungseinrichtungen auf der Grundlage folgender Überlegungen aufgebaut werden:
Es sei davon ausgegangen, daß jede Faltung zwischen einer Matrix aus drei mal drei Proben vom Erzeugermuster-Speicher 49 und einer Matrix aus ebenfalls drei mal drei Proben von einem der jeweils auszulesenden RAM-Speicher 11-14 bzw. 16-19 erfolgt. Die räumliche Matrix von Erzeugermuster- Speicher habe folgende Form:
Die räumliche Probenmatrix vom jeweils auszulesenden RAM habe die nachstehende Form:
In diesen Matrizen sind a, b, c, d, e, f, g, h, i, A, B, C, D, E, F, G, H, I feste oder quasi-feste Variable. Eine "feste" Variable ändert sich von Teilbild zu Teilbild nicht, und eine "quasi-feste" Variable ändert sich nur zwischen Teilbildern. Das laufende Produkt dieser Matrizen ist das Faltungsresultat. Die Faltung ist im vorliegenden Fall als Faltung zwischen drei mal drei Probenmatrizen dargestellt, um die Zeichnung möglichst wenig kompliziert zu machen. In einer erfindungsgemäßen Anordnung zur Erzeugung von Fraktalen wird man die Faltung ebensogut oder noch wahrscheinlicher zwischen den Matrizen vornehmen, die fünf mal fünf oder sieben mal sieben oder noch mehr Proben enthalten.
Die Fig. 3 veranschaulicht, wie jede der Faltungseinrichtungen 45-48 aufgebaut sein kann, wenn die aus dem Speicher 49 gezogenen Erzeugermuster aus Graustufenwerten von jeweils n Bits bestehen und wenn die aus der auszulesenden RAM-Speichergruppe 10 bzw. 15 gezogenen Punktmuster (Streumuster) aus 1-Bit-Werten zusammengesetzt sind. Eine Baumschaltung aus Addierern (Addiererbaum) empfängt neun Einzelprodukte der beim Faltungsprozeß durchgeführten Matrizenmultiplikation. Eine Zwischenspeicherschaltung 51, die parallele Tri-State-Glieder aufweist (Dreizustandsspeicher), multipliziert die n-Bit-Variable A mit der 1-Bit-Variablen a, um das erste Einzelprodukt der Matrixmultiplikation zu erzeugen. Weitere Zwischenspeicher 52 bis 59, deren jeder parallele Tri-State-Glieder aufweist, erzeugen jeweils ein anderes der Einzelprodukte B · b, C · c, E · e, F · f, G · g, H · h und I · i als Punkte an den Mittenpositionen.
Die Faltungseinrichtung nach Fig. 3 ist deswegen attrraktiv, weil sie den 1 Bit tiefen RAM-Speichern 11-14 und 16-19 "angepaßt" ist und weil man bei ihrer Verwendung keine schnellen digitalen Multiplizierschaltungen zur Multiplikation von Mehrbit-Zahlen mit Mehrbit-Zahlen benötigt. Die Anzahl von Bits bei der Matrizenmultiplikation ist jedoch auf eine Zahl beschränkt, die nicht größer ist als n+p, wobei p der log₂ der Anzahl von Einzelprodukten bei der Matrizenmultiplikation ist. Die Interpolationsprozesse, die den Faltungseinrichtungen 45-48 nachfolgen, können der erzeugten Fraktalen noch weitere Bits hinzufügen. Eine große Anzahl von Bits in der Fraktalen, die der Funktion eine höhere Auflösung gibt, verbessert die Möglichkeiten der sogenannten multiplen Schwellenbildung an der Funktion. Die multiple Schwellenbildung ist eine wichtige Technik zur Umwandlung der Fraktalen in ein brauchbares Graphikbild, wie es weiter unten noch ausführlicher erläutert werden wird.
Die Fig. 4 veranschaulicht, wie man die Faltungseinrichtung 45-48 ausbilden kann, wenn man bei der Konstruktion eines erfindungsgemäßen Fraktalen-Generators die Kosten akzeptieren will, die entstehen, wenn man schnelle digitale Multiplizierschaltungen verwendet und wenn man die PROM-Speicher 31 bis 31, die RAM-Speicher 11 bis 14 und die RAM-Speicher 16 bis 19 jeweils m Bits tief macht, wobei m eine ganze Zahl größer als 1 ist. Der Addiererbaum 50 ist durch einen Addiererbaum 60 ersetzt, der Eingangssignale von jeweils m+n Bits annehmen kann, und die Zwischenspeicher 51 bis 59 sind durch digitale Multiplizierschaltungen 61 bis 69 für jeweils m mal n Bits ersetzt. Jeder der Terme a, b, c, d, e, f, g, h und i hat bei diesem Fraktalen-Generator m Bits.
Man kann den Fraktalen-Generator auch vereinfachen, indem man sowohl das Streumuster als auch das Erzeugermuster nur jeweils 1 Bit tief mach (d. h. in beiden Bildern wird jeder Bildpunkt durch jeweils nur 1 Bit ausgedrückt). Die Matrizenmultiplikationen können dann mit jeweils einem UND-Glied für jedes Einzelprodukt durchgeführt werden. Die "Produkte" von den UND-Gliedern werden dann kontinuierlich summiert, um das Korrelationsresultat zu erhalten. Die Interpolationsprozesse sind dann die Quelle der Amplitudenauflösung in der erzeugten Fraktalen. Ein Weg zur Erzielung von Fraktalen mit verbesserter Auflösung auch dann, wenn die Fraktalen-Erzeugung mit einem Prozeß geringer Auflösung beginnt, besteht in der Multiplikation einer Vielzahl von Fraktalen geringerer Auflösung, die unabhängig voneinander unter Verwendung desselben Erzeugermusters erzeugt werden, mit Streumustern, die räumlich zueinander verschoben sind.
Ein Weg zur Reduzierung der Hardware in den Faltungseinrichtungen 45-48 bei Anwendung digitaler Multiplikation von m-Bit-Zahlen mit n-Bit-Zahlen besteht darin, die digitalen Multiplizierschaltungen im Zeitmultiplex zu betreiben. Da die Durchtaktgeschwindigkeit in jedem Probenraum um den Faktor 4 herabgesetzt wird, erhöht dies die Rate der Multiplikationen um weniger als 50%. Natürlich ist eine gewisse Pufferung der Datenrate vor und hinter den digitalen Multiplizierschaltungen erforderlich, wenn man sie im Zeitmultiplex betreibt.
Ein anderer möglicher Weg zur Reduzierung der Hardware in den Faltungseinrichtungen 45-48 besteht darin, die Eigenschaft der Eigenähnlichkeit in den Fraktalen auszunutzen. Anfangsteile der Faltung im ersten Probenraum, der die sehr hohe Probendichte hat, können umgesteuert werden auf die niedrigeren Taktgeschwindigkeiten der Probenräume höherer Ordnungszahl, die eine geringere Probendichte haben. Diese Takt-Umsteuerung kann z. B. dadurch erfolgen, daß man Schieberegister mit Serieneingang und Parallelausgang benutzt, um Faltungsresultate mit hoher Geschwindigkeit zu empfangen, und daß man Schieberegister mit Paralleleingang und Serienausgang benutzt, um Faltungsresultate in Parallelform zu empfangen und sie seriell mit reduzierter Taktgeschwindigkeit auszugeben.
Die Beschreibung des Betriebs der Anordnung nach Fig. 1 ist nun an einem Punkt angelangt, wo das Streumuster in jedem der fortschreitend dichter besetzten Probenräume mit dem Erzeugermuster gefaltet worden ist. Die Faltungsresultate von den Faltungseinrichtungen 48, 47 und 46 müssen in Probenmatrizen umgewandelt werden, welche dieselbe Probendichte haben wie die Probenmatrix, mit der die Faltungsresultate von der Faltungseinrichtung 45 geliefert werden, so daß alle Faltungsresultate miteinander kombiniert werden können. Die kombinierten Faltungsresultate können einem Gleichstrom-Sockelwert überlagert werden. Der Gleichstrom-Sockelwert kann beispielsweise vom Erzeugermuster-PROM 49 über eine Schiene 70 geliefert werden, wie es in Fig. 1 dargestellt ist, und kann in eine Kombinierschaltung 71 mit dem Faltungsresultat der Faltungseinrichtung 48 kombiniert werden. Das Ausgangssignal der Kombinierschaltung 71 wird durch Interpolation in einer Erweiterungsschaltung 72 auf dieselbe Probendichte erweitert, wie sie das Ausgangssignal der Faltungseinrichtung 47 hat, mit dem es in einer Kombinierschaltung 73 kombiniert wird. Das Ausgangssignal der Kombinierschaltung 73 wird durch Interpolation in einer Erweiterungseinrichtung 74 auf dieselbe Probendichte erweitert, wie sie das Ausgangssignal der Faltungseinrichtung 46 hat, mit dem es in der Kombinierschaltung 75 kombiniert wird. Das Ausgangssignal der Kombinierschaltung 75 wird durch Interpolation in einer Erweiterungseinrichtung 76 auf dieselbe Probendichte erweitert, wie sie das Ausgangssignal der Faltungseinrichtung 45 hat, mit dem es in der Kombinierschaltung 77 kombiniert wird.
Das Ausgangssignal der Kombinierschaltung 77 ist die erzeugte Fraktale. Sie und eventuell andere Fraktalen, die gleichzeitig durch andere Fraktalen-Generatoren erzeugt worden sind, werden einer Fraktalen-Verarbeitungseinrichtung 78 zugeführt, um sie in ein Videosignal zu verwandeln, das ein auf einem Videomonitor darzustellendes Graphikbild beschreibt. Ein Teil der ins Auge gefaßten Fraktalen- Verarbeitung wird an späterer Stelle erläutert, zunächst sei ausführlicher beschrieben, wie die Prozesse der Erweiterung und des Kombinierens ausgeführt werden.
Die Fig. 5 zeigt eine mögliche Ausführungsform der Erweiterungseinrichtung 72, 74 oder 76. Zunächst seien die wesentlichen Gedankenschritte formuliert, wie man ein Originalsignal, das mit einer ursprünglichen Probendichte abgetastet ist, unter Anwendung zweidimensionaler linearer Interpolation erweitert oder streckt, um ein Signal zu erzeugen, das in jeder Dimension eine doppelt so hohe Probendichte hat. Zuerst wird das Originalsignal in der Richtung senkrecht zur Zeilenabtastung erweitert, d. h. es erfolgt eine vertikale Streckung. Hierzu werden die Reihen der Proben im Probenraum geringerer Probendichte komprimiert, derart, daß sie in einem Probenraum mit doppelter Probendichte alternierende Reihen füllen und die dazwischenliegenden alternierenden Reihen Nullwertproben enthalten. Das Resultat wird dann in Richtung senkrecht zur Zeilenabtastung tiefpaßgefiltert unter Verwendung von Transversalfiltermethoden.
Anschließend wird die mit der doppelten ursprünglichen Probendichte auftretende Ausgangsgröße (Antwort) des Filters einer Erweiterung in Richtung der Zeilenabtastung unterworfen, d. h. horizontal gestreckt. Dies geschieht durch abwechselndes Aneinanderreihen von Proben aus der Tiefpaßfilterantwort mit Nullwertproben, um ein Signal mit dem Vierfachen der ursprünglichen Abtastdichte zu erzeugen, das dann tiefpaßgefiltert wird, um das Ausgangssignal zu liefern. Dieses Ausgangssignal ist das gleiche wie das Originalsignal, nur daß es in jeder Dimension die doppelte Probendichte hat.
Gemäß der Fig. 5 wird das mit einer Pulsfrequenz von r/4 abgetastete Originalsignal an eine Kaskade taktgesteuerter Verzögerungsleitungen 79 und 80 gelegt, deren jede eine genügende Anzahl aufeinanderfolgender Stufen hat, um eine ganze Abtastzeile mit einer der r/4-Impulsfrequenz entsprechenden Probendichte zu speichern. Für die Filterung senkrecht zur Richtung der Zeilenabtastung wird ein Zweiphasen-Tiefpaßfilter verwendet, bei dem es sich um ein transversales Raumfrequenzfilter mit endlicher Impulsantwort handelt, das fünf Anzapfungen hat. In der einen Phase der Tiefpaßfilter-Faltung sind eine Zeile von Nullproben, eine Zeile des unverzögerten Originalsignals, eine weitere Zeile von Nullproben, eine Zeile des um eine Zeilenperiode verzögerten Originalsignals (mit einer Abtastdichte entsprechend der r/4-Impulsfrequenz) und eine weitere Zeile von Nullproben zu gewichten und zu summieren. Dies geschieht in Wirklichkeit durch Anlegen des Originalsignals und des um eine Zeilenperiode verzögerten Originalsignals, die am Eingang bzw. Ausgang der taktgesteuerten Verzögerungsleitung 79 erscheinen, an die Eingänge einer Gewichtungs- und Summierungsschaltung 81. (Die Nullwertproben bewirken keine Filterantwort und brauchen daher nicht gewichtet und dann in die Summierung einbezogen zu werden.) Die von der Gewichtungs- und Summierungsschaltung 81 gelieferte Phase der Filterantwort wird seriell als ein Eingangssignal, das mit der r/4-Taktfrequenz auftritt, in ein Schieberegister 82 mit Serieneingang und Parallelausgang gegeben, das eine Speicherkapazität von einer Abtastzeile hat. In der anderen Phase der Tiefpaßfilter-Faltung sind eine Zeile des unverzögerten Originalsignals, eine Zeile von Nullwertproben, eine Zeile des um eine Zeilenperiode verzögerten Originalsignals, eine weitere Zeile von Nullwertproben und eine Zeile des um zwei Zeilenperioden verzögerten Originalsignals zu gewichten und zu summieren. Dies geschieht durch Anlegen des am Eingang der Verzögerungsleitung 79 erscheinenden Originalsignals, des am Verbindungspunkt zwischen den Verzögerungsleitungen 79 und 80 erscheinenden und um eine Zeilenperiode verzögerten Originalsignals und des am Ausgang der Verzögerungsleitung 80 erscheinenden und um zwei Zeilenperioden verzögerten Originalsignals an die Eingänge einer Gewichtungs- und Summierungsschaltung 83. Die von dieser Schaltung 83 gelieferte Phase der Filterantwort wird seriell als ein mit der r/4-Taktfrequenz erscheinendes Eingangssignal in ein Schieberegister 84 mit Serieneingang und Parallelausgang gegeben, das eine Speicherkapazität von einer Abtastzeile hat.
Am Ende jeder Zeilenperiode mit der r/4-Taktfrequenz sind die Schieberegister 82 und 84 mit Proben gefüllt. Es wird ein Schiebesignal erzeugt, das den Inhalt des Registers 82 in Parallelform in ein Schieberegister 86 mit Paralleleingang und Serienausgang schiebt. Der Serienausgang des Schieberegisters 86 führt zu einem Serieneingang des Schieberegisters 85. Die beiden aufeinanderfolgenden Zeilen der Antwort des Tiefpaß-Transversalfilters in den Schieberegistern 85 und 86 werden mit r/2-Taktfrequenz durch die Schieberegister 86 und 85 hindurchgeschoben, um zwei Abtastzeilen der Filterantwort in derjenigen Zeitspanne zu liefern, die von einer Zeile des mit r/4-Taktfrequenz gelieferten Originalsignals beansprucht wird. Die mit der r/2-Taktfrequenz vom Ausgangsanschluß des Schieberegisters 85 seriell gelieferten Proben stellen das Originalsignal in einer Form dar, die in der Richtung senkrecht zur Zeilenabtastung auf die doppelte Probendichte erweitert ist.
Dieses Signal wird nun in Richtung der Zeilenabtastung erweitert, d. h. horizontal gestreckt. Als erster Schritt hierzu wird das Signal an eine Kaskade zweier Verzögerungsstufen 87 und 88 gelegt, die eine Verzögerungszeit um jeweils eine Bildpunktperiode haben und mit der r/2-Taktfrequenz taktgesteuert sind. Diese Stufen sind Teil eines fünf Anzapfungen aufweisenden, zweiphasigen transversalen Tiefpaß-Raumfrequenzfilters mit endlicher Impulsantwort, das in Richtung der Zeilenabtastung filtert. In der einen Phase dieses Filters sind ein Nullwert, das unverzögerte vertikal erweiterte Signal, ein weiterer Nullwert, das um eine Bildpunktperiode mit r/2-Taktfrequenz verzögerte vertikal erweiterte Signal und noch ein weiterer Nullwert zu gewichten und zu summieren. Dies geschieht durch Anlegen des vertikal erweiterten, unverzögerten Signals und der um eine Bildpunktperiode verzögerten Version dieses Signals an eine Gewichtungs- und Summierungsschaltung 89. In der anderen Phase des Filters sind das vertikal erweiterte unverzögerte Signal, ein Nullwert, das um eine Bildpunktperiode verzögerte vertikal erweiterte Signal, ein weiterer Nullwert und das um zwei Bildpunktperioden verzögerte vertikal erweiterte Signal zu gewichten und zu summieren. Dies geschieht durch Anlegen des vertikal erweiterten unverzögerten Signals und der Ausgangssignale der taktgesteuerten Verzögerungsstufen 87 und 88 an eine Gewichtungs- und Summierungsschaltung 90. Ein Multiplexer 91, der mit der Taktfrequenz r taktgesteuert wird, ordnet die beiden parallelen Ströme der Ausgangssignale der Gewichtungs- und Summierungsschaltungen 89 und 90 abwechselnd in eine einzige Reihe, um mit der Impulsfrequenz r das horizontal und vertikal erweiterte Signal zu liefern.
Bei der Erweiterungsschaltung 72 entsprechen die Frequenzen r/4, r/2 und r in der genannten Reihenfolge den weiter oben beschriebenen Signalen für den Viertraum-Takt, den Viertraum-Zweifachtakt und den Drittraum-Takt, die von der Impulsfrequenzteiler-Kaskade 25 der Fig. 2 kommen. In der Erweiterungsschaltung 74 entsprechen die Frequenzen r/4, r/2 und r in der genannten Reihenfolge den Signalen für den Drittraum-Takt, den Drittraum-Zweifachtakt und den Zweitraum-Takt, die ebenfalls von der Impulsfrequenzteiler- Kaskade 25 kommen. In der Erweiterungsschaltung 76 entsprechen die Frequenzen r/4, r/2 und r in der genannten Reihenfolge den Signalen für den Zweitraum-Takt, den Zweitraum-Zweifachtakt und den Erstraum-Takt.
Die Erweiterungsschaltungen 72, 74 und 76 können auch anders ausgeführt sein als es in Fig. 5 dargestellt ist, so z. B. unter Verwendung von RAM-Speichern die mit relativ niedriger Geschwindigkeit geladen und mit einer mehrfach höheren Geschwindigkeiten ausgelesen werden, um die Proben für die Gewichtung und Summierung zu liefern.
Die Kombinierschaltungen 71, 73, 75 und 77 verdienen eingehendere Beachtung. In Bildsyntheseverfahren mit inverser Pyramiden-Transformation werden als lineare Kombinierschaltungen Addierer verwendet, die jeweils beide Polaritäten mindestens eines Eingangssignals be­ handeln können. Auch beim Fraktalen-Generator nach Fig. 1 kann man solche Addierer für die Kombinierschaltungen 71 bis 77 verwenden. Man kann aber auch Subtrahierschal­ tungen für die Kombinierschaltungen 71 bis 77 benutzen.
Es wurde ins Auge gefaßt, nicht-lineare Kombinierschal­ tungen 71 bis 77 zu verwenden, jedoch haben nicht alle solche Schaltungen die Fähigkeit, brauchbare Fraktalen zu erzeugen. Allgemein gesagt sind Kombinierschaltungen ungeeignet, die Diskontinuitäten in der Übertragungs­ funktion für das eine oder das andere der zu kombinie­ renden Signale haben, es sei denn, man sorgt dafür, daß diese Diskontinuitäten während Zeiten erscheinen, in denen das betreffende Signal den Wert Null hat. Eine Kombinierschaltung, die beispielsweise ihre beiden Ein­ gangssignale in geradzahlige Potenzen der Eingangssignale erhebt und diese Potenzen summiert, gehört nicht zu der­ jenigen Klasse von Kombinierschaltungen, die sich für Fraktalen-Generatoren eignen. Gleiches gilt für eine Kombinierschaltung, die unregelmäßig oder zufallsartig addiert oder subtrahiert, solange die Umschaltung zwi­ schen den beiden Operationen dann erfolgt, wenn der Addenden/Subtrahenden-Eingang auf dem Wert Null ist.
Die Fig. 6 zeigt Einzelheiten des in Fig. 1 als Block dargestellten Fraktalen-Prozessors 78 und veranschau­ licht die Verbindungen dieses Prozessors mit einem Farb­ bildmonitor. Der Fraktalen-Prozessor 78 liefert Video­ signalproben für Rot (R), Grün (G) und Blau (B) an zu­ gehörige Digital/Analog-Wandler (D/A-Wandler) 92, 93 und 94. Die D/A-Wandler 92 bis 94 können Videosignalfilter enthalten. Die analogen Videosignale R, G und B von den D/A-Wandlern 92, 93 und 94 werden auf Eingänge zugeord­ neter Videoverstärker 95, 96 und 97 gegeben, deren Aus­ gangssignale das Rot-, das Grün- und das Blau-Strahl­ system einer Farbbildröhre 98 ansteuern. (Es sei ange­ nommen, daß eine Gammakorrektur entweder in den D/A-Wand­ lern 92, 93, 94 oder den Videoverstärkern 95, 96, 97 er­ folgt.) Die Ablenkung der Farbbildröhre 98 (nicht darge­ stellt) ist synchronisiert mit der Teilbildabtastung im jeweils zur Auslesung ausgewählten Exemplar der RAM-Spei­ cher 11 und 16 im Fraktalen-Generator nach Fig. 1 und mit der Teilbildabtastung eines Speichers 99, der zur Speiche­ rung eines Lageplans (Karte) von Videobereichen verwendet wird.
Der Speicher 99 speichert Rücklauf-Austastmuster auf ei­ ner permanenten Basis. Auf einer programmierbaren Basis speichert er Muster derjenigen Bereiche, in denen ein Multiplexer 100 für R-G-B-Videosignale anstelle der Aus­ tastung Videosignale verschiedener Herkunft auswählt, und zwar entweder Videosignale, die aus dem Ausgangssignal eines Fraktalen-Generators 101 des in Verbindung mit Fig. 1 beschriebenen Typs erzeugt werden, oder Videosig­ nale, die aus einem anderen Fraktalen-Generator 102 er­ zeugt werden, oder irgendeines (z. B. 103) von Videosigna­ len, die aus anderen Quellen kommen und dem Multiplexer 100 als Eingangssignale zur Verfügung gestellt werden. Das Ausgangssignal des Speichers 99 hat normalerweise die Form eines Binärcodewortes. Ein Code-Lexikon hierzu kann wie folgt aussehen:
Code
gewähltes Videosignal
000
taste Bildschirm aus
001 verarbeite den Ausgang des Fraktalen-Generators 101 mit PROM 104
010 verarbeite den Ausgang des Fraktalen-Generators 101 mit PROM 105
011 verarbeite den Ausgang des Fraktalen-Generators 101 mit PROM 106
100 verarbeite den Ausgang des Fraktalen-Generators 102 mit PROM 107
101 verarbeite den Ausgang des Fraktalen-Generators 102 mit PROM 108
110 verarbeite den Ausgang des Fraktalen-Generators 102 mit PROM 109
111 wähle den Eingang 103 für alternative Videoquelle
Diese Codes werden nicht nur vom Multiplexer 99 verwendet, sondern auch von einem Auslese-Wähler 110, der auswählt, welcher der PROM-Speicher 104, 105, 106 gegebenenfalls zur Verarbeitung der vom Generator 101 erzeugten Frak­ talen zu benutzen ist. Die Codes werden auch von einem weiteren Auslese-Wähler 111 verwendet, der auswählt, welcher der PROM 107, 108, 109 gegebenenfalls für die Verarbeitung der vom Generator 102 erzeugten Fraktalen heranzuziehen ist.
Es sei nun darauf eingegangen, welche Beziehung einer der PROM-Speicher 104 bis 109 zu einem der Fraktalen-Genera­ toren 101 und 102 hat, mit dem der betreffende PROM-Spei­ cher zusammen benutzt wird, z. B. die Beziehung des PROM- Speichers 104 zum Fraktalen-Generator 101 im Falle, daß der Auslese-Wähler 101 und der Multiplexer 100 diese Ver­ arbeitungskombination auswählen, um die R-G-B-Signale für die Steuerung des Bildes auf dem Schirm der Röhre 98 zu erzeugen. Der Fraktalen-Generator 101 liefert Spei­ cheradressen zum PROM-Speicher 104. Der PROM-Speicher 104 speichert an jeder seiner möglichen Adressen Ampli­ tuden von R-, G- und B-Videosignalproben. Es sei als Bei­ spiel angenommen, der PROM 104 speichere am adressierten Platz die Adresse vom Fraktalen-Generator, gewichtet mit den relativen Gewichten der R-, G- und B-Komponenten im reinen Leuchtdichtesignal, und zwar für alle adressier­ baren Speicherplätze. Der PROM 104 sendet dann R-G-B- Signale an die Bildröhre 98, um sie zu veranlassen, die Fraktale in gammakorrigierten Grauwerten wiederzugeben.
Durch Wahl des PROM 105 anstelle des PROM 104 zur Verar­ beitung des Ausgangs des Fraktalen-Generators 101 in ein R-G-B-Videosignal läßt sich ein anderer Verarbeitungs- Algorithmus für die Fraktale einführen. Ein anderer Weg zur Änderung des Verarbeitungs-Algorithmus für die Frak­ tale besteht darin, sie einer anderen Funktion des Bild­ raumes zu überlagern, um die Eingangsadressen für den zur Fraktalen-Verarbeitung benutzten PROM zu erzeugen. So könnte eine Rampen- oder Sägezahnfunktion mit der Fraktalen addiert werden, um die Größe, die Leuchtdichte oder den Farbton der von der Fraktalen erzeugten Formen quer über das Bildfeld oder von oben nach unten im Bild­ feld zu ändern.
Zur Erzeugung von Wolkenbildern aus einer Fraktalen, die aus einem kreisförmigen oder elliptischen Erzeugermuster im Fraktalen-Generator 101 gewonnen wurde, könnte der PROM-Speicher 104 so programmiert werden, daß er allen Werten der Fraktalen, die unterhalb des mittleren Be­ reichs liegen, ein gleichmäßig helles Cyanblau zuordnet, um einen blauen Himmel als Hintergrund zu erzeugen. Die oberhalb des Mittelbereichs liegenden Werte des Fraktalen könnten einer weißen Farbe zugeordnet werden, deren Hel­ ligkeit direkt vom Wert der Fraktalen abhängt. Dieses Ver­ fahren führt dazu, daß eine fraktale Begrenzungslinie zwi­ schen den Wolken und dem blauen Himmelhintergrund entsteht, die festlegt, in welchen Teilen des Bildfeldes Wolkenmuster und in welchen Teilen des Bildfeldes blauer Himmelhinter­ grund zu sein hat.
Im Effekt wird bei diesem Verfahren in einer Montage von Wolkenbildern über blauem Himmelhintergrund den Wolken­ mustern Priorität vor dem blauen Hintergrund gegeben. In ähnlicher Weise kann, auch wenn das Hintergrundbild kom­ plizierter als eine solide Farbfläche ist, einem überlie­ genden Teil eines fraktal-erzeugten Vordergrundbildes Priorität vor einem darunterliegenden Hintergrundbild ge­ geben werden, um eine fraktale Grenze für den überliegen­ den Bildteil aufrechtzuerhalten. Die niedrigeren Werte der Fraktalen werden als transparent bewertet und daran gehindert, das wiedergegebene Bild zu beeinflussen. Um­ gekehrt kann man einer Vordergrundgraphik mit nicht-frak­ talem Umriß Priorität vor einem fraktal-erzeugten Hinter­ grund geben.
Bei komplizierteren Graphiken kann man eine komplizier­ tere Prioritätsvergabe üben. So lassen sich beispiels­ weise zwei Gruppen fraktal-erzeugter Wolkenbilder nehmen, deren eine in relativ großem Maßstab und deren andere in relativ kleinem Maßstab abgebildet werden, um Vordergrund­ wolken bzw. Hintergrundwolken darzustellen. Den Vorder­ grundwolken kann Wiedergabepriorität vor dem graphischen Bild eines Flugzeuges gegeben werden. Den Vordergrundwol­ ken und dem Flugzeug wird Wiedergabepriorität vor den Hin­ tergrundwolken gegeben. Die Vordergrundwolken, das Flug­ zeug und die Hintergrundwolken wiederum haben bei der Wie­ dergabe Priorität vor dem hinter den Hintergrundwolken liegenden Himmel. Die Wolke kann zu Bewegungen und das Flugzeug zum Flug animiert werden, um das Flugzeug auf dem Bildschirm des Videomonitors durch den wolkigen Him­ mel fliegen zu lassen.
In einem anderen Beispiel, dem Graphikbild eines Schif­ fes, kann den Aufbauten des Schiffes Priorität gegenüber der Meeresansicht gegeben werden, die aus Fraktalen er­ zeugt ist und gegenüber dem überspannenden Himmel, der ebenfalls aus Fraktalen erzeugt ist. Dem Schiffsrumpf wird eine Priorität gegeben, die stets niedriger als die­ jenige der Wellenkämme des Meeres ist, aber vorbehaltlich anderer Teile des Meeres. Solange die nach unten gehende Abtastung des Bildfeldes noch nicht bei den prioritäts­ höheren Wellenkämmen angelangt ist, hat der Rumpf des Schiffes höhere Priorität als die prioritätsniedrigeren Teile des Meeres. Hierdurch wird eine Darstellung mög­ lich, bei welcher sich die Wellen um den Rumpf des Schif­ fes legen. Diese allgemeine Technik kann mit umgekehrter Abtastrichtung angewandt werden, gefolgt von einer Ab­ tastkonvertierung, um andere Effekte zu erzielen.
Man kann auch dafür sorgen, daß die zur Bildung von Frak­ talen benutzten Streumuster durch ein nicht-fraktales Graphikbild beeinflußt werden und somit die schwellen­ verglichenen Fraktalen Ränder an gewünschten Punkten ge­ genüber dem nicht-fraktalen Bild haben können. Auf diese Weise kann man z. B. ein Schiff durch die Wellen einer Meeresszene pflügen lassen. In entsprechendem Sinne kann die Fraktalen-Verarbeitung nach Fig. 6 modifiziert werden, so daß der Speicher 99, der Videobereiche kartographiert, den Multiplexer 100 nicht direkt steuert, sondern statt­ dessen Signale liefert, die in Verbindung mit Prioritäts­ codes verwendet werden, welche die Eingangssignale des Multiplexers 100 begleiten, um die vom Multiplexer ge­ troffene Wahl vorzuschreiben. Durch Vergleich der Frak­ talen mit einem Schwellenwert kann man eine fraktale Be­ grenzungslinie erzeugen und dazu verwenden, die Wahl zwi­ schen zwei anderen Videosignalen zu steuern, so daß eines dieser Signale innerhalb des anderen eingesetzt werden kann, wobei die Grenze zwischen ihnen der fraktalen Grenz­ linie entspricht.
Oben wurde der spezielle Fall beschrieben, daß R-G-B- Videosignale für die Ansteuerung einer Monitor-Bildröhre 98 erzeugt werden. Die erzeugten Signale können aber auch für Videoaufzeichnung und/oder für Fernsehsendung codiert werden. Man kann die Fraktalen-Verarbeitung auch so aus­ legen, daß direkt die Leuchtdichte- und Farbartkomponen­ ten eines Videosignalgemischs für Fernsehübertragung er­ zeugt werden.
In Verbindung mit der bis hierher beschriebenen Anord­ nung zur Erzeugung von Graphiken sind noch einige Über­ legungen anzustellen. Bei einem Ton- oder Video-Synthe­ sizer ist es wichtig, daß sich die Ergebnisse nach Re­ geln verändern lassen, die recht gut definiert sind, so daß der jeweils künstlerische Erfolg genügend vorhersag­ bar ist und sich der Künstler zu einem vorgedachten Er­ gebnis "vortasten" kann. Es ist auch wichtig, daß die vom Künstler als wünschenswert empfundenen Resultate re­ produzierbar sind. Die "Rezepte" für diese gewünschten Resultate können dann gespeichert und katalogisiert wer­ den, damit man sie später bei Bedarf abrufen kann. Bei der bis hierher beschriebenen Anordnung kann dem Künstler ein Gefühl für die jeweils benötigten allgemeinen Formen sagen, welches Erzeugermuster er zur Eingabe in den PROM 49 auswählen muß. Ein Gefühl dafür, wie reichhaltig die Reproduktion der Form bei verschiedenen Maßstäben ist, sagt dem Künstler, welche Dichte von Punkten er in den verschiedenen Streumustern auszuwählen hat. Ein Gefühl, wie weit in den Reproduktionen der Form eine Struktur er­ kennbar sein soll oder nicht, kann anweisen, ob man eine regelmäßigere oder weniger regelmäßige Punktstruktur im Streumuster wählt. Die Fraktale kann in ausgewählte Be­ reiche des Bildschirms zusammengeballt werden, indem man Punkte in entsprechenden Teilen des Streumusters konzen­ triert. Auch die Wahl der Farbpalette bestimmt die Pro­ grammierung dieser Speicher. Ein Fachmann auf dem Gebiet digitaler Bildverarbeitung wird leicht erkennen, daß für die Programmierungsaufgaben geeignete Hilfen als Hardware, festgespeicherte Standardprogramme, Software oder Kombi­ nationen davon entwickelt werden können, damit der Künst­ ler die Steuerungen noch müheloser und mehr nach seinem natürlichen Gefühl durchführen kann.
Man muß die wichtige Rolle verstehen, die das Streumuster bei der vorliegenden Erfindung spielt. Eine Konzentration von Punkten in einem ersten Teil des Streumusters und ein Fehlen von Punkten in einem zweiten Teil des Streumusters führt zu einer Fraktalen mit größter Intensität in dem­ jenigen Teil des Bildraums, der dem erwähnten ersten Teil des Streubildes entspricht. Eine Schwellenbehandlung der Fraktalen führt dazu, daß in der verarbeiteten Fraktalen eine fraktale Grenzlinie zwischen dem ersten Teil des Bildraums und dem übrigen Bildraum erzeugt wird. Wenn man den verarbeiteten Fraktalen eine Priorität in der Bildwiedergabe gibt, dann erscheinen diese fraktalen Grenzlinien im endgültig wiedergegebenen Bild, so daß Ränder geschaffen werden, die ähnlich aussehen, wie sie in der Natur vorkommen.
Obwohl die Placierung der Form bei jedem Maßstab zufäl­ lig ist, lassen sich bei dem erfindungsgemäßen Verfahren, wie bereits erwähnt, künstlerisch gewollte Fraktalen vor­ hersagbar wiedererzeugen. Dies ist der Verwendung des Streumusters zu verdanken. Obwohl ein großes Maß an Zu­ fälligkeit im Streumuster vorhanden sein kann, läßt sich dieses Zufallsmuster beim Willen der Bedienungsperson genau aus einem der PROM-Speicher 33 bis 35 wiedererschaf­ fen, falls es benötigt wird. Die Faltung dieses bestimm­ ten Musters mit einem bestimmten Erzeugermuster liefert ein vorhersagbares Faltungsergebnis. Selbst wenn das Streumuster von Teilbild zu Teilbild verändert wird, um die Fraktale auf dem Schirm der Bildöhre 98 zu "beleben", wie es weiter unten noch beschrieben wird, kann die Folge von Faltungsresultaten so genau wie gewünscht vorherge­ sagt werden. Die im Streumuster enthaltene spezielle In­ formation über die Placierung des Erzeugermusters (d. h. der Basis- oder Grundform) erlaubt es, Fraktalen-Genera­ toren im Parallelbetrieb mit vorhersagbaren Resultaten zu betreiben. Sie erlaubt ferner die Manipulation des Streumusters unter dem Einfluß anderer Elemente des Bil­ des als der erzeugten Fraktalen, was von besonderem In­ teresse bei animierten (belebten) Bildsequenzen ist. Bei dem durch die Wellen pflügenden Schiff beispielsweise können die dem Bug des Schiffes entsprechenden Orte im Streumuster stärker mit Punkten besät werden, um dort die Wellen stärker zu machen als am Heck.
Die Fraktalen-Generatoren 101 und 102 können einerseits unabhängig voneinander betrieben werden, und ihre Frak­ talen-Verarbeitung kann jeweils unabhängig erfolgen. An­ dererseits lassen sich viele raffiniertere Ergebnisse erzielen, wenn man die Fraktalen-Generatoren im Bund be­ treibt. Es können auch für einzelne Farben beispielsweise in einer Mehrfarbenpalette jeweils gesonderte Fraktalen- Generatoren verwendet werden, die verwandte Erzeuger- und Streumuster benutzen. Nachstehend werden noch einige an­ dere Beispiele gegeben.
Man kann mehrere Fraktalen-Generatoren verwenden, die das gleiche Streumuster, aber unterschiedliche Erzeuger­ muster benutzen. Diese Erzeugermuster können Komponenten eines komplizierteren Erzeugermusters sein. Ein Erzeuger­ muster in Form eines Kreises beispielsweise kann in ein­ zelne Teilkreisbögen zerschnitten werden, die jeweils als Erzeugermuster in den verschiedenen Fraktalen-Genera­ toren benutzt werden. Die Fraktalen-Generatoren erzeugen Teilfraktalen als Komponenten einer komplizierten Frak­ talen. Den Komponenten dieser komplizierten Fraktalen wird dann in jeweiligen PROM-Speichern im Fraktalen-Pro­ zessor unterschiedliche Farbe oder Helligkeit gegeben, und die Resultate werden in R-G-B-Form kombiniert.
Man kann auch mehrere Fraktalen-Generatoren verwenden, die das gleiche Erzeugermuster und das gleiche Streu­ muster in einem oder mehreren Räumen geringer Probendich­ te benutzen, jedoch andere Streumuster in Räumen größerer Probendichte, um komplizierte Fraktalen zu erzeugen. Für die Räume größerer Abfragedichte können verschiedene Kom­ binierschaltungen in den Fraktalen-Generatoren verwendet werden.
Eine Gruppe von Fraktalen-Generatoren, die mit den glei­ chen Erzeugermustern betrieben werden und bei denen die Streumuster einander gleich und nur zueinander versetzt sind, können komplizierte Fraktalen erzeugen, die in ih­ rer Amplitude verglichen werden können, um Randinforma­ tionen für Schattierungszwecke zu erhalten. Es läßt sich voraussehen, daß eine große Menge von Verarbeitungsarten für Fraktalen auf der Grundlage komplizierter Fraktal­ funktionen entwickelt werden kann.
Bis hierher wurde hauptsächlich die Erzeugung stillste­ hender Bilder mit Hilfe der Kombination von Fraktalen- Generator und Fraktalen-Prozessor angesprochen. Die aus Fraktalen erzeugten Graphikbilder können aber auch be­ lebt (d. h. "animiert") werden. Ein grundlegender Weg für eine Bildbelebung oder "Animation" bei der Anordnung nach Fig. 1 besteht darin, zusätzliche Modifikationen vorzuneh­ men zwischen den Leseadressen-Signalen, die an die je­ weils auszulesende RAM-Speichergruppe 10 oder 15 gelegt werden, und den Schreibadressen-Signalen, die an die jeweils andere, zu ladende RAM-Speichergruppe gelegt wer­ den. Bei der anschließenden Teilbildabtastung dieser an­ deren RAM-Speichergruppe, wenn die RAM-Speicher dieser Gruppe während der Rasterabtastung durch Leseadressen- Signale ausgelesen werden, gibt es dann eine Bewegung in den Fraktalen und in dem daraus abgeleiteten Bild auf dem Schirm der Bildröhre 98.
Die Fig. 7 zeigt für den Fraktalen-Generator nach Fig. 1 einen Schreibadressengenerator, der ein fraktal-erzeugtes Bild veranlaßt, sich quer über den Bildschirm zu verschie­ ben. In Addierern 121, 122, 123 und 124 wird eine verän­ derbare Offsetgröße, die mit "Horizontaldrift" bezeichnet ist, in geeigneter Bemessung mit den niedrigstwertigen Bits der Basisschreibadressen-Signale addiert oder von ihnen subtrahiert, um die sich auf die Spaltenadresse beziehenden, horizontalabtastenden Teile der Schreib­ adressen-Signale zu erzeugen. In Addierern 125, 126, 127 und 128 wird eine veränderbare Offsetgröße, die als "Ver­ tikaldrift" bezeichnet ist, in geeigneter Bemessung mit den höchstwertigen Bits der Basisschreibadressen-Signale addiert oder von ihnen subtrahiert, um die sich auf die Reihenadresse beziehenden vertikal abtastenden Teile der Schreibadressen-Signale zu erzeugen. Die Geschwindigkeit der Vertikalbewegung hängt vom Wert der veränderbaren Vertikaldrift-Größe ab. Ist diese Größe gleich Null, dann bleibt das Bild in vertikaler Richtung stationär. Ein positives Vertikaldrift-Offsetmaß läßt das Bild nach oben wandern, vorausgesetzt, die Abtastzeilen sind fortlaufend von oben nach unten auf dem Bildschirm numeriert. Ein ne­ gatives Vertikaldrift-Offsetmaß läßt das Bild nach unten wandern. Die Horizontalbewegung hängt vom Wert des ver­ änderbaren Horizontaldrift-Offsetmaßes ab. Ist dieses Maß positiv, dann wandert das Bild nach links, vorausge­ setzt, die Bildpunkte sind fortlaufend von links nach rechts numeriert. Ein negatives Horizontaldrift-Offset­ maß läßt das Bild nach rechts wandern. Die Wanderungs- oder Driftgeschwindigkeit ist begrenzt auf einen Bruch­ teil der Bildschirmbreite pro Teilbild, um zu vermeiden, daß im Bild Sprungdiskontinuitäten beim Zeilenhinlauf erscheinen. Man kann diese Begrenzung jedoch übergehen, falls es gewünscht wird. Hierzu wird der Leseadressen­ generator 23 hinsichtlich der Rückstellung des Zählers 27 und hinsichtlich des Überlaufs von den 8 niedriger­ wertigen Bitstufen zu den 8 höherwertigen Bitstufen mo­ difiziert.
Die Fig. 8 zeigt eine Ausführungsform einer Schaltung zum Drehen des aus einer Fraktalen erzeugten Bildes auf dem Schirm der Bildröhre 98. Die Basisschreibadressen- Signale, die von der Adressenerzeugungsschaltung 26 in kartesischen Koordinaten erzeugt werden, gelangen zu einem Koordinatenkonverter 130, der die kartesischen, zur Bit-Abbildung aufgebauten Adressen in Polarkoordina­ ten transformiert. Diese Polarkoordinaten, die in einem Strom erscheinen, enthalten jeweils eine Radialkoordina­ te ρ und eine zugehörige Winkelkoordinate R. Die Winkel­ koordinate R wird auf einen Eingang eines Addierers 31 gegeben, um ein Offsetmaß, das die Drehung pro Teilbild angibt, mit dieser Koordinate zu addieren oder von ihr zu subtrahieren. Die so modifizierte Winkelkoordinate R′ vom Ausgang des Addierers 31 und die Radialkomponente ρ werden einem Polar/kartesisch-Koordinatenkonverter 132 zugeführt, um wieder Schreibadressen-Signale in Form kar­ tesischer Koordinaten zu erhalten. Die Koordinatenkonver­ ter 130 und 132 können jeweils durch Nachschlagetabellen in ROM-Speichern realisiert werden. Es sind auch Akkumu­ lationstechniken bekannt, um solche Koordinantentransfor­ mationen durchzuführen. Methoden zur Rasterdrehung, die eine Transformation von kartesischen Koordinaten in ge­ drehte kartesische Koordinaten durchführen, sind in Ver­ bindung von Phantom-Rasterabtastung von zur Bit-Abbildung organisierten Speichern bekannt. In anderen Ausführungs­ formen der Erfindung könen diese Methoden auf die Dre­ hung der Rasterabtastung der Basisschreibadressen-Signale abgestimmt werden, um eine Rasterabtastung des Schreib­ adressen-Signals zu bekommen.
Die Fig. 9 veranschaulicht, wie die Einrichtungen nach den Fig. 7 und 8 modifiziert werden können, um zu be­ wirken, daß eine Drift oder Drehung nicht gleichmäßig über das ganze Teilbild verläuft. Kaskadengeschaltete Addierer 130 und 134 modifizieren eine Basisschreibadres­ se nicht nur durch Addition oder Subtraktion eines festen Offsetmaßes im Addierer 133, sondern außerdem durch Addi­ tion oder Subtraktion einer kleinen Zufallszahl im Addie­ rer 134. Eine solche Addiererkaskade kann beispielsweise den Addierer 131 in Fig. 8 ersetzen. Derartige Addierer­ kaskaden können ferner jeden der Addierer 121-128 in Fig. 7 ersetzen. Die Zufallszahlen zur Verwendung in der Anordnung nach Fig. 9 können beispielsweise durch regel­ mäßige Analog/Digital-Umwandlung von weißem Rauschen er­ zeugt werden. Sequenzen einer zufälligen oder unregel­ mäßigen Bewegung können aber vorhersagbar gemacht wer­ den, indem man die Zufallszahlen in vorbestimmter Reihen­ folge aus einem Speicher nimmt, der eine Zufallszahlen- Nachschlagetabelle enthält. Die Zufallszahlen sind dann nicht wirklich zufällig, sondern quasi-zufällig oder scheinbar zufällig.
Die Fig. 10 veranschaulicht, wie kompliziertere Bewegun­ gen als Drift oder Drehung in das Bild eingeführt werden können, das auf dem Schirm der Bildröhre 98 erscheint. An eine Vielzahl von Schreibadressen-Nachschlagespeichern (z. B. 141, 142, 143), bei denen es sich um PROM-Speicher handeln kann, empfängt 16-Bit-Basisschreibadressen oder -leseadressen. Als Antwort auf einen Adressenumwandlungs- Wählbefehl wählt ein Auslesungswähler 140 einen der ge­ nannten Schreibadressen-Nachschlagespeicher zur Auslesung aus, um die 16-Bit-Schreibadressensignale für den ersten, die höchste Probendichte aufweisenden Probenraum zu lie­ fern. Diese werden zerlegt, wie es mit den 16-Bit-Basis­ schreibadressen für diesen Probenraum in der Adressener­ zeugungsschaltung 26 der Fig. 2 geschah, um Schreibadres­ sen-Signale für die anderen Probenräume geringerer Proben­ dichte zu liefern. Nachstehend sind einige Beispiele von Bildbewegungen aufgeführt, die sich mit der Anordnung nach Fig. 10 realisieren lassen:
  • 1) Eine "hervorquellende" Bewegung, bei welcher das Graphikbild immer größer wird, wenn es von einem Quellpunkt nach außen zu den Rändern des Bildfeldes fließt;
  • 2) eine "abfließende" Bewegung, bei welcher das Graphik­ bild immer kleiner wird, wenn es von den Rändern des Bildfeldes in einen Abflußpunkt im Bildfeld fließt;
  • 3) die hervorquellende Bewegung kombiniert mit einer Dreh­ hung um den Quellpunkt;
  • 4) die abfließende Bewegung kombiniert mit einer Drehung um den Abflußpunkt.
Die Fig. 11 zeigt eine Anordnung, die den PROM 48 im Fraktalen-Generator nach Fig. 1 ersetzen kann, um das zu den Faltungseinrichtungen 45 bis 48 gelieferte Er­ zeugermuster zu drehen. Eine Drehung des Erzeugermusters ist nützlich für bestimmte Arten der Bildanimation, kann aber auch dazu verwendet werden, eine größere Vielzahl unterschiedlicher Fraktalen zu erzeugen.
Im einzelnen wird ein PROM 149 benutzt, um Erzeugermuster in Organisation für Bit-Abbildung zu speichern. Der PROM 149 ist verschränkt konstruiert, damit er in Fenster-Ab­ tastung betrieben werden kann, und hat intern einen Interpo­ lator, damit sein Inhalt mit nicht-ganzzahligen Reihen- und Spaltenadressen adressiert werden kann. Solche Spei­ cher sind in der US-Patentschrift 44 60 958 beschrieben.
Eine Erzeugermuster-Eingabesteuerschaltung 150 steuert die Übergabe eines ausgewählten Erzeugermusters mit ge­ steuertem Maß an Drehung aus einem ausgewählten Bereich im PROM 149 in eine Vielzahl von Erzeugermuster-Puffer­ speicher (z. B. 4 Pufferspeicher 151, 152, 153, 154). Die Speicherplätze in diesen Speichern werden bei der Ein­ schreibung seriell abgetastet und sind während der Aus­ lesung parallel verfügbar. Diese Steuerung geschieht durch Pufferspeicher-Schreibwählbefehle, die einem Mul­ tiplexer 155 zugeführt werden, der die Einschreibung eines aus dem Erzeugermuster-PROM 149 ausgelesenen Er­ zeugermusters in ein ausgewähltes Exemplar der Puffer­ speicher 151-154 aktiviert. Eine Erzeugermuster-Wähl­ steuerschaltung 156 bestimmt dann, welches der in den Erzeugermuster-Pufferspeichern 151-154 gespeicherten Er­ zeugermuster zu den Faltungseinrichtungen 45-48 im Frak­ talen-Generator nach Fig. 1 geliefert wird und gegebenen­ falls zu den entsprechenden Einrichtungen in anderen Frak­ talen-Generatoren, wenn mehrere solche Generatoren pa­ rallel benutzt werden. Diese Steuerung erfolgt über ei­ nen Multiplexer 157, der Pufferspeicher-Lesewählbefehle von der Steuerschaltung 156 empfängt. Ein "Miniraster"- Abtastgenerator 158 sorgt für die Abtastung der Adressen zum Einschreiben in die Pufferspeicher 151-154. (Eine Miniraster-Abtastung ist die Abtastung über einen "Mina­ tur"-Raster, der sich über einen relativ kleinen Bereich innerhalb des 39276 00070 552 001000280000000200012000285913916500040 0002003619427 00004 39157 gesamten Bildfeldes erstreckt.) Der Mini­ raster-Abtastgenerator 158 liefert seine rastermäßig ab­ getasteten Speicheradressen als Eingangsgröße an einen Phantom-Rastergenerator 159 zur Abtastkonvertierung, um einen Phantom-Miniraster zu erzeugen, der entsprechend einem Erzeugermuster-Drehbefehl gedreht ist, welcher von der Erzeugermuster-Eingabesteuerschaltung 150 geliefert wird. Die Erzeugermuster-Drehbefehle sind durch die Be­ dienungsperson einprogrammiert. Das Erzeugermuster wird in fortschreitender Drehung während jeder Miniraster-Ab­ tastung geliefert und über den Multiplexer 155 in ein zu­ geordnetes Exemplar der Erzeugermuster-Pufferspeicher 151- 154 eingeschrieben.
Ist eine Animation des Bildes durch Drehung des Erzeuger­ musters gewünscht, dann wählt die Erzeugermuster-Wählsteuer­ schaltung 156 nacheinander die fortschreitend gedrehten Erzeugermuster aus den Pufferspeichern 151-154 aus, um sie in den Faltungseinrichtungen 45-48 mit Streumustern zu falten. Diese aufeinanderfolgende Auswahl geschieht nach einem bestimmten Plan, um Drehungen im Uhrzeigersinn oder gegen den Uhrzeigersinn oder Kombinationen davon auf dem Schirm der Bildröhre 98 hervorzurufen.
Die Anordnung nach Fig. 11 kann auch dazu verwendet werden, komplizierte Fraktalen unter Benutzung mehrerer, parallel arbeitender Fraktalen-Generatoren zu erzeugen. Die in den Fraktalen-Generatoren benutzten Streumuster unterscheiden sich voneinander, und die Erzeugermuster-Wählsteuerschal­ tung 156 wählt für die Fraktalen-Generatoren in jedem Pro­ benraum Erzeugermuster unterschiedlicher Drehungen aus.
Die Fig. 12 zeigt einen anderen Fraktalen-Generator, der die Fähigkeit hat, animierte Fraktalen in Realzeit zu erzeugen. Eine einzige Faltungseinrichtung 160 wird da­ zu verwendet. Faltungsresultate für jede Bandpaßkomponen­ te der gebildeten Fraktalen zu erzeugen, indem ein aus dem PROM 49 ausgewähltes Erzeugermuster mit einem Streu­ muster gefaltet wird, das wahlweise vom PROM 33, vom PROM 34, vom Punktmustergenerator 36 oder vom Zufallspunktge­ nerator 37 geliefert wird. Zur Erzeugung einer jeden der verschiedenen Raumfrequenzkomponenten der Fraktalen ist ein ausgewähltes Streumuster mit sehr feiner Auflösung dazu ausersehen, mit dem vom PROM 49 gewählten Erzeuger­ muster gefaltet zu werden.
Angenommen, diese Faltungen werden so ausgeführt, daß nacheinander für jedes der Raumfrequenzbänder ein Voll­ bild von Videosignalproben mit sehr feiner Auflösung er­ zeugt wird, wobei die fraktalen Änderungen des sehr klei­ nen Maßstabes in einen zugehörigen RAM-Vollbildspeicher 161, die fraktalen Änderungen des kleinen Maßstabes in einen zugehörigen RAM-Vollbildspeicher 162, die fraktalen Änderungen des großen Maßstabes in einen zugehörigen RAM- Vollbildspeicher 163 und die fraktalen Änderungen des sehr großen Maßstabes in einen zugehörigen RAM-Vollbild­ speicher 164 eingeschrieben werden. Die RAM-Speicher 161, 162, 163, und 164 sind so ausgelegt, daß sie kontinuier­ lich sowohl in horizontaler als auch in vertikaler Ab­ tastrichtung "wälzbar" sind. Eine Vollbildspeicher-Lese/ Schreib-Steuerschaltung 165 steuert das Laden (Einschrei­ ben) der RAM-Vollbildspeicher 161, 162, 163 und 164. Die Steuerschaltung 165 befiehlt einen Speicheradressen-Mul­ tiplexer 170, die RAM-Speicher 161, 162, 163 und 164 während ihrer Einschreibzeit mit einem Schreibadressen­ generator 166 zu verbinden, um Schreibadressen in voller Auflösung zu empfangen, die mit normaler Bildpunkt-Ab­ tastgeschwindigkeit geliefert werden. Bei einer Vollbild­ Abtastung veranlaßt die Lese/Schreib-Steuerschaltung 165 den Schreibadressengenerator 166, eine Vollbildabtastung mit normaler Bildpunkt-Abtastgeschwindigkeit für die Streumuster PROMs 33, 34, 35 zu erzeugen, und gleich­ zeitig veranlaßt sie die Punktgeneratoren 36 und 37, Punkte mit einer bestimmten mittleren Dichte in jeder Abtastrichtung zu erzeugen. Das Streumuster aus dem aus­ gewählten Exemplar der Streumuster-PROMs 33, 34 und 35, aus dem Punktmustergenerator 36, oder aus dem Zufallspunkt­ generator 37 wird mit dem aus dem PROM 49 gewählten Er­ zeugermuster gefaltet. Die Faltungsresultate gelten für Fraktal-Änderungen sehr kleinen Maßstabes und werden über die Lese/Schreib-Steuerschaltung 165 auf die Eingangs/ Ausgangs-Schiene des RAM-Vollbildspeichers 161 gegeben, der durch die besagte Steuerschaltung für Einschreibung konditioniert wird. Bei einer zweiten Vollbildabtastung veranlaßt die Lese/Schreib-Steuerschaltung 165 den Schreib­ adressengenerator 166, Adressen zu liefern, die einen Viertelteil des Vollbildes mit einem Viertel der normalen Bildpunkt-Abtastgeschwindigkeit abtasten, und gleichzeitig veranlaßt sie die Punktgeneratoren 36 und 37, Punkte mit der Hälfte der bestimmten mittleren Dichte in jeder Ab­ tastrichtung abzutasten. Die nun mit einem Viertel der normalen Bildpunkt-Abtastgeschwindigkeit erzeugten Fal­ tungsergebnisse werden an eine Erweiterungsschaltung 167 gelegt, welche die Dichte der Probenmatrix auf das Doppel­ te in jeder Richtung erhöht, und zwar mit Hilfe von In­ terpolation. Die Steuerschaltung 165 lenkt diese "er­ weiterten" Faltungsresultate, die mit normaler Bildpunkt- Abtastgeschwindigkeit geliefert werden, zur Eingangs/Aus­ gangs-Schiene des RAM 162 und konditioniert diesen RAM für die Einspeicherung der Resultate in seinen Vollbild­ speicher. Bei einer dritten Vollbildabtastung veranlaßt die Lese/Schreib-Steuerschaltung 165 den Schreibadressen­ generator 166, Adressen zu liefern, die einen Sechzehntel­ teil des Vollbildes mit einem Sechzehntel der normalen Bildpunkt-Abtastgeschwindigkeit abtasten, und veranlaßt gleichzeitig die Punktgeneratoren 36 und 37, Punkte mit einem Viertel der erwähnten speziellen mittleren Dichte in jede Abtastrichtung zu erzeugen. Es werden dann Fal­ tungsresultate mit einem Sechzehntel der normalen Bild­ punkt-Abtastgeschwindigkeit erzeugt, deren Probenmatrix zweimal auf jeweils das Doppelte in jeder Richtung er­ weitert bzw. gestreckt wird, und zwar mit Hilfe von In­ terpolation. Die aufeinanderfolgenden Erweiterungen wer­ den durch die Erweiterungsschaltung 167 und eine damit in Kaskade geschaltete Erweiterungsschaltung 168 bewirkt. Die Lese/Schreib-Steuerschaltung 165 lenkt diese zweimal erweiterten Faltungsresultate, die mit normaler Bildpunkt- Abtastgeschwindigkeit geliefert werden, zur Eingangs/Aus­ gangs-Schiene des RAM 163 und konditioniert diesen RAM so, daß die Resultate in seinen Vollbildspeicher einge­ schrieben werden. Bei einer vierten Vollbild-Abtastung veranlaßt die Lese/Schreib-Steuerschaltung den Schreib­ adressengenerator 166, Adressen zu erzeugen, die einen Vierundsechzigstelteil des Vollbildes mit einem Vierund­ sechzigstel der normalen Bildpunkt-Abtastgeschwindigkeit abtasten, und veranlaßt gleichzeitig die Punktgeneratoren 36 und 37, Punkte mit einem Achtel der erwähnten mittleren Dichte in jede Abtastrichtung zu erzeugen. Das Faltungs­ resultat wird nun mit einem Vierundsechzigtel der nor­ malen Bildpunkt-Abtastgeschwindigkeit erzeugt, und seine Probenmatrix wird durch die Kaskadenschaltung der Erwei­ terungsschaltungen 167 und 168 und einer dritten Erweite­ rungsschaltung 169 dreimal um jeweils den Faktor 2 erwei­ tert bzw. gestreckt. Die Lese/Schreib-Steuerschaltung 165 lenkt die dreimal erweiterten Faltungsresultate, die mit normaler Bildpunkt-Abtastgeschwindigkeit geliefert werden, zur Eingangs/Ausgangs-Schiene des RAM 164 und konditio­ niert diesen RAM für die Einschreibung der Resultate in seinen Vollbildspeicher.
Bei einem anderen Verfahren zum Laden der RAM-Vollbild­ speicher 161, 162, 163 und 164 kann die Faltung in der Faltungseinrichtung 160 auf einer Zeitmultiplex-Basis durchgeführt werden. Hierbei wird die Zeit in Probenin­ tervalle unterteilt, die mit dem Doppelten der normalen Bildpunkt-Abtastgeschwindigkeit aufeinanderfolgen. Jedes zweite dieser Probenintervalle wird für die Einschreibung in den RAM 161 reserviert, und von den übrig bleibenden Probenintervallen wird wiederum jedes zweite Exemplar der Einschreibung in den Speicher RAM 162 zugeordnet. Von den dann noch übrigen Probeintervallen wird jede zweite der Einschreibung in den RAM 163 zugeordnet, und die anderen, dann noch übrigen Probeintervalle werden der Einschrei­ bung in den RAM 164 zugeteilt.
Ein wiederum anderer Weg zum Einschreiben in die RAM- Speicher 161, 162, 163 und 164 besteht darin, Geschwin­ digkeits-Pufferspeicher hinter der Faltungseinrichtung 160 zu verwenden. Diese Geschwindigkeitspuffer liefern Proben des Faltungsresultates mit verminderten Geschwin­ digkeiten für eine Erweiterungsschaltung, die Proben zur Einschreibung in den RAM 162 erzeugt, für eine Kaskade zweier Erweiterungsschaltungen, die Proben zur Einschrei­ bung in den RAM 163 erzeugt, und für eine Kaskade dreier Erweiterungsschaltungen, die Proben zur Einschreibung in den RAM 164 erzeugt.
Nachdem die RAM-Speicher 161, 162, 163 und 164 mit frak­ talen Änderungen des sehr kleinen Maßstabes, des kleinen Maßstabes, des großen Maßstabes und des sehr großen Maß­ stabes geladen worden sind, kann eine Folge von Vollbild- Videosignalen erzeugt werden, welche die auf die Fraktalen gestützte Animation beschreiben. Hierzu werden die er­ wähnten RAM-Speicher abgetastet, während man jeweils von Vollbild zu Vollbild Versetzungen (Offsets) an den Adres­ sen vornimmt. Während dieser Phase des Betriebs befiehlt die Lese/Schreib-Steuerschaltung 165 dem Speicheradressen- Multiplexer 170, die RAM-Speicher 161, 162, 163 und 164, Leseadressen von einem Leseadressengenerator 171 zu emp­ fangen. Die Fraktalen-Komponenten, die aus den RAM-Spei­ chern 161, 162, 163 und 164 ausgelesen und auf ihre je­ weiligen Eingangs/Ausgangs-Schienen gegeben werden, und die zur Schiene 70 gelieferte Direkt-Komponente des Er­ zeugermusters werden in einer Kombinierschaltung 171 kom­ biniert, um die Fraktale zu erzeugen, die dann zum Frak­ talen-Prozessor 78 geliefert wird. Die Kombinierschaltung 171 kann z. B. eine Baumschaltung aus Addierern sein.
Die Fig. 13 ist hilfreich, um besser zu verstehen, wie die Adressenerzeugung abläuft. Der Schreibadressen-Generator 166 kann einfach aus einem Haupttaktoszillator 173 und einem Zähler 174 bestehen, der Taktschwingungen bis je­ weils 2¹⁸ durchzählt, falls ein Vollbildformat mit 512 unverflochtenen Zeilen und jeweils 512 Bildpunkten pro Zeile benutzt wird. Die 9 höchstwertigen Bits (MSB) des vom Zähler 174 gelieferten Schreibadressen-Signals iden­ tifizieren die jeweilige Zeile durch ihre fortlaufende Nummer, und die 9 niedrigstwertigen Bits (LSB) geben die Position eines Bildpunktes längs der Abtastzeile an. (Bei beiden dieser Teile der Schreibadresse können Bits jeweils unteren Stellenwertes weggelassen werden, um eine Abtastung eines verkleinerten Teils des ganzen Vollbildes mit weniger als der normalen Bildpunkt-Abtastfrequenz zu bewirken, damit der serielle Faltungsprozeß nach Fig. 12 durchgeführt werden kann.) Die 9 niedrigstwertigen Bits des Schreibadressen-Signals gehen an einen Horizontaladres­ sen-Modifizierer 175 (es sei angenommen, daß die Zeilen­ abtastung in horizontaler Richtung geht), der Teile der Leseadressen-Signale, welche die Bildpunktposition längs einer Abtastzeile anzeigen, für die RAM-Speicher 161, 162, 163 und 164 liefert. Dies geschieht dann genauso, wie ein Vertikaladressen-Modifizierer 176, der nachstehend be­ schrieben wird, bei der Auslesung jedes der RAM-Speicher 161, 162, 163 und 164 andere Teile der Leseadressen-Sig­ nale erzeugt, welche die Nummer der Abtastzeile angeben.
In dem Vertikaladressen-Modifizierer 176 wird den höchst­ wertigen Bits des Schreibadressen-Signals mittels eines Addierers 177 ein Offsetwert hinzuaddiert, um den die Ab­ tastzeile identifizierenden Teil des Leseadressen-Signals für den RAM 161 zu erzeugen. Der Offsetwert wird dem Addie­ rer 177 von einem Ausgangsregister 178 angelegt und ist jeweils die Akkumulation aufeinanderfolgender Adressen­ änderungen von Vollbild zu Vollbild. Während des Voll­ bild-Rücklaufs addiert ein Addierer die Änderung der Zei­ lennummer gegenüber der Zeilennummer des vorhergehenden Vollbildes, d. h. die Größe der Bewegungskomponente in Vertikalrichtung, mit dem vorhergehenden Offsetmaß, das im Offset-Register 178 gespeichert ist. Die resultierende Summe wird in das Offset-Register 178 eingegeben, um des­ sen Inhalt auf den neuesten Stand zu bringen.
In analoger Weise werden auch in Addierern 180, 183, 186 den 9 höchstwertigen Bits Offsetwerte hinzuaddiert, um die zeilenidentifizierenden Teile der jeweiligen Adressen­ signale für den RAM 162, den RAM 163 und den RAM 164 zu erzeugen. Ein Offset-Register 181 und ein Addierer 182 dienen zur Akkumulation der zum Addierer 180 gegebenen Offsetwerte. Ein Offset-Register 184 und ein Addierer 185 dienen zur Akkumulation der auf den Addierer 163 gegebenen Offsetwerte. Ein Offset-Register 187 und ein Addierer 188 akkumulieren die dem Addierer 186 angeleg­ ten Offsetwerte. Die Addierer 177, 179, 180, 182, 183, 185, 186 und 187 sind vorzugsweise von einem Typ, der Zahlen mit Vorzeichen verarbeiten kann, so daß Bewegun­ gen sowohl in der einen als auch in der anderen zweier entgegengesetzter Richtungen auf bequeme Weise hervorge­ rufen werden können.
Verdoppelt man die Zuwachswerte, die von Vollbild zu Vollbild auf die Addierer 182, 183 und 184 gegeben wer­ den, gegenüber den Zuwachswerten für die Addierer 181 bzw. 182 bzw. 183, dann bekommt man eine vertikale Drift oder Bewegung der gesamten Fraktalen, um ein einfaches Beispiel für eine Fraktal-Animation von Vollbild zu Voll­ bild zu nennen. Es können auch komplizierte Bewegungen der Teil-Fraktalen hervorgerufen werden, z. B. Drehungen unter Verwendung von Methoden der Phantom-Rasterabtastung.
Die Fig. 14 zeigt einen Fraktalen-Generator, der ähnlich wie der Fraktalen-Generator nach Fig. 12 eine einzige Faltungseinrichtung 160 benutzt, um die maßstäblich ver­ schiedenen Kommponenten der Fraktalen zu erzeugen. Der Fraktalen-Generator nach Fig. 14 setzt jedoch, anders als die Anordnung nach Fig. 12, nicht sämtliche Komponen­ ten der Fraktalen in die Probenmatrizen hoher räumlicher Auflösung um, um sie in RAM-Vollbildspeichern 161, 162, 163 und 164 zu speichern. Stattdessen werden die Fal­ tungsresultate der höchsten räumlichen Auflösung, die durch Faltung bei nomaler Bildpunkt-Abtastgeschwindigkeit erhalten werden, in einem einzigen RAM-Vollbildspeicher 190 gespeichert.
Der RAM 190 liefert anschließend diese gespeicherten Faltungsergebnisse höchster räumlicher Auflösung für den ersten Probenraum, analog zum RAM 161 im Fraktalen-Gene­ rator nach Fig. 12. Der RAM 190 liefert außerdem gespei­ cherte Faltungsresultate für den zweiten Probenraum, die anschließend im Maßstab 2 : 1 in jeder räumlichen Rich­ tung gestreckt werden. Dies führt zu gestreckten oder erweiterten Faltungsergebnissen mit der zweithöchsten räumlichen Auflösung über einen Bereich, der viermal so groß ist wie der gespeicherte Bereich im RAM-Vollbild­ speicher 162 des Fraktalen-Generators nach Fig. 12. Der RAM 190 liefert ferner gespeicherte Faltungsresultate für den dritten Probenraum, die anschließend zweimal je­ weils im Maßstab 2 : 1 in jeder räumlichen Dimension er­ weitert werden, um eine Gesamtstreckung von 4 : 1 in je­ der räumlichen Dimension zu erhalten. Dies führt zu er­ weiterten Faltungsresultaten mit der zweitniedrigsten räumlichen Auflösung über einen Bereich, der sechzehn­ mal so groß wie der gespeicherte Bereich im Vollbild- Speicher 163 des Fraktalen-Generators nach Fig. 12 ist. Schließlich liefert der RAM 190 gespeicherte Faltungs­ resultate für den vierten Probenraum, die dann dreimal im Maßstab 2 : 1 in jeder Dimension gestreckt werden, um eine Gesamtstreckung von 8 : 1 in jeder räumlichen Dimension zu erhalten. Dies führt zu gestreckten oder erweiterten Faltungsresultaten mit der niedrigsten räum­ lichen Auflösung über einen Bereich, der vierundsechzig­ mal so groß wie der gespeicherte Bereich im Vollbild­ speicher 164 des Fraktalen-Generators nach Fig. 12 ist.
Bei dem Fraktalen-Generator nach Fig. 12 ist es recht wahrscheinlich, daß man den "zykloramischen" Effekt be­ merkt, wenn man die Vollbildspeicher 161, 162, 163 und 164 vollständig "rundwälzt". Beim Fraktalen-Generator nach Fig. 14 ist der zykloramische Effekt sehr viel we­ niger zu bemerken. Nur Details höchster Raumfrequenz wiederholen sich zyklisch von Vollbild zu Vollbild. Die Fraktalen-Komponenten niedrigerer Raumfrequenz wiederho­ len sich zyklisch weniger oft. Es gibt das psychophysi­ sche Phänomen, daß man zyklische Wiederholungen einer Form weniger gut bemerkt, wenn die Länge des Zyklus groß ist im Vergleich zu den räumlichen Wellenlängen, mit de­ nen das wiederholte Muster aufgebaut ist. Schlichter aus­ gedrückt: man merkt sich große Merkmale des Bildes, die sich über einen gegebenen Abstand zu wiederholen beginnen, leichter als die begleitenden Kompliziertheiten von De­ tails, die zur Wiederholung tendieren. Es ist schwerer, die zyklische Wiederholung von Details höherer Raumfre­ quenz zu erfassen, wenn sie Details niedrigerer Raumfre­ quenz überlagert sind die sich weniger häufig wieder­ holen. Eine Erfassung zyklischer Wiederholungen wird noch schwieriger, wenn die Fraktale anschließend, bei der Er­ zeugung des wiederzugebenden Bildes, einer nicht-linearen Verarbeitung unterworfen wird. In der Praxis heißt dies, daß beim Fraktalen-Generator nach Fig. 14 das "Zyklorama" seinen Umlauf erst dann beendet, nachdem ein Weg von 8 Vollbildüberquerungen beendet ist. Diese auf ein Vielfaches gehende Vergrößerung des Bereichs einer in einem Vollbildspeicher kartographisch gespeicherten Fraktalen ist z. B. dann wichtig, wenn ein Fraktalen-Generator benutzt wird, das Spielfeld in einem Videospiel zu erzeugen.
Diese Vergrößerung des Bereichs bzw. der Fläche für die Fraktalen-Variationen, die in einem kartographisch speichernden (d. h. für Bit-Abbildung organisierten) Speicher gespeichert sind, stützt sich auf die Eigenschaft der Eigenähnlichkeit von Fraktalen. Das Phänomen der Speicherung über vergrößerten Bereich kann auch in einer etwas anderen Art als im Fraktalen-Generator nach Fig. 14 ausgenutzt werden. Man kann den Fraktalen-Generator nach Fig. 14 z. B. so modifizieren, daß man den Vollbild-RAM durch einen Viertelvollbild-RAM ersetzt, aus dem Fraktale erzeugt werden, die sich zyklisch zweimal so oft wiederholen wie im Fraktalen-Generator nach Fig. 14. In der Tat kann der RAM 190 in seiner Größe so weit vermindert werden, bis man findet, daß der zykloramische Effekt bei Videographiken, die aus der oder den jeweiligen ausgewählten Fraktalen erzeugt werden, für die meisten Betrachter störend wird.
(Man kann auch den Fraktalen-Generator nach Fig. 1 modifizieren, um das Phänomen, das sich mit der Speicherung über vergrößerten Bereich ergibt, vorteilhaft auszunutzen. Zykloramische Effekte können dadurch reduziert werden, daß man die Größe der RAM-Speicher 12 und 17 vervierfacht, die Größe der RAM-Speicher 13 und 18 versechzehnfacht und die Größe der RAM-Speicher 14 und 19 auf das Vierundsechzigfache vergrößert, so daß die RAM-Speicher 11-14 und 16-19 jeweils die gleiche Anzahl adressierbarer Speicherplätze haben. Das heißt, eine etwa dreifache Vergrößerung der RAM-Größe, gemessen in der Anzahl adressierbarer Speicherplätze, vermindert den zykloramischen Effekt um den Faktor 8).
Es sei nun der Fraktalen-Generator nach Fig. 14 näher betrachtet, beginnend mit der Speicherung der Faltungsresultate im RAM 190. Wenn ein Lese/Schreib-Befehlssignal im Zustand "Schreiben" ist, liefert ein Speichereingangs- Multiplexer 189 Faltungsresultate von der Faltungseinrichtung 160 zur Eingangs/Ausgangs-Schiene des RAM 190, der gleichzeitig so konditioniert ist, daß die Faltungsergebnisse in adressierte Speicherplätze eingeschrieben werden. Gleichzeitig legt ein Speicheradressen-Multiplexer 191 Schreibadressen-Signale an den Vollbild-RAM 190, um jeweils die Speicherplätze vorzugeben, in welche die aufeinanderfolgenden Faltungsresultate eingeschrieben werden, und zwar in Bit-Abbildung organisiert (kartographische Speicherung).
Wenn das Lese/Schreib-Befehlssignal im Zustand "Lesen" ist, ist der RAM 190 für Auslesung auf seine Eingangs/ Ausgangs-Schiene konditioniert, und der Speicheradressen- Multiplexer 191 ist so eingestellt, daß er Leseadressen- Signale aus dem Leseadressengenerator 171 wählt, um Speicherplätze im RAM 190 zu adressieren. Eine Leseadressen- Steuerschaltung 191 wird in Betrieb gesetzt, um den Vollbild- RAM 190 auf Zeitmultiplex-Basis im ersten Probenraum, im zweiten Probenraum, im dritten Probenraum und im vierten Probenraum auszulesen. Die Zeitmultiplex-Steuerung erfolgt mit dem Zweifachen der normalen Bildpunkt-Abtastfrequenz. Die Sequenz, in der einer der sich wiederholenden Zyklen des Zeitmultiplexbetriebes während einer Abtastzeile abläuft, ist folgende: 1, 2, 1, 3, 1, 2, 1, 4, 1, 2, 1, 3, 1, 2, 1, N. Hierbei bezeichnen die Ziffern 1, 2, 3 und 4 jeweils Proben des ersten bzw. zweiten bzw. dritten bzw. vierten Probenraumes, und N bezeichnet eine Probe mit dem Wert 0, um den Zyklus vollzumachen. Aufeinanderfolgende Ziffern 1 im Zyklus bedeuten aufeinanderfolgende Proben im ersten Probenraum, aufeinanderfolgende Ziffern 2 bedeuten aufeinanderfolgende Proben im zweiten Probenraum, und aufeinanderfolgende Ziffern 3 bedeuten aufeinanderfolgende Proben im dritten Probenraum.
Alternierende bzw. abwechselnde Exemplare der mit dem Doppelten der normalen Bildpunkt-Abtastrate erscheinenden Proben, die aus dem Vollbild-RAM 190 ausgelesen werden, werden dem ersten Probenraum zugeordnet, der die Fraktalen-Komponente mit der höchsten Auflösung definiert. Die Leseadressen-Steuerschaltung 192 veranlaßt den Leseadressen- Generator 171, Leseadressen-Signale für den ersten Probenraum zu liefern. Die Leseadressen-Steuerschaltung 192 veranlaßt ferner einen Speicherausgangsmultiplexer 193, Faltungsresultate für den ersten Probenraum aus dem RAM 190 zur Kombinierschaltung 77 zu geben, wo sie mit erweiterten Faltungsergebnissen aus der Erweiterungsschaltung 76 kombiniert werden, um die an den Fraktalen- Prozessor 78 zu liefernde Fraktale zu erzeugen.
Die Leseadressen-Steuerschaltung 192 veranlaßt, daß der RAM 190 während jeder zweiten Zeile der Vollbildabtastung in einer ausgewählten von zwei verfügbaren räumlichen Phasenlagen in der vertikalen Richtung ausgelesen wird, um Faltungsresultate zu liefern, die dem zweiten Probenraum zugeordnet werden. Von dem mit dem Doppelten der normalen Bildpunkt-Abtastrate erscheinenden Proben, die aus dem RAM 190 in den ausgewählten, abwechselnden Abtastzeilen ausgelesen werden, werden alternierende Exemplare, die zwischen den dem ersten Probenraum zugeordneten Proben liegen, entsprechend dem Zeitmultiplex-Schema dem zweiten Probenraum zugeordnet, wo die Fraktalen-Komponente mit der zweithöchsten räumlichen Auflösung definiert ist. Während dieser, dem zweiten Probenraum zugeordneten Probenintervalle veranlaßt die Leseadressen-Steuerschaltung 192 den Leseadressen-Generator 171, ein Leseadressen-Signal für den zweiten Probenraum zu erzeugen. (Dieses Leseadressen- Signal enthält in seinem Offset ein Maß zur Laufzeitkompensation gegenüber der Erweiterungsschaltung 76). Gleichzeitig veranlaßt die Leseadressen-Steuerschaltung 192 den Speicherausgangsmultiplexer 193, die aus dem RAM 190 gelesenen Daten an die Kombinierschaltung 75 zu legen, wo sie mit erweiterten Proben aus dem dritten Probenraum kombiniert werden, die von der Erweiterungsschaltung 74 geliefert werden. Das Anlegen der aus dem RAM 190 gelesenen Daten an die Kombinierschaltung 75 erfolgt im gezeigten Fall nicht direkt, sondern über eine justierbare, taktgesteuerte Verzögerungseinrichtung 196. Diese Verzögerungseinrichtung 196 stellt unter Steuerung durch die Leseadressen-Steuerschaltung 192 die räumliche Phasenlage der Proben des zweiten Probenraumes auf eine ausgewählte der beiden möglichen Phasenlagen in der horizontalen Richtung, in bezug auf den ersten Probenraum. Dies erlaubt ein Weiterwälzen in Horizontalrichtung mit der Auflösung des ersten Probenraums, um die durch das Zeitmultiplex-Schema bedingte wilkürliche Zuordnung der räumlichen Phase zu überwinden, so daß die räumliche Phase des zweiten Probenraums frei gewählt werden kann, wie beim Fraktalen-Generator nach Fig. 12.
Die Leseadressen-Steuerschaltung 192 veranlaßt, daß der RAM 190 jede vierte Zeile der Vollbildabtastung in einer ausgewählten von vier verfügbaren räumlichen Phasenlagen in vertikaler Richtung ausgelesen wird, um Faltungsergebnisse zu liefern, die dem dritten Probenraum zuzuordnen sind. Von den übrigen, im Zeitmultiplex-Zyklus noch nicht ausgewählten Proben der doppelten normalen Bildpunkt-Abtastrate werden abwechselnde Exemplare, die in jeder vierten ausgewählten Abtastzeile erscheinen, entsprechend dem Zeitmultiplex-Schema dem dritten Probenraum zugeordnet, wo die Fraktalen-Komponente mit der zweitniedrigsten räumlichen Auflösung definiert ist. Während dieser dem dritten Probenraum zugeordneten Probenintervalle veranlaßt die Leseadressen-Steuerschaltung 192 den Adressengenerator 171, Leseadressen-Signale für den dritten Probenraum zu liefern. (Diese Leseadressen-Signale enthalten in ihrem Offset eine Größe zur Laufzeitkompensation gegenüber der Erweiterungseinrichtung 74). Gleichzeitig veranlaßt die Leseadressen-Steuerschaltung 192 den Speicherausgangsmultiplexer 193, die aus dem RAM 190 ausgelesenen Daten auf die Kombinierschaltung 73 zu geben, wo sie mit den von der Erweiterungsschaltung 72 gelieferten erweiterten Daten aus dem vierten Probenraum kombiniert werden. Das Anlegen der Auslesedaten des RAM 190 an die Kombinierschaltung 73 erfolgt wie dargestellt nicht direkt, sondern über eine justierbare taktgesteuerte Verzögerungseinrichtung 195. Diese Verzögerungseinrichtung 195 stellt unter Steuerung durch die Leseadressen-Steuerschaltung 192 die räumliche Phasenlage der Proben des dritten Probenraums auf eine ausgewählte von vier möglichen Phasenlagen in der Horizontalrichtung, bezogen auf den ersten Probenraum. Dies erlaubt ein horizontales Weiterwälzen der Abtastung des voll erweiterten dritten Probenraums mit der Auflösung des ersten Probenraums.
Die Leseadressen-Steuerschaltung 192 sorgt schließlich dafür, daß der RAM 190 während jeder achten Zeile der Vollbildabtastung ausgelesen wird, und zwar in einer ausgewählten von acht verfügbaren räumlichen Phasenlagen in Vertikalrichtung, um Faltungsresultate zu liefern, die dem vierten Probenraum zuzuordnen sind. Von den jetzt noch übrigen Proben der doppelten normalen Bildpunkt-Abtastrate, die im Zeitmultiplex-Zyklus noch nicht ausgewählt worden sind, werden abwechselnde Exemplare aus jeder gewählten achten Abtastzeile entsprechend dem Zeitmultiplex-Schema dem vierten Probenraum zugeordnet, wo die Fraktalen-Komponente mit der geringsten räumlichen Auflösung definiert ist. Während der Probenintervalle, die dem vierten Probenraum zugeordnet sind, veranlaßt die Leseadressen-Steuerschaltung 192 den Leseadressen-Generator, Leseadressen- Signale für den vierten Probenraum zu liefern. (Diese Leseadressen-Signale enthalten in ihrem Offset eine Größe zur Laufzeitkompensation gegenüber der Erweiterungsschaltung 72). Gleichzeitig veranlaßt die Leseadressen-Steuerschaltung 192 den Speicherausgangsmultiplexer 193, die aus dem RAM 190 ausgelesenen Daten an die Kombinierschaltung 71 zu legen, wo sie mit einer eventuell vorhandenen Gleichkomponente kombiniert werden, die über eine Verbindung 70 vom Erzeugermuster-ROM 49 geliefert wird. Das Anlegen der aus dem RAM 190 ausgelesenen Daten an die Kombinierschaltung 71 erfolgt wie dargestellt nicht direkt, sondern über eine justierbare taktgesteuerte Verzögerungseinrichtung 194. Diese Verzögerungseinrichtung stellt unter Steuerung durch die Adressen-Steuerschaltung 92 die räumliche Phasenlage der Proben des vierten Probenraums auf eine ausgewählte von acht möglichen Phasenlagen in der horizontalen Richtung, bezogen auf den ersten Probenraum. Dies erlaubt ein horizontales Weiterwälzen der Abtastung des voll erweiterten vierten Probenraums mit der Auflösung des ersten Probenraums.
Für die justierbaren taktgesteuerten Verzögerungsleitungen 914, 195 und 196 können beispielsweise Bauelemente genommen werden, wie sie unter der Bezeichnung "Multilevel Pipeline Register" vom Hersteller Advanced Micro Devices, Inc. angeboten werden. Die Anzahl der Taktperioden, welche die Verzögerungszeit in diesen Elementen bestimmt, hat eine feste Komponente, um die Zeitverzerrung auszugleichen, die durch den Zeitmultiplexbetrieb in Richtung der Zeilenabtastung eingeführt wurde. Außerdem sind in den Verzögerungen der Einrichtungen 194, 195 und 196 noch Komponenten enthalten, die zusätzlichen Bits räumlicher Auflösung in den Horizontalkomponenten der Leseadressensignale des zweiten Probenraums, des dritten Probenraums und des vierten Probenraums entsprechen. So gibt es ein zusätzliches Bit an horizontaler Auflösung im zweiten Probenraum, zwei zusätzliche Bits im dritten Probenraum und vier zusätzliche Bits im vierten Probenraum. Dies ist notwendig, um die Beschränkungen wieder wettzumachen, welche die Zeitmultiplex-Auslesung des RAM 190 hinsichtlich der horizontalen Phase der ausgelesenen Proben im zweiten, dritten und vierten Probenraum verursacht.
Man muß außerdem passende Schritte vornehmen, um für eine vertikale Verschiebung der Abtastung des zweiten, des dritten und des vierten Probenraumes mit der Auflösung des ersten Probenraumes zu sorgen. Dies geht einfach, indem man die differentielle Verzögerung der jeweiligen Anfänge der Rasterdurchläufe des Leseadressen- Signals in den verschiedenen Probenräumen justiert. Trotz Justierung der relativen räumlichen Phasen der Rasterabtastungen in den vier Probenräumen muß die Zeitsteuerung der Taktgabe und der Schiebesignale an den Erweiterungseinrichtungen 72, 74 und 76 weiterhin dem Rasterdurchlauf der Leseadresse in ihren jeweiligen Probenräumen folgen.
Der Fraktalen-Generator nach Fig. 14 kann dahingehend modifiziert werden, daß man den RAM 190 durch zwei RAM- Speicher ersetzt, welche die Faltungsergebnisse der Faltungseinrichtung 160 parallel speichern, so daß die RAM- Auslesung mit normaler Bildpunkt-Abtastrate erfolgen kann. Der eine RAM liefert Faltungsergebnisse für den ersten Probenraum, und der andere RAM liefert Faltungsergebnisse für die zweiten, dritten, usw. Probenräume.
In einfacher Weise kann der Fraktalen-Generator nach Fig. 12 und Fig. 14 auch in Varianten konstruiert werden, bei denen ein RAM oder eine Gruppe von RAM-Speichern zur Erzeugung einer Sequenz für Fraktalen-Animation ausgelesen werden, während ein anderer RAM oder eine Gruppe anderer RAM-Speicher mit Faltungsergebnissen geladen wird, die dazu verwendet werden, eine nachfolgende Sequenz fraktalter Animation zu erzeugen. Varianten der Fraktalen- Generatoren nach den Fig. 12 und 14, die eine Zeilenverflechtung von Teilbild zu Teilbild erlauben, sind natürlich ebenfalls möglich.
Die Fig. 15 zeigt einen Fraktalen-Generator, der ohne Speicherung von Faltungsergebnissen in Speichern auskommt und sich stattdessen auf die Speicherung des Streumusters selbst stützt, um die Bezugsbasis für die Relativlage der verschiedenen Fraktalen-Komponenten in ihren jeweiligen Probenräumen herzustellen. Ein Adressengenerator 197 liefert rasterabtastende Leseadressen-Signale an ein ausgewähltes Exemplar von PROM-Streumusterspeichern 33, 34, 35. Dies geschieht auf einer Zeitmultiplex-Basis, ähnlich wie beim Fraktalen-Generator nach Fig. 14, unter dem Einfluß von Steuersignalen aus der Zeitmultiplex- Steuerschaltung 198. Diese Steuerschaltung 198 steuert außerdem einen Multiplexer 199, der die ausgelesenen Daten aus dem gewählten Exemplar der PROM-Streumusterspeicher 33, 34 und 35 an eine der Faltungseinrichtungen 45, 46, 47, 48 liefert, die in demjenigen Probenraum arbeitet, dem die jeweils betreffende Probe der im Rotor abgetasteten Auslesung zugeordnet ist. Bevor Zyklorama- Effekte in den niedrigeren Raumfrequenzen auftreten, erstrecken sich die vom Fraktalen-Generator nach Fig. 15 erzeugten Fraktalen über einen Bereich, der vierundsechzigmal so groß ist wie derjenige Bereich, der Bildpunkt für Bildpunkt vom ausgewählten Exemplar der PROM-Streumusterspeicher 33, 34, 35 abgefragt wird.
Die Information des Streumusters ist räumlich gesehen weniger diffus als die Faltungsresultate, deren Erzeugung eine Integration beinhaltet. So kann ein Speicher für ein Streumuster aus Punkten, die ziemlich spärlich über den Raum verteilt sind, eher kompakt gemacht werden als ein Speicher, der Faltungsergebnisse speichert. Das Streumuster kann beispielsweise in einem zeilenadressierten Speicher gespeichert werden, in dem Run-Längen-Codes Punktteile entlang den Abtastzeilen angeben. Gemäß einem anderen Beispiel kann man die ausgewählten PROM-Streumusterspeicher 33, 34, 35 in einer etwas größer aufgelösten Rasterabtastung adressieren, wobei die niedrigerwertigen Informationen der Punktadressen als Daten im Speicher gespeichert sind. Der PROM kann dann mit voller Auflösung unter Anwendung des sogenannten "Pixel Phasing" ausgelesen werden, wobei die exakten digitalisierten Punkte einer Abtastzeile gegenüber den exakten digitalisierten Punkten einer anderen Abtastzeile nach links oder rechts verschoben werden, wie es in der US-Patentschrift 44 81 509 beschrieben ist. Wo Punktmuster eine periodische Natur haben, kann man einen Speicher kleinerer Größe wählen und dessen Speicherplätze mehrmals auslesen. Bei manchen Streumustern kann man einen Streumuster-Speicher benutzen, dessen Speicherplätze durch nicht-fortlaufende ganzzahlige Raumkoordinaten adressiert werden, entsprechend der US-Patentschrit 44 42 545.
Bei der Konstruktion von Faltungseinrichtungen für die Erzeugung animierter Fraktalen gemäß der Erfindung muß man beachten, daß der zykloramische Rundlauf der aus Speichern gezogenen Bilddaten davon abhängt, inwieweit der Raum als zyklisch in modularen Einzelheiten anzusehen ist. Die Resultate einer Faltung des Erzeugermusters mit einem Streumusterpunkt, der nahe einem Rand des Bereichs der Speicheradressen in einer räumlichen Dimension liegt (die Speicheradressen befinden sich in einem nicht-modularen umgrenzten Speicheradressenraum), müssen nicht nur nahe diesem Rand des Bereichs, sondern auch nahe dem gegenüberliegenden Rand erscheinen. Andernfalls gibt es Diskontinuitäten in den Faltungsergebnissen, die hervorstechend in der abgetasteten Fraktalen vorhanden sind. Für eine Faltung in modularen räumlichen Einzelheiten kann man leicht dafür sorgen, daß man eine gewisse "Überlappung" bei der Speicherabtastung vorsieht, sie muß jedoch berücksichtigt werden, falls das Streumuster Punkte nahe dem Rand des Speicheradressenraums oder dem Äquivalent dieses Raums für die Punktgeneratoren 36 und 37 hat.
Die vorstehend beschriebenen Verfahren zur Erzeugung von Fraktalen sind auch dazu geeignet, verwandte Funktionen zu erzeugen, die streng genommen keine Fraktalen sind und wo die an den Faltungen beteiligten Erzeugermuster in den verschiedenen Maßstäben nicht alles eigenähnliche Varianten der genau gleichen Form sind. In den Patentansprüchen ist der Ausdruck "Fraktale" in derart erweitertem Sinne zu verstehen, daß er auch solche verwandten Funktionen umfaßt.

Claims (21)

1. Verfahren zur Erzeugung von Bildsignalen für die Darstellung einer Fraktalen, in Form einzelner Abtastproben, welche die Werte von Bildpunkten in einer mehrdimensionalen Anordnung repräsentieren, die einen Probenraum definiert, worin die Orte der Abtastproben in jeder Dimension in jeweils einer vorbestimmten Dichte regelmäßig beabstandet sind, gekennzeichnet durch folgende Schritte:
  • a) die gewünschte Intensitätsverteilung der Fraktale über den Bildraum wird durch Bildung eines Streumusters aus Punkten mit entsprechender Verteilung ihrer Konzentration festgelegt;
  • b) es werden n Exemplare des Streumusters jeweils in Form von Abtastproben n verschiedener Probenräume gebildet, wobei die Abtastdichte vom ersten bis zum n-ten Probenraum in jeder Dimension von Probenraum zu Probenraum abnimmt;
  • c) die gewünschte Erzeugende (Grundform) der Fraktale wird als Erzeugermuster in Form von Abtastproben eines normierten Probenraums bereitgestellt;
  • c) das Erzeugermuster wird mit jedem der n Streumuster räumlich gefaltet, um n verschiedene Faltungsresultate in den n Probenräumen zu erzielen;
  • e) jedes der für den zweiten bis n-ten Probenraum erzielten Faltungsresultate wird durch Interpolation auf die Abtastdichte des ersten Probenraumes erweitert;
  • f) die erweiterten Faltungsresultate werden mit dem im ersten Probenraum erzielten Faltungsresultat kombiniert, um die Abtastproben der Fraktale zu erhalten.
2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß die Erweiterung und Kombination folgendermaßen durchgeführt wird:
mit Hilfe von Interpolation wird das für den n-ten Probenraum erzielte Faltungsresultat auf die Probendichte des (n-1)-ten Probenraums erweitert;
das erweiterte Faltungsresultat im n-ten Probenraum wird mit dem im (n-1)-ten Probenraum erzielten Faltungsresultat kombiniert;
anschließend werden nacheinander in jedem der (n-1)- ten bis ersten Probenräume das im betreffenden Probenraum erzielte Faltungsresultat und ein erweitertes Resultat miteinander kombiniert, das vorher im Probenraum der nächst-höheren Ordnungszahl erzielt wurde;
mit Hilfe von Interpolation wird das Resultat der in jedem Probenraum mit Ausnahme des ersten Probenraumes durchgeführten Kombination auf die Probendichte des Probenraumes der nächst-niedrigeren Ordnungszahl erweitert,
so daß die Fraktale aus dem im ersten Probenraum durchgeführten Kombinationsvorgang resultiert.
3. Verfahren nach Anspruch 1 oder 2, dadurch gekennzeichnet, daß die Kombination additiv ist.
4. Verfahren nach einem der Ansprüche 1 bis 3, dadurch gekennzeichnet, daß die räumliche Faltung des Erzeugermusters mit den jeweiligen Streumustern für jeden der Probenräume erfolgt, indem in jedem der Probenräume eine zugehörige Faltung durchgeführt wird.
5. Verfahren nach einem der Ansprüche 1 bis 4, dadurch gekennzeichnet, daß das Verfahren nach einem der Ansprüche 1 bis 4 wiederholt wird und daß das Streumuster in mindestens einem Probenraum im Lauf der Wiederholungen geändert wird.
6. Verfahren nach Anspruch 5, dadurch gekennzeichnet, daß bei mindestens einem Probenraum die Lage des Streumusters in diesem Probenraum relativ zu einem Bezugspunkt in diesem Probenraum während des Laufs der Wiederholung geändert wird.
7. Verfahren nach Anspruch 6, dadurch gekennzeichnet, daß die Lageänderung des Streumusters durch Drehung des Streumusters innerhalb des betreffenden Probenraums erfolgt.
8. Verfahren nach einem der Ansprüche 5 bis 7, dadurch gekennzeichnet, daß das Erzeugermuster im Lauf der Wiederholung relativ zu den Probenräumen gedreht wird.
9. Verfahren nach Anspruch 1 oder 2, dadurch gekennzeichnet, daß der Schritt der räumlichen Faltung des Erzeugermusters mit den Streumustern in jedem der Probenräume folgende Teilschritte aufweist:
Durchführung einer räumlichen Faltung zwischen dem Erzeugermuster und jedem einzelnen Streumuster im erwähnten normierten Raum;
Erzeugung des Resultates räumlicher Faltung in jedem der ersten bis n-ten Probenräume aus dem Resultat der im erwähnten normierten Raum vorgenommenen räumlichen Faltung entweder direkt oder durch Verschiebung oder durch Drehung oder durch Verschiebung und Drehung.
10. Verfahren nach Anspruch 9, dadurch gekennzeichnet, daß das Verfahren nach Anspruch 9 unter Änderung des Streumusters wiederholt wird.
11. Verfahren nach Anspruch 9, dadurch gekennzeichnet, daß das Verfahren nach Anspruch 9 unter Verschiebung der Position des jeweiligen Streumusters gegenüber Bezugspunkten im Raum wiederholt wird.
12. Verfahren nach Anspruch 9, dadurch gekennzeichnet, daß das Verfahren nach Anspruch 9 unter Drehung der jeweiligen Streumuster relativ zu Punkten im Raum wiederholt wird.
13. Verfahren nach einem der Ansprüche 10, 11 oder 12, dadurch gekennzeichnet, daß das Erzeugermuster im Lauf der Wiederholung relativ zu Punkten im Raum gedreht wird.
14. Anordnung zur Erzeugung einer Fraktalen, gekennzeichnet durch:
eine oder mehrere Faltungseinrichtungen (45, 46, 47 oder 48; 160) zum Falten eines Erzeugermusters mit einem jeweiligen rastermäßig abgetasteten Streumuster aus Punkten, um jeweils ein Faltungsresultat in Probenform zu erhalten;
eine Einrichtung (71-77; 161-172; 70-77, 194-196) zum Kombinieren der in Form von Abtastproben erzielten Faltungsresultate für eine Vielzahl von Probenräumen unterschiedlicher Probendichte.
15. Anordnung nach Anspruch 14, dadurch gekennzeichnet, daß jeweils eine eigene Faltungseinrichtung (45, 46, 47, 48) für jedes Exemplar eines ersten bis n-ten Probenraumes vorgesehen ist, bei denen die Abfragedichte mit steigender Ordnungszahl des betreffenden Probenraumes immer geringer wird, wobei n eine positive Zahl gleich mindestens 3 ist.
16. Anordnung nach Anspruch 15, dadurch gekennzeichnet, daß für die jedem Probenraum zugeordnete Faltungseinrichtung jeweils ein Speicher (11, 12 usw.) vorgesehen ist, der in Fenster-Abtastung entsprechend einem Rasterabtastmuster betrieben wird, um Streumuster zur besagten Faltungseinrichtung zu liefern.
17. Anordnung nach Anspruch 14, gekennzeichnet durch:
einen oder mehrere Speicher (34, 35 oder 36), deren jeder in Fenster-Abtastung entsprechend einem Rasterabtastmuster betrieben wird, um Streumusterproben zu erhalten;
einen Multiplexer (199) zur Lieferung erhaltener Streumusterproben an jeweils ein zugeordnetes Exemplar der Faltungseinrichtungen (45, 46, 47, 48).
18. Anordnung nach Anspruch 15, 16 oder 17, dadurch gekennzeichnet,
daß die Einrichtung zum Kombinieren erzielter Faltungsresultate in Form von Abtastproben jeweils einen räumlichen Interpolator (72, 74, 76, usw.) für jeden Probenraum mit Ausnahme des ersten Probenraumes enthält, um die Dichte von Proben, die aus Punkten im betreffenden Probenraum erhalten werden, auf die Dichte von Proben zu erhöhen, die von Punkten im Probenraum der nächstniedrigeren Ordnungszahl erhalten werden;
daß der für den n-ten Probenraum vorgesehene räumliche Interpolator (72) Proben des aus einer jeweils zugeordneten Faltungseinrichtung (48) erhaltenen Faltungsresultates in dessen Kombination mit einer Direktgröße erweitert;
daß jeder der räumlichen Interpolatoren (74, 76), die für die anderen als die ersten und n-ten Probenräume vorgesehen sind, Proben des jeweils zugeordneten erzielten Faltungsresultates in deren Kombination mit den Proben jeweils desjenigen räumlichen Interpolators umwandelt, der für den Probenraum der jeweils nächst höheren Ordnungszahl vorgesehen ist;
daß die Proben im Faltungsresultat, das von der für den ersten Probenraum vorgesehenen Faltungseinrichtung (45) geliefert wird, mit Proben kombiniert werden, die aus dem für den zweiten Probenraum vorgesehenen räumlichen Interpolator (76) erhalten werden.
19. Anordnung nach Anspruch 14, dadurch gekennzeichnet, daß eine einzige Faltungseinrichtung (160) Faltungsresultate für mehr als einen der Probenräume erzeugt.
20. Anordnung nach Anspruch 19, dadurch gekennzeichnet,
daß die Probenräume vom ersten bis zum n-ten Probenraum mit aufsteigender Ordnungszahl zunehmend geringere Probendichte haben;
daß die einzige Faltungseinrichtung (160) eine Folge räumlicher Faltungen in einem normierten Probenraum durchführt, um eine Folge von Faltungsresultaten in Probenform zu liefern, von denen eines das Faltungsresultat für den ersten Probenraum ist;
daß die kombinierende Einrichtung folgendes enthält:
eine Schaltungsanordnung (167-169) zur räumlichen Interpolation, um die anderen Faltungsresultate der erwähnten Folge zu erweitern und erweiterte Faltungsresultate für den zweiten bis n-ten Probenraum zu entwickeln;
eine Vielzahl von Speichern (161-164) zur Speicherung der Faltungsresultate für den ersten Probenraum und der erweiterten Faltungsresultate für den zweiten bis n-ten Probenraum;
eine Einrichtung (171) zum Abtasten der Inhalte der Speicher derart, daß die Auslesung aus diesen Speichern parallel erfolgt;
eine einzige Kombinierschaltung (172), welche die parallelen Auslesungen aus den Speichern (161-164) zu einer Fraktalen kombiniert.
21. Anordnung nach Anspruch 19, dadurch gekennzeichnet, daß die einzige Faltungseinrichtung (160) räumliche Faltung in einem normierten Probenraum durchführt und daß ferner folgendes vorgesehen ist:
ein Vollbildspeicher (190) zur Speicherung der Resultate der räumlichen Faltung;
eine Einrichtung (171, 192) zum anschließenden Auslesen der Faltungsresultate aus dem Vollbildspeicher unter Rasterabtastung in jedem der ersten bis n-ten Probenräume fortschreitend geringerer Probendichte auf einer Zeitmultiplex-Basis;
einen Speicherausgangsmultiplexer (193) zur Demultiplexierung der Faltungsresultate für die ersten bis n-ten Probenräume und zur Lieferung dieser Faltungsresultate in Parallelform;
eine Schaltung (194-196) zum unterschiedlichen Verzögern der parallel gelieferten Faltungsergebnisse in jeweils justierbarem Maß.
DE19863619427 1985-06-11 1986-06-10 Verfahren und anordnung zur erzeugung von fraktalen Granted DE3619427A1 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US06/743,623 US4694407A (en) 1985-06-11 1985-06-11 Fractal generation, as for video graphic displays

Publications (2)

Publication Number Publication Date
DE3619427A1 DE3619427A1 (de) 1986-12-11
DE3619427C2 true DE3619427C2 (de) 1991-06-27

Family

ID=24989500

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19863619427 Granted DE3619427A1 (de) 1985-06-11 1986-06-10 Verfahren und anordnung zur erzeugung von fraktalen

Country Status (6)

Country Link
US (1) US4694407A (de)
JP (1) JPH0634202B2 (de)
KR (1) KR900000956B1 (de)
DE (1) DE3619427A1 (de)
FR (1) FR2583183B1 (de)
GB (1) GB2176678B (de)

Families Citing this family (55)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA1250064A (en) * 1985-03-29 1989-02-14 Kenichi Anjyo Method for constructing three-dimensional polyhedron model
JPS61246673A (ja) * 1985-04-08 1986-11-01 Anritsu Corp 複素伝送反射特性の表示装置
US4720871A (en) * 1986-06-13 1988-01-19 Hughes Aircraft Company Digital image convolution processor method and apparatus
US4789933A (en) * 1987-02-27 1988-12-06 Picker International, Inc. Fractal model based image processing
US4843380A (en) * 1987-07-13 1989-06-27 Megatek Corporation Anti-aliasing raster scan display system
US4941193A (en) * 1987-10-02 1990-07-10 Iterated Systems, Inc. Methods and apparatus for image compression by iterated function system
FR2624992B1 (fr) * 1987-12-21 1990-04-06 Comp Generale Electricite Generateur de signal temporel periodique genre fractal
FR2624993B1 (fr) * 1987-12-21 1990-04-06 Comp Generale Electricite Generateur de signal temporel periodique a caractere recursif
US5025394A (en) * 1988-09-09 1991-06-18 New York Institute Of Technology Method and apparatus for generating animated images
JP2575197B2 (ja) * 1988-10-25 1997-01-22 沖電気工業株式会社 3次元画像形成装置
DE3843450A1 (de) * 1988-12-23 1990-06-28 Meike Froehlich Verfahren und vorrichtung zum vormontieren eines schneidrings oder keilrings einer rohrverschraubung
US5054101A (en) * 1989-02-28 1991-10-01 E. I. Du Pont De Nemours And Company Thresholding of gray level images using fractal dimensions
US5065447A (en) * 1989-07-05 1991-11-12 Iterated Systems, Inc. Method and apparatus for processing digital data
US4974187A (en) * 1989-08-02 1990-11-27 Aware, Inc. Modular digital signal processing system
GB2239772B (en) * 1989-10-26 1993-12-01 Gen Electric Co Plc Image generation and processing
US5341466A (en) * 1991-05-09 1994-08-23 New York University Fractal computer user centerface with zooming capability
US5384867A (en) * 1991-10-23 1995-01-24 Iterated Systems, Inc. Fractal transform compression board
US5416848A (en) * 1992-06-08 1995-05-16 Chroma Graphics Method and apparatus for manipulating colors or patterns using fractal or geometric methods
US5848198A (en) * 1993-10-08 1998-12-08 Penn; Alan Irvin Method of and apparatus for analyzing images and deriving binary image representations
FR2716061B1 (fr) * 1994-02-04 1996-03-15 Thomson Broadcast Procédé de génération d'images texturées et d'effets spéciaux en vidéo et dispositif pour la mise en Óoeuvre du procédé.
US5543965A (en) * 1994-05-11 1996-08-06 Nvision Grafix, Inc. Method and apparatus for autostereoscopic lenticular displays utilizing random dot patterns
JPH08110950A (ja) * 1994-09-08 1996-04-30 Sony Corp 図形データの階層的近似化方式を利用した描画装置および描画方法
US6055335A (en) 1994-09-14 2000-04-25 Kabushiki Kaisha Toshiba Method and apparatus for image representation and/or reorientation
FR2726103B1 (fr) * 1994-10-25 1996-12-13 Suisse Electronique Microtech Dispositif d'execution d'un programme d'instructions
US5754704A (en) * 1995-03-10 1998-05-19 Interated Systems, Inc. Method and apparatus for compressing and decompressing three-dimensional digital data using fractal transform
US5862263A (en) * 1995-04-13 1999-01-19 Samsung Electronics Co., Ltd. Fractal image compression device and method using perceptual distortion measurement
KR0154739B1 (ko) * 1995-04-19 1998-11-16 김광호 프랙탈 영상 압축 장치 및 방법
JP3785700B2 (ja) 1995-12-18 2006-06-14 ソニー株式会社 近似化方法および装置
US5777622A (en) * 1996-01-05 1998-07-07 International Business Machines Corporation Method for identifying invisible objects ordered in a tree-like data structure by finding adjoining hidden objects
JPH10134208A (ja) * 1996-10-31 1998-05-22 Sony Corp 形状データの近似化方法及び描画装置
JP3785709B2 (ja) * 1996-12-13 2006-06-14 ソニー株式会社 形状データの近似化方法及び描画装置
US5842937A (en) * 1997-10-22 1998-12-01 Acushnet Company Golf ball with surface texture defined by fractal geometry
US6259457B1 (en) * 1998-02-06 2001-07-10 Random Eye Technologies Inc. System and method for generating graphics montage images
US6310621B1 (en) * 1998-04-03 2001-10-30 Avid Technology, Inc. Extended support for numerical controls
JP2000067270A (ja) 1998-06-12 2000-03-03 Sony Corp 形状デ―タの近似化方法及び情報処理装置並びに媒体
US6469702B1 (en) 1999-04-16 2002-10-22 Avid Technology, Inc. Method and system for editing function curves in two dimensions
US6326988B1 (en) 1999-06-08 2001-12-04 Monkey Media, Inc. Method, apparatus and article of manufacture for displaying content in a multi-dimensional topic space
US6281899B1 (en) 1999-06-08 2001-08-28 Monkeymedia, Inc. Method, apparatus and article of manufacture for displaying traversing and playing content in a multi-dimensional topic space
US9843447B1 (en) 1999-09-09 2017-12-12 Secure Axcess Llc Authenticating electronic content
US6715058B1 (en) * 1999-09-28 2004-03-30 Texas Instruments Incorporated Apparatus and method for a sorting mode in a direct memory access controller of a digital signal processor
US6782101B1 (en) * 2000-04-20 2004-08-24 The United States Of America As Represented By The Secretary Of The Navy Encryption using fractal key
US20030206182A1 (en) * 2001-07-20 2003-11-06 Weather Central, Inc. Wisconsin Corporation Synchronized graphical information and time-lapse photography for weather presentations and the like
US7250945B1 (en) * 2001-09-07 2007-07-31 Scapeware3D, Llc Three dimensional weather forecast rendering
FR2834376B1 (fr) * 2001-12-28 2004-04-02 St Microelectronics Sa Adressage de memoire de blocs de reference en codage fractal
US7343425B1 (en) 2003-02-21 2008-03-11 Marvell International Ltd. Multi-speed serial interface for media access control and physical layer devices
US8315951B2 (en) * 2007-11-01 2012-11-20 Alcatel Lucent Identity verification for secure e-commerce transactions
US20100219296A1 (en) * 2008-11-01 2010-09-02 Alexander J. Shelman-Cohen Reduced drag system for windmills, fans, propellers, airfoils, and hydrofoils
US10352171B2 (en) 2008-11-01 2019-07-16 Alexander J. Shelman-Cohen Reduced drag system for windmills, fans, propellers, airfoils, and hydrofoils
US8639053B2 (en) * 2011-01-18 2014-01-28 Dimension, Inc. Methods and systems for up-scaling a standard definition (SD) video to high definition (HD) quality
TWI410890B (zh) * 2011-04-08 2013-10-01 Mstar Semiconductor Inc 顯示分支架構的方法與裝置
JP6700712B2 (ja) * 2015-10-21 2020-05-27 キヤノン株式会社 畳み込み演算装置
US9858636B1 (en) 2016-06-30 2018-01-02 Apple Inc. Configurable convolution engine
US10176551B2 (en) 2017-04-27 2019-01-08 Apple Inc. Configurable convolution engine for interleaved channel data
US10325342B2 (en) * 2017-04-27 2019-06-18 Apple Inc. Convolution engine for merging interleaved channel data
CN110751700B (zh) * 2019-10-17 2022-09-06 南昌大学 用于单像素成像的采样和重建集成深度学习网络的训练方法

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US32201A (en) * 1861-04-30 John Neumann Faucet
US3903517A (en) * 1974-02-26 1975-09-02 Cummins Allison Corp Dual density display
US4246578A (en) * 1978-02-08 1981-01-20 Matsushita Electric Industrial Co., Ltd. Pattern generation display system
US4263593A (en) * 1979-08-20 1981-04-21 Tektronix, Inc. Display interpolator employing a transversal filter for a digital oscilloscope
USRE32201F1 (en) 1981-08-12 1989-08-01 Ibm Apparatus and method for reading and writing text characters in a graphics display
US4622649A (en) * 1983-07-11 1986-11-11 International Telephone And Telegraph Corporation Convolution processor
US4580135A (en) * 1983-08-12 1986-04-01 International Business Machines Corporation Raster scan display system
US4559605A (en) * 1983-09-16 1985-12-17 The Boeing Company Method and apparatus for random array beamforming
JPS6115471A (ja) * 1984-06-30 1986-01-23 Fujitsu Ltd 画像情報の圧縮方式

Also Published As

Publication number Publication date
US4694407A (en) 1987-09-15
KR900000956B1 (ko) 1990-02-19
JPS61285576A (ja) 1986-12-16
FR2583183B1 (fr) 1991-05-03
JPH0634202B2 (ja) 1994-05-02
KR870000653A (ko) 1987-02-19
GB8613730D0 (en) 1986-07-09
FR2583183A1 (fr) 1986-12-12
GB2176678A (en) 1986-12-31
GB2176678B (en) 1989-10-25
DE3619427A1 (de) 1986-12-11

Similar Documents

Publication Publication Date Title
DE3619427C2 (de)
DE3202365C2 (de) Datenspeicher mit Fensterabtastung
US5384904A (en) Image scaling using real scale factors
US5469222A (en) Non-linear pixel interpolator function for video and graphic processing
US4602285A (en) System and method for transforming and filtering a video image
DE3230679C2 (de) Bildzeilen-Zwischenspeicher-Vorrichtung
DE69836360T2 (de) System zur Anzeige von computergesteuerten holographischen Bildern
DE3629984C2 (de)
DE3022454A1 (de) Optisches abbildesystem mit computererzeugtem bild fuer einen bodenfesten flugsimulator
DE3804938A1 (de) Bildverarbeitungseinrichtung
US4698843A (en) Method for compensating for void-defects in images
DE2950712A1 (de) Einrichtung zur erzeugung eines elektronischen hintergrundrasterfeldes
DE2835689A1 (de) Anordnung zur veraenderung der aufloesung bei der bild-datenerfassung und -uebertragung
DE4234985C2 (de) Verfahren zum Transformieren von Farbsignalen und Vorrichtung zur Durchführung des Verfahrens
DE69936368T2 (de) Verbessertes Anzeigeverfahren für Bilder mit Graustufen
DE19545776A1 (de) Abgestufte Anzeige digital komprimierter Wellenformen
DE4215094C2 (de) Bildverarbeitungsverfahren und -vorrichtung
US5646696A (en) Continuously changing image scaling performed by incremented pixel interpolation
DE19518891C2 (de) Verfahren und Vorrichtung zur Durchführung einer programmierbaren Videotransformation
DE3248224A1 (de) Generator fuer graphische effekte
DE3705124A1 (de) Anzeigeprozessor und videoverarbeitungsuntersystem fuer computergraphik
US4591998A (en) Dynamic bar pattern method
CN106161875B (zh) 图像处理装置与方法
GB2073988A (en) Video picture processing
DE102006042386B4 (de) Verfahren und Vorrichtung zur Darstellung von Bildern

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
D2 Grant after examination
8364 No opposition during term of opposition
8320 Willingness to grant licences declared (paragraph 23)