Documente Academic
Documente Profesional
Documente Cultură
Mémoire
Master Analyse Numérique et Optimisation
Laboratoire : Analyse Numérique et Optimisation «LANO»
Formation : Mathématiques
Année universitaire
2018/2019
Remerciements
Je souhaite aussi remercier messieurs les membres du jury pour leur pré-
cieux temps accordé à l’étude de mon mémoire.
Je tiens aussi à remercier tous ceux qui ont, de près ou de loin, aidé à rendre
ce travail possible, que ce soit par des idées ou par des encouragements.
1
Dédicaces
Je dédie ce mémoire :
études.
loin.
2
Table des matières
Remerciements 1
Dédicaces 2
Résumé 7
Introduction générale 8
1 Traitement d’images 10
1.1 Historique sur le traitement d’image . . . . . . . . . . . . . . . . . . . . . 10
1.2 Entrées-Sorties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
1.3 Domaines d’applications . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
1.4 Imagerie médicale . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
1.4.1 Les intérêts de l’imagerie médicale . . . . . . . . . . . . . . . . . . 11
1.4.2 Les grands types d’imagerie . . . . . . . . . . . . . . . . . . . . . . 11
1.5 La chaîne de traitement des images . . . . . . . . . . . . . . . . . . . . . 11
1.6 Quelques méthodes de traitement d’image . . . . . . . . . . . . . . . . . . 12
2 Image numérique 13
2.1 Définition d’image numérique : . . . . . . . . . . . . . . . . . . . . . . . . . 13
2.2 Caractéristiques d’une image numérique . . . . . . . . . . . . . . . . . . . 14
2.2.1 Pixel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
2.2.2 La résolution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
2.2.3 Dimension . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
2.2.4 Contours et texture . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
2.2.5 Bruit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
2.2.6 Histogramme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
2.3 Types d’images . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
2.3.1 Images binaires (noir ou blanc) . . . . . . . . . . . . . . . . . . . . 16
2.3.2 Images en niveaux de gris . . . . . . . . . . . . . . . . . . . . . . . 17
2.3.3 Images en couleurs . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
2.4 Images bitmap et images vectorielles . . . . . . . . . . . . . . . . . . . . . 18
3
3 Segmentation d’images 19
3.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
3.2 Définition de la segmentation . . . . . . . . . . . . . . . . . . . . . . . . . 19
3.3 Définition formelle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
3.4 Le choix d’une technique de segmentation : . . . . . . . . . . . . . . . . . . 21
3.5 Objectifs de la segmentation . . . . . . . . . . . . . . . . . . . . . . . . . . 21
3.6 Approches de segmentation . . . . . . . . . . . . . . . . . . . . . . . . . . 21
3.6.1 Segmentation basée sur l’approche pixel . . . . . . . . . . . . . . . 22
3.6.1.1 Segmentation par seuillage . . . . . . . . . . . . . . . . . . 22
3.6.1.2 Segmentation par classification . . . . . . . . . . . . . . . 24
3.6.2 Segmentation basée sur l’approche région . . . . . . . . . . . . . . . 25
3.6.2.1 Segmentation par fusion de régions (Merge) . . . . . . . . 26
3.6.2.2 Segmentation par division de régions (Split) . . . . . . . . 26
3.6.2.3 Segmentation par division-fusion (Split and Merge) . . . . 27
3.6.2.4 Croissance de région(region growing) . . . . . . . . . . . . 27
3.6.3 Segmentation basée sur l’approche contour . . . . . . . . . . . . . . 28
3.6.3.1 Méthodes dérivatives : . . . . . . . . . . . . . . . . . . . . 28
3.6.3.2 Méthodes analytiques . . . . . . . . . . . . . . . . . . . . 32
3.6.3.3 Méthodes déformables . . . . . . . . . . . . . . . . . . . . 32
3.6.4 Les limites de segmentation par contour . . . . . . . . . . . . . . . 33
Conclusion et perspectives 57
Bibliographie 59
4
Table des figures
5
4.15 Application du filtre Laplacien de Gaussienne . . . . . . . . . . . . . . . . 56
6
Résumé
Dans ce mémoire, nous présentons dans un première temps les différents méthodes de
segmentation. Dans un deuxième temps, nous proposons une étude comparative de ces
différentes approches, les résultats obtenus montrent les avantages et les limites de chaque
méthode étudié.
7
Introduction générale
Il existe de nombreuses méthodes de segmentation, que l’on peut regrouper en trois prin-
cipales classes :
• Approche contour : on considère que les primitives à extraire sont les lignes de
contrastes séparant des régions de niveaux de gris différents et relativement ho-
mogènes, ou bien des régions de texture différentes qu’on peut regrouper en trois
catégories : les méthodes dérivatives, les méthodes analytiques et les méthodes
déformables.
Nous allons choisir certain méthodes de segmentation pour étude en détails . Sont : Otsu,
K-means, Croissance de région, le gradient, le laplacien.
8
• Le troisième chapitre est consacré à la description des méthodes de segmentation
d’images, où nous avons décrit un certain nombre de méthodes classiques de seg-
mentation des différentes approches.
• Le quatrième chapitre contient le fruit de notre travail, nous exposons une étude
des différentes méthodes de segmentation, a savoir l’algorithme d’otsu, K-means,
croissance de régions, et celle de détection de contour(le gradient/ le laplacien).
Nous terminons ce travail par une conclusion générale.
9
Chapitre 1
Traitement d’images
Le véritable essor du traitement d’images n’a lieu que dans les années 1960 quand les
ordinateurs commencent à être suffisamment puissants pour travailler sur des images. Peu
après, la redécouverte de la transformée de Fourier rapide (FFT) révolutionne le domaine,
en rendant possible les manipulations du contenu fréquentiel des signaux sur ordinateur.
Cependant, l’essentiel des recherches porte encore, à cette époque, sur l’amélioration des
images et leur compression.
Les années 1990 sont témoin de l’amélioration constante des opérateurs. La recherche
médicale devient un très gros demandeur en traitement d’images pour améliorer les diag-
nostics faits à partir des nombreuses techniques d’imagerie médicale, la technique reine
étant l’IRM. Les publicitaires, puis le grand public se familiarisent avec la retouche d’image
grâce au logiciel Photoshop, et le traitement d’images dans un objectif esthétique se ré-
pand avec l’apparition d’autres logiciels dédiés (The Gimp, Paint Shop Pro). Enfin, la
décennie s’achève sur l’engouement pour les ondelettes et les images multimodales [1].
1.2 Entrées-Sorties
Dans le domaine des images, on fait habituellement la distinction entre trois catégories :
• Le traitement des images, qui opère une transformation image → image (en anglais
on parle d’«image processing»).
• L’analyse d’images, qui opère une transformation image → mesures (en anglais on parle
d’«image analysis»).
• L’analyse sémantique, qui crée une description de haut niveau à partir d’images (en
anglais «image understanding») [2].
10
1.3 Domaines d’applications
L’image est impliquée dans de nombreux domaines. Concernant les grandes applica-
tions actuelles, on peut en citer :
L’objectif est de créer une représentation visuelle intelligible des os, des tissus et des
organes de façon toujours plus précise et moins invasive, elle offre aujourd’hui une vue
imprenable sur ces mêmes organes en pleine action et permet de visualiser jusqu’au mé-
tabolisme cellulaire [4].
11
de la troisième étape (l’interprétation). Ceci peut engendrer parfois des erreurs.
Par conséquent, des méthodes d’évaluation de la segmentation sont généralement
utilisées afin de quantifier les résultats obtenus pour une meilleure interprétation
de l’image [5].
12
Chapitre 2
Image numérique
La numérisation d’une image est la conversion de celle-ci de son état analogique en une
image numérique représentée par une matrice bidimensionnelle de valeurs numériques
f(x,y), comme la montre la figure où :
La valeur en chaque point exprime la mesure d’intensité lumineuse perçue par le capteur.
13
Figure 2.2 – Représentation d’image numérique.
2.2.1 Pixel
Contraction de l’expression anglaise " Picture Elements " : éléments d’image, le pixel
est le plus petit point de l’image, c’est une valeur numérique représentative des intensités
lumineuses. Le pixel est le plus petit élément que peuvent manipuler les matériels et
logiciels sur l’image. La lettre A, par exemple, peut être affichée comme un groupe de
pixels dans la figure ci-dessous [8].
14
2.2.2 La résolution
La résolution d’une image correspond au niveau de détail qui va être représenté sur
cette image. C’est le nombre de pixels par unité de longueur dans l’image à numériser,
elle est en dpi (dots per inch) ou en ppp (points par pouce).
Plus le nombre de pixels est élevé par unité de longueur de l’image à numériser, plus
la quantité d’inflation qui décrit l’image est importante et plus la résolution est élevée [9].
2.2.3 Dimension
C’est la taille de l’image. Cette dernière se présente sous forme de matrice dont les
éléments sont des valeurs numériques représentatives des intensités lumineuses (pixels).
Le nombre de lignes de cette matrice multiplié par le nombre de colonnes nous donne le
nombre total de pixels dans une image [9].
2.2.5 Bruit
Un bruit dans une image est considéré comme un phénomène de brusque variation
de l’intensité d’un pixel par rapport à ses voisins, il provient de l’éclairage des dispositifs
optiques et électroniques du capteur [11].
Figure 2.4 – Image sans bruit Figure 2.5 – Image avec bruit
2.2.6 Histogramme
L’histogramme des niveaux de gris ou des couleurs d’une image est une fonction qui
donne la fréquence d’apparition de chaque niveau de gris (couleur) dans l’image. Pour di-
minuer l’erreur de quantification, pour comparer deux images obtenues sous des éclairages
différents, ou encore pour mesurer certaines propriétés sur une image.
15
gris (couleur) et de voir entre quelles bornes est repartie la majorité des niveaux de gris
(couleur) dans les cas d’une image trop claire ou d’une image trop foncée [10].
16
Figure 2.7 – Image binaire.
Le nombre de niveaux de gris dépend du nombre de bits utilisés pour décrire la " couleur "
de chaque pixel de l’image. Plus ce nombre est important, plus les niveaux possibles sont
nombreux [9].
17
2.3.3 Images en couleurs
L’image couleur est la superposition de trois couleurs de base. Il existe plusieurs modes
de représentation de la couleur. Le plus utilisé pour le traitement des images numériques
est l’espace couleur Rouge, Vert, Bleu (RVB). On définit, alors un plan de niveau de gris
pour chacune des trois couleurs.
Cet espace couleur est basé sur la synthèse additive des couleurs. Chaque pixel est définit
par une couleur. Cette dernière est le résultat d’un mélange de trois valeurs en niveau de
gris des composantes (RVB), figure 2.5 [10].
• Les images bitmap (appelées aussi images matricielle) : il s’agit d’images pixel-
lisées, c’est-à-dire un ensemble de points (pixels) contenus dans un tableau, chacun
de ces points possédant une ou plusieurs valeurs décrivant sa couleur.
• Les images vectorielles : Les images vectorielles sont des représentations d’en-
tités géométriques telles qu’un cercle, un rectangle ou un segment. Ceux-ci sont re-
présentés par des formules mathématiques (un rectangle est défini par deux points,
un cercle par un centre et un rayon, une courbe par plusieurs points et une équa-
tion).
Le principal inconvénient des images matricielles est qu’elles ne peuvent être redimen-
sionnées sans perte de qualité. En revanche, les images vectorielles peuvent facilement
s’afficher sous différentes échelles et s’adaptent à la qualité du dispositif d’affichage [11].
18
Chapitre 3
Segmentation d’images
3.1 Introduction
L’homme sait naturellement séparer des objets dans une image. Pour séparer un objet
d’un fond, l’humain se base sur des connaissances de haut niveau qui lui permettent de
détecter dans l’image ce qui l’intéresse.
19
Figure 3.1 – Exemple de segmentation d’image
20
I La quatrième exprime le critère d’homogénéité pour la segmentation en régions
disjointes.
.
Une région est un ensemble connexe de points image pixels ayant des propriétés com-
munes (niveau de gris, couleur, texture...) qui les différencient des pixels régions voisins.
21
Figure 3.2 – Différents méthodes de segmentation..
(
1 si f (x, y) ≥ T
G(x, y) = (3.1)
0 si f (x, y) < T
22
Figure 3.3 – Seuillage simple d’un histogramme
2 si f (x, y) ≥ T2
G(x, y) = 1 si T1 ≤ f (x, y) < T2 (3.2)
0 si f (x, y) < T1
23
a) Méthodes de seuillage globale :
Figure 3.5 – Allures idéales d’un histogramme. (a) : unimodal, (b) : bimodal et (c)
multimodal.
A l’inverse des méthodes globales qui ne considèrent que la valeur du pixel, les
méthodes locales prennent en considération la valeur des pixels voisins pour le
calcul des seuils. Les méthodes de seuillage locale sont confrontées au choix de la
taille de la fenêtre de voisinage. Celle-ci doit être suffisamment petite pour préserver
les détails locaux et suffisamment larges pour supprimer le bruit [15].
En général, on peut les répartir en : méthodes supervisées qui se basent sur un mo-
dèle exacte, fourni par un expert, des classes à obtenir et les méthodes non supervisées
24
ou aucune connaissance à priori n’est disponible.
a) Méthodes supervisées :
Les méthodes de classification supervisée nécessitent une base d’images déjà seg-
mentées manuellement. Cette base permet de faire un apprentissage du classifieur.
Une fois les paramètres du classifieur déterminés, de nouvelles images peuvent être
segmentées.
L’exemple le plus simple de ces méthodes est le classifieur du plus proche voisin
où chaque pixel est affecté à la même classe que celle du pixel présent dans la base
d’apprentissage ayant le plus proche niveau de gris [16].
25
Ces méthodes utilisent principalement les critères de décision pour segmenter l’image en
différentes régions selon la similarité des pixels. Nous proposons dans la suite les diffé-
rentes méthodes de segmentation de type région [17].
• Cette méthode dépend du critère de fusion qui peut influer sur le résultat final de
la segmentation.
26
3.6.2.3 Segmentation par division-fusion (Split and Merge)
Son principe est de combiner les deux dernières méthodes présentées afin de pallier à
leurs inconvénients de la manière suivante : une première étape de division donne comme
résultat, une image divisée en plusieurs régions. Par la suite, une étape de fusion inter-
vient afin de corriger le résultat obtenu par la première étape, en regroupant les régions
similaires. Ce procédé est répété jusqu’à l’obtention d’une segmentation [14].
• Les régions obtenues ne correspondent pas, dans tous les cas, aux objets représentés
dans l’image.
• La difficulté d’identifier les critères pour agréger les pixels ou pour fusionner et
diviser les régions [18].
27
• La simplicité et la rapidité de la méthode.
• Une mauvaise sélection des germes ou un choix du critère de similarité mal adapté
peuvent entraîner des phénomènes de sous-segmentation ou de sur-segmentation.
Les méthodes de segmentation basées sur l’approche contour ont donc pour objectif de
trouver les lieux de fortes variations du niveau de gris [10].
Nous présentons dans ce qui suit les différentes méthodes adaptées pour la détection des
contours dans des images en niveaux de gris. Pour ces dernières, deux familles de méthodes
sont distinguées :
28
Figure 3.9 – Contour et ses dérivées.
• Les algorithmes basés sur le Laplacien (ou opérateurs du second ordre) [9].
Les contours dans une image étant caractérisés par une forte variation de contraste. Il
est évident de chercher un opérateur permettant de caractériser les zones ou les niveaux
de gris augmentent ou diminuent très vite. La dérivée (le gradient) répond tout à fait à
ce problème.
Le gradient, en un pixel, est un vecteur caractérisé par une amplitude et une direction.
L’approximation des deux dérivées est donnée par la relation suivante :
∂I(x, y) ∂I(x, y)
= I(x + 1, y) − I(x, y), = I(x, y + 1) − I(x, y) (3.3)
∂x ∂y
Le module :
q
G(x, y) = k∇I(x, y)k = Gx (x, y)2 + Gy (x, y)2 (3.4)
La direction (argument) :
!
Gx (x, y)
arg G(x, y) = arct (3.5)
Gy (x, y)
29
a) Opérateurs de Sobel et Prewitt :
∆I ∆I
= hj ∗ I(i, j) et = hi ∗ I(i, j) (3.6)
∆j ∆i
Avec
1 0 −1 1 c 1
hj = c 0 −c et hi = 0 0 0 (3.7)
1 0 −1 −1 −c −c
Les matrices hi et hj sont appelées masques, Les masques de Prewitt sont définis
par c = 1 et les masques de Sobel par c = 2 [9].
b) Opérateur de Roberts(1965)
La figure suivante nous montre les contours détectés par ces filtres :
30
Figure 3.10 – Détection de contour par les différents filtres.
Dans cette approche, l’extraction des contours est basée sur le calcul des dérivées se-
condes (le Laplacien) [18].
∂ 2f ∂ 2f
∇f (i, j) = (i, j) + (i, j) (3.9)
∂x2 ∂y 2
L’approximation des deux dérivées est donnée par la relation suivante :
• Laplacien en connexité 4 :
0 1 0
1 −4 1 (3.11)
0 1 0
• Laplacien en connexité 8 :
1 1 1
1 −8 1 (3.12)
1 1 1
31
La figure suivante représente la détection de contour en utilisant le Laplacien :
• Une bonne localisation : les points contours doivent être le plus près possible
de leur position réelle dans l’image.
Le détecteur de contour de Canny est le plus utilisé. Il est basé sur trois critères : la détec-
tion (robustesse au bruit), la localisation (précision de la localisation du point contour),
l’unicité (une seule réponse par contour).
Au filtre de Canny, Deriche a proposé un autre filtre (condition initiale différente) qui
permet une simplification de son implémentation nous préférons souvent le détecteur de
Deriche, qui répond exactement aux mêmes critères de qualité que celui de Canny [20].
32
L’intérêt principal des contours actifs est de détecter des objets dans une image en uti-
lisant les techniques d’évolution de courbes. L’idée est de partir d’une courbe initiale,
généralement un carré ou un cercle, et de la déformer jusqu’à obtenir le contour de l’ob-
jet.
En effet,celui-ci présente quelques inconvénients tels que la sensibilité à l’initialisation, au
bruit, et le réglage difficile de ses différents paramètres [21].
Les contours actifs tirent leur origine des modèles élastiques, mais la communauté s’ac-
corde à les attribuer à l’équipe Kass, Witkin et Terzopoulos, qui introduisirent les Snakes
ou courbes minimisantes. Les snakes tiennent leur nom de leur aptitude à se déformer
comme des serpents.
L’approche est variationnelle, c’est à dire que l’équation d’évolution du contour actif se
déduit de la minimisation d’une énergie modélisant l’objet d’intérêt. Depuis la publica-
tion de cette équipe, les modèles déformables sont devenus un sujet très important pour
la communauté du traitement d’images [22].
Un contour actif est une courbe définie dans l’image et qui est capable de se mouvoir
sous l’influence de plusieurs forces qui vont la tirer ou la pousser vers la forme. Un snake
consiste à placer aux alentours de l’objet à détecter une ligne initiale de contour, l’évolu-
tion se fait à travers un processus itératif qui déforme la courbe à chaque itération jusqu’à
sa position finale [22].
• Les contours extraits selon les méthodes classiques souvent ne correspondent pas
nécessairement à la limite des objets. Dans de nombreuses images de basse qualité,
quelques-unes des méthodes produisent des faux contours.
33
Chapitre 4
4.1 Introduction
La segmentation prend un rôle prépondérant dans le traitement d’image, elle est faite
avant les étapes d’analyse et de prise de décision dans plusieurs processus d’analyse
d’image, telle que la détection des objets. Elle facilite la localisation et la délimitation
des entités présentes dans l’image. Nous avons discuté les différents méthodes de segmen-
tation dans le chapitre précédent.
Dans ce chapitre, nous allons mettre l’accent sur des méthodes des 3 approches de la
segmentation en détails.
L’algorithme itératif calcule alors le seuil optimal T qui sépare ces deux classes afin que
la variance intra-classe σw2 (T ) (moyenne pondérée des variances de chaque classe) soit
minimale .
• Pour la classe 1 :
34
Proportion :
T
X
q1 (T ) = p(i) (4.2)
i=0
Moyenne :
T
1 X
m1 (T ) = ip(i) (4.3)
q1 (T ) i=0
Variance :
T
1 X
σ12 (T ) = (i − m1 (T ))2 p(i) (4.4)
q1 (T ) i=0
Les intensités i sont à valeurs dans 0, ...l − 1, p(i) = h(i)/(M × N ) est l’histo-
gramme normalisé et h l’histogramme.
• Pour la classe 2 :
Proportion :
L−1
X
q2 (T ) = p(i) (4.5)
i=T +1
Moyenne :
L−1
1 X
m2 (T ) = ip(i) (4.6)
q2 (T ) i=T +1
Variance :
L−1
1
σ22 (T ) (i − m2 (T ))2 p(i)
X
= (4.7)
q2 (T ) i=T +1
Implémentation :
Calculer pour tous les seuils T = 0, ...L − 1, la variance intra-classe σw2 (T ), et retenir
le seuil T qui minimise σw2 (T ).
Pour T = 0 → L − 1 :
| Calculer σw2 (T )
35
Figure 4.1 – Image segmentée avec méthode d’otsu
Limitations :
avec C l’ensemble des clusters et pour chaque cluster c, mc son centre (appelé noyau),
V (c) sa variance et D = Uc∈C l’ensemble des données que l’on cherche à classer.
36
4.2.2.2 L’algorithme des k-means
Dans cette section, nous présentons l’algorithme K-means pour la classification de
pixels. Le but principal de cet algorithme est de servir de méthode de segmentation
d’images en séparant ses différentes régions ou classes de pixels. En appliquant les règles
de base de cet algorithme, l’algorithme décèle les centroids des classes dont le nombre est
prédéfini par l’utilisateur.
Pour ce type d’algorithme, il faut toujours définir le nombre de classes avant le début
du traitement. En premier lieu, un nombre de pixels équivalent au nombre de classes
est déterminé, ces pixels seront considérés comme étant les centres des classes initiales.
Ensuite chaque pixel est mis dans la classe ayant le centre le plus proche. On calcule les
centres de gravité de ces nouveaux ensembles qui sont considérés à leur tour comme étant
les nouveaux centres des classes et on réitère l’opération. On répète ce processus jusqu’à ce
qu’il y ait stabilité des classes et de leur centre. Ainsi l’algorithme des k-moyennes classe
les objets selon leurs attributs en k parties (ou clusters) en supposant que les attributs
des objets forment un espace vectoriel. L’objectif est de minimiser la variance intra-cluster.
Dans notre cas, les centroids sont présentés par des niveaux de gris particuliers auxquels
seront affectés les pixels en fonction de la distance de similarité entre le niveau de gris de
ces derniers et ceux des centroides. Les étapes de l’algorithme k-means sont détaillées par
le pseudo Algorithme :
37
Figure 4.2 – Exemple illustratif du déroulement de l’algorithme des K-Means.
a) Initialisation : L’initialisation des K centroides Si(i=1..k) peut se faire de deux
manières différentes :
b) (Re-) Affectation : Ayant défini les centroides Si(i=1..k) , l’affectation ou la ré-
affectation des pixels s’effectue selon la distance euclidienne entre le pixel et le
centroide. Le pixel est donc affecté à la classe dont la distance est minimale.
c) Calcul des nouveaux centroides : Dans notre cas la valeur du nouveau cen-
troide se calcule selon la formule ci-dessous. Il représente la valeur moyenne des
pixels appartenant à la classe i.
n
1X
Si0 = Pk (4.11)
n k=1
d) Critère d’arrêt : Le critère d’arrêt peut être le nombre d’itération ou bien une
fonction de performance F à minimiser (distance intra régions) qui peut s’exprimer
de la façon suivante :
k nb− pixel
kPj − Si k2
X X
F= (4.12)
i=1 j=1
Avec :
38
4.2.2.3 Résultats et discussion :
Dans cette partie on va discuter des deux grandes inconvénients majeurs de l’algo-
rithme k-means :
Il suffit de lancer K-means plusieurs fois (avec le même nombre K de clusters et des
initialisations initiales des centroids différentes) et voir la composition des clusters
qui se forment. Par la suite garder celui qui convient à votre besoin.
39
le jeu de données est grand et qu’on n’ait pas un a priori ou des hypothèses sur
les données. Un nombre K grand peut conduire à un partitionnement trop frag-
menté des données. Ce qui empêchera de découvrir des patterns intéressants dans
les données. Par contre, un nombre de clusters trop petit, conduira à avoir, poten-
tiellement, des clusters trop généralistes contenant beaucoup de données.
Malheureusement, il n’existe pas de procédé automatisé pour trouver le bon nombre
de clusters.
La méthode la plus usuelle pour choisir le nombre de clusters est de lancer K-Means
avec différentes valeurs de K et de calculer la variance des différents clusters. La
variance est la somme des distances entre chaque centroid d’un cluster et les dif-
férentes observations inclues dans le même cluster. Ainsi, on cherche à trouver un
nombre de clusters K de telle sorte que les clusters retenus minimisent la distance
entre leurs centres (centroids) et les observations dans le même cluster. On parle
de minimisation de la distance intra-classe.
D (cj , xi )2
X X
V = (4.13)
j xi →cj
Avec :
• cj : le centre de cluster ( le centroid).
• xi : la i ème observation dans le cluster ayant pour centroïd cj .
• D (cj , xi ) : La distance (euclidienne ou autre) entre le centre du cluster et le
point xi .
40
Figure 4.4 – Nombre optimal de K par la méthode d’Elbow
On remarque sur ce graphique, la forme d’un bras où le point le plus haut repré-
sente l’épaule et le point où K vaut 7 représente l’autre extrémité : la main.
Le nombre optimal de clusters est le point représentant le coude. Ici le coude peut
être représenté par K valant 2 ou 3. C’est le nombre optimal de clusters. Générale-
ment, le point du coude est celui du nombre de clusters à partir duquel la variance
ne se réduit plus significativement. En effet, la chute de la courbe de variance entre
1 et 3 clusters est significativement plus grande que celle entre 5 clusters et 7 clus-
ters.
Le fait de chercher le point représentant le coude, a donné nom à cette méthode :
La méthode Elbow (coude en anglais).
41
4.3 Méthodes de segmentation basée sur l’approche
région
4.3.1 Segmentation par croissance de régions
• On se fixe un point de départ dans l’image. Ce point est appelé germe de la région
cherchée.
• Par une procédure récursive (i.e de proche en proche), on inclus dans la région tous
les points connexes qui vérifient le critère.
Maintenant, nous donnons un exemple de croissance de la région. Étant donné une ma-
trice connue A :
1 0 4 7 5
1 0 4 7 7
0 1 5 5 5
(4.14)
2 0 5 6 5
2 2 5 6 4
1 0 5 7 5
1 0 5 7 7
0 1 5 5 5
(4.15)
2 0 5 5 5
2 2 5 5 5
Les pixels visibles autour de la valeur de niveaux de gris de 4, 5, 6 pixels sont bien
intégrés dans la région de croissance, et les pixels de bordure ayant des valeurs de niveaux
de gris 0, 1, 2, 7 sont devenues des frontières.
42
Maintenant prenons un seuil T = 3, le résultat de la croissance de la nouvelle région
est :
5 5 5 5 5
5 5 5 5 5
5 5 5 5 5
(4.16)
5 5 5 5 5
5 5 5 5 5
La matrice entière est divisée en une seule région.La valeur du seuil est donc très impor-
tante.
43
• Le résultat est très sensible à la valeur du seuil :
La figure 4.6 montre nettement que le résultat final dépend très sensiblement du
seuil. Une variation minime du seuil peut conduire à des modifications importantes.
44
Figure 4.7 – Influence de l’ordre du traitement des pixels sur le résultat de la segmenta-
tion CR.
Cet exemple illustre comment l’ordre d’examen des points sur la frontière peut
influencer sur le résultat de l’algorithme. Ainsi, cet algorithme est également très
sensible au choix des amorces.
45
4.4 Méthodes de segmentation basée sur l’approche
contour
4.4.1 Introduction
La mise en évidence des points représentant les contours d’objets dans une image peut
servir à reconnaître des objets présents dans une scène,à différencier des zones de l’image,
à faire de la segmentation d’images, à extraire une information réduite souvent pertinente
pour caractériser l’image.
Un contour se matérialise par une rupture d’intensité dans l’image suivant une direc-
tion donnée. Plusieurs méthodes existent pour détecter cette rupture, les unes plus ou
moins complexes,les autres plus ou moins gourmandes en calculs. Dans la plupart des
cas et en particulier pour ceux présentées ici, la même méthodologie est employée. Elle
s’applique en deux étapes : la première permet de localiser les contours à partir d’un
calcul de Gradient ou de Laplacien dans des directions privilégiées tout en quantifiant
l’importance du contour.La seconde étape va permettre d’isoler les contours du reste de
l’image à partir d’un seuillage judicieux. Plusieurs méthodes permettent de déterminer le
Gradient ou le Laplacien d’une image. Il en est de même des techniques de seuillage. Ces
deux étapes sont indépendantes, il existe donc un grand nombre de combinaisons calcul
de Gradient-opération de seuillage conduisant à la mise en évidence des contours.
Dans cette section, on va décrire dans la première partie les techniques de calcul du Gra-
dient (détecteurs par masques de Roberts, Prewitt, Sobel). La seconde partie focalise sur
les types de seuillage pouvant être appliqués sur le module du gradient de l’image. La troi-
sième partie aborde les calculs de Laplacien (filtre laplacien, filtre « chapeau mexicain »).
46
Le principe de la détection de contours par l’utilisation du gradient consiste à calcu-
ler d’abord le gradient de l’image dans deux directions orthogonales puis le module du
gradient. Il s’agira ensuite d’effectuer une sélection des contours les plus marqués, c’est-à-
dire les points de plus fort contraste par un seuillage adéquat, les directions des contours
étant orthogonales à la direction α0 déterminée en tout pixel de l’image (voir ci-dessous).
Pour chaque opérateur, deux masques sont utilisés de façon à déterminer le gradient
de l’image dans deux directions orthogonales.
47
L’origine du masque est le point -1.
Dans le repère ci-dessus, la réponse impulsionnelle h(m, n) du masque est définie par :
h(0, 0) = −1
h(1, 0) = 1
Il s’agit bien d’un calcul de gradient suivant l’axe horizontal. En faisant subir une rotation
de π/2 au premier masque,il apparaît le filtre suivant dont l’origine est le point 1 :
h(0, 0) = 1
h(0, −1) = −1
La corrélation de ce masque avec l’image f (i, j) permet bien d’implanter un gradient dans
la direction verticale :
0
X X
h(m, n)f (m + i, n + j) = h(0, 0)f (i, j) + h(0, −1)f (i, j − 1) = f (i, j) − f (i, j − 1)
m=0 n=−1
(4.21)
La figure 4.9 illustre un exemple de gradient en utilisant l’opérateur de Roberts (voir
programme 4).
48
(a) Image originale (b) Contours horizontaux (c) Contours verticaux
(d) Module
1 0
0 −1
L’origine est le point du haut à droite si bien que la réponse impulsionnelle est telle que :
h(−1, 0) = 1
h(0, −1) = −1
49
La sortie obtenue après filtrage est :
0 X
X 0
h{m, n}f (m+i, n+j) = h(−1, 0)f (i−1, j)+h(0, −1)f (i, j−1) = f (i−1, j)−f (i, j−1)
n=1 n=1
(4.23)
(d) Module
Le majeur inconvénient de ces masques réside dans leur forte sensibilité au bruit du fait de
l’implantation de la dérivation qui se traduit par un filtrage passe-haut. D’autres masques
ont ainsi été proposés afin de rendre le filtrage moins sensible au bruit.
Le calcul de gradient est mené par l’intermédiaire de deux masques, le premier effectuant
un gradient horizontal, le second un gradient vertical.Là encore, le deuxième masque se
déduit du premier par une rotation de π/2 . Les masques sont donnés ci-dessous pour les
contours horizontaux puis verticaux.
50
Lorsque c=1, il s’agit des opérateurs de Prewitt, lorsque c=2, de ceux de Sobel. Par
rapport aux précédents, ces masques ont l’avantage de produire deux effets. Outre le calcul
du gradient dans une direction, ces masques effectuent un lissage dans la direction ortho-
gonale. Ce lissage rend ces masques un peu moins sensibles au bruit que les précédents.
L’origine de ces masques est toujours le pixel central. La réponse impulsionnelle h(m,n)
des filtres de Prewitt et Sobel pour la mise en évidence des contours horizontaux est telle
que :
h(1, −1) = h(1, 1) = 1
h(−1, 1) = h(−1, −1) = −1
h(1, 0) = c
h(−1, 0) = −c
La sortie obtenue après filtrage est :
P1 P1
m=−1 n=−1 h(m, n)f (m + i, n + j) = −f (i − 1, j − 1) − cf (i − 1, j) − f (i − 1, j + 1)
+f (i + 1, j − 1) + cf (i + 1, j) + f (i + 1, j + 1)
(4.24)
L’équation laisse apparaître la double action avec un moyennage horizontal sur trois pixels
sur les lignes au dessus et au dessous du pixel central et un calcul de gradient vertical
entre les deux lignes.
Pour la mise en évidence des contours verticaux, c’est l’autre masque qui est utilisé.La
sortie obtenue après filtrage peut se mettre sous la forme :
P1 P1
m=−1 n=−1 h(m, n)f (m + i, n + j) = (f (i + 1, j + 1) + f (i − 1, j + 1) + cf (i, j + 1))
−cf (i, j − 1) − f (i − 1, j − 1) − f (i + 1, j − 1)
(4.25)
Cette écriture permet elle aussi de mettre en évidence la double action : un gradient
horizontal est en effet calculé sur trois lignes puis un lissage vertical est opéré.
Les deux écritures employées montrent bien que les deux actions, lissage et dérivation, du
filtrage de Prewitt ou de Sobel sont séparables.
La figure suivante propose une illustration de l’application des masques de Sobel (voir
programme 4).
51
(a) Image originale (b) Contours horizontaux (c) Contours verticaux
(d) Module
1 si IM (i, j) > S
Ib (i, j) = (4.26)
0 sinon
52
l’image du module du gradient afin que tous les pixels se trouvent également dans l’inter-
valle [0, 1]. Cette méthode est très simple mais peu efficace.
La figure ci-dessous illustre un exemple de seuillage globale (S=60,120) en utilisant l’opé-
rateur de Sobel (voir programme 5).
Algorithme
53
• Extraction des pixels de niveau supérieur à Sh . Ce sont les pixels P 1 .
• Extraction des pixels de niveau compris entre Sb et Sh . Ce sont les pixels P 2.
• Sélection pour représenter les contours des pixels P 1 et des pixels P2, connexes
aux pixels P 1.
La figure 4.13 illustre un exemple de seuillage par hystérésis avec un seuil haut
= 80 et seuil bas = 60 (voir programme 5)
or on peut définir :
et
∇y (f (x, y + 1) − f (x, y)) = f (x, y + 1) − f (x, y) − (f (x, y) − f (x, y − 1))
(4.30)
∇y (f (x, y + 1) − f (x, y)) = f (x, y + 1) + f (x, y − 1) − 2f (x, y)
54
Ainsi le laplacien peut s’écrire :
∇2 f = f (x + 1, y) + f (x − 1, y) + f (x, y + 1) + f (x, y − 1) − 4f (x, y) (4.31)
Cette opération de calcul de Laplacien peut alors être appliquée à une image par l’inter-
médiaire d’un filtrage avec le masque 3 ∗ 3 suivant :
0 1 0
1 −4 1
0 1 0
D’autres masques peuvent être utilisés :
0 1 0 −1 −1 −1 1 −2 1
1 −4 1 −1 −8 −1 −2 4 −2
0 1 0 −1 −1 −1 1 −2 1
la figure 4.14 illustre une application du laplacien en utilisant les masques ci dessous (voir
programme 6)
0 1 0
1 −4 1
0 1 0
et
−1 −1 −1
−1 −8 −1
−1 −1 −1
56
Conclusion et perspectives
La segmentation d’image est une étape cruciale dans tout processus d’analyse et de
traitement d’image. Elle consiste à préparer l’image afin de la rendre plus exploitable
par un processus automatique telle que l’interprétation. On regroupe généralement les
algorithmes de segmentation en trois grandes classes : segmentation basée sur les pixels,
segmentation basée sur les régions et segmentation basée sur les contours.
Dans ce mémoire,nous nous sommes intéressés aux différents méthodes de segmentation
des trois approches :
La première est la méthode d’otsu : qui est utilisée pour effectuer un seuillage auto-
matique à partir de la forme de l’histogramme de l’image.
La deuxième est la méthode de K-means : elle est basé sur la classification non supervisée,
cet méthode permet d’organiser les pixels de l’image sous forme de classes.
La troisième est la méthode par croissance de régions consiste à faire croitre chaque région
autour d’un pixel de départ.
La quatrième est les méthodes dérivatives (le gradient, laplacien) qui permet de détecter
les variations locales d’intensité.
Nous envisageons un certain nombre de perspectives aux travaux présentés dans cette
thèse.
Nous donnons quelques axes possibles en vue d’améliorer et d’orienter les futures re-
cherches à la fois sur les problèmes généraux de la segmentation d’images et sur les appli-
cations particulières de la segmentation d’images en imagerie médicales.
- Nous avons testé sur des images médicales en niveaux de gris , il est intéressant
d’appliquer ces approches dans le cas des images couleurs.
- Nous avons vu dans le chapitre 4 des limitations et problèmes des différents ap-
proches :
• L’algorithme K-means souffre des problèmes d’initialisation, il serait intéressant
de surmonter cette difficulté.
• L’algorithme de segmentation par croissance de régions souffre de l’initialisation
des germes, de l’ordre de parcours des pixels voisins et du problème du seuil.Il
serait intéressant de concevoir un seul algorithme complet qui détermine à la
fois les germes, l’ordre et le seuil optimaux.
• Nous avons présenté quelques approches permettant d’ extraire les contours
d’une image. Nous avons également détaillé les différents types de seuillage
pouvant être utilisés notamment pour sélectionner les contours de plus forte
57
(a) Image originale (b) gradient du sobel
58
Bibliographie
[1] Wikipedia.org.
[2] J. Vézien. Traitement des images et vision par machine.
[3] S. Dubuisson. Fondements du Traitement d’images. Novembre 2006.
[4] M. BENAZZOUZ. Analyse intelligente des images médicales : application
aux images microscopiques de cytologie. Thèse de doctorat. Université Abou
Bekr Belkaid( Tlemcen).
[5] S. GHANDOUR. Segmentation d’images couleurs par morphologie mathé-
matique : application aux images microscopiques. Thèse de doctorat, 2010.
[6] M.Bergounioux. Quelques méthodes mathématiques pour le traitement
d’image.
[7] http ://www.map.toulouse.archi.fr/works/panoformation/imagenum/imagenum.html
[8] A.Medjaoui , F.Fares. Segmentation des images par contours actifs : applica-
tion sur les Images Satellitaires à Haute Résolutions. Université Abou Bakr
Belkaid ( Tlemcen), 2012.
[9] S.Benfriha, A.Hamel. Segmentation d’image par Coopération région-contours.
Université KasdiMerbah-Ouargla, 2016.
[10] A.El Allaoui. Contributions à la Segmentation d’Images par Approches Évo-
lutionnistes : Applications aux Images Médicales. Thése de doctorat, 2013.
[11] H.Meriém, R.Mamcha Imén. Segmentation d’images médicales par morpolo-
gie mathématiques. Master en génie biomédical. Université Abou Bakr Belkaïd de
Tlemcen, 2016.
[12] http ://www.tsi.enst.fr/pages/enseignement/ressources/beti/hyste-dyn/node2.html
[13] L.Lechlek, M.Ghougal. La segmentation d’image médicale par la méthode
d’ensemble de niveaux (level sets). Thèse de Master. Université Larbi Ben M’hidi
Oum El Bouaghi.
[14] M.Sandeli. Traitement d’images par des approches bio-inspirées. Thèse de
Master. Université Constantine 2.
[15] S.Belmerabet, N.Bardjak. Segmentation d’image. Thèse de Master. Université
Larbi Ben M’hidi Oum El Bouaghi.
[16] N.Aissou, A.Benkaci. Méthode coopérative pour la segmentation d’image :
Application a l’imagerie médicale . Thèse de Master. Université Abderrahmane
Mira-Bejaia.
[17] A.Bitam. Analyse et Segmentation d’image multispectrales, application aux
images MSG . Thèse de doctorat. Université Tizi-ouzo.
59
[18] C.Houassine. Segmentation d’images par une approche biomimétique hy-
bride. Université universite mohamed bougara-boumerdes.
[19] Y. Gousseau, H.Maitre, D. Matignon, B. Pesquet-Popescu, F. Schmitt. Le traite-
ment des images. Polycopie du cours ANIM. Département TSI -Télécom-Paris.
[20] J.Canny. A computational approach to edge detection, IEEE Trans.On Pat-
tern Analysis and Machine Intelligence.
[21] M.Kass, A.Witkin, D.Terzopoulos Snakes :active contour models . International
journal of computer vision,1987.
[22] M.Sandeli. Traitement d’images par des approches bio-inspirées application
à la segmentation d’images. Université constantine.
[23] M.Melliani. Segmentation d’image par cooperation regions-contours. Thèse
de Master, Ecole national supérieur d’informatique.
60