Modellierung von Pflanzen - Oliver Deussen Pflanzenmodellierung

Die Seite wird erstellt Johanna John
 
WEITER LESEN
Modellierung von Pflanzen - Oliver Deussen Pflanzenmodellierung
Computergraphik II

Modellierung von Pflanzen

Oliver Deussen       Pflanzenmodellierung 1
Modellierung von Pflanzen - Oliver Deussen Pflanzenmodellierung
Computergraphik II

zwei unterschiedliche Herangehensweisen:
      1. Prozedurale Methoden (Algorithmen)
            intuitiv, einfache Parameter, Speziallösung für einzelne Pflanzen
      2. Regelbasierte Systeme (formale Grammatiken)
            lokale Regeln, schwierig aufzubauen, generell einsetzbar

→ Verbindung beider Paradigmen durch regelbasierte Objekterzeugung
      → Versuch, Stärken beider Ansätze zu verbinden

→ andere Unterteilungen möglich

Oliver Deussen                                                  Pflanzenmodellierung 2
Modellierung von Pflanzen - Oliver Deussen Pflanzenmodellierung
Computergraphik II

Verzweigungsmuster aus zellulären Automaten
→ Ulam 1966: zelluläre Automaten (v. Neumann) für Verzweigungen
→ Zellen werden nach bestimmten Regeln angeschaltet

                                                 

                                                      5
                                                      5
                                                      4

                                                 
                                                 

                                         3
                                         4
                                         
                                         
                                                      4
                                                      5
                                                      3

                                                 
                                                        

                                                               4
                                                               3
                                     3
                                     4

                                                      2

                                                                       3
                                                                       4

                                                                  
                                                                 

                     5   5
                         4
                                4
                                 5
                                 3
                                 
                                        2
                                                      1

                                                                                    

                                                               2             5
                                                                             4
                                                                             3        5
                                                                                      4       5
                             3
                             4

                                             2

                                                                   3
                                                                   4

                                         3
                                         4
                                         
                                         

                                                               4
                                                               3
                                                          
                                             4
                                             5
                                             3

                                             
                                             5
                                             4

                                             
                                             5

                                             

                                                                             Verzweigungsmuster nach Ulam

Oliver Deussen                                                                                              Pflanzenmodellierung 3
Modellierung von Pflanzen - Oliver Deussen Pflanzenmodellierung
Computergraphik II

Erstes kontiunierliches Modell
→ 1967, Biologe E. Cohen: Erzeugung von Verzweigungsstrukturen
→ für jedes Verzweigungsmuster Fortran-Programm mit Wachstums-
  regeln

                         Verzweigungsstrukturen nach Cohen

Oliver Deussen                                               Pflanzenmodellierung 4
Modellierung von Pflanzen - Oliver Deussen Pflanzenmodellierung
Computergraphik II

Beschreibung des Modells:

• Wachstum findet nur an den Spitzen der Äste statt
• Stärke und Winkel des Wuchses werden durch die aktuelle Richtung, ein
  lokales Dichtefeld, dessen Gradienten sowie die Resistenz der Struktur
  gegen Winkelveränderungen bestimmt.
• Die Verzweigungstendenz wird durch ein probabilistisches Maß be-
  stimmt, das neben einem generellen Wert von der Entfernung zur letzten
  Verzweigung und vom lokalen Dichtefeld abhängt.

Oliver Deussen                                          Pflanzenmodellierung 5
Modellierung von Pflanzen - Oliver Deussen Pflanzenmodellierung
Computergraphik II

Verfahren von Honda und Fischer
→ weiteres prozedurales Modell

• Die Internodien sind gerade, ihre Dicke wird nicht beachtet
• Verzweigung geschieht binär, die Länge der verzweigenden Segmente
  (Kindsegmente) ist über zwei Verhältniswerte r1 und r2 auf die Länge
  des Vatersegments bezogen.
• Vatersegment und die beiden Kindsegmente liegen in einer Ebene (Aus-
  nahme Abzweigungen vom Hauptstamm, hier ist Divergenz zugelassen),
  die Kindsegmente haben einen konstanten Verzweigungswinkel.
• Die Verzweigung nimmt in diskreten Schritten mit jeder Verzweigungs-
  ordnung zu.

Oliver Deussen                                          Pflanzenmodellierung 6
Modellierung von Pflanzen - Oliver Deussen Pflanzenmodellierung
Computergraphik II

⇒ es wird untersucht, wie Regulationsmechanismen die Verzweigung
  steuern, d.h. keine Überlappung zwischen Ästen
→ betrachteten Modelle sind zweidimansional und es werden zwei Arten
  von Regelungen untersucht:
1. Verzweigung wird nur ausgeführt, wenn in einem um den Verzweigungs-
punkt gezogenen Kreis keine anderen Äste hineinragen
→ Kreis hat konstante Größe

                           Verzweigungsbildung nach Honda

Oliver Deussen                                              Pflanzenmodellierung 7
Modellierung von Pflanzen - Oliver Deussen Pflanzenmodellierung
Computergraphik II

2. wie ändert sich Verzweigungcharakteristik ändert, Nachfolgeäste un-
terschiedliche Wachstumsraten erhalten

                            Verzweigunsbildung nach Honda

Oliver Deussen                                              Pflanzenmodellierung 8
Modellierung von Pflanzen - Oliver Deussen Pflanzenmodellierung
Computergraphik II

Erweiterte Vielfalt
→ effiziente Modellierung von Verzweigungstrukturen
→ welche Vielfalt kann damit erzeugt werden
→ aufbauend auf Grundverfahren von Aono und Kunii:

1. Verzweigung geschieht durch Bifurkation, die damit modellierten Bäu-
   me haben monopodiale oder sympodiale Form.
2. Länge und Durchmesser der verzweigenden Äste nehmen mit konstan-
   tem Faktor ab, die Verzweigungswinkel bleiben konstant über alle Ver-
   zweigungsstufen.
3. Die beiden verzweigenden Äste liegen in der Ebene, die durch den Vater
   und seinen maximalen Gradienten aufgespannt wird.
4. Die Verzweigung geschieht simultan an allen Enden der Zweige.
Oliver Deussen                                           Pflanzenmodellierung 9
Modellierung von Pflanzen - Oliver Deussen Pflanzenmodellierung
Computergraphik II

                      (a)                                                  (b)
                     a) Parametrisierung von Ästen; b) Divergenzwinkel.
                                 Parameter im Modell nach Aono und Kunii

