Filtre de Prewitt

Un article de Wikipédia, l'encyclopédie libre.

Le filtre de Prewitt est utilisé en traitement d'image pour la détection de contours. Il tient son nom de Judith M. S. Prewitt.

Description simplifiée[modifier | modifier le code]

En termes simples, le filtre calcule le gradient d'intensité lumineuse de l'image à chaque point, donnant la direction et le taux de la plus grande décroissance. Le résultat nous indique les changements abrupts de luminosité de l'image et donc exhibe les contours probables de celle-ci. En pratique cette technique est plus fiable et facile à mettre en œuvre qu'un algorithme plus direct.

Techniquement, il s'agit d'un opérateur différentiel discret calculant une approximation du gradient d'intensité lumineuse d'une image.

Formulation[modifier | modifier le code]

Mathématiquement, le filtre est composé de deux matrices 3×3 que l'on va convoluer avec l'image originale pour calculer une approximation de sa dérivée en tout point. La première matrice donne la dérivée horizontale et la seconde donne la dérivée verticale. Si nous définissons A comme étant l'image source, et Gx et Gy les deux images dérivées horizontale et verticale (respectivement) de l'intensité lumineuse de l'image, on peut les calculer ainsi avec l'opération de convolution 2D suivante :

Cet opérateur ainsi défini pouvant se décomposer en un produit d'une moyenne et d'une différentielle, il calcule le gradient lissé.

Par exemple, Gx peut s'écrire :

Enfin, nous pouvons calculer l'amplitude du gradient via la norme du vecteur ainsi défini en tout point :

De même, nous pouvons calculer sa direction :

Par exemple, correspond à un front vertical qui est plus sombre du côté droit.

Exemple[modifier | modifier le code]

Image en nuances de gris d'un mur de briques et d'un râtelier à vélo
Gradient avec le filtre de Prewitt d'une image en nuances de gris d'un mur de briques et d'un râtelier à vélo

Article connexe[modifier | modifier le code]

Lien externe[modifier | modifier le code]

Notes et références[modifier | modifier le code]