Lezione 03
Il forward pass: compositing volumetrico
Come milioni di blob diventano un pixel — e perché è la stessa equazione di NeRF.
Per renderizzare, il 3DGS proietta ogni gaussiana sullo schermo (la matematica EWA della lezione 02, riusata come layer), le ordina per profondità e le compone front-to-back. Il colore di un pixel è:
$$C \;=\; \sum_{i} c_i\,\alpha_i' \prod_{j<i} \big(1-\alpha_j'\big), \qquad \alpha_i' = \alpha_i\,\exp\!\Big(-\tfrac12 (\mathbf x-\boldsymbol\mu_i')^{\!\top} \Sigma'^{-1} (\mathbf x-\boldsymbol\mu_i')\Big)$$Il prodotto \(\prod_{j<i}(1-\alpha_j')\) è la trasmittanza \(T_i\): quanta luce «sopravvive» a tutto ciò che sta davanti. Ogni gaussiana contribuisce con peso \(w_i = \alpha_i' \, T_i\): tanto se è opaca e non è occlusa, poco altrimenti.
Perché conta per il training
Ogni operazione qui — footprint gaussiano, prodotto di trasmittanze, somma pesata — è differenziabile nei parametri \((\mu_i, \Sigma_i, \alpha_i, c_i)\). È questo che permette alla lezione 04 di esistere: il gradiente della loss fotometrica può risalire dal pixel fino a ogni singola gaussiana, attraverso questa formula.