159
1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France www.esiee.fr/a2si

1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

Embed Size (px)

Citation preview

Page 1: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

1

Digital topology andcross-section topology for grayscale image processing

M. Couprie A2SI lab., ESIEEMarne-la-Vallée, Francewww.esiee.fr/a2si

Page 2: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

2

What is topology ?

« A topologist is interested in those properties of a thing that, while they are in a sense geometrical, are the most permanent- the ones that will survive distortion and stretching. »

Stephen Barr,"Experiments in Topology",1964

Page 3: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

3

Aims of this talk

Present the main notions of digital topologyShow their usefulness in image processing

applicationsStudy some topological properties of digital

grayscale images (ie. functions from Zn to Z)Topology-preserving image transformsTopology-altering image transformsApplications to image processing (filtering,

segmentation…)

Page 4: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

4

Some milestones

J.C. Maxwell (1870): ‘On hills and dales ’A. Rosenfeld (1970’s): digital topologyA. Rosenfeld (1980’s): fuzzy digital

topologyS. Beucher (1990): definition of

homotopy between grayscale imagesG. Bertrand (1995): cross-section

topology

Page 5: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

5

Contributors

Gilles BertrandMichel CouprieLaurent PerrotonZouina Aktouf (Ph.D student)Francisco Nivando Bezerra (Ph.D

student) Xavier Daragon (Ph.D student)Petr Dokládal (Ph.D student)Jean-Christophe Everat (Ph.D student)

Page 6: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

6

Outline of the talk

Digital topology for binary imagesApplications to graylevel image

processing

Cross-section topology for grayscale images

Topology-altering transforms, applications

Part 1

Part 2

Page 7: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

7

Digital topology for binary images

8-adjacency, 4-adjacency

in black: X (object)

in white: X (background)

.

path, connected components

Page 8: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

8

Digital topology for binary images

8-adjacency, 4-adjacency

in black: X (object)

in white: X (background)

.

path, connected components

Page 9: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

9

8-adjacency, 4-adjacency

in black: X (object)

in white: X (background)

.

path, connected components

Digital topology for binary images

Page 10: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

10

Digital topology for binary images

8-adjacency, 4-adjacency

in black: X (object)

in white: X (background)

.

path, connected components

Page 11: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

11

More examples

Black:4, white:8 Black:8, white:4

3 1 2 2

Page 12: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

12

Jordan property

Any simple closed curve divides the plane into 2 connected components.

Page 13: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

13

Jordan property (cont.)

A subset X of Z2 is a simple closed curve if each point x of X has exactly two neighbors in X

4-curve 8-curve

Page 14: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

14

Jordan property (cont.)

A subset X of Z2 is a simple closed curve if each point x of X has exactly two neighbors in X

Not a 4-curve

Page 15: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

15

Jordan property (cont.)

A subset X of Z2 is a simple closed curve if each point x of X has exactly two neighbors in X

Not an 8-curve

Page 16: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

16

Jordan property (cont.)

The Jordan property does no hold if X and its complement have the same adjacency

8-adjacency 4-adjacency

Page 17: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

17

Topology preservation - notion of simple point

A topology-preserving transform must preserve the number of connected components of both X and X.

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.

Page 18: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

18

Simple point: examples

Set X (black points)

Page 19: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

19

Simple point: examples

Simple point of X

Page 20: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

20

Simple point: examples

Simple point of X

Page 21: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

21

Simple point: counter-examples

Non-simple point (background component creation if deleted)

Page 22: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

22

Simple point: counter-examples

Non-simple point (component splitting if deleted)

Page 23: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

23

Simple point: parallel deletion

Deleting simple points in parallel may change the topology

Page 24: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

24

Simple point: local characterization ?

Page 25: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

25

Simple point: local characterization ?

Page 26: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

26

Connectivity 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)A

Characterization of simple points (local): p is simple iff T(p) = 1 and T(p) = 1 A

T=2,T=2 T=1,T=1 T=1,T=0 T=0,T=1

U

U

Interior point Isolated point

Page 27: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

27

Skeletons

We say that Y is a skeleton of X if Y may be obtained from X by sequential deletion of simple points

