Vous êtes sur la page 1sur 37

TERI : Traitement et

reconnaissance d'images
Cours Master 2 IAD
Isabelle Bloch - ENST / Dpartement Signal & Images
Florence Tupin - ENST / Dpartement Signal & Images
Antoine Manzanera ENSTA / Unit d'lectronique et d'Informatique

Filtrage vs Restauration
Ce cours s'intresse aux techniques d'amlioration des images numriques, pour augmenter la qualit
de leur rendu visuel, ou pour faciliter leur analyse. On cherche donc attnuer, sinon supprimer une
certaine dgradation. Celle-ci n'est pas forcment connue a priori, mais elle peut parfois tre estime
a posteriori. On distinguera ici :
- les dgradations lies au bruit : g(x) = f(x)+b(x) ou g(x) = f(x)b(x) lies au capteur, la
quantification, la transmission... On les traite en tirant parti des informations locales par le filtrage.
Par diffrenciation, les techniques de filtrage permettent en outre de calculer ou amplifier les
contrastes locaux.
- les dgradations convolutives : g(x) = f(x)b(x) lies un mouvement du capteur ou un dfaut de
mise au point. On les traite en inversant un oprateur linaire, donc suppos connu : ce sont les
techniques dites de restauration (voir cours Restauration).

bruit additif

bruit multiplicatif

Antoine MANZANERA Cours TERI Master 2 IAD

flou de mise au point

flou de boug
page 2

Filtrage Plan du cours


I Filtres de lissage
I-1 Filtrage dans le domaine de Fourier
I-2 Filtrage par convolution
I-3 Implantation des filtres linaires
I-4 Bruit multiplicatif
I-5 Filtres non linaires

II Filtres drivateurs
II-1 Filtrage dans le domaine de Fourier
II-2 Filtrage par convolution
II-3 Filtres non linaires

Antoine MANZANERA Cours TERI Master 2 IAD

page 3

I Filtres de lissage
Les filtres de lissage sont des oprateurs qui liminent des lments perturbateurs / non significatifs
dans les images numriques, soit pour amliorer leur visualisation, soit pour les simplifier en but
d'un traitement postrieur :

rendu : les images cods en demiteintes de l'imprimerie prsentent


grande chelle un effet pointilliste.

bruit d'acquisition, de numrisation, de transmission : les incertitudes dans les


diffrentes tapes de formation de l'image numrique induisent des fluctuations
alatoires de la valeur des pixels ( droite, bruit gaussien). Les erreurs de
transmission font apparatre des valeurs aberrantes ( gauche, bruit
impulsionnel).

bruit de compression : les


techniques de compression d'image
avec perte produisent une distortion
dans l'image, comme cet effet de
bloc dans la transforme Jpeg (taux
de compression 1/25).

(1) Filtrage dans le domaine de Fourier


(2) Filtrage par convolution
PLAN DU CHAPITRE : (3) Implantation des filtres linaires
(4) Filtres non linaires
Antoine MANZANERA Cours TERI Master 2 IAD

bruit spatial fixe : la non-uniformit


des dtecteurs dans la matrice de cet
imageur infra-rouge entrane une
texturisation de l'image.

page 4

I-1 Filtrage dans le domaine de Fourier (1)


Filtrage passe-bas
Le filtrage passe-bas est la
multiplication dans le domaine
frquentiel par une fonction porte
(fonction indicatrice d'un intervalle
[-umax,umax] [-vmax,vmax]).
TF

TF-1

Passebas

Antoine MANZANERA Cours TERI Master 2 IAD

page 5

I-1 Filtrage dans le domaine de Fourier (2)


Filtrage coupe-bande
Le filtrage coupe-bande est la
multiplication dans le domaine
frquentiel par une fonction bande
complmentaire, fonction indicatrice
de l'ensemble :

(2 \ [-umax,umax][-vmax,vmax])
[-umin,umin][-vmin,vmin]
Notons que dans ce cas
comme le prcdent, la
valeur de la frquence
origine F[0,0] est
inchange. Or :
w

F [0,0 ]= f [ x , y ]

TF-1

TF

Coupebande

x=0 y=0

