Vous êtes sur la page 1sur 38

Master 1 IB - Traitement de l’Image Médicale (TIM)

Segmentation d’images

Pr. ZOUAGUI T.

USTO – Faculté GE - Département d’Électronique

prof.zouagui@gmail.com

Qu’est ce que la segmentation ?

Image IRM d’une tumeur du foie 2

1
Qu’est ce que la segmentation ?

Qu’est ce que la segmentation ?

2
Qu’est ce que la segmentation ?

• La segmentation est un traitement de bas


niveau qui consiste à créer une partition de
l’image Ι en sous ensembles Ri appelés
régions telles que :
∀i Ri ≠ 0
∀i , j ; i ≠ j Ri ∩ R j = 0
I = Υ Ri Ι=∪ Ri
i

– Une région est un ensemble de pixels connexes


ayant des propriétés communes qui les
différencient des pixels des régions voisines 5

Qu’est ce que la segmentation ?

• La segmentation permet d’isoler certaines


parties de l’image qui présentent une forte
corrélation avec les objets contenus dans
cette image, généralement dans l’optique d’un
post-traitement. Les domaines d’application
sont nombreux : médecine, géophysique,
géologie, etc.
• Dans le domaine médical, la segmentation
d’images est extrêmement compliquée.
6

3
Qu’est ce que la segmentation ?
• En effet, pour chaque organe (cerveau, cœur, etc.),
l’approche est différente : l’outil de segmentation doit
donc pouvoir s’adapter à un organe particulier,
suivant une modalité d’acquisition particulière
(scanners, radiographie, IRM, ...) et pour une
séquence de données particulière.
• L’objectif est la quantification de l’information, par
exemple, la volumétrie : volume d’une tumeur dans
le cerveau, étude de la cavité ventriculaire
cardiaque, etc. C’est à ce niveau que la
segmentation de l’image est utilisée.
7

Qu’est ce que la segmentation ?


• La segmentation
vise à diviser
l’image en
constituants
distincts – objets

• La segmentation
est liée à la
reconnaissance

Objet : partie sémantiquement cohérente dans une image 8

4
Segmentation d’images

• But de la segmentation
– Identifier et extraire (séparer) des objets dans l’image
– Les différencier du fond
– Attribuer à chaque pixel de l’image un label indiquant à
quel objet il appartient
• Comment ?
– Délimiter des zones de l’image sur différents critères, en
se basant sur
• Les discontinuités (les arrêtes, les changement abruptes, …)
• Les similitudes (zones homogènes)
– Niveaux de gris, couleurs, textures, …
– Connaissance a priori 9

10
Étiquetage des régions (region labeling)

5
Segmentation d’images

• Problématique de la segmentation
– Parmi les pixels de l’image, lesquels représentent
un objet ?

• Conditions de toute bonne segmentation


– La segmentation doit être complète (chaque pixel
doit appartenir à une région ou classe)
– Les pixels appartenant à la même région doivent
être connectés (régions connexes)
– Les régions doivent être disjointes (pas de pixels
communs)
11

Segmentation d’images
• Le problème de la segmentation est très mal posé
– Pas de solution unique
– Plusieurs méthodes de segmentation existent et peuvent
être utilisées
– On ne sait jamais dire quelle est la segmentation idéale
– L’idée est que la région se rapproche de la notion d’objet
– On voudrait que la segmentation ne puisse pas varier
beaucoup lorsque les conditions d’acquisition varie
légèrement (bruit, illumination, …)
– On aimerait aussi que les régions obtenues soient simples
à manipuler (taille suffisante, forme régulière, …)
12

6
Segmentation d’images
• La segmentation est un problème qui est
considéré comme difficile
• Les raisons fondamentales sont :
– Il n’y a pas de définition universelle pour les
régions et les objets
– Les images réelles présentent des faiblesses :
• Illumination irrégulière, ombres et réflexions
• Objets texturés, objets partiellement occultés, …
• Images bruitées, floues
– Les résultats de la segmentation sont très
13
sensibles aux choix des paramètres

Segmentation d’images

• La segmentation est le processus de


découpage d’une image en différentes
régions et/ou contours

