• Aucun résultat trouvé

Une bibliographie de référence dans le domaine de la vision par ordinateur [Pri09] propose une classification des méthodes de segmentation. Nous nous en inspirons pour présenter quatre grandes familles de méthodes de segmentation. Ces quatre approches sont représentatives de ce que nous sou- haitons pouvoir réaliser en utilisant la carte topologique pour représenter une partition.

3.2.1 Seuillage

Historiquement, les méthodes par seuillage sont les premières approches utilisées en segmentation d’images. L’idée de ces méthodes est d’appliquer un filtre sur l’image et étant donné un seuil, de clas- sifier l’ensemble des éléments de l’image en deux catégories : au-dessus du seuil et en-dessous du seuil [RK82]. Ces deux classes sont couramment appelées l’objet et le fond. La Figure 3.1 présente l’image originale (Figure 3.1a) et le résultat (Figure 3.1b) de la segmentation d’une image en niveau de gris par seuillage en utilisant la valeur médiane du niveau de gris comme valeur seuil. Nous définissons l’objet comme étant les pixels en-dessous du seuil, les pixels au-dessus du seuil sont les pixels de la classe du fond.

Les méthodes de segmentation par regroupement [RK82] (clustering en anglais) sont proches des méthodes de seuillage. Une approche classique utilise l’histogramme1 de l’image afin de déterminer des classes de pixels. Chaque pixel est alors associé à une classe en fonction de sa valeur, puis les pixels sont regroupés en régions par leur position : des ensembles connexes de pixels partageant une même classe sont regroupés dans une même région. La Figure 3.2 montre un exemple de segmentation par regroupement de l’image Figure 3.2a. En utilisant l’histogramme de l’image, Figure 3.2b, l’utilisateur détermine qu’il y a 8 classes de pixels. Ensuite par regroupement de pixels connexes appartenant à la même classe, nous obtenons la partition présentée Figure 3.2c. Cette partition est présentée en fausses couleurs, c’est-à-dire que nous associons à chaque région une couleur différente afin de bien les distin- guer.

1

3.2. Méthodes de segmentation 49

(a) (b)

FIG. 3.1: Exemple de seuillage des valeurs des pixels d’une image 2D : (a) image originale ; (b) image

binaire correspondant au seuillage de l’image originale selon une intensité seuil de 150.

(a) (b) (c)

FIG. 3.2: Exemple de regroupement des valeurs des pixels d’une image 2D : (a) image originale en 256

niveaux de gris ; (b) histogramme de l’image ; (c) image étiquetée correspondant au regroupement des pixels d’après l’histogramme en 8 classes.

50 CHAPITRE 3 - SEGMENTATION D’IMAGES

(a) (b)

FIG. 3.3: Exemple de segmentation par ligne de partage des eaux d’une image 2D : (a) image originale ;

(b) image correspondant à la segmentation par ligne de partage des eaux de l’image originale.

Ces deux méthodes de segmentation ont un caractère global. Nous trouvons dans la littérature de nombreux autres algorithmes pouvant se classer dans cette catégorie, certains avec des critères et prin- cipes plus complexes qui permettent de résoudre des problèmes plus compliqués.

3.2.2 Croissance de régions

Les algorithmes par croissance de régions travaillent à partir de graines (seeds en anglais) et es- saient d’agglomérer les éléments voisins de l’image de manière à respecter un critère : la région finale représentant un objet ou une partie d’un objet. Nous trouvons dans ce type d’approche de nombreux algorithmes de croissance de régions.

La segmentation par ligne de partage des eaux [VS91] (watershed en anglais) est une technique de segmentation par croissance de régions inspirée des bassins versants pour les rivières. L’algorithme travaille sur l’image de gradient représentant l’image. L’image de gradient associe à chaque élément de l’image une valeur numérique exprimant le gradient entre les valeurs des pixels de l’image. Les graines sont sélectionnées de manière automatique comme étant des minimums locaux de l’image de gradient (c’est-à-dire que tous les voisins d’une graine ont une valeur de gradient supérieure ou égale). Chaque graine détermine un nouveau bassin. Les éléments de l’image sont ensuite attribués à la graine de manière à remplir les bassins. Les frontières entre deux bassins sont appelées crêtes. Ce type de segmentation produit généralement une sursegmentation de l’image, c’est-à-dire qu’il y a beaucoup de régions et qu’il faut en fusionner afin d’obtenir des objets ayant un sens. La Figure 3.3 présente un exemple de segmentation par ligne de partage des eaux tiré de [Pet06].

