Chapitre 9: Détection de contours
127
128
Détection de contours
Définition
• Un contour est une brusque variation de niveau de gris dans
une image
• Un contour peut être défini comme une "marche d'escalier"
si le contour est net, comme une "rampe" si le contour est plus
flou ou comme un "toit" s'il s'agit d'une ligne sur un fond uniforme
© Segmentation d'images cérébrales : État de l'art. Rapport de recherche, Christian Barillot
129
Détection de contours
Objectifs?
La détection des contours (Edge detection) dans une image
permet de:
• Reconnaître des objets présents dans une scène
• Faire de la segmentation : différencier les zones de l'image
• Extraire des informations pertinentes
130
Détection de contours
• Les contours sont caractérisés par des discontinuités
(variations) de la fonction d'intensité
• Une variation existera si la dérivée première (gradient) est
localement maximum ou si la dérivée seconde (Laplacien)
présente un passage par zéro
131
Détection de contours
1.Approche gradient
• Estimer le gradient de niveau de gris d’un pixel, consiste à
choisir deux directions (ligne et colonne) orthogonales, sur
lesquelles on projette le gradient
• On considère l’image comme une fonction f à deux variables
• On définit deux dérivées partielles, suivant x (lignes)
et suivant y (colonnes )
132
Détection de contours
1. Approche gradient
• A partir de l’image I, on calcule Gh et Gv, correspondant au
filtrage de I, par les deux masques h et v
• Gh et Gv contiennent les contours horizontaux et verticaux
• La norme du gradient en chaque pixel est donnée par
• L’image finale G est une image binaire
² ²G GH GV
133
Détection de contours
image d’origine Contours horizontaux
Contour verticaux Horizontal + vertical
134
Détection de contours
1.1. Filtre Roberts
GH =
GV =
H
V
135
Détection de contours
1.1. Filtre Roberts
Exemple:
136
Détection de contours
1.2. Filtre Prewitt
• On utilise l’expression
• On applique le produit de convolution avec le double masque
suivant
H V
137
Détection de contours
1.2. Filtre Prewitt
Exemple:
138
Détection de contours
1.3. Filtre Sobel
On utilise le produit de convolution avec le double masque suivant :
GH GV
139
Détection de contours
1.3. Filtre Sobel
Exemple:
140
Détection de contours
Remarques
• Les masques de taille 2 × 2 ne sont pas symétriques par
rapport au pixel central
• Le filtre Roberts est plus rapide mais très sensible aux bruits
• Le filtre Sobel permet une suppression du bruit légèrement
supérieures à Prewitt
Roberts Sobel
141
Détection de contours
image d’origine Filtre Roberts
Filtre Prewitt Filtre Sobel
142
Détection de contours
Remarques
• Il existe des méthodes de détection de contour appelées
méthodes optimales comme le filtre de Canny, Deriche …
Filtre Canny
143
Détection de contours
2.Approche Laplacien
• Le Laplacien est une dérivée d’ordre 2, à deux dimensions
GH =
GV =
144
Détection de contours
2.Approche Laplacien
• Le Laplacien est une dérivée d’ordre 2, à deux dimensions
• Il existe deux noyaux typiques de taille 3x3
1. Type 1 (zero crossing)
2. Type2 (Log) : Laplacian of Gaussian
GH =
GV =
145
Détection de contours
2.Approche Laplacien
2.1 Type 1 (zero crossing)
• Plusieurs masques peuvent être utilisés
=
Ou
146
Détection de contours
2.Approche Laplacien
2.1 Type 1 (zero crossing)
Matlab
147
Détection de contours
2.Approche Laplacien
2.2 Type 2 (Laplacian of Gaussian )
• Problème : Sensibilité aux bruits
• Solution: Les opérateurs de filtrage et de dérivation se
font en une seule étape de calcul
148
Détection de contours
Image bruitée (gaussien 0.01) Roberts
Sobel Laplacian of Gaussian How to Choose a DRM Software to protect your document?
Top Related