→ Koordinaten von P1 und P2 ergeben sich über die Winkelfunktionen
               xi = xB + Ri ∗ (u ∗ cos(hi) − S ∗ T ∗ v ∗ sin(hi))
               yi = yB + Ri ∗ (v ∗ cos(hi) + S ∗ T ∗ u ∗ sin(hi))
               zi = zB + Ri ∗ w ∗ cos(hi)
Oliver Deussen                                                               Pflanzenmodellierung 10
Computergraphik II

→ mit den folgenden Parametern
  (Ri konstanter Reduktionsfaktor für den Radius):

                 u = xB − xA,     v = yB − yA ,   w = zB − zA
                       p
                 S = 1/ u2 + v 2
                     p
                 T =   u2 + v 2 + w 2

⇒ später Ansätze verwenden meistens Elemente dieses
  Verzweigungmodells

→ Nachteile:
      → Blätter werden aber nur rudimentär angedeutet
      → Geomatrie von Stamm und Ästen ist nur durch
        Liniensegmenten unterschiedlicher Dicke dargestellt
Oliver Deussen                                          Pflanzenmodellierung 11
Computergraphik II

Ergebnisse:

                     Verzweigungsstrukturen nach Aono und Kunii

Oliver Deussen                                                    Pflanzenmodellierung 12
Computergraphik II

Darstellung von Bäumen über Partikelsysteme
→ visuelle Modelle, für Film
→ primitives rekursives Verzweigungmodell
      Postprocessing: Zufälligkeiten werden eingebaut
      Blätter: kleine Kugel mit Farbe und Ausrichtung
→ wichtig: korrekte Farben sowie Licht/Schatten
→ Ergebnis trotz botanischer Inkorrektheit brauchbar

Oliver Deussen                                           Pflanzenmodellierung 13
Computergraphik II

Ergebnisbilder:

                     Strukturierte Partikelsysteme nach Reeves und Blau

Oliver Deussen                                                            Pflanzenmodellierung 14
Computergraphik II

Fraktale Baummodelle nach Oppenheimer
→ inspiriert durch Arbeiten von Mandelbrot
→ rekursive Prozedur zur Erzeugung von Selbstähnlichkeit

⇒ Verwendete Parameter sind:
      →     Verzweigungswinkel
      →     Verhältnis der Größe von Vater- und Kindzweigen
      →     Grad der Verjüngung entlang Stamm und Ästen
      →     Anzahl Zweige pro Stamm-Segment
      →     Deviationswinkel

Oliver Deussen                                              Pflanzenmodellierung 15
Computergraphik II

Ergebnisbild:

                     Fraktales Baummodell nach Oppenheimer

Oliver Deussen                                               Pflanzenmodellierung 16
Computergraphik II

Algorithmus nach Oppenheimer:
procedure fractaltree()
  begin
    Zeichne aktuelles Astsegment
    if (klein genug)
         then Zeichne Blatt
         else
           begin
              Transformiere für aktuellen Ast
              fractaltree()
              repeat
                begin
                   Transformiere für Verzweigung
                   fractaltree()
               end
 end end

Oliver Deussen                                      Pflanzenmodellierung 17
Computergraphik II

→ Stamm und Äste: generalisierte Zylinder durch Verbindung
  von Segmenten
→ realistisch aussehende Rinde:
      horizental verlaufende Sägezahnfunktion + Brownsches Rauschen

                     Rinde(x, y) = Sägezahn(N ∗ (x + R ∗ noise(x, y)))

noise(x, y): periodisch in x− und y−Richtung verlaufendes Rauschen

Oliver Deussen                                                  Pflanzenmodellierung 18
Computergraphik II