La somme des niveaux


de gris dans le domaine
spatiale reste donc
constante.
Antoine MANZANERA Cours TERI Master 2 IAD

page 6

I-2 Filtrage par convolution (1)


La multiplication dans le domaine frquentiel correspond la convolution dans le domaine spatial. Un grand nombre
de filtres de lissage peut tre obtenu partir de noyaux de convolution symtriques et normaliss (de somme gale
1). Voici 3 famille de filtres parmi les plus utiliss :

Moyenne

Gauss

* Rponse impulsionnelle :
1
2
h x , y= 2 si x , y[/ 2,/ 2 ]

h x , y=0 sinon

h x , y=

1
2

Exponentiel

exp

x y
2

2
h x , y=
expxy
4

* Reprsentation graphique de la rponse impulsionnelle (en 1d) :

* Exemple de noyaux de convolution discrets :

1
1

1
1

1
1

1
1

1
1

1
25
1

1
1

1
1

1
1

1
1

Filtre moyenneur (5x5)


Antoine MANZANERA Cours TERI Master 2 IAD

11
23

23
48

29
62

23
48

11
23

29
864
23

62
48

80
62

62
48

29
23

11

23

29

23

11

Filtre gaussien ( = 1,41)

1
80

1
1

1
3

3
7

1
3

1
1

3
1

7
3

16
7

7
3

3
1

Filtre exponentiel ( = 0,8)


page 7

I-2 Filtrage par convolution (2)


Coefficient de dispersion : pour un
chelon unitaire perturb par un bruit
blanc de variance v2, la variance du bruit
filtr devient v2.

chelon unit

chelon bruit

chelon bruit filtr

Image originale

* Coefficients de dispersion :

Filtre moyenneur (9x9)


Antoine MANZANERA Cours TERI Master 2 IAD

1
4

Filtre gaussien ( = 2,54)

=
16

Filtre exponentiel ( = 0,44)


page 8

I-3 Implantation des filtres linaires


En traitement d'images, les volumes de donnes traits sont bien sr trs importants. La
prise en compte du temps de calcul reste un lment majeur dans les algorithmes en
dpit des progrs technologiques exponentiels des microprocesseurs. L'implantation
des filtres linaires, en particulier ceux dont le support est grand, voire infini, est un
problme incontournable.

(a) multiplication dans le domaine de Fourier


(b) convolution directe par noyau (tronqu)
(c) noyaux sparables
(d) implantation rcursive des filtres rponse impulsionnelle infinie

Antoine MANZANERA Cours TERI Master 2 IAD

page 9

I-3-a Multiplication dans le domaine de Fourier


Grce la correspondance convolution-produit
dans la transforme de Fourier (TF), la
convolution de l'image f par un filtre de
rponse impusionnelle h peut se calculer
comme la TF inverse du produit FH, o F
(resp. H) est la TF de f (resp. h).
Fonction porte Sinus cardinal

CORRESPONDANCE CONVOLUTION / PRODUIT

f 1 [ x , y ] f 2 [ x , y] F 1 [u , v ]F 2 [u ,v ]
f 1 [ x , y ] f 2 [ x , y] F 1 [u ,v ]F 2 [u ,v ]
Gaussienne () Gaussienne (1/ )

La complexit de l'implantation par multiplication dans le domaine frquentiel est celle de 2 calculs
de TF (1 direct + 1 inverse), plus 1 multiplication. Pour une image de taille NN, le cot de la
multiplication est en O(N2), et en utilisant la transforme de Fourier rapide (FFT), le cot de la TF est
en O(N.log2(N)).
Dans ce cas, la complexit est indpendante de la taille K du noyau de convolution. Ce type
d'implantation peut tre intressant pour des gros noyaux, (K2 >> log2(N)). Il ncessite cependant une
grande prcision dans les valeurs de la TF (reprsentation en complexes flottants).
Antoine MANZANERA Cours TERI Master 2 IAD

page 10

I-3-b/c convolution directe / noyaux sparables


1
80

1
1

1
3

3
7

1
3

1
1

3
1

7
3

16
7

7
3

3
1

La convolution de l'image f par un filtre de rponse impusionnelle h


