1
$\begingroup$

I have an image with size $256*256$ then i get the Fourier transform of the image, If i only take the central region of the Fourier transform whose size is $64*64$ and get the inverse FT ,What is the effect on the output image$(64*64)$?

Down-sampling, Blurring, or both.

$\endgroup$
2
$\begingroup$

Have you fftshifted your results or not? The answers will be different:

If you fftshift your $256$ x $256$ 2-dimensional Fourier transform result, retain only the $64$ x $64 $ central co-efficients, inverse fftshift, and then inverse fourier transform the result, the effect will be a blurring of your original image.

This is because you have culled our your images' high frequency components, hence, the effect will be a blurring.

If however you have not fftshifted, then you are doing the opposite, and will actually be doing a high pass filtering. (Your image will certainly not be blurred).

By the way, hard thresholding fourier co-efficients like this is certainly used, but will give you ringing effects. However, those effects might be negligible and/or removable based on your application.

| improve this answer | |
$\endgroup$
  • $\begingroup$ so i won't get aliased image, only blurring. do you have any idea how to remove this blurring by wiener filtering? $\endgroup$ – HforHesham Dec 13 '13 at 19:03
  • $\begingroup$ @HforHesham If you only remove fourier co-efficients, you will not be causing aliasing, just a filtering operation. If you have a question about Weiner filtering the best thing to do would be to make a new question about it. $\endgroup$ – Tarin Ziyaee Dec 13 '13 at 19:15
0
$\begingroup$

By taking an FFT, retaining a sub-spectrum, then taking the inverse FFT you do actually perform two operations: low-pass filtering then downsampling. Reducing the size of tje spectrum can be seen as first setting to 0 everything outside the 64-by-64 area, then cropping out this 64-by-64 piece.

Let's detail a bit what happens:

  1. First FFT: you compute $\hat{I} = \mathcal{F}(I)$, where $I$ is the original image (256-by-256).
  2. Set to 0 the coefficients outside the 64-by-64 area: $LPF(\hat{I})(f) = \hat{I}(f)$ if $f$ is in the 64-by-64 region, 0 otherwise. This is a low-pass filter (LPF) since you are actually removing high frequencies.
  3. Downsampling: crop out the frequency region of interest: $\hat{X} = LPF(\hat{I})_{64 \times 64}$.
  4. Invert FFT: you obtain a smaller image $X = \mathcal{F}^{-1}(\hat{X})$.

This downsampling procedure is however not common because low-pass filters with smoother decays are preferred.

| improve this answer | |
$\endgroup$
0
$\begingroup$

It is blurring. You eliminated the high frequency components.

Downsampling is implemented in spatial domain. You can try imagesc(abs(fftshift(fft2(img(1:2:end,1:2:end))))) and compared the result figure with the one you created with the method described in your question.

Wiener filter is a low pass filter, it is used to restored the image blurred with white noise (includes high frequency). You can try wiener2 in Matlab with your image.

| improve this answer | |
$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.