Geometrisches Modellieren in Bäumen (Bloomthal
→ Kontrollpunkte über rekursiven Algorithmus erzeugt
→ Punkte werden über Spline-Interpolation C2 stetig verbunden
→ Oberfläche wird erzeugt, indem senkrecht zum Spline kreisförmige
  Scheiben angeordnet und verbunden werden
→ Schwierigkeit: natürliche Verzweigungen
→ Lösung: sattelförmige Flächen zwischen verzweigenden Strängen
→ Rinde wird durch Bump- Mapping mit einer aus echter Rinde
  gewonnenen Textur dargestellt

Oliver Deussen                                          Pflanzenmodellierung 19
Computergraphik II

Ergebnisgeometrien nach Bloomthal:

                         Prozedurales Modell nach Bloomthal

Oliver Deussen                                                Pflanzenmodellierung 20
Computergraphik II

Knospung: ein botanischer Ansatz
→ Simulation des Wachstums der Spossachsen in diskreten
  Zeitabschnitten von Knoten zu Knoten
→ entlang eines Sprosses wird so Internodium an Intermodium
  gesetzt, nach definierter Länge Blätter/Verzweigungen
→ Spross kann ruhen oder absterben
→ Knospe trägte Wahrscheinlichkeiten für Zustände in sich:

1. Wahrscheinlichkeit abzusterben
2. Wahrscheinlichkeit einen Zeitabschnitt auszusetzen
3. Wahrscheinlichkeit sich zu verzweigen

Oliver Deussen                                          Pflanzenmodellierung 21
Computergraphik II

                          Wachstumsvorgang nach deReffye

verwendete Parameter:

• Alter des Baums,
• Wachstumsgeschwindigkeiten der Äste verschiedener Ordnungen,
• Anzahl möglicher Knospen pro Knoten in Abhängigkeit der Ordnung,
• Wahrscheinlichkeiten für Absterben, Aussetzen, Verzweigen

Oliver Deussen                                             Pflanzenmodellierung 22
Computergraphik II

→ Der Algorithmus procedure budtree()
begin
   for jedes Zeitsignal do
   begin
       for jede noch lebende Knsope do
       begin
           if Knospe stirbt nicht und setzt nicht aus
           then
           begin
               generiere Internodium
               generiere apikales Blatt
           end
           for jede in Frage kommende Knospe do
           begin

Oliver Deussen                                          Pflanzenmodellierung 23
Computergraphik II

            if Knospe verzweigt
            then
                bilde Vezweigung
         end
      end
   end
end

Oliver Deussen                     Pflanzenmodellierung 24
Computergraphik II

Ergebnissgeometrien nach deReffye et al.:

                     Ergebnisse botanisch motivierter Wachstumsmodelle nach deReffye

Oliver Deussen                                                                         Pflanzenmodellierung 25
Computergraphik II

Eine Kombinatorische Methode (Vienot et al.)
→ Strahleranalyse weißt jedem Knoten/jeder Kante eine Zahl zu
→ Erweiterung zu Biordnung: Zahlenpaar (c, d) pro Knoten
      ist k die Horton-Strahler-Ordnung des Vaters und i und j die
      der Söhne, so ist:

                      c = k, d = i   wenn j = k und i < k
                     c=d=k−1         sonst (i = j = k − 1)

→ Biordnung beschreibt Charakteristikum des Knotens im Sinne der
  Ordnungsverteilung der Söhne

Oliver Deussen                                           Pflanzenmodellierung 26
Computergraphik II

→ für alle Knoten mit Strahler- Zahl wird Wahrscheinlichkeit für
  bestimmte Biordnung festgelegt
→ Werte werden in Verzweigungsmatrix P gespeichert:
      →     ak Anzahl Knoten mit Horton-Strahler-Ordnung k         k≥2
      →     bk,i Anzahl Knoten mit Biordnung (k, i)              1≤i
Computergraphik II

                                                                          
                                                 0    1
                                                 0    0    1
                                                                          
                                Pperf ekt = 
                                                                          
                                                 0    0    0    1
                                                                           
                                                                          
                                                 ..   ..   ..   .. . . .

                          Matrix für einen perfekt verzweigten binären Baum
                                                                                   
                                      1/2   1/2
                                 
                                     1/2   1/4 1/4                                 
                                                                                    
                     Pzuf all   =    1/2   1/4 1/8 1/8
                                                                                   
                                                                                    
                                      1/2   1/4 1/8 1/16 1/16
                                                                                   
                                                                                   
                                       ..    ..  ..   ..   .. ...

                            Matrix für zufällige Binärbäume mit n Knoten

Oliver Deussen                                                                 Pflanzenmodellierung 28
Computergraphik II

→ topologisch selbstähnliche Verzweigungsstrukturen besitzen gleiche
  Zeilen, die um jeweils eine Spalte nach rechts verschoben sind

                                                               
                            1 − 1/p   1/p
                               0    1 − 1/p   1/p
                                                               
               PF arn = 
                                                               
                               0       0    1 − 1/p 1/p
                                                                
                                                               
                               ..      ..      ..    .. . . .

                                  Matrix für Farne
→ zur Herstellung eines Baumes wird aus gegebener dreiecksförmiger
  (s − 1) × s Verzweigungsmatrix R und gegebenen
  S ≤ s zufällig ein Binärbaum Tn mit Horton-Strahler
  Zahl S erzeugt, dessen Verzweigungmatrix ähnlich R ist

Oliver Deussen                                          Pflanzenmodellierung 29
Computergraphik II

procedure kombitree()
begin
   erzeuge T1
   n=1
   repeat
       Wähle terminale Kante aus Tn mit Horton-Strahler-Ordnung k > 1
       Verzweige von dieser Kante und gebe den Kindkanten die
           Ordnungen k und i entsprechend der
           Wahrscheinlichkeiten für die Biordnung der
           Kanten dieser Ordnung in der Verzweigungsmatrix
       Tn+1 = Tn
   until alle terminalen Kanten von Tn+1 haben
       Horton-Strahler-Ordnung k = 1
end

Oliver Deussen                                       Pflanzenmodellierung 30
Computergraphik II

Ergebnisgeometrien nach Vienot et al.:

                       Kombinatorischer Aufbau von Bäumen nach Vienot

Oliver Deussen                                                           Pflanzenmodellierung 31
Computergraphik II

Bäume aus Strängen
→ Idee: Leonardo da Vinci
→ Baum wird durch Stränge von der Wurzel bis zu jeweils einem Blatt
  definiert
→ in einer Gabelung werden die Stränge aufgeteilt und laufen
  als Kinder weiter
→ dabei ist die Summe des Querschnitts des Vaters einer Astgabelung
  gleich die Summe der Querschnitte der Söhne
→ Anzahl der Stränge bestimmt Dicke und Länge der Äste, Anzahl
  der Blätter und den Verzweigungswinkel

Oliver Deussen                                        Pflanzenmodellierung 32
Computergraphik II

→ gabelt sich ein Ast mit S0 Strängen, wobei das Verhältniss
  der Strangzahlen mit PG,W in Abhängigkeit von der
  Gravelius- und Weibull- Ordnungszahl des Astes gegeben ist,
  so gilt für die Anzahl der Stränge S1, S2 in den Kindern:

                     S1 = 1 + PG,W (S0 − 2)
                     S2 = 1 + (1 − PG,W )(S0 − 2)
                     S0 = S1 + S2 .

                            Modell aus Strängen nach Holton

Oliver Deussen                                                 Pflanzenmodellierung 33
Computergraphik II

                                       √
→ Druchmesser der Äste:   d i = T Si
  mit T eine Konstante daraus folgt:

                              d20 = d21 + d22.
→ Länge der Zweige wird aus den Strängen berechnet, wobei Verhältniss
  der Wurzelfunktionen der Strangzahlen verwendet wird:

                                 S2
                         a1    =    AG,W
                                 S0
                         a2    = AG,W − a1

→ charakteristische Längen Li und und aktive im Modell erscheinende
  Längen li sind vom Benutzer vorgegebene Parameter

Oliver Deussen                                         Pflanzenmodellierung 34
Computergraphik II

Bäume nach Holton:

                           Beispielbäume nach Holton

→ Tannen aus jeweils 2500 Strängen

Oliver Deussen                                          Pflanzenmodellierung 35
Computergraphik II

Aproximatives Modellieren der Pflanzengestelt
→ Ziel ist es aproximative Lösungen für Bäume im Hintergrund zu finden
→ Baumprozedur benötigt 50 Parameter, wie Form des Baumes, Größe
  des untern Teils ohne Äste, Anzahl Verzweigungebenen und Form
  des Stammfußes (=generelle Parameter)

                           Beispielpflanze nach Weber und Penn

Oliver Deussen                                                   Pflanzenmodellierung 36
Computergraphik II

Wachstum mit Voxeln
→ Betrachtung von Interaktion von Pflanzen mit ihrer Umgebeung
  und ihr effiziente Erzeugung
→ Zerlegung der Szene in Voxel und Spezifizierung der Voxel, in denen
  die Winde wachsen kann
→ ein parametrisierbarer probabilistischer Algorithmus läßt die Pflanze
  von manuelle spezifizierten Saatpunkt aus wachsen
→ über Suchstrategien werden Internodien in den möglichen Voxeln
  platziert (dabei Betrachtung des direkt einfallenden Sonnenlichts und
  diffusen Beleuchtungen

Oliver Deussen                                          Pflanzenmodellierung 37
Computergraphik II

Voxelpflanzen nach Green:

Oliver Deussen              Pflanzenmodellierung 38
Computergraphik II

                     Voxelmodell nach Green

Oliver Deussen                                Pflanzenmodellierung 39
Computergraphik II

Regelbasierte Modellierung von Planzen
→ Verwendung einer formalen Regelbasis um einen Anfangszustand in
  einen Endzstand zu verwandeln
→ ermöglicht eine äußerst kompakte Beschreibung für komplexe
  Endzustände
→ Daten müssen in einem zeitaufwendigen Prozess aus
  Regelmenge generiert werden
→ in einem Textersetzungssystem werden Zeichen in einem Text durch
  andere ersetzt mit Hilfe von Regeln
→ zur Herstellung der Geometrien werden die Zeichen des Textes
  graphisch interpretiert

Oliver Deussen                                         Pflanzenmodellierung 40
Computergraphik II

Ersetzungssysteme
klassisches Beispiel: Koch-Kurve
→ jede Ersetzung geschieht graphisch, d.h. jede Kante wird durch
  eine Folge von Kanten ersetzt
→ Ersetzungsvorgang wird durch den Generator realisiert
→ sukzessive Anwenden des Genarators auf die Kanten des initialen
  Objektes (Initiator) ergibt eine Komplexe Figur

Oliver Deussen                                       Pflanzenmodellierung 41
Computergraphik II

mögliche Ersetzungssysteme:

• Graphen
  Kanten oder Knoten werden durch Teilgraphen ersetzt
• Felder
  Werte oder Wertekombinationen in einem Felde werden durch andere
  Werte ersetzt
• Texte
  Es werden Zeichen in einem Text ersetzt

Oliver Deussen                                      Pflanzenmodellierung 42
Computergraphik II

Lindenmayer- Systeme
→ Lindenmayer- System (L- System) ist ein Textersetzungssystem
→ gegeben durch eine formale Grammatik G = (V, ω, P ) mit:
     V ...Alphabet
     ω... ein nichtleeres Wort (Axiom)
     P ... eine Menge von Produktionen
→ die Menge V ∗ ist die Menge der Worte über V
  die Menge V + ist die Menge aller nichtleeren Worte
→ eine Produktion p ∈ P wird beschrieben durch:
                    φ ::= χ    mit φ, χ ∈ V +
→ in einem kontextfreien L- System (OL-System) hat φ die Länge
  Eins, d.h. die Regel ist immer anwendbar, wenn a = φ auftaucht

Oliver Deussen                                          Pflanzenmodellierung 43
Computergraphik II

Kontextsensitive L- Systeme
→ in einem kontextsensitiven L- System wird die Anwendbarkeit einer
  Regel vom Umfeld des Buchstabens abhängig gemacht:
              φ = τ aυ      mit τ, υ ∈ V + und a ∈ V
→ Hat τ die Länge k und υ die Länge l, so nennt man
  dies ein (k,l)-System

Deterministische L- System
→ in deterministischem L- System (DOL-Systeme) existiert zu einem
  φ höchstens eine Regel mit φ als linke Seite

Oliver Deussen                                          Pflanzenmodellierung 44
Computergraphik II

Stochastische L- Systeme
→ stochastische L- Systeme werden beschrieben durch formale
  Grammatik:
                         G = (V, ω, P, π)
→ in Ergänzung zum deterministischem L- System wird der Produktions-
  Menge P eine Menge von Wahrscheinlichkeiten π : P → (0, 1]
  zugeordnet

Oliver Deussen                                      Pflanzenmodellierung 45
Computergraphik II

→ in L- Systemen erfolgt die Ersetzung parallel
→ pro Schritt werden alle möglichen Ersetzungen vorgenommen
→ daraus entstehen neue Mächtigkeiten in Bezug auf die
  Chomsky-Sprachen

                                                        IL-Systeme

                                                  Endliche Sprachen

                                             Reguläre Sprachen

                                        (k,l)-Systeme
                                   Kontextfreie Sprachen

                              Kontextsensitive Sprachen

                         Aufzählbare Sprachen

                     Mächtigkeit von 0L- Systemen und (kl)-Systemen im Vergleich zu Chomsky-Sprachen

Oliver Deussen                                                                                   Pflanzenmodellierung 46
Computergraphik II

Ein Beispiel:
      Alphabet: V = {f, F, +, −}
      Axiom: w = F − −F − −F
      Regelmenge: P = {F ::= F + F − −F + F }
Entstehende Ableitungsfolge:
F − −F − −F
F + F − −F + F − −F + F − −F + F − −F + F − −F + F
F + F − −F + F + F + F − −F + F − −F + F − −F + F + F +
F − −F + F − −F + F − −F + F + F + F − −F + F − −F +
F −−F +F +F +F −−F +F −−F +F −−F +F +F +F −−F +F

→ Text muß im letzen Schritt graphisch interpretiert werden

Oliver Deussen                                        Pflanzenmodellierung 47
Computergraphik II

Graphische Interpretation
→ häufig verwendet: Turtle-Metapher (Schildkröte)
→ hierbei wird eine Turtle über die Zeichenebene oder durch
  den Raum geschoben
→ Zustand der Turtle: Vektor (x, y, α) aus Position+Winkel
  der aktuellen Bewegungsrichtung (plus weiteres)
→ ist Position und Richtung vorgegeben, so läuft Turtle immer
  geradeaus bis Richtungsänderung notwendig wird

Oliver Deussen                                        Pflanzenmodellierung 48
Computergraphik II

→ Fahrbefehle für die Turtle:
       F       Bewege Turtle um Länge d in aktueller Richtung, zeichne
               eine Linie: (x, y, α) → (x + d cos δ, y + d sin δ, α)
       f       Bewege Turtle um Länge d in aktueller Richtung, ohne zu
               zeichnen: (x, y, α) → (x + d cos δ, y + d sin δ, α)
       + Erhöhe aktuellen Winkel um δ:
         (x, y, α) → (x, y, α + δ)
       -       Erniedrige aktuellen Winkel um δ:
               (x, y, α) → (x, y, α + δ)

→ was kommt bei Beispiel heraus (Winkel: 30◦)

Oliver Deussen                                              Pflanzenmodellierung 49
Computergraphik II

Raumfüllende Kurven
→ weitere Kurven erhält man, wenn zwei zusätliche Zeichen L und R
  dem Alphabet hinzugefügt werden
→ sie signalisieren den Zustande eines Kurvenstückes und werden
  bei der Expansion getrennt behandelt
→ für Fahranweisung spielen sie jedoch keine Rolle

→ man unterscheidet Kanten- und Knotenersetzungen:

Oliver Deussen                                        Pflanzenmodellierung 50
Computergraphik II

Beispiel für Knotenersetzung:
Sei n = 3, δ = 90◦ und w = −L. Mit den Produktionen:

    L ::= LF + RF R + F L − F − LF LF L − F RF R+
    R ::= −LF LF + RF RF R + F + RF − LF L − F R

Ergebnis:

Oliver Deussen                                   Pflanzenmodellierung 51
Computergraphik II

werden die Produktionen auf folgende Weise verändert
    L ::= LF LF + RF R + F LF L − F RF − LF L − F R + F + RF − LF L −
    F RF RF R+
    R ::= −LF LF LF + RF R + F L − F − LF + RF R + F LF + RF RF −
    LF L − F RF R,

Ergebnis:

Oliver Deussen                                          Pflanzenmodellierung 52
Computergraphik II

Dreidimensionale Fahrbefehle
→ allgemeine Rotationen werden durch Rotationen bzgl. der drei
  Koordinatenachsen beschrieben
→ Differenzwinkel δ kann nun drei Winkel (α, β, γ)
  bezüglich der x-,y- und z-Achse verändern
→ Zustand der Maschine wird über das Tupel (x, y, z, M)
  beschrieben, mit M als Rotationsmatrix

zugehörige Fahrbefehle:

       F Bewege Turtle um Vektor d~ in aktueller Richtung, zeichne
         eine Linie: (x, y, z, M) → (x + (Md)~ 1, y + (Md)~ 2, z +
         (Md)~ 3, M)

Oliver Deussen                                          Pflanzenmodellierung 53
Computergraphik II

       f       Bewege Turtle um Länge d in aktueller Richtung, ohne zu
               zeichnen: (x, y, z, M) → (x + (Md)  ~ 1, y + (Md)~ 2, z +
               (Md)~ 3, M)
       + Erhöhe aktuellen Winkel γ um δ:              (x, y, z, M) →
         (x, y, z, M · Rγ (δ))
       -       Erniedrige aktuellen Winkel γ um δ: (x, y, z, M) →
               (x, y, z, M · Rγ (−δ))
       & Erhöhe aktuellen Winkel β um δ:              (x, y, z, M) →
         (x, y, z, M · Rβ (δ))
       ∧       Erniedrige aktuellen Winkel β um δ: (x, y, z, M) →
               (x, y, z, M · Rβ (−δ))
       \       Erhöhe aktuellen Winkel α um δ:        (x, y, z, M) →
               (x, y, z, M · Rα(δ))

Oliver Deussen                                               Pflanzenmodellierung 54
Computergraphik II

       / Erniedrige aktuellen Winkel α um δ: (x, y, z, M) →
         (x, y, z, M · Rα(−δ))
       |     Drehe um, hierbei verwende Matrix Rγ (180◦):
             (x, y, z, M) → (x, y, z, M · Rα(180◦))

Oliver Deussen                                              Pflanzenmodellierung 55
Computergraphik II

Verzweigungstrukturen
→ zur Erzeugung von Verzweigungsstrukturen werden verwendete
  L- System erneut erweitert
→ Abarbeitung geschieht als sogenannter Pushdown- Automat

Pushdown- Automaten
→ um bei Auswertung einen Pushdown- Automaten zu implementieren
   muss mittels eines Stacks der aktuelle Zustand des Systems
   gespeichert und auch wieder geladen werden können
          [ Speichere aktuellen Zustand (x, y, z, M) auf Stack
Zeichen:
          ] Lade Zustand (x, y, z, M) vom Stack

Oliver Deussen                                    Pflanzenmodellierung 56
Computergraphik II

                (a)               (b)                     (c)                (d)

  Abbildung           n     δ     w              P
     (a)              5   25,7◦   F     {   F ::= F[+F]F[-F]F }
     (b)              4   22,5◦   F     {   F ::= FF-[-F+F+F]+[+F-F-F] }
     (c)              7   25,7◦   X     {   X ::= F[+X][-X]FX, F ::= FF }
     (d)              5   22,5◦   X     {   X ::= F[[X]+X]+F[+FX]-X, F ::= FF }

Oliver Deussen                                                           Pflanzenmodellierung 57
Computergraphik II

Dreidimensionales Beispiel:

    A ::= [&F L!A]/////0[&F L!A]///////0[&F L!A]
    F ::= S/////F
    S ::= F L
    L ::= [000∧ ∧ {−f + f + f − | − f + f + f }]

→ geschweifte Klammern dienen zur Markierung eines grphischen Pfades
  in Form einer Folge von Punkten
→ Punke werden bei Geometrieerzeugung über Triangulierung in
  eine Fläche umgewandelt
→ ! und ’ dienen zur Vermiderung des Astdurchmessers und zur
  Steuerung der Farben

Oliver Deussen                                      Pflanzenmodellierung 58
Computergraphik II

                              Ein dreidimensionaler Busch
                     aus Prusinkiewicz, Lindenmayer: The algorithmic beauty of plants

Oliver Deussen                                                                          Pflanzenmodellierung 59
Computergraphik II

Stochastische und parametrische Systeme

→ bisher vorgestellte L- Systeme erzeugen immer dieselben
  Verzweigungsstrukturen
→ nun: zufällige Ereignisse in die Strukturen einbauen
      → Variation von Parametern
      → zufällige Anwendung der Regeln (mehrer Regeln mit gleicher
        linker Seite, Auswahlmechanismus)

→ außerdem: Einführung von Parametern
→ diese werden während Expansion verändert

Oliver Deussen                                            Pflanzenmodellierung 60
Computergraphik II

       F(w)          Bewege Turtle um Vektor d(w)  ~   in aktueller Richtung,
                                                                 ~
                     zeichne eine Linie: (x, y, z, M) → (x + (Md(w))   1, y +
                         ~
                     (Md(w))              ~
                               2, z + (Md(w))3, M)

       f(w)          Bewege Turtle um Länge d in aktueller Richtung, oh-
                                                             ~
                     ne zu zeichnen: (x, y, z, M) → (x + (Md(w))   1, y +
                         ~
                     (Md(w))            ~
                               2, z + (Md(w))3, M)

       +(w) Erhöhe aktuellen Winkel γ um a:                (x, y, z, M) →
            (x, y, z, M · Rγ (w))
       &(w) Erhöhe aktuellen Winkel β um a:                (x, y, z, M) →
            (x, y, z, M · Rβ (w))
       /(w)          Erhöhe aktuellen Winkel α um a:       (x, y, z, M) →
                     (x, y, z, M · Rα(w))

Oliver Deussen                                                 Pflanzenmodellierung 61
Computergraphik II

Ein einfaches Beispiel: Binärbaum
mit n = 10, δ = 85◦, R = 1.456 und Axiom w = A(1))
Produktion:

    A(s) ::= F (s)[+A(s/R)][−A(s/R)]

Oliver Deussen                                  Pflanzenmodellierung 62
Computergraphik II

Weitere Beispiele mit parametrisierten L- Systemen:

Oliver Deussen                                        Pflanzenmodellierung 63
Computergraphik II

Phyllotaxis
→ Beschreibung der Anordnung von Blättern und Blütenblättern in
  Pflanzen
→ Beispiel: Arangements der Samen der Sonnenblume
→ mathematische Beschreibung: goldener Schnitt

                                      √
                           ri = c ·       i   αi = i · φ                          (1)
wobei c eine positive Konstante ist und φ genau den Wert von 137.5◦
einnehmen muß. Es gilt
                           ◦
                                                           √
                        360                                    5+1
                     φ = 2 = 137.5077..◦      mit   τ=             .              (2)
                         τ                                      2

Oliver Deussen                                                  Pflanzenmodellierung 64
Computergraphik II

                                                                                                                                                                                            21er Nachbarschaft
                                                                                                                                 9
                                                                                       1          22                                           

                                                                                                                                                   30
                                                                                                               43                                                                17
                                                                                 35        56                                     64                                51
               Divergenz φ                                      14                                        77                                                                                           4
                                                                                                                                                   85                                      38
                                                                                                                    98                                                           72
                                                               48            69         90
                                                                                                  111                             119                           106                               59
                                                                                                                                                                                                            

                                                                                                                                                                                                                25
                                                   27                                                      132                                                                         93
                                                                          03        124 145
                                                                                                                                               140                   12
                                                               82        1                                              153
                                     6
                                                                                                                                                                        7
                                                                                                                                                                                           11                                        34er Nachbarschaft

                                              61

                                                                                                                                                                                                                     46
                                                                                                        166

                                                                                                                                                                                                       80
                                                                                                                                                        161                                   4

                                                                                                                                                                                                                           12
                                                                           7                                                         174                                         14
                                                                 6       13 158
                                     40
                                                                                                                                                                                   8
                                                               11                              179             187
                                                                                                                                                                18                                                                                           φ = 137.7o

                                                                                                                                                                                                       10
                                                 95
                                                                                                                                          195

                                                                                                                                                                                            13

                                                                                                                                                                                                                      67
                                                                                                                                                                   2             16
                           19

                                                                                                      200

                                                                                                                                                                                                          1

                                                                                                                                                                                                                            33
                                                                               71

                                                                                                                                                                                                5
                                       74

                                                                                                                            208                                                       9
                                                                                                                        

                                                                 0
                                                                             1             2
                                                                                        19
                                                               15
                                                        9                                                                                  216 203

                                                                                                                                                        12
                                                                                                                                                                

                                                                                                                                                        15
                                                    12
                                                                                                  3
                                53

                                                                                                                                                         88
                                                                                                21             221
                                           108

                                                                                                                                                          2
                                                                                                                                                           19

                                                                                                                                                           6

                                                                                                                                                            54
                                                                         4
                                                                                                                                 229
                                                                                                                             

                                                                                      5

                                                                                                                                                              0
                                                               3
                                                                      18

                                                                                  20

                                                                                                                                                               1
                                                          16
                                                                                                                                                                                                                                 

                                                                                                                                                                1

                                                                                                                                                                20
                                                                                                  6
                          32

                                                                                                                                                        
                                     87

                                                                                                          234

                                                                                                                                                                 1
                                                                                                                                                                 43
                                                                                               22
                                                   142

                                                                                                                                                                  7
                                                                                                                                                                         

                                                                                                                                                    22

                                                                                                                                                                   21

                                                                                                                                                                   09
                                                                                                                                          23

                                                                                                                                                                    7
                                                                                                                                      

                                                                                                                                                      4
                                                                                     8
                                                                                                                                              7

                                                                                                                                                                      7
                                                                      197
                                                                                                                   242

                                                                                                                                                                      1
                                           121

                                                                                                                                                                       198

                                                                                                                                                                       164
                                                                                  21

                                                                                                                                                                        5
                               66

                                                             176

                                                                                                                                                                         130
                     11

                                                                                                                                                            

                                                                                                    9

                                                                                                                                                            232

                                                                                                                                                                          41
                                                                                                23
                                                                                                                   47
                                                                                        231
                                                   155

                                                                                                                                                                             

                                                                                                                                                                           2
                                                                                                                                     24
                                                                          210

                                                                                                                                                                            185
                                     100

                                                                                                                                                                            96
                                                                                                               2

                                                                                                                                                                             19
                                                                                                                                          5
                          45

                                                                                                                                                                              151
                                                                189

                                                                                                                                                                              7
                                                                                                                                                    240
                                                                                                    244

                                                                                                                                                                               206
                                             134

                                                                                                                                                                                62
                                                                                  223

                                                                                                                                     248
                                                                                                             9

                                                                                                                                                                                 117
                                                                                                                                                                                 227

                                                                                                                                                                                  172
                                79

                                                                                                               24
                                                         168

                                                                                           236
                                                                      202
                      24

                                                                                                                                                                                    28
                                       113

                                                                                                                                                                                    1
                                                                                                                                                                                     23

                                                                                                                                                                                     138
                                                                                                                                          24

                                                                                                                                                                                     8
                                                                                                                                                                                      9
                                                                                                                                                                                      214 01 188
                                                                                                                   246
                                                   147

                                                                                 215

                                                                                                                                                                                       3
                                                                                                                                                                                        3
                                                                                                      1                              3
                                                               181

                                                                                                                                                                                        5
                               58

                                                                                                        24
                                                                                           28

                                                                                                                                                                                          1

                                                                                                                                                                                           104
                                                                                                                                                                                            5

                                                                                                                                                                                            49
                                                                                             2
                                     92

                                                                                                                                                                                             22

                                                                                                                                                                                             180 1
                                                                                                                            238

                                                                                                                                                                                             9
                                                                         4
                     3

                                                                                                                                                                                              2
                                              126

                                                                                                                                           23
                                                                                                        233
                                                          160

                                                                                                                                                                                               2
                                                                         19

                                                                                                                                                                                                125
                                                                                                                                          0
                                                                                    7
                           37

                                                                                                  0
                                                                                      20

                                                                                                                                                                                                 1
                                                                                                                                                                                                  7
                                                                                               22
                                                                                                                                                                                                                                                             φ = 137.5o
                                                                                                                                                            20

                                                                                                                                                                                                   1

                                                                                                                                                                                                   5
                                                                                                                                                                                                    0
                                     71

                                                                                                                   225
                                                                         3

                                                                                                                                                                                                     46
                                                                                                                                     217                      9
                                             5

                                                         9

                                                                      17

                                                                                                                                                                                                      67
                                             10

                                                         13

                                                                                                                                                                                                       91
                                                                                       6                212

                                                                                                                                                                                                        3
                                                                                    18           9
                           16

                                                                                               19                                                  196

                                                                                                                                                                                                          11

                                                                                                                                                                                                          6
                                                                                                                            204
                                                                       2
                                     50

                                                                                                                                                                    15 175

                                                                                                                                                                                                            13
                                                                                                                                                                                                             2
                                                                     15
                                                            8
                                             84

                                                                                                                                                                                                              57
                                                         11

                                                                                                           191

                                                                                                                                                                                                               3
                                                                                      5                                              183                              4
                                                                                    16          178

                                                                                                                                                                                                                 2
                                                                                                                                                                                                                   78
                                                                           1                                                                        162
                                                                         13                                         170                                                                           99
                                      29

                                                                                                                                                                    14                12

                                                                                                                                                                                                                      23
                                                               97
                                                 63

                                                                                        144           157                        149
                                                                                                                                                                       1                0
                                                                                                                                                                                                                44
                                                                               0
                                                                             11                              136                                   107 128                                        65
                                                                    76                       123                                                                                      86
                                            8

                                                        42                                                              115                                                                                10
                                                                                      89             102                                   94
                                                                         55                                                                                     73                52         31
                                                               21                            68                81
                                                                                    34                                            60
                                                                         0                            47                                            39                       18
                                                                                               13                   26
                                                                                                                                           5

                                                                                                                                                                                                                                                             φ = 137.2o

Oliver Deussen                                                                                                                                                                                                                                            Pflanzenmodellierung 65
Computergraphik II

→ erstaunlich: Nachbarschaften entsprechen Fibonaccizahlen
      f = 0 1 1 2 3 5 8 13 21 34 55 89 144 233 377 610 ...

a) 8-Nachbarschaft wird zu 144-Nachbarschaft
b) Parastichien: 21 rot, 34 grün, 55 blau, 89 magenta, 144
c) Nicht-Fibonacci-Zahlen erzeugen keine reinen Parastichien (22-26)

