f * g
=
F-1{
F(f)
·
F(g)
}
Convolution in time ↔ multiplication in frequency
f(x) — signal
time domain
|F(f)| — signal spectrum
FFT →
g(x) — kernel
time domain
|F(g)| — kernel spectrum
FFT →
(f * g)(x) — direct convolution
time domain
(f*g)(t) = Σk f(k) · g(t - k)
F(f)·F(g) & F-1{...}
|F(f)·F(g)|
IFFT result
F-1{ F(f) · F(g) } == f * g