Le gradient est une grandeur vectorielle qui indique comment une grandeur physique varie en fonction de ses différents paramètres. Dans notre cas, nous voulons analyser la variation d’intensité entre chaque pixels de l’image

>> Accueil <<

Définition et notions

Méthode du gradient

Estimation des contours

Méthode du Laplacien

Méthode de Canny et Deriche

Exemple des différentes méthodes

Méthode du gradient

SOMMAIRE


- haut de page -

I - Le gradient

A. Définition

Le gradient est une grandeur vectorielle qui indique comment une grandeur physique varie en fonction de ses différents paramètres.

La fonction de gradient en coordonnées cartésiennes se définit de la façon suivante :
demo1
Le gradient est aussi caractérisé par un module et une direction :
demo1

B. Lien avec les contours

Dans notre cas, nous voulons analyser la variation d’intensité entre chaque pixels de l’image.

Intuitivement, le gradient indique la direction de la plus grande variation du champ scalaire, et l'intensité de cette variation. Par exemple, le gradient de l'altitude est dirigé selon la ligne de plus grande pente et sa norme augmente avec la pente.

On peut donc considéré qu’un point de l’image (pixel) correspond à un maximum local de la norme du gradient. La normale du contour est donnée par le gradient. Si la valeur du gradient est non nulle on peut donc déduire que l’on se situe dans une zone de transition entre une partie claire et une partie sombre.

limite de zone

- haut de page -

II - Propriété du gradient

A. Propriété 1

Le gradient est orthogonal aux courbes de niveaux de l’image.
demo2
Un développement limité d'une fonction f au voisinage de x0, est l'écriture d'une fonction sous la forme d'une fonction polynôme et d'un reste. Il se révèle très utile quand on recherche l'approximation d'une fonction au voisinage d'un point. Dans notre cas on cherche l’approximation au point ( x+c , y+d ).
demo3
Précedent | Suivant

B. Propriété 2

Le gradient est orienté dans la direction où le champ croit le plus localement, dans le sens de croissance du champ et cette puissance est d’autant plus forte que la norme du gradient est importante.

  • Sa direction est selon la variation maximale de f en fonction de la distance.
demo4
Précedent | Suivant


Le champ est donc maximal lorsque l’on se situe dans la direction du gradient. On vérifie donc une première règle selon laquelle le champ, la variation, au voisinage de ( x , y ) , croit le plus dans la direction du gradient.
  • Son sens indique les valeurs où f augmente.
La multiplication d’une matrice par sa transposée étant égale à sa norme au carré.

demo5
Précedent | Suivant


Le gradient est donc orienté dans le sens de croissance de f, c'est-à-dire depuis les faibles valeurs de f vers les fortes valeurs de f. Dans notre cas, le gradient croit de ( x , y ) vers ( x+c , y+d ).
  • Sa norme est la variation maximale de f en fonction de la distance.
On déduit ensuite de la même expression :
demo6
Soit, en d’autres termes, plus f varie rapidement au voisinage du point considéré plus la norme du gradient sera grande.
- haut de page -

III. Discrétisation du gradient

L’approximation des gradients horizontal et vertical revient à définir les maxima des gradient et donc à calculer les deux dérivées du gradient.

Cependant, le gradient est une notion qui concerne des champs 2D différentiables et donc
« analogiques ». Or, dans la pratique, on souhaite traiter des images numériques. Se pose alors le problème de savoir comment calculer un concept qui est théoriquement l'apanage des fonctions analogiques.

Heureusement, chacune des composantes du gradient peut être approximée par filtrage numérique du champ échantillonné pourvu que le filtre soit choisi de manière appropriée. On peut ainsi définir les conditions que doit satisfaire la réponse impulsionnelle de ce filtre pour qu'on obtienne une approximation satisfaisante de l'opération de dérivation horizontale ou verticale.

On effectuera la démonstration uniquement pour le gradient horizontal, puisque le gradient vertical s’obtient de façon identique. On s'intéresse donc ici à l'estimation locale du gradient horizontal et donc à la détection des contours verticaux dans l’image.

Dans la pratique, on dispose de l’image échantillonnée, notée : formule1

Supposons l’échantillonnage rectangulaire de pas L1 et L2.

On a alors :formule2 où f est le champ continu supposé différentiable

En filtrant l’image initiale avec un filtre de réponse impulsionnelle finie, on pourra obtenir l’image des deux gradients. Le filtrage d’une image consiste à convoluer sa fonction d'intensité avec une fonction appelée réponse impulsionnelle du filtre selon la formule suivante :
demo7
Précedent | Suivant


Pour déterminer le filtre optimal formule4 on doit :
  • Réaliser une bonne approximation de la dérivée du gradient
demo7
  • Limiter l’impact du bruit amplifié par le filtre de gradient
Pour éviter cela on applique souvent à la réponse impulsionnelle une opération de lissage (moyennage sur 3 points) dans la direction orthogonale à celle où l'on calcule le gradient. Le lissage permet entre autre de supprimer le bruit. Combiné à un seuillage, cela permet de faire ressortir les contours les plus importants et de diminuer les pixels superflus.

Le choix du filtre est donc sous-déterminé : on a une infinité de filtres solutions satisfaisant les conditions requises. D'où les choix multiples de filtres existant dans la littérature.
- haut de page -