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