Function File: fftconv2 (a, b)
Function File: fftconv2 (v1, v2, a)
Function File: fftconv2 (…, shape)

Convolve 2 dimensional signals using the FFT.

This method is faster but less accurate than conv2 for large a and b. It also uses more memory. A small complex component will be introduced even if both a and b are real.

See also: conv2, fftconv, fft, ifft.

Demonstration 1

The following code

 ## Draw a cross
 z = zeros (101, 101);
 z(50, :) = 1;
 z(:, 50) = 1;
 subplot (1, 3, 1)
 imshow (z);
 title ("Original thin cross")

 ## Draw a sinc blob
 b = getheight (strel ("ball", 10, 1));
 subplot (1, 3, 2)
 imshow (b);
 title ("Sync blob")

 ## Convolve the cross with the blob
 fc = real (fftconv2 (z, b, "same"));
 subplot (1, 3, 3)
 imshow (fc, [min(fc(:)) max(fc(:))])
 title ("Convolution in the frequency domain")

Produces the following figure

Figure 1

Package: image