Oliver Deussen                                          Pflanzenmodellierung 66
Computergraphik II

Phyllotaxis mit L-Systemen
                                 √
Produktion: A(n) ::= +(137.5)[f ( n) ∼ D]A(n + 1)
→ D ist L-System zur Beschreibung eines kleine Kreises
→ Kompletter Kopf einer Sonnenblume unter Zuhilfenahme von
  L-Systemen zur Erzeugung der Form von Samen S, von
  Blütenständen R und von Blütenblättern M, N, O, P
                         √
    A(n) ::= +(137.5)[f ( n)C]A(n + 1)
    C(n) : n ≤ 440    ::= ∼ S
    C(n) : 440 < n ≤ 565 ::= ∼ R
    C(n) : 565 < n ≤ 580 ::= ∼ M
    C(n) : 580 < n ≤ 595 ::= ∼ N
    C(n) : 595 < n ≤ 610 ::= ∼ O
    C(n) : 610 < n    ::= ∼ P

Oliver Deussen                                       Pflanzenmodellierung 67
Computergraphik II

                 Sonnenblume und Rosen, generiert über parametische L-Systeme
                            aus Prusinkiewicz, Lindenmayer: The algorithmic beauty of plants

Oliver Deussen                                                                                 Pflanzenmodellierung 68
Computergraphik II

