1 / 42

EE 4780

EE 4780. 2D Discrete Fourier Transform (DFT). 2D Discrete Fourier Transform. 2D Fourier Transform. 2D Discrete Fourier Transform (DFT). 2D DFT is a sampled version of 2D FT. 2D Discrete Fourier Transform. Inverse DFT. 2D Discrete Fourier Transform (DFT). where and .

adamdaniel
Download Presentation

EE 4780

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. EE 4780 2D Discrete Fourier Transform (DFT)

  2. 2D Discrete Fourier Transform • 2D Fourier Transform • 2D Discrete Fourier Transform (DFT) 2D DFT is a sampled version of 2D FT.

  3. 2D Discrete Fourier Transform • Inverse DFT • 2D Discrete Fourier Transform (DFT) where and

  4. 2D Discrete Fourier Transform • Inverse DFT • It is also possible to define DFT as follows where and

  5. 2D Discrete Fourier Transform • Inverse DFT • Or, as follows where and

  6. 2D Discrete Fourier Transform

  7. 2D Discrete Fourier Transform

  8. 2D Discrete Fourier Transform

  9. 2D Discrete Fourier Transform

  10. Periodicity • [M,N] point DFT is periodic with period [M,N] 1

  11. Periodicity • [M,N] point DFT is periodic with period [M,N] 1

  12. Convolution • Be careful about the convolution property! Length=P+Q-1 Length=Q Length=P For the convolution property to hold, M must be greater than or equal to P+Q-1.

  13. Convolution • Zero padding 4-point DFT (M=4)

  14. DFT in MATLAB • Let f be a 2D image with dimension [M,N], then its 2D DFT can be computed as follows: Df = fft2(f,M,N); • fft2 puts the zero-frequency component at the top-left corner. • fftshift shifts the zero-frequency component to the center. (Useful for visualization.) • Example: f = imread(‘saturn.tif’); f = double(f); Df = fft2(f,size(f,1), size(f,2)); figure; imshow(log(abs(Df)),[ ]); Df2 = fftshift(Df); figure; imshow(log(abs(Df2)),[ ]);

  15. DFT in MATLAB f Df = fft2(f) After fftshift

  16. DFT in MATLAB • Let’s test convolution property f = [1 1]; g = [2 2 2]; Conv_f_g = conv2(f,g); figure; plot(Conv_f_g); Dfg = fft (Conv_f_g,4); figure; plot(abs(Dfg)); Df1 = fft (f,3); Dg1 = fft (g,3); Dfg1 = Df1.*Dg1; figure; plot(abs(Dfg1)); Df2 = fft (f,4); Dg2 = fft (g,4); Dfg2 = Df2.*Dg2; figure; plot(abs(Dfg2)); Inv_Dfg2 = ifft(Dfg2,4); figure; plot(Inv_Dfg2);

  17. DFT in MATLAB • Increasing the DFT size f = [1 1]; g = [2 2 2]; Df1 = fft (f,4); Dg1 = fft (g,4); Dfg1 = Df1.*Dg1; figure; plot(abs(Dfg1)); Df2 = fft (f,20); Dg2 = fft (g,20); Dfg2 = Df2.*Dg2; figure; plot(abs(Dfg2)); Df3 = fft (f,100); Dg3 = fft (g,100); Dfg3 = Df3.*Dg3; figure; plot(abs(Dfg3));

  18. DFT in MATLAB • Scale axis and use fftshift f = [1 1]; g = [2 2 2]; Df1 = fft (f,100); Dg1 = fft (g,100); Dfg1 = Df1.*Dg1; t = linspace(0,1,length(Dfg1)); figure; plot(t, abs(Dfg1)); Dfg1_shifted = fftshift(Dfg1); t2 = linspace(-0.5, 0.5, length(Dfg1_shifted)); figure; plot(t, abs(Dfg1_shifted));

  19. Example

  20. Example

  21. DFT-Domain Filtering a = imread(‘cameraman.tif'); Da = fft2(a); Da = fftshift(Da); figure; imshow(log(abs(Da)),[]); H = zeros(256,256); H(128-20:128+20,128-20:128+20) = 1; figure; imshow(H,[]); Db = Da.*H; Db = fftshift(Db); b = real(ifft2(Db)); figure; imshow(b,[]); H Frequency domain Spatial domain

  22. Low-Pass Filtering 61x61 81x81 121x121

  23. Low-Pass Filtering h = * DFT(h)

  24. High-Pass Filtering h = * DFT(h)

  25. High-Pass Filtering High-pass filter

  26. Anti-Aliasing a=imread(‘barbara.tif’);

  27. Anti-Aliasing a=imread(‘barbara.tif’); b=imresize(a,0.25); c=imresize(b,4);

  28. Anti-Aliasing a=imread(‘barbara.tif’); b=imresize(a,0.25); c=imresize(b,4); H=zeros(512,512); H(256-64:256+64, 256-64:256+64)=1; Da=fft2(a); Da=fftshift(Da); Dd=Da.*H; Dd=fftshift(Dd); d=real(ifft2(Dd));

  29. Noise Removal • For natural images, the energy is concentrated mostly in the low-frequency components. “Einstein” DFT of “Einstein” Profile along the red line Signal vs Noise Noise=40*rand(256,256);

  30. Noise Removal • At high-frequencies, noise power is comparable to the signal power. Signal vs Noise • Low-pass filtering increases signal to noise ratio.

  31. Appendix

  32. Appendix: Impulse Train • The Fourier Transform of a comb function is

  33. Impulse Train (cont’d) • The Fourier Transform of a comb function is (Fourier Trans. of 1) ?

  34. Impulse Train (cont’d) • Proof

  35. Appendix: Downsampling • Question: What is the Fourier Transform of ?

  36. Downsampling • Let Using the multiplication property:

  37. Downsampling where

  38. Example

  39. Example ?

  40. Downsampling

  41. Example

  42. Example No aliasing if

More Related