reprsent par un noyau fini (ventuellement tronqu) peut tre calcul
directement par balayage des pixels de f et calcul de la somme des
valeurs des voisins de chaque pixel pondres par les valeurs du noyau
de convolution.

La complexit de l'implantation directe pour une image de taille NN et pour un noyau de


convolution de taille K, est en O(K2N2). Le cot par pixel est donc quadratique en fonction du
rayon du noyau.

Filtres sparables :
Lorsque la matrice de convolution peut s'crire comme produit d'un vecteur colonne et d'un vecteur
ligne :
t

h =[h col ][h lig ]

Alors :

h [ x , y ]=hcol [ x ]hlig [ y ]
x2

Et :

Ih [ x , y ]=

y2

x2

y2

h[i , j]I [ xi , y j]= h col [i ] h lig [ j ]I [ xi , y j ]

i= x 1 j= y1

i= x 1

j= y 1

La complexit de l'implantation pour une image de taille NN et pour un noyau de convolution de


taille K, devient O(KN2). Le cot par pixel est donc linaire en fonction du rayon du noyau.
Les filtres moyenneur, gaussien, exponentiel sont des filtres sparables.
Antoine MANZANERA Cours TERI Master 2 IAD

page 11

I-3-d Implantation rcursives des filtres IIR


La convolution directe par noyau fini permet d'implanter les filtres rponse impulsionnelle finie
(FIR), mais pose problme dans le cas des filtres rponse impulsionnelle infinie (IIR). On peut
approximer les filtres IIR en tronquant le noyau de convolution (on choisit par exemple des supports
de rayon 2 ou 3 pour approximer la gaussienne par un filtre FIR). On retiendra cependant que la
TF d'un filtre FIR tant support infini, on ne peut pas liminer totalement les hautes frquences
avec un filtre FIR.
Certains filtres IIR possdent la proprit de pouvoir tre calculs de manire rcursive (cf
transforme en Z). C'est la cas du filtre exponentiel, ou de certaines approximation du noyau
gaussien. Le filtrage est en gnral obtenu par un filtre causal, calcul par balayage direct, suivi d'un
filtre anti-causal, calcul par un balayage rtrograde :
Ex : filtre IIR 1D horizontal :
f [i ]= 0 f [i ]1 f [i1] 2 f [i2]

Squence causale (directe)

f [i ]=0 f [i ]1 f [i1] 2 f [i2 ]

Squence anti-causale (rtrograde)

La complexit de cette implantation est en O(N2), elle est en gnral indpendante des paramtres du
noyau de convolution. Elle a de plus donn lieu des implantations matrielles (circuits spcialiss).
Cependant les problmes de prcision ncessitent en gnral un passage en nombre flottant et donc
une augmentation de la dynamique.
Antoine MANZANERA Cours TERI Master 2 IAD

page 12

I-4 Bruit multiplicatif : filtrage homomorphique


Pour un bruit additif, on avait g(x) = f(x) + b(x), et donc dans le domaine de Fourier G(u) = F(u) + B(u).
On pouvait donc tenter d'liminer B(u) directement sur le spectre (ex : filtre passe-bas : multiplication
par le complmentaire de la fonction indicatrice du support de B), ou ce qui est quivalent, par
convolution.
Dans le cas d'un bruit multiplicatif g(x) = f(x).b(x), on n'a plus addition des spectres, on ne peut donc
plus fonctionner par convolution directe.
Le principe du filtrage homomorphique est de se ramener au cas linaire en passant par le logarithme :

logarithme

h=log g

TF

Filtrage

H T

TF inverse

exponentiel

f =e k

Voici deux exemples d'applications trs diffrents :

Image radar (SAR)


avec un dfaut de
bruit
multiplicatif
caractristique
(speckle).

Antoine MANZANERA Cours TERI Master 2 IAD

Image visible avec forte


variation de l'illumination i :
on cherchera retrouver la
composante de rflectivit r
partir du niveau de gris g :
g(x) = r(x).i(x)

page 13

I-5 Filtres non linaires


