160 likes | 411 Views
Chapitre 4 : Morphologie Mathématique. Pr. M. Talibi Alaoui Département Mathématique et Informatique. La morphologie mathématique est apparue à l'Ecole des Mines vers la fin des années 60. Cette théorie a depuis connu un essor important et fait l'objet de nombreuses recherches.
E N D
Chapitre 4 : Morphologie Mathématique Pr. M. Talibi Alaoui Département Mathématique et Informatique
La morphologie mathématique est apparue à l'Ecole des Mines vers la fin des années 60. • Cette théorie a depuis connu un essor important et fait l'objet de nombreuses recherches. • Fondée sur des notions ensemblistes et topologiques.
son principe est d'étudier les caractéristiques morphologiques (forme, taille, orientation, ...) des objets. • transformations non linéaires associées à un objet de référence (élément structurant). Objectifs : Prétraitements, Segmentation et Analyse d’image.
Introduction Un opérateur de morphologie mathématique reçoit une image en entrée et fournit une image en sortie.
Définition par élément structurant • Erosion : • Dilatation :
Sxydésigne l’élément structurant placé en(x,y). Bdésigne l’image initiale etB’l’image résultant de l’application de l’opérateur morphologique. Ces opérations peuvent être réalisés grâce aux fonctions : E = erode(B, S, n); D = dilate(B, S, n); Exemple 1
Il existe aussi un élément structurant prédéfini : un carré de 3 * 3 pixels. E = erode (B, ‘erode’, n); D = dilate (B, ‘dilate’, n); Exemple 2 Exemple 3
A partir des deux opérations de base, on peut définir des opérations plus complexes, telles que l’ouverture et la fermeture : • L’ouverture est une érosion suivie d’une dilatation. • La fermeture est une dilatation suivie d’une érosion. Exemple 4
Définition par une table de correspondance Une table qui pour chaque configuration possible dans le voisinage du pixel (x,y), donne la valeur que prendra ce pixel. Si l’on considère un voisinage de n pixels, la table comprendra 2n entrées. Si l’on note b0, b1, b2,..,b8 les valeurs des 9 pixels du voisinage, Matlab calcule l’entier suivant : i = 28 b8 + … + 2 b1 + b0 + 1
La fonction Matlab à utiliser estbwmorph. Elle prend en paramètres l’image initiale et le tableau : R = bwmorph(B, tab); Il existeégalement des tableaux prédéfinis, que l’on utilise en donnant un nom d’opération : R = bwmorph(B, operation, n)
operation peut prendre, entre autres, l’une des valeurs suivantes : ‘dilate’, ‘erode’, ‘open’, ‘close’, ‘clean’, ‘skel’. On peut récupérer un tableau prédéfini en appelant bwmorph de la manière suivante : [R, tab] = bwmorph(B, operation);
Réduction du bruit par filtres morphologiques Les opérateurs morphologiques ne se limitent pas aux images binaires. Le travail à réaliser est cependant très réduit, grâce à une puissante fonction Matlab : nlfilter La syntaxe est la suivante : E = nlfilter( J , taille, ‘eroder’ ); Exemple