Chaos Game: IFS mit Color Stealing
Wer ansprechende Bilder erzeugen will, benötigt eine (nicht-chaotische) Farbgebung. Wir haben das in vielen
Kapiteln bereits umfassend erklärt. Ein Measure-Attraktor erlaubt dies auf einfache Weise: wenn wir
beispielsweise die Trefferdichte bei der Iteration kennen, können wir diese farblich codieren.
Leider ist die Erzeugung eines passenden Farbverlaufs nicht ganz einfach.
Wie groß soll er werden? Bei welchen Farbzuordnungen bekommt man den größten Kontrast?
Eine ganz andere Idee hatte Michael Barnsley. Farbgeber ist ein Bild mit der gleichen Dimension, wie das zu
erstellende Attraktorbild. Angenommen, der Attraktor entsteht durch Anwendung eines IFS, das aus n affinen Funktionen
besteht, wobei jede mit einer bestimmten Wahrscheinlichkeit gewählt wird. Wir nennen dieses IFS IFSGeo.
Nun wählt man ein zweites IFS, genannt IFSColor, mit der gleichen Anzahl n affiner Funktionen.
Eine eigene Wahrscheinlichkeit für die Verwendung einer affinen Funktion benötigt man hier nicht, da
die Wahl der Funktion in IFSColor durch die Wahl in IFSGeo bestimmt wird.
Wie genau wird dann die Farbe für ein Pixel ausgewählt?
Nehmen wir an, dass in IFSGeo das Ergebnis der aktuellen Iteration der Punk P(x,y) sei.
IFSColor landet gleichzeitig auf Punkt Q(X,Y). Die Farbe für das Pixel
(x,y) bekommt dann die Farbe des Bildes bei (X,Y).
Es gibt also zwei Dinge zu bestimmen: das Vorlagebild und IFSColor. Letzteres bestimmt den Ausschnitt des Vorlagebildes.
Es werden folgende Vorlagebilder für Color Stealing verwendet:
Die meisten Bilder sind hier auf der Homepage zu finden. Sie sind hauptsächlich aus den Kapiteln
Fraktale
und Attraktore entnommen. Weiter wurden sechs eigene Fotografien
verwendet. Die Van Gogh Bilder sind Fotografien von Postern.
Man erstellt also keinen Farbverlauf. Stattdessen sucht man ein Vorlagebild, das vielversprechende Farben enthält.
Dennoch wird der Sketch so gestaltet werden, dass
man per Tastendruck das zu verwendete Bild wechseln kann. Das ist sinnvoll, denn man kann nicht zuvor abschätzen,
welche Wirkung Color Stealing (CS) auf die Farbgebung des Attraktors hat. Um mit der Dichtemethode vergleichen
zu können, verwenden wir hier vier IFS aus den letzten beiden Kapiteln.
Color Stealing beim Blatt IFS
Das folgende Bild wurde mit dem Sketch
CS_IFS_Blatt und der Bildvorlage
bild11.jpg erstellt.
Wichtige Klarstellung: hier, wie in den folgenden Fällen geht es eher darum, ästhetische als naturalistische Bilder zu erzeugen.
Wir nennen die nach dem Zufallsprinzip erzeugte Versionen
IFSGeoZ und
IFSColorZ.
Um nicht durch Divergenz zu viele unbrauchbare Beipiele zu bekommen, sollen sich die neuen Parameter
betragsmäßig nicht um mehr als 0.5 von den alten Parametern unterscheiden.
Es gibt also vier Kombinationen, die wir durch je einen Tastendruck auswählen können.
Erkennen Sie, welche Vorlagebilder jeweils benutzt wurden?
Auch das folgende Bild ist eine Variation von CS_IFS_Blatt, wir nennen es IFS
CS_IFS_Pflanze.
Da wir uns im nächsten Abschnitt genau mit diesem IFS beschäftigen werden, hier die zugehörigen Parameter:
| a[1]=0.19600444 |
b[1]=0.135540651 |
c[1]=0.05194523 |
d[1]=0.38700208 |
| a[2]=0.22800389 |
b[2]0.35767037 |
c[2]=−0.28066716 |
d[2]=0.5522661 |
| a[3]=0.2556479 |
b[3]=−0.6835396 |
c[3]=0.5610076 |
d[3]=0.4757266 |
| a[4]=0.33935666 |
b[4]=−0.0028287172 |
c[4]=−0.07042682 |
d[4]=0.63825965 |
| e[1]=−0.113843545 |
f[1]=−1.5125301 |
wkt[1]=0.25 |
| e[2]=1.4091645 |
f[2]=−0.6143913 |
wkt[2]=0.25 |
| e[3]=−1.5166401 |
f[3]=−0.6511596 |
wkt[3]=0.25 |
| e[4]=0.26550332 |
f[4]=1.4701304 |
wkt[4]=0.25 |
IFSColor
Die Farben des Fraktals orientieren sich am Vorlagebild. Aber nicht an allen Farben des Bildes.
Die Folgeelemente von IFSColor sind Bildpunkte des Vorlagebildes, die zur Farbgebung eingesetzt werden.
Nicht getroffene Punkte tragen nichts zu Farbgebung bei. Welche Punkte des Vorlagebildes werden genutzt,
welche nicht? Um das beantworten zu können, muss man den Ausschnitt, den IFSColor bestimmt, genauer ansehen.
Denn es ist unmöglich, die Wirkung des Vorlagebildes abzuschätzen, solange wir nicht wissen, welche
Pixel dort getroffen werden. Ein neuer Sketch namens
IFSColor4 soll uns eine bessere Einschätzung ermöglichen.
IFSColor4 wird uns den Ausschnitt des Vorlagebildes bei diesen Parametern anzeigen. (Die Ziffer 4 im
Namen soll darauf hinweisen, dass vier affine Funktionen beteiligt sind. Will man den Sketch auch für andere
IFS mit vier Funktionen verwenden, so müssen die Wahrscheinlichkeiten eventuell angepasst werden.)
Startet man das Programm, dann wird grob die Hälfte es Bildes bedeckt.
Stellen Sie sich die farbigen Punkte allesamt
durchsichtig vor (weißer Bereich Bild unten links). Legt man diese "Maske" auf das Vorlagebild (unten Mitte),
so sieht man nur noch einen Teil davon (unten rechts). Und nur dieser Ausschnitt wird für die Farbgebung
des Blatt-Fraktals herangezogen.
Danach ändern wir die Parameter von IFSColor
zufällig, wobei sich die neuen Parameter betragsmäß um nicht mehr als 0.5 von den alten Parametern
unterscheiden sollen.
So kann man Diverenz meistens vermeiden. Varianten davon erhalten wir mit Hilfe
von Taste
b im zugehörigen Sketch. Und so kann das Ergebnis aussehen:
Was für ein Unterschied! Bleibt die Frage: Wie ändern sich die Blatt-Fraktale, wenn man die beiden
verschiedenen IFSColor verwendet? Die Antwort als Bild:
Gleiches Vorlagebild aber zwei farblich völlig verschiedene Blatt-Frakale.
Color Stealing beim Farn IFS
Falls Sie IFSColor hier ebenfalls anwenden wollen, müssen Sie dort die Wahrscheinlichkeiten anpassen.
Das folgende Bild wurde mit dem Sketch
CS_IFS_Farn und der Bildvorlage
bild05 erstellt.
Die nachfolgend abgebildeten Chaos-Farn Abbildungen wurden mit immer neuen Vorlagebildern und zufällig
veränderten Parametern berechnet. Meist benötigt man etwa 100 Millionen Iterationen, was auf einem nicht
zu altem Computer aber nur einige Sekunden dauert.
Eine gewisse Ähnlichkeit zum Farn-Fraktal kommt immer mal wieder vor. Das sind die Fälle, in denen sich die
Parameter nicht so stark von den Farn-Parametern unterscheiden. Und dann wieder bekommt man Ergebnisse,
wie im Bild unten, bei denen
man auch bei bestem Willen keine Farn-Strukturen erkennen kann.
Color Stealing bei der Spiral IFS
Wenn man hier
IFSGeoZ erzeugen will und dabei zulässt, dass die Abweichung von den ursprünglichen
Parametern betragsmäßig 0.5 sein darf, dann bekommt man durch Divergenz viele Fehlschläge. Dennoch
lohnt es sich hier geduldig zu sein, weil die besonderen "Fundstücke" nur so zu finden sind.
Das erste Bild zeigt die Spirale mit den unveränderten Parametern.
Im Folgenden einige Ergebnisse (in vierer Gruppen zusammengefasst) mit zufällig veränderten Parametern:
Hier ein Beispiel, mit wenig veränderten Geo-Parametern der Spirale:
Color Stealing beim Drachen IFS
Im Vergleich zum Drachen mit Farbverlauf und Dichtefärbung, hat man hier zusammenhängende Bereiche mit
gleicher oder ähnlicher Färbung. Zwar ändern sich, abhängig vom gewählten
Vorlagebild, die Farben und die Farbvielfalt, die zusammenhängenden Bereiche bleiben jedoch erhalten.
Bei diesem letzten Beispiel untersuchen wir die Änderung der Farbgebung zunächst durch verschiedene
Vorlagebilder, um dann die Änderung durch verschiedene
IFSColorZ (Taste
c) zu vergleichen.
IFSGeoZ, also der zufälligen Anderung der Parameter für den Drachen, ist im Folgenden immer
gleich, und zwar:
| a[1]=0.47828478 |
b[1]=0.33862093 |
c[1]=−0.27940762 |
d[1]=0.86121565 |
| a[2]=0.2820719 |
b[2]=0.8041424 |
c[2]=−0.27940762 |
d[2]=−0.038093686 |
| e[1]=−1.854855 |
f[1]=0.3747614 |
wkt[1]=0.8 |
| e[2]=1.0686244 |
f[2]=7.9480286 |
wkt[2]=0.2 |
Bei immer genau diesen Parametern für die Geometrie suchen wir uns 8 verschiedene Vorlagebilder aus.
Auch
IFSColor lassen wir in allen Fällen unverändert. Die Parameter entnehmen Sie dem Sketch.
Dies sind die Ergebnisse:
Können Sie erkennen, welche Vorlagebilder verwendet wurden?
Von links nach rechts und von oben nach unten:
bild1, bild2, bild3, bild4, bild5, bild26, bild27, bild28.
Die zweite Möglichkeit, auf die Farbgebung Einfluss zu nehmen, ist die zufällige Änderung der
IFSColor
bei gleichem Vorlagebild mihilfe von Taste
c. Vier Beispiele:
Der Vergleich zeigt, dass die Ergebnisse sich hier weniger unterscheiden, als bei der Verwendung
sehr verschiedener Vorlagebilder.
Sketch CS_IFS_Blatt
Sketch CS_IFS_Pflanze
Sketch IFSColor4
Sketch CS_IFS_Farn
Sketch CS_IFS_Spirale
Sketch CS_IFS_Drache
Menu