Animation mit L-Systemen
→ differential L- Systems
→ L-Systemartige Produktionen beschreiben topologische Änderungen
  und Differentialgleichungen die kontinuierlichen Prozesse
→ Produktionen bestehen auf der linken Seite aus:
                   φ = τ aυ      mit τ, υ, a ∈ V
→ diese parametrischen 2L -Systeme besitzen den Parametersatz:
                       φ = τ (wτ )a(w)υ(wυ )
→ kontinuierliche Verhalten der a(w) wird durch gewöhnliche
  Differentilagleichungen beschrieben

Oliver Deussen                                       Pflanzenmodellierung 69
Computergraphik II

                          Wachstum von Lychnis coronaria
                     aus Prusinkiewicz, Lindenmayer: The algorithmic beauty of plants

Oliver Deussen                                                                          Pflanzenmodellierung 70
Computergraphik II

Interaktion von Pflanzen und Umwelt
→ umweltsensitive L-Systeme

                       Interaktion von Pflanzen mit ihrer Umwelt

Oliver Deussen                                                     Pflanzenmodellierung 71
Computergraphik II

Regelbasierte Objekterzeugung
Regelbasierte Verfahren:

• mächtig und flexibel, um Struktur herzustellen
• nicht intuitiv, Erzeugungsregeln lokal