Deux aspects du lissage sont concerns par le filtrage non linaire :
Le bruit impulsionnel : les filtres linaires liminent mal les valeurs
aberrantes.
L'intgrit des frontires : on souhaiterait liminer le bruit sans rendre
flous les frontires des objets.

(a) Filtres d'ordre, mdian


(b) Filtres non linaires divers ex : Nagao
(c) Filtres morphologiques

Antoine MANZANERA Cours TERI Master 2 IAD

page 14

I-5-a Filtres d'ordre, mdian


Les filtres d'ordres procdent en remplaant les valeurs de chaque pixel par la valeur qui
occupe un certain rang lorsqu'on trie les valeurs observes dans un certain voisinage du pixel.
les valeurs dans le voisinage de (x,y) :
soit

{b1 , b2 ,, b N }

permutation de

V x , y ={a 1 , a 2 ,, a N }
{a 1 , a 2 ,, a N }

alors le filtre d'ordre de rang k est dfini par :


voisinage : lment
structurant

telle que

b 1b 2 b N

k [ x , y ]=b k

pour k=N/2, on parle de filtre mdian, pour k=1, d'rosion morphologique, pour k=N, de dilatation morphologique.

Implantations du mdian :
calcul d'histogrammes locaux
tri des valeurs dans le voisinage (Quick Sort)
tri incrmental
.../...

ex : bruit impulsionnel trait par un filtre mdian


(voisinage comme ci-dessus).
Antoine MANZANERA Cours TERI Master 2 IAD

oprateurs morphologiques : gauche Original au centre rosion


droite Dilatation (lment structurant comme ci-dessus)
page 15

I-5-b Filtres non linaires divers


