Sie haben vielleicht schon davon gehört, wie leistungsfähig Text-to-Image-KI-Modelle in den letzten Jahren geworden sind. Aber wussten Sie, dass dieselbe Technologie dabei helfen könnte, den Sprung von 2D zu 3D zu schaffen?
KI-generierte 3D-Modelle haben in der heutigen digitalen Landschaft einen breiten Anwendungsfall. Videospiele und Film verlassen sich auf erfahrene 3D-Künstler und Modellierungssoftware wie Blender, um 3D-Assets zu erstellen, um computergenerierte Szenen zu bevölkern.
Ist es jedoch möglich, dass die Branche maschinelles Lernen nutzen könnte, um 3D-Assets mit weniger Aufwand zu erstellen, ähnlich wie 2D-Künstler heute beginnen, Technologien wie DALL-E und zu übernehmen? Zwischendurch?
In diesem Artikel wird ein neuartiger Algorithmus untersucht, der versucht, ein effektives Text-zu-3D-Modell unter Verwendung vorhandener zu erstellen Diffusionsmodelle.
Was ist Traumfusion?
Ein Hauptproblem bei der Erstellung eines Diffusionsmodells, das 3D-Assets direkt generiert, besteht darin, dass einfach nicht viele 3D-Daten verfügbar sind. 2D-Diffusionsmodelle sind aufgrund des riesigen Datensatzes von Bildern, die im Internet zu finden sind, so leistungsfähig geworden. Das Gleiche gilt nicht für 3D-Assets.
Einige generative 3D-Techniken umgehen diesen Datenmangel, indem sie sich diese Fülle an 2D-Daten zunutze machen.
DreamFusion ist ein generatives Modell, das 3D-Modelle basierend auf einer bereitgestellten Textbeschreibung erstellen kann. Das DreamFusion-Modell verwendet ein vortrainiertes Text-zu-Bild-Diffusionsmodell, um realistische dreidimensionale Modelle aus Texteingabeaufforderungen zu generieren.
Obwohl keine 3D-Trainingsdaten vorhanden sind, hat dieser Ansatz kohärente 3D-Assets mit High-Fidelity-Erscheinungsbild und -Tiefe generiert.
Wie funktioniert es?
Der DreamFusion-Algorithmus besteht aus zwei Hauptmodellen: einem 2D-Diffusionsmodell und einem neuronale Netzwerk die 2D-Bilder in eine zusammenhängende 3D-Szene umwandeln kann.
Googles Imagen-Text-zu-Bild-Modell
Der erste Teil des Algorithmus ist das Diffusionsmodell. Dieses Modell ist für die Konvertierung von Text in Bilder verantwortlich.
Imagen, ist ein Diffusionsmodell, das eine große Stichprobe von Bildvariationen eines bestimmten Objekts erzeugen kann. In diesem Fall sollten unsere Bildvariationen alle möglichen Winkel des bereitgestellten Objekts abdecken. Wenn wir beispielsweise ein 3D-Modell eines Pferdes erstellen möchten, möchten wir 2D-Bilder des Pferdes aus allen möglichen Winkeln. Das Ziel ist es, Imagen zu verwenden, um so viele Informationen wie möglich (Farben, Reflexionen, Dichte) für das nächste Modell in unserem Algorithmus bereitzustellen.
Erstellen von 3D-Modellen mit NeRF
Als nächstes verwendet Dreamfusion ein Modell namens a Neuronales Strahlungsfeld oder NeRF, um das 3D-Modell tatsächlich aus dem generierten Bildsatz zu erstellen. NeRFs sind in der Lage, komplexe 3D-Szenen aus einem Datensatz von 2D-Bildern zu erstellen.
Versuchen wir zu verstehen, wie ein NeRF funktioniert.
Das Modell zielt darauf ab, eine kontinuierliche volumetrische Szenenfunktion zu erstellen, die aus dem bereitgestellten Datensatz von 2D-Bildern optimiert wird.
Wenn das Modell eine Funktion erstellt, was sind die Eingabe und die Ausgabe?
Die Szenenfunktion nimmt einen 3D-Standort und eine 2D-Blickrichtung als Eingabe auf. Die Funktion gibt dann eine Farbe (in Form von RGB) und eine bestimmte Volumendichte aus.
Um ein 2D-Bild aus einem bestimmten Blickwinkel zu generieren, generiert das Modell einen Satz von 3D-Punkten und lässt diese Punkte durch die Szenenfunktion laufen, um einen Satz von Farb- und Volumendichtewerten zurückzugeben. Volumen-Rendering-Techniken wandeln diese Werte dann in eine 2D-Bildausgabe um.
Gemeinsame Verwendung von NeRF- und 2D-Diffusionsmodellen
Nachdem wir nun wissen, wie ein NeRF funktioniert, sehen wir uns an, wie dieses Modell genaue 3D-Modelle aus unseren generierten Bildern generieren kann.
Für jede bereitgestellte Texteingabeaufforderung trainiert DreamFusion ein zufällig initialisiertes NeRF von Grund auf neu. Jede Iteration wählt eine zufällige Kameraposition in einem Satz von sphärischen Koordinaten. Denken Sie an das Modell, das in einer Glaskugel eingeschlossen ist. Jedes Mal, wenn wir ein neues Bild unseres 3D-Modells generieren, wählen wir einen zufälligen Punkt in unserer Kugel als Ausgangspunkt unserer Ausgabe. DreamFusion wählt auch eine zufällige Lichtposition l zum Rendern verwenden.
Sobald wir eine Kamera- und Lichtposition haben, wird ein NeRF-Modell gerendert. DreamFusion wählt auch zufällig zwischen einem farbigen Rendering, einem texturlosen Rendering und einem Rendering der Albedo ohne Schattierung.
Wir haben bereits erwähnt, dass unser Text-zu-Bild-Modell (Imagen) genügend Bilder erzeugen soll, um ein repräsentatives Beispiel zu erstellen.
Wie erreicht Dreamfusion dies?
Dreamfusion ändert einfach die Eingabeaufforderung leicht, um die beabsichtigten Winkel zu erreichen. Beispielsweise können wir große Höhenwinkel erreichen, indem wir „Overhead View“ an unsere Eingabeaufforderung anhängen. Wir können andere Blickwinkel erzeugen, indem wir Ausdrücke wie „Vorderansicht“, „Seitenansicht“ und „Rückansicht“ anhängen.
Szenen werden wiederholt aus zufälligen Kamerapositionen gerendert. Diese Renderings durchlaufen dann eine Partiturdestillationsverlustfunktion. Ein einfacher Gradientenabstiegsansatz wird dies langsam verbessern 3D-Modell bis es mit der im Text beschriebenen Szene übereinstimmt.
Sobald wir das 3D-Modell mit NeRF gerendert haben, können wir die verwenden Marching Cubes-Algorithmus um ein 3D-Netz unseres Modells auszugeben. Dieses Netz kann dann in gängige 3D-Renderer oder Modellierungssoftware importiert werden.
Einschränkungen
Obwohl das Ergebnis von DreamFusion beeindruckend genug ist, da es bestehende Text-zu-Bild-Diffusionsmodelle auf neuartige Weise verwendet, haben die Forscher einige Einschränkungen festgestellt.
Es wurde beobachtet, dass die SDS-Verlustfunktion übersättigte und überglättete Ergebnisse erzeugt. Sie können dies an der unnatürlichen Farbgebung und dem Mangel an präzisen Details in den Ausgaben beobachten.
Der DreamFusion-Algorithmus ist auch durch die Auflösung der Imagen-Modellausgabe begrenzt, die 64 x 64 Pixel beträgt. Dies führt dazu, dass den synthetisierten Modellen feinere Details fehlen.
Schließlich haben die Forscher festgestellt, dass die Synthese von 3D-Modellen aus 2D-Daten eine inhärente Herausforderung darstellt. Es gibt viele mögliche 3D-Modelle, die wir aus einer Reihe von 2D-Bildern generieren können, was die Optimierung ziemlich schwierig und sogar mehrdeutig macht.
Zusammenfassung
Die 3D-Renderings von DreamFusion funktionieren so gut, weil Text-zu-Bild-Diffusionsmodelle jedes Objekt oder jede Szene erstellen können. Es ist beeindruckend, wie ein neuronales Netzwerk eine Szene im 3D-Raum ohne 3D-Trainingsdaten verstehen kann. Ich empfehle die Lektüre der gesamtes Papier um mehr über die technischen Details des DreamFusion-Algorithmus zu erfahren.
Hoffentlich wird sich diese Technologie verbessern, um schließlich fotorealistische 3D-Modelle zu erstellen. Stellen Sie sich ganze Videospiele oder Simulationen vor, die KI-generierte Umgebungen verwenden. Es könnte die Eintrittsbarriere für Videospielentwickler senken, um immersive 3D-Welten zu erschaffen!
Welche Rolle werden Ihrer Meinung nach Text-to-3D-Modelle in Zukunft spielen?
Hinterlassen Sie uns einen Kommentar