MAP-6014 Concepts avancés en mathématiques et informatique appliquées Sujets Segmentation par seuillage (classification) Choix des seuils Par inspection de l’histogramme Optimal Lectures: Note de cours Pour installer EMGU et OpenCV, voir le site suivant: http://www.emgu.com/wiki/index.php/Download_And_Installation
Segmentation par seuillage Niveaux de gris (des images à niveaux de gris) Différences (détection des changements)
Segmentation par seuillage binaire (des images à niveaux de gris) FIGURE 2-7 [rf. SCHOWENGERDT, p. 69]
Segmentation par seuillage binaire (des images à niveaux de gris)
Segmentation par seuillage binaire (des images à niveaux de gris) Ex: findThresholdFaceNIR.c 134
Segmentation par seuillage binaire (des images à niveaux de gris)
Détection des changements [soustraction d ’images] Vous en souvenez-vous ? - = (b) 1975. (a) 1972. images Landsat MSS du complexe minier cuprifère de "Twin Buttes" (au sud de Tucson en Arizona) FIGURE 2-8 [rf. SCHOWENGERDT, p. 70]
Segmentation par seuillage binaire (détection des changements) FIGURE 2-9 [rf. SCHOWENGERDT, p. 71]
Choix des seuils (par inspection de l’histogramme) Figure 7.25 [rf. GONZALEZ, p. 444]
Choix des seuils (optimaux : par minimisation de la probabilité d’erreur) Figure 7.27 [rf. GONZALEZ, p. 448]
Choix des seuils (optimaux)
Choix des seuils (optimaux) Supposons que nous observons deux surfaces dans une image La probabilité p(z) d’avoir une valeur de niveau de gris z dans l’image est donnée par: p(z) = P1 p1(z) + P2 p2(z) où: P1: probabilité d’occurrence de la surface 1, Fraction de l’image correspondant à la surface 1 P2: probabilité d’occurrence de la surface 2, Fraction de l’image correspondant à la surface 2
Choix des seuils (optimaux) où: p1(z): probabilité d’occurrence d’un pixel de niveau de gris z dans la surface 1 p2(z): probabilité d’occurrence d’un pixel de niveau de gris z dans la surface 2 Si nous supposons que p1(z) et p2(z) sont distri-bués selon une loi normale nous obtenons:
Choix des seuils (optimaux) où: 1 et 2 sont les moyennes des valeurs de niveaux de gris des surfaces 1 et 2 respectivement et 1 et 2 leur écart-type p(z) devient alors: De plus nous savons que
Choix des seuils (optimaux) La probabilité d’erreur T
Choix des seuils (optimaux) Déterminons la probabilité d’erreur de classifica-tion dans les classes 1 et 2 (surfaces 1 et 2) Nous définissons E1 la probabilité de classer un pixel dans la classe 1 lorsqu’il appartient à la classe 2 et E2 la probabilité de classer un pixel dans la classe 2 lorsqu’il appartient à la classe 1 De plus nous voulons savoir quelle sera l’erreur causée par le choix d’un seuil donné T
Choix des seuils (optimaux) Les probabilités d’erreur sont données par: La probabilité d’erreur totale est alors donnée par:
Choix des seuils (optimaux) Cherchons une valeur de T qui minimise E(T) Après simplifications nous obtenons une expression de la forme:
Choix des seuils (optimaux) Les coefficients A B et C sont donnés par:
Choix des seuils (optimaux) Lorsque les variances sont égales:
Choix des seuils (optimaux) Lorsque les surfaces sont équiprobables:
Exemple de segmentation imageasegmenter.rast
Exemple de segmentation (Détection de pupilles) imageasegmenter.rast
Exemple de segmentation (Détection de pupilles, Histogram.h) imageasegmenter.rast
Exemple de segmentation (Détection de pupilles, Histogram.cpp) imageasegmenter.rast
Exemple de segmentation (Détection de pupilles, Histogram.cpp) imageasegmenter.rast
Exemple de segmentation (Détection de pupilles, Histogram.cpp) imageasegmenter.rast
Exemple de segmentation (Détection de pupilles, Histogram Exemple de segmentation (Détection de pupilles, Histogram.cpp, LocateExtremum) imageasegmenter.rast
Exemple de segmentation (Détection de pupilles, Histogram Exemple de segmentation (Détection de pupilles, Histogram.cpp, LocateExtremum …) imageasegmenter.rast
Exemple de segmentation (Détection de pupilles, Histogram Exemple de segmentation (Détection de pupilles, Histogram.cpp, LocateExtremum …) imageasegmenter.rast
Exemple de segmentation (Détection de pupilles, Histogram Exemple de segmentation (Détection de pupilles, Histogram.cpp, ThreshHistogram) imageasegmenter.rast
Exemple de segmentation (Détection de pupilles, Histogram Exemple de segmentation (Détection de pupilles, Histogram.cpp, ThreshHistogram …) imageasegmenter.rast
Exemple de segmentation (Détection de pupilles, Histogram.cpp) imageasegmenter.rast
Résumé Segmentation des images par seuillage Segmentation par seuillage Niveaux de gris Différences Choix des seuils Par inspection de l’histogramme Optimal