Generative Computergrafik

Fachlicher Hintergrund

Die Computergrafik gibt es seit Ende der 1960er Jahre; ihre rasanteste Entwicklung erlebte sie in den vergangenen zwanzig Jahren mit der Verbreitung von Computerspielen und Techniken der Virtuellen Realität.
Die Forschung in der Computergrafik befasst sich vorwiegend mit Algorithmen zur Darstellung von Daten hoher Dimensionalität auf zweidimensionalen "Displays". Für gewöhnlich sind dies dreidimensionale Objekte und Szenen (→"Generative Computergrafik", →"Rendering", →"Wissenschaftliche Visualisierung"), mehrdimensionale Daten (→"Informationsvisualisierung") oder zweidimensionale Bilddaten (→"Bildbearbeitung", →"Image Processing").
Die dreidimensionale Darstellung von Daten spielt aufgrund der Gewöhnung des menschlichen visuellen Systems an dreidimensionale Dinge, eine große Rolle. Anders gesagt, "am Ende" sind es meist 3D-Szenen und Objekte, die visualisiert werden, d.h. große Bereiche der Generativen Computergrafik beschäftigen sich mit der Frage: "Wie sieht eine Objekt in einer Szene bei gegebener Beleuchtung aus?" - "ein roter Würfel ist mehr als nur rot". Hinzu kommt die Frage, wie viel Zeit man sich für diese Berechnung nehmen darf - Computerspiele akzeptieren meist nur wenige Millisekunden.

In der Generativen Computergrafik geht es also um die
  1. physikalische Berechnung des globalen Lichtflusses (→"Global Illumination"),
  2. die schnelle (→"Echtzeitrendering") Bildgenerierung und
  3. alles, was zur schnellen Bilderzeugung gehört, z.B. effiziente Datenstrukturen und -verwaltung von 3D-Objekten.

Auswahl von Projekten zum Schwerpunkt Datenstrukturen

  • Korrektur von CAD Daten für VR-Applikationen
    CAD Daten, wie Sie im Maschinenbau im Entwurf entstehen, enthalten Fehler wie Verdoppelungen von Polygonen, fehlerhafte Polygon-Topologien oder schlicht fehlende Polygone einer Oberfläche. Diese Fehler stammen entweder aus fehlerhafter Software oder resultieren aus Unachtsamkeiten beim interaktiven Modellieren. Diese CAD-Daten können für gewöhnlich nicht direkt zur Echtzeitdarstellung, z.B. in VR-Anwendungen, verwendet werden. Ziel des hier beschriebenen Projektes war es diese Korrektur automatisch vornehmen zu lassen.

      

    Der modellierte Sitz eines modernen Jets, links die Originaldaten aus dem CAD-Prozess, deutlich ist eine inkonsistente Oberflächenbeschreibung am Aschenbecher zu sehen, rechts das automatisch korrigierte Modell.

    Das Projekt wurde als Forschungsauftrag der Airbus Deutschland GmbH an die FH Wedel im Umfang von einem vollfinanzierten Mitarbeiter vergeben. Die Laufzeit betrug drei Jahre. Das Projekt ist abgeschlossen.


  • Polygonalisierung von 3D-Punktwolken mittels Künstlicher Neuronaler Netze
    Das Erzeugen von 3D Modellen aus 3D Laser-Scan Daten (im Vergleich zum Modellieren per Hand) gewann in den vergangenen Jahren große Bedeutung. Zentrale Aufgabe hierbei ist es, Polygone einer Oberfläche aus Punktwolken, die aus dieser generiert wurden, zu bestimmen. D.h., aus eigentlich unstrukturiert vorliegenden Punkten soll eine Oberflächentopologie erkannt werden. Dies ist für den Menschen relativ leicht, für den Computer - für ein automatisches Verfahren - jedoch eine große Herausforderung. Die meisten hierbei eingesetzten Verfahren arbeiten nicht voll automatisch - letzte Korrekturen müssen meist per Hand durchgeführt werden.
    In diesem Projekt geht es darum, ein robustes automatisches Verfahren zu entwickeln, das dies leistet. Hierzu wird ein spezielles Künstliches Neuronales Netz verwendet.

         

    Der modellierte Sitz eines modernen Jets, links die Originaldaten aus dem CAD-Prozess, deutlich ist eine inkonsistente Oberflächenbeschreibung am Aschenbecher zu sehen, rechts das automatisch korrigierte Modell.

    Erste Ergebnisse und ein "Proof-of-Concept" konnten bereits in einer abgeschlossenen Diplomarbeit erreicht werden, woraus ein Forschungsauftrag im Rahmen des öffentlich geförderten Projektes "Digital Cabin Model Spitzencluster" resultierte. Der Umfang des Projektes beträgt ein vollfinanzierter Mitarbeiter für den Zeitraum von eineinhalb Jahren.


  • "Scaper"
    In Virtual Reality Anwendungen ist es wichtig, dem Anwender ein möglichst naturgetreues Bild seiner Umgebung zu präsentieren. Viele Elemente der realen Welt besitzen jedoch eine hohe Komplexität bzw. Granularität, die jedoch einfach - nämlich nach fraktalen Prinzipien - aufgebaut ist. Solche Topologien können relativ leicht algorithmisch bzw. prozedural beschrieben werden, die Komplexität bleibt jedoch beim schlussendlichen Rendern bestehen, wenn man hier nicht eine geschickte Selektion der Szene wählt.
    In diesem Projekt wurde die darzustellenden Geometrie nicht generiert und gespeichert, sie wird vielmehr on-the-fly, während des Rendering nach fraktalen Prinzipien generiert. Das hat den Vorteil, dass je nach Anforderung, wie z.B. eine große Nähe zu einem bestimmten Teil der Szene, die betreffenden Objekte erst nach Bedarf generiert werden. So ist es möglich eine Szene mit beliebiger Auflösung zur Verfügung zu haben, ohne diese tatsächlich im Speicher führen zu müssen - so ist überhaupt erst möglich, Szenen beliebiger Auflösung zu verwalten.
    Das Projekt kann beliebig auf typische, fraktal-artige Strukturen angewandt werden (Städte, Pflanzen, Berge, Wolken, etc.). Diese werden zufällig erzeugt und liefern den Anschein hochkomplexer Strukturen.

         

    Fraktale Strukturen der Natur in Echtzeit generiert und gerendert. Es werden hierbei keine gespeicherten Szenen verwendet.

    Diese Arbeit wurde als "internes Forschungsprojekt" vergeben und in Form eine Masterarbeit erfolgreich abgeschlossen. Es folgten darauf basierend mehrere Praktika, deren Ergebnisse in die VR-Umgebung der FH Wedel portiert wurde.

