SlideShare une entreprise Scribd logo
1  sur  37
Télécharger pour lire hors ligne
Projet tutoré
Présenté par :
BOUDLAL Ayoub & TAHIRI Chaimaa
Pour obtenir le diplôme de
Licence fondamentale : Sciences Mathématiques et Applications
'
&
$
%
Étude et résolution numérique de deux
modèles basés sur des équations aux
dérivées partielles pour le débruitage des
images
soutenu le : 25 Juin 2015
devant le jury composé de :
Mr Fouad ZINOUN Président Professeur de l’Enseignement Supérieur à la FSR
Mr Mohammed ZIANI Encadrant Professeur de l’Enseignement Supérieur à la FSR
Mr Mostafa OUARIT Examinateur Professeur de l’Enseignement Supérieur à la FSR
Année universitaire : 2014/2015
1
Table des matières
Introduction 5
1 Équations aux dérivées partielles en traitement d’images 7
1.1 Image numérique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
1.2 Filtrage par convolution . . . . . . . . . . . . . . . . . . . . . . . . . 8
1.3 Modèles utilisés en traitement d’images . . . . . . . . . . . . . . . . 10
1.3.1 Équation de la chaleur . . . . . . . . . . . . . . . . . . . . . . 11
1.3.2 Modèle de Pérona-Malik . . . . . . . . . . . . . . . . . . . . . 11
2 Résolution numérique 16
2.1 Approximation des dérivées . . . . . . . . . . . . . . . . . . . . . . . 16
2.1.1 Approximation de la dérivée première . . . . . . . . . . . . . 16
2.1.2 Approximation de la dérivée seconde . . . . . . . . . . . . . 17
2.2 Discrétisation par différences finies . . . . . . . . . . . . . . . . . . . 18
2.2.1 Équation de la chaleur . . . . . . . . . . . . . . . . . . . . . . 18
2.2.2 Équation de Pérona-Malik . . . . . . . . . . . . . . . . . . . . 20
3 Résultats numériques 23
3.1 Dégradation d’images . . . . . . . . . . . . . . . . . . . . . . . . . . 23
3.2 Critère d’analyse et d’évaluation pour le débruitage d’images . . . 23
3.3 Méthodes de débruitage . . . . . . . . . . . . . . . . . . . . . . . . . 24
3.3.1 Débruitage par l’équation de la chaleur . . . . . . . . . . . . 24
3.3.2 Débruitage par le modèle de Pérona-Malik . . . . . . . . . . 26
3.4 Boîte à outils "Imagerie" de Matlab . . . . . . . . . . . . . . . . . . . 27
3.4.1 Filtrages d’images . . . . . . . . . . . . . . . . . . . . . . . . 29
2
TABLE DES MATIÈRES
3.4.2 Détection de contours . . . . . . . . . . . . . . . . . . . . . . 31
Conclusion et discussion 34
3
Remerciements
Avant d’aborder le rapport de projet de fin d’étude, nous tenons à exprimer nos
précieux remerciements à la Faculté des Sciences de Rabat.
Nous tenons à remercier Mr. Ziani Mohammed, notre encadrant de mémoire, pour
tout le soutien, l’aide, l’orientation et la guidance qu’il nous a apporté durant toute
cette période de réalisation de notre mémoire.
Merci aux Professeurs Mostafa Ouarit et Fouad Zinoun d’avoir accepté d’être
dans le jury et d’évaluer ce travail.
Nous ne pouvons pas ceux qui par leur amour et leur confiance ont soutenu morale-
ment ce travail : nos familles. Spécialement nos parents pour le soutien inconditionnel
dont ils ont fait preuve depuis que notre projet de fin d’étude est défini. Merci pour
le soutien financier, moral, psychologique et matériel. Si nous sommes ici aujourd’hui,
c’est grâce à vous !
Enfin, nous remercions nos amis et camarades de promotion pour ces trois années
passées ensemble, dans les meilleurs moments comme dans les pires.
4
Introduction
En analyse d’image il arrive souvent de se retrouver confronté à un phéno-
mène de bruit sur les images ce qui rend le traitement des données difficile. Le
phénomène de bruit peut être soit d’origine externe, perturbation du système
d’acquisition de l’image par des facteurs tel que la luminosité, la pollution, soit
d’origine interne au signal du fait des fluctuations spontanées des grandeurs élec-
triques mises en œuvre dans l’acquisition de l’image. L’apparition de bruit dans
une image est donc préjudiciable à bien des égards pour son analyse, sa classifi-
cation et sa compréhension tant intuitive que formelle.
Afin de minimiser ce phénomène de bruitage de l’image plusieurs techniques ont
été développées. Les plus intuitives consistent à lisser l’image en remplaçant la
valeur d’un pixel par la valeur moyenne de son voisinage ou la valeur médiane,
il s’agit d’une opération de convolution de l’image considérée par un filtre. Ces
techniques de traitement du bruit par des processus linéaires présentent souvent
des défauts et se révèlent inefficaces dans le cadre d’images fortement bruitées,
la valeur des pixels bruités influant à ordre égal que celle des pixels significatifs
le résultat.
L’application des équations aux dérivées partielles (EDP) semble par contre une
approche relativement efficace contre le bruit que peuvent subir les images. La
1ère
EDP utilisée était l’équation de la chaleur. C’est un processus de diffusion
pour homogénéiser l’intensité de l’image. Un inconvénient de l’équation de la
chaleur est qu’il ne distingue pas entre le bruit et les contours de l’image. Ainsi,
l’image résultante après filtrage serait souvent floue. Pour remédier à cet incon-
vénient, le modèle de Pérona-Malik a été introduit. Ce dernier consiste a lisser les
zones homogènes et de rechausser les contours.
Le but de ce rapport est d’étudier et analyser ces modèles et présenter des mé-
5
TABLE DES MATIÈRES
thodes numériques utilisées pour les résoudre efficacement. Le rapport sera or-
ganisé de la manière suivante :
Dans le premier chapitre on étudie les modèles basés sur l’équation de chaleur
et Pérona-Malik pour le débruitage des images. Dans le deuxième chapitre on
utilise différents schémas aux différences finies pour résoudre ces modèles. On
donne aussi une comparaison de ces schémas en terme de complexité et de sta-
bilité. Dans le dernier chapitre on utilise les modèles présentés dans le chapitre 1
pour améliorer la qualité de quelques images et on compare numériquement les
schémas de différence finies utilisés. On donne aussi dans ce chapitre un aperçu
sur la boîte à outils imagerie de Matlab.
6
Chapitre1
Équations aux dérivées partielles en
traitement d’images
Une équation aux dérivées partielles (EDP) est une équation dont les solutions
sont des fonctions inconnues (variables) vérifiant certaines conditions concernant
leurs dérivées partielles. Les EDPs ont été introduites en traitement d’images
en 1984, voir [4]. Partant de l’équation classique de la chaleur, une grande va-
riété d’EDP est utilisée pour résoudre quelques problèmes de base en traitement
d’images.
1.1 Image numérique
Une image numérique est une matrice de pixels repérés par leur coordonnées
(x, y). S’il s’agit d’une image couleur, un pixel est codé par 3 composantes (r,g,b)
chacune comprise au sens large entre 0 et 255, représentant respectivement les
"doses" de rouge, vert et bleu qui caractérisent la couleur du pixel. S’il s’agit d’une
image en niveau de gris, il est codé par une composante comprise au sens large
entre 0 et 255, représentant la luminosité du pixel, voir figure 1.1. En effet chaque
entier représentant un niveau de gris est codé sur 8 bits. Il est donc compris entre
0 (blanc) et 28
− 1 = 255 (noir). C’est la quantification la plus courante. Dans ce
rapport, on ne considère que les images en niveau de gris.
7
1.2. FILTRAGE PAR CONVOLUTION
Cameraman 256x256 Echantillon de cameraman
8x8 (249 :256,249 :256)
Fig. 1.1 – Image numérique
1.2 Filtrage par convolution
La convolution est l’une des principales opérations utilisées en traitement des
images. La convolution d’une image I par un noyau de filtrage h est définie par :
I(x, y) ∗ h(x, y) =
Z +∞
+∞
Z +∞
+∞
I(x − u, y − v)h(u, v)dudv.
Dans le cas discret, cette équation s’écrit :
I(x, y) ∗ h(x, y) =
N
X
−N
M
X
−M
I(x + i, y + j)h(i, j)
La valeur de chaque pixel est recalculée on se basant sur la valeur du pixel lui-
même et sur les valeurs des pixels voisins. La combinaison des filtres à l’utili-
sation de la convolution a permis le développement d’un très grand nombre de
filtres. Il existe, en général, deux types de filtres :
Les filtres lisseurs : Ils sont utilisés à enlever le bruit d’une image ou la simpli-
fier en la rendant plus régulière. Ils correspondent à des filtres passe-bas dans le
domaine fréquentiel. Ce type de filtrage est généralement utilisé pour atténuer le
bruit de l’image, c’est la raison pour laquelle on parle habituellement de lissage.
8
1.2. FILTRAGE PAR CONVOLUTION
Donnons maintenant quelques exemples de filtres lisseurs :
Filtre moyenneur : Le niveau de gris du pixel central est remplacé par la
moyenne des niveaux de gris des pixels voisins. La taille du noyau dépend de
l’intensité du bruit et de la taille des détails significatifs de l’image traitée. Les
effets du filtre moyenneur varient avec la taille du noyau ; plus les dimensions
du noyau seront importantes, plus le bruit sera éliminé. Mais en contrepartie, les
détails fins seront eux-aussi effacés et les contours étalés.
Filtre gaussien : Les filtres moyenneurs ont pour effet de lisser considérable-
ment l’image d’entrée. Il est donc préférable, pour éviter ce type d’effet, d’utiliser
un masque avec cœfficient plus élevé au centre que sur les contours du noyau. Le
filtre gaussien répond parfaitement à ce type de problème et est parmi les noyaux
les plus utilisés pour lisser les images. Ce filtre est de type linéaire et une version
discrétisée de la fonction gaussienne 2D est donnée par :
G(x, y) =
1
√
2πσ2
exp

x2
+ y2
4σ2

,
où σ caractérise l’écart-type. Le paramètre de la taille détermine la largeur à mi-
hauteur de la gaussienne (LMH, largeur à mi-hauteur). La relation entre la largeur
à mi-hauteur et σ est :
LMH = 2
√
2 ln 2σ = 2.35482σ.
Par exemple, le noyau d’un filtre gaussien 3 × 3 avec un écart-type σ = 0.6746 est
donné par :
h(u, v) =
1
25



1 3 1
3 9 3
1 3 1


 .
Les filtres rehausseurs : Ils sont utilisés à faire ressortir les régions de contraste
et les détails ou pour estimer des grandeurs différentielles. Ils correspondent à
des filtres passe-haut dans le domaine fréquentiel. Dans le cas de filtre de rehaus-
sement on cite l’exemple de filtre passe haut, caractérisé par un noyau compor-
tant des valeurs négatives autour du pixel central. Cette accentuation augmente
9
1.3. MODÈLES UTILISÉS EN TRAITEMENT D’IMAGES
le contraste des limites entre les zones homogènes de l’image et est alors appelée
extraction de contours.
1.3 Modèles utilisés en traitement d’images
Les EDPs ont pris une grande importance dans le domaine de traitement
d’images. Ces équations sont nées du principe de physique de la diffusion qui
est basé sur celle qui s’établit dans une matière fluide à savoir que l’équation
de diffusion est similaire à celle des concertations locales d’un fluide qui s’équi-
librent. Le transfert pour atteindre l’équilibre des concentrations s’exprime avec
la première loi empirique de Fick :
j = −D.∇u,
avec :
D : tenseur de diffusion, symétrique défini positif,
u((x, y, z), t) : concentration de matière au point (x, y, z) à l’instant t,
∇u : gradient spatial de la concentration de matière,
j : flux de matière.
L’équation montre que le sens de déplacement du flux de la matière est opposé
à la concentration, c.-à-d. que la concentration passe d’une région plus forte vers
une région plus faible. Si ∇u et j sont parallèles, on parle d’une diffusion iso-
trope, dans ce cas on peut remplacer D par un scalaire g nommé diffusivité. Le
cas général est appelé anisotrope. La propriété de transport de matière sous la
condition de conservation s’exprime avec l’équation de continuité :
∂u
∂t
= −div(j),
où t représente le temps et
∂u
∂t
la dérivée temporelle de la concentration de ma-
tière. En combinant ces deux équations, on obtient l’équation de diffusion (se-
conde loi empirique de Fick) :
∂u
∂t
= div(D.∇u).
Dans le cas où le tenseur de diffusion D est constant on parle de diffusion homo-
gène, et dans le cas où il dépend de la structure différentielle de u, la diffusion
10
1.3. MODÈLES UTILISÉS EN TRAITEMENT D’IMAGES
est non-homogène. Cette équation apparaît dans beaucoup de domaines. Dans
le domaine du transfert de chaleur, c’est l’équation de la chaleur. En traitement
d’images, on peut assimiler la concentration u au niveau de gris et les conditions
initiales à l’image de départ.
1.3.1 Équation de la chaleur
Koenderink a démontré en 1984, que la convolution d’une image bruitée par
un filtre gaussien est la solution de l’équation de la chaleur pour σ =
√
2t. Dans le
domaine de l’imagerie, cette équation est mieux connue sous le nom d’équation
de diffusion. Elle s’écrit sous la forme :