If Y is a skeleton of X and if Y contains no simple point, then we say that Y is an ultimate skeleton of X

If Y is a skeleton of X and if Y contains only non-simple points and ‘end points’, then we say that Y is a curve skeleton of X

Page 28: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

28

End points

We say that p is an end point for X if (X - {p}) N(p) contains exactly one point

End point End point (8) Non-end point Non-end point

U

Page 29: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

29

Skeletons (examples)

Original image Curve skeleton Ultimate skeleton

End points

Page 30: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

30

Homotopy

We say that X and Y are homotopic (i.e. they have the same topology) if Y may be obtained from X by sequential addition or deletion of simple points

Page 31: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

31

Basic thinning algorithms

Ultimate thinning(X)Repeat until stability:

Select a simple point p of XRemove p from X

Curve thinning(X)Repeat until stability:

Select a simple, non-end point p of XRemove p from X

Page 32: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

32

Centering skeletons

Page 33: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

33

Breadth-first thinning

Simple pointsdetectedduring the 1stiterationCandidatesfor the 2nditeration

Page 34: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

34

Breadth-first thinning

Breadth-first ultimate thinning(X)T := X ; T’ := Repeat until stability

While p T do T := T \ {p} If p is a simple point for X then

X := X \ {p} For all q neighbour of p, q X,

do T’ := T’ {q}

T := T’ ; T’ :=

Page 35: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

35

Directional thinning

(only in 2D)

NorthSouthEastWest

Page 36: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

36

Parallel directional algorithm

In 2D, simple and non-end points of the same type (N,S,E,W) can be removed in parallel

Directional Curve thinning(X) Repeat until stability:

For dir =N,S,E,W Let Y be the set of all simple, non-end points of X of type dir X = X \ Y

Page 37: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

37

Does not work in 3D

In 3D, there are 6 principal directions: N,S,E,W,Up,Down

Up

Page 38: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

38

Thinning guided by a distance map

Let X be a subset of Z2, the distance map DMX is defined by, for all point p:

DMX(p) = min{dist(p,q), q not in X}

where dist is a distance (e.g. city block, chessboard, Euclidean)

Page 39: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

39

Discrete distances

City block distance (d4)d4(p,q) = length of a shortest 4-

pathbetween p and q

Chessboard distance (d8)d8(p,q) = length of a shortest 8-

pathbetween p and q

Page 40: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

40

Discrete distance maps

1 11 1 1 111111111

11

11111111

11 1 11 1

1 111

11

22222222

22222222

2222

22 22

222233

3 3 3 3

3 3 3 333

33

44

44

22222222

2 2222222

2222

22 22

33 3

3

3 3 3 333

33

4 4

1 11 1 1 111111111

11

11111111

11 1 11 1

1 111

11

1 1

11

11

11

d4 d8

Page 41: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

41

Discrete and Euclidean distance maps

d8

d4de

Page 42: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

42

Thinning guided by a distance map: algorithm

Ultimate guided thinning(X)Compute the distance map DMX

Repeat until stability:Select a simple point p of X

such that DMX(p) is minimalRemove p from X

Curve guided thinning(X)Id., replace « simple » by « simple non end »

Page 43: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

43

Thinning guided by a distance map: results

d8

d4de

Page 44: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

44

The 3D case

A topology-preserving transform must preserve:

- number of connected components of X

- number of connected components of X

- number of « holes » (or « tunnels »)

Page 45: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

45

3D hole (tunnel)

Page 46: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

46

3D hole (tunnel)

Page 47: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

47

3D-skeletons

Originalobject

Surfaceskeleton

Curveskeleton

Ultimateskeleton

Page 48: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

48

Topological classification of points (G. Bertrand)

T=1,T=1 T=1,T=2 T=3,T=1(1D isthmus)(simple point) (2D isthmus)

Page 49: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

49

3D hole closing

G. BertrandZ. Aktouf (Ph. D)L. Perroton

Page 50: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

50

3D hole closing

Page 51: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

51

3D hole closing

Page 52: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

52

3D hole closing

T=2,T=1 (1D isthmus)

T=1,T=2 (2D isthmus)

