OPERATEURS MORPHOLOGIQUES Ensembles caractéristiques et éléments structurants Érosion et dilatation Ouverture et fermeture Application au filtrage Extraction de contours, remplissage de régions Épaississement, amincissement Enveloppes convexes, squelettes
Introduction Ensemble caractéristique Une image binaire peut être caractérisée par l'ensemble de ses pixels de valeur 1 (pixels noirs). Cet ensemble est souvent appelé ensemble caractéristique de l'image. Dans ce chapitre nous considérons indifféremment les images binaires et leurs ensembles caractéristiques.
Introduction Élément structurant Un élément structurant est un masque binaire (constitué de pixels blancs et noirs) muni d'un point d'ancrage. Voici, à titre d'exemple, quatre éléments structurants, le point d'ancrage étant marqués par un point : Soit (x,y) les coordonnées d'un pixel d'une image binaire X et M un élément structurant. Alors M (x,y) représente l'ensemble des pixels noirs de X qui coïncident avec les pixels noirs de M lorsque le point d'ancrage est superposé au pixel de coordonnées (x,y). Les pixels "blancs" peuvent être interprétés comme "transparents".
Érosion et dilatation Définition : érosion Soit une image binaire X et un élément structurant M. L'érosion de X par M est une image binaire définie par Ero M (X) = {(x,y) M (x,y) X} Illustration de l'érosion L'image de droite est obtenue par érosion de l'image de gauche par le masque structurant en forme de croix (au centre)
Érosion et dilatation Exemples Illustration de l'érosion d'une image binaire (à gauche) selon quatre éléments structurants différents
Érosion et dilatation Définition : dilatation Soit une image binaire X et un élément structurant M. La dilatation de X par M est une image binaire définie par Dil M (X) = {(x,y) M (x,y) X } Illustration de la dilatation L'image de droite est obtenue par dilatation de l'image de gauche par le masque structurant en forme de croix (au centre)
Érosion et dilatation Exemples Illustration de la dilatation d'une image binaire (à gauche) selon quatre éléments structurants différents
Érosion et dilatation Dualité entre érosion et dilatation L'érosion et la dilatation sont deux opérations duales par rapport aux complémentaires des ensembles caractéristiques : Ero M (X C ) = (Dil M (X)) C Dil M (X C ) = (Ero M (X)) C où X C représente le complémentaire de X. Illustration de la dilatation et de l'érosion du complémentaire
Érosion et dilatation Propriétés de l'érosion et de la dilatation Les propriétés algébriques suivantes sont valables : l'érosion et la dilatation sont monotones croissantes X Y Ero M (X) Ero M (Y) X Y Dil M (X) Dil M (Y) si le point d'ancrage de l'élément structurant vaut 1, la dilatation est extensive et l'érosion est anti-extensive : si M[0,0]=1 alors X Dil M (X) si M[0,0]=1 alors Ero M (X) X les propriétés ensemblistes suivantes sont valables : Dil M1 M2 (X) = Dil M1 (X) Dil M2 (X) Dil M1 M2 (X) = Dil M1 (X) Dil M2 (X) Ero M1 M2 (X) = Ero M1 (X) Ero M2 (X) Ero M1 M2 (X) = Ero M1 (X) Ero M2 (X)
Ouverture et fermeture Définition de l'ouverture Soit une image binaire X et un élément structurant M. L'ouverture de X par M est une image binaire définie par Ouv M (X) = Dil M -(Ero M (X)) où M représente l'élément structurant symétrique de M par rapport au point d'ancrage. Définition de la fermeture Soit une image binaire X et un élément structurant M. La fermeture de X par M est une image binaire définie par Fer M (X) = Ero M -(Dil M (X)) où M représente l'élément structurant symétrique de M par rapport au point d'ancrage.
Ouverture et fermeture Illustration de l'ouverture L'image de droite représente l'ouverture de l'image de gauche par un élément structurant en "L"; elle est obtenue par la composition d'une érosion et d'une dilatation.
Ouverture et fermeture Illustration de la fermeture L'image de droite représente la fermeture de l'image de gauche par un élément structurant en "L"; elle est obtenue par la composition d'une dilatation et d'une érosion.
Ouverture et fermeture Propriétés algébriques de l'ouverture et de la fermeture L'ouverture d'une image X par un élément structurant M est caractérisée par les propriétés suivantes: l'ouverture est anti-extensive et la fermeture est extensive Ouv M (X) X X Fer M (X) l'ouverture et la fermeture sont monotones croissantes X Y Ouv M (X) Ouv M (Y) X Y Fer M (X) Fer M (Y) l'ouverture et la fermeture sont idempotentes Ouv M (Ouv M (X)) = Ouv M (X) Fer M (Fer M (X)) = Fer M (X) l'ouverture possède la caractéristique suivante : Ouv M (X) = { M (x,y) M (x,y) X }
Ouverture et fermeture Dualité entre ouverture et fermeture L'ouverture et la fermeture sont deux opérations duales par rapport aux complémentaires des ensembles caractéristiques: Ouv M (X C ) = (Fer M (X)) C Fer M (X C ) = (Ouv M (X)) C où X C représente le complémentaire de X.
Applications Commentaire Les opérateurs morphologiques peuvent être utilisés dans plusieurs applications du traitement d'image: l'élimination du bruit l'extraction de contours le remplissage de régions amincissement et épaississement
Applications Filtrage du bruit Le filtrage du bruit dans une image binaire peut être réalisé par un opérateur morphologique exprimé par Filtre(X) = Fer B4 (Ouv B4 (X)) B4 = Exemple
Applications Extraction du contour d'une composante 4-connexe L'extraction du contour d'une composante 4-connexe peut être obtenue par l'expression Contour4(X) = X Ero B9 (X) B9 = Exemple
Applications Extraction du contour d'une composante 8-connexe L'extraction du contour d'une composante 8-connexe peut être obtenue par l'expression Contour8(X) = X Ero C5 (X) C5 = Exemple
Applications Remplissage de régions Soit Z une courbe 8-connexe; l'intérieur peut être construit de manière itérative à partir d'une image X [0] contenant un seul pixel intérieur : X [k] = Dil C5 (X [k-1] ) Z C C5 = Lorsque la stabilité est atteinte X [k] = X [k-1] contient l'intérieur de la courbe Z.
Opérateur "tout ou rien" Définition Soit une image X et un couple d'éléments structurants M=(M 1,M 0 ) avec la propriété M 1 M 0 =. L'opérateur "tout ou rien" est défini de la manière suivante : ToR M (X) = Ero M1 (X) Ero M0 (X C ) Commentaire L'opérateur "tout ou rien" permet de rechercher les points dont le voisinage est conforme à un masque dans le sens que certains pixels sont noirs; certains pixels sont blancs; certains pixels sont quelconques (blancs ou noirs).
Opérateur "tout ou rien" Représentation Nous représentons un couple d'éléments structurants M=(M 1,M 0 ) au moyen d'un masque ternaire: les pixels obligatoirement blancs (resp. noirs) sont blancs (resp. noirs); les pixels quelconques sont gris; le point d'ancrage est marqué par un point. Exemple Voici une image X, un masque M=(M 1,M 0 ), puis Ero M1 (X), Ero M0 (X C ) et ToR M (X)
Amincissement Définition Soit une composante connexe X et un masque M dont le point d'ancrage vaut 1. L'amincissement de X par M est défini par Exemple Am M (X) = X ToR M (X) = X (ToR M (X)) C Voici une composante connexe X, un masque M et l'amincissement Am M (X)
Épaississement Définition Soit une composante connexe X et un masque M dont le point d'ancrage vaut 0. L'épaississement de X par M est défini par Exemple Ep M (X) = X ToR M (X) Voici une composante connexe X, un masque M et l'épaississement Ep M (X)
Enveloppe convexe Définition (cas continu) Un ensemble X du plan est dit convexe si pour tout couple de points A,B X, le segment AB appartient aussi à X, c'est-à-dire: α [0,1] αa + (1-α)B X L'enveloppe convexe d'un ensemble X, notée Env(X) est définie comme l'intersection de tous les ensembles convexes contenant X. Commentaire Une définition rigoureuse de l'enveloppe convexe discrète suppose une définition rigoureuse de droite discrète. Nous nous contentons ici d'une définition intuitive fondée sur les caractéristiques locales. Voici deux composantes convexes et deux composantes non convexes
Enveloppe convexe Construction L'enveloppe convexe d'une composante connexe X peut être construite par un procédé itératif au moyen des masques M k (k=1,2,..., 12) suivants: Algorithme Soit X 0 := X. répéter pour i = 0, 1, 2,... X i+1 := ToR M1 (X i ) ToR M2 (X i )... ToR M12 (X i ) X i jusqu'à ce que X i+1 = X i Env(X) := X i
Enveloppe convexe Exemple Voici une illustration de la construction de l'enveloppe convexe comprenant la composante initiale X, les trois premières itération X 1, X 2, X 3 et l'enveloppe convexe obtenue Env(X)
Transformation homotope Définition Une transformation est dite homotope si elle préserve la connexité, c'est-à-dire le nombre de composante connexe, le nombre de trous dans chaque composante connexe. Masques homotopes Certains masques d'amincissement engendrent des transformations homotopes: cas d'une composante 4-connexe: cas d'une composante 8-connexe:
Squelette Définition (cas continu) Soit X une forme connexe du plan. Le squelette de X noté Sq(X) est formé de l'ensemble des centres des cercles inscrits maximaux, c'est-à-dire Sq(X) = { s x,y frontière(x), x y et d(s,x)=d(s,y) } Exemples
Squelette Problème Il n'existe pas de définition satisfaisante dans le cas discret! Néanmoins le squelette peut être construit par un procédé itératif qui transforme une composante connexe X en une composante filiforme ayant les mêmes caractéristiques topologiques. La squelettisation sera ainsi effectuée par une suite de transformations homotopes.
Squelette Construction Le squelette d'une composante connexe X peut être construit par un amincissement homotope itératif au moyen des masques M k (k=1,2,..., 8) suivants : Algorithme X 0 := X. répéter pour i = 0, 1, 2,... X i+1 := Am M8 (Am M7 (... (Am M2 (Am M1 (X i ))... )) jusqu'à ce que X i+1 = X i Sq(X) := X i
Squelette Exemple Voici une illustration de la construction du squelette d'une composante connexe comprenant la composante initiale X, l'amincissement obtenu avec les masques M 1 à M 4, puis le résultat des deux premières itérations X 1 et enfin le squelette obtenu Sq(X)
Axe médian Définition L'axe médian d'une composante connexe X, noté Méd(X) est l'ensemble des centres des carrées de taille impaire maximale inscrits dans X Exemple Voici une composante connexe et son axe médian.
Axe médian Construction L'axe médian d'une composante connexe X peut être construit par une itération d'érosions et de dilatations au moyen de l'élément structurant M=B 9 : Algorithme X 0 := X. répéter pour i = 1, 2,... X i := Ero M (X i-1 ) ; Y i := X i-1 Dil M (X i ); jusqu'à ce que X i = Méd(X) := Y 1 Y 2... Y i
Axe médian Exemple Voici une illustration de la construction de l'axe médian contenant la composante connexe X, puis les ensembles Y 1, Y 2, Y 3, Y 4 obtenus selon l'algorithme et enfin l'axe médian Méd(X) = Y 1 Y 2 Y 3 Y 4.
Axe médian Commentaire La construction de l'axe médian est réversible : X peut être reconstruit à partir de Méd(X) = Y 1 Y 2... Y i par un procédé itératif fondé sur la propriété X = Dil M (Y 1 ) Dil M (Dil M (Y 2 ))... Dil M (Dil M (...(Dil M (Y i )...)) Algorithme pour j = 1, 2,..., i faire pour k = j, j+1,..., i faire Y k := Dil M (Y k ) jusqu'à ce que X i = X := Y 1 Y 2... Y i
Axe médian Remarque La reconstruction de X à partir de Méd(X) suppose connus les diamètres des blocs, soit la décomposition en ensembles Y k. Exemple Voici une illustration de la reconstruction de X à partir de son axe médian contenant les dilatations successives des ensembles Y i et leur réunion.
Élagage Problème La squelettisation produit souvent des formes bruitées caractérisées par des barbules se greffant sur le squelette proprement dit. L'élagage est une opération morphologique qui permet de supprimer les barbules. Le procédé consiste à éliminer de manière itérative des pixels terminaux au moyen des masques
Élagage Exemple Voici une illustration de l'élagage d'un squelette obtenu en deux itérations successives