∂u
∂t
− ∆u(t, x) = 0 si x ∈ Ω et t ∈]0, T]
u(x, 0) = u0(x)
∂u
∂N
= 0 sur ∂Ω,
avec Ω est le domaine de l’image et N le vecteur normal. Les conditions qui inter-
viennent naturellement en traitement d’images sont les conditions de Neumann
∂u
∂N
= 0 sur ∂Ω.
Pour imposer une telle condition, il suffit de prolonger l’image discrète u par
réflexion par rapport à ses bords, voir [1].
La diffusion des pixels par l’équation de la chaleur présente un défaut majeur. Les
contours sont endommagés. Le problème qui se pose est comment conserver les
contours d’une image tout en éliminant le bruit ? L’algorithme de Pérona-Malik
répond à ce problème par une prise en compte du gradient.
1.3.2 Modèle de Pérona-Malik
La faiblesse de l’équation de la chaleur et que la diffusion est identique en tout
point de l’image. L’image est lissée aussi bien dans les zones homogènes que le
long des contours. Donc pour éviter cette altération des contours, le filtrage par
diffusion non-linéaire est utilisé.
L’introduction des équations de diffusion non-linéaire dans le domaine du trai-
tement des images remonte à un article de Pérona-Malik, voir [5]. Ce modèle
consiste à lisser l’image dans les zones homogènes et de ne pas faire évoluer
11
1.3. MODÈLES UTILISÉS EN TRAITEMENT D’IMAGES
l’image le long des contours. L’équation correspondante s’écrit :









∂u
∂t
(x, y, t) = div (g(|∇u|).∇u(x, y, t))
u(x, y, 0) = u0(x, y)
∂u
∂N
= 0 sur ∂Ω,
avec Ω est le domaine de l’image, N est le vecteur normal et |∇u| est la norme du
gradient de u. La fonction g est décroissante avec g(0) = 1 et lim
s→+∞
g(s) = 0. Par
exemple, Pérona-Malik ont proposé les fonctions suivantes :
g(s) =
1
1 + (s
λ
)2
et
g(s) = exp −

λ
s
2
!
Le paramètre λ est appelé  seuil ou paramètre contraste  comme nous allons
voir, il joue un rôle important dans le comportement de la diffusion.
Cette métrique impose une diffusion plus faible pour des valeurs de gradients
d’autant plus élevées. Donc les contours sont préservés. Une interprétation per-
met de saisir plus facilement les différences avec la diffusion isotrope, voir [7], est
obtenue en écrivant l’équation en termes de dérivées secondes directionnelles,
voir la figure 1.2, dans la direction du gradient :
−
→
η =

ux
|∇u|
,
uy
|∇u|
T
,
et dans la direction orthogonale
−
→
ξ =

−
uy
|∇u|
,
ux
|∇u|
T
,
avec ∇u = (−
→
ux, −
→
uy) est le vecteur gradient de u et |∇u| =
p
u2
x + u2
y est sa norme.
Posons c = g(|∇u|). Dans le repère (
−
→
i ,
−
→
j ) du système d’axes (x, y) de l’image
nous avons :
∂u
∂t
= div(c∇u) = div(c[ux, uy]) =
∂
∂x
cux +
∂
∂y
cuy.
12
1.3. MODÈLES UTILISÉS EN TRAITEMENT D’IMAGES
Fig. 1.2 – Direction du gradient et direction orthogonale
ou encore
∂u
∂t
= g(|∇u|)[uxx + uyy] +

∂
∂x
g(|∇u|)

ux +

∂
∂y
g(|∇u|)

uy,
On a 
∂
∂x
g(|∇u|)

ux =
g(|∇u|)
0
|∇u|
(uxxux + uxyuy)ux
et 
∂
∂y
g(|∇u|)

uy =
g(|∇u|)
0
|∇u|
(uyyuy + uyxux)uy.
Ceci donne l’expression suivante :
∂u
∂t
= g(|∇u|)[uxx + uyy] +
g(|∇u|)
0
|∇u|
(uxxux + uxyuy)ux +
g(|∇u|)
0
|∇u|
(uyyuy + uyxux)uy.
13
1.3. MODÈLES UTILISÉS EN TRAITEMENT D’IMAGES
Ainsi, dans la nouvelle repère (−
→
η ,
−
→
ξ ) du système d’axes (x, y) la dérivée première
uη de u par rapport à −
→
η s’exprime par :
−
→
η = ∇U−
→
η = |∇U|,
et la dérivée seconde uηη s’écrit :
uηη = ∇uη
−
→
η
=
1
|∇u|
[
∂
∂x
(|∇u|)ux +
∂
∂y
(|∇u|)uy]
=
(uxxux + uxyuy)ux + (uyyuy + uxyux)uy
(|∇u|)2
=
uxxu2
x + 2uxyuxuy + uyyu2
y
(|∇u|)2
.
Le laplacien étant invariant au changement de base, on peut écrire :
∆u = uxx + uyy = uηη + uξξ.
En combinant les équations précédentes nous obtenons :
∂u
∂t
= div(g(|∇u|))|∇u| = g(|∇u|)(uηη + uξξ) + (|∇u|)g
0
(|∇u|)uηη
= [g(|∇u|) + (|∇u|)g
0
(|∇u|)]uηη + g(|∇u|)uηη.
Cette dernière équation peut s’écrire sous la forme :









∂u
∂t
= cξ.uξξ + cη.uηη
cξ = g(|∇u|)
cη = g(|∇u|) + (|∇u|)g
0
(|∇u|).
La fonction φ(s) = s.g(s) est appelée fonction flux, elle gère la diffusion selon la
direction du gradient. La figure 1.3 représente les fonctions de diffusion et de flux
associées aux deux fonctions de diffusion proposées par Pérona et Malik.
14
1.3. MODÈLES UTILISÉS EN TRAITEMENT D’IMAGES
Fig. 1.3 – Représentation des fonctions de diffusion et de flux associées aux deux fonc-
tions de diffusion proposées par Pérona et Malik
Le comportement de l’équation de diffusion est maintenant plus facile à interpré-
ter. Dans la direction orthogonale au gradient, la diffusion anisotrope induit un
lissage modulé par la norme du vecteur gradient.
Le chapitre suivant représente la résolution numérique par différences finies
des modèles mentionnés dans ce chapitre.
15
Chapitre 2
Résolution numérique
En analyse numérique, la méthode des différences finies est une technique
courante de recherche de solutions approchées d’équations aux dérivées par-
tielles qui consiste à résoudre un système de relations (schéma numérique) liant
les valeurs des fonctions inconnues en certains points suffisamment proches les
uns des autres, en se basant sur l’approximation des dérivées présentées dans les
EDPs.
Le problème posé sur le domaine continu (espace - temps) n’est pas résoluble tel
quel par un ordinateur, qui ne peut traiter qu’un nombre fini d’inconnues. Pour se
ramener à un problème en dimension finie, on discrétise l’espace et/ou le temps.
Si le problème original est linéaire on obtient un système linéaire. Si le problème
original est non linéaire on aura un système non linéaire.
2.1 Approximation des dérivées
2.1.1 Approximation de la dérivée première
En un point x et pour une valeur h du pas de discrétisation tels que u soit trois
fois dérivable sur l’intervalle [x − h, x + h] la formule de Taylor-Young conduit
aux deux relations :
u(x + h) = u(x) +
3
X
n=1
hn
n!
u(n)
(x) + h3
ε1(x, h),
16
2.1. APPROXIMATION DES DÉRIVÉES
u(x − h) = u(x) +
3
X
n=1
(−h)n
n!
u(n)
(x) + h3
ε2(x, h),
où les deux fonctions εi(x, h) convergent vers 0 avec h. Par conséquent,
δ+u(x) =
u(x + h) − u(x)
h
= u
0
(x) +
h
2
u
00
(x) +
h2
3!
u(3)
(x) + h2
ε1(x, h),
δ−u(x) =
u(x − h) − u(x)
h
= −u
0
(x) +
h
2
u
00
(x) −
h2
3!
u(3)
(x) + h2
ε2(x, h).
Ainsi, δ+u(x) et δ−u(x) représentent des approximations d’ordre 1 de u
0
(x).
En soustrayant les développements précédents, ce qui revient à faire la moyenne
de deux différences finies antérieures et postérieure à u(x), on obtient :
δ0u(x) =
u(x + h) − u(x − h)
2h
= u
0
(x) +
h2
6
u3
(x) + h2
ε3(x, h).
C’est une approximation d’ordre 2 de u0
(x).
2.1.2 Approximation de la dérivée seconde
En un point x et pour une valeur du pas de discrétisation tels que soit quatre
fois dérivable sur l’intervalle [x − h, x + h], la formule de Taylor-Young conduit à
la relation :
u(x + h) = u(x) +
4
X
n=1
hn
n!
u(n)
(x) + h4
ε1(x, h)
u(x − h) = u(x) +
4
X
n=1
(−1)n hn
n!
u(n)
(x) + h4
ε2(x, h),
où les fonctions εi(x, h) convergent vers 0 avec h tend vers 0. Par conséquent, on
peut approcher u
00
(x) par le terme :
u(x + h) − 2u(x) + u(x − h)
h2
.
17
2.2. DISCRÉTISATION PAR DIFFÉRENCES FINIES
2.2 Discrétisation par différences finies
On note u l’image considérée et ui,j sa valeur au pixel (i, j). Le pas d’espace h
est pris égal à 1. Pour approcher les solutions des modèles du chapitre 1 on aura
besoin des approximations en espace des dérivées suivantes, voir [6] :
Différences finies centrées :
∂ui,j
∂x
'
ui+1,j − ui−1,j
2
.
∂ui,j
∂y
'
ui,j+1 − ui,j−1
2
.
Différences finies décentrées à droite :
∂ui,j
∂x
' ui+1,j − ui,j.
∂ui,j
∂y
' ui,j+1 − ui,j.
Différences finies décentrées à gauche :
∂ui,j
∂x
' ui,j − ui−1,j.
∂ui,j
∂y
= ui,j − ui,j−1.
Pour les dérivées secondes :
∂2
u
∂2x
' ui+1,j − 2ui,j + ui−1,j.
∂2
u
∂2y
' ui,j+1 − 2ui,j + ui,j−1.
2.2.1 Équation de la chaleur
Le schéma d’Euler explicite consiste à utiliser un schéma aux différences finies
décentré à droite en temps. Il s’écrit :
18
2.2. DISCRÉTISATION PAR DIFFÉRENCES FINIES
uk+1
i,j − uk
i,j
∆t
− ∆uk
i,j = 0, k = 0, 1, ..., M, avec ∆t =
T
M
.
Alors le schéma s’écrit :
uk+1
i,j − uk
i,j
∆t
− (uk
i+1,j + uk
i−1,j + uk
i,j+1 + uk
i,j−1 − 4uk
i,j) = 0,
ou encore
uk+1
i,j = (1 − 4∆t)uk
i,j + ∆t(uk
i+1,j + uk
i−1,j + uk
i,j+1 + uk
i,j−1).
En écrivant u sous la forme d’un vecteur U, l’écriture matricielle de ce schéma est
la suivante :
Uk+1
= AUk
, k = 0, 1, ..., M,
où A est une matrice à 5 diagonales et elle ne dépend que de ∆t. Ce schéma néces-
site seulement un produit matrice-vecteur en chaque pas de temps. Cependant il
est seulement stable sous la condition ∆t
∆x2 + ∆t
∆y2 ≤ 1
2
, voir [3].
Le schéma d’Euler implicite consiste à utiliser un schéma aux différences finies
décentré à gauche en temps
uk+1
i,j − uk
i,j
∆t
− ∆uk+1
i,j = 0, k = 0, 1, ..., M.
Le schéma s’écrit :
uk+1
i,j − uk
i,j
∆t
− (uk+1
i+1,j + uk+1
i−1,j + uk+1
i,j+1 + uk+1
i,j−1 − 4uk+1
i,j ) = 0.
ou encore
uk
i,j = (1 − 4∆t)uk+1
i,j − ∆t(uk+1
i+1,j + uk+1
i−1,j + uk+1
i,j+1 + uk+1
i,j−1).
L’écriture matricielle est la suivante :
AUk+1
= Uk
, k = 0, 1, .., M.
L’avantage de ce schéma est qu’il est inconditionnellement stable, voir [3]. Mais
il demande la résolution d’un système linéaire en chaque pas du temps. On peut
19
2.2. DISCRÉTISATION PAR DIFFÉRENCES FINIES
réduire efficacement la complexité de cette résolution en décomposant la discré-
tisation suivant x et y séparément, on obtient ainsi deux systèmes tridiagonales
qu’on peut résoudre facilement par l’algorithme de Thomas, voir l’annexe.
On effectue d’abord une discrétisation suivant x :
u
k+1
2
i,j − uk
i,j
∆t
= u
k+1
2
i+1,j + u
k+1
2
i−1,j − 2u
k+1
2
i,j ,
puis une discrétisation suivant y :
uk+1
i,j − u
k+1
2
i,j
∆t
= uk+1
i,j+1 + uk+1
i,j−1 − 2uk+1
i,j .
Ce second schéma implicite s’écrit sous la forme :
i. Uk+1
2 = A−1
x Uk
ii. Uk+1
= A−1
y Uk+1
2 ,
pour k = 0, 1, ..., M. Par exemple, dans le cas d’une matrice de 4 lignes et 5 co-
lonnes, la matrice Ax a la forme suivante
Ax =









