Upload
others
View
5
Download
0
Embed Size (px)
Citation preview
Sharpening Spatial Filters
Previously we have looked at smoothing filters which remove
fine detail
Sharpening spatial filters seek to highlight fine detail
Remove blurring from images
Highlight edges
Sharpening filters are based on spatial differentiation
1st Derivative
The 1st derivative of a function is given by:
Its just the difference between subsequent
values and measures the rate of change of
the function
)()1( xfxfx
f
Image Strip
0
1
2
3
4
5
6
7
8
1st Derivative
-8
-6
-4
-2
0
2
4
6
8
5 5 4 3 2 1 0 0 0 6 0 0 0 0 1 3 1 0 0 0 0 7 7 7 7
-1 -1 -1 -1 -1 0 0 6 -6 0 0 0 1 2 -2 -1 0 0 0 7 0 0 0
1st Derivative
2nd Derivative
The 2nd derivative of a function is given by:
Simply takes into account the values both before and after the current value
)(2)1()1(2
2
xfxfxfx
f
Image Strip
0
1
2
3
4
5
6
7
8
5 5 4 3 2 1 0 0 0 6 0 0 0 0 1 3 1 0 0 0 0 7 7 7 7
2nd Derivative
2nd Derivative
-15
-10
-5
0
5
10
-1 0 0 0 0 1 0 6 -12 6 0 0 1 1 -4 1 1 0 0 7 -7 0 0
2nd Derivative for Image Enhancement
The 2nd derivative is more useful for image enhancement
than the 1st derivative - Stronger response to fine detail
We will come back to the 1st order derivative later on
The first sharpening filter we will look at is the Laplacian
Laplacian Filter
2
2
2
22
y
f
x
ff
),(2),1(),1(2
2
yxfyxfyxfx
f
The Laplacian is defined as follows:
),(2)1,()1,(2
2
yxfyxfyxfy
f
Laplacian Filter
So, the Laplacian can be given as follows:
),1(),1([2 yxfyxff
)]1,()1,( yxfyxf
),(4 yxf
0 1 0
1 -4 1
0 1 0
Can we implement it using a filter/ mask?
Laplacian Filter
Applying the Laplacian to an image we get a
new image that highlights edges and other
discontinuities
Original
Image
Laplacian
Filtered Image
Laplacian
Filtered Image
Scaled for Display
Laplacian Image Enhancement
The result of a Laplacian filtering is not an
enhanced image
Laplacian
Filtered Image
Scaled for Display2
5
2
5
( , ) , 0( , )
( , ) , 0
f x y f wg x y
f x y f w
To generate the final enhanced image
Laplacian Image Enhancement
In the final sharpened image edges and fine
detail are much more obvious
- =
Original
Image
Laplacian
Filtered Image
Sharpened
Image
Simplified Image Enhancement
• The entire enhancement can be combined
into a single filtering operation
),1(),1([),( yxfyxfyxf
)1,()1,( yxfyxf
)],(4 yxf
fyxfyxg 2),(),(
Simplified Image Enhancement
• The entire enhancement can be combined
into a single filtering operation
fyxfyxg 2),(),(
),1(),1(),(5 yxfyxfyxf
)1,()1,( yxfyxf0 -1 0
-1 5 -1
0 -1 0
Simplified Image Enhancement
• This gives us a new filter which does the
whole job for us in one step
0 -1 0
-1 5 -1
0 -1 0
Use of first derivatives for image enhancement: The Gradient
• The gradient of a function f(x,y) is defined as
y
fx
f
G
G
y
xf
Gradient Operators• Most common differentiation operator is the
gradient vector.
Magnitude:
Direction:
y
x
G
G
y
yxf
x
yxf
yxf),(
),(
),(
xxyx GGGGyxf 2/122
),(
x
y
G
Gyxf 1tan),(
24
-1 -2 -1
0 0 0
1 2 1
-1 0 1
-2 0 2
-1 0 1
Extract horizontal edges
7 8 9 1 2 3
3 6 9 1 4 7
( 2 ) ( 2 )
( 2 ) ( 2 )
f z z z z z z
z z z z z z
Emphasize more the current point
(y direction)
Emphasize more the current point (x
direction) Pixel Arrangement
Gradient Operators
Extract vertical edges
Sobel Operator
Sobel Operator: Example
Sobel filters are typically used for edge
detection
An image of a
contact lens
which is
enhanced in
order to make
defects more
obvious
27
Order-Statistic Filtering
Output is based on order of gray levels in the masked area
Some simple neighbourhood operations include:
Min: Set the pixel value to the minimum in the
neighbourhood
Max: Set the pixel value to the maximum in the
neighbourhood
Median: The median value of a set of numbers is the
midpoint value in that set
28
Median Filter
• For an image, mask symmetric: 3x3, 5x5, etc.
0 2
1 2
1 2 1
2 5 3
1 3
2 2
0 1
1 2 0
2 2 4
1 0 1
Input Output
Sorted: 0,0,1,1,1,2,2,2,4
1
29
Median Filtering
Median = ? 20
Particularly effective when
The noise pattern consists of strong
impulse noise ( salt-and-pepper)
Sort the values
Determine the median
Combining Spatial Enhancement Methods
Successful image enhancement is
typically not achieved using a single
operation
Rather we combine a range of
techniques in order to achieve a final
result
This example will focus on enhancing
the bone scan
Use of first derivatives for image enhancement: The Gradient
• The gradient of a function f(x,y) is defined as
y
fx
f
G
G
y
xf
-1 -2 -1
0 0 0
1 2 1
-1 0 1
-2 0 2
-1 0 1
Extract horizontal edges
7 8 9 1 2 3
3 6 9 1 4 7
( 2 ) ( 2 )
( 2 ) ( 2 )
f z z z z z z
z z z z z z
Emphasize more the current point
(y direction)
Emphasize more the current point (x
direction) Pixel Arrangement
Gradient Operators
Extract vertical edges
Sobel Operator
Sobel Operator: Example
Sobel filters are typically used for edge
detection
An image of a
contact lens
which is
enhanced in
order to make
defects more
obvious
Edge Detection
• Edge detectors can be based on the first and secondderivatives which can detect abrupt intensity changes.
• Derivates of digital functions are defined in terms ofdifferences
• See approximations on using first and second derivativesin Gonzalez section 10.2.1
39
Edge Detection
• First order derivatives produce thick edges while second orderderivatives produce finer ones. See ramp edge on the figure10.2 on previous slide
• Second order derivatives enhance sharp changes and finedetails more aggressively than first order derivatives see theisolated point and the line in the same figure. This can be aproblem if the noise is present in the image
• Second derivative changes its sign as it transitions into andout of a ramp or step edge. See the step edge. This “doubleedge” effect can be used to locate edges.
• The sign of the second derivative is also used to determinewhether an edge is a transition from light to dark (-ve value)or from dark to light (+ve value). See step edge
41
Gradient Operators• Most common differentiation operator is the
gradient vector.
Magnitude:
Direction:
y
x
G
G
y
yxf
x
yxf
yxf),(
),(
),(
xxyx GGGGyxf 2/122
),(
x
y
G
Gyxf 1tan),(
45
Gradient Operators
Some common gradient operators
Roberts and Prewitt masks are the simplest but not robust against noise
Sobel edge detection masks are the most common and give satisfactory results in presence of noise
46
•The direction of an edge at a point is orthogonal to the direction of thegradient vector at the point
Direction of an Edge
Edge Detection
• First and second derivativefor smooth noiseless edge• The zero crossings of the
second derivative can be used for locating edges in an image.
53
54
Zero Crossings
f f ’ f’’
zero crossing
Laplacian
operatorimage zero-crossing
edge
mapx(m,n) g(m,n) I(m,n)
Edge Detection
Results of first and second derivative for edges with Gaussian noise of mean = 0.
0.0
1.0
0.1
0.10
First derivative
Second derivative
•Smoothing step is a must before taking derivative for edge detection
55
Laplacian of a Gaussian (LoG)
• A filter which combines the smoothing function (Gaussian) with the Laplacian is called Laplacianof a Gaussian (LoG) filter.
• Robust against noise.
• Consider a smoothing Gaussian function:
where r2 = x2 + y2, : standard deviation
• The Laplacian of this function gives the LoGfunction:
2
2
2)(
r
erG
2
2
24
22
2
22 2)(
)(
r
er
r
rGrG
56
Edge detection by LoG
• Due the shape of this function it is also calledMexican hat function (or Mexican hat filters).
• Better performance against noise. Reduces theintensity of structures or noise, which are at scalesmuch smaller than sigma.
• Choose size of Gaussian mask to be n >= 6*sigma
• Then use a 3x3 Laplacian
• Find the zero crossings
58
61
Canny Edge Detector(J. Canny’1986)
Original image
Smoothing by Gaussian convolution
Differential operators along x and y axis
Non-maximum suppression
finds peaks in the image gradient
Hysteresis thresholding locates edge strings
Edge map
Canny Edge Detector (smoothing and enhancement)
CANNY_ENHANCER
1. Apply Gaussian Smoothing to I.
2. For each pixel (i, j):
1. Compute the gradient components
2. Estimate the edge strength
3. Estimate the orientation of the edge normal
Given image I
Canny Edge Detector (Nonmaximum suppression)
The input is the output of CANNY_ENHANCER. We need to thin the
edges. Given Es, Eo, the edge strength and orientation images. For each
pixel (i, j),
1. Find the direction best approximate the direction Eo(i,
j).
2. If Es(i, j) is smaller than at least one of its two
neighbors along this direction, suppress this pixel.
The output is an image of the thinned edge points after suppressing
nonmaxima edge points.
Canny Edge Detector (Hysteresis Thresholding)
Performs edge tracking and reduces the probability of false contours.
Input I is the output of nonmaximum_suppression, Eo and two threshold
parameters
Scan I in a fixed order:
1. Locate the next unvisited edge pixel (i, j) such that I(i, j)
2. Starting from (I, j), follow the chains of connected local maxima in both
directions perpendicular to the edge normal as long as I
3. Marked all visited points and save a list of the locations of all points in the
connected contour found.
Hysteresis thresholding
• Standard thresholding:
- Can only select “strong” edges.
- Does not guarantee “continuity”.
gradient magnitude low threshold high threshold
Hysteresis thresholding (cont’d)
• Hysteresis thresholding uses two thresholds:
• For “maybe” edges, decide on the edge if neighboring
pixel is a strong edge.
- low threshold tl- high threshold th (usually, th = 2tl)
tl
tl
th
th
EE465: Introduction to Digital Image Processing Copyright Xin Li
67
Canny Edge Detector Example
original image vertical edges horizontal edges
norm of the gradient after thresholding after thinning
Readings from Book (3rd Edn.)
• 3.3 Histogram
• 3.4 Filtering
• 3.5 Smoothing Filters
• Sharpening Filters (Chapter – 3)
• Reading Assignment
• High Boost Filtering (Chap –3.6.3)
69
Acknowledgements
Statistical Pattern Recognition: A Review – A.K Jain et al., PAMI (22) 2000
Pattern Recognition and Analysis Course – A.K. Jain, MSU
Pattern Classification” by Duda et al., John Wiley & Sons.
Digital Image Processing”, Rafael C. Gonzalez & Richard E. Woods, Addison-Wesley, 2002
Machine Vision: Automated Visual Inspection and Robot Vision”, David Vernon, Prentice Hall, 1991
www.eu.aibo.com/
Advances in Human Computer Interaction, Shane Pinder, InTech, Austria, October 2008
Mat
eria
l in
th
ese
slid
es h
as b
een
tak
en f
rom
, th
e fo
llow
ing
reso
urc
es