Yolo Vision Shenzhen
Shenzhen
Iscriviti ora
Glossario

Splatting gaussiano

Scopri lo splatting gaussiano per la ricostruzione fotorealistica di scene 3D. Scopri come consente il rendering in tempo reale e si integra con Ultralytics per la visione.

Lo splatting gaussiano è una moderna tecnica di rasterizzazione utilizzata nella computer grafica e nella visione artificiale per ricostruire scene 3D fotorealistiche da una serie di immagini 2D. A differenza della modellazione 3D tradizionale che si basa su mesh poligonali, o dei recenti progressi dell'intelligenza artificiale come i Neural Radiance Fields (NeRF) che utilizzano reti neurali per approssimare una scena, lo splatting gaussiano rappresenta una scena come una raccolta di milioni di distribuzioni gaussiane 3D (ellissoidi). Questo metodo consente il rendering in tempo reale ad alti frame rate (spesso superiori a 100 FPS) mantenendo un'eccezionale fedeltà visiva, risolvendo un importante collo di bottiglia delle prestazioni riscontrato nei precedenti metodi di sintesi della vista .

Come funziona lo splatting gaussiano

L'idea centrale ruota attorno alla rappresentazione esplicita dello spazio 3D piuttosto che implicita. In un flusso di lavoro tipico, il processo inizia con una nuvola di punti sparsa generata da una serie di foto utilizzando una tecnica chiamata Structure from Motion (SfM). Ogni punto in questa nuvola viene quindi inizializzato come una gaussiana 3D.

Durante il processo di addestramento, il sistema ottimizza diversi parametri per ciascuna gaussiana:

  • Posizione: le coordinate 3D (X, Y, Z) nella scena.
  • Covarianza: determina la forma e la rotazione dell'ellissoide (ad esempio, quanto è allungato o inclinato lo "splat").
  • Opacità: quanto appare trasparente o solido il filtro gaussiano (valore alfa).
  • Colore: rappresentato utilizzando armoniche sferiche, che consentono al colore di cambiare a seconda dell'angolo di visione, catturando riflessi e effetti di luce realistici.

Il termine "splatting" si riferisce al processo di rasterizzazione in cui queste distribuzioni gaussiane 3D vengono proiettate, o "splattate", sul piano della telecamera 2D per formare un'immagine. Questa proiezione è completamente differenziabile, il che significa che è possibile utilizzare algoritmi standard di discesa del gradiente per ridurre al minimo la differenza tra l'immagine renderizzata e la foto originale di riferimento.

Splatting gaussiano vs NeRF

Sebbene entrambe le tecniche mirino a generare nuove viste di una scena, differiscono fondamentalmente nell'architettura e nelle prestazioni. NeRF (Neural Radiance Fields) codifica una scena all'interno dei pesi di una rete neurale. Il rendering di un NeRF richiede milioni di interrogazioni a questa rete per ogni singolo fotogramma (ray marching), il che è computazionalmente costoso e lento.

Al contrario, Gaussian Splatting utilizza una rappresentazione esplicita (l'elenco delle distribuzioni gaussiane). Ciò consente di utilizzare una rasterizzazione efficiente basata su tessere, simile a quella utilizzata dai videogiochi per il rendering della grafica. Di conseguenza, Gaussian Splatting è notevolmente più veloce da addestrare e renderizzare rispetto ai NeRF, rendendolo più praticabile per le applicazioni consumer e l' inferenza in tempo reale.

Applicazioni nel mondo reale

La velocità e la qualità dello splatting gaussiano hanno aperto nuove porte in vari settori industriali:

  • Turismo virtuale e settore immobiliare: i creatori possono riprendere un museo, un sito storico o una casa in vendita utilizzando un drone o uno smartphone. Gaussian Splatting consente agli utenti remoti di esplorare questi spazi nella realtà virtuale (VR) con 6 gradi di libertà (6DoF), vedendo dettagli minuziosi come i riflessi sui pavimenti in legno che la fotogrammetria tradizionale potrebbe non cogliere.
  • Simulazione automobilistica: le aziende che sviluppano veicoli autonomi necessitano di grandi quantità di dati per testare i propri algoritmi di percezione. Gaussian Splatting è in grado di ricostruire isolati urbani reali a partire dai dati dei sensori, creando un ambiente di simulazione fotorealistico. All'interno di questi ambienti, è possibile testare modelli di visione come Ultralytics per garantire che identifichino correttamente i pericoli in scenari 3D complessi.

Pre-elaborazione per lo splatting con la visione artificiale

Affinché lo splatting gaussiano funzioni in modo efficace, le immagini di addestramento devono essere statiche. Gli oggetti in movimento (come pedoni o automobili) nelle foto di origine possono causare artefatti chiamati "floater". Le pipeline avanzate utilizzano la segmentazione delle istanze per mascherare automaticamente questi elementi dinamici prima di addestrare il modello di splatting.

Ultralytics consente ai team di gestire set di dati e addestrare modelli che possono essere d'aiuto in questa fase di pre-elaborazione. Ecco come si potrebbe utilizzare un modello di segmentazione per creare maschere per un set di dati destinato alla ricostruzione 3D:

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")

Importanza nell'IA e tendenze future

Il Gaussian Splatting rappresenta un cambiamento nella visione artificiale verso metodi ibridi che combinano l'apprendibilità del Deep Learning con l' efficienza della computer grafica classica. Questa tecnica è in rapida evoluzione, con i ricercatori che esplorano modi per comprimere le dimensioni dei file (che possono essere grandi) e integrarla con l' IA generativa per creare risorse 3D da prompt di testo. Con il continuo miglioramento degli acceleratori hardware come le GPU, lo Gaussian Splatting è destinato a diventare lo standard per catturare e riprodurre il mondo reale in forma digitale.

Unitevi alla comunità di Ultralytics

Entra nel futuro dell'AI. Connettiti, collabora e cresci con innovatori globali

Iscriviti ora