Title: Crosssection topology Michel Couprie
1Cross-section topologyMichel Couprie
- Contributors
- G. Bertrand
- M. Couprie
- J.C. Everat (PhD)
- F.N. Bezerra (PhD)
2Functions of 2 variables
3On hills and dales
Cayley 1859, Maxwell 1870
4BINARY IMAGES (SETS)
5Topology preservation - notion of simple point
- A topology-preserving transformation preserves
the connected components of both X and X
6Simple point
Set X (black points)
- Definition (2D) A point p is simple (for X) if
its modification (addition to X, withdrawal from
X) does not change the number of connected
components of X and X
7Simple point local characterization ?
8Simple point local characterization ?
9Connectivity numbers
- T(p)number of Connected Components of (X - p)
N(p) where N(p)8-neighborhood of p - T(p)number of Connected Components of (X - p)
N(p) - Characterization of simple points (local) p is
simple iff T(p) 1 and T(p) 1
U
U
T2,T2
T1,T1
T1,T0
T0,T1
Isolated point
Interior point
10Homotopy
- We say that X and Y are homotopic (they have the
same topology) if Y may be obtained from X by
sequential addition or deletion of simple points
11Homotopy illustration
12GRAYSCALE IMAGES (FUNCTIONS)
13Homotopy of functions
- Basic idea consider the topology of each
cross-section (threshold) of a function - Given a function F (Z2 Z) and k in Z, we
define the cross-section Fk as the set of points
p of Z2 such that F(p) ? k - We say that two functions F and G are homotopic
if, for every k in Z, Fk and Gk are homotopic (in
the binary sense)Beucher 1990
14Homotopy of functions
y
y
F(x,y)
G(x,y)
x
x
15Homotopy of functions
y
y
F(x,y)
G(x,y)
x
x
16Homotopy of functions
y
y
F(x,y)
G(x,y)
x
x
17Destructible point Bertrand 1997
- Definition a point p is destructible (for F) if
it is simple for Fk, with k F(p) - Property p is destructible iff its value may be
lowered by one without changing the topology of
any cross-section - Definition a point p is constructible (for F) if
it is destructible for -F (duality)
18Destructible point examples
y
F(x,y)
x
F3
F2
F1
19Destructible point examples
y
F(x,y)
x
F3
F2
F1
20Destructible point examples
y
F(x,y)
x
F3
F2
F1
21Destructible point counter-examples
y
F(x,y)
x
F3
F2
F1
22Destructible point counter-examples
y
F(x,y)
x
F3
F2
F1
23Connectivity numbers
- N(p) q in N(p), F(q) ? F(p)
- T(p) number of Conn. Comp. of N(p) .
- N--(p) q in N(p), F(q) lt F(p)
- T--(p) number of Conn. Comp. of N--(p) .
- N, T, N-, T- similar
- If an adjacency relation (eg. 4) is chosen for
T, T, then the other adjacency (8) must be
used for T-, T--
24Destructible point local characterization
- The point p is destructible if and only if
T(p) 1 and T--(p) 1
1
2
1
1
2
8
1
2
1
9
5
1
9
5
8
1
5
1
9
9
9
9
1
1
2
2
1
T 1
T 2
T 0
T-- 1
T-- 2
T-- 1
destructible
non-destructible
non-destructible
25Classification of pointsBertrand 97
- The local configuration of a point p corresponds
to exactly one of the eleven following cases
- well (T- 0)
- minimal constructible(T T- 1, T-- 0)
- minimal convergent(T gt 1, T-- 0)
- constructible divergent (T T- 1, T-- gt 1)
- peak (T 0)
- maximal destructible(T T-- 1, T 0)
- maximal divergent(T-- gt 1, T 0)
- destructible convergent (T T-- 1, T gt 1)
- interior (T T-- 0)
- simple side (T T-- T T- 1)
- saddle (T gt 1, T-- gt 1)
26Classification of points examples
1
2
1
1
2
8
5
5
5
9
5
1
9
5
8
5
5
5
9
9
9
9
1
1
5
5
5
Simple side
Saddle
Interior
1
2
1
1
2
1
1
2
1
2
1
2
1
5
1
9
9
1
9
9
9
5
9
9
2
2
1
9
9
1
1
1
1
9
9
5
Peak
Maximaldestructible
Maximaldivergent
Destructibleconvergent
27Grayscale skeletons
- We say that G is a skeleton of F if G may be
obtained from F by sequential lowering of
destructible points - If G is a skeleton of F and if G contains no
destructible point, then we say that G is an
ultimate skeleton of F
28Ultimate skeleton 1D example
29Ultimate skeleton illustration
30Ultimate skeleton illustration
31Ultimate skeleton 2D example
Original image F
Ultimate skeleton G of F
Regional minima of F (white)
Regional minima of G (white)
32Thinness
- In 1D, the set of non-minimal points of an
ultimate skeleton is thin (a set X is thin if
it contains no interior point). Is it always true
in 2D ? - The answer is no, as shown by the following
counter-examples.
33Thinness
3
3
3
3
3
3
3
3
3
1
1
1
1
3
3
3
3
3
1
1
1
1
1
1
1
1
1
1
1
3
3
3
3
3
1
1
1
1
1
1
1
1
1
3
3
3
1
3
3
2
3
3
3
3
3
3
3
3
3
1
1
1
1
1
1
1
1
1
3
3
3
1
3
3
1
1
1
1
1
1
1
1
1
1
3
3
3
3
3
1
1
1
1
1
1
1
1
1
1
3
3
3
3
3
1
1
1
1
1
1
3
3
3
3
3
3
3
3
3
34Thinness
3
3
3
3
3
3
3
3
3
3
3
3
3
3
1
1
1
1
1
1
1
1
1
1
1
1
1
1
3
3
3
3
3
3
3
3
2
2
1
1
1
1
1
1
1
1
1
1
1
3
3
3
3
3
3
3
2
1
2
1
1
1
1
1
1
1
1
1
3
3
3
3
3
3
2
2
1
2
1
1
1
1
1
1
1
1
1
3
3
3
3
3
3
2
2
1
2
2
1
1
1
1
1
1
1
1
1
3
3
3
3
3
1
3
2
1
1
1
1
1
1
3
3
3
3
3
3
3
3
3
3
3
3
1
1
1
1
1
1
1
1
1
1
1
1
1
3
3
2
3
3
1
1
1
1
1
1
1
1
1
1
2
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
35Basic algorithm
Basic ultimate grayscale thinning(F) Repeat until
stability Select a destructible point p for F
F(p) F(p) 1 Inefficient O(n.g), where
n is the number of pixels g is the maximum gray
level
36Lowest is best
- The central point is destructible
it can thus be lowered down to 5
without changing the topology. - It can obviously be lowered more
- down to 3 (since there is no value between 6 and
3 in the neighborhood) - down to 1 (we can check that once at level 3, the
point is still destructible)
3
1
1
9
6
1
9
9
9
37Two special values
- If p is destructible, we define
- ?-(p)highest value strictly lower than F(p)
in the neighborhood of p - ?-(p)lowest value down to which F(p) can
be lowered without changing the topology
Here ?-(p)3 ?-(p)1
3
1
1
9
6
1
9
9
9
38Better but not yet good
- If we replace F(p) F(p) 1 in the basic
algorithm by F(p) ?-(p), we get a faster
algorithm. But its complexity is still bad. Let
us show why
39Fast algorithm
Fast ultimate grayscale thinning(F) Repeat until
stability Select a destructible point p for F
of minimal graylevel F(p)
?-(p) - Can be efficiently implemented thanks to
a hierarchical queue- Execution time roughly
proportional to n (number of pixels)
40Complexity analysis open problem
3
3
3
3
3
3
3
3
3
3
3
3
3
3
1
1
1
1
1
1
1
1
1
1
1
1
1
1
3
3
1
1
1
1
1
1
1
1
1
1
1
3
3
4
4
4
1
1
1
1
1
1
1
1
1
3
3
4
4
1
1
1
1
1
1
1
1
1
3
3
4
4
1
1
1
1
1
1
1
1
1
3
3
4
4
1
1
1
1
1
1
4
3
3
1
1
1
1
4
3
3
2
4
1
1
1
1
1
1
1
1
1
1
1
1
1
1
2
3
3
1
1
1
1
1
1
1
1
1
1
1
1
2
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
3
41Non-homotopic operators
- Topology preservation strong restriction
over segmentation
- Our goal Change topology in a controlled way
regional minima ? ? segmented regions
42Altering the topology
- Control over topology modification.
- Criteria
- Local contrast notion of ?-skeleton
- Regional contrast regularization
- Size topological filtering
- Topology crest restoration
43?-destructible point
not ?-destructible
?-destructible
?
?
?
Illustration (1D profile of a 2D image)
44?-destructible point
- Definition
- Let X be a set of points, we define
F-(X)minF(p), p in X - Let ? be a positive integer
- A destructible point p is ?-destructible
- A k-divergent point p is ?-destructible if at
least k-1 connected components ci (i1,,k-1) of
N--(p) are such that F(p) - F-(ci) ? ?
45?-skeleton examples
46Topological filtering
C reconstruction of B under A
B thinning peak deletion
47Topological filtering (cont.)
Original image
48Topological filtering (cont.)
Homotopic thinning (n steps)
49Topological filtering (cont.)
Peak deletion
50Topological filtering (cont.)
Homotopic reconstruction
51Topological filtering (cont.)
Final result
52Topological filtering (cont.)
- Comparison with other approaches (median filter,
morphological filters) better preservation of
thin and elongated features
53Crest restoration
Thinning thresholding
Gradient
Original image
54Crest restoration (cont.)
- p is a separating point if
- there is k such that T(p, Fk)2
- p is extensible if
- p is a separating point, and
- p is a constructible or saddle point, and
- there is a point q in its neighborhood that is an
end point or an isolated point for Fk, with
kF(p)1
50
0
0
50
240
240
240
50
50
0
60
0
50
240
50
50
60
40
0
50
240
50
50
90
40
40
60
50
50
50
90
60
40
0
50
50
50
50
0
90
0
50
50
50
90
0
0
0
50
50
50
90
0
0
0
50
50
50
0
0
0
50
240
50
50
0
0
0
50
240
50
50
0
0
0
50
240
50
0
0
50
240
240
240
55Crest restoration (cont.)
- p is a separating point if
- there is k such that T(p, Fk)2
- p is extensible if
- p is a separating point, and
- p is a constructible or saddle point, and
- there is a point q in its neighborhood that is an
end point or an isolated point for Fk, with
kF(p)1
50
0
0
50
240
240
240
50
50
0
60
0
50
240
50
50
60
40
0
50
240
50
50
90
40
40
60
50
50
50
90
60
40
0
50
50
50
50
0
90
0
50
50
50
90
0
0
0
50
50
50
90
0
0
0
50
50
50
0
0
0
50
240
50
50
0
0
0
50
240
50
50
0
0
0
50
240
50
0
0
50
240
240
240
56Crest restoration (cont.)
50
0
0
50
50
0
0
50
240
240
240
240
240
240
50
0
0
50
240
240
240
50
50
0
60
0
50
50
50
0
60
0
50
240
240
50
50
0
60
0
50
240
50
60
0
50
50
40
50
60
0
50
50
40
240
240
50
60
0
50
50
40
240
50
40
60
50
50
40
50
40
60
50
50
40
240
240
50
40
60
50
50
40
240
50
60
0
50
50
40
50
60
0
50
90
50
40
50
60
0
50
50
40
240
240
50
50
50
0
0
50
50
50
50
0
90
0
50
90
50
50
50
0
0
50
240
50
50
0
0
50
0
240
50
50
0
0
50
90
0
50
50
0
0
50
0
240
50
0
0
50
50
0
50
0
0
50
50
0
240
240
50
0
0
50
50
0
240
50
0
0
50
50
0
50
0
0
50
50
0
240
240
50
0
0
50
50
0
240
50
50
0
0
0
50
50
50
0
0
0
50
240
240
50
50
0
0
0
50
240
50
50
0
0
0
50
50
50
0
0
0
50
240
240
50
50
0
0
0
50
240
50
0
0
50
50
0
0
50
240
240
240
240
240
240
50
0
0
50
240
240
240
57(No Transcript)
58Crest Restoration result
Significant crests have been highlighted (in
green)
Before crest restoration
After crest restoration
59Crest restoration (cont.)
Gradient
60Crest restoration (cont.)
Thinning crest restoration thresholding (1
parameter)
Thinning hysteresis thresholding (2 parameters)
Thinning hysteresis thresholding (2 parameters)
61Conclusion
- Strict preservation of both topological and
grayscale information - Combining topology-preserving and
topology-altering operators - Control based on several criteria (contrast,
size, topology)
62Perspectives
- Study of complexity
- Extension to 3D
- Topology in orders (G. Bertrand)
63References
- G. Bertrand, J. C. Everat and M. Couprie "Image
segmentation through operators based upon
topology", Journal of Electronic Imaging, Vol. 6,
No. 4, pp. 395-405, 1997. - M. Couprie, F.N. Bezerra, Gilles Bertrand
"Topological operators for grayscale image
processing", Journal of Electronic Imaging,
Vol. 10, No. 4, pp. 1003-1015, 2001. - www.esiee.fr/coupriem/Sdi/publis.html