Applicare una maschera di convoluzione a un'immagine — pixel moltiplicati e sommati con i vicini. Operazione centrale nel compositing e nella color grading.
Applichi una convoluzione quando combini ogni pixel di un'immagine con i suoi vicini immediati — un'operazione matematica fondamentale nell'elaborazione digitale delle immagini. La maschera (una piccola griglia kernel, solitamente 3x3 o 5x5) viene fatta scorrere sull'intera immagine. Per ogni posizione, ogni pixel sotto la maschera viene moltiplicato per un coefficiente, tutti i prodotti vengono sommati e il risultato viene scritto come nuovo valore del pixel. Sembra astratto, ma riconoscerai subito il risultato: sfocatura, enfasi dei bordi, riduzione del rumore — tutto convoluzione.
Nel compositing pratico hai costantemente bisogno di convoluzioni. Un nodo di sfocatura in Nuke è una convoluzione — prende ogni pixel e lo mescola con i suoi vicini in uno schema ponderato. Un filtro di nitidezza funziona allo stesso modo: pesi alti per il pixel centrale, valori negativi per i vicini. Anche il rilevamento dei bordi (Sobel, Laplaciano) è pura convoluzione — kernel speciali evidenziano i bordi di luminosità. Vedrai rapidamente: il kernel definisce tutto. Una sfocatura gaussiana è semplicemente un kernel i cui coefficienti rappresentano una distribuzione gaussiana.
Gradazione e correzione colore utilizzano le convoluzioni per effetti spaziali. Una sfocatura localizzata prima della regolazione del colore, la riduzione del grano tramite convoluzioni adattive o la separazione delle frequenze spaziali — queste sono tutte convoluzioni. Alcuni software di gradazione offrono editor di kernel personalizzati, in modo da poter creare effetti esotici. Nel flusso di lavoro Red o DaVinci Resolve, a volte applichi convoluzioni inosservate: ogni sfocatura spaziale, ogni operazione di denoising che considera i vicini dei pixel, è una convoluzione.
Nota sulle prestazioni: kernel grandi (11x11 o più grandi) possono essere costosi — esaminano 121+ pixel vicini per posizione. L'accelerazione GPU la rende più veloce. I kernel separabili (ad esempio, convoluzione orizzontale, poi verticale) fanno risparmiare un'enorme quantità di tempo di calcolo. Sul set o in post-produzione dovresti sapere: una semplice sfocatura gaussiana è praticamente gratuita. Un kernel personalizzato con gestione dei bordi (estendi, ripeti, specchia?) deve essere impostato consapevolmente, altrimenti si creano artefatti sui bordi dell'immagine. La convoluzione non è nuova — proviene dall'elaborazione dei segnali — ma nella moderna pipeline VFX è onnipresente e spesso invisibile.