Prozedurales Modellieren:

• mächtige Methode, um Geometrie
• und auch Struktur herzustellen (CAD-Systeme)
• intuitiv, aber beschränkt

Oliver Deussen                                      Pflanzenmodellierung 72
Computergraphik II

Idee:
      Regelbasiertes und prozedurales Modellieren verbinden

Umsetzung:
      Baum repräsentiert Modell
      Knoten:
         Komponenten (Daten + Algorithmen)

      Kanten:
         Erzeugungsabhängigkeiten bzw. -regeln

Oliver Deussen                                           Pflanzenmodellierung 73
Computergraphik II

Geometrieerzeugung
Drei Arten von Komponenten:

1. Geometrieerzeugung (Primitive, Blätter, Zweige etc.)

2. Multiplikation anderer Komponenten

3. Globale Modellierung

Problem:
      Strukturinformation wird auf zwei Arten repräsentiert:
      → Multiplikatorkomponenten
      → Graphstruktur
Oliver Deussen                                             Pflanzenmodellierung 74
Computergraphik II

Daher:
      Dreistufiger Algorithmus

1. erzeuge Graph aus Komponentenprototypen
   (p-graph)

2. expandiere Graph zu Baum (i-tree)

3. erzeuge Geometrie durch Traversierung des Baums