• 3 approches
– Approches Région: rechercher des zones de
l’image en calculant des critères d’homogénéité
– Approches Contour: basées sur l’information de
gradient pour localiser les frontières des régions
– Approches Duales (régions et contours) 14

7
Segmentation Région/Contour

Image originale Approche Région Approche Contour

15

Segmentation Région/Contour

Approche Région

Image originale

Approche Contour 16

8
Dualité régions/contours

• Il existe une dualité entre régions et contours


– Une région est délimitée par un contour
– Un contour sépare deux régions

17

Vue d’ensemble
Techniques de segmentation

Seuillage Approches Template Approches


FRONTIERE Matching REGION

Méthodes dérivatives contours actifs

Détection de contours
+ Méthodes Approches
Fermeture des contours Texture Markoviennes structurales

Analyse et classification 18

9
Images à segmenter

(a)

Images faciles à segmenter

(b)

19
Images difficiles à segmenter

Choix d’une méthode de segmentation

• Pas de norme ! Pas de méthode unique ! Pas


de recette !
• Le choix d'une méthode est lié :
– A la nature de l'image (éclairage, contours,
texture, ...)
– Aux opérations en aval de la segmentation
(mesure, compression, RF, interprétation, …)
– Aux primitives à extraire (droites, régions,
textures, ...)
– Aux contraintes d'exploitation (tps réel, mémoire)
20

10
Segmentation par seuillage

• Seuillage
– Pixels classifiés en comparant leurs niveaux de
gris à un ou plusieurs seuils
• Seuils déterminés à partir de l’histogramme et
peuvent être fixés
– Globalement (seuillage global)
– De façon adaptative (seuillage adaptatif ou local)
– De façon optimale
• Le choix d’un bon seuil est très difficile
– Sauf si l’histogramme présente des modes
21

Segmentation par seuillage

• Choix du seuil à base de l’histogramme


– Choisir le seuil qui minimise l’erreur de
segmentation
– Choisir le seuil au minimum entre deux pics de
l’histogramme
– Méthode des modes
• Identifier les 2 maxima principaux
• Prendre le minimum entre eux
• Souvent il faut éviter de prendre 2 minima locaux
appartenant au même maximum global
– Amélioration du rapport ‘peak-to-valley’
• Éliminer les pixels de forts gradients 22

11
Seuillage global

Séparer l’objet du fond,


en choisissant un seuil T

Histogramme bimodal
mode
Vallée

23

Seuillage global

Image originale

L’étude de l’histogramme montre l’existence de 3 classes apparentes


24

12
Seuillage global

25

Seuillage global

• En seuillage global (multiple), il existe 3 ou


plusieurs modes dans l’histogramme, ce qui
requiert 2 seuils ou plus

26

13
Seuillage global

• Exemple d’algorithme
– Choisir un seuil T initial (moyenne, médiane, …)
– On obtient 2 groupes de pixels
G1 si I(x,y) > T et G2 si I(x,y) ≤ T
– Calculer les moyennes des niveaux de gris pour
G1 et G2 (ce qui donne µ1 et µ2)
– Calculer une nouvelle valeur de T
T = 0.5 (µ1+ µ2)
– Répéter jusqu’à ce que T soit ~ constant
27

Seuillage global

T0 = 0
3 itérations
Avec un résultat T = 125

28

14
Seuillage adaptatif

• Seuillage adaptatif ou local


1) Diviser l’image en régions et effectuer un
seuillage indépendamment dans chaque région
2) Chaque pixel dans l’image est seuillé en
fonction de l’histogramme des pixels voisins
(taille de la fenêtre à fixer et le seuil est
généralement la moyenne des pixels
appartenant à cette fenêtre)

L’idée générale du seuillage est d’isoler des pics de l’histogramme


29

Seuillage adaptatif

Diviser l’image en 4 zones et calculer


30
leurs histogrammes

15
Seuillage optimal

• ‘Fitting’ de courbes sur l’histogramme


– Histogramme considéré comme le mélange de
fonctions de densité de probabilités généralement
des Gaussiennes
– Optimisation du seuil S par modélisation
Gaussienne des densités de probabilités
– Minimisation de l’erreur quadratique moyenne
entre l’histogramme et les densités de probabilités
– N’importe quelle méthode d’optimisation peut être
utilisée : simplex, Newton, …
31

