Discrete Fourier Transform. FFT and Its Applications FFTSHIFT Shift zero-frequency component to the...

8
Discrete Fourier Transform

Transcript of Discrete Fourier Transform. FFT and Its Applications FFTSHIFT Shift zero-frequency component to the...

Page 1: Discrete Fourier Transform. FFT and Its Applications FFTSHIFT Shift zero-frequency component to the center of spectrum. For vectors, FFTSHIFT(X) swaps.

Discrete Fourier Transform

Page 2: Discrete Fourier Transform. FFT and Its Applications FFTSHIFT Shift zero-frequency component to the center of spectrum. For vectors, FFTSHIFT(X) swaps.

FFT and Its Applications

FFTSHIFT Shift zero-frequency component to the center of spectrum. For vectors, FFTSHIFT(X) swaps the left and right halves of X. For matrices, FFTSHIFT(X) swaps the first and third quadrants and the second and fourth quadrants. For N-D arrays, FFTSHIFT(X) swaps "half-spaces" of X along each dimension.

Page 3: Discrete Fourier Transform. FFT and Its Applications FFTSHIFT Shift zero-frequency component to the center of spectrum. For vectors, FFTSHIFT(X) swaps.

Example of 1-D Fourier Transform

Page 4: Discrete Fourier Transform. FFT and Its Applications FFTSHIFT Shift zero-frequency component to the center of spectrum. For vectors, FFTSHIFT(X) swaps.

fftBox.m – Plot Fourier Spectrum

• %• % Script file: fftBox.m• % Fourier Spectrum Plot of Box function• %• X1=linspace(0,1,17);• Y1=ones(1,length(X1));• X2=linspace(1,16,241);• Y2=zeros(1,length(X2));• X=[X1 X2]; Y=[Y1 Y2];• W=abs(fftshift(fft(Y)));• subplot(2,1,1)• plot(X,Y,'r'); axis([0 16, 0,1.2]); title('Box function')• subplot(2,1,2)• plot(W,'b-');• title('Fourier Spectrum of Box function')

Page 5: Discrete Fourier Transform. FFT and Its Applications FFTSHIFT Shift zero-frequency component to the center of spectrum. For vectors, FFTSHIFT(X) swaps.

2-D Discrete Fourier Transform

Page 6: Discrete Fourier Transform. FFT and Its Applications FFTSHIFT Shift zero-frequency component to the center of spectrum. For vectors, FFTSHIFT(X) swaps.

Example of 2-D FFT Matlab Code

• % Script file: fourier.m - 2D Fourier Transform• % Pictures on P.113 of Gonzalez, Woods, Eddins• m=128; n=128;• f=zeros(m,n);• f(56:71,48:79)=255;• F0=fft2(f); S0=abs(F0);• Fc=fftshift(fft2(f)); Sc=abs(Fc);• Fd=fft2(fftshift(f)); Sd=log(1+abs(Fc));• subplot(2,2,1)• imshow(f,[])• subplot(2,2,2)• imshow(S0,[])• subplot(2,2,3)• imshow(Sc,[ ])• subplot(2,2,4)• imshow(Sd,[ ])

Page 7: Discrete Fourier Transform. FFT and Its Applications FFTSHIFT Shift zero-frequency component to the center of spectrum. For vectors, FFTSHIFT(X) swaps.

2-D FFT with CenterShift

Page 8: Discrete Fourier Transform. FFT and Its Applications FFTSHIFT Shift zero-frequency component to the center of spectrum. For vectors, FFTSHIFT(X) swaps.

2-D FFT on Texture Images