On trouve dans la littrature de nombreux filtres combinant filtres d'ordre, moyennes robustes
(oprations linaires liminant les valeurs marginales), et anisotropie (le support des oprations
s'adapte en fonction des frontires locales). Nous dcrivons ici comme exemple le filtre de Nagao.
Le filtre de Nagao examine la fentre 5x5 centre
sur chaque pixel. 9 domaines sont dfinis dans cette
fentre (voir figure). On calcule pour chaque
domaine Di la moyenne i et la variance vi. Le
rsultat de l'oprateur est la moyenne du domaine
qui prsente la plus faible variance.

original

gaussien ( = 1,5)
Antoine MANZANERA Cours TERI Master 2 IAD

Nagao

gaussien puis Nagao

D1

D2

D3

D4

D5

D6

D7

D8

D9

Les 9 fentres de Nagao


page 16

I-5-c Filtres morphologiques


Les filtres morphologiques sont les oprateurs croissants et idempotents :
Filtre
Altern
Squentiel

Original

Ouverture

Antoine MANZANERA Cours TERI Master 2 IAD

Fermeture

Nivellement

page 17

I-5-c Ouvertures et Fermetures


L'ouverture morphologique est
gale la composition d'une
rosion suivie d'une dilatation.
C'est un oprateur croissant et
idempotent (i.e. un filtre
morphologique)

B B = B
B= B B
X Y B X B Y
X B B X =B X

B
La fermeture morphologique est
l'opration duale de l'ouverture :
Elle est gale la composition
d'une dilatation suivie d'une
rosion. C'est aussi un filtre
morphologique.

B
B

B
B X c = B X c
B= B B
Antoine MANZANERA Cours TERI Master 2 IAD

page 18

I-5-c Ouvertures et Fermetures


B

louverture limine les petites composantes, et ouvre les petits isthmes.

la fermeture bouche les petites trous, et ferme les petits dtroits.

Antoine MANZANERA Cours TERI Master 2 IAD

B X

B X

page 19

I-5-c Ouvertures et Fermetures


B

X
Antoine MANZANERA Cours TERI Master 2 IAD

B X

B X

B X

B X
page 20

I-5-c Filtres alterns squentiels


Les filtres alterns squentiels (FAS) sont
une successions d'ouvertures et de
fermetures utilisant des lments structurants
de taille croissantes :

Original

1= 1 1

1=1 1

n = n n n1

n = n n n 1

Les FAS conduisent une bonne rduction


du bruit grce une limination progressive
des pics et des creux de faible surface.

1
Antoine MANZANERA Cours TERI Master 2 IAD

Application directe
du filtre altern 4 4

8
page 21

I-5-c Filtres alterns squentiels


Original f(x)

en 1d :
Somme f(x)+E(x)

Bruit E(x)
Application directe
du filtre altern 5 5

2
Antoine MANZANERA Cours TERI Master 2 IAD

5
page 22

I-5-c Filtres alterns squentiels

Antoine MANZANERA Cours TERI Master 2 IAD

page 23

I-5-c Filtres connexes


Louverture par reconstruction limine les
composantes connexes qui nappartiennent pas
louvert sans modifier les autres :

ouverture par
reconstruction

E X ( B ( X ))
B

X
La fermeture par reconstruction
est dfinie par dualit :

Antoine MANZANERA Cours TERI Master 2 IAD

fermeture par
reconstruction

( E ( ( ( X ) ) ) )
Xc

page 24

I-5-c Filtres connexes


Par extension, les ouvertures et fermetures par reconstruction limine les
structures en prservant les contours des images numriques :

lment structurant
de louverture
morphologique :

original

Antoine MANZANERA Cours TERI Master 2 IAD

ouverture par reconstruction

fermeture par reconstruction

page 25

I-5-c Filtres connexes

Antoine MANZANERA Cours TERI Master 2 IAD

page 26

II Filtres drivateurs
Les variations locales d'intensit constituent une source
primordiale d'information en traitement d'images. Elles
sont mesures par le gradient, fonction vectorielle des
pixels [i,j] :

f [i , j ]=

f
f
[i , j ] ,
[i , j]
x
y

D'autres grandeurs diffrentielles sont utilises en


traitement d'images, comme le laplacien, fonction
scalaire de [i,j] :
f [i , j ]

j
f
y

f
f
f [i , j ]= 2 [i , j] 2 [i , j ]
x
y

ou encore le hessien, fonction matricielle de [i,j] :

[i , j ]

f
x

[i , j ]

f
f
[i , j ]
[i , j]
2
x y
x
H f [i , j ]= 2
2
f
f
[i , j ]
[i , j ]
2
x y
y

Le problme du calcul des filtres drivateurs dans les images numriques est l'approximation de ces
grandeurs diffrentielles dans notre espace discret ; on s'intresse aussi leur utilisation :
rhaussement, dtection de contours,...
Antoine MANZANERA Cours TERI Master 2 IAD

page 27

II Filtres drivateurs
Les filtres drivateurs sont des oprateurs
qui mettent en vidences certaines
variations spatiales dans les images. Ils
sont utiliss comme traitements de base
dans de nombreuses oprations, comme le
rhaussement de contraste ou la dtection
de contours :

les contours (image de droite) constituent une simplification de l'image utile


dans de nombreuses applications. Dans les approches linaires, ils sont en
gnral obtenus partir des maxima locaux de la drive premire, ou des
passages par zro de la drive seconde :

f (x)

f '(x)

f ''(x)

rhaussement de contraste obtenu par


combinaison linaire avec le laplacien.

PLAN DU CHAPITRE
Antoine MANZANERA Cours TERI Master 2 IAD

(1) Filtrage dans le domaine de Fourier


(2) Filtrage par convolution
page 28

II-1 Filtrage dans le domaine de Fourier


Le filtrage passe-haut correspond la multiplication dans le
domaine frquentiel d'une fonction porte-complmentaire.

Filtrage passe-haut
Image originale

TF-1

Filtre passe-haut = 20
Antoine MANZANERA Cours TERI Master 2 IAD

TF

TF-1

Filtre passe-haut = 60
page 29

II-1 Filtrage dans le domaine de Fourier


Filtrage passe-bande
Le filtrage passe-bande
correspond

la
multiplication
dans
le
domaine frquentiel par une
fonction bande symtrique.
Dans ce cas comme dans le
prcdent, la valeur de la
frquence origine (0,0) est
annule. Par consquent,
l'image correspondante dans
le domaine spatial est de
somme nulle, elle comporte
donc des valeurs ngatives.

Antoine MANZANERA Cours TERI Master 2 IAD

TF

TF-1

page 30

II-2 Filtrage par convolution


Les approximations les plus simples des drives directionnelles se font par diffrences finies calcules
par convolution avec des noyaux trs simples :
Par ex : [1 1] , pour l'approximation de

f
x

[ ] , pour l'approximation de
1

, et :

[ ]

f
y

On utilise plus souvent [1 0 1 ] , respectivement

0
1

qui produisent des frontires plus paisses,

mais bien centres (phase nulle).


Ces oprations tant trs sensibles au bruit, on les combine en gneral avec un filtre lisseur dans la
direction orthogonale celle de drivation, par ex par le noyau suivant (ou sa transpose) : [1 2 1]
Le calcul des drives directionnelles en x et en y revient finalement la convolution avec les noyaux
suivants, respectivement :
1 2 1
1 0 1
(Masques de Sobel)
, avec : h x = 2 0 2 h y = 0
0
0
f x [i , j ]= f h x [i , j]
f y [i , j ]= f h y [i , j ]

] [

On peut ensuite calculer la norme du gradient :

Et son orientation :

f [i , j]2= f x [i , j ]2 f y [i , j]2
f [i , j ]1 = f x [i , j] f y [i , j ]
f [i , j] =max { f x [i , j ], f y [i , j ]}

arg f [i , j ]=arctan

Antoine MANZANERA Cours TERI Master 2 IAD

f y [i , j ]
f x [i , j ]

page 31

II-2 Filtrage par convolution


Notons que les noyaux
drivateurs
sont

somme
nulle,
la
transforme de Fourier
de
leur
rponse
impulsionnelle est donc
nulle l'origine.
Original

Gradient horizontal (Sobel)

Noyau [-1 1]

Gradient vertical (Sobel)

Antoine MANZANERA Cours TERI Master 2 IAD

Noyau [-1 0 1]

Module du gradient de
Sobel
page 32

II-2 Filtrage par convolution


L'approximation par diffrences finies la plus simple de la drive seconde est la convolution par le
noyau :
2
[12 1] , pour l'approximation de f , et :

x2

Le laplacien f =

[ ]
1
1 4 1
1

2 f
x2

2 f
y2

Laplacien en
4-connexit

Original

Antoine MANZANERA Cours TERI Master 2 IAD

[ ]
1
2
1

2
, pour l'approximation de f

y2

peut donc tre approxim par l'oprateur linaire suivant :

, ou encore

Laplacien 4-cx

Laplacien en
8-connexit

Laplacien 8-cx

page 33

II-3 Oprateurs rsiduels non linaires


B

X
Antoine MANZANERA Cours TERI Master 2 IAD

B X

B X

g B X = B X B X

B X = B X B X 2X
page 34

II-3 Oprateurs rsiduels non linaires


B

X
Antoine MANZANERA Cours TERI Master 2 IAD

B X

B X

B X = X B X

X = B X X

B
page 35

II TI et porte des oprateurs


Les oprateurs de traitement d'images possdent une certaine porte correspondant l'amplitude du
voisinage qui interagit.
Un exemple, l'opration de rhaussement de contraste (unsharp masking) :
R f [ x , y ]= f [ x , y ] f [ x , y]

( : gain)

En soustrayant le laplacien l'image original, on augmente le contraste.


Mais le contraste est une notion multi-chelle :
Original

( = 0.5 , = 3)

( = 2.5 , = 10)

( = 7.5 , = 80)

Il faut donc des mcanismes pour adapter la porte des oprateurs :


Laplaciens calculs par
drives secondes de
noyaux gaussiens, pour
= 1, puis 5, puis 15 :
Antoine MANZANERA Cours TERI Master 2 IAD

page 36

Filtrage - Conclusion
FILTRAGE
Dgradation lie un bruit
additif

multiplicatif

g x = f x b x

g x = f x . b x

TF
Log

G u = F u Bu
Supp BSupp F =
OUI
NON

G1 Supp B G B
c

Filtrage
linaire :
convolution
Antoine MANZANERA Cours TERI Master 2 IAD

Filtrage non linaire :


rang, morphologique,...

page 37

Vous aimerez peut-être aussi