Entdecken Sie Gaussian Splatting für die fotorealistische Rekonstruktion von 3D-Szenen. Erfahren Sie, wie es Echtzeit-Rendering ermöglicht und sich in Ultralytics für Vision integrieren lässt.
Gaussian Splatting ist eine moderne Rasterisierungstechnik, die in der Computergrafik und im Bereich Computer Vision verwendet wird, um fotorealistische 3D-Szenen aus einer Reihe von 2D-Bildern zu rekonstruieren. Im Gegensatz zur traditionellen 3D-Modellierung, die auf Polygonnetzen basiert, oder neuen KI-Entwicklungen wie Neural Radiance Fields (NeRF), die neuronale Netze zur Annäherung an eine Szene verwenden, stellt Gaussian Splatting eine Szene als eine Sammlung von Millionen von 3D- Gauß-Verteilungen (Ellipsoiden) dar. Diese Methode ermöglicht Echtzeit-Rendering mit hohen Bildraten (oft über 100 FPS) bei gleichbleibender außergewöhnlicher visueller Genauigkeit und löst damit einen großen Leistungsengpass, der bei früheren Verfahren zur Bildsynthese auftrat .
Die Kernidee besteht darin, den 3D-Raum explizit statt implizit darzustellen. In einem typischen Arbeitsablauf beginnt der Prozess mit einer spärlichen Punktwolke, die aus einer Reihe von Fotos mithilfe einer Technik namens Structure from Motion (SfM) generiert wird. Jeder Punkt in dieser Wolke wird dann als 3D-Gaußsche Verteilung initialisiert.
Während des Trainingsprozesses optimiert das System mehrere Parameter für jede Gauß-Verteilung:
Der Begriff „Splatting“ bezieht sich auf den Rasterisierungsprozess , bei dem diese 3D-Gaußschen Verteilungen auf die 2D-Kameraplan projiziert – oder „gesplattet“ – werden, um ein Bild zu erzeugen. Diese Projektion ist vollständig differenzierbar, was bedeutet, dass Standard-Algorithmen zur Gradientenabstiegsmethode verwendet werden können, um die Differenz zwischen dem gerenderten Bild und dem ursprünglichen Referenzfoto zu minimieren.
Obwohl beide Techniken darauf abzielen, neue Ansichten einer Szene zu generieren, unterscheiden sie sich grundlegend in ihrer Architektur und Leistung. NeRF (Neural Radiance Fields) codiert eine Szene innerhalb der Gewichte eines neuronalen Netzwerks. Das Rendern eines NeRF erfordert für jedes einzelne Bild Millionen von Abfragen dieses Netzwerks (Ray Marching), was rechenintensiv und langsam ist.
Im Gegensatz dazu verwendet Gaussian Splatting eine explizite Darstellung (die Liste der Gaußschen Verteilungen). Dadurch kann es eine effiziente kachelbasierte Rasterisierung nutzen, ähnlich wie bei der Grafikwiedergabe in Videospielen. Folglich ist Gaussian Splatting deutlich schneller zu trainieren und zu rendern als NeRFs, was es für Verbraucheranwendungen und Echtzeit-Inferenzen besser geeignet macht.
Die Geschwindigkeit und Qualität von Gaussian Splatting haben in verschiedenen Branchen neue Möglichkeiten eröffnet:
Damit Gaussian Splatting effektiv funktioniert, müssen die Trainingsbilder in der Regel statisch sein. Sich bewegende Objekte (wie Fußgänger oder Autos) in den Quellfotos können Artefakte verursachen, die als „Floater” bezeichnet werden. Fortschrittliche Pipelines verwenden Instanzsegmentierung, um diese dynamischen Elemente automatisch zu maskieren, bevor das Splat-Modell trainiert wird.
Ultralytics können Teams Datensätze verwalten und Modelle trainieren , die in dieser Vorverarbeitungsphase hilfreich sein können. Hier wird gezeigt, wie man ein Segmentierungsmodell verwenden kann, um Masken für einen Datensatz zu erstellen, der für die 3D-Rekonstruktion vorgesehen ist:
from ultralytics import YOLO
# Load the YOLO26 segmentation model
model = YOLO("yolo26n-seg.pt")
# Run inference on an image from the scan dataset
# Class 0 is 'person' in COCO - we mask them out to keep the scene static
results = model.predict("scan_frame_001.jpg", classes=[0])
# Save the generated mask to exclude the person from the 3D reconstruction
for result in results:
result.save_masks("scan_frame_001_mask.png")
Gaussian Splatting steht für einen Wandel in der Computer Vision hin zu hybriden Methoden, die die Lernfähigkeit des Deep Learning mit der Effizienz klassischer Computergrafik verbinden. Diese Technik entwickelt sich rasant weiter, wobei Forscher nach Möglichkeiten suchen, die Dateigrößen (die sehr groß sein können) zu komprimieren und sie mit generativer KI zu integrieren, um aus Textvorgaben 3D-Assets zu erstellen. Da sich Hardware-Beschleuniger wie GPUs ständig verbessern, wird Gaussian Splatting wahrscheinlich zum Standard für die Erfassung und Darstellung der realen Welt in digitaler Form werden.