230 likes | 241 Views
Learn about image enhancement, edge detection, spectral filtering, and more in digital image processing. Understand spatial and frequency domain filtering methods.
E N D
Digital Image ProcessingECE.09.452/ECE.09.552Fall 2007 Lecture 4October 1, 2007 Shreekanth Mandayam ECE Department Rowan University http://engineering.rowan.edu/~shreek/fall07/dip/
Plan • Image Enhancement • Spatial Filtering • Detection of Discontinuities • Edge detection (Sobel, Prewitt and Laplacian masks) • Image Spectrum • 2-D Fourier Transform (DFT & FFT) • Spectral Filtering • Lab 2: Spatial and Spectral Filtering
Image Preprocessing Restoration Enhancement • Inverse filtering • Wiener filtering Spectral Domain Spatial Domain • Filtering • >>fft2/ifft2 • >>fftshift • Point Processing • >>imadjust • >>histeq • Spatial filtering • >>filter2
z1 w1 w2 z2 w3 z3 w5 z5 w6 z6 z4 w4 w8 z8 z9 w9 w7 z7 Spatial Filtering (Masking) Portion of a digital image Mask Replace with R = w1z1 + w2z2 + ….. +w9z9
1 z1 z2 1 1 z3 1 z5 1 z6 1 z4 z8 1 z9 1 1 z7 Low-pass Filters Moving Average Filter (1/9)* Median Filter Replace with R = median(z1, z2 , ….. , z9)
S f(x,y) g(x,y) n(x,y) Degradation Model: g = f + n Noise Models • SNRg = 10log10(Pf/Pn) • Power Variance (how?) • SNRg = 10log10(sf2/ sn2)
Noise Models • N(0,1): zero-mean, unit-variance, Gaussian RV • Theorem: • N(0,s2) = sN(0,1) • Use this for generating normally distributed r.v.’s of any variance >>imnoise >>nrfiltdemo >>filter2 • demos/demo2spatial_filtering/lowpassdemo.m
-1 z1 -1 z2 z3 -1 z5 8 z6 -1 z4 -1 z8 -1 -1 z9 z7 -1 1 1 -1 0 -1 0 0 0 High-pass Filters Basic HP Filter (1/9)* Gradient Filter • demos/demo2spatial_filtering/highpassdemo.m
-1 -1 -1 -1 -1 0 1 -1 -1 8 0 0 -1 1 0 0 -1 -1 1 -1 0 1 1 -1 -1 1 -1 Detection of Discontinuities Point Detection Line Detection (Prewitt’s Gradient) • demos/demo2spatial_filtering/prewitt.m
-1 -1 -2 0 -1 1 0 0 0 2 -2 0 0 2 1 1 -1 1 Edge Detection Sobel Masks >>edgedemo >>edge • demos/demo2spatial_filtering/edgegradientdemo.m
Image Preprocessing Restoration Enhancement • Inverse filtering • Wiener filtering Spectral Domain Spatial Domain • Filtering • >>fft2/ifft2 • >>fftshift • Point Processing • >>imadjust • >>histeq • Spatial filtering • >>filter2
Continuous Fourier Transform (CFT) Frequency, [Hz] Phase Spectrum Amplitude Spectrum Inverse Fourier Transform (IFT) Recall: 1-D CFT
Equal time intervals Recall: 1-D DFT • Discrete Domains • Discrete Time: k = 0, 1, 2, 3, …………, N-1 • Discrete Frequency: n = 0, 1, 2, 3, …………, N-1 • Discrete Fourier Transform • Inverse DFT Equal frequency intervals n = 0, 1, 2,….., N-1 k = 0, 1, 2,….., N-1
n=0 1 2 3 4 n=N f=0 f = fs How to get the frequency axis in the DFT • The DFT operation just converts one set of number, x[k] into another set of numbers X[n] - there is no explicit definition of time or frequency • How can we relate the DFT to the CFT and obtain spectral amplitudes for discrete frequencies? (N-point FFT) Need to know fs
n=0 N/2 n=N f=0 fs/2 f = fs DFT Properties • DFT is periodic X[n] = X[n+N] = X[n+2N] = ……… • I-DFT is also periodic! x[k] = x[k+N] = x[k+2N] = ………. • Where are the “low” and “high” frequencies on the DFT spectrum?
1-D FFT Demo http://engineering.rowan.edu/~shreek/spring07/ecomms/demos/dft.m >>fft
u x v y 2-D Continuous Fourier Transform Spatial Frequency Domain Spatial Domain
u=0 u=N/2 u=N v=N v=N/2 v=0 2-D Discrete Fourier Transform >>fft2 >>ifft2
2-D DFT Properties • Conjugate symmetry demos/demo3dft_properties/con_symm_and_trans.m • Rotation demos/demo3dft_properties/rotation.m • Separability demos/demo3dft_properties/separability.m >>fftshift
Spectral Filtering: Radially Symmetric Filter u=-N/2 u=0 u=N/2 • Low-pass Filter demos/demo4freq_filtering/lowpass.m D(u,v) D0 v=N/2 v=0 v=-N/2
Lab 2: Spatial & Spectral Filtering http://engineering.rowan.edu/~shreek/fall07/dip/lab2.html