MATLAB: Image processing using the frequency domain – duplicate image

fftfourier transformfrequency domainifft

I need to understand the way this picture can be fixed
need to get only one instance of the dog.
This is what we have learned :
  1. low pass filter
  2. high pass filter
  3. homomorphic filter
is there any way using the above to fix the image? I've included the fft image so maybe you can point out the thing I should be seeing that makes the image blurry as it is.
asking for theoretical help mostly , thanks

Best Answer

If F(k) is the spectrum of the dog, then F(k)*exp(-2*pi*j*dot(t,k)) is the spectrum of the dog translated by t and the spectrum of the blurry dog is their superposition
F(k)*(1+exp(-2*pi*j*dot(t,k)))
I suspect you're being asked to filter out the (1+exp(-2*pi*j*dot(t,k))). You need to know t in order to do so, but t dictates the orientation of the sinusoidal pattern of lines you're seeing in the background in the spectrum you've shown. Some sort of edge/line detection should do it.