Modélisation par 2 Gaussiennes

Objet de couleur
homogène sur
un fond homogène

32

16
Seuillage optimal

33

Seuillage optimal

34

17
Seuillage

35

Seuillage

• Exemple de segmentation

36

18
Seuillage

• Localisation sur l’histogramme d’un 1er mode

• Sélection de la région
connexe la plus grande
37

Seuillage

• Localisation sur l’histogramme d’un 2ème mode

• Sélection de la région
connexe la plus grande
38

19
Seuillage

• Itération jusqu’au résultat final

39

Seuillage

• Le seuillage peut être utilisé en présence


– De régions homogènes
– Lorsque les objets et le fond sont très contrastés
• Le seuillage est inapproprié si
– Les régions présentent un fort gradient
– Les régions sont texturées

• Méthode simple, efficace dans un nombre de cas


limité
• Ne permet pas en lui-même de définir des objets
mais seulement des ensembles de points pas
forcément connexes 40

20
Seuillage

• Rôle du bruit
– Étaler l’histogramme, ce qui complique le seuillage

41

Segmentation d’images par


approches Région
• Formulation générale
n
(a ) ∪ Ri = R
i =1

(b) Ri is a connected region, i = 1, 2 , ..., n


(c ) Ri ∩ R j = φ for all i and j, i ≠ j
Prédicat (d ) P(Ri ) = TRUE for i = 1, 2 , ..., n
(e) P(Ri ∪ R j ) = FALSE for i ≠ j
ex. P(Ri) = TRUE si tous les pixels dans Ri
42
ont le même niveau de gris

21
Segmentation d’images par
approches Région
• Approches structurales
– Plusieurs méthodes : Croissance de régions,
Split, Merge, …
• Approches Markoviennes
– Ne seront pas traitées dans ce cours
• Approches basées sur la Texture
– Ne seront pas traitées dans ce cours

43

Croissance de régions

• Cette méthode vise à regrouper des


ensembles de points ou de régions selon des
critères d’homogénéité
– On suppose disposer de points ou régions
‘amorces’ (seeds) et on va agréger à ces régions
les pixels non encore affectés à une région

– Les points clés de cette méthode


• Choix des points ou régions amorces (a priori c’est le
‘cœur des régions’, les pixels dont on est sûr)
• Règle d’agrégation des pixels voisins des amorces
44

22
Croissance de régions

• La croissance est conduite selon deux critères :


– Homogénéité pour une région R formée de N pixels
– Connexité (adjacence) du pixel à intégrer dans R
• Exemples de critères d’homogénéité
– Variance σ2 inférieure à un seuil
ou

• Un pixel P est intégré à R si


– Les caractéristiques de ce point (NG, couleur, texture
centrée sur ce point, …) est proche de celles de R
– S est connexe à R 45

Croissance de régions

Le ‘seed’ peut être choisi soit par l’utilisateur, soit de manière


automatique en évitant les zones de fort contraste (gradient important) 46

23
Croissance de régions

Image originale Image segmentée (ventricules)

47

Croissance de régions

48

24
Croissance de régions

49

Croissance de régions : Bilan

• Performance très dépendante de l’initialisation


(germes)
• Dépend souvent de l’ordre de traitement :
L’ordre dans lequel sont ajoutés les pixels
dans une région a une influence sur le résultat
• Implémentation relativement simple
• Méthodes rapides

50

25
Segmentation par Split
• Principe de la segmentation par division
– Définition d’un critère d’homogénéité
– Test de la validité du critère sur l’image
– Si le critère est valide, l’image est segmentée
(arrêt de la méthode)
– Sinon, l’image est découpée en zones plus petites
(par exemple 4) et la procédure est ré-appliquée
sur ces zones
– Arrêt lorsqu’il n’y a plus de découpages possibles
• Pas de régions non similaires
• Les régions sont réduites au pixel
51

Segmentation par Split

Une zone est homogène si elle


ne contient que des pixels qui ont
la même couleur (seuil = 100%)

52

26
Construction du RAG
Region Adjacancy Graph

Quadtree
L’image est stockée dans un arbre (RAG).
Initialement, arbre racine = image complète

• Le RAG connecte les régions adjacentes