A
A 0
A
0 A
A









où
A =





β + α α 0 0
α β α 0
0 α β α
0 0 α β + α





,
α = −∆t et β = 1 + 2∆t. On définit de la même façon la matrice Ay.
2.2.2 Équation de Pérona-Malik
Le schéma explicite aux différences finies pour approcher la solution de l’équa-
tion de Pérona-Malik peut s’écrire
20
2.2. DISCRÉTISATION PAR DIFFÉRENCES FINIES
un+1
i,j − un
i,j
dt
= div

g(|∇un
ij|)
∂un
ij
∂x
∂un
ij
∂y

= divg(|∇un
ij|)
∂un
ij
∂x
g(|∇un
ij|)
∂un
ij
∂y
=
∂
∂x

g(|∇un
ij|)
∂un
ij
∂x

| {z }
ϕn(x,y)i,j
+
∂
∂y

g(|∇un
ij|)
∂un
ij
∂y

| {z }
ψn(x,y)i,j
∂
∂x
ϕn
(x, y)i,j =
ϕn
i+1
2
,j
− ϕn
i−1
2
,j
h
= gn
i+1
2
,j
(un
i+1,j − un
i,j) − gn
i−1
2
,j
(un
i,j − un
i−1,j)
∂
∂y
ϕn
(x, y)i,j =
ϕn
i,j+1
2
− ϕn
i,j−1
2
h
= gn
i,j+1
2
(un
i,j+1 − un
i,j) − gn
i,j−1
2
(un
i,j − un
i,j−1)
un+1
i,j = un
i,j+dt(gn
i+1
2
,j
(un
i+1,j−un
i,j)+gn
i−1
2
,j
(un
i,j−un
i−1,j)+gn
i,j+1
2
(un
i,j+1−un
i,j)+gn
i,j−1
2
(un
i,j−un
i,j−1))
un+1
i,j = un
i,j + dt[gn
i+1
2
,j
dEU + gn
i−1
2
,j
dWU + gn
i,j+1
2
dSU + gn
i,j−1
2
dNU],
avec :
dEU = un
i+1,j − un
i,j,
dWU = un
i,j − un
i−1,j,
dSU = un
i,j+1 − un
i,j,
dNU = un
i,j − un
i,j−1,
et on prend :
gn
i+1
2
,j
= g(|dEU|),
21
2.2. DISCRÉTISATION PAR DIFFÉRENCES FINIES
gn
i−1
2
,j
= g(|dWU|),
gn
i,j+1
2
= g(|dSU|),
gn
i,j−1
2
= g(|dNU|).
Le schéma explicite pour approcher la solution du modèle de Pérona-Malik
est facile à implémenter. Cependant, il est conditionnellement stable. On peut
utiliser un schéma implicite qui est toujours stable, mais il demande la résolu-
tion d’un système non-linéaire à chaque pas de temps. Une autre alternative est
d’utiliser schéma semi-implicite.
22
Chapitre 3
Résultats numériques
Dans ce chapitre, on applique les modèles du chapitre 1 pour le débruitage de
quelques images.
3.1 Dégradation d’images
Dans la pratique, une image peut être dégradée par plusieurs types et formes
de bruit, la source principale des bruits dans les images numériques survenues
pendant l’acquisition (numérisation) et la transmission. Ainsi, il est important de
connaître la nature du bruit contaminant l’image. En fait, le type de bruit le plus
connu et le plus difficile à réduire, est le bruit blanc gaussien, il apparaît dans
l’image comme une variation aléatoire autour des valeurs d’intensité. Il est mo-
délisé par la densité de probabilité gaussienne (unidimensionnelle) de moyenne
nulle et de variance σ2
suivante :
f(x) =
1
√
2πσ
e
−

x2
2σ2

. (3.1)
3.2 Critère d’analyse et d’évaluation pour le débrui-
tage d’images
La pertinence des méthodes de débruitage dépend de deux critères, subjectif
et objectif permettant d’évaluer l’efficacité de ces méthodes. Le critère subjectif
représente l’aspect visuel, il va permettre à l’utilisateur d’identifier le contenu des
images, la netteté de celles-ci, la présence d’artefacts et la qualité des contours. Le
23
3.3. MÉTHODES DE DÉBRUITAGE
critère objectif se base sur deux mesures : l’erreur quadratique moyenne (MSE) et
le rapport signal sur bruit (PSNR). Bien qu’ils ne correspondent pas toujours avec
la perception humaine, ils sont souvent considérés comme des bonnes mesures
de la fidélité d’une évaluation d’image. Ces critères sont définis comme suit :
- Erreur quadratique moyenne (MSE) : Mean Squared Error
MSE =
1
MN
M
X
i=1
N
X
j=1
(X(i, j) − e
X(i, j))2
, (3.2)
avec :
- X : Image originale,
- e
X : Image débruitée,
- M : Nombre de lignes de l’image,
- N : Nombre de colonnes de l’image,
- (i, j) : positionnement des pixels.
- Rapport signal sur bruit (PSNR) : Peak Signal to Noise Ratio
PSNR = 10 log10

2552
MES

, (3.3)
où 255 est la valeur maximale d’un pixel pour une image codée par 8 bits/pixel
en niveaux de gris.
3.3 Méthodes de débruitage
L’implémentation des codes a été faite sur MATLAB.
3.3.1 Débruitage par l’équation de la chaleur
La figure 3.1 est un exemple de débruitage de l’image Cameraman par l’EDP
de la chaleur (schémas explicite et implicite) avec le nombre d’itérations est fixé
à 50 et le pas de discrétisation en temps est variable. Pour les deux schémas, si
le pas de discrétisation en temps est faible, les zones homogènes sont bien res-
taurées et les contours sont bien conservés, mais par contre si le pas de discré-
tisation en temps est important, les bords sont érodés, toutefois on constate une
légère augmentation du PSNR du schéma implicite, cela s’explique par le faite
24
3.3. MÉTHODES DE DÉBRUITAGE
Image originale Image bruité
Explicite (dt=0.01) Implicite (dt=0.01)
PSNR= 26.60 dB PSNR= 26,67 dB
Explicite (dt=0.2) Implicite (dt=0.2)
PSNR= 19.82 dB PSNR= 19.87 dB
Fig. 3.1 – Images débruitées par l’équation de la chaleur (schèmas implicite et explicite)
avec un pas de discrétisation en temps variable et le nombre d’itérations est fixé à 50
que la méthode implicite est inconditionnellement stable mais il reste très coû-
teux à cause de la taille du système linéaire à résoudre à chaque pas de temps.
Toutefois les calculs sont très réduits par application de l’algorithme de Thomas.
La table 3.1 présente une comparaison en temps d’exécution des deux méthodes
pour résoudre l’EDP par les deux schémas implicites (la méthode par inversion
classique de la matrice du schéma implicite et algorithme de Thomas) pour dif-
férentes valeurs de dt. La figure 3.2 montre que si en augmente le nombre d’ité-
ration en gardant le pas temporel dt fixe, la clarté diminue en éliminant le bruit.
25
3.3. MÉTHODES DE DÉBRUITAGE
Temps de calcul en seconde dt=0.01 dt=0.1 dt=0.5 dt=1
Algorithme d’inversion de la matrice 84.01 37.24 7.24 5.83
Algorithme de Thomas 0.551 0.544 0.541 0.540
Tab. 3.1 – Comparaison du temps de calcul pour les deux schémas implicites avec un
nombre d’itérations égal à 10.
Nous pouvons donc constater que bien qu’étant très efficace sur l’élimination du
bruit, la propagation par l’équation de la chaleur ne permet pas une conservation
des bords de l’image qui s’en retrouve donc altérée. les contours sont endomma-
gés par la diffusion des pixels voisins. Le problème qui se pose est donc comment
conserver les contours d’une image tout en éliminant le bruit sur une image ? La
solution de ce problème consiste à utiliser un modèle de type Pérona-Malik.
Image filtrées Image filtrées Image filtrées
après 10 itérations après 50 itérations après 150 itérations
PSNR= 24,16 dB PSNR= 20,93 dB PSNR= 19,24 dB
Fig. 3.2 – Image Cameraman (256x256) débruitée par l’équation de la chaleur (Schéma
explicite) : Le pas de discrétisation en temps est fixé à 0.1 avec nombre d’itérations va-
riable
3.3.2 Débruitage par le modèle de Pérona-Malik
La figure 3.3 présente une comparaison subjective et objective, entre la diffu-
sion isotrope (image gauche) et la diffusion anisotrope (image droite).
La diffusion anisotrope présente un lissage conditionnel, dont le comportement
est fonction de la norme du gradient de l’image, grâce à la fonction g définie dans
le chapitre 1. Le principe est de diffuser fortement dans les zones à faibles gra-
dients (zones homogènes), et faiblement dans les zones à forts gradients (contours).
Le seuil λ de la fonction g permet de distinguer les zones à faible gradient de celles
à fort gradient. Nous pouvons classifier les résultats obtenus par l’algorithme de
Pérona-Malik dans la figure 3.4 prenant en compte la variation de λ et celle du
26
3.4. BOÎTE À OUTILS IMAGERIE DE MATLAB
Par l’équation de la chaleur Par Perona-Malik
PSNR = 20,93 dB PSNR = 33.30 dB
Fig. 3.3 – Comparaison entre le filtrage par les équations de la chaleur et Pérona-Malik
avec un pas de discrétisation égale 0.001 et le nombre d’itérations est fixé à 50.
nombre d’itérations. Nous constatons que pour T=200 l’image s’en retrouve gran-
dement altérée, en augmentant λ.
Le débruitage d’une image fortement bruitée par Pérona-Malik présente un risque
que le bruit soit interprétée comme un contour, l’augmentation du paramètre λ
altère l’image, voir figure 3.5.
La figure 3.6 montre que pour dt = 0.1, le débruitage par Pérona-Malik donne
de meilleurs résultats pour un nombre d’itérations égal à 20 avec λ est fixé à 2
(figure gauche), et donne de meilleurs résultats pour une valeur de λ égale 2.5
avec le nombre d’itération est fixé à 50 (figure droite).
3.4 Boîte à outils Imagerie de Matlab
La boîte à outils (Image Processing Toolbox) propose un ensemble complet
d’algorithmes et de fonctions destinés au traitement d’images. Parmi les princi-
pales fonctionnalités de cette boîte à outils, on cite :
1. Analyse des images (segmentation, morphologie, statistiques, mesure, etc.)
2. Amélioration d’images, filtrage et restauration
3. Transformations géométriques et méthodes de recalage d’images basées
sur l’intensité
4. Applications de visualisation (visualisation d’images et de vidéos).
27
3.4. BOÎTE À OUTILS IMAGERIE DE MATLAB
λ=20 et T=20 λ=50 et T=20 λ=100 et T=20
PSNR = 33.01 dB PSNR = 32,19 dB PSNR = 31,10 dB
λ=20 et T=100 λ=50 et T=100 λ=100 et T=100
PSNR = 28,53 dB PSNR = 25,65 dB PSNR = 24,71 dB
λ=20 et T=200 λ=50 et T=200 λ=100 et T=200
PSNR = 25,39 dB PSNR = 23,24 dB PSNR = 22,81 dB
Fig. 3.4 – Résultats obtenus par l’algorithme de Pérona-Malik prenant en compte la va-
riation de λ et celle du nombre d’itérations T.
La boîte à outils comprend des routines de filtrage spécialisées et une fonction de
filtrage multidimensionnel généralisée qui gère les types d’image en entiers, offre
de nombreuses options de gestion de l’effet de bords et effectue des convolutions
et corrélations. En utilisant des filtres et des fonctions prédéfinis, on peut :
1. Filtrer avec des opérateurs morphologiques.
2. Déflouter et rendre plus nette l’image.
3. Supprimer le bruit avec un filtrage linéaire, médian ou adaptatif.
28
3.4. BOÎTE À OUTILS IMAGERIE DE MATLAB
Image fortement bruitée λ=20 λ=100
Fig. 3.5 – Images débruitées par Pérona-Malik avec nombre d’itérations fixé à 400.
Fig. 3.6 – Résultats en terme de PSNR avec dt est fixé à 0.1. PSNR en fonction du nombre
d’itérations (figure gauche) et PSNR en fonction de λ (figure droite).
4. Effectuer une égalisation d’histogramme.
5. Remapper la plage dynamique.
6. Ajuster le contraste.
3.4.1 Filtrages d’images
Pour améliorer la qualité visuelle de l’image, on doit éliminer les effets des
bruits en lui faisant subir un filtrage.
Filtre Gaussien : Le filtre gaussien est un filtre isotrope caractérisé par un écart
type σ. Le code ci-dessous présente un exemple de filtrage d’une image à l’aide
du noyau gaussien.
I=imread(’cameraman.tif’) ;
figure(1) ; imagesc(I) ; colormap gray ; title(’Image originale’) ;
29
3.4. BOÎTE À OUTILS IMAGERIE DE MATLAB
[m,n] = size(I) ;
J = imnoise(I, ’gaussian’, 0, 0.001) ; % bruitage d’image
J = im2double(J) ;
figure(2) ; imagesc(J) ; colormap gray ; title(’Image bruitee’) ;
F=fspecial(’gaussian’) ; % créer des filtres prédéfinis
J=imfilter(double(J),F) ; % opération par fenêtre glissante
figure(3) ; imagesc(J) ; colormap gray ;title(’Image filtrer’) ;
La figure 3.7 montre les résultats obtenus.
Image originale Image bruitée Image débruitée
- PSNR= 23.32 dB PSNR= 26.30 dB
Fig. 3.7 – Application du filtre Gaussian
Filtre Median : C’est un filtre non-linéaire qui ne peut pas s’implémenter comme
une convolution. On remplace la valeur d’un pixel par la valeur médiane dans
son voisinage. Afin de réaliser ce filtre sous Matlab on applique le code suivant :
I=imread(’cameraman.tif’) ;
figure(1) ; imagesc(I) ; colormap gray ; title(’Image originale’) ;
[m,n] = size(I) ;
J = imnoise(I, ’gaussian’, 0, 0.001) ;
J = im2double(J) ;
figure(2) ; imagesc(J) ; colormap gray ; title(’Image bruitee’) ;
s= strel(’disk’,1) ;
k=imopen(J,s) ;
n=imclose(k,s) ;
f=imclose(J,s) ;
p=imopen(n,s) ;
30
3.4. BOÎTE À OUTILS IMAGERIE DE MATLAB
figure(3) ; imagesc(p) ; colormap gray ; title(’Image débruitée’) ;
La figure 3.8 montre les résultats obtenus :
Image originale Image bruitée Image débruitée
- SNR= 302.18 SNR= 295.07
Fig. 3.8 – Application du filtre de Median
3.4.2 Détection de contours
Le but de la détection de contours est de repérer les points d’une image nu-
mérique qui correspondent à un changement brutal de l’intensité lumineuse. La
détection des contours d’une image réduit de manière significative la quantité de
données et élimine les informations qu’on peut juger moins pertinentes, tout en
préservant les propriétés structurelles importantes de l’image. Il existe un grand
nombre de méthodes de détection de l’image. Dans ce qui suit quelques méthodes
de la boîte à outils imagerie seront exposées.
Filtre de Sobel : Le principe de ce filtre est que l’opérateur calcule le gradient de
l’intensité de chaque pixel. Ceci indique la direction de la plus forte variation du
clair au sombre, ainsi que le taux de changement dans cette direction. On connait
alors les points de changement soudain de luminosité, correspondant probable-
ment à des bords, ainsi que l’orientation de ces bords. Une application de ce filtre
est implémenté dans le code suivant :
I=imread(’cameraman.tif’) ;
figure(1) ; imagesc(I) ; colormap gray ; title(’Image originale’) ;
[m,n] = size(I) ;
J = imnoise(I, ’gaussian’, 0, 0.001) ;
31
3.4. BOÎTE À OUTILS IMAGERIE DE MATLAB
J = im2double(J) ;
figure(2) ; imagesc(J) ; colormap gray ; title(’Image bruitée’) ;
F=fspecial(’sobel’) ;
J=imfilter(J,F) ;
figure(3) ; imagesc(J) ; colormap gray ;title(’Image débruitée’) ;
La figure 3.9 montre le résultat obtenu.
Image originale Image bruitée Image débruitée
- PSNR= 23.3 dB PSNR= 3.14 dB
Fig. 3.9 – Application du filtre de Sobel
filtre de Prewitt : En terme simple le filtre de Prewitt, calcule le gradient d’in-
tensité 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 escarpé
(pente raide) de luminosité de l’image et donc étalement des 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éren-
tiel discret calculant une approximation du gradient d’intensité lumineuse d’une
image. Afin de réaliser ce filtre sous Matlab on applique le code suivant :
I=imread(’cameraman.tif’) ; figure(1) ;
imagesc(I) ;
colormap gray ;
title(’Image originale’) ;
[m,n] = size(I) ;
J = imnoise(I, ’gaussian’, 0, 0.001) ;
J = im2double(J) ;
figure(2) ; imagesc(J) ; colormap gray ; title(’Image bruitee’) ;
32
3.4. BOÎTE À OUTILS IMAGERIE DE MATLAB
F=fspecial(’prewitt’) ;
J=imfilter(J,F) ;
figure(3) ; imagesc(J) ; colormap gray ; title(’Image debruitee’) ;
La figure 3.10 montre le résultat obtenu :
Image originale Image bruitée Image débruitée
- PSNR= 23.28 dB PSNR= 3.14 dB
Fig. 3.10 – Application du filtre de Prewitt
33
Conclusion
Le problème étudié dans ce projet est celui du débruitage d’images numé-
riques corrompues par un bruit blanc gaussien. Les méthodes utilisées pour ré-
cupérer une meilleure image reposent sur des modèles basés sur des EDPs. Ces
équations ont été étudiées dans le cadre de débruitage d’images formulées à par-
tir du processus de diffusion isotrope et anisotrope. Les résultats obtenus par lis-
sage isotrope, sont peu satisfaisants. Il opère en effet de manière identique dans
toutes les directions, et ne possède aucune direction privilégiée, atténuant ainsi
bruit et contours sans distinction. Un modèle de type Pérona-Malik peut remédier
à cet inconvénient. En effet, il permet d’introduire la notion de diffusion aniso-
trope dont le principe est de diffuser fortement dans les zones à faibles gradients
(zones homogènes) et faiblement dans les zones à forts gradients (contours).
La résolution de ces modèles peut être effectuée efficacement en utilisant la mé-
thode des différences finies. Pour l’équation de la chaleur, on a comparé les deux
schémas explicite et implicite. Ce dernier est connu par sa stabilité, mais il de-
mande la résolution d’un système linéaire en chaque pas de temps. On peut
réduire le coût de ce schéma en transformant le problème en deux systèmes li-
néaires avec des matrices tridiagonales qu’on peut résoudre efficacement par l’al-
gorithme de Thomas. Pour le modèle de Pérona-Malik, on a implémenté seule-
ment le schéma explicite en prenant des valeurs de ∆t suffisamment petites pour
assurer la stabilité du schéma. Il serait intéressant d’implémenter le schéma im-
plicite qui est toujours stable et qui donne lieu à un problème non linéaire en
chaque pas de temps qu’on peut résoudre par une méthode de type Newton.
Enfin, on a présenté la boîte à outils Imagerie de Matlab et on a utilisé quelques
fonctions prédéfinies pour le débruitage et la détection des contours des images.
34
Annexe (Algorithme de Thomas [6] )
Soit à résoudre un système linéaire Ax = b avec A a une forme tridiagonale
A =






