Department of Physics and Astronomy
DIGITAL IMAGE PROCESSING
Course 3624
Topic 6 - Image Filtering - I
Professor Bob Warwick
6. Image Filtering I: Spatial Domain Filtering
The goal of spatial filtering is typically either to ( a) reduce the impact of noise in the image via image smoothing or (b) to sharpen the detail within the image.
Both processes involve the suppression and/or enhancement of particular spatial frequency components in the image (see Topic 8).
Point process (eg. Mapping) Neighbourhood process (eg. Spatial filtering)
Procedure h mask, filter, operator etc.. (usually with a 3 x 3 or 5 x 5 or 7 x 7 etc.. format) i h
00 h
10 h
01 h
11
å i=n-1 i=0
å j=n-1 j=0 h ij
Calculate for all x & y h
20
(ii) Compute a new image g xy from the old image f xy via:
å i=n-1 å i=0 j=n-1 h ij f x-m+i, y-m+j j=0 g xy
=
For a mask of dimension n x n (n odd), where m = (n-1)/2 is the central element.
h
21
Note that the denominator is a normalisation factor – sometimes not applicable!
j h
02 h
12 h
22
original 3x3 average
3
6.1 Smoothing Filters
Smoothing filters involve calculating the average value (with some defined weighting) within the masked region.
Assuming a 3 x 3 format, some possibilities are:
1 1 1 Replaces the original value with
1 1 1
1 1 1 the average of 9 values (the central
1 1 1
1 1 1 pixel plus its 8 nearest neighbours)
1 1 1
1 1 1
Double weighting of the central pixel
1 2 1
1 2 1
1 1 1
1 1 1
0 1 0
0 1 0
1 1 1
Replaces the original value with the average of 5 values (the central
1 1 1
0 1 0 pixel plus its 4 nearest neighbours)
0 1 0
Smoothing Examples: Original Images
Author: Richard Alan Peters II
1
9
1
1
1
1
1
1
1
1
1
Smoothing Examples: 3
3 Blur
1
25
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1 1
1
1
1
1
1
Smoothing Examples: 5
5 Blur
1
81
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1 1 1 1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1 1
1
1
1
1
1
1
1
1
1
Smoothing Examples: 9
9 Blur
1
289
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1 1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1 1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1 1 1 1 1 1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1 1 1 1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
Smoothing Examples: 17
17 Blur
Image Smoothing Examples
Original Smoothed
Noise Suppression Example
Noise Suppression Example
Calculating the effective noise reduction
P(f)
Gaussian Distribution
P(f)
=
1 s
2 p m
, s e
-
(f
m
)
2
2 s 2 mean and standard deviation
Example
Applying a 3 x 3 smoothing filter with unit coefficients results in a factor 3 reduction in the noise.
f g xy m g s g
=
=
=
m f s f
9
9
9 f xy
The Median Filter
Smoothing filters can be used to reduce the impact of the noise in an image but also cause unwanted blurring . The larger the dimension of the smoothing mask the greater the noise reduction factor but also the greater the blurring.
Non-linear filters, such as the Median Filter , can to some degree
“decouple” these two effects – but in a way which is hard to quantify.
The median filter would replace the central value with the median value contained within the mask (or window) region.
152
154
163
164
171
133
133
140
147
Suppression of Impulsive Noise
Smoothing Filter Median Filter
Suppression of Impulsive Noise
6.2 Sharpening Filters
The objective is to enhance the detail in the image by accentuating edges and boundaries.
Smoothing Averaging Sharpening Differencing
Continuous variables
In practice with discrete variables differencing is equivalent to differentiation and both the 1 st and 2 nd differentials can be used to mark the position in an image where there are rapid changes in gray level
(ie edges).
f ( x ) f
¢
( x ) f
¢¢
( x ) f ( x )
- ¢¢
( x ) f ( x )
+ ¢
( x )
Types of Filters Used in Image Sharpening - I
Pairs of masks of various formats which give the vertical (a xy
) and horizontal (b xy
) gradients:
(i) The Roberts Operators
-
1
1 a xy
=f x+1,y
-f xy
-
1 1 b xy
=f x,y+1
-f xy
Where the final gradient image is calculated as:
(ii)
-
1
0
1 a xy
=f x+1,y
-f x-1,y
-
1 0 1 b xy
=f x,y+1
-f x,y-1 g or xy
= a
2 xy
+b
2 xy g xy
= a xy
+ b xy
(iii) The Prewitt Operators
-
1
-
1
-
1
0 0 0
1 1 1
-
1 0 1
-
1 0 1
-
1 0 1
Image Sharpening Examples
Consider an image consisting of:
… 0 0 0 0 1 1 1 …..
… 0 0 0 0 1 1 1 …..
… 0 0 0 0 1 1 1 …..
… 0 0 0 0 1 1 1 …..
Applying the following filters gives:
(i) -
1
-
1
-
1
0 0 0
1 1 1
… 0 0 0 0 0 0 0 …..
… 0 0 0 0 0 0 0 …..
… 0 0 0 0 0 0 0 …..
… 0 0 0 0 0 0 0 …..
(ii) -
1 0 1
-
1 0 1
-
1 0 1
… 0 0 0 3 3 0 0 …..
… 0 0 0 3 3 0 0 …..
… 0 0 0 3 3 0 0 …..
… 0 0 0 3 3 0 0 …..
Calculating the Gradient Image
Lena
Calculating the Gradient Image
The Sobel Operators
-
1
-
2
-
1
0 0 0
1 2 1
-
1 0 1
-
2 0 2
-
1 0 1
Types of Filters Used in Image Sharpening - II
Masks which give the 2 nd differential or Laplacian image
(i)
: f x
' = f x
-f x-1 f x
'' = f
' x
-f
' x-1
=
(f x
-f x-1
)
-
(f x-1
-f x-2
)
= f x
-
2f x-1
+ f x-2
Þ f x-1
+
2f x
f x+1
(ii)
(iii)
-
1 2
-
1
0
-
1 0
-
1 4
-
1
0
-
1 0
-
1
-
1
-
1
-
1 8
-
1
-
1
-
1
-
1
-
1
2
-
1
The 1-d and 2-d Laplacian Mask in Action f xy
510
255
0
-255
2f xy
-f x,y-1
-f x,y+1
2f xy
-f x-1,y
-f x+1,y
-1 2 -1
-1
2
-1
4f xy
f x-1,y
-f x+1,y
f x,y-1
-f x,y+1
-1
-1
4 -1
-1
The Image Sharpening Process
In image sharpening the usual approach is to add the derived ‘gradient’ or ‘Laplacian’ image to the original image in a process known as high frequency emphasis .
Thus:
Final image = original image + gradient or Laplacian image
For the Laplacian case this can be achieved in one step by modifying the 2-d mask to:
0
-
1 0
-
1 5
-
1
0
-
1 0 or
-
1
-
1
-
1
-
1 9
-
1
-
1
-
1
-
1
Image Sharpening Examples
Consider an image consisting of:
… 0 0 0 0 1 1 1 …..
… 0 0 0 0 1 1 1 …..
… 0 0 0 0 1 1 1 …..
… 0 0 0 0 1 1 1 …..
Applying the following filters gives:
(i)
-
1
-
1
-
1
-
1 8
-
1
-
1
-
1
-
1
… 0 0 0 -3 3 0 0 …..
… 0 0 0 -3 3 0 0 …..
… 0 0 0 -3 3 0 0 …..
… 0 0 0 -3 3 0 0 …..
(ii) -
1
-
1
-
1
-
1 9
-
1
-
1
-
1
-
1
… 0 0 0 -3 4 1 1 …..
… 0 0 0 -3 4 1 1 …..
… 0 0 0 -3 4 1 1 …..
… 0 0 0 -3 4 1 1 …..
Image Sharpening Examples
The Mathematical Process of Spatial Filtering
Consider the 1-d case of spatial filtering with an n element mask
(n odd), where m= (n-1)/2 and ignoring the normalization factor.
g x
=
i=n-1 i=0 h i f x-m+i
(1) x f
0 f
1 f x h
0 h m h n-1 g x
=
å h h i' f x+i' g x
=
å h h i'' f x-i'' g x
=
å h h x
a f a
(2)
(3)
(4) i i' i''
Equation 4 is the discrete version of the CONVOLUTION INTEGRAL.
SPATIAL FILTERING IS A
CONVOLUTION PROCESS i'=i-m i''=-i' a = x-i' ' g ( x )=
¥
-¥ f ( a
) h ( x
a
) d a
Shorthand versions : g ( x )
= f ( x )
* h ( x ) g x
= f x
* h x f
N-1
The Mathematical Process of “Convolution”
Practical Considerations
(i) Edge Errors
For an n x n mask there is a (n-1)/2 border to the new image where exact values cannot be calculated. Solutions are:
(a) Reduce the dimensions of the new image (usually impractical)
(b) Calculate approximate values for the border pixels
(c) Compute the cyclic convolution (beyond our scope).
(ii) Separability
A 2-d mask is separable if the successive application of two 1-d masks gives the equivalent result to the application of the 2-d mask.
For example, considered as matrices:
ç
è
ç
ç
æ
1 1 1
1 1 1
1 1 1
÷
ø
÷
÷
ö
º
(
1 1 1
)
*
ç
è
ç
ç
æ
1
1
1
÷
ø
÷
÷
ö
Therefore this smoothing mask is separable.
There are computational advantages if the mask is separable.
Note: Both gradient and Laplacian filters can also be used in
EDGE DETECTION – see topic 10