how to fix broad band in fft?

1 Ansicht (letzte 30 Tage)
Rabih Sokhen
Rabih Sokhen am 9 Feb. 2022
Kommentiert: Rabih Sokhen am 10 Feb. 2022
Hy guys.
I'm trying to obtain the fft of a array. however the result are coming out to be braod band, i expected to get bands with a width of 1 pixel.
any suggestion for this problem.
Thanks and Regards
code:
clear all
clc
z=50;
a=ones(z,z);
for i=1:z
for j=2:z
a(i,j)=a(i,j-1)+1;
end
end
a = a.'*a;
subplot(121)
img(abs(a))
subplot(122)
img(abs(log(fftshift(fft2(a)))))
% this is a small example what is happening in my results
  4 Kommentare
Catalytic
Catalytic am 9 Feb. 2022
Bearbeitet: Catalytic am 9 Feb. 2022
"i expected that's the band will not be broad , only 1 pixel as width , because the analytique equation should fit my band at 100% to extract to amplitude and the phase"
I don't really understand that part. The fft2 and ifft2 form an invertible 1-1 pair. Because a=ones(50) produces a 1-pixel wide spectrum, no other a can do so. Otherwise fft2 would not be invertible.
Rabih Sokhen
Rabih Sokhen am 10 Feb. 2022
this is a example of my work, where "a" is periodic array, however wen i use abs(fftshift(fft2(a))) i obtain bands with a width.
is this normal in matlab ?

Melden Sie sich an, um zu kommentieren.

Antworten (0)

Kategorien

Mehr zu Fourier Analysis and Filtering finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by