Upload
uriah-farmer
View
43
Download
0
Tags:
Embed Size (px)
DESCRIPTION
Data Structures and Image Segmentation. Luc Brun L.E.R.I., Reims University, France and Walter Kropatsch Vienna Univ. of Technology, Austria. Segmentation. Segmentation: Partition of the image into homogeneous connected components. S 1. S 2. S 5. S 4. S 3. Segmentation. Problems - PowerPoint PPT Presentation
Citation preview
Data Structures and Image Segmentation
Luc BrunL.E.R.I., Reims University, France
and Walter Kropatsch
Vienna Univ. of Technology, Austria
Segmentation
• Segmentation: Partition of the image into homogeneous connected components
falseSSPadjSS
jinji
trueSPniconnectedisSni
SX
jiji
i
i
n
ii
2
1
,...,1,)4
,...,1)3,...,1)2
)1 S1 S2
S3S4
S5
Segmentation
• Problems– Huge amount of data– Homogeneity:
• Resolution/Context dependent
• Needs– Massive parallelism
– Hierarchy
Contents of the talk
• Hierarchical Data Structures
• Combinatorial Maps
• Combinatorial Pyramids
Regular Pyramids
Matrix-Pyramids
• Stack of images with progressively reduced resolution
Level 0
Level 1Level 2
2x2/4 Pyramid
Level 3
M-Pyramids
• M-Pyramid NxN/q (Here 2x2/4)– NxN : Reduction window. Pixels used to
compute father’s value (usually low pass filter)
– q : Reduction factor. Ratio between the size of two successive images.
– Receptive field: set of children in the base level
M-Pyramids
• NxN/q=1: Non overlapping pyramid without hole (eg. 2x2/4)
• NxN/q<1: Holed Pyramid.
• NxN/q>1: Overlapping pyramid
Regular Pyramids
• Advantages(Bister)– makes the processes independent of the
resolution….• Drawbacks(Bister) : Rigidity
– Regular Grid– Fixed reduction window– Fixed decimation ratio
Irregular Pyramids
• Stack of successively reduced graphs
Irregular Pyramids [Mee89,MMR91,JM92]
• From G=(V,E) to the reduced graph G’=(V’,E’)– Selection of a set of surviving vertices V’V
– Child Parent link Partition of V
– Definition of E’
• Selection of Roots
Stochastic Pyramids
• V’ : Maximum Independent Set
– maximum of• a random variable
– [Mee89,MMR91]
• a criteria of interest– [JM92]
EvvVvVVv ),'(''' EvvVvv ','', 2
Stochastic Pyramids
• Child-Parent link :
– maximum of• a random variable
– [Mee89,MMR91]
• a similarity measure– [JM92]
1 5 10 8
6 20 9 6
15 11 3 9
13 7 10 21
EvvVvVVv ),'('''
Stochastic Pyramids
• Selection of surviving edges E’– Two father are joint if they have adjacent
children
Stochastic Pyramids
• Selection of Roots:
– Restriction of the decimation process by a class membership function [MMR91]
– contrast measure with legitimate father exceed a threshold [JM92]
Stochastic Pyramid [MMR91]
• Restriction of the decimation process : Class membership function
otherwizemergemayvvif
vv
E
0,1
),(
1,021
21
Stochastic Pyramids
• Advantages– Purely local Processes [Mee89]– Each root corresponds to a connected
region[MMR91]• Drawback
– Rough description of the partition
Formal DefinitionsEdge Contraction
Identify both vertices
Remove the contracted edge
Given an edge to be contracted
Formal DefinitionDual Graphs
• Two graphs encoding relationships between regions and segments
Formal DefinitionDual Graphs
• Two graphs encoding relationships between regions and segments
Dual Graphs
• Advantages (Kropatsch)[Kro96]– Encode features of both vertices and faces
• Drawbacks [BK00]– Requires to store and to update two data
structures• Contraction in G Removal in G• Removal in G Contraction in G
Decimation parameter
• Given G=(V,E), a decimation parameter (S,N) is defined by (Kropatsch)[WK94]:– a set of surviving vertices SV– a set of non surviving edges NE
• Every non surviving vertex is connected to a surviving one in a unique way:
NsvSsSVv ),(:!
Example of Decimation: S:N
Decimation parameters
• Characterisation of non relevant edges(1/2)
d°f = 2
Decimation parameters
• Characterisation of non relevant edges(2/2)
d°f = 1
Decimation Parameter
• Dual face contraction– remove all faces with a degree less than 3
Decimation Parameter
• Edge contraction: Decimation parameter (S,N) – Contractions in G– Removals in G
• Dual face contraction : Dual Decimation parameter– Contractions in G– Removals in G
Decimation parameter
Characterisation of redundant edges requires the dual graph
Dual graph data structure (G,G)
Decimation Parameter
• Advantages– Better description of the partition
• Drawbacks– Low decimation Ratio
Contraction Kernels
Given G=(V,E), a Contraction kernel (S,N) is defined by:– a set of surviving vertices SV– a set of non surviving edges NE
Such that:– (V,N) is a forest of (V,E)– Surviving vertices S are the roots of the trees
Contraction kernels
• Successive decimation parameters form a contraction kernel
Example of Contraction Kernel: S:N
, ,
Example of Contraction kernel
• Removal of redundant edges: Dual contraction kernel
Hierarchical Data Structures / Combinatorial Maps
• M-Pyramids•Overlapping Pyramids• Stochastic Pyramids• Adaptive Pyramids• Decimation parameter• Contraction kernel
Combinatorial Maps Definition
• G=(V,E) G=(D,,)– decompose each edge into two half-
edges(darts) :
2
3-3 4
-4
5
-5
-2
6-6
1
-1
bbb 6,...,1,1,...,6 6,65,54,43,32,21,1
- : edge encoding
D ={-6,…,-1,1,…,6}
Combinatorial Maps Definition
• G=(D,, ) : vertex encoding
)6,2,1)(5,6,4)(5,4,3)(2,3,1(
*(1)=(1,*(1)=(1,3*(1)=(1,3,2)
12
-1
3-3 4
-4
5
-5
-2
6-6
Combinatorial MapsProperties
• Computation of the dual graph :– G=(D,,) G=(D, = , )
• The order defined on induces an order on
)5,4)(2,3,5,6)(6,4,3,1)(2,1(
*(-1)=(-1,*(-1)=(-1,3*(-1)=(-1,3,4*(-1)=(-1,3,4,6)
1
5-5 -4
-3
-6 6
2
-2
-1
4
3
Combinatorial MapsProperties
• Computation of the dual graph :– G=(D,,) G=(D, = , )
)5,4)(2,3,5,6)(6,4,3,1)(2,1(
*(-1)=(-1,*(-1)=(-1,3*(-1)=(-1,3,4*(-1)=(-1,3,4,6)
1
-1
2
3-3 4
-4
5
-5-2
6-6
Combinatorial MapsProperties
• Summary– The darts are ordered around each vertex and
face• The boundary of each face is ordered • The set of regions which surround an other one is
ordered– The dual graph may be implicitly encoded– Combinatorial maps may be extended to higher
dimensions (Lienhardt)[Lie89]
Combinatorial Maps/Combinatorial Pyramids
• Combinatorial Maps•Computation of Dual Graphs•Combinatorial Maps properties•Discrete Maps
[Bru99]http://www.univ-st-etienne.fr/iupvis/color/Ecole-Ete/Brun.ppt
Removal operation
• G=(D,, )– dD such that d is not a bridge
• G’=G\ *(d)=(D’, ’, )
dddd
ddddDd
1
1
11
''
''','
d -d
d1
d d 1
d
Removal Operation
• Example-1
3-3 4
-4
5
-5
-2
6-6
12
-1
3-3 4
-4
-2
6-6
12
456'354'
'''6,4'
ddDd
d=5
Contraction operations
• G=(D,, )– dD such that d is not a self-loop
• G’=G/*(d)=(D’, ’, )
dddd
ddddDd
1
1
11
''
''','
d -d
d1
d d 1
d
d d 1
d d1
Contraction operations
• Preservation of the orientation
1
2
3
4
d
c
b
a
1
2
3
4
d
c
b
a
Basic operationsImportant Property
-1
3-3 4
-4
-2
6-6
12
-4
-3
-6 6
2
-2
-1
4
3
-1
3-3
4
-4
5
-5
-2
6-6
12
d=5
d=5
removal
contraction
• The dual graph is implicitly updated
1
5-5 -4
-3
-6 6
2
-2
-1
4
3
Contraction Kernel
• Given G=(D,, ), KD is a contraction kernel iff:– K is a forest of G
• Symmetric set of darts ((K)=K)• Each connected component is a tree
– Some surviving darts must remain• SD=D-K
Contraction Kernel
• Example1 2 3
4 5 6
7 8 9
10 11 12
13 14 15 16
17 18 19 20
21 22 23 24
K=
Contraction Kernel
• Example1 2 3
4 5 6
7 8 9
10 11 12
13 14 15 16
17 18 19 20
21 22 23 24
K= 10,21,17,13,1*
Contraction Kernel
• How to compute the contracted combinatorial map ?– What is the value of ’(-2) ?1 2
413 14 15
-2-1 2
4
13
1415
-2
13122' 2 12
Contraction Kernel
• How to compute the contracted combinatorial map ?– What is the value of ’(-2) ?1 2
4
13 14 15
-2-1
-13
17
7
2
414
15
-217
7
171322' 3
Contraction Kernel
• Connecting Walk– Given G=(D,, ) , KD and SD=D-K– If d SD, CW(d) is the minimal sequence of non
surviving darts between d and a surviving one.
• The connecting walks connect the surviving darts.
SDdNIpMinnwithddddCW
SDd p
n
*
1...)(
Contraction Kernel
• Connecting Walk1 2 3
4 5 6
7 8 9
10 11 12
13 14 15 16
17 18 19 20
21 22 23 24
-2-1
CW(-2)=-2.-1.13.17.21.10
Contraction Kernel
• CW(-2)=-2,-1,13,17,21,10
1 2 3
4 5 6
7 8 9
10 11 12
13 14 15 16
17 18 19 20
21 22 23 24
-2-1
2
3
5 6
8 9
11 12
15 16
19 20
23 24
-2
18
14
22
7
4
112' -11
-11
Contraction Kernel
• Construction of the contracted combinatorial map.– For each d in SD
• compute d’: last dart of CW(-d)’(-d)=(d’)’(d)=’(-d) = (d’)
3
11
2
5 6
8 9
12
15 16
19 20
23 24
-2
18
14
22
7
4
Extensions(1/2)
• Dual contraction kernel– Replace by
• Successive Contraction kernels with a same type– Concatenation of connecting walks
Extensions(2/2)
• Successive contraction kernels with different types– From connecting walks to Connecting Dart
Sequences • Label Pyramids:
– for each dart encode• Its maximum level in the pyramid (life time)• How its disappear (contracted or removed)
Conclusion
• Graphs encode efficiently topological features. Combinatorial maps:– Encode the orientation – Provide an implicit encoding of the dual– May be generalised to higher dimension
• Irregular Pyramids overcome the limitations of their regular ancestors
Combinatorial Pyramids