Frequency Domain Filtering (Chapter 4) CS474/674 - Prof. Bebis

Download Report

Transcript Frequency Domain Filtering (Chapter 4) CS474/674 - Prof. Bebis

Frequency Domain Filtering (Chapter 4)

CS474/674 - Prof. Bebis

Frequency Domain Methods Spatial Domain Frequency Domain

Major filter categories • Typically, filters are classified by examining their properties in the frequency domain: (1) Low-pass (2) High-pass (3) Band-pass (4) Band-stop

Example

Original

signal

Low-pass

filtered

High-pass

filtered

Band-pass

filtered

Band-stop

filtered

Low-pass filters (i.e., smoothing filters) • Preserve low frequencies - useful for noise suppression

frequency domain time domain

Example:

High-pass filters (i.e., sharpening filters) • Preserves high frequencies - useful for edge detection

time domain frequency domain

Example:

Band-pass filters • Preserves frequencies within a certain band

frequency domain time domain

Example:

Band-stop filters • How do they look like?

Band-pass Band-stop

Frequency Domain Methods

Case 1:

H(u,v) is specified in the frequency domain.

Case 2:

h(x,y) is specified in the spatial domain.

(real)

Frequency domain filtering: steps F(u,v) = R(u,v) + jI(u,v)

Frequency domain filtering: steps (cont’d) (Case 1) G(u,v)= F(u,v)H(u,v) = H(u,v) R(u,v) + jH(u,v)I(u,v)

Example f(x,y) f p (x,y) f p (x,y)(-1) x+y F(u,v) H(u,v) - centered G(u,v)=F(u,v)H(u,v) g p (x,y) g(x,y)

(Case 2) h(x,y) specified in spatial domain • If h(x,y) is given in the spatial domain, we can generate H(u,v) as follows: 1.Form h p (x,y) by padding with zeroes.

2. Multiply by (-1) x+y to center its spectrum.

3. Compute its DFT to obtain H(u,v) Recall these properties:

Example: h(x,y) is specified in the spatial domain 600 x 600 Example: 6 x 6 g(x,y)= -g(6-x,6-y) Sobel time frequency 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -1 0 1 0 0 0 -2 0 2 0 0 0 -1 0 1 0 0 0 0 0 0 0 frequency 602 x 602 Warning: need to preserve odd symmetry when padding with zeroes  H(u,v) should be imaginary and odd (read details on pages 241 and 268 )

Results of Filtering in the Spatial and Frequency Domains spatial domain filtering frequency domain filtering

Low Pass (LP) Filters • Ideal low-pass filter (ILPF) • Butterworth low-pass filter (BLPF) • Gaussian low-pass filter (GLPF)

Low-pass (LP) filtering • Preserves low frequencies, attenuates high frequencies.

Ideal In practice D 0 : cut-off frequency

Lowpass (LP) filtering (cont’d) • In 2D, the cutoff frequencies are specified by a circle.

Ideal

Specifying a 2D low-pass filter • Specify cutoff frequencies by specifying the

radius

of a circle centered at point (N/2, N/2) in the frequency domain.

• The radius is chosen by specifying the percentage of total

power

enclosed by the circle.

Specifying a 2D low-pass filter (cont’d) • Typically, most frequencies are concentrated around the center of the spectrum.

original r=8 (90% power) r=18 (93% power) r=43 (95%) r=78 (99%) r=152 (99.5%) r: radius

How does D 0 control smoothing?

• Reminder: multiplication in the frequency domain implies convolution in the time domain time domain freq. domain * sinc =

How does D 0 control smoothing? (cont’d) • D 0 controls the amount of blurring r=78 (99%) r=8 (90%)

Ringing Effect • Sharp cutoff frequencies produce an overshoot of image features whose frequency is close to the cutoff frequencies

(ringing effect).

h=f*g

Butterworth LP filter (BLPF) • In practice, we use filters that attenuate high frequencies smoothly (e.g.,

Butterworth

LP filter)  less ringing effect n=1 n=4 n=16

Spatial Representation of BLPFs n=1 n=2 n=5 n=20

D 0 =10, 30, 60, 160, 460 Comparison: Ideal LP and BLPF BLPF ILPF D 0 =10, 30, 60, 160, 460 n=2

Gaussian LP filter (GLPF) Gaussian Lowpass Filters (GLPF) in two dimensions is given 

e

 (

u

2 

v

2 )/2  2 By letting  

D

0 

e

 (

u

2 

v

2 )/2

D

0 2

Gaussian: Frequency – Spatial Domains Let H(u) denote the 1-D frequency domain Gaussian filter 

Ae

-

u

2 /2  2 The corresponding filter in the spatial domain  2 

