Segmentation d’image
La segmentation d’image est une technique de traitement d’image et de vision par ordinateur
utilisée qui consiste à diviser une image numérique en plusieurs régions ou objets. Plus
précisément, chaque pixel de l’image se voit attribué l’un des objets en fonction de certains
critères : l’intensité de couleur, la texture, etc., ou en fonction de sa proximité à d’autres
objets.
Cela dit, dans le domaine du machine learning, la segmentation d’image est souvent utilisée
comme étape de prétraitement pour aider l’algorithme à interpréter l’image. Par exemple,
dans une tâche de reconnaissance d’objets, une image est segmentée pour extraire l’objet
devant être reconnu. Cette étape préalable peut aider l’algorithme d’apprentissage machine à
rendre la tâche plus simple, car il n’a pas besoin de traiter l’image dans son ensemble, mais
plutôt l’extrait de cette image.
Il y a plusieurs méthodes qui peuvent être appliquées pour segmenter une image. Certains
d’entre eux incluent, mais ne sont pas limités à, la segmentation par seuillage, la segmentation
par croissance de région, et segmentation par Watershed. Toutes ces techniques ont leurs
avantages et inconvénients uniques, et la technique appropriée sera déterminée par le type
d’image et la tâche qui est effectuée.
Dans les applications de machine learning plus avancées, la segmentation d’image peut même
être une tâche en soi. Par exemple, dans une tâche de segmentation sémantique, l’objectif est
d’attribuer à chaque pixel de l’image une étiquette correspondant à la classe d’objet à laquelle
il appartient. Cela nécessite généralement l’utilisation de réseaux de neurones convolutifs
(CNN) et peut être utilisé dans des applications comme la détection d’objets pour la conduite
autonome, la reconnaissance de gestes pour les interfaces utilisateur, et bien d’autres.
Prétraitement
Le prétraitement d’image regroupe l’ensemble des processus visant à améliorer la qualité
d’une image pour donner à l’utilisateur une image libérée de tous types de défauts. De ce fait
l’objectif principale est de mettre en relief l’information utile contenu dans l’image et par la
suite atténuer voire éliminer l’information inutile.
Dans cette partie, nous allons appliquer sur les images des algorithmes de filtrages tels que :
Le filtre gaussien, le filtre médian et le filtre bilatéral afin de supprimer le bruit.
Comment ces filtres fonctionnent ?
Le filtre gaussien : Le filtre gaussien est un type de filtre qui utilise une fonction gaussienne
pour calculer la transformation à appliquer à chaque pixel de l’image. Il est utilisé pour
réduire le bruit de l’image et atténuer les détails.
Le filtre médian est un filtre qui est couramment utilisé en traitement d’image. Il fonctionne
en remplaçant la valeur chaque pixel par la médiane des valeurs de ses voisins dans l’image.
Le filtre bilatéral est un filtre qui réduit le bruit tout en préservant les bords de l’image. Il
utilise deux paramètres de pondération : la similarité spatiale et la similarité des intensités des
pixels.
La similarité spatiale est déterminée par la distance spatiale entre les pixels, tandis que la
similarité des intensités de pixels est déterminée par la différence d’intensités entre les pixels.
[Link]
[Link]
# Calculer le SNR
signal = [Link](img)
noise = [Link](img - blur)
snr_gauss = 20 * np.log10(signal / noise)