La convoluzione è un'operazione matematica su due funzioni (tipicamente rappresentate come f e g) che produce una terza funzione, esprimendo quanto la forma di una funzione viene modificata dall'altra. Può essere interpretata come una media pesata di una funzione, dove la pesatura è data dall'altra funzione. Ha applicazioni in molti campi, tra cui:
La convoluzione di due funzioni f(t) e g(t) è definita come:
(Integrale):
(f * g)(t) = ∫ f(τ) g(t - τ) dτ
dove l'integrale è calcolato su tutti i valori di τ.
(Discreto):
(f * g)[n] = Σ f[k] g[n - k]
dove la sommatoria è calcolata su tutti i valori di k.
La convoluzione può essere implementata direttamente utilizzando la definizione matematica (sommatoria o integrale). Tuttavia, per segnali o immagini di grandi dimensioni, questa implementazione può essere computazionalmente costosa. Esistono metodi più efficienti, come l'utilizzo della <a href="https://it.wikiwhat.page/kavramlar/Trasformata%20di%20Fourier">Trasformata di Fourier</a> e la sua proprietà di trasformare la convoluzione in una moltiplicazione nel dominio della frequenza.
La convoluzione può essere estesa a funzioni di più variabili. Ad esempio, in <a href="https://it.wikiwhat.page/kavramlar/Elaborazione%20delle%20Immagini">elaborazione delle immagini</a>, la convoluzione viene eseguita su matrici bidimensionali che rappresentano le immagini. In questo caso, il kernel di convoluzione (una piccola matrice) viene fatto scorrere sull'immagine, e per ogni posizione, viene calcolata la somma dei prodotti tra i valori del kernel e i valori dell'immagine sottostante.
Siano f = [1, 2, 3] e g = [0, 1, 0]. Calcoliamo la convoluzione f * g:
(f * g)[0] = f[0]g[0] + f[1]g[-1] + f[2]g[-2] = 1*0 + 2*0 + 3*0 = 0 (f * g)[1] = f[0]g[1] + f[1]g[0] + f[2]g[-1] = 1*1 + 2*0 + 3*0 = 1 (f * g)[2] = f[0]g[2] + f[1]g[1] + f[2]g[0] = 1*0 + 2*1 + 3*0 = 2 (f * g)[3] = f[0]g[3] + f[1]g[2] + f[2]g[1] = 1*0 + 2*0 + 3*1 = 3 (f * g)[4] = f[0]g[4] + f[1]g[3] + f[2]g[2] = 1*0 + 2*0 + 3*0 = 0
Quindi, f * g = [0, 1, 2, 3, 0].
In molte applicazioni, come l'elaborazione delle immagini, la funzione g (o f) è chiamata <a href="https://it.wikiwhat.page/kavramlar/Kernel%20di%20Convoluzione">Kernel di Convoluzione</a> o filtro. La scelta del kernel determina l'effetto della convoluzione. Ad esempio, un kernel gaussiano produce un effetto di sfocatura, mentre un kernel di Sobel può essere utilizzato per rilevare bordi.
La convoluzione è uno strumento potente e versatile che trova applicazioni in una vasta gamma di discipline. La comprensione dei suoi principi fondamentali è essenziale per chiunque lavori con segnali, immagini o altre forme di dati.
Ne Demek sitesindeki bilgiler kullanıcılar vasıtasıyla veya otomatik oluşturulmuştur. Buradaki bilgilerin doğru olduğu garanti edilmez. Düzeltilmesi gereken bilgi olduğunu düşünüyorsanız bizimle iletişime geçiniz. Her türlü görüş, destek ve önerileriniz için iletisim@nedemek.page