Une généralisation des lignes de partages des eaux est proposée par la Transformée en Forêt des Images [FB04, FSdAL04] (Image Foresting Transform ou IFT en anglais). Cette méthode de segmen- tation est également une méthode par croissance de régions à partir de graines : [CBCN08] a étudié les relations entre l’opération de fusion de région et les méthodes de segmentation par ligne de partage des eaux. Dans cette approche, les graines sont associées à une étiquette, ce qui permet d’avoir plu- sieurs graines définissant une même région. L’algorithme se sert d’une représentation de l’image par un graphe (présenté dans la Section 1.1.5). Les nœuds du graphe représentent les éléments de l’image et les arêtes reliant les éléments adjacents sont valuées par une fonction de coût. Dans cette représentation, l’IFT cherche à associer chaque nœud à la graine de manière à ce que le chemin reliant le nœud à la graine soit le moins coûteux possible. En choisissant spécifiquement les nœuds et la fonction de coût, il est possible de mettre en œuvre une segmentation par ligne de partage des eaux à partir de l’IFT. L’in-

3.2. Méthodes de segmentation 51

térêt de cette approche est que l’algorithme permet de définir de nombreuses méthodes différentes. Il permet également de rajouter des graines rendant alors la segmentation semi-automatique et permettant de proposer rapidement de meilleures segmentations. [CBNC09] montre que les bassins versants d’une segmentation par ligne de partage des eaux ont une définition équivalente en terme d’optimum global (c’est-à-dire une forêt de poids maximum), si l’on se situe dans le cadre des arêtes d’un graphe.

Nous pouvons également noter que les algorithmes par croissance de régions sont couramment mis en œuvre par un algorithme consistant à fusionner des régions adjacentes en partant de région-graines.

3.2.3 Division-fusion

Une autre grande famille de méthodes est définie par une approche mixte mêlant un processus de fusion de régions avec un processus de division de régions.

Les approches par fusion de régions décrites comme de bas en haut (bottom-up en anglais) per- mettent d’obtenir une partition en fusionnant successivement des régions adjacentes répondant à un même critère. Le point de départ d’un algorithme de segmentation par fusion de régions est une image sursegmentée, c’est-à-dire qui comporte beaucoup de régions. Généralement la partition utilisée à cette fin comporte une région par élément de l’image. L’algorithme procède ensuite par fusions successives de régions adjacentes. Si deux régions respectent le critère de fusion alors elles sont effectivement fusion- nées. La partition finale est atteinte lorsqu’il n’est plus possible de fusionner des régions, c’est-à-dire qu’il n’existe pas deux régions dont la fusion respecte le critère.

À l’opposé les approches par division de régions, de haut en bas (top-down en anglais) permettent d’obtenir la partition résultante en divisant les régions en régions de plus en plus petites jusqu’à ce que des critères particuliers soient satisfaits. Le point de départ de l’algorithme est une sous-partition de l’image. En général, la segmentation initiale est composée d’une seule région contenant l’image entière. Chaque région ne respectant pas un critère d’homogénéité est ensuite divisée de manière arbitraire en plus petites régions. Les premières approches de division consistent à partitionner une région en régions de taille identique. Ce mécanisme de division ressemble à un processus de construction d’un quadtree pour une image 2D. Lorsque toutes les régions respectent le critère de division, nous obtenons la partition finale.

L’approche mixte, proposée dans [HP76], revient à faire suivre une opération de division par une opération de fusion. Le gain montré par les auteurs tient au temps de calcul plus court pour une consom- mation mémoire semblable. Des variantes envisagent d’alterner les phases de division et les phases de fusion en modifiant dynamiquement les critères afin de produire une segmentation la plus précise pos- sible tout en conservant un principe simple.

3.2.4 Modèle déformable

Les modèles déformables [TF88] forment une grande famille de méthodes de segmentation. En pratique, ils représentent la géométrie d’un objet. Cette géométrie est évolutive : des règles inspirées de la physique guident l’évolution du modèle. Ainsi un modèle déformable évolue de manière à mieux épouser les formes présentes dans les données.

Les contours actifs [KWT88] (snakes en anglais) forment une classe de modèles déformables très populaire. Ils représentent un contour déformable planaire. Ils sont utilisés afin d’approcher la position et la forme des bords des objets dans une image 2D sous l’hypothèse que les contours sont continus et lisses. Les contours actifs cherchent généralement à minimiser une énergie globale sur l’image. Cette énergie est alors le critère de segmentation.

Les isocontours [OS88] (level sets en anglais) forment une deuxième catégorie de modèles défor- mables. Dans le traitement d’images, un isocontour est un contour pour lequel une fonction d’énergie

52 CHAPITRE 3 - SEGMENTATION D’IMAGES

(le critère) possède une valeur constante tout le long du contour. Les lignes de niveau sur les cartes to- pographiques en sont un exemple. En 3D les isocontours sont des isosurfaces, elles servent par exemple en imagerie médicale à représenter une surface entourant une région ayant une densité particulière dans les images de scanner et ainsi à visualiser les organes internes, les os ou d’autres structures.