0% found this document useful (0 votes)
203 views

Spatial Filtering

Spatial filtering involves applying a filter or mask over an image to modify or enhance it. There are two main types of spatial filtering: 1) Linear spatial filtering uses a filter mask with coefficients that are multiplied with the pixel values under the mask and summed to calculate the response at each point. This includes smoothing filters like averaging filters for blurring and noise reduction. 2) Nonlinear spatial filters apply conditions to the pixel values under the mask, like median filters which sort and replace with the median value for noise removal. Sharpening filters aim to enhance details and edges. The Laplacian is a common sharpening filter that approximates the second derivative to enhance points of rapid gray level change like edges.

Uploaded by

Deep Mistry
Copyright
© © All Rights Reserved
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
203 views

Spatial Filtering

Spatial filtering involves applying a filter or mask over an image to modify or enhance it. There are two main types of spatial filtering: 1) Linear spatial filtering uses a filter mask with coefficients that are multiplied with the pixel values under the mask and summed to calculate the response at each point. This includes smoothing filters like averaging filters for blurring and noise reduction. 2) Nonlinear spatial filters apply conditions to the pixel values under the mask, like median filters which sort and replace with the median value for noise removal. Sharpening filters aim to enhance details and edges. The Laplacian is a common sharpening filter that approximates the second derivative to enhance points of rapid gray level change like edges.

Uploaded by

Deep Mistry
Copyright
© © All Rights Reserved
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
You are on page 1/ 51

Spatial Filtering

Background
• Filter term in “Digital image processing” is
referred to the subimage
• There are others term to call subimage such as
mask, kernel, template, or window
• The value in a filter subimage are referred as
coefficients, rather than pixels.
Basics of Spatial Filtering
• The concept of filtering has its roots in the use
of the Fourier transform for signal processing
in the so-called frequency domain.
• Spatial filtering term is the filtering operations
that are performed directly on the pixels of an
image
Mechanics of spatial filtering
• The process consists simply of moving the
filter mask from point to point in an image.
• At each point (x,y) the response of the filter at
that point is calculated using a predefined
relationship
Linear spatial filtering
Pixels of image
The result is the sum of
products of the mask
w(-1,-1) w(-1,0) w(-1,1) coefficients with the
f(x-1,y-1)
f(x-1,y)
f(x-1,y+1)
corresponding pixels
w(0,-1) w(0,0) w(0,1)
f(x,y-1)f(x,y)f(x,y+1) directly under the mask
w(1,-1) w(1,0) w(1,1) Mask coefficients
f(x+1,y-1)
f(x+1,y)
f(x+1,y+1) w(-1,-1) w(-1,0) w(-1,1)

w(0,-1) w(0,0) w(0,1)

f ( x, y )  w(1,1) f ( x  1, y  1)  w(1,0) f ( x  1, y )  w(1,1) f ( x  1, y  1) 