Page 53: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

53

3D hole closing

Page 54: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

54

3D hole closing algorithm

Let X be an object and Y be a simply connected set containing X

We remove iteratively all points x of Y \ X such that T(x) = 1(i.e. simple points and 1D isthmus)

Page 55: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

55

3D hole closing

Page 56: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

56

3D hole closing using a distance map

The points are processed in an order depending on their distance from X (points far from X are selected first)

Page 57: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

57

3D hole closing using a distance map

Page 58: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

58

3D hole closing using a distance map

When a point p with T=2 is selected, its removal would create a hole. The value of the distance map for this point (DMX(p)) gives an information on the « size » of the corresponding hole in X.

We can decide to let a hole open or to close it according to this criterion.

Page 59: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

59

3D hole closing using a distance map

Page 60: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

60

3D hole closing: illustration

Page 61: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

61

3D hole closing: illustration

Page 62: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

62

3D hole closing: illustration

Page 63: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

63

Outline of the talk

Digital topology for binary imagesApplications to graylevel image

processing

Cross-section topology for grayscale images

Topology-altering transforms, applications

Part 1

Part 2

Page 64: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

64

Liver vascular system segmentation

Contrast-enhanced tomography scan of liver

(2-D cut from a 3-D image)

G. BertrandP. Dokladal (Ph. D)

Page 65: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

65

Intensity-guided skeletonization

Page 66: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

66

Segmentation results

Page 67: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

67

Skeleton Filtering (1)

Noisy image Noisy skeleton

Identification of relevant

components

Filtered skeleton

Filtering criterion based on minimum accepted meanluminosity of each skeleton segment.

Page 68: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

68

Skeleton Filtering (2)

Two criteria based on local information:

•mean luminosity

•amplitude difference

Filtering criterion based on detection of irrelevant end points

Page 69: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

69

Skeleton Filtering (results)

Non filtered Filtered

Page 70: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

70

Segmentation of the brain cortex

M. CouprieX. Daragon (PhD)

Basic assumption: the geometry of the brain is complex, but its topology is simple

Page 71: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

71

Segmentation of the brain cortex

Cortex (gray matter)

White matter

Cerebro-spinal fluid

Page 72: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

72

Segmentation of the brain cortex: main steps

Pre-segmentation

Extension to the cortex

White matter extraction

Cortex extraction

Page 73: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

73

Extraction of the white matter

Morphological closing with topological control

Page 74: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

74

Morphological closing with topological control

A: original image B: opening of Awith a small disc

C: ultimate skeletonof A in B

Page 75: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

75

Extension to the cortex

W.M.

W.M.

Page 76: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

76

Extension to the cortex: use of a distance map

Section of the 3D segmentation of the white matter

Section of its 3D distance map (limited to distances < 1cm)

Page 77: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

77

Constraint set: centers of maximal balls

Distance map (section)

Centers of maximal balls

A maximal ball (for a set X) is a ballincluded in X which is not included

in any other ball included in X.The set of the centers of maximal balls

for X can be computed fromthe distance map.

Page 78: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

78

Results (sections of 3D images)

Without constraint set With constraint set

Page 79: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

79

Results (3D view)

Without constraint set With constraint set

Page 80: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

80

Results (3D view)

White matter Cortex

Page 81: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

81

Conclusion (1st part)

Image simplification with topology preservation

Controled topology modificationBinary topological operators guided

by a distance map or by a grayscale image

Efficient implementations

Page 82: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

82

Outline of the talk

Digital topology for binary imagesApplications to graylevel image

processing

Cross-section topology for grayscale images

Topology-altering transforms, applications

Part 1

Part 2

Page 83: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

83

Cross-section topology

G. BertrandM. CouprieJ.C. Everat (PhD)F.N. Bezerra (PhD)

Page 84: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

84

Cross-section topology

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)

Page 85: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

85

Homotopy: an illustration

x

yF(x,y)

F3

F2

F1

x

G(x,y)

G3

G2

G1

y

Page 86: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

86

Destructible point(G. Bertrand)

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)

Page 87: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

87

Destructible point: examples

x

yF(x,y)

F3

