2.1 mathematical morphology - inriamathematical morphology •technique to manipulate digital shapes...

56
2.1 Mathematical Morphology Overview : Definitions of Neighborhood Transformations on Binary Images Boolean Hit or Miss Erosion Dilation Extension to Grey‐level Images Distance maps 98 Hervé Delingette

Upload: others

Post on 27-May-2020

12 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: 2.1 Mathematical Morphology - InriaMathematical Morphology •Technique to manipulate digital shapes •Unknown image ... 110. 111 Erosion iterations= 2 4‐structuring element iterations=

2.1 Mathematical Morphology

• Overview :• Definitions of Neighborhood• Transformations on Binary Images

• Boolean• Hit or Miss• Erosion• Dilation

• Extension to Grey‐level Images• Distance maps

98Hervé Delingette

Page 2: 2.1 Mathematical Morphology - InriaMathematical Morphology •Technique to manipulate digital shapes •Unknown image ... 110. 111 Erosion iterations= 2 4‐structuring element iterations=

Definitions (Binary)Ea Affine spaceEv Associated vector spaceI : Binary Image : K  Ea {0,1}X : Foreground Object 

X = {x  K / I(x)=1}Xc : Background Object complementary of X with respect to Ea, B : structuring element = { b  Ev } set of vectors = { x  Ea / Ox = b} set of points

99

Page 3: 2.1 Mathematical Morphology - InriaMathematical Morphology •Technique to manipulate digital shapes •Unknown image ... 110. 111 Erosion iterations= 2 4‐structuring element iterations=

Definitions (Binary)

100

Page 4: 2.1 Mathematical Morphology - InriaMathematical Morphology •Technique to manipulate digital shapes •Unknown image ... 110. 111 Erosion iterations= 2 4‐structuring element iterations=

Boolean Operations• Union :  X  Y = { x / x  X or x  Y } • Intersection :  X  Y = { x / x  X and x  Y } • Inclusion : X  Y    x  X  x  Y• Non symmetric difference

X \ Y = {x / x  X and x Y}• Symmetric Difference 

X \\ Y = { x / x  ((XY)\(XY)) }• Complement

(Xc)E= { x / x  E and x  X }

101

Page 5: 2.1 Mathematical Morphology - InriaMathematical Morphology •Technique to manipulate digital shapes •Unknown image ... 110. 111 Erosion iterations= 2 4‐structuring element iterations=

Translated & Symmetric• Translated of  X by vector b

• B centered in x (a.k.a translated of B by x)

• Symmetric of B

102

Page 6: 2.1 Mathematical Morphology - InriaMathematical Morphology •Technique to manipulate digital shapes •Unknown image ... 110. 111 Erosion iterations= 2 4‐structuring element iterations=

Hit or miss transformation

• Partition of a structuring element BB = B1 B2 et   B1 B2 = 

• Hit or miss transformation of set XX  B= { x / B1

x X et B2x Xc }

• x X  B  B1

x is in foreground and B2x is in background

B describe the local configuration of the background and foreground objects

103

Page 7: 2.1 Mathematical Morphology - InriaMathematical Morphology •Technique to manipulate digital shapes •Unknown image ... 110. 111 Erosion iterations= 2 4‐structuring element iterations=

2.1 Mathematical Morphology

• Overview :• Definitions of Neighborhood• Transformations on Binary Images

• Boolean• Hit or Miss• Erosion• Dilation

• Extension to Grey‐level Images• Distance maps

104Hervé Delingette

Page 8: 2.1 Mathematical Morphology - InriaMathematical Morphology •Technique to manipulate digital shapes •Unknown image ... 110. 111 Erosion iterations= 2 4‐structuring element iterations=

Neighborhood• Different types of neighborhood in 2D

105

4 ‐neighborhood 8 ‐neighborhood 6 ‐neighborhood

Page 9: 2.1 Mathematical Morphology - InriaMathematical Morphology •Technique to manipulate digital shapes •Unknown image ... 110. 111 Erosion iterations= 2 4‐structuring element iterations=

Neighborhood• Some generalizes to higher dimensions• Corresponds to a choice of metric norm

