Les 2 principaux traitements qui découlent de la morphologie mathématique sont l’Ouverture et la Fermeture.
Ces 2 opérateurs aboutissent sur une implémentation du Gradient Morphologique qui consiste à extraire les contours d’une image binaire.
Ouverture
L’ouverture est représentée par la formule suivante :
γB=δBϵB
C’est une opération qui consiste en une érosion suivie d’une dilatation.
Cette opération permet de supprimer les éléments de petite taille comme le bruit impulsionnel tout en conservant la taille des formes.

Fermeture
La fermeture est représentée par la formule suivante \varphi :
φB=ϵBδB
C’est une opération qui consiste en une dilatation suivie d’une érosion.
Cette opération permet de supprimer les trous de petite taille tout en conservant la taille des formes.

Activité n° 4 - Ouverture et fermeture
Objectif : mettre en œuvre des outils de morphologie mathématique plus complexes
Copiez-collez le code suivant dans votre environnement Python.
# Ouverture et fermeture
import cv2 as cv
import numpy as np
import matplotlib.pyplot as plt
image = cv2.imread('smiley_nb.png',0)
plt.imshow(image,cmap='gray')
plt.show()
... Le code du chapitre précédent ...
kernel = cv.getStructuringElement(cv.MORPH_RECT,(5,5))
plt.figure()
plt.imshow(erosion(dilatation(image,kernel),kernel),cmap='gray')
plt.show()
À quelle opération morphologique ce code correspond-il ?
Séquence d’opérations de haut niveau
Il existe différents types d’opérations de haut niveau : le débruitage (ou suppression du bruit), ou l’extraction de contours d’image binaire (le gradient morphologique).
Application au débruitage
Voici une illustration d’un débruitage d’empreinte digitale :

Source : « Traitement numérique de l'image », 2e édition. www.imageprocessingbook.com.com © 2002 RC Gonzalez & RE Woods Chapitre 9 Traitement d'images morphologiques Chapitre 9 Morphologique.
On constate ici qu’une suite d'opérations successives a conduit à la suppression du bruit : érosion, ouverture, dilatation puis fermeture.
Gradients Morphologiques
Le gradient morphologique est utilisé afin d’extraire le contour d’un objet dans une image.
Afin d’illustrer cet opérateur, partons de notre image d’entrée :
Il existe 2 types de gradient morphologique :
Le gradient par érosion ;
Le gradient par dilatation.
Le gradient par érosion qui consiste à faire la différence entre l’image d’origine et l’image érodée :

Le gradient par dilatation qui consiste à faire la différence entre l’image dilatée et l’image d’origine :

Dans la pratique, on utilise le gradient symétrisé qui est la combinaison des 2 gradients morphologiques précédemment présentés pour faire un extracteur de contours :


Réponses aux activités
Activité n° 4 - Ouverture et fermeture
À quelle opération morphologique ce code correspond-il ?
Réponse : il correspond à l'opération de fermeture.
Conclusion
Dans ce chapitre, nous avons vu les opérateurs de base en morphologie mathématique : la dilatation et l’érosion qui permettent d'améliorer la qualité informationnelle d'une image numérique.
Il est important de ne pas perdre de vue que ces 2 processus présentent de nombreux avantages, mais ont une incidence sur la taille finale de l'image traitée.
Les exemples d'application des traitements d'ouverture et de fermeture ainsi que les opérateurs de gradients morphologiques vous ont permis de mieux appréhender le processus de débruitage ou d'extraction de contours.
Ce cours touche à sa fin ! Vous avez à présent toutes les clés pour :
Représenter numériquement une image ;
Filtrer de façon simple des images ;
Extraire des informations pertinentes et simples des images ;
Utiliser la bibliothèque de traitement d’images OpenCV ;
Implémenter un algorithme de traitement d’images.
N'oubliez pas de valider ces compétences en réalisant les exercices de fin de partie.
Nous vous souhaitons une très bonne continuation dans vos projets !