Presentation is loading. Please wait.

Presentation is loading. Please wait.

Cross-section topology Michel Couprie Contributors: G. Bertrand M. Couprie J.C. Everat (PhD) F.N. Bezerra (PhD)

Similar presentations


Presentation on theme: "Cross-section topology Michel Couprie Contributors: G. Bertrand M. Couprie J.C. Everat (PhD) F.N. Bezerra (PhD)"— Presentation transcript:

1 Cross-section topology Michel Couprie Contributors: G. Bertrand M. Couprie J.C. Everat (PhD) F.N. Bezerra (PhD)

2 Functions of 2 variables x y

3 On hills and dales [Cayley 1859, Maxwell 1870…]

4 BINARY IMAGES (SETS)

5 Topology preservation - notion of simple point A topology-preserving transformation preserves the connected components of both X and X

6 Simple 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 Simple point of X Non-simple point

7 Simple point: local characterization ?

8

9 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) Characterization of simple points (local): p is simple iff T(p) = 1 and T(p) = 1 T=2,T=2T=1,T=1T=1,T=0T=0,T=1 U U Interior point Isolated point

10 Homotopy 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

11 Homotopy: illustration

12 GRAYSCALE IMAGES (FUNCTIONS)

13 Homotopy of functions Basic idea: consider the topology of each cross- section (threshold) of a function Given a function F (Z 2 Z) and k in Z, we define the cross-section F k as the set of points p of Z 2 such that F(p)  k We say that two functions F and G are homotopic if, for every k in Z, F k and G k are homotopic (in the binary sense) [Beucher 1990…]

14 F1F1 G1G1 Homotopy of functions x y F(x,y) x G(x,y) y

15 x y F(x,y) F2F2 F1F1 x G(x,y) G2G2 G1G1 y Homotopy of functions

16 x y F(x,y) F3F3 F2F2 F1F1 x G(x,y) G3G3 G2G2 G1G1 y Homotopy of functions

17 Destructible point [Bertrand 1997] Definition: a point p is destructible (for F) if it is simple for F k, 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)

18 Destructible point: examples x y F(x,y) F3F3 F2F2 F1F1

19 Destructible point: examples x y F(x,y) F3F3 F2F2 F1F1

20 Destructible point: examples x y F(x,y) F3F3 F2F2 F1F1

21 Destructible point: counter-examples x y F(x,y) F3F3 F2F2 F1F1 Component deleted Component splitted Background component created

22 Destructible point: counter-examples x y F(x,y) F3F3 F2F2 F1F1 Component deleted Component splitted Background component created

23 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 --

24 Destructible point: local characterization The point p is destructible if and only if : T + (p) = 1 and T -- (p) = 1 121 951 999 T + = 1 T -- = 1 128 958 911 T + = 2 T -- = 2 121 151 221 T + = 0 T -- = 1 destructiblenon-destructible

25 Classification of points [Bertrand 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 ++ > 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)

26 Classification of points: examples 121 951 999 128 958 911 121 151 221 Simple sideSaddle Peak 121 991 99 12 999 11 121 5 Maximal destructible Maximal divergent Destructible convergent 555 555 555 Interior 1 2 1 9 9 9 95

27 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

28 Ultimate skeleton: 1D example Regional minima

29 Ultimate skeleton: illustration

30

31 Ultimate skeleton: 2D example Original image F Regional minima of F (white) Ultimate skeleton G of F Regional minima of G (white)

32 Thinness 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.

33 Thinness 1 1 3 1 33333333 11 11 111 1 333333333 3 3 333 3 3 3 3 31 3 3 3 3 3 111333133 111133333 111133333 333333333 333333333 333333333 3 3 333 3 3 3 3 3 3 3 3 3 3 33333 33333 33333 333333333 1111111 111111 111 111 111 111 111 111 111 111 333333 3 3 3 3 3 3 3 3 3 3 3 3 3 3 333333333 333333333 3 2 2 2 2 2 333333 3 3 3 3 3 3 3 3 3 3 3 3 3 3 333333333 333333333 3 2 2 2 2 2 2 33 3 3 3

34 22 2 2 22 1111111 111 111 111 11 111 111 111 1 1 1111 1111111111 11 111 111 11 111 111 111 111 111111 11 111 11 111 33333333333333 333 3 3 3 3 3 3 33 3 33 3 22 222 222 222 2 2 2 3 3 3 3 3 3 3 3 3333333333333 3 3 3 3 3 3 3 3 3 33333 3 3 3 3 3 3 1 3 3 3 3 3 3333 2 2 2 2 2 2 1 1 1 33333 3 3 3 3 3 3 3 3 3 3 3 3333 222 22 2 2 22 222 22 2 2 22 33333333333333 333 3 3 3 3 3 3 33 3 33 3 222 222 222 2 2 2 3 3 3 3 3 3 3 3 3333333333333 3 3 3 3 3 3 3 3 3 222 222 222 2

