Coursimage09 PDF
Coursimage09 PDF
Coursimage09 PDF
d’image
2 janvier 2009
Ce cours est une introduction à la théorie mathématique de traitement de l’image . Il est donc
incomplet car les méthodes dans ce domaine sont nombreuses et variées. On se polarisera sur
les méthodes variationnelles.
Introduction
3
4 CHAPITRE 1. INTRODUCTION
Echantillonnage et quantification
1.1. QU’EST-CE QU’UNE IMAGE NUMÉRIQUE ? 5
L’échantillonnage est une étape fondamentale qui doit tenir compte du contenu informa-
tionnel pertinent de l’image à analyser. Sur l’exemple ci- dessous, en 1d, le signal échantillonné
« ressemble » à une sinusoı̈de de fréquence 8 fois plus faible :
6 CHAPITRE 1. INTRODUCTION
Ce phénomène appelé aliasing est encore pire en 2D, car il affecte la fréquence et la direction
des structures périodiques. Imaginons par exemple qu’on souhaite échantillonner l’image cor-
respondant aux bandes noires ci-dessous :
Avec un échantillonnage adapté, l’image numérique fait apparaı̂tre des structures conformes à
l’information présente dans l’image :
Mais en considérant seulement 1 échantillon sur 2, une structure différente apparaı̂t, dont l’ana-
lyse (ici des bandes verticales, plus épaisses) ne sera pas conforme à la réalité de l’objet :
La quantification peut également faire apparaı̂tre des distortions dans les images. Comme pour
l’échantillonnage, il existe des règles pour déterminer la bonne quantification (le bon nombre
de bits) pour coder les images numériques. L’une dépend du capteur, et de sa capacité effective
à observer des signaux de valeurs différentes : le rapport signal sur bruit.
Le rapport signal sur bruit est défini à partir du rapport entre l’amplitude des niveaux de
gris mesurables par le capteur nmax − nmin et le niveau du bruit, en gros l’écart-type σn de la
perturbation aléatoire qui affecte les niveaux de gris. En prenant le logarithme, on a le nombre
de bits utile au capteur pour coder les images.
Outre les capacités du capteur, le nombre de bits réellement nécessaires pour coder une
image varie d’une image à l’autre, en fonction de leur contenu informationnel. Ce nombre
dépend de l’entropie, définie à partir de la distribution des niveaux de gris de l’image (statis-
tique). !
E=− pi log2 (pi ) ,
i≤N
où N est le nombre de niveaux de gris présents, pi est la proportion (0 < pi < 1) de points de
l’image ayant pour niveau de gris i. Cette grandeur représente le nombre moyen de bits par
pixel nécessaires pour coder toute l’information présente. Elle est utilisée dans les techniques
de compression sans perte pour adapter le volume de donnée des images à leur contenu infor-
mationnel.
8 CHAPITRE 1. INTRODUCTION
Profil - Histogramme
Il est possible de tracer un trait sur le flanc du zèbre de l’image en niveaux de gris ci-dessous
et obtenir le profil correspondant, c’est à dire le niveau de gris de chaque point ou pixel traversé
par la ligne :
L’histogramme de l’image en niveau de gris ci-dessous permet d’établir une stricte corrélation
entre les données numériques codant la nuance de gris et la position des pixels de l’image.
1.2.2 Applications
– Robotique - Industrie
– Assemblage, reconnaissance de pièces
– Contrôle de qualité
– Véhicule autonome
– etc ...
– Télédétection
– Météo
– Cartographie
– Analyse des ressources terrestres
– Astronomie
– Restauration
– etc...
– Applications militaires
– Guidage de missile
– Reconnaissance (aérienne, sous-marine, etc ...)
– etc ...
– Imagerie médicale
– Tomographie
– Aide au diagnostic
– Comptage (nombre de cellules)
– Suivi de formes anatomiques
1.2. QU’EST-CE QUE LE TRAITEMENT D’IMAGE ? 13
– Restauration
– etc...
– Sécurité
– Reconnaissance (d’empreintes, visages, signatures)
– Détection de mouvement
– etc...
14 CHAPITRE 1. INTRODUCTION
Chapitre 2
On s’intéresse d’abord aux traitements ponctuels qui consistent à faire subir à chaque pixel
une correction ne dépendant que de sa valeur. On trouve dans cette catégorie, les fonctions de
recadrage ou d’égalisation de dynamique, de binarisation ...
Sauf mention particulière, nous supposerons dans ce qui suit des images comportant N 2
pixels codés sur 256 niveaux de gris différents.
Il s’agit d’une transformation du type f " = t(f ) qui permet de modifier la dynamique des
niveaux de gris dans le but d’améliorer l’aspect visuel de l’image. À un niveau de gris f de
l’image originale correspond le niveau t(f ) dans l’image transformée. On fait subir à chaque
pixel un traitement ne dépendant que de sa valeur. La transformation t(f ) peut être réalisée
en temps réel sur l’image en cours d’acquisition à l’aide d’une table de transcodage dans la-
quelle les valeurs de la transformation sont mémorisées. Un adressage de cette mémoire par
une donnée f fournit directement la valeur t(f ).
15
16 CHAPITRE 2. TRAITEMENT PONCTUEL DES IMAGES NUMÉRIQUES
Dilatation de la dynamique des zones sombres Dilatation de la dynamique des zones claires
Fonction de rehaussement de contraste.
2.1. CORRECTION PONCTUELLE D’UNE IMAGE -RECADRAGE DE DYNAMIQUE 17
b
f pour 0 ≤ f ≤ a
a
t(f ) =
(255 − b) f + 255(b − a)
pour a ≤ f ≤ 255
255 − a
Original Histogramme
L’histogramme d’une image est rarement plat ce qui traduit une entropie non maximale. La
transformation d’égalisation est construite de telle façon que l’histogramme de l’image trans-
formée soit le plus plat possible. Cette technique améliore le contraste et permet d’augmenter
artificiellement la clarté d’une image grâce à une meilleure répartition des intensités relatives.
Fonction d’aplatissement continue
Considérons l’histogramme continu h(f ) donné ci-dessous. En notant f " = t(f ), l’histo-
gramme égalisé h(f " ) doit s’approcher de la forme idéale décrite ci-dessous.
Deux surfaces élémentaires en correspondance dans les histogrammes initiaux et égalisés,
présentent le même nombre de points ce qui permet d’écrire :
&
" 256 f
f = t(f ) = 2 h(s) ds .
N 0
Original Histogramme
2.1.3 Binarisation
Le but de la binarisation d’une image est d’affecter un niveau uniforme au pixels pertinents
et d’éliminer les autres.
Seuillage
Le seuillage consiste à affecter le niveau 255 aux pixels dont la valeur est supérieure à un
seuil S et 0 le niveau aux autres. Le graphe de la transformation correspondante est le suivant
Fonction « seuillage »
20 CHAPITRE 2. TRAITEMENT PONCTUEL DES IMAGES NUMÉRIQUES
Seuillage à 70
Original Histogramme
2.2. ANAYSE DE LA NETTETÉ D’UNE IMAGE NUMÉRIQUE 21
Critère mathématique
!
Méthode de F = k hk
k>T
Mendelsohn T est un paramètre choisi
et Mayall proche du niveau de gris moyen de l’image
' '
j fij ∆ij
! i
Méthode de F = (k − T ) hk et T = ' '
i j ∆ij
(
k>T )
Mason et Green ∆ij = 2 (fi,j+1 − fi,j−1 )2 + (fi+1,j − fi−1,j )2
+ (fi−1,j−1 − fi+1,j+1 )2 + (fi−1,j+1 − fi+1,j−1 )2
(' ' )2
' ' 2 fij
i j fij i j
Variance des F = −
N2 N4
niveaux de gris
Critère mathématique
!
Norme "1 du gradient1 F = (|fi,j − fi,j−1 | + |fi,j+1 − fi,j |)
i,j
!
Norme "2 du gradient F = (fi+1,j − fi,j )2 + (fi,j+1 − fi,j )2
i,j
Remarques générales
– Les tests des critères de netteté réalisés sur un grand nombre d’images différentes montrent
que leurs performances dépendent du type et du contenu de l’image analysée ;
– En règle générale, l’extremum des critères est peu prononcé lorsque l’image contient peu
de détails
2.3. CORRÉLATION D’IMAGES NUMÉRIQUES 23
– L’algorithme de Brenner est souvent utilisé car il présente généralement une bonne sen-
sibilité et la charge de calculs qu’il nécessite est raisonnable.
f (i, j) − µf g(i, j) − µg
fc (i, j) = et gc (i, j) =
σf σg
1 !
ϕf g (k, l) = fc (i, j)gc (i − k, j − l) . (2.3.1)
N2
i,j
Il est souvent plus pratique de travailler sur des images dont les valeurs sont centrées et
réduites. Ceci permet d’une part d’éliminer de ϕf g (k, l) le carré des moyennes des images,
d’autre part de normaliser les fonctions de corrélation.
Pour éviter les effets de bord qui introduisent un biais dans le calcul de ϕf g (k, l) il convient :
– soit de s’assurer que la double sommation est réalisée sur des valeurs dont les coor-
données ne sortentjainais de l’image. Cela revient à définir un cadre d’intégration dont
le format, inférieur à celui de l’image, est choisi en fonction du domaine de calcul de
ϕf g (k, l) ;
– soit de remplacer dans l’expression (2.3.1) le diviseur N 2 par la valeur variable M qui
dépend de k et l selon la relation : M = (N − |k|)(N − |l|).
Les caractéristiques générales de ces deux images sont données dans le tableau suivant :
Individu F Individu G
Format 256 x 256 256 x 256
Codage en niveaux de gris 0 à 255 0 à 255
Moyenne µ 132,8 127
Écart type σ 33,8 36,4
Les valeurs des deux images sont centrées et réduites. Pour éviter les effets de bords, l’in-
tercorrélation est réalisée entre deux zones carrées de 151 x 151 pixels (voir figure ci-dessous)
200
1 !
ϕf g (k, l) = fc (i, j)gc (i − k, j − l) . (2.3.2)
1512
i,j=50
Ses valeurs ne dépassent pas 0.15 ce qui prouve que les deux empreintes ne sont pas iden-
tiques.
Dans la réalité, les empreintes ne sont pas toutes obtenues dans les mêmes conditions de
positionnement. Il est nécessaire d’ajouter un paramètre de rotation d’image à la fonction d’in-
tercorrélation ce qui peut alourdir considérablement les calculs.
Par définition la texture d’une image est la structure spatiale sur laquelle sont organisés les
pixels. Les relations structurelles peuvent être :
– déterministes : c’est le cas de la répétition quasi périodique d’un motif de base (brique,
carrelage, mailles de tissu ... ) ;
– aléatoires : il n’y a pas de motif de base (sable, mur crépi...)
La fonction d’autocorrélation bidimensionnelle est bien adaptée pour mettre en évidence les
propriétés de la texture d’une image. La figure suivante représente deux exemples de texture.
Un second pixel P2 = (x2 , y2 ) permet de définir une seconde droite D2 du type b = −ax2 +y2
dans le plan ab.L’intersection de D2 avec D1 fournit le couple " a" , b" ) qui sont les paramètres
2.4. TRANSFORMATION DE HOUGH 27
de la droite recherchée ∆ dans le plan image. Ainsi, tous les pixels Pi qui sont alignés sur ∆
possède une droite Di dnas le plan ab qui coupe les autres au point particulier (a" , b" ).
2.4.3 Transformation de Hough pour la détection de droites dans une image binaire
Domaine de variation des paramètres θ et ρ
Il est à noter que si (ρ, θ) sont les paramètres d’une droite (−ρ, θ + π) le sont également. Par
conséquent l’intervalle [0, π[correspond au domaine de variation complet du paramètre θ. Les
coordonnées cartésiennes x et y des pixels d’une image numérique sont généralement positives,
l’origine étant placée à un sommet de l’image. En considérant une image carrée comportant √
N × N pixels, les valeurs de ρ calculées par l’équation (2.4.3) peuvent être majorées par 2N .
Quadrillage du plan θρ
On suspecte dans l’image la présence d’une ou plusieurs structures caractérisées par l’ali-
gnement d’un certain nombre de pixels. Soit les deux intervalles [θmin , θmax ] dans lesquels on
cherche à calculer les paramètres de la représentation normale d’une ou plusieurs droites.
28 CHAPITRE 2. TRAITEMENT PONCTUEL DES IMAGES NUMÉRIQUES
Le plan θρ limité aux intervalles de recherche, est subdivisé en cellules par quantification
des paramètres θ et ρ avec les pas respectifs ∆θ et ∆ρ (indexation par les indices p et q). La
figure ci-dessous donne un exemple de quadrillage du plan θρ. Un tableau A(p, q) dont les
valeurs sont initialement mises à zéro, est associé à ce quadrillage
Procédure de transformation
– Pour chaque pixel non nul Pi (xi , yi ) de l’image, on balaye l’axe des θ de θmin à θmax
suivant la trame du tableau et pour chaque θp on résout l’équation (2.4.3) ;
– le résultat ρ obtenu est arrondi à la valeur ρq du tableau la plus proche ;
– si à la valeur θp correspond la solution ρq la valeur A(p, q) est incrémentée d’une unité.
À la fin de cette procédure, A(p, q) = M signifie que M points de l’image sont alignés sur
la droite de paramètres approximatifs (θp , ρq ). Après transformation complète, le tableau peut
être représenté sous la forme d’une image en niveaux de gris (exemple plus loin) ou celle d’un
graphique 3D. La décision sur la détection de droites peut être prise après recherche des coor-
données des valeurs significatives du tableau.
La charge de calcul nécessaire pour réaliser la transformation de Hough est importante. Elle
dépend du nombre de paramètres recherchés :
- recherche de droites : 2 paramètres ;
- recherche de cercles : 3 paramètres.
Exemple pour la recherche de droite : pour N pixels non nuls de l’image binaire et K sub-
divisions de l’axe θ. il y a N K déterminations de l’équation (2.4.3). Une réduction du temps
de calcul peut être obtenue par l’utilisation de tables préenregistrées des conversions sin θp et
cos θp
Exemple
Nous considérons dans cet exemple une image binaire comportant 6 x 6 pixels dont les
valeurs sont données dans le tableau suivant
2.4. TRANSFORMATION DE HOUGH 29
Deux droites ∆1 et ∆2 comportant chacune 6 pixels alignés apparaissent clans cette image.
La procédure de calcul décrite au paragraphe précédent est utilisée avec les paramètres sui-
vants : θp varie de 0 à 180o par pas de 1o .
,
Plus généralement
, si on considère une image de taille N 1 ×N 2 , ρmin = − (N1 − 1)2 + (N2 − 1)2
et ρmax = (N1 − 1) + (N2 − 1) . Si on discrétise l’espace de Hough avec une résolution de
2 2
hθ (par exemple 1o ) pour θ et une résolution de hρ pour ρ le tableau de référence est donné par
Le même type de programme appliqué à l’image binaire (64 × 64) donne le résultat ci-dessous :
Chapitre 3
Filtrage
Définition 3.1.1 (Filtre) Un filtre est un système linéaire continu et invariant. En d’autres termes,
on se donne deux espaces normés X et Y ainsi qu’un opérateur linéaire continu, invariant par translation
A : X → Y.
ĝ = H fˆ
entraı̂ne
g =h∗f .
La réponse à l’entrée f est donc un produit de convolution de l’entrée avec une fonction fixe
h que l’on appelle réponse impulsionnelle.
Définition 3.1.2 On appelle réponse indicielle d’un filtre sa réponse à l’échelon unité (fonction de
Heaviside) :
& t
h1 (t) = h(s) ds .
−∞
31
32 CHAPITRE 3. FILTRAGE
Notons que la plupart des filtres courants sont des filtres de convolution. Il est courant de
définir un filtre par la façon dont il modifie les fréquences du signal d’entrée, c’est-à-dire par
sa fonction de transfert H(λ) puisque les fréquences de l’entrée f et de la sortie g sont liées par
ĝ(λ) = H(λ)fˆ(λ) .
Un filtre idéal est un filtre qui élimine totalement les bandes de fréquence indésirables sans
transition et sans déphasage dans les bandes conservées.
La région où les fréquences sont coupées est en gris ci-dessus. Par exemple le passe-bas idéal
est le filtre qui ne modifie par les fréquences λ telles que λ ≤ λc (fréquence de coupure) et
supprime les autres. D’où 1
1 si |λ| ≤ λc
H(λ) =
0 sinon
On reconnaı̂t h ∈ L2 (R) telle que ĥ = H. C’est
sin 2πλc t
h(t) = .
πt
Si on se limite à des signaux d’entrée d’énergie finie, f, h et H sont dans L2 (R) et g = h ∗ f . On
sait que g est continue, bornée et nulle à l’infini. h ∗ f est dans L2 (R) comme fˆ.
Toutefois un tel filtre n’est pas réalisable. On se contente de filtres passe-bas approchés
(voir ci-dessous un dispositif physique de réalisation d’un tel filtre) qui atténuent les hautes
fréquences au lieu de les supprimer (voir exercices) et qui entraı̂nent un déphasage :
3.2. FILTRAGE 2D : CONVOLUTION /MÉDIAN 33
Une image numérique étant essentiellement discrète (pixels et niveaux de gris) nous allons
présenter les filtres dans le cas discret. Dans tout ce qui suit x et y sont des entiers (coordonnées
des pixels) et f est à valeurs entières (dans {0, · · · , 255}).
3.2. FILTRAGE 2D : CONVOLUTION /MÉDIAN 35
On ne fait pas en général une convolution globale mais une transformation basée sur le
voisinage d’un point (x, y) :
Le noyau de convolution du filtre κ est à support compact inclus dans [x1 , x2 ] × [y1 , y2 ] :
y2
x2 !
!
g(x, y) = (f ∗ κ)(x, y) = f (x − i, y − j)κ(i, j) .
i=x1 j=y1
(d−1)/2 (d−1)/2
! !
(f ∗ κ)(x, y) = f (x + i, y + j)κ(i, j) . (3.2.1)
i=−(d−1)/2 j=−(d−1)/2
Filtre(i,j)
w1 w2 w3 ← y−1
w4 w5 w6 ← y
w7 w8 w9 ← y+1
↑ ↑ ↑
x−1 x x+1
Ici d = 3. On ne filtre pas les bords pour éviter des distorsions ; donc κ(0, 0) = w5 .
Sur cet exemple on a précisément
g(x, y) = w1 f (x − 1, y − 1) + w2 f (x, y − 1) + w3 f (x + 1, y − 1)
+w4 f (x − 1, y) + w5 f (x, y) + w6 f (x + 1, y)
+w7 f (x − 1, y + 1) + w8 f (x, y + 1) + w9 f (x + 1, y + 1) .
Afin
!de conserver la moyenne de l’image f , la somme des éléments du filtre est normalisée à
1: wi = 1.
i
36 CHAPITRE 3. FILTRAGE
Un filtre 2D est dit séparable s’il est possible de décomposer le noyau de convolution h2D en
deux filtres 1D appliqués successivement en horizontal puis en vertical (ou inversement) :
h2D = hV1D ⊗ hH
1D ,
où le symbole ⊗ désigne le produit de convolution. On peut alors traiter séparément les lignes
et les colonnes de l’image.
Pour qu’un filtre 2D soit séparable il faut et il suffit que les coefficients de ses lignes et de ses
colonnes soient proportionnels.
Exemple 3.2.1 (Filtres séparables )
α aα bα cα
a b c ⊗ β = aβ bβ cβ
γ aγ bγ cγ
1 2 1
1
· 2 4 2
16
1 2 1
Idéalement, on devrait prévoir un filtre de taille (6σ +1)×(6σ +1). En général un filtre gaussien
avec σ < 1 est utilisé pour réduire le bruit, et si σ > 1 c’est dans le but de fabriquer une image
qu’on va utiliser pour faire un « masque flou » personnalisé. Il faut noter que plus σ est grand,
plus le flou appliqué à l’image sera marqué.
Les coefficients de ce filtre sont obtenus par le binôme de Newton. Un filtre 1D binômial d’ordre 4
1
est un filtre séparable donné par le vecteur v = (1 4 6 4 1). Un filtre 2D binômial d’ordre 4 est donné
16
par v " v :
1 4 6 4 1
4 16 24 16 4
1
· 6 24 36 24 6
256
4 16 24 16 4
1 4 6 4 1
Filtres médians
Ce ne sont pas des filtres de convolution, ni des filtres linéaires.
Exemple :
bruit
30 10 20 ↓
10 250 25 → 10 10 20 20 25 25 30 30 250
20 25 30 ↑
médiane
On remplace la valeur du pixel par la valeur médiane ou la valeur moyenne. Ce filtre est utile
pour contrer l’effet « Poivre et Sel » (P& S) c’est-à-dire des faux « 0 » et « 255 » dans l’image.
Si le bruit P& S est supérieur à la moitié de la dimension du filtre, le filtrage est inefficace.
Filtres passe-haut
L’image obtenue par un filtre passe-haut correspond en général à ce qui « reste » après un
filtrage passe-bas.
3.2. FILTRAGE 2D : CONVOLUTION /MÉDIAN 41
La transformée de Fourier est une fonction complexe, qui a pour chaque composante un
module et une phase.
Elle possède les mêmes propriétés que la transformation de Fourier 1D (linéarité, décalage,
dérivation, convolution, extension à L2 (R2 ).
On a vu qu’il est équivalent de multiplier la transformée de Fourier par une fonction de
transfert et d’agir sur la fonction dans la domaine spatial par convolution. Il est parfois plus
facile de mettre en œuvre le filtrage en agissant dans le domaine fréquentiel (après transformée
de Fourier ).
Filtre passe-bas
Nous en avons déjà parlé en 1D du filtre passe-bas idéal. Ici on définit une fréquence de
coupure δc au dessus de laquelle les fréquences sont annulées (filtre idéal) . La fonction de
transfert est alors 1 ,
1 si λ2 + µ2 ≤ δc
H(λ, µ) =
0 sinon
Le créneau centré H admet une transformée de Fourier inverse qui est le sinus cardnal qui
présente d’autant plus d’ondulations que la fréquence de coupure est petite. Cela entraı̂ne un
flou qui sera d’autant plus réduit que δc est grand.
42 CHAPITRE 3. FILTRAGE
Application d’un créneau « idéal » (δc . 15% de la taille de l’image) : on voit clairement les
ondulations
On a vu que le filtre passe-bas idéal n’est pas réalisable et on fait donc une approximation de
la fonction H précédente qui aura pour effet, non pas de couper les hautes fréquences mais de
les atténuer fortement. Le filtre suivant est le filtre passe-bas de Butterworth La fonction de
3.2. FILTRAGE 2D : CONVOLUTION /MÉDIAN 43
En image un filtre passe-bas atténue les hautes fréquences : le résultat obtenu après un tel
filtrage est un adoucissement des détails et une réduction du bruit granuleux.
Filtres passe-haut
Le filtre passe-haut idéal est obtenu de manière symétrique au passe- bas par
1 ,
1 si λ2 + µ2 ≥ δc
H(λ, µ) =
0 sinon
1
H(λ, µ) = * +2n
1+ √ δc
λ2 +µ2
44 CHAPITRE 3. FILTRAGE
Un filtre passe haut favorise les hautes fréquences spatiales, comme les détails, et de ce fait,
il améliore le contraste. Toutefois, il produit des effets secondaires
– Augmentation du bruit : dans les images avec un rapport Signal/ Bruit faible, le filtre
augmente le bruit granuleux dans l’image.
– Effet de bord : il est possible que sur les bords de l’image apparaisse un cadre. Mais cet
effet est souvent négligeable et peut s’éliminer en tronquant les bords de l’image.
Filtres passe-bande
Ils permettent de ne garder que les fréquences comprises dans un certain intervalle :
9 ε , ε
1 si δc − ≤ λ2 + µ2 ≤ δc +
H(λ, µ) = 2 2
0 sinon
∂f ∂f
∇f (x, y) = ( , ).
∂x ∂y
Grâce au plongement dans l’espace continu, un grand nombre d’opérations d’analyse peuvent
s’exprimer en termes d’équations aux dérivées partielles. Ceci permet de donner un fondement
mathématique satisfaisant aux traitements et aussi de fournir des méthodes pour les calculer,
par des schémas numériques de résolution.
Les filtres différentiels permettent de mettre en évidence certaines variations spatiales de
l’image . Ils sont utilisés comme traitements de base dans de nombreuses opérations comme le
réhaussement de contraste ou la détection de contours.
fait par convolution avec [0 − 1 1]. En effet, dans ce cas, la formule générale de convolution
discrète (3.2.1) donne (avec dx = 3 et dy = 0 )
1 !
!
g(x, y) = f (x + i, y + j)κ(i, j) .
i=−1 j=0
κ(i, j)
0 −1 1 ←y
↑ ↑ ↑
x−1 x x+1
et
∂f
g(x, y) = −f (x, y) + f (x + 1, y) .
(x, y)
∂x
0
∂f
De même l’approximation de se fait par convolution avec −1 :
∂y
1
κ(i, j)
0 ←y−1
−1 ←y
1 ←y+1
↑
x
et
∂f
g(x, y) = −f (x, y) + f (x, y + 1) . (x, y).
∂y
−1
On utilise plus souvent [−1 0 1] et 0 qui produisent des frontières plus épaisses mais qui
1
sont bien centrées. Ces opérations sont très sensibles au bruit et on les combine généralement
avec un filtre lisseur dans la direction orthogonale à celle de dérivation, par exemple par le
noyau suivant (ou sa transposée) : [1 2 1]. Le calcul des dérivées directionnelles en x et y revient
finalement à la convolution avec les noyaux suivants :
∂f ∂f
(x, y) . (f ∗ hx )(x, y) et (x, y) . (f ∗ hy )(x, y)
∂x ∂y
avec
−1 0 1 −1 −1 −1
hx = −2 0 2 et hy = 0 0 0
−1 0 1 1 2 1
Ce sont les masques de Sobel.
3.3. FILTRAGE DIFFÉRENTIEL 47
De la même façon , l’approximation par différences finies la plus simple de la dérivée
se-
1
∂2f −2 pour
conde est la convolution par le noyau [1 − 2 1] pour l’approximation de et
∂x2
1
2
∂ f
l’approximation de . Le laplacien
∂y 2
∂2f ∂2f
∆f = +
∂x2 ∂y 2
peut donc être approché par l’un des deux opérateurs linéaires suivant
0 1 0 1 1 1
1 −4 1 ou 1 −8 1
0 1 0 1 1 1
48 CHAPITRE 3. FILTRAGE
Norme du gradient
Gradient en x Gradient en y
Détection de contours par une convolution de type Sobel
3.3. FILTRAGE DIFFÉRENTIEL 49
Masques de Roberts G1 , G2
, π
Substitution du pixel A= G21 + G22 θ=
*4 +
-1 0 0 -1 G2
supérieur gauche + arctan
0 1 1 0 G1
Masques de Sobel
1 0 -1 1 2 1 B * +
Gy
2 0 -2 0 0 0 Gx , Gy A = G2x + G2y θ = arctan
Gx
1 0 -1 -1 -2 -1
Masques de Prewitt
1 0 -1 1 1 1 B * +
Gy
1 0 -1 0 0 0 Gx , Gy A = G2x + G2y θ = arctan
Gx
1 0 -1 -1 -1 -1
Masques de Kirsh
Direction
5 5 5
-3 0 -3 Gi pour maximum des |Gi ] correspondant
-3 -3 -3
+ les 7 autres masques obtenus par i de 1 à 8 au Gi sélectionné
permutation circulaire des coefficients
Masques de Robinson
1 1 1
1 -2 1 Gi pour maximum des |Gi ] Idem
-1 -1 -1
+ les 7 autres masques obtenus par i de 1 à 8
permutation circulaire des coefficients
1 1 1 1 -2 1
1 -8 1 -2 4 -2
1 1 1 1 -2 1
50 CHAPITRE 3. FILTRAGE
Considérons un filtrage gaussien dans le cadre continu. On sait que si l’image de départ est
une fonction uo définie sur R2 (mais L∞ à support compact), l’image filtrée est la convolée de
uo avec un noyau gaussien
* 2 + * +
1 x1 + x22 1 1x12
Gσ (x) = Gσ (x1 , x2 ) = exp − = exp − 2 .
2πσ 2 2σ 2 2πσ 2 2σ
* +
1 1x12
On pose u(t, x) = (h(t, ·) ∗ uo )(x) où h(t, x) = G√2t (x) = 4πt exp − 4t . Comme h(t, ·) ∈
C ∞ (R2 ) a ses dérivées bornées et uo ∈ L1 (R2 ), la convolée u(t, ·) est aussi C ∞ et on peut calculer
∆u :
∂2u ∂2u
∀t > 0, ∀x ∈ R2 ∆u(t, x) = (t, x) + (t, x) = (∆h(t, ·) ∗ uo )(x) .
∂x21 ∂x22
* + * + * +
1 1x12 1x12 1 1x12
∆h(t, x) = − + exp − = − + h(t, x) ,
4πt2 16πt3 4t t 4t2
et on obtient
* +
1 1x12
∆u(t, x) = − + u(t, x) .
t 4t2
et on obtient finalement
∂u
(t, x) − ∆u(t, x) = 0 sur ]0, t[×R2 .
∂t
on obtient
lim u(t, x) =< δx , uo >= uo (x) ,
t→0
car la famille de Gaussiennes converge au sens des distributions vers la mesure de Dirac.
3.3. FILTRAGE DIFFÉRENTIEL 51
Modèle de Peronna-Malik
Sur une image lissée, on peut plus facilement essayer de détecter les bords (ou contours).
On peut utiliser le détecteur de Hildrett-Marr : on cherche les zéros du Laplacien d’une image
u. Si en un point x, ∆u change de signe et si ∇u est non nul, on considère alors que l’image u
possède un bord en x.
Pour améliorer les résultats obtenus par l’EDP de la chaleur, Peronna et Malik ont proposé
de modifier l’équation en y intégrant le processus de détection des bords :
∂u
∂t (t, x) = div (c(|∇u|)∇u)(t, x) dans ]0, T [×Ω
∂u
= 0 sur ]0, T [×∂Ω (3.3.5)
∂n
u(0, x) = uo (x) ∀x ∈ Ω
ou
B
∇− ui,j = max(δx+ ui,j , 0)2 + min(δx− ui,j , 0)2 + max(δy+ ui,j , 0)2 + min(δy− ui,j 0)2 . (3.3.8)
Si l’opérateur gradient est discrétisé par différences finies à droite, alors une discrétisation pos-
sible de la divergence est donnée par
1 2
p − p 1 si 1 < i < N
p − p2i,j−1 si 1 < j < N
i,j i−1,j i,j
(div p)i,j = p1i,j si i = 1 + p2i,j si j = 1 (3.3.9)
−p1 si i = N −p 2 si j = N
i−1,j i,j−1
Etant donnée une image originale , on suppose qu’elle a été dégradée par un bruit additif v,
et éventuellement par un opérateur R . Un tel opérateur est souvent modélisé par un produit
de convolution , et n’est pas nécessairement inversible (et même lorsqu’il est inversible, son
inverse est souvent numériquement difficile à calculer). A partir de l’image observée f = Ru+v
(qui est donc une version dégradée de l’image originale u), on cherche à reconstruire u. Si on
suppose que le bruit additif v est gaussien , la méthode du Maximum de vraisemblance nous
conduit à chercher u comme solution du problème de minimisation
inf 1f − Ru122 ,
u
où 1 · 12 désigne la norme dans L2 . Il s’agit d’un problème inverse mal posé. Pour le résoudre
numériquement, on est amené à introduire un terme de régularisation, et à considérer le problème
inf 1f − Ru122 + L(u) .
u 2 34 5 2 34 5
ajustement aux données Régularisation
Dans toute la suite, nous ne considèrerons que le cas où est R est l’opérateur identité (Ru =
u). Commençons par un procédé de régularisation classique : celui de Tychonov.
55
56 CHAPITRE 4. QUELQUES MODÈLES DE RESTAURATION D’IMAGE
Non seulement on veut ajuster u à la donnée ud , mais on impose également que le gradient soit
« assez petit » (cela dépend du paramètre α). Une image dont le gradient est petit est « lissée » ,
estompée. Les bords sont érodés et la restauration donnera une image floutée.
Il est facile de voir sur l’exemple suivant que la fonctionnnelle J(u) = 1u − ud 12H n’est pas
coercive sur V :
Ω =]0, 1[, un (x) = xn , ud = 0 .
On voit que
1 n
1un 12 = √ , 1u"n 12 = √ .
2n 2n − 1
On a donc
lim 1un 1V = +∞ et lim J(un ) = 0 .
n→+∞ n→+∞
Il n’est donc même pas clair (a priori) que le problème (P) ait une solution.
Proposition 4.1.1 Supposons que (P) admet au moins une solution ũ. Le problème (Pα ) admet une
solution unique uα . De la famille (uα ) on peut extraire une sous-suite qui converge (faiblement ) dans
V vers une solution u∗ de (P) lorsque α → 0.
Jα = 1u − ud 12H + α1∇u12H ,
est coercive et strictement convexe (c’est en gros la norme de V à une partie affine près) . Mon-
trons maintenant que la famille (uα ) est bornée dans V . On pourra ainsi en extraire une sous-
suite faiblement convergente dans V vers u∗ ∈ V .
∀u ∈ V Jα (uα ) ≤ Jα (u) .
En particulier pour ũ :
J(ũ) ≤ J(uα ) ≤ Jα (uα ) = J(uα ) + α1∇uα 12H ≤ Jα (ũ) = J(ũ) + α1∇ũ12H . (4.1.1)
2 34 5 2 34 5
ũ est solution de (P) uα est solution de (Pα )
Par conséquent, pour α ≤ αo , Jα (uα ) est borné indépendamment de α. Ceci entraı̂ne que la
famille (uα )α≤αo est bornée dans H. D’autre part, avec (4.1.1) on a aussi
par conséquent la famille (uα )α≤αo est bornée dans V . On peut donc en extraire une sous-suite
qui converge (faiblement ) dans V vers u∗ . D’autre part l’équation (4.1.1) montre que
Jα" (uα ) = 0 .
Comme pour la méthode des contours actifs décrite dans le chapitre suivant, on peut se conten-
ter d’approcher la solution uα en écrivant la formulation dynamique :
∂u
− ∆u + u = ud .
∂t
Le terme de régularisation classique L(u) = 1∇u122 ( régularisation de Tychonov) n’est pas
adapté au problème de restauration d’images : l’image restaurée u est alors beaucoup trop
lissée (en particulier, les bords sont érodés). Une approcheCbeaucoup plus efficace consiste à
considérer la variation totale , c’est à dire à prendre L(u) = |Du|.
Cela conduit à une minimisation de fonctionnelle dans un espace de Banach particulier,
mais bien adapté au problème : l’espace des fonctions à variation bornée que nous commençons
par présenter.
Définition 4.2.1 Une fonction f de L1 (Ω) (à valeurs dans R) est à variation bornée dans Ω si
J(f ) < +∞ où
1& D
J(f ) = sup f (x) div ϕ(x) dx | ϕ ∈ Cc (Ω, R ) , 1ϕ1∞ ≤ 1 .
1 2
(4.2.2)
Ω
On note
BV (Ω) = {f ∈ L1 (Ω) | J(f ) < +∞ }
l’espace de telles fonctions.
58 CHAPITRE 4. QUELQUES MODÈLES DE RESTAURATION D’IMAGE
La relation (ii) est une formule d’intégration par parties « faible ». Ce théorème indique que la
dérivée faible (au sens des distributions ) d’une fonction BV est une mesure de Radon.
On rappelle qu’une mesure de Radon est une mesure finie sur tout compact et que grâce
au théorème de Riesz, toute forme L linéaire continue sur Cco (Ω) (fonctions continues à support
compact) est de la forme &
L(f ) = f (x) dµ ,
Ω
où µ est une (unique) mesure de Radon associée à L. Plus précisément
Théorème 4.2.2 ([Rudin] p. 126, [EG] p. 49 ) A toute forme linéaire bornée Φ sur Cco (Ω, R2 ), c’est-
à-dire
E F
∀K compact de Ω sup Φ(ϕ) | ϕ ∈ Cco (Ω, R2 ) , 1ϕ1∞ ≤ 1 , supp ϕ ⊂ K < +∞ ,
il correspond une unique mesure de Radon positive µ sur Ω et une fonction µ-mesurable σ (fonction
« signe ») telle que
(i) |σ(x)| = &1, µ p.p. , et
(ii) Φ(ϕ) = ϕ(x) σ(x) dµ pour toute fonction ϕ ∈ Cco (Ω, R2 ) .
Ω
(iii) De plus µ est la mesure de variation et vérifie
E F
µ(Ω) = sup Φ(ϕ) | ϕ ∈ Cco (Ω, R2 ) , 1ϕ1∞ ≤ 1 , supp ϕ ⊂ Ω . (4.2.3)
4.2. L’ESPACE DES FONCTIONS À VARIATION BORNÉE BV (Ω) 59
Soit K un compact de Ω. Pour toute fonction ϕ ∈ Cco (Ω, R2 ) à support compact dans K, on peut
trouver (par densité) une suite de fonctions ϕk ∈ Cc1 (Ω, R2 ) qui converge uniformément vers ϕ.
Posons alors
L̄(ϕ) = lim L(ϕk ) .
k→+∞
Grâce à (4.2.4) cette limite existe et elle est indépendante de la suite (ϕk ) choisie. On peut donc
ainsi étendre L par densité en une forme linéaire L̄ sur Cco (Ω, R2 ) telle que
E F
sup L̄(ϕ) | ϕ ∈ Cco (Ω, R2 ) , 1ϕ1∞ ≤ 1 , supp ϕ ⊂ K < +∞ .
BV (Ω) → R+
u 5→ 1u1BV (Ω) = 1u1L1 + J(u) .
où Df est la dérivée de f au sens des distributions. Soit ϕ ∈ Cc1 (Ω, R2 ) telle que 1ϕ1∞ ≤ 1. Alors
& & &
f div ϕ dx = − Df · ϕ dx ≤ 1ϕ1∞ |Df | dx ≤ 1Df 1L1 < +∞ .
Ω Ω Ω
et
Df si Df '= 0 ,
σ= |Df |
0 sinon.
Donc
W 1,1 (Ω) ⊂ BV (Ω) .
En particulier, comme Ω est borné
Remarque 4.2.2 D’après le théorème de Radon-Nikodym de décomposition des mesures, pour toute
fonction u ∈ BV (Ω), nous avons la décomposition suivante de Du (dérivée au sens des distributions) :
Du = ∇u dx + Ds u ,
où ∇u dx est la partie absolument continue de Du par rapport à la mesure de Lebesgue et Ds u est la
partie singulière.
Comme &
uk (x) div ϕ(x) dx ≤ J(uk )
Ω
il vient &
∀k ≥ k(ϕ, ε) u(x) div ϕ(x) dx − ε ≤ J(uk ) ,
Ω
4.2. L’ESPACE DES FONCTIONS À VARIATION BORNÉE BV (Ω) 61
et donc &
u(x) div ϕ(x) dx ≤ lim inf J(uk ) .
Ω k→+∞
!
Nous admettrons le résultat suivant
Théorème 4.2.4 (Approximation régulière) Pour toute fonction u ∈ BV (Ω), il existe une suite de
fonctions (uk )k∈N de BV (Ω) ∩ C ∞ (Ω) telle que
(i) uk → u dans L1 (Ω) et
(ii) J(uk ) → J(u) (dans R).
La démonstration est technique et utilise un procédé classique de régularisation par convolu-
tion. On peut se référer à [EG] p.172.
Remarquons que le résultat ci-dessus n’est pas un résultat de densité de BV (Ω) ∩ C ∞ (Ω) dans
BV (Ω) car on n’a pas J(uk − u) → 0.
Démonstration - Soit (un )n∈N une suite de Cauchy dans BV (Ω). C’est donc une suite de Cauchy
dans L1 (Ω) : elle converge donc vers u ∈ L1 (Ω). D’autre part, elle est bornée dans BV (Ω) (toute
suite de Cauchy est bornée), donc
∃M > 0, ∀n J(un ) ≤ M .
Donc
∀n, k ≥ N J(un − uk ) ≤ ε
et avec la semi-continuité inférieure de J en fixant n on obtient
Théorème 4.2.6 (Compacité) L’espace BV (Ω) s’injecte dans L1 (Ω) de manière compacte. Plus précisément :
si (un )n∈N une suite bornée de BV (Ω)
alors, il existe une sous-suite (unk )k∈N et une fonction u ∈ BV (Ω) telle que unk converge fortement
vers u dans L1 (Ω).
Démonstration - [EG] p.176. !
Pour plus de détail sur les fonctions BV, on pourra se reporter à [EG]. Dans ce qui suit, nous
allons présenter plusieurs modèles qui se différencient par la nature du terme de régularisation.
En pratique, on pénalise par la norme de tout ou partie de la fonction u de l’image et le cadre
fonctionnel est très important.
Démonstration - Soit un ∈ BV (Ω), vn ∈ L2 (Ω) une suite minimisante. Comme vn est bornée
dans L2 (Ω) on peut en extraire une sous-suite (notée de la même façon) faiblement convergente
vers v ∗ dans L2 (Ω). Comme la norme de L2 (Ω) est convexe, sci, il vient
De la même façon un = ud − vn est bornée dans L2 (Ω) et donc dans L1 (Ω) puisque Ω est
borné. Comme J(un ) est borné , il s’ensuit que un est bornée dans BV (Ω). Grâce au résultat de
compacité du théorème 4.2.6 , cela entraı̂ne que un converge (à une sous-suite près) fortement
dans L1 (Ω) vers u∗ ∈ BV (Ω).
D’autre part J est sci (théorème (4.2.3) , donc
et finalement
1 ∗ 2 1
J(u∗ ) + 1v 12 ≤ lim inf J(un ) + 1vn 122 = inf(PROF ) .
2ε n→+∞ 2ε
Comme un + vn = ud pour tout n, on a u∗ + v ∗ = ud . Par conséquent u∗ est une solution du
problème (PROF ).
La fonctionnelle est strictement convexe par rapport au couple (u, v) et la contrainte est affine.
On a donc unicité. !
Nous aurons besoin d’établir des conditions d’optimalité pour la ou les solutions optimales
des modèles proposés. Toutefois les fonctionnelles considérées (en particulier J) ne sont en
général pas Gâteaux-différentiables et nous devons utiliser des notions d’analyse non lisse (voir
chapitre 3).
1
min F(u) := J(u) + 1u − ud 122 . (4.3.5)
u∈BV (Ω) 2ε
0 ∈ ∂F(ū) ⇐⇒ ū ∈ ∂F ∗ (0) ,
mais elle n’est vraie que si l’espace est réflexif, ce qui n’est pas le cas de BV (Ω). Toutefois ce
sera vrai après discrétisation (ce que nous ferons dans la section suivante). On peut utiliser le
théorème A.3.4 pour calculer ∂F(u). L’application u 5→ 1u − ud 122 est continue sur L2 (Ω) est
J est finie sur BV (Ω) à valeurs dans R ∪ {+∞} e. D’autre part u 5→ 1u − ud 122 est Gâteaux
différentiable sur L2 (Ω). Le calcul du sous-différentiel pouvant se faire via la transformation
de Fenchel-Legendre dans le cas où l’espace est réflexif (voir Annexe). Nous allons donc faire
la discrétisation du problème.
et de la norme associée : 1 ·1 X .
64 CHAPITRE 4. QUELQUES MODÈLES DE RESTAURATION D’IMAGE
Nous allons donner une formulation discrète de ce qui a été fait auparavant et en particulier
définir une variation totale discrète que nous noterons de la même façon. Pour cela nous intro-
duisons une version discrète de l’opérateur gradient. Si u ∈ X, le gradient ∇u est un vecteur
de Y donné par
(∇u)i,j = ((∇u)1i,j , (∇u)2i,j ) ,
avec 1
ui+1,j − ui,j si i < N
(∇u)1i,j = (4.4.6)
0 si i = N
1
ui,j+1 − ui,j si j < N
(∇u)2i,j = (4.4.7)
0 si j = N
La variation totale discrète est alors donnée par
!
J(u) = |(∇u)i,j | , (4.4.8)
1≤i,j≤N
B
où |(∇u)i,j | = |(∇u)1i,j |2 + |(∇u)2i,j |2 . On introduit également une version discrète de l’opérateur
de divergence. On le définit par analogie avec le cadre continu en posant
div = −∇∗ ,
où ∇∗ est l’opérateur adjoint de ∇, c’est-à-dire
∀p ∈ Y, ∀u ∈ X (−div p, u)X = (p, ∇u)Y = (p1 , ∇1 u)X + (p2 , ∇2 u)X .
On peut alors vérifier que
1 2
p − p1i−1,j si 1 < i < N
p − p2i,j−1 si 1 < j < N
i,j i,j
(div p)i,j = p1i,j si i = 1 + p2i,j si j = 1 (4.4.9)
−p1 si i = N −p2 si j = N
i−1,j i,j−1
où
K := {ξ = div (g) | g ∈ Y, |gi,j | ≤ 1 , ∀i, j } ,
est la version « discrète » de
E F
ξ = div ϕ | ϕ ∈ Cc1 (Ω, R2 ) , 1ϕ1∞ ≤ 1 .
Donnons tout d’abord une caractérisation de la conjuguée de Fenchel de J.
Théorème 4.4.1 La transformée de Fenchel J ∗ de la fonctionnelle J « variation totale » approchée
définie sur X, est l’indicatrice de l’ensemble K̄, où
K = {ξ = div (g) | g ∈ Y, |gi,j | ≤ 1 , ∀i, j } ,
où :·, ·; désigne le produit de dualité entre BV (Ω) et son dual. Par conséquent :ξ, u; − J(u) ≤ 0
pour tous ξ ∈ K et u ∈ BV (Ω). On déduit donc que pour tout u∗ ∈ K
J ∗ (u∗ ) = sup :u∗ , u; − J(u) ≤ 0 .
u∈K
Comme J ∗ ne prend qu’une seule valeur finie on a J ∗ (u∗ ) = 0, et donc u∗ ∈ K̃. Par conséquent
K ⊂ K̃ et comme K̃ est fermé :
K̄ ⊂ K̃ .
En particulier
J(u) = sup :u, ξ; ≤ sup :u, ξ; ≤ sup :u, ξ; = sup :u, ξ; − J ∗ (ξ) = J ∗∗ (u) .
ξ∈K ξ∈K̄ ξ∈K̃ ξ∈K̃
Comme J ∗∗ = J, il vient
sup :u, ξ; ≤ sup :u, ξ; ≤ sup :u, ξ; ,
ξ∈K ξ∈K̃ ξ∈K
et donc
sup :u, ξ; = sup :u, ξ; = sup :u, ξ; . (4.4.11)
ξ∈K ξ∈K̄ ξ∈K̃
Supposons maintenant qu’il existe u∗ ∈ K̃ tel que u∗ ∈ / K̄. On peut alors séparer strictement u∗
et le convexe fermé K̄. Il existe α ∈ R et uo tels que
:uo , u∗ ; > α ≥ sup :uo , v; .
v∈K̄
On suppose que I = [a, b] est un intervalle compact de R. Soit Σ l’ensemble des subdivisions σ
de [a, b] :
σ = {to = a, t1 , · · · , tn−1 , tn = b } .
On pose
n−1
!
"σ (Γ) = d(Φ(tn+1 ), Φ(tn )) ,
k=0
Ce nombre est la longueur de la courbe Γ : "(Γ). Elle est indépendante de la paramétrisation (régulière)
choisie.
67
68 CHAPITRE 5. MÉTHODE DES CONTOURS ACTIFS
Définition 5.1.2 Soit Γ une courbe rectifiable, connexe, compacte de classe C 1 . Soit to ∈ I. On pose
1
"(Γt,to ) si t ≥ to ,
S(t) =
−"(Γto ,t ) si t ≤ to ,
dM
S " (t) = |Φ" (t)| = | (t)| ,
dt
Corollaire 5.1.1 Sous les hypothèses précédentes la longueur de la courbe s’exprime par la formule :
& b
dM
"(Γ) = | (t)| dt . (5.1.1)
a dt
La fonction S est continue dans l’intervalle I. Son image J = S(I) ⊂ R est donc un intervalle
et la variable s = S(t) décrivant J est appelée abscisse curviligne de la courbe Γ. Le point
Mo = M (to ) est l’origine de l’abscisse curviligne.
On rappelle qu’un point régulier de Γ est un point où Φ" (t) '= 0. Si l’ensembles des valeurs du
paramètre t telles que M (t) soit un point régulier de Γ est dense dans I, la fonction S est un
homéomorphisme de I dans J = S(I). On peut donc redéfinir un paramétrage Ψ = Φ ◦ S −1 de
Γ appelé paramétrage de Γ par une abscisse curviligne.
Supposons maintenant que la courbe Γ soit paramétrée par une abscisse curviligne : Φ :
[a, b] → R2 . La longueur de la courbe est une quantité intrinsèque mais on peut l’écrire en
fonction de la paramétrisation : "(Γ) = "(Φ). On alors le résultat suivant qui nous servira par la
suite
Théorème 5.1.2 Soit X un ensemble de fonctions C 1 de R sur R2 représentant des courbes fermées
(valeurs de la fonction et de sa dérivée égales aux bornes) . Alors la fonctionnelle
" : X → R+
Φ 5→ "(Φ)
est Gâteaux différentiable en toute fonction Φ dont le gradient ∇Φ est non nul et
& b * +
d" ∇Φ
∀h ∈ X (Φ) · h = div (s) h(s) ds ,
dΦ a |∇Φ|
,
Démonstration - L’application N : R2 → R+ définie par N (x) = |x| = x21 + x22 est dérivable
en tout point x '= 0 et
x
∇N (x) = .
|x|
Si Ψ est une fonction C 1 non nulle de [a, b| dans R2 , le théorème des fonctions composées donne
d|Ψ| Ψ
(Ψ) = .
dΨ |Ψ|
Soit h ∈ X : calculons la Gâteaux-dérivée de " :
& b
d" ∇Φ
(Φ) · h = (s) · ∇h(s) ds .
dΦ a |∇Φ|
Une intégration par parties couplée à la condition aux limites donne (la courbe est fermée)
& b
d" ∇Φ
(Φ) · h = div( (s))h(s) ds .
dΦ a |∇Φ|
!
des points de contour en introduisant une fonctionnelle interprétée en terme d’énergie pour les
propriétés mécaniques qu’elle revêt. En effet, cette méthode permet de faire évoluer en temps et
en espace la représentation du modèle vers la solution du problème de minimisation introduit
dans la modélisation. Ces méthodes de contours actifs font appel à la notion de corps élastique
subissant des contraintes extérieures. La forme prise par l’élastique est liée à une minimisation
d’énergie composée de deux termes :
• un terme d’énergie interne et
• un terme d’énergie externe.
Le minimum local obtenu par minimisation de cette fonctionnelle non-convexe est lié à la
condition initiale qui définit un voisinage de recherche du minimum.
De manière générale, les difficultés ma jeures rencontrées dans le processus de segmenta-
tion par contours actifs sont les suivantes :
– le modèle est non-intrinsèque du fait de la paramétrisation et n’est donc pas lié à la
géométrie de l’objet à segmenter.
– forte dépendance du modèle à la condition initiale, qui n’autorise pas à choisir une condi-
tion initiale éloignée de la solution.
– connaissance de la topologie de/ou/des objets à segmenter nécessaire, ce qui implique
(lorsqu’il y a plusieurs objets à segmenter) l’utilisation de procédures particulières du fait
de la paramétrisation.
– complexité des images / ambiguı̈té des données correspondantes, en particulier lorsque
les données des images manquent et/ou que deux régions de texture similaire sont adja-
centes.
– bruit sur les données.
Elle est constituée d’un terme de régularisation interne (Ei ) et d’un terme de potentiel d’at-
traction ou ajustement aux données (Ee ).
L’énergie interne peut se décomposer comme suit :
&
1 1H I
Ei (v) = α(s)|v " (s)|2 + β(s) |v”(s)|2 ds (5.2.2)
2 0
72 CHAPITRE 5. MÉTHODE DES CONTOURS ACTIFS
où |·| désigne la norme euclidienne dans R2 . α ∈ L∞ (0, 1) est le coefficient d’élasticité (résistance
à l’allongement) et β ∈ L∞ (0, 1) le coefficient de rigidité. Le premier terme de Ei (v) :
& 1
α(s)|v " (s)|2 ds
0
pénalise la longueur du « snake » ( augmenter α(s) tend à éliminer les boucles en réduisant la
longueur du contour).
Le second terme
& 1
β(s) |v”(s)|2 ds
0
avec λ > 0.
– soit assimilés aux points de dérivée seconde nulle : si Gσ désigne un filtre gaussien, on
peut choisir
& 1 & 1
Ee (v) = P (v(s)) ds := λ |Gσ ∗ ∆I(v(s))|n ds , (5.2.4)
0 0
La modélisation du problème que l’on propose revient donc à trouver une fonction v̄ ∈
Φ∩X
min{Es (v) | v ∈ Φ ∩ X } . (5.2.5)
sur l’espace X . Elle n’est en général pas convexe de sorte que si l’on peut (éventuellement)
montrer l’existence d’une solution ū , celle ci n’est en général pas unique. D’après le Théorème
A.1.5, si ū est solution du problème alors
dEs
∀v ∈ X (ū) · v = 0 .
dv
Une manière simple d’imposer un mouvement au contour est d’imposer sa vitesse d’évolution
∂u
(x, t) en posant
∂t
∂u
(x, t) = −∇u Es (u(x, t)) . (5.2.7)
∂t
En effet, la famille u(t, ·) de courbes (indexée par t) que l’on cherche doit être choisie de façon
à faire décroı̂tre l’énergie Es qui se rapprochera ainsi de son infimum. Si on fait (formellement)
un développement de Es au premier ordre, on a pour δt > 0
E(u(t + δt, ·)) − E(u(t, ·)) . :∇u E(u(t, ·)), u(t + δt, ·) − u(t, ·); . (5.2.8)
Le choix « u(t + δt, ·) − u(t, ·) = −δt∇u E(u(t, ·) »montre qu’on fait bien décroı̂tre l’énergie. En
faisant tendre δt vers 0 on obtient (5.2.7). Ceci conduit à une équation aux dérivées partielles
d’évolution (en général parabolique à laquelle il convient d’ajouter une condition initiale
5.2.5 Un exemple
Nous allons illustrer ce qui précède par un exemple. Supposons que la fonction α soit
constante, que β soit nulle (on ne contraint pas la rigidité du contour actif ). L’espace fonc-
tionnel des courbes est alors X = H 2 (0, 1) ∩ Ho1 (0, 1) (en prenant en compte la condition aux
limites v(0) = v(1) = 0. On supposera que l’image I est à dérivée dans L2 et que
v 5→ ∇I(v)
C’est une EDP parabolique non linéaire dont l’étude est en général classique.
76 CHAPITRE 5. MÉTHODE DES CONTOURS ACTIFS
Le principe des contours actifs est de faire évoluer une courbe. On a vu dans la section
∂u
précédente une formulation dynamique qui fait intervenir c’est-à-dire la vitesse d’évolution
∂t
du contour. On va donc s’intéresser à la façon de faire évoluer la courbe et plus généralement
à la notion de propagation de fronts.
On se donne une courbe plane (on peut aussi se placer en 3D avec une surface) fermée que
l’on supposera régulière (on précisera cela plus tard). Cette courbe partage le plan en deux
régions, l’intérieur et l’extérieur. On oriente la courbe de façon à définir une normale extérieure
&n. On se donne la vitesse de propagation de la courbe : cette vitesse est portée par la normale :
&v = F &n ,
car on supposera qu’il n’y pas de déplacement tangentiel (pas de rotation ou de glissement par
exemple). La fonction F dépend de plusieurs facteurs :
On paramètre la courbe de façon que l’intérieur soit à gauche de la direction des s croissants.
&n(s, t) est une paramétrisation de la normale extérieure et κ(t, s) une paramétrisation de la
courbure.
5.3. LA MÉTHODE DES LIGNES DE NIVEAU (« LEVEL SET ») 77
où xs désigne la dérivée par rapport à s et xss désigne la dérivée seconde par rapport à s.
On se restreint dans ce qui suit à des vitesses ne dépendant que de la courbure locale
F = F (κ) .
. / . / (5.3.10)
yt = F yss xs −xss ys xs
2
(x +y )2 3/2 2
(x +y )2 1/2 .
s s s s
78 CHAPITRE 5. MÉTHODE DES CONTOURS ACTIFS
La proposition suivante donne une idée de l’évolution du front lorsque la courbure s’annule
(courbe non convexe).
Proposition 5.3.1 On considère un front évoluant à la vitesse F (κ) le long du champ de vecteurs
normaux. Supposons que la courbe initiale Γo est simple, régulière et non-convexe, de sorte que κ(s, 0)
change de signe. Supposons que F est deux fois différentiable et que κ l’est aussi pour 0 ≤ s ≤ S et
0 ≤ t ≤ T . Alors, pour tout 0 ≤ t ≤ T
• Si F " (κ) ≤ 0 (resp. ≥ 0) dès que κ = 0 alors
d"
≤ 0 (resp. ≥ 0 )
dt
• Si F " (κ) < 0 (resp. > 0) et κ '= 0 dès que κ = 0 alors
d"
< 0 (resp. > 0 )
dt
Ψ : R3 → R
vérifiant
Γt = { X(t) = (x(t), y(t)) ∈ R2 | Ψ(t, X(t)) = 0 } . (5.3.11)
Pour cela, on va partir d’une courbe initiale Γo d’équation ψo , on pose
∀t ≥ 0 Ψ(t, X(t)) = 0 .
Comme nous cherchons une surface régulière (au moins C 1 ) nous pouvons dériver et la formule
de composition donne
∂Ψ
∀t ≥ 0 (t, X(t)) + ∇Ψ(t, X(t)) · X " (t) = 0 ,
∂t
où ∇Ψ désigne le gradient par rapport à X.
Or nous connaissons la vitesse de propagation du front :
Ψ(t, X) = 0 .
∂Ψ
+ H(∇Ψ) = 0 ,
∂t
où H est le hamiltonien.
Grâce à ce modèle de ballons, ,on peut supprimer deux des inconvénients principaux des
« snakes » :
1. L’arrêt prématuré de la courbe sur un point non désiré.
2. Le choix d’une condition initiale très proche du contour à extraire.
Ceci est mis en évidence par la figure suivante.
On constate qu’avec le modèle classique (en haut), le contour s’arrête sur un point qui corres-
pond à un bruit, point non-significatif. Avec le modèle des ballons (en bas) , la courbe passe par
dessus et se colle parfaitement au contour même si la condition initiale est très loin du résultat
escompté.
Partant d’une courbe initiale orientée, on ajoute au modèle une force de gonflage définie
par : k1&n(v(s)), où &n est la normale unitaire extérieure à la courbe au point v(s). On aboutit
alors à l’expression suivante de la force extérieure F :
∇Ψ
F = k1&n(v(s)) − k .
|∇Ψ|
Si l’on change le signe de k1 , cela nous donne un dégonflage au lieu d’un gonflage. Notons
aussi que k1 et k sont approximativement du même ordre. Le paramètre k est cependant un
peu plus grand que k1 pour que le « snake » soit arrêté par les bons points.
Remarque 5.5.1 (i) Le modèle original de Mumford-Shah fait intervenir la mesure de Hausdorff de K
et non sa longueur "(K) . &
(ii) On reconnaı̂t dans JM S (K, u) : un terme d’ajustement aux données |u − uo |2 dx, un terme
& Ω\K
2
de régularisation |∇u| dx pour u et un terme de régularisation pour les courbes constituant K :
Ω\K
"(K).
(iii) α et β sont des paramètres d’échelle et de contraste respectivement.
min JM S (K, u) ,
Théorème A.1.1 Toute fonction convexe sci pour la topologie forte (celle de la norme) de V est encore
sci pour la topologie faible de V . !
En pratique ce résultat s’utilise sous la forme du corollaire suivant :
Corollaire A.1.1 Soit J une fonctionnelle convexe de V dans R ∪ {+∞} sci (par exemple continue)
pour la topologie forte. Si vn est une suite de V faiblement convergente vers v alors
J(v) ≤ lim inf J(vn ) .
n→+∞
83
84 ANNEXE A. QUELQUES OUTILS MATHÉMATIQUES POUR L’IMAGE
v 5→ J " (u; v)
Théorème A.1.2 Soit J : C ⊂ V → R , Gâteaux différentiable sur C, avec C convexe. J est convexe si
et seulement si
∀(u, v) ∈ C × C J(v) ≥ J(u) + :∇J(u), v − u; (A.1.1)
et la convexité de J. !
A.1. OPTIMISATION DANS LES ESPACES DE BANACH 85
Théorème A.1.3 Soit J : C ⊂ V → R , Gâteaux différentiable sur C, avec C convexe. J est convexe si
et seulement si ∇J est un opérateur monotone , c’est-à-dire
Démonstration - Soient (u, v) dans C × C. D’après le théorème précédent, si J est convexe, alors
et
J(u) ≥ J(v) + :∇J(v), u − v; .
grâce à (A.1.2). Donc ϕ" est décroissante sur [0, 1]. De plus ϕ(0) = ϕ(1) = 0 et d’après le
théorème de Rolle, il existe a ∈]0, 1[ tel que ϕ" (a) = 0. On a donc le tableau suivant qui montre
que ϕ ≥ 0 sur [0, 1]. La convexité de J s’en déduit.
t 0 a 1
ϕ" = 0 =
ϕ" + 0 -
ϕ 0> =0 !
alors J est strictement convexe. En effet, on peut reprendre la deuxième partie de la démonstration
du théorème précédent : ϕ" est strictement décroissante sur [0, 1] et donc ne s’annule qu’en un point
a au plus. ϕ est alors strictement croissante sur ] 0, a[ et strictement décroissante sur ] a, 1[ donc
strictement positive sur ] 0, 1[.
lim J(x) = +∞ .
*x*V →+∞
Théorème A.1.4 On suppose que V est un Banach réflexif. Soit J une fonctionnelle de V dans R, semi-
continue inférieurement pour la topologie faible de V . Soit K un sous-ensemble non vide et faiblement
fermé de V . On suppose que J est propre ( c’est-à-dire qu’il existe un élément vo de K tel que J(vo ) <
+∞). Alors le problème de minimisation suivant :
1
Trouver u tel que
(P) (A.1.4)
J(u) = inf { J(v) | v ∈ K } ,
Démonstration - On pose d = inf { J(v) | v ∈ K } ; d < +∞, sinon J serait identiquement égale
à +∞ sur K.
Soit une suite minimisante, c’est-à-dire une suite un de K telle que J(un ) → d. Montrons
que cette suite est bornée dans V . Si K est borné, c’est clair. Sinon, on suppose que J est
coercive. Si un n’est pas bornée, on peut en extraire une sous-suite encore notée un telle que
lim 1un 1V = +∞. La coercivité de J implique alors que J(un ) converge vers +∞ ce qui est
n→+∞
en contradiction avec le fait que d < +∞.
V est un Banach réflexif, donc sa boule unité est faiblement compacte ; on peut donc extraire
de la suite un une sous-suite encore notée un qui converge faiblement vers u dans V . On va
montrer que u est solution de (A.1.4).
Comme K est un ensemble faiblement fermé , la limite faible u de la suite un de K est bien un
élément de K.
D’autre part, on sait que J est sci faible ; on a donc
ce qui donne
J(u) ≤ lim inf J(un ) = lim J(un ) = d ≤ J(u) .
n→+∞ n→+∞
Corollaire A.1.2 On suppose que V est un Banach réflexif. Soit J une fonctionnelle de V dans R,
convexe semi-continue inférieurement V propre et K un sous-ensemble convexe non vide et fermé de V .
Si J est coercive ou si K est borné , le problème de minimisation admet une solution. Si, de plus, J est
strictement convexe la solution est unique.
Démonstration - J étant convexe, sci elle est en particulier faiblement sci. De la même façon K
étant convexe fermé, il est faiblement fermé (voir [Br] par exemple) et le théorème précédent
s’applique.
Montrons à présent l’unicité lorsque J est strictement convexe ; soient u et v deux solutions
u+v
distinctes de (A.1.4). u et v sont dans le convexe K donc aussi. Par conséquent
2
u+v J(u) + J(v)
d ≤ J( )< =d.
2 2
Il y a contradiction, et de fait la solution est unique. !
Rappelons enfin le Théorème donnant une condition nécessaire d’optimalité du premier ordre.
Théorème A.1.5 Soient K un sous-ensemble convexe, non vide de V et J une fonctionnelle de K vers
R Gâteaux-différentiable sur K. Soit u dans V une solution du problème (P). Alors
D’après (i),
∀t ∈]0, 1[, ∀v ∈ K J(u) ≤ J((1 − t)u + tv) ,
J((1 − t)u + tv) − J(u)
∀t ∈]0, 1[, ∀v ∈ K ≥0.
t
Par passage à la limite quand t → 0+ :
!
Corollaire A.1.3 Si J est convexe, sous les hypothèses du théorème précédent, la condition nécessaire
(A.1.5) est également suffisante si u ∈ K.
Démonstration - Soit u est dans K tel que
Or nous savons que si J est convexe ( Théorème A.1.2 ) < ∇J(u), v − u >≤ J(v) − J(u) , ce qui
permet de conclure que
∀v ∈ K J(v) − J(u) ≥ 0 .
!
88 ANNEXE A. QUELQUES OUTILS MATHÉMATIQUES POUR L’IMAGE
Théorème A.1.6 Etant donnés C un sous-ensemble convexe, fermé et non vide de V et x un élément
quelconque de V . Alors le problème
min { 1x − y12 , y ∈ C }
∀y ∈ C (x − x∗ , y − x∗ ) ≤ 0 . (A.1.6)
∀y ∈ C (x − x∗ , y − x∗ ) ≤ 0 .
Donc
∀y ∈ C (x∗ − y, y − x) = (x∗ − y, x∗ − x) − 1y − x∗ 12 ≤ 0 .
Réciproquement : Soit y ∈ C et z = x∗ + t(y − x∗ ) ∈ C, pour t ∈]0, 1[. La relation (A.1.7) implique
∀t ∈] 0, 1[ (x∗ − z, z − x) = −t (y − x∗ , x∗ − x + t(y − x∗ )) ≤ 0
∀t ∈] 0, 1[ (y − x∗ , x∗ − x + t(y − x∗ )) ≥ 0 .
On fait ensuite tendre t vers 0+ pour obtenir (A.1.6). !
Le point x est le projeté de x sur C. L’application πC = V → C qui à x associe son projeté
∗
x∗ est la projection sur C. Le projeté πC (x) est donc le point de C qui est le « plus près » de x.
On définit de manière standard la fonction distance d’un point x à l’ensemble C par
Dans le cas où C est un convexe fermé, on vient donc de démontrer que
d(x, C) = 1x − πC (x)1 .
A.2. FORMULATION VARIATIONNELLE DES ÉQUATIONS AUX DÉRIVÉES PARTIELLES 89
1πC (x2 ) − πC (x1 )12 ≤ (x2 − x1 , πC (x2 ) − πC (x1 )) ≤ 1x2 − x1 1 1πC (x2 ) − πC (x1 )1 .
Exemple A.1.1 (Projection sur un sous-espace vectoriel) Dans le cas où C est un sous-espace vec-
toriel fermé de V , c’est bien sûr un convexe fermé non vide. L’opérateur de projection est dans ce cas
linéaire (c’est faux dans le cas général). Le projeté x∗ d’un élément x, sur C, est caractérisé par
∀y ∈ C (x − x∗ , y) = 0 .
Cela signifie que x − x∗ ∈ C ⊥ (l’orthogonal de C). On retrouve ainsi la classique projection orthogonale
sur un sous-espace vectoriel fermé.
Théorème A.2.1 Soit V un espace de Hilbert et a une forme bilinéaire continue sur V ×V . On suppose
que a est V - elliptique (ou coercive), i.e. :
Démonstration - On pose
1
J(v) = a(v, v) − L(v) .
∀v ∈ V,
2
Il est facile de voir que J est convexe à cause de la bilinéarité de a et de la linéarité de L.
J est strictement convexe grâce à la V -ellipticité de a. La V -ellipticité de a entraı̂ne aussi la
coercivité de J ; en effet, nous avons :
Enfin il est clair que J est continue pour la topologie forte de V , donc sci. De plus comme elle
est convexe, elle est aussi sci pour la topologie faible.
Par conséquent, d’après le théorème A.1.4 le problème
1
min { a(v, v) − L(v) | v ∈ V } , (A.2.11)
2
admet une solution unique u.
Grâce au Théorème A.1.5 on peut maintenant caractériser cette solution u dans le cas où a est
symétrique. Un calcul élémentaire montre que
∀v ∈ V a(u, v − u) − L(v − u) ≥ 0 ,
c’est-à-dire
∀v ∈ V a(u, v) = L(v) .
Lorsque a n’est pas symétrique le résultat est encore vrai mais la démonstration est moins
immédiate (elle est en tout cas différente). Nous renvoyons à [DL] Tome VI, p 1206. !
Nous allons interpréter ce résultat. Soit u dans V et Au ∈ V " défini par :
V →R
Au : v 5→ a(u, v) .
A.2. FORMULATION VARIATIONNELLE DES ÉQUATIONS AUX DÉRIVÉES PARTIELLES 91
∀u ∈ V Au = Au .
Il est facile de voir que A est linéaire et que le problème (A.2.10) est équivalent à :
1
Trouver u ∈ V tel que
(A.2.12)
Au = L .
Nous allons énoncer une série de propriétés des espaces de Sobolev, sans démonstration. On
pourra consulter [DL] par exemple.
Proposition A.2.3
!
H m (Ω) ⊂ H m (Ω)
et l’injection est continue, pour m ≥ m" .
Définition A.2.2
Ho1 (Ω) = { u ∈ H 1 (Ω) | u|Γ = 0 } .
C’est aussi l’adhérence de D(Ω) dans H 1 (Ω).
∂j u
Hom (Ω) = { u ∈ H 1 (Ω) | = 0, j = 1, · · · , m − 1} ,
∂nj |Γ
∂
où est la dérivée de u suivant la normale extérieure à Γ la frontière de Ω :
∂n
n
∂u ! ∂u
= cos(&n, e&i ) ,
∂n ∂xi
i=1
où &n est la normale extérieure à Γ et Ω est supposé « régulier » (de frontière C ∞ par exemple).
Définition A.2.3 (Dualité) Pour tout m ∈ N, on note H −m (Ω) le dual de Hom (Ω).
Théorème A.2.2 (Rellich) Si Ω est un ouvert borné de Rn , alors pour tout m ∈ N, l’injection de
Hom+1 (Ω) dans Hom (Ω) est compacte .
En particulier l’injection de Ho1 (Ω) dans L2 (Ω) est compacte. En pratique, cela signifie que
toute suite bornée en norme Ho1 (Ω) converge faiblement dans Ho1 (Ω) (après extraction d’une
sous-suite) et fortement dans L2 (Ω).
A.2. FORMULATION VARIATIONNELLE DES ÉQUATIONS AUX DÉRIVÉES PARTIELLES 93
de manière évidente.
a est V -elliptique d’après l’inégalité de Poincaré
c’est-à-dire
1
a(u, u) ≥ 1u121 .
1+C
&
Soit f ∈ H −1 (Ω) et L(v) ≡ f (x) v(x) dx pour tout v de Ho1 (Ω).
Ω
On sait que le problème variationnel
& &
∀v ∈ Ho (Ω)
1
∇u(x) ∇v(x) dx = f (x) v(x) dx ,
Ω Ω
On obtient
−∆u = f dans D" (Ω) .
Comme u ∈ Ho1 (Ω), on a également : u ≡ 0 sur Γ. Ce problème est le problème de Dirichlet
homogène pour le laplacien :
94 ANNEXE A. QUELQUES OUTILS MATHÉMATIQUES POUR L’IMAGE
1
−∆u = f dans Ω
(DH)
u = 0 sur Γ ,
et on a le résultat suivant :
Théorème A.2.3 L’opérateur −∆ (laplacien) est un isomorphisme de Ho1 (Ω) sur H −1 (Ω).
!
Par ailleurs Ho1 (Ω) ⊂ L2 (Ω) avec injection dense et continue. Donc
Ho1 (Ω) ⊂ L2 (Ω) ⊂ H −1 (Ω) .
On peut considérer (−∆) comme un opérateur non borné à valeurs dans H = L2 (Ω). Le do-
maine de (−∆) est alors
D(−∆) = { u ∈ Ho1 (Ω) | ∆u ∈ L2 (Ω) } .
On montre que si Ω est de frontière assez régulière
D(−∆) = H 2 (Ω) ∩ Ho1 (Ω) ,
et on même le résultat suivant :
Proposition A.2.4 L’opérateur −∆ est un isomorphisme de H 2 (Ω) ∩ Ho1 (Ω) muni de la norme du
graphe sur L2 (Ω).
!
Définition A.3.1 (Hyperplan affine) Un hyperplan affine fermé est un ensemble de la forme
H = { x ∈ X | α(x) + β = 0 } ,
où α ∈ X " est une forme linéaire continue non nulle sur X et β ∈ R.
Dans le cas où X est un espace de Hilbert V (en particulier si V = Rn ), on peut identifier V
à son dual et tout hyperplan affine fermé est de la forme
H = { x ∈ V | (α, x)V + β = 0 } ,
Définition A.3.2 (Séparation) Soient A et B deux sous-ensembles non vides de X . On dit que l’hy-
perplan affine H d’équation : α(x) + β = 0, sépare A et B au sens large si
∀x ∈ A α(x) + β ≤ 0 et ∀y ∈ B α(y) + β ≥ 0 .
∀x ∈ A α(x) + β ≤ −ε et ∀y ∈ B α(y) + β ≥ ε .
Théorème A.3.1 Soient A et B deux sous-ensembles de X convexes, non vides et disjoints. On suppose
que A est ouvert. Alors, il existe un hyperplan affine fermé qui sépare A et B au sens large .
Théorème A.3.2 Soient A et B deux sous-ensembles de X convexes, non vides et disjoints. On suppose
que A est fermé et que B est compact. Alors, il existe un hyperplan affine fermé qui sépare A et B
strictement.
96 ANNEXE A. QUELQUES OUTILS MATHÉMATIQUES POUR L’IMAGE
A.3.2 Sous-différentiel
Définition A.3.3 Soit f : X → R ∪ {+∞} et u ∈ dom f (i.e. f (u) < +∞). Le sous-différentiel de f
en u est l’ensemble ∂f (u) (éventuellement vide ) des u∗ ∈ X " tels que
0 ∈ ∂f (u).
3. Comme N
∂f (u) = { u∗ ∈ X " | :u∗ , v − u; ≤ f (v) − f (u) } ,
v∈X
∂f (u) est un sous-ensemble convexe, fermé pour la topologie faible *, comme intersection de convexes
fermés.
4. Pour tout λ > 0 on a ∂(λf )(u) = λ∂f (u) .
Avec la convexité, on a
* + * +
(u + tv) + (u − tv) f (u + tv) + f (u − tv)
f (u) = f ≤ .
2 2
Par conséquent
f (u + tv) − f (u) ≥ −(f (u − tv) − f (u)) ,
et donc
f (u + tv) − f (u) f (u − tv) − f (u)
≥ .
t −t
98 ANNEXE A. QUELQUES OUTILS MATHÉMATIQUES POUR L’IMAGE
Supposons maintenant s < 0 < t avec par exemple s ≤ −t < 0 < t. D’après ce qui précède
De même si s < 0 < −s < t ϕ(s) ≤ ϕ(−s) ≤ ϕ(t) . Donc, pour tout t ∈ R
Soit
C = {(v, t) ∈ X × R | f (v) ≤ t }) .
Comme f est convexe, il est facile de voir que C est convexe, non vide (car f est finie et conti-
nue). L’intérieur de C est un convexe ouvert et la relation (A.3.15) montre que la droite
et
∀(w, t)) ∈ int C s∗ t− < u∗ , w >≥ α
ce qui entraı̂ne
∀(w, t) ∈ C s∗ t − < u∗ , w >≥ α . (A.3.17)
Cela signifie que u∗ est le sous-gradient de f en u. D’autre part (A.3.16) (avec t = 1) donne
Démonstration - La démonstration est laissée en exercice. Elle se fait suivant un schéma main-
tenant classique : si u∗ ∈ ∂(f + g)(u), on définit
C1 = {(v, a) | f (v)− < v − u, u∗ > −f (u) ≤ a } ,
et
C2 = {(v, a) | a ≤ g(u) − g(v) } .
Ce sont deux convexes et on sépare int C1 et C2 grâce au théorème de Hahn- Banach. !
Le résultat suivant s’en déduit mais on peut le montrer directement sans hypothèse de convexité
sur les deux fonctions :
Théorème A.3.5 Supposons que f est Gâteaux-différentiable, ϕ est convexe et que le problème suivant
min f (u) + ϕ(u) ,
u∈X
Dans le cas où X est un espace de Hilbert identifié à son dual, et K un sous-ensemble fermé,
convexe non vide de X , nous allons préciser le sous-différentiel de 1K en u (c’est-à-dire le cône
normal à K en u ) :
Proposition A.3.1 Soit u ∈ K, où K est un sous-ensemble fermé, convexe non vide de X espace de
Hilbert. Alors
λ λ
λ ∈ ∂1K (u) ⇐⇒ λ = c [u + − ΠK (u + )]
c c
pour tout c réel strictement positif, où ΠK est la projection de X sur le convexe K.
Démonstration - Remarquons tout d’abord que ∂1K (u) est un sous-ensemble de X . On rappelle
également que si ΠK est la projection de X sur le convexe fermé K, l’image ΠK (w) d’un élément
quelconque de X est caractérisée par
∀v ∈ K (w − ΠK (w), v − ΠK (w))X ≤ 0 ,
où (·, ·)X désigne le produit scalaire de X . Soit λ ∈ ∂1K (u) : λ est caractérisé par
∀v ∈ K (λ, v − u)X ≤ 0
λ
D’après ce qui précède (en posant w = u + )
c
λ λ λ
λ ∈ ∂1K (u) ⇐⇒ u = ΠK (u + ) ⇐⇒ λ = c [u + − ΠK (u + )] .
c c c
!
Remarque A.3.2 (a) Si f « prend » la valeur −∞, alors f ∗ ≡ +∞. Si f est propre (c’est-à-dire non
indentiquement égale à +∞) alors f ∗ est à valeurs dans R ∪ {+∞}.
(a) On notera désormais "(u) =< ", u >, où < ·, · > désigne le produit de dualité entre X et X " .
Ce produit de dualité coı̈ncide avec le produit scalaire dans le cas où X est un espace de Hilbert, après
identification de X et de son dual .
L’équation (A.3.19) s’écrit alors
Définition A.3.5 Soit A ⊂ X un ensemble (non vide). La fonction d’appui de l’ensemble A est la
fonction σA : X " → R ∪ {+∞} définie par σA = (1A )∗ où 1A désigne l’indicatrice de A
1
0 si x ∈ A ,
1A (x) =
+∞ sinon.
Proposition A.3.2 Pour toute fonction f : X → R ∪ {+∞}, la fonction f ∗ est convexe et sci pour la
topologie faible *.
où dom f est le domaine de f ( i.e. l’ensemble des éléments u ∈ X tels que f (u) est finie) et
ϕu : X " → R est définie par
ϕu (u∗ ) =< u∗ , u > −f (u) .
Chacune des fonctions ϕu est affine et continue, donc convexe et sci pour la topologie faible de
X " . Il en est de même pour le sup. !
Plus généralement
Proposition A.3.3 Soit f une fonction positivement homogène (propre) de X dans R ∪ {+∞}. Sa
conjuguée f ∗ est l’indicatrice d’un sous-ensemble K convexe et fermé de X " .
Démonstration - Soit f une fonction positivement homogène (propre) de X dans R ∪ {+∞}. Soit
u∗ ∈ X " . Deux cas se présentent :
• ∃uo ∈ X tel que :u∗ , uo ; − f (uo ) > 0 . Alors par homogénéité, pour tout λ > 0
Démonstration - Posons
donc
−f ∗ (u∗ ) − g ∗ (−u∗ ) ≤ f (u) + g(u) ;
en passant au sup sur le terme de gauche et à l’inf sur celui de droite, on obtient
β ≤α.
C = int({(u, t) ∈ X × R | f (u) ≤ t }) ,
et
D = {(u, t) ∈ X × R | t ≤ α − g(u) }) '= ∅ .
Comme f et g sont convexes, C et D sont convexes. Comme f est continue en uo , C est non
vide. De plus C ∩D = ∅. On peut donc appliquer le théorème de Hahn-Banach : on peut trouver
(u∗o , so ) ∈ X " × R\{0, 0} et c ∈ R tels que
et
∀(w, σ) ∈ C c ≥< u∗o , w > +σso . (A.3.20)
Comme σ peut tendre vers +∞ d’après la définition de C, on obtient so ≤ 0.
Supposons que so '= 0. Dans ce cas, so < 0 et (quitte à diviser tout par |so |) on peut supposer
que so = −1. On obtient
C̄ = {(u, t) ∈ X × R | f (u) ≤ t } ;
on peut donc l’appliquer au couple (u, f (u) pour tout u ∈ X ce qui donne
Finalement,
g ∗ (−u∗o ) ≤ −c − α et f ∗ (u∗o ) ≤ c .
Donc
α ≤ −f ∗ (u∗o ) − g ∗ (−u∗o ) ≤ β ≤ α
ce qui finit la démonstration.
Si so = 0. Comme f est continue en uo on peut trouver une boule B(uo , R) avec R > 0 incluse
dans dom f . On a alors (uo , α − g(uo )) ∈ D et pour tout w ∈ B(uo , R), (uo + w, f (uo ) + εo ) ∈ C :
d’où
< u∗o , uo + w >≤ c ≤< u∗o , uo > .
Ceci entraı̂ne que u∗o = 0 et une contradiction puisque (u∗o , so ) '= (0, 0). !
Remarque A.3.3 Notons que dans le théorème le « sup » dans le terme de droite est toujours atteint
(c’est un « max » ) ce qui n’est pas le cas dans le terme de gauche. où l’inf n’est pas nécessairement
atteint.
f (u) = max
∗ !
(< u∗ , u > −f ∗ (u∗ )) .
u ∈X
Démonstration - Posons g = 1{u} . On a g ∗ (u∗ ) =< u∗ , u > pour tout u∗ ∈ X " . Les fonctions f et
g sont convexes et f est continue en u ∈dom g. On a donc d’après le théorème précédent :
!
On peut généraliser ce résultat à des fonctions convexes sci.
104 ANNEXE A. QUELQUES OUTILS MATHÉMATIQUES POUR L’IMAGE
Théorème A.3.8 Soit f : X → R ∪ {+∞} une fonction convexe semi-continue inférieurement. Alors,
pour tout u ∈ X
f (u) = max
∗ !
(< u∗ , u > −f ∗ (u∗ )) .
u ∈X
Démonstration - Voir [Azé] p. 89. C’est une démonstration similaire à celle du théorème (A.3.7).
!
Terminons par un résultat de bi-dualité que nous admettrons.
Théorème A.3.9 Soit f une fonction propre, convexe et sci de X dans R ∪ {+∞}. Alors f ∗∗ = f .
Donc
f ∗ (u∗ ) ≥ :u∗ , u; − f (u) ≥ sup{:u∗ , v; − f (v) | v ∈ X } = f ∗ (u∗ ) .
On obtient : f (u) + f ∗ (u∗ ) = :u∗ , u;.
Réciproquement, si f (u) + f ∗ (u∗ ) = :u∗ , u; on a pour tout v ∈ X
u∗ ∈ ∂f (u) ⇐⇒ u ∈ ∂f ∗ (u∗ ) .
Les différentes photos et/ou diagrammes sont extraits des supports de cours en ligne sui-
vants
– Cours MASTER IAD, 2005-2006, Isabelle Bloch - ENST / Département Signal & Images,
Florence Tupin - ENST / Département Signal & Images, Antoine Manzanera- ENSTA /
Unité d’Électronique et d’Informatique
– Cours de Traitement d’Image, Max Mignotte, Département d’Informatique et de Re-
cherche Opérationnelle, Montréal,
http://www.iro.umontreal.ca/˜mignotte/ift6150
– Stéphane BRES – Département Informatique – INSA de LYON
– Valérie PERRIER - Laboratoire de Modélisation et Calcul de l’IMAG, INPG, Grenoble
106 ANNEXE A. QUELQUES OUTILS MATHÉMATIQUES POUR L’IMAGE
Bibliographie
107
108 BIBLIOGRAPHIE
Table des matières
1 Introduction 3
1.1 Qu’est-ce qu’une image numérique ? . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.1.1 Quelques définitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.2 Qu’est-ce que le traitement d’image ? . . . . . . . . . . . . . . . . . . . . . . . . . 8
1.2.1 Quelques aspects du Traitement d’Image . . . . . . . . . . . . . . . . . . . 9
1.2.2 Applications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
3 Filtrage 31
3.1 Filtrage linéaire des signaux 1D . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
3.2 Filtrage 2D : convolution /médian . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
3.2.1 Filtrage spatial . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
3.2.2 Filtrage fréquentiel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
3.3 Filtrage différentiel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
3.3.1 Calcul par convolution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
3.3.2 Equation de la chaleur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
3.3.3 Mise en œuvre numérique . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
109
110 TABLE DES MATIÈRES