• Arrêtes = mesures de différence d’homogénéité

RAG

53

Segmentation par Split

Le Split fait apparaître des régions de type carrées


54

27
Segmentation par Merge

• On procède à la fusion de régions sur une


image déjà segmentée (par exemple par Split)
• On cherche tous les couples de régions
adjacentes dans un RAG et on essaye de les
fusionner si elles vérifient un critère de
similarité
– Des valeurs de moyennes/variances similaires
(régions homogènes)
– Des corrélations proche de 1 (région de
distribution similaire) 55

Segmentation par Split & Merge

• Méthode en 2 étapes
– Split (division)
• Diviser l’image en utilisant un Quadtree
– Merge (fusion)
• Fusionner les régions qui vérifient un prédicat (régions
similaires et adjacentes au sens des niveaux de gris)

56

28
Segmentation par Split & Merge

57

Segmentation par Split & Merge

58

29
Segmentation d’images par
approches Frontière
• Détection de frontières
– Détection de points isolés
– Détection de droites
– Détection de contours

• Détection de contours
– Filtrage (masques dérivatifs)
• Extraire les contours les plus marqués
– Seuillage simple, seuillage par hystérésis
• Problèmes de détection
– Contours non fermés, trous, contours parasites
59

Segmentation d’images par


approche Contour

• Détection de contours
– Masques dérivateurs du 1er ordre (Prewitt, Sobel, …)
– Masques dérivateurs du 2nd ordre (Laplacien, LOG, …)
– Méthodes analytiques : Canny, Deriche, Shen-Castan
– Autres : opérateurs morphologiques (non abordé en
cours)
– Méthodes globales
• Contours actifs, level sets, …
• Transformée de Hough

60

30
• Segmentation par approche Contour
– Détection de contours puis seuillage

61

• Segmentation par approche Contour


– Détection de contours puis seuillage

– Détection de contours puis ‘thinning’

62

31
• Segmentation par contour actif

63

• Segmentation par contour actif

64

32
• Segmentation par level sets

65

• Segmentation par transformée de Hough


– Détecter des formes simples et paramétrées
telles que des droites ou des cercles
– Généralisable à des courbes paramétrées
quelconques

66

33
• Segmentation par transformée de Hough

67

Segmentation par template


matching
• La méthode Template Matching est basée sur la
recherche de la position spatiale d’un motif (objet) M
connu dans une image Ι
• La recherche (ou le collage) se fait par le calcul de
l’intercorrélation bidimensionnelle C(p,q) entre Ι et M

• La position du motif est donnée par les maxima de la


fonction d’intercorrélation CΙM 68

34
Segmentation par template
matching

69

Segmentation de Texture

• Texture : région d’une image qui apparaît


cohérente et homogène
– Information visuelle qualitative
• Grossière, fine, tachetée, marbrée, régulière,
périodique, …
– Textures macroscopiques (régulières)
• Primitive de base évidente (grilles, mur, tissus, …)
• Assemblage régulier
– Textures microscopiques (aléatoires)
• Primitive de base réduite (sable, nuages, herbe, …)
• Aspect chaotique mais régulier 70

35
Textures microscopiques

Textures macroscopiques
?
Texture : Motif basique qui se répète 71

Segmentation de Texture

Seuillage

Détection de
contour !

Utilisation de méthodes statistiques telles que les champs de Markov 72

36
Segmentation de Texture

73

Segmentation : Conseils

• La segmentation d’images pose encore aujourd’hui


beaucoup de problèmes
– Aucune méthode ne fonctionne pour toutes les images
– Pas de garantie, pas de recette miracle
• Le prétraitement des images, la sélection de
capteurs et sources d’énergie appropriées et la prise
contrôlée des images rendent cette étape plus facile
et plus efficace
• Objectif de la segmentation
– Définir ce qu’on recherche dans une image
– Savoir ce que l’on veut faire après 74

37
Conclusion

• Limites de la Segmentation
– Problème loin d’être résolu
– Fort besoin de connaissances

75

Vue d’ensemble des techniques de


Segmentation
Edge-based
Document images

Color-based Medical images

Texture-based Range images

Biometric images
Region-based
Texture images
Motion-based
76

38

Vous aimerez peut-être aussi