a1 c1 0
e2 a2
...
... cn−1
0 en an






.
Si la factorisation LU de A existe, les matrices L et U sont bidiagonales et ont la
forme
L =






1 0
β2 1
... ...
0 βn 1






, U =






α1 c1 0
α2
...
... cn−1
0 αn






.
Les coefficients αi et βi sont déterminés par les relations de récurrence
α1 = a1, βi =
ei
αi−1
, αi = ai − βici−1, i = 2, . . . , n.
Pour résoudre le système linéaire Ax = b, il est facile maintenant de résoudre les
deux systèmes bidiagonaux Ly = b et Ux = y, pour obtenir les formules suivantes
(Ly = b) : y1 = b1, yi = bi − βiyi−1, i = 2, . . . , n,
(Ux = y) : xn =
yn
αn
, xi =
yi − cixi+1
αi
, i = n − 1, . . . , 1.
Cette technique est connue sous le nom d’algorithme de Thomas. Son coût est de
l’ordre de n opérations.
35
Bibliographie
[1] J.-F. Aujol, Traitement d’images par approches variationnelles et équations
aux dérivées partielles. Semestre d’enseignement UNESCO sur le traitement
des images numériques, Avril 2005 à Tunis.
[2] M. Bergounioux, Méthodes mathématiques pour le Traitement d’image,
Cours de Master, Mai 2009.
[3] R. Herbin, Analyse numérique des équations aux dérivées partielles, Univer-
sité Aix Marseille 1, Cours de Master, Décembre 2012.
[4] J.J. Koenderink, The structure of images, Biological Cybernetics, Vol. 50, pp
363-370, 1984.
[5] P. Perona, J. Malik, Scale space and edge detection using anisotropic diffusion,
IEEE transactions on Pattern Analysis and Machine Intelligence, 12, pp 629-
639, 1990.
[6] A. Quarteronni, F. Saleri et P. Gervasio, Calcul scientifique, Springer, 2010.
[7] S. Yesli, Filtrage par Diffusion Anisotropique Appliquée aux images IRM, Mé-
moire de magister, Faculté de génie électrique et d’informatique, Université
Mouloud Mammeri.
36
Résumé
Ce projet traite le débruitage d’images numériques corrompues en utilisant
deux modèles basés sur des équations aux dérivées partielles. Le premier modèle
étudié est l’équation de la chaleur, il repose sur un processus de diffusion isotrope
pour un lissage de l’image traitée. Ce modèle présente un inconvénient majeur
car il ne fait pas distinction entre le bruit et les contours de l’image. Pour remé-
dier à cet inconvénient, la notion de diffusion anisotrope a été introduite, dont le
principe est de diffuser fortement dans les zones à faibles gradients (zones ho-
mogènes), et faiblement dans les zones à forts gradients (contours), c’est le cas du
modèle de Pérona-Malik.
La résolution de ces modèles est effectuée en utilisant la méthode des différences
finies. Les schémas utilisés sont implémentés sur Matlab et une comparaison de
ces schémas est faite.
Enfin, un aperçu sur l’utilisation de la boîte à outils Imagerie pour le traitement
d’images est présenté.
37

Contenu connexe

Tendances

5 spatial filtering p1
5 spatial filtering p15 spatial filtering p1
5 spatial filtering p1
Gichelle Amon
 
Reconnaissance faciale
Reconnaissance facialeReconnaissance faciale
Reconnaissance faciale
Aymen Fodda
 
Enhancement in frequency domain
Enhancement in frequency domainEnhancement in frequency domain
Enhancement in frequency domain
Ashish Kumar
 
Algorithme génétique
Algorithme génétiqueAlgorithme génétique
Algorithme génétique
Ilhem Daoudi
 

Tendances (20)

Introduction au traitement d'images
Introduction au traitement d'imagesIntroduction au traitement d'images
Introduction au traitement d'images
 
Vision et traitement d'images
Vision et traitement d'imagesVision et traitement d'images
Vision et traitement d'images
 
5 spatial filtering p1
5 spatial filtering p15 spatial filtering p1
5 spatial filtering p1
 
Reconnaissance faciale
Reconnaissance facialeReconnaissance faciale
Reconnaissance faciale
 
Rapport pfe-ayoub mkharbach
Rapport pfe-ayoub mkharbachRapport pfe-ayoub mkharbach
Rapport pfe-ayoub mkharbach
 
Rapport Stage
Rapport StageRapport Stage
Rapport Stage
 
Image denoising
Image denoisingImage denoising
Image denoising
 
5.3 Régression logistique
5.3 Régression logistique5.3 Régression logistique
5.3 Régression logistique
 
Rapport projet Master 2 - Intelligence Artificielle
Rapport projet Master 2 - Intelligence ArtificielleRapport projet Master 2 - Intelligence Artificielle
Rapport projet Master 2 - Intelligence Artificielle
 
TP / Traitement d'image : Discrimination de Texture
TP / Traitement d'image : Discrimination de TextureTP / Traitement d'image : Discrimination de Texture
TP / Traitement d'image : Discrimination de Texture
 
Conduite d'un projet informatique - Etude Préalable
Conduite d'un projet informatique - Etude PréalableConduite d'un projet informatique - Etude Préalable
Conduite d'un projet informatique - Etude Préalable
 
Region filling
Region fillingRegion filling
Region filling
 
Intégration et personnalisation d’OpenERP au sein de l’entreprise ISATIS
Intégration et personnalisation d’OpenERP au sein de l’entreprise ISATISIntégration et personnalisation d’OpenERP au sein de l’entreprise ISATIS
Intégration et personnalisation d’OpenERP au sein de l’entreprise ISATIS
 
Application de Reconnaissance faciale - eigenfaces, fisherfaces et lbph
Application de  Reconnaissance faciale - eigenfaces, fisherfaces et lbphApplication de  Reconnaissance faciale - eigenfaces, fisherfaces et lbph
Application de Reconnaissance faciale - eigenfaces, fisherfaces et lbph
 
Polycopie Analyse Numérique
Polycopie Analyse NumériquePolycopie Analyse Numérique
Polycopie Analyse Numérique
 