w(0,1) f ( x, y  1)  w(0,0) f ( x, y )  ww(1,-1)
(0,1) fw(1,0)  1) 
( x, y w(1,1)
w(1,1) f ( x  1, y  1)  w(1,0) f ( x  1, y )  w(1,1) f ( x  1, y  1)
Note: Linear filtering
• The coefficient w(0,0) coincides with image value
f(x,y), indicating that the mask is centered at (x,y)
when the computation of sum of products takes
place.
• For a mask of size mxn, we assume that m-2a+1 and
n=2b+1, where a and b are nonnegative integer. Then
m and n are odd.
Linear filtering
• In general, linear filtering of an image f of size
MxN with a filter mask of size mxn is given by
the expression:

a b
g ( x, y )    w(s, t ) f ( x  s, y  t )
s   at   b
Discussion
• The process of linear filtering similar to a
frequency domain concept called
“convolution”

Simplify expression mn
R  w1 z1  w2 z 2  ...  wmn z mn   wi zi w1 w2 w3
i 1
9 w4 w5 w6
R  w1 z1  w2 z2  ...  w9 z9   wi zi w7 w8 w9
i 1
Where the w’s are mask coefficients, the z’s are the value of
the image gray levels corresponding to those coefficients
Nonlinear spatial filtering
• Nonlinear spatial filters also operate on
neighborhoods, and the mechanics of sliding a
mask past an image are the same as was just
outlined.
• The filtering operation is based conditionally
on the values of the pixels in the
neighborhood under consideration
Smoothing Spatial Filters
• Smoothing filters are used for blurring and
for noise reduction.
– Blurring is used in preprocessing steps, such as
removal of small details from an image prior to
object extraction, and bridging of small gaps in
lines or curves
– Noise reduction can be accomplished by blurring
Type of smoothing filtering
• There are 2 way of smoothing spatial filters
– Smoothing Linear Filters
– Order-Statistics Filters
Smoothing Linear Filters
• Linear spatial filter is simply the average of the
pixels contained in the neighborhood of the
filter mask.
• Sometimes called “averaging filters”.
• The idea is replacing the value of every pixel in
an image by the average of the gray levels in
the neighborhood defined by the filter mask.
Two 3x3 Smoothing Linear Filters

1 1 1 1 2 1
1 1
 1 1 1  2 4 2
9 16
1 1 1 1 2 1

Standard average Weighted average


5x5 Smoothing Linear Filters

1 1 1 1 1

1 1 1 1 1
1
 1 1 1 1 1
?
25
1 1 1 1 1

1 1 1 1 1
Smoothing Linear Filters
• The general implementation for filtering an
MxN image with a weighted averaging filter of
size mxn is given by the expression

a b

  w(s, t ) f ( x  s, y  t )
g ( x, y )  s   at   b
a b

  w(s, t )
s   at   b
Result of Smoothing Linear Filters
Original Image

[3x3] [5x5] [7x7]


Order-Statistics Filters
• Order-statistics filters are nonlinear spatial filters
whose response is based on ordering (ranking) the
pixels contained in the image area encompassed by
the filter, and then replacing the value of the center
pixel with the value determined by the ranking
result.
• Best-known “median filter”
Process of Median filter

• Corp region of
neighborhood
10 15 20
• Sort the values of
20 100 20 the pixel in our
region
20 20 25
• In the MxN mask
the median is MxN
10, 15, 20, 20, 20, 20, 20, 25, 100 div 2 +1

5th
Result of median filter

Noise from Glass effect Remove noise by median filter


Sharpening Spatial Filters
• The principal objective of sharpening is to
highlight fine detail in an image or to enhance
detail that has been blurred, either in error or
as an natural effect of a particular method of
image acquisition.
Introduction
• The image blurring is accomplished in the
spatial domain by pixel averaging in a
neighborhood.
• Since averaging is analogous to integration.
• Sharpening could be accomplished by spatial
differentiation.
Foundation
• We are interested in the behavior of these
derivatives in areas of constant gray level(flat
segments), at the onset and end of
discontinuities(step and ramp discontinuities),
and along gray-level ramps.
• These types of discontinuities can be noise
points, lines, and edges.
Definition for a first derivative
• Must be zero in flat segments
• Must be nonzero at the onset of a gray-level
step or ramp; and
• Must be nonzero along ramps.
Definition for a second derivative
• Must be zero in flat areas;
• Must be nonzero at the onset and end of a
gray-level step or ramp;
• Must be zero along ramps of constant slope
Definition of the 1st-order derivative
• A basic definition of the first-order derivative of a
one-dimensional function f(x) is

f
 f ( x  1)  f ( x)
x
Definition of the 2nd-order derivative
• We define a second-order derivative as the
difference

2 f
 f ( x  1)  f ( x  1)  2 f ( x).
x 2
Gray-level profile

000123200226332233000000776553
7
6
5
4
3
2
1
0
Derivative of image profile

0 0 0 1 2 3 2 0 0 2 2 6 3 3 2 2 3 3 0 0 0 0 0 0 7 7 6 5 5 3

first 0 0 1 1 1-1-2 0 2 0 4-3 0-1 0 1 0-3 0 0 0 0 0-7 0-1-1 0-2

second 0-1 0 0-2-1 2 2-2 4-7 3-1 1 1-1-3 3 0 0 0 0-7 7-1 0 1-2
Analyze
• The 1st-order derivative is nonzero along the
entire ramp, while the 2nd-order derivative is
nonzero only at the onset and end of the
ramp.

• The1stresponse
make thickatedge
andand
around thethin
2nd make point is much
edge
stronger for the 2nd- than for the 1st-order
derivative
The Laplacian (2nd order derivative)
• Shown by Rosenfeld and Kak[1982] that the
simplest isotropic derivative operator is the
Laplacian is defined as

 2
f  2
f
 f  2  2
2

x y
Discrete form of derivative

f(x-1,y) f(x,y) f(x+1,y) 2 f


 f ( x  1, y )  f ( x  1, y )  2 f ( x, y)
x 2

f(x,y-1)

f(x,y) 2 f
 f ( x, y  1)  f ( x, y  1)  2 f ( x, y)
y 2

f(x,y+1)
2-Dimentional Laplacian
• The digital implementation of the 2-Dimensional
Laplacian is obtained by summing 2 components
 2
f  2
f
2 f  2  2
x x
 2 f  f ( x  1, y)  f ( x  1, y)  f ( x, y  1)  f ( x, y  1)  4 f ( x, y)

1
1 -4 1
1
Laplacian

0 1 0 1 1 1
1 -4 1 1 -8 1
0 1 0 1 1 1

1 0 1
0 -4 0
1 0 1
Laplacian

0 -1 0 -1 -1 -1
-1 4 -1 -1 8 -1
0 -1 0 -1 -1 -1

-1 0 -1
0 4 0
-1 0 -1
Implementation

 f ( x, y)   2 f ( x, y) If the center coefficient is negative


g ( x, y)  
 f ( x, y )   2
f ( x, y) If the center coefficient is positive

Where f(x,y) is the original image


 2 f ( x, y) is Laplacian filtered image
g(x,y) is the sharpen image
Implementation
Implementation

Filtered = Conv(image,mask)
Implementation

filtered = filtered - Min(filtered)


filtered = filtered * (255.0/Max(filtered))
Implementation

sharpened = image + filtered


sharpened = sharpened - Min(sharpened )
sharpened = sharpened * (255.0/Max(sharpened ))
Algorithm
• Using Laplacian filter to original image

• And then add the image result from step 1


and the original image
Simplification
• We will apply two step to be one mask

g ( x, y )  f ( x, y )  f ( x  1, y )  f ( x  1, y )  f ( x, y  1)  f ( x, y  1)  4 f ( x, y )

g ( x, y )  5 f ( x, y )  f ( x  1, y )  f ( x  1, y )  f ( x, y  1)  f ( x, y  1)

0 -1 0 -1 -1 -1
-1 5 -1 -1 9 -1
0 -1 0 -1 -1 -1
Unsharp masking
• A process to sharpen images consists of
subtracting a blurred version of an image from the
image itself. This process, called unsharp masking,
is expressed as
f s ( x , y )  f ( x , y )  f ( x, y )

Where f s ( x, y) denotes the sharpened image obtained by


unsharp masking, and f ( x, y) is a blurred version of f ( x, y )
High-boost filtering
• A high-boost filtered image, fhb is defined at any
point (x,y) as

f hb ( x, y )  Af ( x, y )  f ( x, y ) where A  1

f hb ( x, y )  ( A  1) f ( x, y )  f ( x, y )  f ( x, y )

f hb ( x, y)  ( A  1) f ( x, y)  f s ( x, y)

This equation is applicable general and does not state


explicity how the sharp image is obtained
High-boost filtering and Laplacian
• If we choose to use the Laplacian, then we know
fs(x,y)

 Af ( x, y)   2 f ( x, y) If the center coefficient is negative


f hb  
 Af ( x, y )   2
f ( x, y) If the center coefficient is positive

0 -1 0 -1 -1 -1
-1 A+4 -1 -1 A+8 -1
0 -1 0 -1 -1 -1
The Gradient (1st order derivative)
• First Derivatives in image processing are
implemented using the magnitude of the gradient.
• The gradient of function f(x,y) is

 f 
Gx   x 
f      f 
G y   
 y 
Gradient
• The magnitude of this vector is given by

mag(f )  Gx2  Gy2  Gx  Gy

Gx -1 1 This mask is simple, and no isotropic.


Its result only horizontal and vertical.

Gy 1
-1
Robert’s Method
• The simplest approximations to a first-order
derivative that satisfy the conditions stated in that
section are

z1 z2 z3 Gx = (z9-z5) and Gy = (z8-z6)

z4 z5 z6 f  ( z9  z5 ) 2  ( z8  z6 ) 2

z7 z8 z9 f  z9  z5  z8  z6
Robert’s Method
• These mask are referred to as the Roberts
cross-gradient operators.

-1 0 0 -1

0 1 1 0
Sobel’s Method

• Mask of even size are awkward to apply.


• The smallest filter mask should be 3x3.
• The difference between the third and first
rows of the 3x3 mage region approximate
derivative in x-direction, and the difference
between the third and first column
approximate derivative in y-direction.
Sobel’s Method
• Using this equation
f  ( z7  2z8  z9 )  ( z1  2z2  z3 )  ( z3  2z6  z9 )  ( z1  2z4  z7 )

-1 -2 -1 -1 0 1

0 0 0 -2 0 2

1 2 1 -1 0 1
Homework
• ลองนำภำพสีมำหำ sharpening โดยใช ้ filter
– Laplacian
– High-boost with laplacian
– Gradient
– Robert
-1 -2 -1 -1 -2 -1
– Sobel
-2 12 -2 -2 -12 -2
– my mask
-1 -2 -1 -1 -2 -1

You might also like