106

n

iii xyyxD

11 ),(

n

iii xyyxD

1

22 ),( iini

xyyxD ...1

max ),(

Page 10: 2.1 Mathematical Morphology - InriaMathematical Morphology •Technique to manipulate digital shapes •Unknown image ... 110. 111 Erosion iterations= 2 4‐structuring element iterations=

Neighborhood

• 3 types of neighborhood for a 3D image :• 6‐neighborhood : adjacency through faces• 18‐neighborhood : adjacency through faces and edges• 26‐neighborhood : adjacency through faces and edges and vertices

107

Page 11: 2.1 Mathematical Morphology - InriaMathematical Morphology •Technique to manipulate digital shapes •Unknown image ... 110. 111 Erosion iterations= 2 4‐structuring element iterations=

Mathematical Morphology

• Technique to manipulate digital shapes• Unknown image • Known shape  : structuring element

• Boolean operation between image & structuring element 

,  ,  ,  ,  , ...• See work by Serra, Schmitt, ...

108

Page 12: 2.1 Mathematical Morphology - InriaMathematical Morphology •Technique to manipulate digital shapes •Unknown image ... 110. 111 Erosion iterations= 2 4‐structuring element iterations=

Erosion• Specific case of HoM transformation when B2 = 

Erosion of X by B = Ero(X,B) = { y  Ea / By X }

109

Page 13: 2.1 Mathematical Morphology - InriaMathematical Morphology •Technique to manipulate digital shapes •Unknown image ... 110. 111 Erosion iterations= 2 4‐structuring element iterations=

Erosion• Specific case of HoM transformation when B2 = 

Erosion of X by B = Ero(X,B) = { y  Ea / By X }

110

Page 14: 2.1 Mathematical Morphology - InriaMathematical Morphology •Technique to manipulate digital shapes •Unknown image ... 110. 111 Erosion iterations= 2 4‐structuring element iterations=

111

Erosion

4‐structuring elementiterations = 2 iterations = 5

Page 15: 2.1 Mathematical Morphology - InriaMathematical Morphology •Technique to manipulate digital shapes •Unknown image ... 110. 111 Erosion iterations= 2 4‐structuring element iterations=

112

Erosion

6‐structuring elementitérations = 2 itérations = 5

Page 16: 2.1 Mathematical Morphology - InriaMathematical Morphology •Technique to manipulate digital shapes •Unknown image ... 110. 111 Erosion iterations= 2 4‐structuring element iterations=

113

Erosion

8‐structuring elementitérations = 2 itérations = 5

Page 17: 2.1 Mathematical Morphology - InriaMathematical Morphology •Technique to manipulate digital shapes •Unknown image ... 110. 111 Erosion iterations= 2 4‐structuring element iterations=

Dilation• Dilation of X by B  

Dil(X,B) = { y  Ea / By X }

114

Page 18: 2.1 Mathematical Morphology - InriaMathematical Morphology •Technique to manipulate digital shapes •Unknown image ... 110. 111 Erosion iterations= 2 4‐structuring element iterations=

Dilation• Dilation of X by B

Dil(X,B) = { y  Ea / By X }

115

Page 19: 2.1 Mathematical Morphology - InriaMathematical Morphology •Technique to manipulate digital shapes •Unknown image ... 110. 111 Erosion iterations= 2 4‐structuring element iterations=

116

Dilation

iterations = 2 iterations = 54‐structuring element

Page 20: 2.1 Mathematical Morphology - InriaMathematical Morphology •Technique to manipulate digital shapes •Unknown image ... 110. 111 Erosion iterations= 2 4‐structuring element iterations=

117

Dilation

6‐structuring elementiterations = 2 iterations = 5

Page 21: 2.1 Mathematical Morphology - InriaMathematical Morphology •Technique to manipulate digital shapes •Unknown image ... 110. 111 Erosion iterations= 2 4‐structuring element iterations=

118

Dilation

8‐element structurantiterations = 2 iterations = 5

Page 22: 2.1 Mathematical Morphology - InriaMathematical Morphology •Technique to manipulate digital shapes •Unknown image ... 110. 111 Erosion iterations= 2 4‐structuring element iterations=

119

Duality Erosion / Dilation

X Xc⊕ ⊖

Original image Dilated Image Erosion of The complement of X

The complement of X

Page 23: 2.1 Mathematical Morphology - InriaMathematical Morphology •Technique to manipulate digital shapes •Unknown image ... 110. 111 Erosion iterations= 2 4‐structuring element iterations=

Extension to grey‐level images

• Let f be a grey level image defined on K with values . 

• Let  g be the structuring element.• One writes • Dilation :

• Erosion :

120

⊕ max∈

⊖ min∈

Page 24: 2.1 Mathematical Morphology - InriaMathematical Morphology •Technique to manipulate digital shapes •Unknown image ... 110. 111 Erosion iterations= 2 4‐structuring element iterations=

121

• Correspondance with binary mathematicalmorphology B

• In this case, erosion and dilation write as :

• Dilation and Erosion are still dual of each other.

Extension to grey‐level images

cBx

BxxB sisi0)(

⊕ max∈

⊖ min∈

Page 25: 2.1 Mathematical Morphology - InriaMathematical Morphology •Technique to manipulate digital shapes •Unknown image ... 110. 111 Erosion iterations= 2 4‐structuring element iterations=

122

Extension to grey‐level imagesdilatio

n erosion

4‐structuring element

(2 iterations)

8‐structuring element(2 iterations)

Page 26: 2.1 Mathematical Morphology - InriaMathematical Morphology •Technique to manipulate digital shapes •Unknown image ... 110. 111 Erosion iterations= 2 4‐structuring element iterations=

Morphological Gradient• Function gradient (when it exists) may be formalized as :

Where B(r) is a bowl of radius  r

• Morphological Gradient

• Superior Gradient 

• Inferior Gradient

123

lim→

⊕ ⊖2

⊕ ⊖

Page 27: 2.1 Mathematical Morphology - InriaMathematical Morphology •Technique to manipulate digital shapes •Unknown image ... 110. 111 Erosion iterations= 2 4‐structuring element iterations=

Morphological Gradient

124

4‐structuring element 8‐structuring element

Page 28: 2.1 Mathematical Morphology - InriaMathematical Morphology •Technique to manipulate digital shapes •Unknown image ... 110. 111 Erosion iterations= 2 4‐structuring element iterations=

Opening• X = Foreground Object• B=  Structuring Element• Opening defined as 

125

∘ ⊖ ⊕

Opening of a set is the dilated of the eroded set (if B is symmetric) 

Page 29: 2.1 Mathematical Morphology - InriaMathematical Morphology •Technique to manipulate digital shapes •Unknown image ... 110. 111 Erosion iterations= 2 4‐structuring element iterations=

126

4 iterations 4‐Neighborhood 8‐Neighborhood

Page 30: 2.1 Mathematical Morphology - InriaMathematical Morphology •Technique to manipulate digital shapes •Unknown image ... 110. 111 Erosion iterations= 2 4‐structuring element iterations=

Closure• Closure defined as 

127

· ⊕ ⊖

Closure of a set is the eroded of the dilated set (if B is symmetric) 

Page 31: 2.1 Mathematical Morphology - InriaMathematical Morphology •Technique to manipulate digital shapes •Unknown image ... 110. 111 Erosion iterations= 2 4‐structuring element iterations=

128

4 itérations 4‐élément structurant 8‐élément structurant

Page 32: 2.1 Mathematical Morphology - InriaMathematical Morphology •Technique to manipulate digital shapes •Unknown image ... 110. 111 Erosion iterations= 2 4‐structuring element iterations=

Link with Partial Differential Equation• Erosion 

• Dilation 

129

P=1P=2 P=∞

Choice of p‐norm

P=1

Partial differential Equations for Morphological Operators, F. Guichard, P. Maragos, J‐M. Morel, Chap. In book Tribute to Georges Matheron, Springer, 2005 

Page 33: 2.1 Mathematical Morphology - InriaMathematical Morphology •Technique to manipulate digital shapes •Unknown image ... 110. 111 Erosion iterations= 2 4‐structuring element iterations=

Distance Maps• Allow

• implementation of dilation / erosion of large size (with thresholding)

• Compute easily the skeletonization of a binary shape (as regional maxima of distance function)

130

Page 34: 2.1 Mathematical Morphology - InriaMathematical Morphology •Technique to manipulate digital shapes •Unknown image ... 110. 111 Erosion iterations= 2 4‐structuring element iterations=

Erosion• Specific case of HoM transformation when B2 = 

Erosion of X by B = Ero(X,B) = { y  Ea / By X }

131

Page 35: 2.1 Mathematical Morphology - InriaMathematical Morphology •Technique to manipulate digital shapes •Unknown image ... 110. 111 Erosion iterations= 2 4‐structuring element iterations=

Erosion• Specific case of HoM transformation when B2 = 

Erosion of X by B = Ero(X,B) = { y  Ea / By X }

132

Page 36: 2.1 Mathematical Morphology - InriaMathematical Morphology •Technique to manipulate digital shapes •Unknown image ... 110. 111 Erosion iterations= 2 4‐structuring element iterations=

133

Erosion

4‐structuring elementiterations = 2 iterations = 5

Page 37: 2.1 Mathematical Morphology - InriaMathematical Morphology •Technique to manipulate digital shapes •Unknown image ... 110. 111 Erosion iterations= 2 4‐structuring element iterations=

134

Erosion

6‐structuring elementitérations = 2 itérations = 5

Page 38: 2.1 Mathematical Morphology - InriaMathematical Morphology •Technique to manipulate digital shapes •Unknown image ... 110. 111 Erosion iterations= 2 4‐structuring element iterations=

135

Erosion

8‐structuring elementitérations = 2 itérations = 5

Page 39: 2.1 Mathematical Morphology - InriaMathematical Morphology •Technique to manipulate digital shapes •Unknown image ... 110. 111 Erosion iterations= 2 4‐structuring element iterations=

Dilation• Dilation of X by B  

Dil(X,B) = { y  Ea / By X }

136

Page 40: 2.1 Mathematical Morphology - InriaMathematical Morphology •Technique to manipulate digital shapes •Unknown image ... 110. 111 Erosion iterations= 2 4‐structuring element iterations=

Dilation• Dilation of X by B

Dil(X,B) = { y  Ea / By X }

137

Page 41: 2.1 Mathematical Morphology - InriaMathematical Morphology •Technique to manipulate digital shapes •Unknown image ... 110. 111 Erosion iterations= 2 4‐structuring element iterations=

138

Dilation

iterations = 2 iterations = 54‐structuring element

Page 42: 2.1 Mathematical Morphology - InriaMathematical Morphology •Technique to manipulate digital shapes •Unknown image ... 110. 111 Erosion iterations= 2 4‐structuring element iterations=

139

Dilation

6‐structuring elementiterations = 2 iterations = 5

Page 43: 2.1 Mathematical Morphology - InriaMathematical Morphology •Technique to manipulate digital shapes •Unknown image ... 110. 111 Erosion iterations= 2 4‐structuring element iterations=

140

Dilation

8‐element structurantiterations = 2 iterations = 5

Page 44: 2.1 Mathematical Morphology - InriaMathematical Morphology •Technique to manipulate digital shapes •Unknown image ... 110. 111 Erosion iterations= 2 4‐structuring element iterations=

141

Duality Erosion / Dilation

X Xc⊕ ⊖

Original image Dilated Image Erosion of The complement of X

The complement of X

Page 45: 2.1 Mathematical Morphology - InriaMathematical Morphology •Technique to manipulate digital shapes •Unknown image ... 110. 111 Erosion iterations= 2 4‐structuring element iterations=

2.1 Mathematical Morphology

• Overview :• Definitions of Neighborhood• Transformations on Binary Images

• Boolean• Hit or Miss• Erosion• Dilation

• Extension to Grey‐level Images• Distance maps

142Hervé Delingette

Page 46: 2.1 Mathematical Morphology - InriaMathematical Morphology •Technique to manipulate digital shapes •Unknown image ... 110. 111 Erosion iterations= 2 4‐structuring element iterations=

Extension to grey‐level images

• Let f be a grey level image defined on K with values . 

• Let  g be the structuring element.• One writes • Dilation :

• Erosion :

143

⊕ max∈

⊖ min∈

Page 47: 2.1 Mathematical Morphology - InriaMathematical Morphology •Technique to manipulate digital shapes •Unknown image ... 110. 111 Erosion iterations= 2 4‐structuring element iterations=

144

• Correspondance with binary mathematicalmorphology B

• In this case, erosion and dilation write as :

• Dilation and Erosion are still dual of each other.

Extension to grey‐level images

cBx

BxxB sisi0)(

⊕ max∈

⊖ min∈

Page 48: 2.1 Mathematical Morphology - InriaMathematical Morphology •Technique to manipulate digital shapes •Unknown image ... 110. 111 Erosion iterations= 2 4‐structuring element iterations=

145

Extension to grey‐level imagesdilatio

n erosion

4‐structuring element

(2 iterations)

8‐structuring element(2 iterations)

Page 49: 2.1 Mathematical Morphology - InriaMathematical Morphology •Technique to manipulate digital shapes •Unknown image ... 110. 111 Erosion iterations= 2 4‐structuring element iterations=

Morphological Gradient• Function gradient (when it exists) may be formalized as :

Where B(r) is a bowl of radius  r

• Morphological Gradient

• Superior Gradient 

• Inferior Gradient

146

lim→

⊕ ⊖2

⊕ ⊖

Page 50: 2.1 Mathematical Morphology - InriaMathematical Morphology •Technique to manipulate digital shapes •Unknown image ... 110. 111 Erosion iterations= 2 4‐structuring element iterations=

Morphological Gradient

147

4‐structuring element 8‐structuring element

Page 51: 2.1 Mathematical Morphology - InriaMathematical Morphology •Technique to manipulate digital shapes •Unknown image ... 110. 111 Erosion iterations= 2 4‐structuring element iterations=

Opening• X = Foreground Object• B=  Structuring Element• Opening defined as 

148

∘ ⊖ ⊕

Opening of a set is the dilated of the eroded set (if B is symmetric) 

Page 52: 2.1 Mathematical Morphology - InriaMathematical Morphology •Technique to manipulate digital shapes •Unknown image ... 110. 111 Erosion iterations= 2 4‐structuring element iterations=

149

4 iterations 4‐Neighborhood 8‐Neighborhood

Page 53: 2.1 Mathematical Morphology - InriaMathematical Morphology •Technique to manipulate digital shapes •Unknown image ... 110. 111 Erosion iterations= 2 4‐structuring element iterations=

Closure• Closure defined as 

150

· ⊕ ⊖

Closure of a set is the eroded of the dilated set (if B is symmetric) 

Page 54: 2.1 Mathematical Morphology - InriaMathematical Morphology •Technique to manipulate digital shapes •Unknown image ... 110. 111 Erosion iterations= 2 4‐structuring element iterations=

151

4 itérations 4‐élément structurant 8‐élément structurant

Page 55: 2.1 Mathematical Morphology - InriaMathematical Morphology •Technique to manipulate digital shapes •Unknown image ... 110. 111 Erosion iterations= 2 4‐structuring element iterations=

Link with Partial Differential Equation• Erosion 

• Dilation 

152

P=1P=2 P=∞

Choice of p‐norm

P=1

Partial differential Equations for Morphological Operators, F. Guichard, P. Maragos, J‐M. Morel, Chap. In book Tribute to Georges Matheron, Springer, 2005 

Page 56: 2.1 Mathematical Morphology - InriaMathematical Morphology •Technique to manipulate digital shapes •Unknown image ... 110. 111 Erosion iterations= 2 4‐structuring element iterations=

Distance Maps• Allow

• implementation of dilation / erosion of large size (with thresholding)

• Compute easily the skeletonization of a binary shape (as regional maxima of distance function)

153