Rapport de stage PFE ( DUT) chez Synthèse Conseil - Jaiti Mohammed
Rapport de stage PFE ( DUT) chez Synthèse Conseil  - Jaiti MohammedRapport de stage PFE ( DUT) chez Synthèse Conseil  - Jaiti Mohammed
Rapport de stage PFE ( DUT) chez Synthèse Conseil - Jaiti Mohammed
 
Introduction logique floue
Introduction logique floueIntroduction logique floue
Introduction logique floue
 
Enhancement in frequency domain
Enhancement in frequency domainEnhancement in frequency domain
Enhancement in frequency domain
 
Algorithme génétique
Algorithme génétiqueAlgorithme génétique
Algorithme génétique
 
Assemblage sous catia
Assemblage sous catiaAssemblage sous catia
Assemblage sous catia
 

Similaire à Étude et résolution numérique de deux modèles basés sur des équations aux dérivées partielles pour le débruitage des images

OpenCR__Rapport_soutenance_Finale
OpenCR__Rapport_soutenance_FinaleOpenCR__Rapport_soutenance_Finale
OpenCR__Rapport_soutenance_Finale
Chady Dimachkie
 
Rapport - Création d'une image panoramique
Rapport - Création d'une image panoramiqueRapport - Création d'une image panoramique
Rapport - Création d'une image panoramique
Ahmed EL ATARI
 
2009 these servant (1)
2009 these servant (1)2009 these servant (1)
2009 these servant (1)
bessem ellili
 
622 vision-industrielle-principes
622 vision-industrielle-principes622 vision-industrielle-principes
622 vision-industrielle-principes
Ben Fethi
 
Mémoire.pdf
Mémoire.pdfMémoire.pdf
Mémoire.pdf
MOHAMEDAITBLAL
 

Similaire à Étude et résolution numérique de deux modèles basés sur des équations aux dérivées partielles pour le débruitage des images (20)

OpenCR__Rapport_soutenance_Finale
OpenCR__Rapport_soutenance_FinaleOpenCR__Rapport_soutenance_Finale
OpenCR__Rapport_soutenance_Finale
 
CoursImageProcessing1.pdf
CoursImageProcessing1.pdfCoursImageProcessing1.pdf
CoursImageProcessing1.pdf
 
Rapport - Création d'une image panoramique
Rapport - Création d'une image panoramiqueRapport - Création d'une image panoramique
Rapport - Création d'une image panoramique
 
signal f_sur
signal f_sursignal f_sur
signal f_sur
 
SIGNAL
SIGNAL SIGNAL
SIGNAL
 
Rapport
RapportRapport
Rapport
 
2009 these servant (1)
2009 these servant (1)2009 these servant (1)
2009 these servant (1)
 
622 vision-industrielle-principes
622 vision-industrielle-principes622 vision-industrielle-principes
622 vision-industrielle-principes
 
Extrait Pour la science n°538 - Quand une photo sort de l’ombre
Extrait Pour la science n°538 - Quand une photo sort de l’ombreExtrait Pour la science n°538 - Quand une photo sort de l’ombre
Extrait Pour la science n°538 - Quand une photo sort de l’ombre
 
Elaboration of E_voting system based on elliptic curve cryptography
Elaboration of E_voting system based on elliptic curve cryptographyElaboration of E_voting system based on elliptic curve cryptography
Elaboration of E_voting system based on elliptic curve cryptography
 
Object detection and recognition in digital images
Object detection and recognition in digital imagesObject detection and recognition in digital images
Object detection and recognition in digital images
 
Mémoire.pdf
Mémoire.pdfMémoire.pdf
Mémoire.pdf
 
Memoire_final
Memoire_finalMemoire_final
Memoire_final
 
Graphes
GraphesGraphes
Graphes
 
Magister kharroubi larbi
Magister kharroubi larbiMagister kharroubi larbi
Magister kharroubi larbi
 
Résolution numérique de l'équation de Black Scholes en python
Résolution numérique de l'équation de Black Scholes en pythonRésolution numérique de l'équation de Black Scholes en python
Résolution numérique de l'équation de Black Scholes en python
 
Decomposition des spectres dans des images astronomiques hyperspectrales avec...
Decomposition des spectres dans des images astronomiques hyperspectrales avec...Decomposition des spectres dans des images astronomiques hyperspectrales avec...
Decomposition des spectres dans des images astronomiques hyperspectrales avec...
 
ségmentation d'image
ségmentation d'imageségmentation d'image
ségmentation d'image
 
defour phd
defour phddefour phd
defour phd
 
cours traitements d'image segmentation.pdf
cours traitements d'image segmentation.pdfcours traitements d'image segmentation.pdf
cours traitements d'image segmentation.pdf
 