Auswahl eines Projektes zum Schwerpunkt Fotorealistisches Rendering

Zur optimale Darstellung dreidimensionaler Szenen "reicht es", den globalen Lichtfluss, d.h. sämtliche Photonen/Strahlen, die Lichtquellen emittieren und die an Objekten einer Szene reflektiert werden, zu simulieren. Man stelle sich dazu 1000 Objekte mit jeweils 1000 relevanten Reflexionspunkten und 1000 Lichtstrahlen einer Lichtquelle vor - was bei Weitem zu wenig für eine komplette Simulation ist - und erreicht so schon einen Aufwand von einer Milliarde Rechenoperationen, wenn man mehrfache Reflexionen des Lichtes ignoriert. D.h., primäres Ziel aller Verfahren des "Global Illumination" ist es, Approximationsverfahren für diese Simulation zu finden.
Die wesentlichen Verfahren in Kürze dargestellt,

  1. "Lokale Beleuchtungsmodelle" lassen einen Lichtstrahl pro Lichtquelle und einen Reflexionsstrahl pro Objektpunkt zu, Licht wird nie an Objekten reflektiert,
  2. "Radiosity" fasst Strahlen zu Bündeln zusammen und verallgemeinert die Reflexion an Objekten durch ausschließlich "gleichförmige Reflexionen, unabhängig vom einfallenden Licht" (ausschließlich ideal diffus reflektierende Oberflächen sind erlaubt),
  3. "Ray Tracing" reduziert die Art der Reflexionen auf spiegelartige, d.h. nur ein einziger Strahl wird von Oberflächen propagiert,
  4. "Monte Carlo Path Tracing" löst tatsächlich das gesamte physikalische Modell mit unendlich vielen Strahlen, indem es zufällig Strahlen aus dem Lichtfluss herauspickt und den Mittelwert als Lösung annimmt.
Die Rechenzeiten der genannten Verfahren variieren stark. (1) erzeugt ein Bild in wenigen Millisekunden, (2) und (3) benötigen mehrere Minuten, während (4) bis zu mehreren Tagen an einem Bild rechnet. Für Verfahren (4) existieren ein Menge von Optimierungstechniken ("Photon Mapping", "Irradiance Caching", etc.), die eine erhebliche Beschleunigung erreichen (für einfache Szenen wenige Minuten pro Bild).
Welches Verfahren man hier auswählt, hängt davon ab, welche visuellen Effekte man approximiert bzw. unterrepräsentiert darstellen und wie viel Zeit man in die Berechnung investieren möchte. (1) erzeugt schnelle Ergebnisse allerdings ohne jegliche komplexeren Lichteffekte, (2) ist geeignet, wenn man viele diffus reflektierenden Objekte visualisieren möchte (Wände, Möbel, Architektur, etc.), (2) approximiert Szenen mit vielen spekular reflektierende Materialien (Spiegel, Metall, glänzende Oberflächen, Wasser, etc.) gut, (3) verwendet man für perfekte Bilder und wenn Zeit keine Rolle spielt.


  • Photon Mapping
    "Photon Mapping" ist ein effizientes Verfahren um Monte Carlo Path Tracing (s.o.) zu beschleunigen. Hierbei werden Strahlen, die aus dem kompletten physikalischen Modell unendlich vieler Strahlen stammen gespeichert und schließlich wiederverwendet, indem neu zu berechnende Strahlen aus den gespeicherten interpoliert werden.

         

    Mit Hilfe von Photon Mapping in einigen Minute berechnete Bilder. Deutlich zu erkennen ist die Simulation des vollständigen Modell des Lichtes - Effekte wie weiche Schatten, Reflexionen von Licht an Objekten, Caustics oder Brechung werden physikalisch korrekt simuliert.

         

    Zwei Beispiele, die einen weiteren Schritt in der Simulation gehen - "Participating Media" - der Weg des Lichtes durch nicht ideal-transparente (durchscheinende) Medien wird berechnet.

    Die Realisierung von Photon Mapping Verfahren setzt im Wesentlichen geeignete Datenstrukturen voraus. Diese Arbeit wurde als "internes Forschungsprojekt" vergeben und wird von zwei Studierenden durchgeführt. Es wurde hierzu u.a. ein STAR-Report zu Beschleunigungsverfahren für Ray Tracing verfasst. Die Adaption auf Photon Mapping befindet sich in der Entwicklung.


Ansprechpartner und weitere Informationen

Eine Liste von Publikationen sind in den » Computergrafikseiten der FH Wedel  zu finden. Für Kopien der entsprechenden Arbeiten und weitere Information bitten wir Sie, Kontakt zu folgenden Personen aufzunehmen.

» Prof. Dr. C.-A. Bohn
» Martin Egge
» Lars Neumann