Oliver Deussen                                       Pflanzenmodellierung 75
Computergraphik II

Komponenten

   (a)          (b)   (c)   (d)   (e)   (f)   (g)   (h)   (i)     (j)      (k)

Geometrieerzeugung: a) Simple, b) Revo, c) Horn, d) Leaf
Multiplikation: e) Tree, f) Hydra, g) Wreath, h) Phiball
Globale Modellierung: i) FFD, j) Hyperpatch, k) World

Oliver Deussen                                             Pflanzenmodellierung 76
Computergraphik II

Horn/Tree-Geometrie (inspiriert von Todd/Latham):

                     T2

                     T1

Oliver Deussen                                      Pflanzenmodellierung 77
Computergraphik II

Multiplikation:

a) Hydra, b) Wreath, c) Phiball

Oliver Deussen                    Pflanzenmodellierung 78
Computergraphik II

Ein Beispiel
A          Wurzel
B          Geometrieerzeugende Komponente
C          Multiplikator (Anzahl Kopien=3)
D          Geometrieerzeugende Komponente (Rekursionstiefe=3)

Oliver Deussen                                         Pflanzenmodellierung 79
Computergraphik II

→ Multiplikatoren speichern Werte in Form von Wertebereichen

→ Jede multiplizierte Komponente erhält individuellen Wert