Étude et résolution numérique de deux modèles basés sur des équations aux dérivées partielles pour le débruitage des images

  • 1. Projet tutoré Présenté par : BOUDLAL Ayoub & TAHIRI Chaimaa Pour obtenir le diplôme de Licence fondamentale : Sciences Mathématiques et Applications ' & $ % Étude et résolution numérique de deux modèles basés sur des équations aux dérivées partielles pour le débruitage des images soutenu le : 25 Juin 2015 devant le jury composé de : Mr Fouad ZINOUN Président Professeur de l’Enseignement Supérieur à la FSR Mr Mohammed ZIANI Encadrant Professeur de l’Enseignement Supérieur à la FSR Mr Mostafa OUARIT Examinateur Professeur de l’Enseignement Supérieur à la FSR Année universitaire : 2014/2015 1
  • 2. Table des matières Introduction 5 1 Équations aux dérivées partielles en traitement d’images 7 1.1 Image numérique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 1.2 Filtrage par convolution . . . . . . . . . . . . . . . . . . . . . . . . . 8 1.3 Modèles utilisés en traitement d’images . . . . . . . . . . . . . . . . 10 1.3.1 Équation de la chaleur . . . . . . . . . . . . . . . . . . . . . . 11 1.3.2 Modèle de Pérona-Malik . . . . . . . . . . . . . . . . . . . . . 11 2 Résolution numérique 16 2.1 Approximation des dérivées . . . . . . . . . . . . . . . . . . . . . . . 16 2.1.1 Approximation de la dérivée première . . . . . . . . . . . . . 16 2.1.2 Approximation de la dérivée seconde . . . . . . . . . . . . . 17 2.2 Discrétisation par différences finies . . . . . . . . . . . . . . . . . . . 18 2.2.1 Équation de la chaleur . . . . . . . . . . . . . . . . . . . . . . 18 2.2.2 Équation de Pérona-Malik . . . . . . . . . . . . . . . . . . . . 20 3 Résultats numériques 23 3.1 Dégradation d’images . . . . . . . . . . . . . . . . . . . . . . . . . . 23 3.2 Critère d’analyse et d’évaluation pour le débruitage d’images . . . 23 3.3 Méthodes de débruitage . . . . . . . . . . . . . . . . . . . . . . . . . 24 3.3.1 Débruitage par l’équation de la chaleur . . . . . . . . . . . . 24 3.3.2 Débruitage par le modèle de Pérona-Malik . . . . . . . . . . 26 3.4 Boîte à outils "Imagerie" de Matlab . . . . . . . . . . . . . . . . . . . 27 3.4.1 Filtrages d’images . . . . . . . . . . . . . . . . . . . . . . . . 29 2
  • 3. TABLE DES MATIÈRES 3.4.2 Détection de contours . . . . . . . . . . . . . . . . . . . . . . 31 Conclusion et discussion 34 3
  • 4. Remerciements Avant d’aborder le rapport de projet de fin d’étude, nous tenons à exprimer nos précieux remerciements à la Faculté des Sciences de Rabat. Nous tenons à remercier Mr. Ziani Mohammed, notre encadrant de mémoire, pour tout le soutien, l’aide, l’orientation et la guidance qu’il nous a apporté durant toute cette période de réalisation de notre mémoire. Merci aux Professeurs Mostafa Ouarit et Fouad Zinoun d’avoir accepté d’être dans le jury et d’évaluer ce travail. Nous ne pouvons pas ceux qui par leur amour et leur confiance ont soutenu morale- ment ce travail : nos familles. Spécialement nos parents pour le soutien inconditionnel dont ils ont fait preuve depuis que notre projet de fin d’étude est défini. Merci pour le soutien financier, moral, psychologique et matériel. Si nous sommes ici aujourd’hui, c’est grâce à vous ! Enfin, nous remercions nos amis et camarades de promotion pour ces trois années passées ensemble, dans les meilleurs moments comme dans les pires. 4
  • 5. Introduction En analyse d’image il arrive souvent de se retrouver confronté à un phéno- mène de bruit sur les images ce qui rend le traitement des données difficile. Le phénomène de bruit peut être soit d’origine externe, perturbation du système d’acquisition de l’image par des facteurs tel que la luminosité, la pollution, soit d’origine interne au signal du fait des fluctuations spontanées des grandeurs élec- triques mises en œuvre dans l’acquisition de l’image. L’apparition de bruit dans une image est donc préjudiciable à bien des égards pour son analyse, sa classifi- cation et sa compréhension tant intuitive que formelle. Afin de minimiser ce phénomène de bruitage de l’image plusieurs techniques ont été développées. Les plus intuitives consistent à lisser l’image en remplaçant la valeur d’un pixel par la valeur moyenne de son voisinage ou la valeur médiane, il s’agit d’une opération de convolution de l’image considérée par un filtre. Ces techniques de traitement du bruit par des processus linéaires présentent souvent des défauts et se révèlent inefficaces dans le cadre d’images fortement bruitées, la valeur des pixels bruités influant à ordre égal que celle des pixels significatifs le résultat. L’application des équations aux dérivées partielles (EDP) semble par contre une approche relativement efficace contre le bruit que peuvent subir les images. La 1ère EDP utilisée était l’équation de la chaleur. C’est un processus de diffusion pour homogénéiser l’intensité de l’image. Un inconvénient de l’équation de la chaleur est qu’il ne distingue pas entre le bruit et les contours de l’image. Ainsi, l’image résultante après filtrage serait souvent floue. Pour remédier à cet incon- vénient, le modèle de Pérona-Malik a été introduit. Ce dernier consiste a lisser les zones homogènes et de rechausser les contours. Le but de ce rapport est d’étudier et analyser ces modèles et présenter des mé- 5
  • 6. TABLE DES MATIÈRES thodes numériques utilisées pour les résoudre efficacement. Le rapport sera or- ganisé de la manière suivante : Dans le premier chapitre on étudie les modèles basés sur l’équation de chaleur et Pérona-Malik pour le débruitage des images. Dans le deuxième chapitre on utilise différents schémas aux différences finies pour résoudre ces modèles. On donne aussi une comparaison de ces schémas en terme de complexité et de sta- bilité. Dans le dernier chapitre on utilise les modèles présentés dans le chapitre 1 pour améliorer la qualité de quelques images et on compare numériquement les schémas de différence finies utilisés. On donne aussi dans ce chapitre un aperçu sur la boîte à outils imagerie de Matlab. 6
  • 7. Chapitre1 Équations aux dérivées partielles en traitement d’images Une équation aux dérivées partielles (EDP) est une équation dont les solutions sont des fonctions inconnues (variables) vérifiant certaines conditions concernant leurs dérivées partielles. Les EDPs ont été introduites en traitement d’images en 1984, voir [4]. Partant de l’équation classique de la chaleur, une grande va- riété d’EDP est utilisée pour résoudre quelques problèmes de base en traitement d’images. 1.1 Image numérique Une image numérique est une matrice de pixels repérés par leur coordonnées (x, y). S’il s’agit d’une image couleur, un pixel est codé par 3 composantes (r,g,b) chacune comprise au sens large entre 0 et 255, représentant respectivement les "doses" de rouge, vert et bleu qui caractérisent la couleur du pixel. S’il s’agit d’une image en niveau de gris, il est codé par une composante comprise au sens large entre 0 et 255, représentant la luminosité du pixel, voir figure 1.1. En effet chaque entier représentant un niveau de gris est codé sur 8 bits. Il est donc compris entre 0 (blanc) et 28 − 1 = 255 (noir). C’est la quantification la plus courante. Dans ce rapport, on ne considère que les images en niveau de gris. 7
  • 8. 1.2. FILTRAGE PAR CONVOLUTION Cameraman 256x256 Echantillon de cameraman 8x8 (249 :256,249 :256) Fig. 1.1 – Image numérique 1.2 Filtrage par convolution La convolution est l’une des principales opérations utilisées en traitement des images. La convolution d’une image I par un noyau de filtrage h est définie par : I(x, y) ∗ h(x, y) = Z +∞ +∞ Z +∞ +∞ I(x − u, y − v)h(u, v)dudv. Dans le cas discret, cette équation s’écrit : I(x, y) ∗ h(x, y) = N X −N M X −M I(x + i, y + j)h(i, j) La valeur de chaque pixel est recalculée on se basant sur la valeur du pixel lui- même et sur les valeurs des pixels voisins. La combinaison des filtres à l’utili- sation de la convolution a permis le développement d’un très grand nombre de filtres. Il existe, en général, deux types de filtres : Les filtres lisseurs : Ils sont utilisés à enlever le bruit d’une image ou la simpli- fier en la rendant plus régulière. Ils correspondent à des filtres passe-bas dans le domaine fréquentiel. Ce type de filtrage est généralement utilisé pour atténuer le bruit de l’image, c’est la raison pour laquelle on parle habituellement de lissage. 8
  • 9. 1.2. FILTRAGE PAR CONVOLUTION Donnons maintenant quelques exemples de filtres lisseurs : Filtre moyenneur : Le niveau de gris du pixel central est remplacé par la moyenne des niveaux de gris des pixels voisins. La taille du noyau dépend de l’intensité du bruit et de la taille des détails significatifs de l’image traitée. Les effets du filtre moyenneur varient avec la taille du noyau ; plus les dimensions du noyau seront importantes, plus le bruit sera éliminé. Mais en contrepartie, les détails fins seront eux-aussi effacés et les contours étalés. Filtre gaussien : Les filtres moyenneurs ont pour effet de lisser considérable- ment l’image d’entrée. Il est donc préférable, pour éviter ce type d’effet, d’utiliser un masque avec cœfficient plus élevé au centre que sur les contours du noyau. Le filtre gaussien répond parfaitement à ce type de problème et est parmi les noyaux les plus utilisés pour lisser les images. Ce filtre est de type linéaire et une version discrétisée de la fonction gaussienne 2D est donnée par : G(x, y) = 1 √ 2πσ2 exp x2 + y2 4σ2 , où σ caractérise l’écart-type. Le paramètre de la taille détermine la largeur à mi- hauteur de la gaussienne (LMH, largeur à mi-hauteur). La relation entre la largeur à mi-hauteur et σ est : LMH = 2 √ 2 ln 2σ = 2.35482σ. Par exemple, le noyau d’un filtre gaussien 3 × 3 avec un écart-type σ = 0.6746 est donné par : h(u, v) = 1 25    1 3 1 3 9 3 1 3 1    . Les filtres rehausseurs : Ils sont utilisés à faire ressortir les régions de contraste et les détails ou pour estimer des grandeurs différentielles. Ils correspondent à des filtres passe-haut dans le domaine fréquentiel. Dans le cas de filtre de rehaus- sement on cite l’exemple de filtre passe haut, caractérisé par un noyau compor- tant des valeurs négatives autour du pixel central. Cette accentuation augmente 9
  • 10. 1.3. MODÈLES UTILISÉS EN TRAITEMENT D’IMAGES le contraste des limites entre les zones homogènes de l’image et est alors appelée extraction de contours. 1.3 Modèles utilisés en traitement d’images Les EDPs ont pris une grande importance dans le domaine de traitement d’images. Ces équations sont nées du principe de physique de la diffusion qui est basé sur celle qui s’établit dans une matière fluide à savoir que l’équation de diffusion est similaire à celle des concertations locales d’un fluide qui s’équi- librent. Le transfert pour atteindre l’équilibre des concentrations s’exprime avec la première loi empirique de Fick : j = −D.∇u, avec : D : tenseur de diffusion, symétrique défini positif, u((x, y, z), t) : concentration de matière au point (x, y, z) à l’instant t, ∇u : gradient spatial de la concentration de matière, j : flux de matière. L’équation montre que le sens de déplacement du flux de la matière est opposé à la concentration, c.-à-d. que la concentration passe d’une région plus forte vers une région plus faible. Si ∇u et j sont parallèles, on parle d’une diffusion iso- trope, dans ce cas on peut remplacer D par un scalaire g nommé diffusivité. Le cas général est appelé anisotrope. La propriété de transport de matière sous la condition de conservation s’exprime avec l’équation de continuité : ∂u ∂t = −div(j), où t représente le temps et ∂u ∂t la dérivée temporelle de la concentration de ma- tière. En combinant ces deux équations, on obtient l’équation de diffusion (se- conde loi empirique de Fick) : ∂u ∂t = div(D.∇u). Dans le cas où le tenseur de diffusion D est constant on parle de diffusion homo- gène, et dans le cas où il dépend de la structure différentielle de u, la diffusion 10
  • 11. 1.3. MODÈLES UTILISÉS EN TRAITEMENT D’IMAGES est non-homogène. Cette équation apparaît dans beaucoup de domaines. Dans le domaine du transfert de chaleur, c’est l’équation de la chaleur. En traitement d’images, on peut assimiler la concentration u au niveau de gris et les conditions initiales à l’image de départ. 1.3.1 Équation de la chaleur Koenderink a démontré en 1984, que la convolution d’une image bruitée par un filtre gaussien est la solution de l’équation de la chaleur pour σ = √ 2t. Dans le domaine de l’imagerie, cette équation est mieux connue sous le nom d’équation de diffusion. Elle s’écrit sous la forme :          ∂u ∂t − ∆u(t, x) = 0 si x ∈ Ω et t ∈]0, T] u(x, 0) = u0(x) ∂u ∂N = 0 sur ∂Ω, avec Ω est le domaine de l’image et N le vecteur normal. Les conditions qui inter- viennent naturellement en traitement d’images sont les conditions de Neumann ∂u ∂N = 0 sur ∂Ω. Pour imposer une telle condition, il suffit de prolonger l’image discrète u par réflexion par rapport à ses bords, voir [1]. La diffusion des pixels par l’équation de la chaleur présente un défaut majeur. Les contours sont endommagés. Le problème qui se pose est comment conserver les contours d’une image tout en éliminant le bruit ? L’algorithme de Pérona-Malik répond à ce problème par une prise en compte du gradient. 1.3.2 Modèle de Pérona-Malik La faiblesse de l’équation de la chaleur et que la diffusion est identique en tout point de l’image. L’image est lissée aussi bien dans les zones homogènes que le long des contours. Donc pour éviter cette altération des contours, le filtrage par diffusion non-linéaire est utilisé. L’introduction des équations de diffusion non-linéaire dans le domaine du trai- tement des images remonte à un article de Pérona-Malik, voir [5]. Ce modèle consiste à lisser l’image dans les zones homogènes et de ne pas faire évoluer 11
  • 12. 1.3. MODÈLES UTILISÉS EN TRAITEMENT D’IMAGES l’image le long des contours. L’équation correspondante s’écrit :          ∂u ∂t (x, y, t) = div (g(|∇u|).∇u(x, y, t)) u(x, y, 0) = u0(x, y) ∂u ∂N = 0 sur ∂Ω, avec Ω est le domaine de l’image, N est le vecteur normal et |∇u| est la norme du gradient de u. La fonction g est décroissante avec g(0) = 1 et lim s→+∞ g(s) = 0. Par exemple, Pérona-Malik ont proposé les fonctions suivantes : g(s) = 1 1 + (s λ )2 et g(s) = exp − λ s 2 ! Le paramètre λ est appelé seuil ou paramètre contraste comme nous allons voir, il joue un rôle important dans le comportement de la diffusion. Cette métrique impose une diffusion plus faible pour des valeurs de gradients d’autant plus élevées. Donc les contours sont préservés. Une interprétation per- met de saisir plus facilement les différences avec la diffusion isotrope, voir [7], est obtenue en écrivant l’équation en termes de dérivées secondes directionnelles, voir la figure 1.2, dans la direction du gradient : − → η = ux |∇u| , uy |∇u| T , et dans la direction orthogonale − → ξ = − uy |∇u| , ux |∇u| T , avec ∇u = (− → ux, − → uy) est le vecteur gradient de u et |∇u| = p u2 x + u2 y est sa norme. Posons c = g(|∇u|). Dans le repère ( − → i , − → j ) du système d’axes (x, y) de l’image nous avons : ∂u ∂t = div(c∇u) = div(c[ux, uy]) = ∂ ∂x cux + ∂ ∂y cuy. 12
  • 13. 1.3. MODÈLES UTILISÉS EN TRAITEMENT D’IMAGES Fig. 1.2 – Direction du gradient et direction orthogonale ou encore ∂u ∂t = g(|∇u|)[uxx + uyy] + ∂ ∂x g(|∇u|) ux + ∂ ∂y g(|∇u|) uy, On a ∂ ∂x g(|∇u|) ux = g(|∇u|) 0 |∇u| (uxxux + uxyuy)ux et ∂ ∂y g(|∇u|) uy = g(|∇u|) 0 |∇u| (uyyuy + uyxux)uy. Ceci donne l’expression suivante : ∂u ∂t = g(|∇u|)[uxx + uyy] + g(|∇u|) 0 |∇u| (uxxux + uxyuy)ux + g(|∇u|) 0 |∇u| (uyyuy + uyxux)uy. 13
  • 14. 1.3. MODÈLES UTILISÉS EN TRAITEMENT D’IMAGES Ainsi, dans la nouvelle repère (− → η , − → ξ ) du système d’axes (x, y) la dérivée première uη de u par rapport à − → η s’exprime par : − → η = ∇U− → η = |∇U|, et la dérivée seconde uηη s’écrit : uηη = ∇uη − → η = 1 |∇u| [ ∂ ∂x (|∇u|)ux + ∂ ∂y (|∇u|)uy] = (uxxux + uxyuy)ux + (uyyuy + uxyux)uy (|∇u|)2 = uxxu2 x + 2uxyuxuy + uyyu2 y (|∇u|)2 . Le laplacien étant invariant au changement de base, on peut écrire : ∆u = uxx + uyy = uηη + uξξ. En combinant les équations précédentes nous obtenons : ∂u ∂t = div(g(|∇u|))|∇u| = g(|∇u|)(uηη + uξξ) + (|∇u|)g 0 (|∇u|)uηη = [g(|∇u|) + (|∇u|)g 0 (|∇u|)]uηη + g(|∇u|)uηη. Cette dernière équation peut s’écrire sous la forme :          ∂u ∂t = cξ.uξξ + cη.uηη cξ = g(|∇u|) cη = g(|∇u|) + (|∇u|)g 0 (|∇u|). La fonction φ(s) = s.g(s) est appelée fonction flux, elle gère la diffusion selon la direction du gradient. La figure 1.3 représente les fonctions de diffusion et de flux associées aux deux fonctions de diffusion proposées par Pérona et Malik. 14
  • 15. 1.3. MODÈLES UTILISÉS EN TRAITEMENT D’IMAGES Fig. 1.3 – Représentation des fonctions de diffusion et de flux associées aux deux fonc- tions de diffusion proposées par Pérona et Malik Le comportement de l’équation de diffusion est maintenant plus facile à interpré- ter. Dans la direction orthogonale au gradient, la diffusion anisotrope induit un lissage modulé par la norme du vecteur gradient. Le chapitre suivant représente la résolution numérique par différences finies des modèles mentionnés dans ce chapitre. 15
  • 16. Chapitre 2 Résolution numérique En analyse numérique, la méthode des différences finies est une technique courante de recherche de solutions approchées d’équations aux dérivées par- tielles qui consiste à résoudre un système de relations (schéma numérique) liant les valeurs des fonctions inconnues en certains points suffisamment proches les uns des autres, en se basant sur l’approximation des dérivées présentées dans les EDPs. Le problème posé sur le domaine continu (espace - temps) n’est pas résoluble tel quel par un ordinateur, qui ne peut traiter qu’un nombre fini d’inconnues. Pour se ramener à un problème en dimension finie, on discrétise l’espace et/ou le temps. Si le problème original est linéaire on obtient un système linéaire. Si le problème original est non linéaire on aura un système non linéaire. 2.1 Approximation des dérivées 2.1.1 Approximation de la dérivée première En un point x et pour une valeur h du pas de discrétisation tels que u soit trois fois dérivable sur l’intervalle [x − h, x + h] la formule de Taylor-Young conduit aux deux relations : u(x + h) = u(x) + 3 X n=1 hn n! u(n) (x) + h3 ε1(x, h), 16
  • 17. 2.1. APPROXIMATION DES DÉRIVÉES u(x − h) = u(x) + 3 X n=1 (−h)n n! u(n) (x) + h3 ε2(x, h), où les deux fonctions εi(x, h) convergent vers 0 avec h. Par conséquent, δ+u(x) = u(x + h) − u(x) h = u 0 (x) + h 2 u 00 (x) + h2 3! u(3) (x) + h2 ε1(x, h), δ−u(x) = u(x − h) − u(x) h = −u 0 (x) + h 2 u 00 (x) − h2 3! u(3) (x) + h2 ε2(x, h). Ainsi, δ+u(x) et δ−u(x) représentent des approximations d’ordre 1 de u 0 (x). En soustrayant les développements précédents, ce qui revient à faire la moyenne de deux différences finies antérieures et postérieure à u(x), on obtient : δ0u(x) = u(x + h) − u(x − h) 2h = u 0 (x) + h2 6 u3 (x) + h2 ε3(x, h). C’est une approximation d’ordre 2 de u0 (x). 2.1.2 Approximation de la dérivée seconde En un point x et pour une valeur du pas de discrétisation tels que soit quatre fois dérivable sur l’intervalle [x − h, x + h], la formule de Taylor-Young conduit à la relation : u(x + h) = u(x) + 4 X n=1 hn n! u(n) (x) + h4 ε1(x, h) u(x − h) = u(x) + 4 X n=1 (−1)n hn n! u(n) (x) + h4 ε2(x, h), où les fonctions εi(x, h) convergent vers 0 avec h tend vers 0. Par conséquent, on peut approcher u 00 (x) par le terme : u(x + h) − 2u(x) + u(x − h) h2 . 17
  • 18. 2.2. DISCRÉTISATION PAR DIFFÉRENCES FINIES 2.2 Discrétisation par différences finies On note u l’image considérée et ui,j sa valeur au pixel (i, j). Le pas d’espace h est pris égal à 1. Pour approcher les solutions des modèles du chapitre 1 on aura besoin des approximations en espace des dérivées suivantes, voir [6] : Différences finies centrées : ∂ui,j ∂x ' ui+1,j − ui−1,j 2 . ∂ui,j ∂y ' ui,j+1 − ui,j−1 2 . Différences finies décentrées à droite : ∂ui,j ∂x ' ui+1,j − ui,j. ∂ui,j ∂y ' ui,j+1 − ui,j. Différences finies décentrées à gauche : ∂ui,j ∂x ' ui,j − ui−1,j. ∂ui,j ∂y = ui,j − ui,j−1. Pour les dérivées secondes : ∂2 u ∂2x ' ui+1,j − 2ui,j + ui−1,j. ∂2 u ∂2y ' ui,j+1 − 2ui,j + ui,j−1. 2.2.1 Équation de la chaleur Le schéma d’Euler explicite consiste à utiliser un schéma aux différences finies décentré à droite en temps. Il s’écrit : 18
  • 19. 2.2. DISCRÉTISATION PAR DIFFÉRENCES FINIES uk+1 i,j − uk i,j ∆t − ∆uk i,j = 0, k = 0, 1, ..., M, avec ∆t = T M . Alors le schéma s’écrit : uk+1 i,j − uk i,j ∆t − (uk i+1,j + uk i−1,j + uk i,j+1 + uk i,j−1 − 4uk i,j) = 0, ou encore uk+1 i,j = (1 − 4∆t)uk i,j + ∆t(uk i+1,j + uk i−1,j + uk i,j+1 + uk i,j−1). En écrivant u sous la forme d’un vecteur U, l’écriture matricielle de ce schéma est la suivante : Uk+1 = AUk , k = 0, 1, ..., M, où A est une matrice à 5 diagonales et elle ne dépend que de ∆t. Ce schéma néces- site seulement un produit matrice-vecteur en chaque pas de temps. Cependant il est seulement stable sous la condition ∆t ∆x2 + ∆t ∆y2 ≤ 1 2 , voir [3]. Le schéma d’Euler implicite consiste à utiliser un schéma aux différences finies décentré à gauche en temps uk+1 i,j − uk i,j ∆t − ∆uk+1 i,j = 0, k = 0, 1, ..., M. Le schéma s’écrit : uk+1 i,j − uk i,j ∆t − (uk+1 i+1,j + uk+1 i−1,j + uk+1 i,j+1 + uk+1 i,j−1 − 4uk+1 i,j ) = 0. ou encore uk i,j = (1 − 4∆t)uk+1 i,j − ∆t(uk+1 i+1,j + uk+1 i−1,j + uk+1 i,j+1 + uk+1 i,j−1). L’écriture matricielle est la suivante : AUk+1 = Uk , k = 0, 1, .., M. L’avantage de ce schéma est qu’il est inconditionnellement stable, voir [3]. Mais il demande la résolution d’un système linéaire en chaque pas du temps. On peut 19
  • 20. 2.2. DISCRÉTISATION PAR DIFFÉRENCES FINIES réduire efficacement la complexité de cette résolution en décomposant la discré- tisation suivant x et y séparément, on obtient ainsi deux systèmes tridiagonales qu’on peut résoudre facilement par l’algorithme de Thomas, voir l’annexe. On effectue d’abord une discrétisation suivant x : u k+1 2 i,j − uk i,j ∆t = u k+1 2 i+1,j + u k+1 2 i−1,j − 2u k+1 2 i,j , puis une discrétisation suivant y : uk+1 i,j − u k+1 2 i,j ∆t = uk+1 i,j+1 + uk+1 i,j−1 − 2uk+1 i,j . Ce second schéma implicite s’écrit sous la forme : i. Uk+1 2 = A−1 x Uk ii. Uk+1 = A−1 y Uk+1 2 , pour k = 0, 1, ..., M. Par exemple, dans le cas d’une matrice de 4 lignes et 5 co- lonnes, la matrice Ax a la forme suivante Ax =          A A 0 A 0 A A          où A =      β + α α 0 0 α β α 0 0 α β α 0 0 α β + α      , α = −∆t et β = 1 + 2∆t. On définit de la même façon la matrice Ay. 2.2.2 Équation de Pérona-Malik Le schéma explicite aux différences finies pour approcher la solution de l’équa- tion de Pérona-Malik peut s’écrire 20
  • 21. 2.2. DISCRÉTISATION PAR DIFFÉRENCES FINIES un+1 i,j − un i,j dt = div g(|∇un ij|) ∂un ij ∂x ∂un ij ∂y = divg(|∇un ij|) ∂un ij ∂x g(|∇un ij|) ∂un ij ∂y = ∂ ∂x g(|∇un ij|) ∂un ij ∂x | {z } ϕn(x,y)i,j + ∂ ∂y g(|∇un ij|) ∂un ij ∂y | {z } ψn(x,y)i,j ∂ ∂x ϕn (x, y)i,j = ϕn i+1 2 ,j − ϕn i−1 2 ,j h = gn i+1 2 ,j (un i+1,j − un i,j) − gn i−1 2 ,j (un i,j − un i−1,j) ∂ ∂y ϕn (x, y)i,j = ϕn i,j+1 2 − ϕn i,j−1 2 h = gn i,j+1 2 (un i,j+1 − un i,j) − gn i,j−1 2 (un i,j − un i,j−1) un+1 i,j = un i,j+dt(gn i+1 2 ,j (un i+1,j−un i,j)+gn i−1 2 ,j (un i,j−un i−1,j)+gn i,j+1 2 (un i,j+1−un i,j)+gn i,j−1 2 (un i,j−un i,j−1)) un+1 i,j = un i,j + dt[gn i+1 2 ,j dEU + gn i−1 2 ,j dWU + gn i,j+1 2 dSU + gn i,j−1 2 dNU], avec : dEU = un i+1,j − un i,j, dWU = un i,j − un i−1,j, dSU = un i,j+1 − un i,j, dNU = un i,j − un i,j−1, et on prend : gn i+1 2 ,j = g(|dEU|), 21
  • 22. 2.2. DISCRÉTISATION PAR DIFFÉRENCES FINIES gn i−1 2 ,j = g(|dWU|), gn i,j+1 2 = g(|dSU|), gn i,j−1 2 = g(|dNU|). Le schéma explicite pour approcher la solution du modèle de Pérona-Malik est facile à implémenter. Cependant, il est conditionnellement stable. On peut utiliser un schéma implicite qui est toujours stable, mais il demande la résolu- tion d’un système non-linéaire à chaque pas de temps. Une autre alternative est d’utiliser schéma semi-implicite. 22
  • 23. Chapitre 3 Résultats numériques Dans ce chapitre, on applique les modèles du chapitre 1 pour le débruitage de quelques images. 3.1 Dégradation d’images Dans la pratique, une image peut être dégradée par plusieurs types et formes de bruit, la source principale des bruits dans les images numériques survenues pendant l’acquisition (numérisation) et la transmission. Ainsi, il est important de connaître la nature du bruit contaminant l’image. En fait, le type de bruit le plus connu et le plus difficile à réduire, est le bruit blanc gaussien, il apparaît dans l’image comme une variation aléatoire autour des valeurs d’intensité. Il est mo- délisé par la densité de probabilité gaussienne (unidimensionnelle) de moyenne nulle et de variance σ2 suivante : f(x) = 1 √ 2πσ e − x2 2σ2 . (3.1) 3.2 Critère d’analyse et d’évaluation pour le débrui- tage d’images La pertinence des méthodes de débruitage dépend de deux critères, subjectif et objectif permettant d’évaluer l’efficacité de ces méthodes. Le critère subjectif représente l’aspect visuel, il va permettre à l’utilisateur d’identifier le contenu des images, la netteté de celles-ci, la présence d’artefacts et la qualité des contours. Le 23
  • 24. 3.3. MÉTHODES DE DÉBRUITAGE critère objectif se base sur deux mesures : l’erreur quadratique moyenne (MSE) et le rapport signal sur bruit (PSNR). Bien qu’ils ne correspondent pas toujours avec la perception humaine, ils sont souvent considérés comme des bonnes mesures de la fidélité d’une évaluation d’image. Ces critères sont définis comme suit : - Erreur quadratique moyenne (MSE) : Mean Squared Error MSE = 1 MN M X i=1 N X j=1 (X(i, j) − e X(i, j))2 , (3.2) avec : - X : Image originale, - e X : Image débruitée, - M : Nombre de lignes de l’image, - N : Nombre de colonnes de l’image, - (i, j) : positionnement des pixels. - Rapport signal sur bruit (PSNR) : Peak Signal to Noise Ratio PSNR = 10 log10 2552 MES , (3.3) où 255 est la valeur maximale d’un pixel pour une image codée par 8 bits/pixel en niveaux de gris. 3.3 Méthodes de débruitage L’implémentation des codes a été faite sur MATLAB. 3.3.1 Débruitage par l’équation de la chaleur La figure 3.1 est un exemple de débruitage de l’image Cameraman par l’EDP de la chaleur (schémas explicite et implicite) avec le nombre d’itérations est fixé à 50 et le pas de discrétisation en temps est variable. Pour les deux schémas, si le pas de discrétisation en temps est faible, les zones homogènes sont bien res- taurées et les contours sont bien conservés, mais par contre si le pas de discré- tisation en temps est important, les bords sont érodés, toutefois on constate une légère augmentation du PSNR du schéma implicite, cela s’explique par le faite 24
  • 25. 3.3. MÉTHODES DE DÉBRUITAGE Image originale Image bruité Explicite (dt=0.01) Implicite (dt=0.01) PSNR= 26.60 dB PSNR= 26,67 dB Explicite (dt=0.2) Implicite (dt=0.2) PSNR= 19.82 dB PSNR= 19.87 dB Fig. 3.1 – Images débruitées par l’équation de la chaleur (schèmas implicite et explicite) avec un pas de discrétisation en temps variable et le nombre d’itérations est fixé à 50 que la méthode implicite est inconditionnellement stable mais il reste très coû- teux à cause de la taille du système linéaire à résoudre à chaque pas de temps. Toutefois les calculs sont très réduits par application de l’algorithme de Thomas. La table 3.1 présente une comparaison en temps d’exécution des deux méthodes pour résoudre l’EDP par les deux schémas implicites (la méthode par inversion classique de la matrice du schéma implicite et algorithme de Thomas) pour dif- férentes valeurs de dt. La figure 3.2 montre que si en augmente le nombre d’ité- ration en gardant le pas temporel dt fixe, la clarté diminue en éliminant le bruit. 25
  • 26. 3.3. MÉTHODES DE DÉBRUITAGE Temps de calcul en seconde dt=0.01 dt=0.1 dt=0.5 dt=1 Algorithme d’inversion de la matrice 84.01 37.24 7.24 5.83 Algorithme de Thomas 0.551 0.544 0.541 0.540 Tab. 3.1 – Comparaison du temps de calcul pour les deux schémas implicites avec un nombre d’itérations égal à 10. Nous pouvons donc constater que bien qu’étant très efficace sur l’élimination du bruit, la propagation par l’équation de la chaleur ne permet pas une conservation des bords de l’image qui s’en retrouve donc altérée. les contours sont endomma- gés par la diffusion des pixels voisins. Le problème qui se pose est donc comment conserver les contours d’une image tout en éliminant le bruit sur une image ? La solution de ce problème consiste à utiliser un modèle de type Pérona-Malik. Image filtrées Image filtrées Image filtrées après 10 itérations après 50 itérations après 150 itérations PSNR= 24,16 dB PSNR= 20,93 dB PSNR= 19,24 dB Fig. 3.2 – Image Cameraman (256x256) débruitée par l’équation de la chaleur (Schéma explicite) : Le pas de discrétisation en temps est fixé à 0.1 avec nombre d’itérations va- riable 3.3.2 Débruitage par le modèle de Pérona-Malik La figure 3.3 présente une comparaison subjective et objective, entre la diffu- sion isotrope (image gauche) et la diffusion anisotrope (image droite). La diffusion anisotrope présente un lissage conditionnel, dont le comportement est fonction de la norme du gradient de l’image, grâce à la fonction g définie dans le chapitre 1. Le principe est de diffuser fortement dans les zones à faibles gra- dients (zones homogènes), et faiblement dans les zones à forts gradients (contours). Le seuil λ de la fonction g permet de distinguer les zones à faible gradient de celles à fort gradient. Nous pouvons classifier les résultats obtenus par l’algorithme de Pérona-Malik dans la figure 3.4 prenant en compte la variation de λ et celle du 26
  • 27. 3.4. BOÎTE À OUTILS IMAGERIE DE MATLAB Par l’équation de la chaleur Par Perona-Malik PSNR = 20,93 dB PSNR = 33.30 dB Fig. 3.3 – Comparaison entre le filtrage par les équations de la chaleur et Pérona-Malik avec un pas de discrétisation égale 0.001 et le nombre d’itérations est fixé à 50. nombre d’itérations. Nous constatons que pour T=200 l’image s’en retrouve gran- dement altérée, en augmentant λ. Le débruitage d’une image fortement bruitée par Pérona-Malik présente un risque que le bruit soit interprétée comme un contour, l’augmentation du paramètre λ altère l’image, voir figure 3.5. La figure 3.6 montre que pour dt = 0.1, le débruitage par Pérona-Malik donne de meilleurs résultats pour un nombre d’itérations égal à 20 avec λ est fixé à 2 (figure gauche), et donne de meilleurs résultats pour une valeur de λ égale 2.5 avec le nombre d’itération est fixé à 50 (figure droite). 3.4 Boîte à outils Imagerie de Matlab La boîte à outils (Image Processing Toolbox) propose un ensemble complet d’algorithmes et de fonctions destinés au traitement d’images. Parmi les princi- pales fonctionnalités de cette boîte à outils, on cite : 1. Analyse des images (segmentation, morphologie, statistiques, mesure, etc.) 2. Amélioration d’images, filtrage et restauration 3. Transformations géométriques et méthodes de recalage d’images basées sur l’intensité 4. Applications de visualisation (visualisation d’images et de vidéos). 27
  • 28. 3.4. BOÎTE À OUTILS IMAGERIE DE MATLAB λ=20 et T=20 λ=50 et T=20 λ=100 et T=20 PSNR = 33.01 dB PSNR = 32,19 dB PSNR = 31,10 dB λ=20 et T=100 λ=50 et T=100 λ=100 et T=100 PSNR = 28,53 dB PSNR = 25,65 dB PSNR = 24,71 dB λ=20 et T=200 λ=50 et T=200 λ=100 et T=200 PSNR = 25,39 dB PSNR = 23,24 dB PSNR = 22,81 dB Fig. 3.4 – Résultats obtenus par l’algorithme de Pérona-Malik prenant en compte la va- riation de λ et celle du nombre d’itérations T. La boîte à outils comprend des routines de filtrage spécialisées et une fonction de filtrage multidimensionnel généralisée qui gère les types d’image en entiers, offre de nombreuses options de gestion de l’effet de bords et effectue des convolutions et corrélations. En utilisant des filtres et des fonctions prédéfinis, on peut : 1. Filtrer avec des opérateurs morphologiques. 2. Déflouter et rendre plus nette l’image. 3. Supprimer le bruit avec un filtrage linéaire, médian ou adaptatif. 28
  • 29. 3.4. BOÎTE À OUTILS IMAGERIE DE MATLAB Image fortement bruitée λ=20 λ=100 Fig. 3.5 – Images débruitées par Pérona-Malik avec nombre d’itérations fixé à 400. Fig. 3.6 – Résultats en terme de PSNR avec dt est fixé à 0.1. PSNR en fonction du nombre d’itérations (figure gauche) et PSNR en fonction de λ (figure droite). 4. Effectuer une égalisation d’histogramme. 5. Remapper la plage dynamique. 6. Ajuster le contraste. 3.4.1 Filtrages d’images Pour améliorer la qualité visuelle de l’image, on doit éliminer les effets des bruits en lui faisant subir un filtrage. Filtre Gaussien : Le filtre gaussien est un filtre isotrope caractérisé par un écart type σ. Le code ci-dessous présente un exemple de filtrage d’une image à l’aide du noyau gaussien. I=imread(’cameraman.tif’) ; figure(1) ; imagesc(I) ; colormap gray ; title(’Image originale’) ; 29
  • 30. 3.4. BOÎTE À OUTILS IMAGERIE DE MATLAB [m,n] = size(I) ; J = imnoise(I, ’gaussian’, 0, 0.001) ; % bruitage d’image J = im2double(J) ; figure(2) ; imagesc(J) ; colormap gray ; title(’Image bruitee’) ; F=fspecial(’gaussian’) ; % créer des filtres prédéfinis J=imfilter(double(J),F) ; % opération par fenêtre glissante figure(3) ; imagesc(J) ; colormap gray ;title(’Image filtrer’) ; La figure 3.7 montre les résultats obtenus. Image originale Image bruitée Image débruitée - PSNR= 23.32 dB PSNR= 26.30 dB Fig. 3.7 – Application du filtre Gaussian Filtre Median : C’est un filtre non-linéaire qui ne peut pas s’implémenter comme une convolution. On remplace la valeur d’un pixel par la valeur médiane dans son voisinage. Afin de réaliser ce filtre sous Matlab on applique le code suivant : I=imread(’cameraman.tif’) ; figure(1) ; imagesc(I) ; colormap gray ; title(’Image originale’) ; [m,n] = size(I) ; J = imnoise(I, ’gaussian’, 0, 0.001) ; J = im2double(J) ; figure(2) ; imagesc(J) ; colormap gray ; title(’Image bruitee’) ; s= strel(’disk’,1) ; k=imopen(J,s) ; n=imclose(k,s) ; f=imclose(J,s) ; p=imopen(n,s) ; 30
  • 31. 3.4. BOÎTE À OUTILS IMAGERIE DE MATLAB figure(3) ; imagesc(p) ; colormap gray ; title(’Image débruitée’) ; La figure 3.8 montre les résultats obtenus : Image originale Image bruitée Image débruitée - SNR= 302.18 SNR= 295.07 Fig. 3.8 – Application du filtre de Median 3.4.2 Détection de contours Le but de la détection de contours est de repérer les points d’une image nu- mérique qui correspondent à un changement brutal de l’intensité lumineuse. La détection des contours d’une image réduit de manière significative la quantité de données et élimine les informations qu’on peut juger moins pertinentes, tout en préservant les propriétés structurelles importantes de l’image. Il existe un grand nombre de méthodes de détection de l’image. Dans ce qui suit quelques méthodes de la boîte à outils imagerie seront exposées. Filtre de Sobel : Le principe de ce filtre est que l’opérateur calcule le gradient de l’intensité de chaque pixel. Ceci indique la direction de la plus forte variation du clair au sombre, ainsi que le taux de changement dans cette direction. On connait alors les points de changement soudain de luminosité, correspondant probable- ment à des bords, ainsi que l’orientation de ces bords. Une application de ce filtre est implémenté dans le code suivant : I=imread(’cameraman.tif’) ; figure(1) ; imagesc(I) ; colormap gray ; title(’Image originale’) ; [m,n] = size(I) ; J = imnoise(I, ’gaussian’, 0, 0.001) ; 31
  • 32. 3.4. BOÎTE À OUTILS IMAGERIE DE MATLAB J = im2double(J) ; figure(2) ; imagesc(J) ; colormap gray ; title(’Image bruitée’) ; F=fspecial(’sobel’) ; J=imfilter(J,F) ; figure(3) ; imagesc(J) ; colormap gray ;title(’Image débruitée’) ; La figure 3.9 montre le résultat obtenu. Image originale Image bruitée Image débruitée - PSNR= 23.3 dB PSNR= 3.14 dB Fig. 3.9 – Application du filtre de Sobel filtre de Prewitt : En terme simple le filtre de Prewitt, calcule le gradient d’in- tensité 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 escarpé (pente raide) de luminosité de l’image et donc étalement des 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éren- tiel discret calculant une approximation du gradient d’intensité lumineuse d’une image. Afin de réaliser ce filtre sous Matlab on applique le code suivant : I=imread(’cameraman.tif’) ; figure(1) ; imagesc(I) ; colormap gray ; title(’Image originale’) ; [m,n] = size(I) ; J = imnoise(I, ’gaussian’, 0, 0.001) ; J = im2double(J) ; figure(2) ; imagesc(J) ; colormap gray ; title(’Image bruitee’) ; 32
  • 33. 3.4. BOÎTE À OUTILS IMAGERIE DE MATLAB F=fspecial(’prewitt’) ; J=imfilter(J,F) ; figure(3) ; imagesc(J) ; colormap gray ; title(’Image debruitee’) ; La figure 3.10 montre le résultat obtenu : Image originale Image bruitée Image débruitée - PSNR= 23.28 dB PSNR= 3.14 dB Fig. 3.10 – Application du filtre de Prewitt 33
  • 34. Conclusion Le problème étudié dans ce projet est celui du débruitage d’images numé- riques corrompues par un bruit blanc gaussien. Les méthodes utilisées pour ré- cupérer une meilleure image reposent sur des modèles basés sur des EDPs. Ces équations ont été étudiées dans le cadre de débruitage d’images formulées à par- tir du processus de diffusion isotrope et anisotrope. Les résultats obtenus par lis- sage isotrope, sont peu satisfaisants. Il opère en effet de manière identique dans toutes les directions, et ne possède aucune direction privilégiée, atténuant ainsi bruit et contours sans distinction. Un modèle de type Pérona-Malik peut remédier à cet inconvénient. En effet, il permet d’introduire la notion de diffusion aniso- trope dont le principe est de diffuser fortement dans les zones à faibles gradients (zones homogènes) et faiblement dans les zones à forts gradients (contours). La résolution de ces modèles peut être effectuée efficacement en utilisant la mé- thode des différences finies. Pour l’équation de la chaleur, on a comparé les deux schémas explicite et implicite. Ce dernier est connu par sa stabilité, mais il de- mande la résolution d’un système linéaire en chaque pas de temps. On peut réduire le coût de ce schéma en transformant le problème en deux systèmes li- néaires avec des matrices tridiagonales qu’on peut résoudre efficacement par l’al- gorithme de Thomas. Pour le modèle de Pérona-Malik, on a implémenté seule- ment le schéma explicite en prenant des valeurs de ∆t suffisamment petites pour assurer la stabilité du schéma. Il serait intéressant d’implémenter le schéma im- plicite qui est toujours stable et qui donne lieu à un problème non linéaire en chaque pas de temps qu’on peut résoudre par une méthode de type Newton. Enfin, on a présenté la boîte à outils Imagerie de Matlab et on a utilisé quelques fonctions prédéfinies pour le débruitage et la détection des contours des images. 34
  • 35. Annexe (Algorithme de Thomas [6] ) Soit à résoudre un système linéaire Ax = b avec A a une forme tridiagonale A =       a1 c1 0 e2 a2 ... ... cn−1 0 en an       . Si la factorisation LU de A existe, les matrices L et U sont bidiagonales et ont la forme L =       1 0 β2 1 ... ... 0 βn 1       , U =       α1 c1 0 α2 ... ... cn−1 0 αn       . Les coefficients αi et βi sont déterminés par les relations de récurrence α1 = a1, βi = ei αi−1 , αi = ai − βici−1, i = 2, . . . , n. Pour résoudre le système linéaire Ax = b, il est facile maintenant de résoudre les deux systèmes bidiagonaux Ly = b et Ux = y, pour obtenir les formules suivantes (Ly = b) : y1 = b1, yi = bi − βiyi−1, i = 2, . . . , n, (Ux = y) : xn = yn αn , xi = yi − cixi+1 αi , i = n − 1, . . . , 1. Cette technique est connue sous le nom d’algorithme de Thomas. Son coût est de l’ordre de n opérations. 35
  • 36. Bibliographie [1] J.-F. Aujol, Traitement d’images par approches variationnelles et équations aux dérivées partielles. Semestre d’enseignement UNESCO sur le traitement des images numériques, Avril 2005 à Tunis. [2] M. Bergounioux, Méthodes mathématiques pour le Traitement d’image, Cours de Master, Mai 2009. [3] R. Herbin, Analyse numérique des équations aux dérivées partielles, Univer- sité Aix Marseille 1, Cours de Master, Décembre 2012. [4] J.J. Koenderink, The structure of images, Biological Cybernetics, Vol. 50, pp 363-370, 1984. [5] P. Perona, J. Malik, Scale space and edge detection using anisotropic diffusion, IEEE transactions on Pattern Analysis and Machine Intelligence, 12, pp 629- 639, 1990. [6] A. Quarteronni, F. Saleri et P. Gervasio, Calcul scientifique, Springer, 2010. [7] S. Yesli, Filtrage par Diffusion Anisotropique Appliquée aux images IRM, Mé- moire de magister, Faculté de génie électrique et d’informatique, Université Mouloud Mammeri. 36
  • 37. Résumé Ce projet traite le débruitage d’images numériques corrompues en utilisant deux modèles basés sur des équations aux dérivées partielles. Le premier modèle étudié est l’équation de la chaleur, il repose sur un processus de diffusion isotrope pour un lissage de l’image traitée. Ce modèle présente un inconvénient majeur car il ne fait pas distinction entre le bruit et les contours de l’image. Pour remé- dier à cet inconvénient, la notion de diffusion anisotrope a été introduite, dont le principe est de diffuser fortement dans les zones à faibles gradients (zones ho- mogènes), et faiblement dans les zones à forts gradients (contours), c’est le cas du modèle de Pérona-Malik. La résolution de ces modèles est effectuée en utilisant la méthode des différences finies. Les schémas utilisés sont implémentés sur Matlab et une comparaison de ces schémas est faite. Enfin, un aperçu sur l’utilisation de la boîte à outils Imagerie pour le traitement d’images est présenté. 37