0% ont trouvé ce document utile (0 vote)
15 vues6 pages

Chapitre 4

Le chapitre 4 traite de la détection des contours dans les images, une méthode qui transforme une image en un ensemble de courbes représentant les frontières significatives. Il explique les approches basées sur le gradient et le laplacien pour identifier les contours, en détaillant les calculs des dérivées et les différents filtres tels que Roberts, Prewitt et Sobel. Enfin, il aborde les défis liés au bruit et propose des techniques de seuillage pour améliorer la détection des contours.

Transféré par

rglhou
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
15 vues6 pages

Chapitre 4

Le chapitre 4 traite de la détection des contours dans les images, une méthode qui transforme une image en un ensemble de courbes représentant les frontières significatives. Il explique les approches basées sur le gradient et le laplacien pour identifier les contours, en détaillant les calculs des dérivées et les différents filtres tels que Roberts, Prewitt et Sobel. Enfin, il aborde les défis liés au bruit et propose des techniques de seuillage pour améliorer la détection des contours.

Transféré par

rglhou
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

Chapitre 4

Détection des contours

1 Introduction
La détection des contours est une technique de réduction d'informations dans les
images, qui consiste à transformer l'image en un ensemble de courbes formant les
frontières significatives de l'image.

Un contour est la frontière qui sépare deux objets dans une image (il représente
une discontinuité de l'image). Il est en particulier caractérisé par un changement
brusque d'intensité.

Le principe de la détection de contours repose donc sur l'étude des dérivées de la


fonction d'intensité dans l'image. Ainsi, les contours sont définis comme étant les
extremums locaux du gradient de la fonction d'intensité, c.à.d. des passages par zéro
de la dérivée seconde dans la direction du gradient.

2 Approche du gradient
Dans une image I, un contour apparait comme une ligne où sont localisées de très
fortes variations de l'image I.
Soit
T
r r æ ¶I ¶I ö
G ( x, y ) = ÑI ( x, y ) = çç ( x, y ), ( x, y ) ÷÷ = (I x ( x, y ), I y ( x, y ) )
è ¶x ¶y ø
le gradient de l'image I. Il est caractérisé par son module
2
æ ¶I ö æ ¶I ö
2

G ( x, y ) = ç ( x, y ) ÷ + çç ( x, y ) ÷÷
è ¶x ø è ¶y ø
et par son orientation définie par
æ I ( x, y ) ö
F ( x, y ) = arctg ç x ÷.
ç I ( x, y ) ÷
è y ø
Le gradient est un vecteur perpendiculaire au contour. Les points du contour sont
les points où le module du gradient représente un maximum local.

2.1 Calcul approché des dérivées


f ( x) - f ( x0 )
Etant donné que pour une fonction f on a f ' ( x ) = lim , on peut donc
x ® x0 x - x0
f ( x ) - f ( x0 )
approcher f'(x0) par l'élément où x est un point choisi proche de x0.
x - x0
Puisque dans le cas d'une image I, les coordonnées x et y sont des entiers, alors
Ix(x,y) peut être approchée par l'une des trois valeurs suivantes :

1
I x ( x, y ) » I ( x + 1, y ) - I ( x, y )

I x ( x, y ) » I ( x, y ) - I ( x - 1, y )
I ( x + 1, y ) - I ( x - 1, y )
I x ( x, y ) »
2
La dernière approximation est une conséquence de la relation suivante :

f ( x 0 + h) - f ( x 0 - h )
f ' ( x ) = lim
h®0 2h
De même Iy(x,y) peut être approchée par l'une des trois valeurs suivantes :
I y ( x, y ) » I ( x, y + 1) - I ( x, y )

I y ( x, y ) » I ( x, y ) - I ( x, y - 1)

I ( x, y + 1) - I ( x, y - 1)
I y ( x, y ) » .
2
Ainsi, calculer Ix revient à convoler l'image I avec l'un des trois masques suivants :
G 1x = (0 - 1 1) ; G x2 = (- 1 1 0 ) ; G x3 = (- 1 0 1)
et Iy est obtenue en convolant l'image I avec l'un des trois masques suivants :
æ0ö æ - 1ö æ - 1ö
ç ÷ ç ÷ ç ÷
G y = ç - 1÷
1
; Gy = ç 1 ÷
2
; Gy = ç 0 ÷
3

ç1÷ ç0÷ ç1÷


è ø è ø è ø

Remarque : l'un des inconvénients de l'approche gradient est le fait qu'elle soit très
sensible au bruit. Pour illustrer cela, soit I un signal unidimensionnel observé et
obtenu par l'ajout à un signal pur I1 d'un bruit de la forme :

2
I(x) = I1(x) + ε sin(wx),
alors en dérivant on obtient :
I'(x) = I'1(x) + εw sin(wx),
ainsi, le bruit d'amplitude ε a été suite à la dérivation amplifiée par un facteur w=2πν
où ν est la fréquence du bruit.
Les bruits hautes fréquences perturberont donc fortement le signal dérivé I'. Il
convient alors d'effectuer un filtre passe bas ou un lissage afin d'éliminer ces hautes
fréquences.

2.1.1 Détecteur de Roberts


Le filtre de Roberts consiste à approcher les dérivées Ix et Iy par

Ix(x,y)=I(x+1,y+1) – I(x,y) et Iy(x,y)=I(x,y+1) – I(x+1,y)

Ainsi

I x ( x, y ) » (I * hx )( x, y ) et I y ( x, y ) » (I * h y )( x, y )

où les masques hx et hy de Roberts sont donnés par

æ-1 0ö æ0 - 1ö
hx = çç ÷÷ et h y = çç ÷
è0 1ø è1 0 ÷ø

2.1.2 Détecteur de Prewitt


Le filtre de Prewitt combine l'opérateur dérivé avec un filtre moyenneur dans
la direction orthogonale à celle de dérivation. Ainsi,

I x ( x, y ) » (I * hx )( x, y ) et I y ( x, y ) » (I * h y )( x, y )

où les masques hx et hy de Sobel sont donnés par

æ 1ö æ-1 0 1ö æ - 1ö æ - 1 - 1 - 1ö
ç ÷ ç ÷ ç ÷ ç ÷
hx = ç1÷(- 1 0 1) = ç - 1 0 1÷ et hy = ç 0 ÷(1 1 1) = ç 0 0 0 ÷
ç 1÷ ç-1 1÷ø ç1÷ ç1 1 1÷
è ø è 0 è ø è ø

2.1.3 Détecteur de Sobel


Le filtre de Sobel combine l'opérateur dérivé avec un filtre lisseur gaussien dans la
direction orthogonale à celle de dérivation. Ainsi,

I x ( x, y ) » (I * hx )( x, y ) et I y ( x, y ) » (I * h y )( x, y )

où les masques hx et hy de Sobel sont donnés par

3
æ1ö æ -1 0 1ö æ - 1ö æ - 1 - 2 - 1ö
ç ÷ ç ÷ ç ÷ ç ÷
hx = ç 2 ÷(- 1 0 1) = ç - 2 0 2 ÷ et hy = ç 0 ÷(1 2 1) = ç 0 0 0÷
ç1÷ ç -1 1 ÷ø ç1÷ ç1 1 ÷ø
è ø è 0 è ø è 2

2.2 Détection des points du contour


Pour identifier un pixel M(i,j) d'une image I comme étant un élément d'un contour,
on suit les étapes suivantes.

2.2.1 Calcule de la norme du gradient de I en M


En utilisant l'une des méthodes du paragraphe précédent, on calcule Ix(i,j) et
r
Iy(i,j), puis on calcule la norme du gradient G (i, j ) de I en M(i,j) en utilisant l'une des
formules suivantes :

N 1 (i, j ) = I x (i, j ) + I y (i, j )

N 2 (i, j ) = I x2 (i, j ) + I y2 (i, j )

(
N ¥ (i, j ) = max I x (i, j ) , I y (i, j ) )
2.2.2 Vérifier sir M(i,j) est un extremum local dans la direction du
gradient G (i, j )
On récupère les deux proches voisins M1(i1,j1) et M2(i2,j2) de M(i,j) appartenant à
r
la droite passant par M(i,j) et de direction G (i, j ) = (I x (i, j ), I y (i, j ) ) .Ils sont donnés
T

r r
par : M 1 (i, j ) = M (i, j ) + G (i, j ) et M 2 (i, j ) = M (i, j ) - G (i, j ) .
r
M(i,j) est considéré comme extremum local dans la direction du gradient G (i, j ) si

N(i, j) ³ N(i1 , j1 ) et N(i, j) ³ N(i 2 , j 2 )

où N est l'une des trois normes définies ci-dessus.

Remarque : le calcul de N(i1,j1) et N(i2,j2) se fera si nécessaire par interpolation


linéaire ou en utilisant les valeurs les plus proches.

2.2.3 Seuillage
Afin d'identifier les extremums locaux du gradient dans la direction du gradient,
on peut fixer un seuil S et considérer comme extremum local du gradient dans la
direction du gradient tout pixel M(i,j) vérifiant N(i,j) ≥ S.

Il faut signaler que si le seuil est choisit trop bas, alors nous serons devant une sur-
détection, c.à.d. qu'on va détecter beaucoup plus de bruit et des contours épais

4
apparaissent. Et ci par contre le seuil est trop élevé, alors nous aurons une sous-
détection qui induira l'apparition de contours non fermés.

Image originale Gradient

Seuillage à 10 Seuillage à 20

Pour remédier à ce problème, on utilise un Seuillage par hystérésis. Son principe


consiste à choisir deux seuils Sh > Sb pour la norme du gradient et sélectionner les
pixels pour lesquels l'une des deux conditions suivantes est vérifiée :

ü la norme du gradient est supérieure à Sh

ü la norme du gradient est supérieure à Sb et le pixel est connecté à un autre


pixel déjà accepté comme point du contour.

3 Approche laplacien
Puisque les points du contour sont des extremums locaux dans la direction du
gradient alors la dérivée du gradient dans la direction du gradient est nulle en ces
points. Suite à un calcul portant sur la dérivée seconde de l'image I dans la direction
du gradient, on vérifie que la condition
la dérivée du gradient dans la direction du gradient au point M(i,j) est nulle
peut être remplacée par la condition

5
¶2I ¶2I
le laplacien ÑI (i, j ) = (i , j ) + (i, j ) est nul au point M(i,j).
¶x 2 ¶y 2
Ainsi, l'approche laplacien considère les points du contour comme étant les points où
le laplacien est nul.
¶2I ¶2I
Comme pour le gradient, les dérivées (i, j ) et (i, j ) sont approchées par des
¶x 2 ¶y 2
différences finies. Ceci est équivalent à faire la convolution par le noyau

(1 - 2 1) pour approcher ¶ I2 (i, j ) et par le noyau (1 - 2 1)T pour


2

¶x
¶2I
approcher (i, j ) . Le laplacien peut être approché en utilisant l'un des masques
¶y 2
suivants :
æ0 1 0ö æ1 1 1ö
ç ÷ ç ÷
ç1 - 4 1÷ ç 1 - 8 1÷
ç0 0 ÷ø ç1 1÷ø
è 1 è 1
Laplacient discret 4 Laplacient discret 8

Conclusion :

ü Les approches du gradient et du laplacien sont assez proches.

ü La technique du gradient est moins sensible au bruit, mais de complexité plus


importante.

ü L'opérateur filtre utilisé pour les dérivations a une influence sur les résultats.

Vous aimerez peut-être aussi