F2

F1

Page 88: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

88

Destructible point: examples

x

yF(x,y)

F3

F2

F1

Page 89: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

89

Destructible point: counter-examples

x

yF(x,y)

F3

F2

F1

Page 90: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

90

Destructible point: counter-examples

x

yF(x,y)

F3

F2

F1

Componentdeleted

Componentsplitted

Backgroundcomponentcreated

Page 91: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

91

Connectivity 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) < 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--

Page 92: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

92

Connectivity numbers: examples

1 2 19 5 19 9 9

T+ = 1T-- = 1

1 2 89 5 89 1 1

T+ = 2T-- = 2

1 2 11 5 12 2 1

T+ = 0T-- = 1

Page 93: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

93

Destructible point: local characterization

Property: the point p is destructible iff T+(p) = 1 and T--(p) = 1

1 2 19 5 19 9 9

T+ = 1T-- = 1

1 2 89 5 89 1 1

T+ = 2T-- = 2

1 2 11 5 12 2 1

T+ = 0T-- = 1

destructible non-destructible non-destructible

Page 94: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

94

Classification of points(G. Bertrand)

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++ > 1, T-- = 0) constructible divergent

(T++ = T- = 1, T-- > 1)

peak (T+ = 0) maximal destructible

(T+ = T-- = 1, T++ = 0) maximal divergent

(T-- > 1, T++ = 0) destructible convergent

(T+ = T-- = 1, T++ > 1) interior (T++ = T-- = 0) simple side (T+ = T-- = T++ = T- =

1) saddle (T++ > 1, T-- > 1)

Page 95: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

95

Classification of points: examples

1 2 19 5 19 9 9

1 2 89 5 89 1 1

1 2 11 5 12 2 1

Simple side Saddle

Peak

1 2 19 9 19 9

1 29 9 9

1 1

1 2 15

Maximaldestructible

Maximaldivergent

Destructibleconvergent

5 5 55 5 55 5 5

Interior

1

2

199

995

Page 96: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

96

Grayscale 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

Page 97: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

97

Ultimate skeleton: 1D example

Page 98: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

98

Ultimate skeleton: illustration

Page 99: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

99

Ultimate skeleton: illustration

Page 100: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

100

Ultimate skeleton: 1D example

Regional minima

Page 101: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

101

Ultimate skeleton: 2D example

Original image F

Regionalminimaof F(white)

UltimateskeletonG of F

Regionalminimaof G(white)

Page 102: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

102

(

Page 103: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

103

Watersheds

Powerful segmentation operator from the field of Mathematical Morphology

Introduced as a tool for segmenting grayscale images by S. Beucher and C. Lantuejoul in the 70s

Efficient algorithms based on immersion simulation were proposed by L. Vincent, F. Meyer, P. Soille (and others) in the 90s

Page 104: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

104

Watersheds

Page 105: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

105

Watersheds: illustration

Page 106: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

106

)

Page 107: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

107

Ultimate skeleton vs. Watershed line

1 1 111 3

1 1 1

31 311

3 3

333

3

3 3 3 3

3

32

1 1 1

111 1 1 1 1 1 1 1 1

1111111

Ultimate skeleton(non-minimal points)

1 1 11 6 61 6 3

1 1 16 63

1 6 31 61

73 3

37 7

777 7 73

3

3

3 3 3 3

3

3

6 6 6

2 5666 6 6 6 6 6 6

66666

1 1 1

111 1 1 1 1 1 1 1 1

1111111

Watershed

3

3

3

3

1

1

3

3

3

3

1

1

3

3

3

3

6

5

6

1

1

3

3

3

3

6

5

6

1

1

6 66

6 6

66

7 7 777

7 7 7

6 6 6

666 6 6 6 6 6 6

66666

5

6

6

5

6

6

5

6 66

6 6

66

7 7 777

7 7 7

6 6 6

666 6 6 6 6 6 6

66666

5

6

6

5

6

6

5

6 66

6 6

66

7 7 777

7 7 7

6 6 6

666 6 6 6 6 6 6

66666

6

6

6

6

Page 108: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

108

Ultimate skeleton vs. Watershed line