Ae

 2   frequency domain spatial domain

Example: smoothing by GLPF (1)

Examples of smoothing by GLPF (2) 4/28/2020 D 0 =100 D 0 =80 30

High Pass (LP) Filters • Ideal high-pass filter (IHPF) • Butterworth high-pass filter (BHPF) • Gaussian high-pass filter (GHPF) • Difference of Gaussians • Unsharp Masking and High Boost filtering

High-pass filtering • Preserves high frequencies, attenuates low frequencies.

H(u)

High-Pass filtering (cont’d) • A high-pass filter can be obtained from a low-pass filter as follows:

H HP H LP

= 1 D 0

Butterworth high pass filter (BHPF) • In practice, we use filters that attenuate low frequencies smoothly (e.g.,

Butterworth

HP filter)  less ringing effect

Spatial Representation of High-pass Filters IHPF BHPF GHPF

IHPF Comparison: IHPF and BHPF D 0 =30,60,160 BHPF D 0 =30,60,160 n=2

Gaussian HP filter A 2-D Gaussian highpass filter (GHPL) is defined as

e

 (

u

2 

v

2 )/2

D

2 0 GHPF BHPF

BHPF Comparison: BHPF and GHPF D 0 =30,60,160 n=2 D 0 =30,60,160 GHPF

Example: High-pass Filtering and Thresholding for Fingerprint Image Enhancement BHPF (order 4 with a cutoff frequency 50)

Difference of Gaussians (DoG) filter 

Ae

-

u

2 /2  1 2 with

A

 

Be

-

u

2 /2  2 2

B

and   1  2 The corresponding filter in the spatial domain  2  1

Ae

 2   1  2  2

Ae

 2 2 This is a high-pass filter!

Unsharp Masking and Highboost Filtering (revisited) Unsharp Masking:

g mask

 

f LP

Highboost filtering: (textbook’s formulation)

g

(

x

,

y

)  

f

(

x

,

y

) 

kg mask

(

x

,

y

) 

f

(

x

,

y

) 

kf HP

(

x

,

y

)

f

(

x

,

y

) 

k

(

f

(

x

,

y

) 

f LP

(

x

,

y

)) Previous definition:

g

(

x

,

y

)  (

A

 1 )

f

(

x

,

y

) 

f HP

(

x

,

y

)

so

:  Revisit: Unsharp Masking and Highboost Filtering 

kg mask

  

f LP

F

{ ( , )   

k

(1 

H LP

FT  

H LP f LP kH HP

 Highboost Filter 

F

 1 {[1 

kH HP

Highboost and High-Frequency-Emphasis Filters

g

(

x

,

y

) 

F

 1 (( 1 

kH HP

(

u

,

v

))

F

(

u

,

v

))

k

 0

g

(

k

1

x

 , 0

y

) , 

k

2

F

 1 ((

k

1  0 

k

2

H HP

(

u

,

v

))

F

(

u

,

v

)) 1+k 1 Highboost k 1 +k 2 k 1 High-emphasis

High-Frequency Emphasis filtering Using Gaussian filter k 1 =0.5, k 2 =0.75

Example High-emphasis GHPF D 0 =40 High-emphasis and hist. equal.

Homomorphic filtering • Many times, we want to remove shading effects from an image (i.e., due to uneven illumination) – Enhance high frequencies – Attenuate low frequencies but preserve fine detail.

Homomorphic Filtering (cont’d) • Consider the following model of image formation:

i(x,y):

illumination

r(x,y):

reflection • In general, the illumination component i(x,y) varies

slowly

and affects

low

frequencies mostly.

• In general, the reflection component r(x,y) varies

faster

and affects

high

frequencies mostly.

IDEA: separate low frequencies due to i(x,y) from high frequencies due to r(x,y)

How are frequencies mixed together?

• Low and high frequencies from

i(x,y)

and

r(x,y)

are mixed together.

 • When applying filtering, it is difficult to handle low/high frequencies separately.

( , ) 

Can we separate them?

• Idea: Take the ln( ) of

Steps of Homomorphic Filtering (1) Take (2) Apply FT: (3) Apply H(u,v) or

Steps of Homomorphic Filtering (cont’d) (4) Take Inverse FT: or (5) Take exp( ) or

g

(

x

,

y

) 

i

0 (

x

,

y

)

r

0 (

x

,

y

)

Example using high-frequency emphasis  ( 

H

 

L

 

e

 2 

v

2 )/

D

2 0    

L

Attenuate the contribution made by illumination and amplify the contribution made by reflectance

Homomorphic Filtering: Example

Homomorphic Filtering: Example  

L

c H

  1 0.25

2

D

0  80