Effacer les filtres
Effacer les filtres

peak value at the centre of F(0,0) in magnitude plot of fourier transform

1 vue (au cours des 30 derniers jours)
According to this doc
consists of a single line when Im using this
FT=fft2(linkImage);
freqz(linkImage)
In the doc it is mentioned that the center at F(0,0)of fourier tarnsform contains sum of all values in FT.But in my image along with the centre peak two more peaks are visible.Can someone explain what are they.
  2 commentaires
Wayne King
Wayne King le 16 Nov 2011
Hi, I don't see how you are calling freqz() on an image.
freqz() expects two input vectors, or is this not a MATHWORKS' freqz?
Gova ReDDy
Gova ReDDy le 16 Nov 2011
Im using like this freqz2(FT,[32 32]);

Connectez-vous pour commenter.

Réponse acceptée

Wayne King
Wayne King le 22 Nov 2011
Didn't I show this already?
rng default;
x = randn(20,20);
xdft2 = fft2(x);
sum(x(:))
xdft2(1,1)

Plus de réponses (5)

Wayne King
Wayne King le 16 Nov 2011
At any rate, I think only when you shift the 2-D Fourier transform does it end up in the middle. Note that:
rng default;
x = randn(20,20);
xdft2 = fft2(x);
sum(x(:))
xdft2(1,1)
Now
xdft2 = fftshift(xdft2);
xdft2(11,11)

Wayne King
Wayne King le 17 Nov 2011
You wrote freqz() above. freqz2() is for a filter.
For example:
h = 0.01*ones(10,10);
sum(h(:))
H = freqz2(h,10,10);
H(6,6)
  3 commentaires
Wayne King
Wayne King le 17 Nov 2011
freqz2() is for a 2-D FIR filter, freqz() handles both FIR and IIR filters. You can infer the frequency response for your 2-D FIR filter from the 1-D response with freqz() iff your 2-D FIR filter is separable, but I wouldn't assume that this always the case.
Gova ReDDy
Gova ReDDy le 22 Nov 2011
After
Ft=fft2(ximage);
does the frequency value in the First row first coulmn in Ft array will contain sum of all values in ximage or not?
because after fftshift the center frequency will contain the sum of all values in an image.

Connectez-vous pour commenter.


Image Analyst
Image Analyst le 22 Nov 2011
Come on, obviously "F(0,0)of Fourier transform contains sum of all values in FT" is NOT CORRECT. It simply can't be (unless your FT is a delta function) - just think about it for half a second. The F(0,0) element is the "DC component" as it is often called and is proportional to the mean of the spatial domain image. Go back and read the documentation and you'll see that it really says "Note that F(0,0) is the sum of all the values of f(m,n)." Note that f is the spatial domain image, not the Fourier Transform! The sum of all the values of the image is, of course, proportional to the mean of the image.

Gova ReDDy
Gova ReDDy le 23 Nov 2011
After doing Fourier transform of a image I was able to get complex values like 3.3334+i0.2345.
The realpart 3.3334 is magnitude and imaginary part 0.2345 is phase. Does this complex value itself the frequency or is there any method to caluculate the frequency of this complex value.
  2 commentaires
Walter Roberson
Walter Roberson le 23 Nov 2011
Frequency is encoded by position, not by value.
Gova ReDDy
Gova ReDDy le 23 Nov 2011
Position is defined by both the row and cloumn index ,can you please briefly expalin how to get frequency for a particular position.

Connectez-vous pour commenter.


umar siyab
umar siyab le 24 Nov 2011
when u want to centre the image u must use the fftshift function afterall your image will center at f(0,0)... the f(0,0) will contain the lowest values of pixel as compared to move from centre

Produits

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by