1 1 11 6 61 6 1

1 1 16 61

1 6 11 61

71 1

17 7

777 7 71

1

1

1 1 1 1

1

1

6 6 6

2 6666 6 6 6 6 6 6

66666

1 1 1

111 1 1 1 1 1 1 1 1

1111111

1

1

1

1

6

6

6

1

1

1

1

1

1

6

6

6

1

1

6 66

6 6

66

7 7 777

7 7 7

6 6 6

666 6 6 6 6 6 6

66666

6

6

6

6A watershed point cannotbe characterized locally

Central point: belongsto the watershed line

Central point: does notbelong to the watershed line

Page 109: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

109

Thinness

In the previous examples, the set of non-minimal points of an ultimate skeleton was « thin » (a set X is thin if it contains no interior point). Is it always true ?

The answer is no, as shown by the following counter-examples.

Page 110: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

110

Thinness

11

31

3 3 3 3 3 3 3 31 1

111 1 1

13 3 3 3 3 3 3 3 3

3333 3

33

33

3 133

333

111 3 33 13 31 1 1 133 33 3

1 1 1 133 3 3 33 3 3 3 3 3 3 3 3

3 3 3 3 3 3 3 3 3

3 3 3 3 3 3 3 3 33333 3

33

33

333

333

3 333 333 33 333 3 3 3

3 3 3 3 3 3 3 3 3

3

1 1 1 1 11 11 1 1 1 1 1

1 1 11 1 11 1 11 1 1

1 1 11 1 11 1 11 1 1

3 3 3 3 3 33

333

333

3

333

333

3 3 3 3 3 3 3 3 3

3 3 3 3 3 3 3 3 3

322222

3 3 3 3 3 33

333

333

3

333

333

3 3 3 3 3 3 3 3 3

3 3 3 3 3 3 3 3 3

322222

2

Page 111: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

111

2 22

22 2

Thinness

1 1 1 1 11 11 1 1

1 1 11 1 11 11 1 1

1 1 1

1 1 11

11 1 1 1

1 1 1 1 11 1 1 1 111

1 1 11 1 1

11

1 1 11 1 11 1 11 1 11 1 11 1 1

1 11 1 1

1 11 1 1

3 3 3 3 3 3 3 3 33 3 3 3 3

3 3 3

33

333

33 3

33 3

32 2

2 2 22 2 22 2 2

222

3

333

33333 3 3 3 3 3 3 3 33 3 3 3

3

333

33333

3 3 3 3 3

3

3

3

333

133

333

3 3 3 3

22

22

221

11

3 3 3 3 3

3

3

3

333

33

333

3 3 3 3

2 2 22 22

22 2

2 2 2

2 22

22 2

3 3 3 3 3 3 3 3 33 3 3 3 3

3 3 3

33

333

33 3

33 3

3

2 2 22 2 22 2 2

222

3

333

33333 3 3 3 3 3 3 3 33 3 3 3

3

333

33333

2 2 22 2 22 2 2

2

Page 112: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

112

Basic 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

Page 113: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

113

Lowest 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 19 6 19 9 9

Page 114: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

114

Two 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

3 1 19 6 19 9 9

Here: -(p)=3

-(p)=1

Page 115: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

115

Better 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:

Page 116: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

116

Fast 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)

Page 117: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

117

Complexity analysis: open problem

1 1 1 1 11 11 1 1

1 1 11 1 11 11 1 1

1 1 1

1 1 11

11 1 1 1

1 1 1 1 11 1 1 1 111

1 1 11 1 1

11

1 1 11 1 11 1 11 1 11 1 11 1 1

1 11 1 1

1 11 1 1

3 3 3 3 3 3 3 3 33 3 3 3 3

422

3

333

33333 3 3 3 3 3 3 3 33 3 3 3

3

333

33333

1 11

1 11

33

333

333

34

4 4 4444

444

3

2 2 22 2 22 2 2

3241

1 1 1

1 1 11

1 1 1

Page 118: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

118

Outline of the talk

Digital topology for binary imagesApplications to graylevel image

processing

Cross-section topology for grayscale images

Topology-altering transforms, applications

