MATLAB: Which function can I use to implement the following image filter

digital image processingfilterfourier filteringImage Processing Toolbox

I have two questions,
(1) What kind of image filter is this? Is it a band-pass filter?
(2) Which MATLAB function can I use to implement this filter?
Reference:

Best Answer

It looks like a radial low pass filter. If Cx and Cy are not zero then it's like it's filtering (masking) out a spot in the spectrum, so that's kind of like a bandpass filter, but not really since it's a spot not a band.
First they rotate the 2D spectrum by theta for some reason. Then they create H which looks like it's supposed to be multiplied by the image spectrum in Fourier space. You can fft the image, then create the H image, then call
fftImage = fft(grayImage);
outputSpectrum = fftImage .* H;
spatialDomainImage = ifft2(outputSpectrum);
See if you can create H yourself. It's not hard.