3D-Modellierung - was ist das?
Um reale Objekte einem breiten Publikum zugänglich zu machen, hat sich die 3D-Modellierung auf Basis der Photogrammetrie durchgesetzt, die ohne großen Aufwand ein Objekt clonen kann. Das Ergebnis ist ein sogenannter digitaler Zwillig, der sich als 3D-Modell betrachten läßt. Zudem können vom digitalen Zwilling auf 3D-Druckern belibig viele Kopien des digitalen Zwillings erzeugt werden, wodurch oft auf die Bearbeitung oder Weitergabe des Originals verzichtet werden kann. Diese kurze Zusammenfassung beschreibt die wesentlichen Prozeßschritte für ein erfolgreiches Basisprojekt, mit dem die 3D-Modelle des Geo-Museum Zurholt erstellt wurden.
1. Fotoserie erstellen
Ausgangspunkt eines 3D-Modells ist eine Serie von überlappenden Bildern, wie sie für Panoramafotos erstellt werden. Grundsätzlich kann von beliebigen Objekten ein 3D-Modell rekonstruiert werden, beispielsweise von einer Skulptur, einem archäologischen Fundstück oder wie in unserem Beispiel einem Kalkstein, der mit Belemniten übersäht ist (siehe "Belemnitenschlachtfeld"). Das Objekt muss dazu aus möglichst allen Richtungen überlappend mit hoher Auflösung und Tiefenschärfe fotografiert werden. Hierzu wurden 113 Bilder mit einer gängigen Spiegelreflexkamera aufgenommen.
Abb.: Fotoserie mit 113 Kamerapositionen des Kalksteins "Belemnitenschlachtfeld"
2. Rendering Prozeß per Photogrammetrie-Software
2.1 Punktewolke aus Bildpunkten erstellen
Aus der Fotoserie ermittelt die Photogrammetrie-Software wie beispielsweise Meshroom alle charakteristischen Bildpunkte, die im gleichen überlappenden Bildbereich liegen. Aus den Bild- und Kameradaten (Objektiv-Brennweite, Parallaxe) rekonstruiert die Software die 3D-Koordinaten dieser Bildpunkte und erzeugt daraus eine dreidimensionale Punktewolke des Modells. Das ist die äußere 3D-Kontur, die aus einzelnen Punkten im Raum besteht, die auf der Oberfläche des Objekts liegen. Für eine gute Auflösung werden bis zu 5 Mio. Gitternetzpunkte ausgewertet. Das ist eine für das Internet viel zu große Datenmenge, um sie direkt für die Darstellung zu nutzen. Daher wurde diese Auflösung im Beispiel unten auf rund 3000 Gitternetzpunkte mit 1500 Flächen reduziert.
Abb.: Punktwolke des vereinfachten 3D-Modells (Kalkstein "Belemnitenschlachtfeld", 3000 Bildpunkte, 1500 Flächen)
2.2 Gitternetz aus Punktewolke erstellen
Im weiteren Verlauf generiert die Photogrammetrie-Software unter Verwendung der 3D-Punktewolke ein Gitternetz, durch das ein Flächenmodell aus verbundenen Dreiecken entsteht. Erst damit bekommt das rekonstruierte 3D-Modell für den menschlichen Betrachter eine "Kontur".
Abb.: Gitternetz des vereinfachten 3D-Modells (Kalkstein "Belemnitenschlachtfeld", 3000 Bildpunkte, 1500 Flächen)
2.3 Bildinfos auf die 3D-Oberfläche projezieren (Textur-Mapping)
Zum Schluss verwendet die Photogrammetrie-Software die Bildinformation aus den Fotos (Textur), um diese auf die Oberfläche des rekonstuierten 3D-Modells zu projezieren. Erst durch diesen Schritt bekommt das rekonstruierte 3D-Modell seine natürlich Farbe zurück. Bei unzureichender Auflösung wird die durch das Gitternetz angenäherte Oberfläche als Facettierung sichtbar.
Abb.: Facettierte Oberflächentextur des vereinfachten 3D-Modells (Kalkstein "Belemnitenschlachtfeld", 3000 Bildpunkte, 1500 Flächen)
3. Auflösung anpassen
Sinnvollerweise erzeugt man ein 3D-Modell mit einer hohen Auflösung. Je nach Verwendungszweck reduziert man die Auflösung des 3D-Modells in einem zusätzlichen Prozess-Schritt, beispielsweise mit des Software MeshLab, auf die gewünschte Komplexität. Für die Erläuterungen des Rendering-Prozesses wurde die Auflösung drastisch auf 3000 Gitterpunkte reduziert.
Benötigt man eine gute Darstellung des 3D-Modells, ist je nach geometrischer Komplexität eine Rekonstruktion mit mehreren Hundertausend bis mehrere Millionen Gitternetzpunkten nötig. Die entstehenden Datenmengen sind dabei umso größer, je genauer die Rekonstruktion durchgeführt wird. Für eine sinnvolle Auflösung des 3D-Modells vom "Belemnitenschlachtfeld" (unten) wurde eine moderate Auflösung verwendet (360.000 Punkte, 710.000 Flächen). Damit lassen sich die 3D-Modelle (ca. 35 MB) in einer brauchbaren Zeit auch über eine Mobilfunkverbindung laden. 
Abb.: Oberflächentextur des finalen 3D-Modells (Kalkstein "Belemnitenschlachtfeld", 360.000 Bildpunkte, 710.000 Flächen)
4. In eine WEB-Seite einbetten
Die generierten 3D-Modelle lassen sich nicht direkt im Browser darstellen, sondern müssen in ein Standardformat exportiert werden (OBJ, STL,...). Das kann beispielsweise die Software MeshLab nach der Datenreduktion gleich mit erledigen. Um schließlich das 3D-Modell auf einer Homepage anzuzeigen, kann die OpenSource-Java-Bibliothek JSC3D eingebunden werden. Diese erlaubt die Anzeige des 3D-Modells im WEB-Browser und stellt alle wichtigen Funktionen zum Zoomen und Drehen, wahlweise per Computermaus oder per Wischgesten auf Mobilgeräten bereit.
Hinweis: Ist die Downstream-Rate unzureichend, dann kann man der Rendering-Engine des Browsers zuschauen wie erst das reine 3D-Flächenmodell aufgebaut wird (Grau). Mit etwas Geduld wird dann die Textur (Farbe) nachgeladen und das Modell vollständig gerendert. Sind alle Schritte erfolgreich geschafft, dann ist Ihr 3D-Modell online.
Hier können Sie sich das komplette 3D-Modell des Belemnitenschlachtfelds anschauen.