Title: Aucun titre de diapositive
1Image processing Image segmentation
Session 2005-2006
Ecole Centrale Marseille
2Introduction
Image analysis ---gt extracting information
from an image
segmentation
Feature extraction
Subdivides image into its constituent parts or
objects
Many applications air to ground
acquisition highway speed control industrial
inspection measure control control of
environnement ...
3Content
- Introduction
- Detection of discontinuities
- Similarity
4Two points of view
Based on basic properties of gray level values
Discontinuity
Similarity
partition
partition
Based on abrupt changes in gray levels lines -
edges
Thresholding, region growing, region splitting
and merging
5Example
similarities
discontinuities
Satellite image of marseille
61. Detection of discontinuities
Three basic types of discontinuities points,
lines, edges
Common way run a mask through the image. Sum
of products of the coefficients with the gray
levels contained in the region encompassed by
the mask
filtering
Gray level
Mask coefficient
71.1. Point detection
Measure of the weighted difference between the
center point and its neighbors
HP filter threshold
Point mask
T non negative threshold value
Mask is a Modelisation of a point
81.2. Line detection
H
45
V
-45
Line masks
If the H mask is moved around an image it would
respond more strongly to lines oriented
horizontaly
Ex try it with a background  1 and a line
with value  10Â
For a pixel position, if RigtRj for all i?j
that point is said to be more likely associated
with a line in direction of mask i
More general template matching correlation
between signal and filters (masks, forms)
91.3. Edge detection
Detection of discontinuities in images, in gray
levels
EDGE boundary between 2 regions with relatively
distinct gray levels. (non homogeneous)
Model
e
h
lenght
e
J
h
width
L
Edge high frequencies
Realistic case
10TWO STEPS 1
?
Operator derivators first derivative seco
nd derivative Pb of noise derivation
enhance noise local derivative
operator Thresholding Edge linking
?
?
11Example
Image
First derivative
20
40
60
Sign position
80
100
120
20
40
60
80
100
120
Profile of horizontal line
Second derivative
200
180
160
Position zero crossing
140
120
100
0
20
40
60
80
100
120
140
12Gradient
At position (x,y) of f(x,y)
vector
2 images
magnitude
or
for hardware
1 image
direction
1 image
Rem Sobel provides both - differencing -
smoothing effect !
Rem derivatives may be implemented in digital
form in several ways
13Example
X
Y
14Implementation
-1 1
approximation
H1
H2
-1 1
Other possibilities
filtering
With noise attenuation smooth in ? direction of
derivation
15Examples of filters
2x2 filters
H1
Roberts
H2
3x3 filters
H1
H2
C1 Prewitt C2 Sobel
Mean 0
16Gradient template
Simple, general noise sensitivity threshold
problem
Edge direction
Gradient direction
Image of gradient world of mountains and ridges
17Threshold
T value ?
I
T1
T2
G(I)
T1 --gt only one edge T2 --gt two edges but edge 1
is large
See also zero crossing
18Algorithm
- 1 convolve image by filters
- 2 calculate magnitude
- 3 threshold
- S(x,y) 1 if G(x,y)?t 0 elsewere
- 4 edge linking
Remarks simple, general, sensibility to
noise choice of t thickness of egdes 2 filters!
19Laplacian
At position (x,y) of f(x,y)
1 image
In digital case
Zi image intensities
1 filter ! ?Coefs0 HP
20Laplacian
Find location (not direction) of edges using a
zero crossing property sign
Properties easy to implement edges thickness
1 pixel robust detect every change of
intensity too much sensitive to noise produces
double edges seldom used in practice
Gaussian filter
Input image
Improvement Laplacian of 2D Gaussian function
21Laplacian of gaussian
Using the properties
2nd derivative of smoothed version of f(x,y)
s2
r
22Comparison
23Different filters
24(No Transcript)
251.c Optimal detection
Model of edge
Heaviside function
White noise
filtering
Objective find antisymetric function f such that
Is maximum in Xo (edge position) under
constraints
26S/B max
Good detection
L max
Good localisation
1 response for 1 edge, max distance between pics
No false alarm
Canny find f / Sl max
27Canny proposed
1D
k0,51 Sl 0,92
continuous case
Deriche proposed (1986 INRIA)
if w0
Difficult to implement or use of IIR(recursive
filters Hysteresis, threshold ----gt Wavelets
Shen
28can(-(x)./s.2).exp((-x.2)/(2s.2)) deriche-
2.exp(-abs(x)).sin(x) shen-2sign(x).exp(-abs
(x))
Shen
Canny
Deriche
29Edge linking
Ideally previous technics yield pixel lying on
the boundary between regions In practice set of
pixels seldom characterizes a boundary
completely (because of noise) breaks in the
boundary
?
Local processing Global processing
?
Hough transform
30EL local processing
Simple approach for linking edges is to analyse
characteristics of pixels in a small neighborhood
3x3, 5x5 for all (x,y) that has undergone edge
detection all points that are similar are
linked 1 strenght of response of gradient
operator 2 direction of the gradient
(x,y) (x ,y ) in the same neighborhood if
?
Tgt0
?
angle
Angle threshold
Rem direction of the edge at (x,y) is ? to the
direction of gradient vector
31Example of ellp
Sobel Tgt25, a15
Goal find the licence plate
32Global processing
Hough transform
A straight line at a distance s and orientation
? can be represented by
b
a
Hough transform of this line is just a point in
the (s, ?) plane
s
y
a
.
s
?
?
x
b
All the points on this line map into a single
point
From chosen quantized values of s and ? map each
boundary points (xi,yi) into (s, ?) space and
count C(s, ?)
Max of C(s, ?) gives the different straight lines
segments
33Example
34Difficulties if out of model
Sobel
Optimal filters
Stochastic
35Chain codes
Pixels --gt Codes Chains
Direction vectors between successive boundary
pixels are encoded
1
2
3
4
0
5
6
7
1/ start at any boundary pixel A 2/ find the
nearest edge pixel and code its orientation. In
case of tie, choose the one with largest (or
smallest) code value. 3/ continue until there are
no more boundary pixels
36Example
y
Theta code 7 111 6 110 0 000 1 001 0 000 6 110 5 1
01 5 101 4 100 3 011 2 010 4 100 2 010 1 001
t
?
x
?
t
A(x,y)
Generalized chain coding
372. Region based segmentation
Objective partition image into regions
- Basic formulaelet R entire image
regionPartition R into n subregions R1,R2, , Rn
such that - ?RiR
- Ri is a connected region
- Ri?Rj? for all i and j i?j
- P(Ri)true for i1,2,,n and
- P(Ri ? Rj)false for i?j
Segmentation is complete
Regions are disjoints
LOGICAL PREDICATE exsame intensity
382. Similarities
Thresholding Region oriented (region
splitting-merging, agregation)
2.1
Hyp gray level histogram of an image composed
of light objects on a dark background (2
dominant modes)
Frequency
Pixel values
T1 T2
T
1
One obvious way to extract objects is to select a
thresthold T
0
39Optimal thresholding
Suppose that an image contains 2 values
gaussian noise
A priori proba of the two levels
Global pdf
Zone 2 pdf
Zone 1 pdf
Hyp dark region background 1 bright
region objects 2
T ?
40Now pb of error problem of classifying object
points as background point
and
Overall prob error
Find T value for which this error is minimal
Differentiating E(T) with respect to T and
equating result to 0)
41For gaussian density, taking logarithm,
if
And if
42Example
43Region splitting and merging
- Subdivide an image initially into a set of
arbitrary disjointed regions - and then
- MERGE and/or SPLIT the regions in an attempt to
satisfy previously defined constraints
Ex quadtree
44Quadtree
- Split into 4 disjoint quadrants any regionRi
where P(Ri)False - Merge any adjacent regions Rj and Rk for which
P(Rj?Rk) TRUE - Stop when no further merging or splitting is
possible
R
Leaf/branch
R1
R2
R1
R2
R3
R4
R42
R41
R3
R41
R42
R43
R44
R44
R43
quadtree
partition
45Example
4 steps
result
46Region growing pixel agregation
- Procedure that groups pixels or subregions into
larger regions - 1) start with a set of seeds pts
- 2) grow region by appending to each seed those
neighboring pixels that have similar properties
(gray level, stats, )
47Example
T3
2 seeds
T8
R1 associated to s1 R2 associated to s2
Property zi-sjltT
48- Difficulties
- selection of initial seeds military images with
targets - criteria choice histogram, a priori info
- stopping rule
49Snakes
50End
Thank you for your attention