35 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

36 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) 311 961 999

37 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 311 961 999 Here:  - (p)=3  - (p)=1

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

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

40 Complexity analysis: open problem 1111111 111 111 111 11 111 111 111 1 1 1111 1111111111 11 111 111 11 111 111 111 111 111111 11 111 11 111 33333333333333 4 2 2 3 3 3 3 3 3 3 3 3333333333333 3 3 3 3 3 3 3 3 3 11 1 11 1 3 3 3 3 3 3 3 3 3 4 444 4 4 4 4 4 4 3 222 222 222 3241 111 111 1 111

41 Non-homotopic operators Topology preservation: strong restriction Our goal: Change topology in a controlled way over segmentation regional minima   segmented regions

42 Altering the topology Control over topology modification. Criteria: –Local contrast : notion of -skeleton –Regional contrast : regularization –Size : topological filtering –Topology : crest restoration

43 -destructible point -destructible not -destructible Illustration (1D profile of a 2D image)

44 -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 c i (i=1,…,k-1) of N -- (p) are such that F(p) - F - (c i ) 

45 -skeleton : examples = 0 = 15 = 30

46 Topological filtering A: original C: reconstruction of B under A B: thinning+ peak deletion

47 Topological filtering (cont.) Original image

48 Topological filtering (cont.) Homotopic thinning (n steps)

49 Topological filtering (cont.) Peak deletion

50 Topological filtering (cont.) Homotopic reconstruction

51 Topological filtering (cont.) Final result

52 Topological filtering (cont.) Comparison with other approaches (median filter, morphological filters) : better preservation of thin and elongated features

53 Crest restoration Motivation Thinning + thresholding Gradient Original image

54 Crest restoration (cont.) 50 90 240 0 0 0 0 0 00 0 0 50 90 50 60 0 40 90 4060 0 0 50 240 50 240 0 60 0 40 240 0 0 0 50 240 50 240 0 0 0 0 00 0 0 50 p is a separating point if –there is k such that T(p, F k )=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 F k, with k=F(p)+1

55 Crest restoration (cont.) 50 90 240 0 0 0 0 0 00 0 0 50 90 50 60 0 40 90 4060 0 0 50 240 50 240 0 60 0 40 240 0 0 0 50 240 50 240 0 0 0 0 00 0 0 50 p is a separating point if –there is k such that T(p, F k )=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 F k, with k=F(p)+1

56 Crest restoration (cont.) 240 50 240 0 050 240 0 0 00 0 0 50 240 50 60 0 40 90 60 0 0 50 240 50 240 0 60 0 240 0 0 0 50 240 0 0 0 00 050 240 90 240 50 0 0 40 5040 0 240 50 240 0 050 240 0 0 00 0 0 50 240 50 60 0 4060 0 0 50 240 50 240 0 60 0 240 0 0 0 50 240 0 0 0 00 050 240 50 0 0 40 5040 0 240 50 240 0 050 240 0 0 00 0 0 50 240 50 60 0 40 90 60 0 0 50 240 50 240 0 60 0 240 0 0 0 50 240 0 0 0 00 050 240 50 0 0 40 5040 0 240

57

58 Crest Restoration: result ‘Significant’ crests have been highlighted (in green) Before crest restoration: After crest restoration:

59 Crest restoration (cont.) Thinning + thresholding Thinning + crest restoration + thresholding Gradient

60 Crest restoration (cont.) Thinning + crest restoration + thresholding (1 parameter) Thinning+ hysteresis thresholding (2 parameters) Thinning+ hysteresis thresholding (2 parameters)

61 Conclusion Strict preservation of both topological and grayscale information Combining topology-preserving and topology-altering operators Control based on several criteria (contrast, size, topology)

62 Perspectives Study of complexity Extension to 3D Topology in orders (G. Bertrand)

63 References 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. "Image segmentation through operators based upon topology" 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. "Topological operators for grayscale image processing" www.esiee.fr/~coupriem/Sdi/publis.html


Download ppt "Cross-section topology Michel Couprie Contributors: G. Bertrand M. Couprie J.C. Everat (PhD) F.N. Bezerra (PhD)"

Similar presentations


Ads by Google