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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—2D [Two Dimensional] image generation
- G06T11/001—Texturing; Colouring; Generation of texture or colour
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/40—Analysis of texture
- G06T7/41—Analysis of texture based on statistical description of texture
- G06T7/48—Analysis 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.
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.
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.
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).
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.
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.
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ß.
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ß.
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)
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 |
US10325342B2 (en) * | 2017-04-27 | 2019-06-18 | Apple Inc. | Convolution engine for merging interleaved channel data |
US10176551B2 (en) | 2017-04-27 | 2019-01-08 | Apple Inc. | Configurable convolution engine for interleaved channel data |
CN110751700B (zh) * | 2019-10-17 | 2022-09-06 | 南昌大学 | 用于单像素成像的采样和重建集成深度学习网络的训练方法 |
Family Cites Families (9)
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 | 画像情報の圧縮方式 |
-
1985
- 1985-06-11 US US06/743,623 patent/US4694407A/en not_active Expired - Lifetime
-
1986
- 1986-06-06 GB GB8613730A patent/GB2176678B/en not_active Expired
- 1986-06-10 DE DE19863619427 patent/DE3619427A1/de active Granted
- 1986-06-11 KR KR1019860004612A patent/KR900000956B1/ko not_active IP Right Cessation
- 1986-06-11 FR FR868608454A patent/FR2583183B1/fr not_active Expired - Lifetime
- 1986-06-11 JP JP61137246A patent/JPH0634202B2/ja not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
KR900000956B1 (ko) | 1990-02-19 |
DE3619427A1 (de) | 1986-12-11 |
US4694407A (en) | 1987-09-15 |
FR2583183A1 (fr) | 1986-12-12 |
JPH0634202B2 (ja) | 1994-05-02 |
GB2176678B (en) | 1989-10-25 |
JPS61285576A (ja) | 1986-12-16 |
KR870000653A (ko) | 1987-02-19 |
FR2583183B1 (fr) | 1991-05-03 |
GB2176678A (en) | 1986-12-31 |
GB8613730D0 (en) | 1986-07-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE3619427C2 (de) | ||
DE3202365C2 (de) | Datenspeicher mit Fensterabtastung | |
US5384904A (en) | Image scaling using real scale factors | |
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) | ||
DE3628349C2 (de) | ||
EP0253608A2 (de) | Videoabtastungverfahren | |
DE3022454A1 (de) | Optisches abbildesystem mit computererzeugtem bild fuer einen bodenfesten flugsimulator | |
DE3712639A1 (de) | Verfahren und einrichtung zum abbilden von volumendaten | |
DE3804938A1 (de) | Bildverarbeitungseinrichtung | |
US4698843A (en) | Method for compensating for void-defects in images | |
DE3114643A1 (de) | Bildverarbeitungsverfahren und -vorrichtung | |
DE2950712A1 (de) | Einrichtung zur erzeugung eines elektronischen hintergrundrasterfeldes | |
DE2835689A1 (de) | Anordnung zur veraenderung der aufloesung bei der bild-datenerfassung und -uebertragung | |
DE19917092A1 (de) | Verfahren zur Rasterisierung eines Graphikgrundelements | |
DE4234985C2 (de) | Verfahren zum Transformieren von Farbsignalen und Vorrichtung zur Durchführung des Verfahrens | |
DE19545776A1 (de) | Abgestufte Anzeige digital komprimierter Wellenformen | |
DE4215094C2 (de) | Bildverarbeitungsverfahren und -vorrichtung | |
US5646696A (en) | Continuously changing image scaling performed by incremented pixel interpolation | |
DE3248224A1 (de) | Generator fuer graphische effekte | |
DE3705124A1 (de) | Anzeigeprozessor und videoverarbeitungsuntersystem fuer computergraphik | |
CN106161875B (zh) | 图像处理装置与方法 | |
GB2073988A (en) | Video picture processing |
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) |