Introduction au filtrage spatial d'images
Introduction au filtrage spatial d'images
Chapitre III
LE FILTRAGE SPATIAL
I. DEFINITION
Le filtrage consiste à appliquer une transformation (appelée filtre) à tout ou partie d'une
image numérique en appliquant un opérateur.
1 1 1
1 4 1
1 1 1
Ainsi le produit de la matrice image, généralement très grande car représentant
l'image initiale (tableau de pixels) par le filtre donne une matrice correspondant à l'image
traitée.
23
Chapitre III: Filtrage spatial Ingénieur Docteur Seddik Hassene
On appelle bruit tout signal nuisible qui se superpose au signal utile en un point
quelconque d’une chaîne de mesure ou d’un système de transmission. Il est un terme issu
du domaine de l'acoustique et désigne un signal parasite, que ce soit pour le son ou pour
l'image, le principe est identique : sur tout signal de base vient s'adjoindre un ensemble
d'informations parasites aléatoires.
2. Sources de bruit
Les sources de bruits sont très nombreuses et variées. En effet à chaque étape de
l'acquisition d'une scène, des perturbations (rayures, poussières, caméra, amplification,
quantification) vont détériorer la qualité de l'image. Toutes ses perturbations peuvent gêner
la compréhension des informations d’une telle image ce qui nécessite certains traitements.
Le bruit peut provenir de différentes causes :
Environnement lors de l'acquisition
Bruits liés au capteur :
Capteur mal réglé
Capteur de mauvaise qualité
Types de capteur (radar, laser, microscope électronique…)
Qualité de l'échantillonnage
Bruits liés à la nature de la scène
Nuage sur les images satellitaires
Poussières dans les scènes industrielles
Brouillard pour les scènes routières
Ce dernier peut être soit additif soit multiplicatif.
3. Type de bruit
L’image captée est toujours infectée par un bruit (parasite) qui est considéré comme un
phénomène de brusque variation de l’intensité d’un pixel par rapport à ses voisins. Ces
bruits sont de types:
a. Bruit multiplicatif
L’image bruitée est défini par la formule suivante :
Y ( x, y ) S ( x, y ).N ( x, y ) (1)
Tel que S représente l’image originale, N est le bruit multiplicatif : c’est une variable
aléatoire de moyenne égale à 1.
La principale caractéristique de ce bruit est que les pixels d'une zone homogène seront
d'autant plus bruités que leur niveau de gris est élevé. Le plus célèbre bruit multiplicatif est
le bruit de chatoiement (ou speckle) (Fig.1.5)
Le bruit multiplicatif (speckle) appliquée à l’image est caractérisé par une variance v.
Pour l’exemple suivant v=0,1.
24
Chapitre III: Filtrage spatial Ingénieur Docteur Seddik Hassene
b. Bruit additif
Y ( x, y ) S ( x, y ) * N ( x, y ) (2)
Où N est le bruit additif : c’est une variable aléatoire de moyenne égale à 0 et c’est le
coefficient du bruit (ou gain).
Exemples de bruits additifs : bruit gaussien et impulsionel (Salt & Pepper).
La figure suivante montre une image bruitée avec un bruit gaussien de variance v=0.1 et de
moyenne µ nulle.
Le bruit est l’ensemble de pixels qui ne font pas partie des pixels de la scène à traiter. Il est
préférable de nettoyer, autant que possible, l’image de cet intrus à fin d’améliorer sa
qualité visuelle on éliminant les effets de ce dernier, c’est pour cela qu’on a eu recours au
filtrage.
4. Lissage
5. Accentuation
L'accentuation (ou bruitage) est l'inverse du lissage; il s'agit d'une opération visant à
accentuer les différences entre les pixels voisins. Ainsi l'accentuation peut permettre de
mettre en exergue les limites entre les zones homogènes de l'image et est alors appelée
extraction de contours (également contourage ou rehaussement de contours).
25
Chapitre III: Filtrage spatial Ingénieur Docteur Seddik Hassene
6. Tramage
Le tramage (en anglais dithering) est une technique consistant à alterner des motifs
géométriques utilisant peu de couleur, appelés "trame", afin de simuler une couleur plus
élaborée.
1. Notion de Filtrage
Comme nous avons mentionné précédemment, toute image peut être contaminée par un
bruit. Certes, les traitements de restauration sont souvent indispensables pour améliorer la
qualité des images observées. Ainsi, le dé-bruitage est souvent l'étape nécessaire et
première d'être pris avant que les données d'images soient analysées. Le filtrage représente
une des opérations les plus essentielles réalisées dans le cadre du traitement des images.
L'objectif avoué du filtrage est de réduire les variations d'intensité au sein de chaque région
de l'image tout en respectant l'intégrité des scènes : les transitions entre régions
homogènes, les éléments significatifs de l'image doivent être préservés au mieux .Ils
existent plusieurs types de filtres, certains sont linéaires (filtres gaussien, moyenneur)
s’exprimant sous forme de convolution, d’autres sont non linéaires d’ordre statistique
(filtre Médian,….). Les filtres peuvent effectuer plusieurs types d'opérations sur une
image, comme du lissage (atténuer le bruit) ou du rehaussement de contours (détecter des
variations d’intensité) pour modifier ses caractéristiques.
2. Types de Filtrage
Pour éliminer les signaux indésirables dans une image, différentes méthodes de filtrage ont
été développée suivant le type et l’intensité de bruit, ou les applications : auxquelles est
destinée l’image. Les premières et les plus simples, de ces méthodes sont basés sur le
filtrage linéaire. Les limitations de ces techniques, en particulier leur mauvaise
conservation des transitions, a conduit cependant au développement des filtres non linéaire.
Puisque le bruit dans une image a généralement un spectre de hautes fréquences que les
composantes normaux de l’image, alors le filtre passe bas peut être efficace pour atténuer
ce bruit. Cette atténuation peut être effectuée dans le domaine fréquentiel ou dans le
domaine spatial (par convolution).
a. Filtrage fréquentiel
La transformée de Fourier F (u , v ) d’une image f ( x, y ) est une transformation
mathématique qui décompose l’image en une somme infinie de fonction sinusoïdale.
L’image obtenue n’est plus représentée par la valeur de ses pixels en fonction de leur
position dans l’espace, mais par l’amplitude et la phase de simulation en fonction de leur
fréquence [3]. On notera alors F (u , v ) la transformée de Fourier à deux dimensions de
l'image f(x, y) telle que :
1 N 1 M 1 ux vy
F (u, v)
M N x 0 y 0
f ( x, y) exp[2j ( )]
N M
(3)
26
Chapitre III: Filtrage spatial Ingénieur Docteur Seddik Hassene
Le module F (u, v) a l’avantage d’être une fonction réelle, désignée sous le nom spectre
d’amplitude. En notant Fre (u, v) et Fim (u, v) les parties réelle et imaginaire de F (u , v ) ,
nous avons :
F ( u , v ) Fre ( u , v )2 Fim ( u , v )2 (4)
2
La fonction F( u,v ) Fre( u,v )2 Fim( u,v )2 (5)
est connue sous le nom du spectre de puissance.
Le spectre de phase associé aux fréquences (argument de ( F (u , v ) ) est définie de la
manière suivante :
1 Fim ( u , v )
(6)
( u , v ) tan
Fre ( u , v )
Filtre
fréquentiel
Image Image
originale fréquentiell
spatiale e
Image
filtrée
Fig.3 Filtrage Fréquentiel spatiale
1
H( f ) K
f 2
1 ( )
fc (9)
La courbe suivante montre le cas idéal de ce type de filtre, sa bande passante et [0 ,fc] :
1 si f f c (10)
H( f )
0 si f > f c
|H(f)|
0 fc f
Fig.4 Filtre passe bas idéal
Ce filtre supprime les composantes fréquentielles ayant une fréquence supérieure à f c .Le
résultat de ce type de filtrage :
Les hautes fréquences sont supprimées
Les basses fréquences, dont la fréquence fondamentale, sont conservées
L’image reconstruite présente du flou sur le contour
Passe-haut : Le filtrage passe-haut permet d’améliorer le contraste local en accentuant les
fins détails par rapport aux lentes variations d’intensité de l’image. Dans le même temps,
ces filtres rehaussent le bruit. Ils sont souvent employés pour améliorer l’aspect visuel des
clichés planétaires ou lunaires en donnant du piqué à une image légèrement floue. Un filtre
passe-haut du premier ordre est caractérisé par sa fréquence de coupure f c et par son gain
dans la bande-passant K .La fonction de transfert est exprimée suivant l’équation (12) :
w
j
wc
H ( jw ) K (11)
w
1 j
wc
Tel que w 2f et wc 2f c
On aura donc :
f
j (12)
fc
H ( jf ) K
f
1 j
fc
Le module de la fonction de transfert est égale à :
f
fc
H( f ) K (13)
f 2
1( )
fc
La figure suivante montre la bande passante du filtre passe haut [fc,∞] :
28
Chapitre III: Filtrage spatial Ingénieur Docteur Seddik Hassene
|H(f)|
0 fc f
Fig.5 Filtre passe haut idéal
Un filtre passe-haut est un système linéaire ne modifiant pas ou peu les hautes fréquences
de l’image d’entrée.
Basses fréquences et fréquence fondamentale éliminées : L’information d’intensité
est enlevée lors de la reconstruction de l’image.
Hautes fréquences préservées : Les changements brusques d’intensité (bruit,
frontières, ...) sont mis en évidence
Ce filtre supprime les composantes fréquentielles ayant une fréquence
inférieure à f c .
Passe-bande : Ce type de filtre a pour rôle de garder une bande de fréquences du spectre
de Fourier et d’éliminer certaines fréquences indésirable présentes dans l’image. Il est
complémentaire d’un filtre passe-bas et d’un filtre passe-haut.
Il est un système linéaire qui préserve une plage de fréquences.
L’image reconstruite est une combinaison d’un nombre réduit d’images de base.
Un filtre passe-bande est un filtre ne laissant passer qu’une bande ou intervalle de
fréquences compris entre une fréquence de coupure basse fc1 et une fréquence de coupure
haute fc2 du filtre : Entre les deux fréquences de coupure ( fc1 fc2 ),le filtre laisse passer tout,
en dehors, il coupe tout (équation 15 ) :
0 si f < f c1
(14)
H ( f ) 1 si f c1 f f c2
0
si f > f c2
29
Chapitre III: Filtrage spatial Ingénieur Docteur Seddik Hassene
|H(f)|
0 fc1 fc2 f
Fig.7 Filtre passe bande idéal
Coupe- Bande : Son fonctionnement est l’inverse du filtre passe bande : Entre les deux
fréquences de coupure ( fc1 fc2 ),le filtre coupe tout, en dehors, il laisse passer tout :
1 si f f c1 (15)
H ( f ) 0 si f c1 < f < f c2
1 f f c2
si
0 fc1 fc2 f
Fig.8 Filtre coupe bande
b. Filtrage spatial
Le filtre linéaire peut être directement effectué dans l’espace image (domaine spatial) en
utilisant l’opérateur de convolution. Les filtres spatiaux sont les premières méthodes
utilisés pour palier aux problèmes de bruits et à fin d’améliorer la qualité visuelle et
d’extraire des attributs de l’image (ex : contours).Se sont les filtres passe bas qui servent à
supprimer les hautes fréquences sur les quelles domine le bruit.
L’opération de filtrage spatial ou de convolution d’une image A par un filtre B est donnée
par la formule suivante :
g( x , y ) ( A * B )( i , j ) A( x i , y j )B( i , j )
i j (16)
B est le noyau de convolution (dans cette figure on utilise un filtre moyenneur (3×3). Pour
chaque pixel de l’image, le filtre calcule sa nouvelle valeur en tenant compte du voisinage
de ce dernier. L’opération du filtrage est illustrée les deux figures suivantes (Fig.1.12,
Fig.1.13) :
30
Chapitre III: Filtrage spatial Ingénieur Docteur Seddik Hassene
On remarque que les pixels de l’image changent après convolution et prennent des autres
valeurs ainsi que l’image est devenue plus floue qu’avant convolution. Soit un filtre (i, j)
de masque de convolution (n=3) dont les W (i , j ) sont les poids de pondération :
W(-1,-1) W(-1,0) W(-1,1)
w( 1,1)A( x 1, y 1) w( 1,0 )A( x 1, y ) w( 1,1)A( x 1, y 1)
(17)
gx, y w( 0,1)A( x, y 1) w( 0,0 )A( x, y ) w( 0,1)A( x, y 1)
w(1,1)A( x 1, y 1) w(1,0 )A( x 1, y ) w(1,1)A( x 1, y 1)
31
Chapitre III: Filtrage spatial Ingénieur Docteur Seddik Hassene
Le filtrage spatial d’une image I consiste à convoluer cette image considérée comme
une fonction I(x,y) avec une fonction f(x,y). f(x,y) s’appelle la « réponse impulsionnelle
du filtre ». Le résultat est une nouvelle image dite « filtrée » définie par la formule
suivante:
2
En considérant l’image comme une fonction continue sur R
a. Filtre MOYENNE
Propriétés : C’est un filtre passe bas qui sert à remplacer le niveau de gris d’un pixel par la
moyenne des niveaux de gris des pixels environnants.
Dans le cas où l’image contient un bruit et que la propriété précédente est préservée, un
moyennage local peut atténuer ce bruit.
Cette opération est appelée lissage (smoothing)
La taille du kernel (masque de convolution) dépend de l'intensité du bruit et de la taille des
détails significatifs de l'image traitée. Pour effectuer un moyennage dans un bloc voisinage
de taille d d , on obtient la sortie g ( x , y ) :
d 1 d 1
1 2 2 (18)
g( i , j ) f ( i n, j m )
d2 n
d 1
m
d 1
2 2
Filtre Moyenneur
32
Chapitre III: Filtrage spatial Ingénieur Docteur Seddik Hassene
Il est généralement sous la forme d’une matrice 3×3 qui peut être obtenu à travers
une convolution matricielle ou vectorielle comme défini ci-dessous. Distribution
Gaussienne en 1D :
x 2
1
G (x) 2 2
e Avec μ : moyenne et σ écart-type
2 2
1
x 1 2
y 2 2
G ( x, y) 2 2
e
2 2
1 2 1
1/16× 2 4 2
1 2 1
1 1
0.5 0.5
0 0
10 10
10 10
0 0 0 0
-10 -10 -10 -10
Variance =0.5 Variance =1.5
Fig.12 Cloche gaussienne pour différentes valeurs de sigma
Le problème qu'on rencontre avec cette méthode est le manque de moyen scientifique pour
choisir la taille de la fenêtre, il faut tâtonner jusqu'à trouver la meilleure échelle. Les fortes
discontinuités qui sont les contours des images sont détruites. On peut comprendre ce
phénomène grâce à la théorie de Fourrier. Que le filtre soit gaussien ou rectangulaire, on a
dans l'espace des fréquences, un passe-bas qui tue les hautes fréquences qui sont les seules
à préserver les irrégularités des signaux comme les contours [7 et 15].
Le filtre gaussien se caractérise par un écart type σ et une moyenne µ. Le choix de la
valeur de σ est très important pour déterminer l’efficacité du filtre et la qualité de l’image
filtrée. En effet :
Si est plus petit, pas d’élimination de bruit et le lissage n’a pas presque
d’effet
Plus est grand, plus on réduit le bruit, mais plus l’image filtrée est
Floue
Si est choisi trop grand, tous les détails de l’image sont perdus.
Donc on doit trouver un compromis entre la quantité de bruit à enlever et la qualité de
l’image en sortie.
33
Chapitre III: Filtrage spatial Ingénieur Docteur Seddik Hassene
c. Filtre BINOMIAL
Soit un binôme composé des termes x et y défini sur un anneau (par exemple deux nombres
réels ou complexes, deux matrices, etc.) qui commutent (c'est-à-dire tels que xy = yx) et un
entier naturel n, alors
( + ) =∑ (20)
!
= !( )!
(21)
1 4 6 4 1
Les coefficients de ce filtre sont obtenus par le binôme de NEWTON. Un filtre 1D
binomiale du quatrième ordre donne le vecteur suivant : 1/16×
1 4 6 4 1
4 16 24 16 4
6 24 36 24 6
×1/256
4 16 24 16 4
1 4 6 4 1
Les coefficients des séries binomiaux sont générés par le triangle de Pascal :
34
Chapitre III: Filtrage spatial Ingénieur Docteur Seddik Hassene
d. Filtre PYRAMIDAL
1 2 3 2 1
2 4 6 4 2
3 6 9 6 3 ×1/81
2 4 6 4 2
1 2 3 2 1
e. Filtre Circulaire
0 1 1 1 0
1 1 1 1 1
1 1 1 1 1 ×1/21
1 1 1 1 1
0 1 1 1 0
f. Filtre CONIQUE
0 0 1 0 0
0 2 2 2 0
1 2 5 2 1 ×1/25
0 2 2 2 0
0 0 1 0 0
g. Filtre MEDIAN
35
Chapitre III: Filtrage spatial Ingénieur Docteur Seddik Hassene
l'ordre croissant) des niveaux de gris des pixels situés à l'intérieur de cette fenêtre. Ainsi,
même si plusieurs pixels voisins sont bruités, on peut corriger le pixel courant.
g ( x, y ) médian [ f ( n, m ) & S ( x, y )] (22)
Ou S ( x , y ) est un voisinage de ( x, y )
Etapes:
a) Création de la liste des valeurs du voisinage
b) Trie de la liste dans un ordre croissant
c) la nouvelle valeur du pixel central g(x, y) est la valeur médiane des pixels de voisinage.
Exemple :
78 45 14 Trie de la liste dans un ordre croissant 78 45 14
60 120 20 60 60 20
14 20 37 45 60 64 78 80 120
80 64 37 80 64 37
a)Voisinage b) Médiane c) Voisinage
avant filtrage après filtrage
Fig.13 Mise en œuvre du filtre Médian
Cette valeur "médiane "(60) est la plus éloignée des deux extrêmes. Il permet d’obtenir de
bon résultats pour des images bruitées par un bruit poivre et sel [Fig.1.14] mais il est aussi
peu performant que le filtre conservatif pour le bruit gaussien [7et 15].
Ses principaux inconvénients sont de rendre flous les contours, d’effacer les structures
fines voire même de distordre certaines formes [3]. La figure (1.13) montre une image de
format JPEG, capté par un capteur de faible résolution (téléphone portable). Elle est de
dimensions 480 pixels en largeur et 640 pixels de hauteur. L’image est bruitée par un bruit
additif (Salt & Pepper) de densité d=0.2, et filtrée par un filtre médian.
Image originale
Image originale Image bruitée
Image bruitée Image filtrée
Image filtrée par un médian
h. Filtre de Wiener
Le filtre de Wiener est un filtre linéaire largement utilisé pour la restauration des images.
Dans le cadre de l'estimation bayésienne, on peut supposer qu'on connaît a priori de
l'information du signal et on peut, dans ce cadre seulement construire la meilleure
convolution pour dé-bruiter une image altérée par un bruit blanc gaussien dont on connaît
la puissance. Il est parmi les meilleurs filtres linéaires qui éliminent le bruit [7].
L’estimation du signal original est basée sur la minimisation de l’erreur quadratique
moyenne entre cette dernière et l’image bruitée.
Considérons une image u (x ) , convoluée par la fonction de transfert h(x ) auquel nous
avons ajouté un bruit additif . Le signal de sortie Y (x) au point x s’écrit alors :
Y ( x ) ( h )( x ) ( x ) (23)
36
Chapitre III: Filtrage spatial Ingénieur Docteur Seddik Hassene
Cette équation peut être écrite de manière vectorielle en notant Y l’ensemble des données
du signal de sortie, u l’ensemble des données du signal d’entrée, H la matrice de
transfert et le vecteur de bruit. L’équation (22) devient :
Y Hu (24)
Le filtre de Wiener minimise l’erreur quadratique moyenne (EQM) entre
^
l’image originale u et celle de sortie u suivant cette formule :
^ ^
arg min E[(u u ) T (u u )] (25)
Le filtrage des images par le filtre de Wiener n’est pas direct. En effet, il est nécessaire
d’estimer la densité spectrale de puissance du signal. De plus, en pratique la stationnarité
du signal n’est pas vérifiée.
i. Filtre de Nagao
L’algorithme de Nagao est un peu plus complexe. La valeur du pixel central est remplacée
par la valeur moyenne de la région qui a la plus faible variance. Le but de ce filtre est qu’il
permet d’adoucir l’image sans pour autant rendre les bords flous donc on a conservation
des contours. Par ailleurs, la taille du voisinage, est comme fonction de la taille des
éléments significatifs de l'image, de l'intensité du bruit. Il est évident que ce filtre est d'une
plus grande complexité d’implémentation que les précédentes.
Les étapes de filtrage :
• On calcule la moyenne mi et l’écart-type σi de chacun des masques hi utilisées.
• On sélectionne le masque hk ayant le plus petit écart-type σk
• On affecte la valeur mk au pixel
EXEMPLE DE DEBRUITAGE
L'image que nous avons choisie avec laquelle nous allons effectuer les comparaisons est
celle (classique) du bateau.
37
Chapitre III: Filtrage spatial Ingénieur Docteur Seddik Hassene
38
Chapitre III: Filtrage spatial Ingénieur Docteur Seddik Hassene
Un contour peut être considéré comme une frontière entre deux régions différentes
(suivant un critère de similarité donné, par exemple un niveau de gris identique à un
epsilon prés ou une couleur identique...). La détection d’un contour est généralement basée
sur la détection du changement à la frontière de deux régions. L’obtention des contours est une
étape importante dans le processus d’interprétation automatique d’une image puisque cela
permet de matérialiser les contours des objets recherchés.
Ou filtre (High boost), il peut dans certains cas être déduit d’un filtre passe bas
selon la relation suivante :
39
Chapitre III: Filtrage spatial Ingénieur Docteur Seddik Hassene
Si on note par f(x,y) est l’image originale, h(x,y) : un filtre passe bas et δx,y une
impulsion unitaire. Alors :
Dans une image supposée continueI(x, y) un contour apparait comme une ligne ou sont
localisées les très fortes variations deI(x, y) Soit le gradient de I(x, y) noté comme suit:
Gr I
G I x , y x x
Gr I
y
y
I ( x , y ) I( x x, y ) I( x, y )
x lim
x x 0 x (27)
I( x, y ) I( x x, y )
lim
x 0 x
I ( x , y ) I ( x , y y ) I ( x , y )
y lim
y y 0 y (28)
I ( x , y ) I ( x , y y )
lim
y 0 y
∇⃗
g⃗= ∇⃗
(29)
40
Chapitre III: Filtrage spatial Ingénieur Docteur Seddik Hassene
I(x, y) - I(x - 1, y - 1)
I(x, y) - I(x - 1, y)
I(x, y) - I(x - 1, y + 1) (30)
P ( x , y ) I(x, y) - I(x, y - 1)
I(x, y) - I(x, y + 1)
I(x, y) - I(x + 1, y - 1)
I(x, y) - I(x + 1, y)
I(x, y) - I(x + 1, y + 1)
L’amplitude de cette variation selon les directions choisies est traduite comme suit :
I( x x,y y ) I( x,y )
d ( dx , dy )1
x 2
y 2
I( x x,y ) I( x,y )
d ( dx , dy ) 2
x
I( x x,y y ) I( x,y )
d ( dx , dy ) 3
x 2
y 2
I( x,y y ) I( x,y )
d ( dx , dy ) 4
y
d ( dx , dy ) 5 0
d ( dx , dy )
I( x,y y ) I( x,y )
d ( dx , dy ) 6
y
I( x x,y y ) I( x,y )
d ( dx , dy ) 7
x 2
y 2
(31)
I( x x,y ) I( x,y )
d ( dx , dy ) 8
x
I( x x,y y ) I( x,y )
d ( dx , dy ) 9
x 2
y 2
et par application de – , sur {0,255} . Un contour est alors d´efini comme le lieu des
maximums du gradient
dans la direction g⃗ du gradient. Un point de contour vérifie donc :
=0 ≤0 (32)
L’´equation obtenue est complexe et non linéaire :
. + + . + (33)
Il n’ya pas de solution explicité a cette équation, une solution par tâtonnement est
envisageable.
-1 -1 -1
-1 8 -1
-1 -1 -1
41
Chapitre III: Filtrage spatial Ingénieur Docteur Seddik Hassene
-1 -1 -1 -1 -1 2 -1 2 -1 2 -1 -1
2 2 2 -1 2 -1 -1 2 -1 -1 2 -1
-1 -1 -1 2 -1 -1 -1 2 -1 -1 -1 2
e. Filtre KIRCH
-3 -3 5 -3 -3 -3 5 5 -3 5 5 5
-3 0 5 -3 0 -3 5 0 -3 -3 0 -3
-3 -3 5 5 5 5 -3 -3 -3 -3 -3 -3
f. Operateur de ROBINSON
-1 -1 1 1 1 1 1 1 -1 -1 1 1
-1 -2 1 -1 -2 -1 1 -2 -1 -1 -2 1
-1 -1 1 -1 -1 -1 -1 -1 -1 -1 -1 -1
g. Filtre GRADIENT
G x f f
f , (34)
G y x y
42
Chapitre III: Filtrage spatial Ingénieur Docteur Seddik Hassene
43
Chapitre III: Filtrage spatial Ingénieur Docteur Seddik Hassene
i. Filtre de PREWITT
-1 0 1 -1 -1 -1
-1 0 1 0 0 0
-1 0 1 1 1 1
j. Filtre de SOBEL
-1 0 1 -1 -C -1
-C 0 C 0 0 0
-1 0 1 1 C 1
Ce filtre peut être obtenu à l’aide d’une convolution vectorielle ; généralement C=2
k. Filtre Laplacien
C’est une dérivée partielle seconde appelée laplacien ou Hessienne qui est une matrice de
dérivé partielle d’ordre 2
Hessienne :
= (37)
Laplacien
Calcul du Laplacien et extraction des zéros (voisins de 0)
44
Chapitre III: Filtrage spatial Ingénieur Docteur Seddik Hassene
( , )
=∇ ( ) (39)
= ∇ .∇ + ∇ (40)
Ou C est le coefficient de diffusion décroissant avec le gradient de l’image
( , )= (41)
‖ ∇ ( , )‖
Appliquer itérativement cette équation revient à effectuer des lissages successifs, avec
conservation des contours saillants.
45
Chapitre III: Filtrage spatial Ingénieur Docteur Seddik Hassene
( , ) ( ∆ , ) ( , )
= lim∆ → ∆
(42)
Une différence finie est une approximation de la dérivé elle peut être dirigé vers la gauche,
la droite ou centrée comme suit :
Posons ∆ = 1 donc une seule variation interpixelique :
( , )
= ( + 1, ) − ( , ) (43)
( , )
= ( , ) − ( − 1, ) (44)
( , ) ( , ) ( , )
= (45)
46
Chapitre III: Filtrage spatial Ingénieur Docteur Seddik Hassene
[−1 1] ;
[1 −1] ;
[1 0 −1] :
[−1 0 1] :
La même procédure est appliquée sur les colonnes pour générer des masques verticaux ;
Une convolution entre chaque masque et son transposé nous mène au filtre 2D.
( , ) ( ∆ , ) ( , )
= lim∆ → ∆
(46)
( , ) ( ∆ , ) ( , ) ( ∆ , )
= lim∆ → ∆
(47)
Posons ∆x = 1 donc une seule variation interpixelique les masques générés sont :
1 −2 1
Même chose pour les différences sur l’axe des ordonnés. Une convolution vectorielle nous
génère le masque 2D.
Pour une derivé croisée, deux différences finies d’ordre 1 sont juxtaposées comme suit:
( , ) ( , ) ( , ) ( , ) ( , )
= lim∆ → (48)
REMARQUE
Plusieurs masques peuvent être utilisés. La démarche consiste à choisir un type de masque
puis à effectuer des permutations circulaires dans les huit directions possibles du gradient.
Des exemples d'opérateurs gradient boussole dans la direction Nord sont présentés ci-
dessous en recourant aux masques de Prewitt, de Kirsch, de Robinson de niveau 3 ou 5.
Le terme de niveau désigne le nombre de valeurs différentes présentes dans le masque.
L'objectif est bien de calculer le module du gradient de l'image analysée. Souvent avant
d'appliquer le filtre de Canny, un filtrage préalable est opéré sur l'image au moyen d'un
filtre gaussien. Les différentes étapes sont énumérées ci-après :
47
Chapitre III: Filtrage spatial Ingénieur Docteur Seddik Hassene
calcul du module du gradient à partir des deux images représentant les gradients de
l'image filtrée passe-bas dans les directions horizontale et verticale.
Idée générale
AVANTAGES :
+ Bonne détection
+ Bonne localisation
+ Faible multiplicité des réponses
48
Chapitre III: Filtrage spatial Ingénieur Docteur Seddik Hassene
Le principe général
La méthode
Le filtre de canny est un filtre impair à réponse impulsionnelle finie défini sur l'intervalle [-
M,M] ce qui signifie que h est nul en dehors de cet intervalle et que la dérivée est continue.
- Bonne détection
- Bonne localisation
- Faible multiplicité des réponses
1. Le lissage:
Lisser l'image pour supprimer le bruit. En effet, le bruit sur une image est inévitable et a
plusieurs sources. Ce bruit peut fausser le résultat d'une détection de contour et causer la
détection des lignes ne faisant pas partie du contour. C'est pour cela que le bruit doit être
49
Chapitre III: Filtrage spatial Ingénieur Docteur Seddik Hassene
2. Trouver le gradient:
Les contours sont détectés là où le gradient à la plus grande valeur. Canny utilise la
méthode du gradient car comme dans cette dernière, la méthode de Canny recherche les
zones où la variation de l'intensité lumineuse est la plus importante.
Dans un premier temps, nous devons trouver une estimation du gradient horizontal et
vertical. La norme du gradient est donc la distance Euclidienne obtenue comme suit:
( , )= ( , ) + ( , ) (49)
Avec
( , )
( , )= (50)
( , )
( , )= (51)
= | |
(52)
50
Chapitre III: Filtrage spatial Ingénieur Docteur Seddik Hassene
Seules les extrema locaux sont considérés comme des contours. Pour les définir nous
observons les 8 pixels voisins et choisissons la valeur maximale.
Dans cet exemple, les contours conservés sont ceux dont la bordure est blanche. Etant
donné que cet exemple contient principalement des gradients dont la direction est vers le
haut, le principal facteur est celui de la norme du gradient.
4. Double seuillage:
Les contours potentiels sont définis grâce à ce seuillage. Suite à la suppression des valeurs
non-maximales, nous obtenons nos contours potentiels. Cependant, ces contours peuvent
être dus au bruit restant ou encore aux variations de couleur. Le moyen le plus rapide et le
plus efficace pour ce débarrasser de ces faux contours est d'utiliser un double seuillage.
- tous les pixels supérieurs au seuil maximal défini sont des contours forts.
- tous les pixels inférieurs au seuil minimal défini sont supprimés.
- tous les pixels situés entre ces deux valeurs sont considérés comme des contours faibles.
La prochaine étape consistera à définir dans cette 3ème catégorie de contours faibles, ceux
que nous devons supprimer.
51
Chapitre III: Filtrage spatial Ingénieur Docteur Seddik Hassene
Les contours sont détectés par la suppression de tous les contours qui ne sont pas liés à au
moins à un contour très visible (contour certain). Durant cette étape, nous ajoutons tous les
contours forts définis lors du double seuillage à l'image finale. Ensuite nous parcourons un
à un les contours faibles:
- Si un contour faible est relié à un contour fort, il est ajouté à l'image finale. - Sinon le
contour faible est supprimé.
Le résultat
52