Part 1

Part 2

Page 119: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

119

Topology-altering transforms, applications

G. BertrandM. CouprieJ.C. Everat (PhD)F.N. Bezerra (PhD)

Page 120: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

120

Altering the topology

Control over topology modification.

Criteria: Local contrast : notion of -skeleton Regional contrast : regularization Size : topological filtering Topology : crest restoration

Page 121: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

121

Non-homotopic operators

Topology preservation: strong restriction

Our goal: Change topology in a controlled way

over segmentation

regional minima

segmented regions

Page 122: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

122

-destructible point

-destructible

not -destructible

Illustration (1D profile of a 2D image)

Page 123: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

123

-destructible point

Definition:

Let X be a set of points, we define F-(X)=min{F(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 (i=1,…,k-1) of N--(p) are such that F(p) - F-(ci)

Page 124: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

124

-skeleton

.

We say that G is a -skeleton of F if G may be obtained from F by sequential lowering of -destructible or peak points

Page 125: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

125

-skeleton : example

1 1 12 9 91 9 2

1 2 19 9 11 9 21 9 19 9 11 1 1

2 9 11 9 91 1 2

Original image

1 25 41 41 54 41 1

1 1 12 9 91 9 1

1 2 19 9 11 9 21 9 19 9 11 1 1

2 9 11 9 91 1 2-skeleton (=3)

1 21 11 11 11 11 1

The order of operations matters

Page 126: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

126

-skeleton : examples

= 0 = 15 = 30

Page 127: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

127

Leveled skeleton

We say that G is a leveled skeleton of F if G may be obtained from F by sequential lowering of destructible or peak points.

Page 128: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

128

Leveled skeleton: example

1 1 12 7 61 9 2

1 2 16 8 11 9 21 7 19 8 11 1 1

2 8 11 9 91 1 2

1 1 12 6 61 8 1

1 2 16 6 11 8 21 7 18 8 11 1 1

2 8 11 8 91 1 2

1 1 12 6 61 6 1

1 2 16 6 11 7 21 7 18 7 11 1 1

2 8 11 8 81 1 2

Original image After 7 steps After 11 steps

Page 129: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

129

Leveled skeleton: example

1 1 12 6 61 6 1

1 2 16 6 11 7 21 7 18 7 11 1 1

2 8 11 8 81 1 2

1 1 12 6 61 6 1

1 2 16 6 11 6 21 6 16 6 11 1 1

2 6 11 6 81 1 2

1 1 12 6 61 6 1

1 2 16 6 11 6 21 6 16 6 11 1 1

2 6 11 6 61 1 2After 18 steps(final result)

After 11 steps(reminder)

After 17 steps

Page 130: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

130

Leveled skeleton: example

Original image

Regional minima Regional minima

Leveled skeleton

Page 131: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

131

Regularization

In a leveled skeleton, the regional minima are separated by ‘thin crest lines’ .

The graylevel on these lines correspond to the ‘altitude of the lowest pass connecting two neighboring minima’ (in the skeleton, and in the original image as well) .

This allows to detect and modify ‘irregular crest points’

Page 132: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

132

Regularization (cont.)

a

b

x

If a > b then x is irregular

a

bx

If a > b then x is irregular

Leveled skeleton

Page 133: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

133

Regularization: example

Original image Regularized leveled skeleton

Page 134: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

134

Binary reconstruction

Original image Regularized skeleton

a

b

Page 135: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

135

Regularization and reconstruction: segmentation without any parameter

Original image Regularized leveled skeleton

Binaryreconstruction

Page 136: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

136

Topological filtering

A: original C: reconstruction ofB under A

B: thinning+peak deletion

Page 137: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

137

Topological filtering (cont.)

Original image

Page 138: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

138

Topological filtering (cont.)

Homotopic thinning (n steps)

Page 139: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

139

Topological filtering (cont.)

Peak deletion

Page 140: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

140

Topological filtering (cont.)

Homotopic reconstruction

Page 141: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

141

Topological filtering (cont.)

Final result

Page 142: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

142

Comparison with the morphological approach

Morphological opening (erosion,dilation): makes no difference between a disk of diameter d and an elongated object of thickness d.

Area opening: makes no difference between a disk and an elongated object having the same area

Page 143: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

143

Crest restoration

Motivation

Thinning + thresholding

GradientOriginal image

Page 144: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

144

Crest restoration (cont.)

50

50

50

50

50

5090

90

240

0

0

0

0

0

00

0

0

50

50

50

50

50

50

50

50

5090

90

50

60

0

40

40

90

4060

0

0

50

50

50

50

50

240

50

50

50240

240

240

0

60

0

60

40

2400

0

0

50

50

50

50

240

50

50

50

50240

240

240

0

0

0

0

240

00

0

0

50

50

50

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 k=F(p)+1

Page 145: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

145

Crest restoration (cont.)

50

50

50

50

50

5090

90

240

0

0

0

0

0

00

0

0

50

50

50

50

50

50

50

50

5090

90

50

60

0

40

40

90

4060

0

0

50

50

50

50

50

240

50

50

50240

240

240

0

60

0

60

40

2400

0

0

50

50

50

50

240

50

50

50

50240

240

240

0

0

0

0

240

00

0

0

50

50

50

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 k=F(p)+1

Page 146: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

146

Crest restoration (cont.)

240 502400 2400 50

50

50

50

50

2400

0

00

0

0

50

50

50

50

50

50

50240

50

60

0

40

90

60

0

0

50

50

50

50

240

50

50

50240

2400

60

0

60

2400

0

0

50

50

50

50

50

50

50240

2400

0

0

00

0 50

50

240

90

90

240

50

500

0

50

50

40

40

5040

0

240 502400 2400 50

50

50

50

50

2400

0

00

0

0

50

50

50

50

50

50

50240

50

60

0

4060

0

0

50

50

50

50

240

50

50

50240

2400

60

0

60

2400

0

0

50

50

50

50

50

50

50240

2400

0

0

00

0 50

50

240

240

50

500

0

50

50

40

40

5040

0

240 502400 2400 50

50

50

50

50

2400

0

00

0

0

50

50

50

50

50

50

50240

50

60

0

40

90

60

0

0

50

50

50

50

240

50

50

50240

2400

60

0

60

2400

0

0

50

50

50

50

50

50

50240

2400

0

0

00

0 50

50

240

240

50

500

0

50

50

40

40

5040

0

240

240 240

240

240

Page 147: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

147

Crest restoration (cont.)

Thinning +thresholding

Thinning +crest restoration +

thresholdingGradient

Page 148: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

148

Crest restoration (cont.)

Thinning +crest restoration +

thresholding(1 parameter)

Thinning+hysteresis thresholding

(2 parameters)

Thinning+hysteresis thresholding

(2 parameters)

Page 149: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

149

Page 150: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

150

Crest Restoration: result

‘Significant’ crests have been highlighted (in green)

Before crest restoration:

After crest restoration:

Page 151: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

151

Centering grayscale skeletons

Breadth-first ultimate thinning(F)T := domain of F ; T’ := Repeat until stability

While p T do T := T \ {p} If p is a destructible point for F then

F(p) := -(p) For all q neighbour of p, do T’ := T’ {q}

T := T’ ; T’ :=

Page 152: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

152

Breadth-first ultimate thinning : example

Page 153: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

153

New strategies to reduce anisotropy

Generalized Euclidean distance map(computes one distance map for each cross-section)

Dynamic estimation of Euclidean distance(uses the Danielson’s principle and approximation)

Page 154: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

154

Reducing anisotropy: results

Page 155: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

155

Reducing anisotropy: results

Page 156: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

156

Reducing anisotropy: results

Page 157: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

157

Conclusion (2nd part)

Strict preservation of both topological and grayscale information

Combining topology-preserving and topology-altering operators

Control based on several criteria (contrast, size, topology)

Strategies to reduce anisotropy

Page 158: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

158

Perspectives

Study of complexityExtension to 3DTopology in orders (G. Bertrand)

Page 159: 1 Digital topology and cross-section topology for grayscale image processing M. Couprie A 2 SI lab., ESIEE Marne-la-Vallée, France

159

Perspectives

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