Oliver Deussen                                        Pflanzenmodellierung 80
Computergraphik II

Pflanzenbeispiel Eins: Sonnenblume

Oliver Deussen                       Pflanzenmodellierung 81
Computergraphik II

Pflanzenbeispiel Zwei: Rhododendron

Oliver Deussen                        Pflanzenmodellierung 82
Computergraphik II

Pflanzenbeispiel Drei: Baum

Oliver Deussen                Pflanzenmodellierung 83
Computergraphik II

Erzeugung von Pflanzenpopulationen/
Ökosystemen

• Verwendung parametrisierter Pflanzenmodelle
  → xfrog, L-Systeme
• Spezifikation von Terrain und Bodendaten
  → interaktiv oder mit Geodaten

Oliver Deussen                                  Pflanzenmodellierung 84
Computergraphik II

• Spezifikation von Pflanzenpositionen
  und -parametern
  → interaktiv, deklarativ oder simulativ
• Reduktion von Geometriedaten
  → Quantisierung, approximative Instanziierung
• effiziente Bilderzeugung
  → cache-koherentes Raytracing
  → hardware-beschleunigtes Raycasting

Oliver Deussen                                    Pflanzenmodellierung 85
Computergraphik II

Spezifikation von Pflanzenpositionen und
-parametern
Möglichkeiten:

a) Interaktive Spezifikation “Malprogramm”
b) Prozedurale Generierung anhand explizit bekannter Verteilungen
    → Interpretation von Satellitenbildern
c) Prozedurale Generierung aufgrund
   von Simulationsverfahren
    → Verdrängung, Kampf um Licht

Oliver Deussen                                        Pflanzenmodellierung 86
Computergraphik II

Interaktive Spezifikation
Anwendungen:

• Gärten, Parks, gestaltete Landschaften
• menschliche Einflußnahme

Vorgehensweise:

• male Bilder, deren Grauwerte Parameter bestimmen
    → Positionen, Größe/Prosperität, Orientierung, Auflösung
• bestimme Positionen durch Halftoning Verfahren
    → hierbei evtl. Relaxation

Oliver Deussen                                           Pflanzenmodellierung 87
Computergraphik II

• ordne Pflanzenpositionen Parameterwerte zu
    → Funktionen spezifizieren, wie Bilder interpretiert werden
• erzeuge Datei mit Pflanzenparametern

Oliver Deussen                                           Pflanzenmodellierung 88
Computergraphik II

Beispiel: Garten
Parameterbilder, Positionen:

Oliver Deussen                 Pflanzenmodellierung 89
Computergraphik II

Generiertes Bild:

Oliver Deussen       Pflanzenmodellierung 90
Computergraphik II

Grasmodell:

Oliver Deussen       Pflanzenmodellierung 91
Computergraphik II

Spezifikation durch Simulation
→ Ausgangspositionen zufällig oder interaktiv spezifiziert
→ Simulation von Selbstverdrängung (self-thinning)
  Yoda et al.:                   3
                   log(m) = − log[d] + const
                                 2
  (m: Trockengewicht, d: Pflanzendichte)

Population unter Selbstverdrängungskurve
⇒ mehr Individuen

Wachstum (Vergrößerung des Gewichts)
⇒ Selektion

Oliver Deussen                                           Pflanzenmodellierung 92
Computergraphik II

Oliver Deussen       Pflanzenmodellierung 93
Computergraphik II

→ Simulation verschiedener Pflanzenarten
Komplexeres Modell:
→ Verdrängung/Selbstverdrängung
→ Umweltfaktoren (Wasser, Erdbeschaffenheit)

Oliver Deussen                                 Pflanzenmodellierung 94
Computergraphik II

Oliver Deussen       Pflanzenmodellierung 95
Computergraphik II

Oliver Deussen       Pflanzenmodellierung 96
Computergraphik II

Oliver Deussen       Pflanzenmodellierung 97
Computergraphik II

Oliver Deussen       Pflanzenmodellierung 98
Sie können auch lesen