Traitement dimages : concepts fondamentaux Introduction à la morphologie mathématique (cas...

Post on 03-Apr-2015

108 views 1 download

Transcript of Traitement dimages : concepts fondamentaux Introduction à la morphologie mathématique (cas...

Traitement d’images : concepts fondamentaux

• Introduction à la morphologie mathématique (cas binaire) : 

– Erosion, dilatation, ouverture et fermeture binaires,– Reconstruction géodésique, étiquetage en composantes connexes,– Squelette.

• Introduction à la classification : cas pixelique, algorithme des k-moyennes

Bibliographie

• H. Maître, Le traitement des images, Hermès éditions.

• J.-P. Cocquerez & S. Philipp, Analyse d’images : filtrage et segmentation, Masson éditions.

• S. Bres, J.-M. Jolion & F. Lebourgeois, Traitement et analyse des images numériques, Hermès éditions.

Pavage et maillage• Pavage = partition de l’espace continu en cellules

élémentaires• Cas de pavages plan réguliers : cellules identiques et

régulières

• Maillage = ensemble des segments reliant les ‘centroïdes’ des cellules ayant une arête commune

• Dualité pavage et maillage

Notion de voisinage élémentaire

• Image discrète = graphe

• Connexité

trame carrée trame hexagonale

chemin sur le graphe = succession de nœuds du graphe joints par des arcschemin 4-connexe :

chemin 8-connexe :

1 ,1,1/, 111 kkkknkkk jjiinkji

1,max ,1,1/, 111 kkkknkkk jjiinkji

Notion d’ « entourage »• Théorème de Jordan : toute courbe simple fermée

sépare l’espace en 2 composantes : l’intérieur et l’extérieur de la courbe.

Cas de la trame carrée : tout chemin 4-connexe (resp. 8-connexe) simple fermé (Ai=Aj i=j et Ai voisin de Aj |i-j|=1[n]) sépare l’espace en 2 composantes 8-connexes (resp. 4-connexes)

• Nombre d’Euler = différence entre le # composantes connexes et le # de trous.

Soit : s=#singletons, a=#couples ligne ou colonne, d=#couples diagonaux, t=#trinômes, q=#quadrinômes, alors en 4-connexité E=s-a+q

en 8-connexité E=s-a-d+t-q

Exemple : nombre d’Euler

• Cas 4-connexe : # composantes 4-connexes = 3# de trous (8-connexes) = 1

E4=2• Cas 8-connexe :

# composantes 8-connexes = 1# de trous (4-connexes) = 2

E8=-1

s=16, a=14, d=13, t=10, q=0

En 4-connexité E4=s-a+q=2

En 8-connexité E8=s-a-d+t-q=-1

Distances discrètes (I)• Distance à 1 objet minimum des distances

euclidiennes (approximées) aux points de l’objet• Propagation de distances locales• Distances définies à partir d’un ensemble de vecteurs

de déplacement

• Utilisation de masques

• Exemple :

mipi ,1,

AB

m

iiii

m

iii vpnndn

sBAd

11

.,/.min1

,

1 1 1

1 0 1

1 1 1

4 3 4

3 0 3

4 3 4

11 11

11 7 5 7 11

5 0 5

11 7 5 7 11

11 11

1

1 0 1

1

Distances discrètes (II)• Partition du masque en 2 sous-masques g1 et g2 causaux ULLR et LRUL

• Algorithme de calcul séquentiel

1) Poser

2) f0 image / points de l’objet 0 et les autres +

3) pour k=1,2si k=1, balayer l’image dans le sens UL LRsi k=2, balayer l’image dans le sens LR UL

4) image des distances f2

0ligne et 0colonne ou 0ligne et )support( si

0ligne et 0colonne ou 0ligne et )support( si

xxxgxxgxg

xxxgxxgxg

2

1

4 3 4

3 0 3

4 3 4

kkkk

kkkkk

gxyxygyfxf

gyygyxfxfxf

de support

de support

/,min

/,min

1

1

Distances discrètes : exemple∞ ∞ ∞ ∞ ∞ ∞ ∞ ∞

∞ ∞ ∞ ∞ ∞ ∞ ∞ 0

∞ ∞ ∞ ∞ ∞ ∞ 0 0

∞ 0 0 ∞ ∞ ∞ ∞ ∞

∞ 0 0 0 ∞ ∞ ∞ ∞

∞ 0 0 0 ∞ ∞ ∞ ∞

∞ ∞ ∞ ∞ ∞ ∞ ∞ ∞

∞ ∞ ∞ ∞ ∞ ∞ ∞ ∞

∞ ∞ ∞ ∞ ∞ ∞ ∞ ∞

∞ ∞ ∞ ∞ ∞ ∞ ∞ 0

∞ ∞ ∞ ∞ ∞ ∞ 0 0

∞ 0 0 1 2 3 1 1

∞ 0 0 0 1 2 2 2

∞ 0 0 0 1 2 3 3

∞ 1 1 1 2 3 4 4

∞ 2 2 2 3 4 5 5

4 3 3 4 4 3 2 1

3 2 2 3 3 2 1 0

2 1 1 2 2 1 0 0

1 0 0 1 2 2 1 1

1 0 0 0 1 2 2 2

1 0 0 0 1 2 3 3

2 1 1 1 2 3 4 4

3 2 2 2 3 4 5 5

Distances géodésiques

• Intérêt des métriques géodésiques : tient compte des obstacles ( dist. euclidienne ou versions digitales).

distance géodésique : étant donnés 2 points a et b d’un compact X, toujours un plus court chemin de a à b qui soit X; la longueur de ce chemin est dX(a,b).

• Propriétés : dX est une distance généralisée, i.e.

badbad eEuclidiennX ,,

cbdbadcad

babad

abdbad

XXX

X

XX

,,,

0,

,,

a b

cd

dadX ,

Morphologie mathématique

• Traitement non linéaire de l’information• Analyse morphologique : extraction des

informations à partir de tests• Exemples de problèmes :

• Repose sur la théorie des ensembles, des treillis complets, … – s’applique aux ensembles, aux fonctions, …

Comment éliminer le bruit ?

Comment séparer 2 composantes ?

Comment étiqueter différemment 2

formes connexes ?

Comment comparer 2 formes ?

• Définition: 1 treillis est 1 ensemble ordonné (E,) tel que toute partie de E admette 1 borne supérieure et 1 borne inférieure

• Exemple de treillis:ensembliste

éléments parties de S

relation d’ordre inclusion

borne supérieure union

borne inférieure intersection

involution complémentaire

plus grand des minorants

plus petit des majorants : réflexive (xE, xx), antisymétrique ((x,y)E2, xy et yx x=y), transitive ((x,y,z)E3, xy et yz xz )

Opérateurs de MM : fondements mathématiques

• principes fondamentaux– Compatibilité avec les translations– Compatibilité avec les homothéties– Localité– Semi-continuité

• propriétés– Croissance– Extensivité / anti-extensivité– Idempotence– Dualité

Indépendance par rapport à l’origine de l’espace: t, (f+t)=(f)+t

Indépendance par rapport au paramètre d’échelle: , (f)=(f)

E’ borné, E borné / (f)E’=(fE)E’

A,B AB (A) (B)

Extensivité: A, A(A)

((.))=(.)

et duales : AAA ,

Erosion / dilatation : définitions (1)

• Élément structurant B relations de l’objet X avec l’élément (taille, forme données)

• Addition de Minkowski : lieu géométr. des points de Bx (translaté de B en x) lorsque x décrit X

propriétés : commutative, associative, croissante, élément neutre

• Soustraction de Minkowski : Intersection des translatés de X par chaque point de B

propriétés : non commutative, associative, croissante, élément neutre

ByXxyxBX ,/

XyzByzBX , / Ө

Erosion / dilatation : définitions (2)

• Dilatation (binaire) : lieu géométr. des points x tels que Bx intersecte X

• Erosion (binaire) :

lieu géométr. des points x tels que Bx soit inclus X

XyxByxXX BB ,/

ByXxyxBXXB

,/

XBz

yzxBXyxz

yxzByXxzX

z

B

/

:,/

:,/

XBz

yzxXxByz

yxzXxByzXXX

z

Byy

ByyB

/

:,/

:,/

Erosion / dilatation : propriétés (1)• Croissance par rapport à X

En effet :

• Extensivité / anti-extensivité (si centre de B inclus dans B)

• Croissance / décroissance par rapport à B

En effet :

XXX BB

YXYXYX BBBB ,

XXXXBB BBBB '' ,'

XBXBYX yx alors , si YBXBYX xx alors , si

XBXBBB xx ' alors , si '

XBXBBB xx alors ,' si '

Erosion / dilatation : propriétés (2)

• Commutations

démonstration : cf exercices

• Adjonctionen effet :

XXX

XXX

YXYX

BBBB

BBBB

BBB

''

''

XXX

XXX

YXYX

BBBB

BBBB

BBB

''

''

YXYX BB

YBX

yzxYyBXzx

zyxYyBzXx

xtzytYyBztXxYX B

:,,

:,,

et :,/,

Erosion / dilatation : algorithmes (1)• Cas général (binaire) :

– En chaque pixel z de l’image examiner la relation entre l’élément struct. Bz et l’objet X

– Dilatation:pour i[1,#lignes]// boucle sur les lignes

pour j[1,#colonnes] { // boucle sur les colonnes

initializer z à 0

pour i’[iBmin,iBmax] // origine de tB en 0 tB inclus dans [iBmin,iBmax] [jBmin,jBmax]

pour j’[jBmin,jBmax]

si (z nul et ima(i+i’,j+j’) non nul et tB(i’,j’) non nul) alors z 1

ima_dilate(i,j) z

}

– Erosion:pour i[1,#lignes]// boucle sur les lignes

pour j[1,#colonnes] { // boucle sur les colonnes

initializer z à 1

pour i’[iBmin,iBmax] // origine de tB en 0 tB inclus dans [iBmin,iBmax] [jBmin,jBmax]

pour j’[jBmin,jBmax]

si (z non nul et ima(i+i’,j+j’) nul et tB(i’,j’) non nul) alors z 0

ima_erode(i,j) z

}

Erosion / dilatation : algorithmes (2)• Exploitation de l’associativité de la dilatation /

érosion– Cas d’un élément B qui est le résultat de l’addition de

Minkovski de et avec B1 (B à la taille élémentaire) : • Itérer la dilatation (érosion) par B1

– Cas d’un élément convexe : • Dilatations (érosions) successives par 2 segments

• Cas d’un élément structurant ‘boule’ : – Seuillage de la transformée en distance de l’image

binaire ou de son complémentaire

XBBuXxuxtt

BzByXxzyxttX

BB

BB

'

'

',,:

',,,:

XXzuBBzu

XtyuByBtu

XyzByzX

BB

BBB

'

''

,':

,,':

,:

4 3 43 0 34 3 4

11 1111 7 5 7 11

5 0 5117 5 7 11

11 11Dist1 Dist1 Dist1,

5Dist1,

5

Dilatation binaire : exemples

(X)

(X)

(X) (X)X

(X)

(X) (X) (X)

(X)

(X)

Dist2 Dist2 Dist2,5

Dist2,5

4 3 43 0 34 3 4

11 1111 7 5 7 11

5 0 5117 5 7 11

11 11Dist1 Dist1 Dist1,

5Dist1,

5

Érosion binaire : exemples

(X)

(X)

(X) (X)X

(X)

(X) (X) (X)

(X)

(X)

Dist2 Dist2 Dist2,5

Dist2,5

Ouverture / fermeture : cas binaire

• Cas binaire

• Propriétés– Croissance / X

trivial car B et B / X

– Extensivité / anti-extensivité

même si centre de l’élément structurant B à Bdémonstration : cf. exercices

– (Dé)croissance / B

démonstration : cf. exercices

XBXX

XBXX

BBB

BBB

XXX BB

YX

YXYX

BB

BB

XX

XXBB

BB

BB

'

''

– Idempotence

– Min-max :L’ouverture de X est le plus petit X’ de même érodé que X

La fermeture de X est le plus grand X’ de même dilaté que X

XX

XXX

XX

XXXXXX

XXXXX

BBmn

mmnmmmmn

mnm

mnmnmmn

mmmnmmn

BBBBBBBB

BBB

BBBBBBB

BBBBBBB

mn

Ouverture / fermeture : propriétés

XX

XXXX

XXXXBBB

BBBBBB

BBBBBB

XX

XX

nmnm

nmnm

BBB

BBB,max

,max

XX

XXXX

XXXXBBBB

BBBBBB

BBBBBB

XX

XXX

XX

XXXXXX

XXXXX

BBmn

mmnmnmmm

mmn

mnmmnmn

mmmnmnm

BBBBBBBB

BBB

BBBBBBB

BBBBBBB

mn

XXXX BBX

B ':'minarg' XXXX BB

XB ':'maxarg

'

X

Dilatation / Erosion géodésique binaire• Boules géodésiques yzdXyzB XX ,/,

Quand , les boules géodésiques progressent comme le front d’une

onde émise depuis z dans le milieu X• Dilatation géodésique de taille de Y dans X

(YB)X

• Erosion géodésique

YyyBY XX ,,,

YXXYXYXXY XX ,

Y1 Y2

X(Y1)(Y2)X

Reconstruction géodésique binaire

• Application : extraction de composantes connexes à partir de marqueurs

• Principe : à partir d’un point de la composante, on reconstruit toute la composante

• Méthode : dilatation géodésique dans X

YY,n

YY

XYY

YsupYEnX

BXB

nXB

XB

BXB

nXB

n

XB

1

0

00

avec

Reconstruction géodésique : algorithme (cas binaire)

• Éviter de réitérer dilatation jusqu’au diamètre des plus grandes composantes connexes

• Cas efficace : utilisation d’une pile des pixels de l’image à traiter :– Initialisation de la pile avec les pixels de XY

– Tant qu’il reste des éléments dans la pile : • Extraire un élément (pixel) de la pile• Le traiter

– labelisation de la composante connexe dans l’image résultat

– Calcul de ses voisins (dilatation par B)

• Ajout dans la pile (si nécessaire) des voisins situés dans X

– Exemple :Itération contenu de la pile

1 (2,1)2 (1,1) (3,1)3 (3,1) (1,2) 4 (1,2) (3,2) (4,1) 5 (3,2) (4,1) (1,3) 6 (4,1) (1,3) (3,3) 7 (1,3) (3,3) (5,1) 8 (3,3) (5,1) (2,3) 9 (5,1) (2,3) (4,3) 10 (2,3) (4,3) (5,2) 11 (4,3) (5,2) 12 (5,2) (5,3) 13 (5,3)

X

Exemples d’application (1)

Reconstruction géodésique à partir de Y

YE XB

Algorithme :

k=0;Pour chaque pixel s de X :

si xs et !zs : - calcul de EB

X({s})- k++- t EB

X({s}), zt=k

# composantes connexes = k

Etiquettage de composantes

connexes

• Filtrage par Erosion-Reconstruction (ne modifie pas les contours des objets restants Erosion-Dilatation)

Erosion de X puis reconstruction de B(X) dans X

• Suppression d’objets touchant le bord de l’image Différence entre X et la reconstruction du bord dans

X

Exemples d’application (2)

- =

• Bouchage de trous Complément de la reconstruction dans Xc d’un ensemble qui n’intersecte pas X

• Seuillage avec hystérésis Reconstruction des points au-dessus du seuil haut dans l’ensemble des points au-dessus du seuil bas.

Exemples d’application (3)

Erodé ultime : définition / algorithme• Cas général (binaire)

Ensemble des composantes connexes de X disparaissant à l’itération suivante lors d’une séquence d’érosion par un élément structurant élémentaire B1

Pour chaque pixel (non traité) disparaissant à l’itération t, calculer la composante connexe à t-1 et tester si tous les pixels ont effectivement disparus à t.

• Cas d’un élément structurant disqueEnsemble des maxima régionaux de la fonction distance de X à son

complémentaire

Algorithme :1. Calcul de l’image des distances

2. Calculer l’ensemble des maxima locaux

3. Pour chaque maximum local (xsxt, tVs) non déjà traité :

1. Reconstitution géodésique de la composante connexe à xs conditionnellement à l’image des valeurs supérieures à xs CC(xs)

2. Si xtCC(xs): xt>xs, alors marquer comme traités les maxima locaux qui appartiennent à CC(xs)

3. Sinon, alors xs est un maximum régional et CC(xs) érodé ultime

Éro

sio

ns

succ

ess

ive

s

pa

r B

Erodé ultime : exemple

Distance 4-connexité Distances 8-connexité, respectivement masque (1,0), (4,3,0) et (11,7,5,0)

Squelette morphologique : définition

• Exemples de propriétés souhaitées : – Préservation de la géométrie, de la topologie– Invariance aux translations, rotations, homothéties– Réversibilité, continuité, épaisseur nulle

• Squelette morphologique euclidien (cas continu) U des centres des boules maximales (contenues ds X)

• Cas discret : U des résidus d’ouverture des érodés successifs :

Pb : ne préserve pas la topologie

N

1\)(

n

BBBXXXS nn

Même forme, respect des parties

allongées, etc…Mêmes nombres de

composantes connexes, de trous.

La forme peut être retrouvée connaissant le squelette et la taille des

érosions (p.e.).

Une ‘petite’ variation de forme engendre une petite

variation du squelette.Épaisseur nulle, réversible

Mais : ne préserve pas la topologie, ex : mais

non continu, ex :

Homotopie discrète et simplicité

• Définition : F fct de R2 R2 préserve la topologie si A ouvert, A et F(A) sont homotopes

• Cas discret : A’ K-homotope à A 2 bijections préservant la relation d’entourage (au sens du théorème de Jordan) entre :

(i) les ensembles des K-cc (K{4,8}) de A et de A’,

(ii) les ensembles des K’-cc (K’=12-K) de Ac et de (A’)c

pour A’A

(i) toute K-cc (K{4,8}) de A contient exactement 1 K-cc de A’ et

(ii) toute K’-cc (K’=12-K) de (A’)c contient exactement 1 K’-cc de Ac

• Définition : x point K-simple dans X X-{x} homotope à X x a au moins 1 K’-voisin dans Xc et x est K-voisin d’1 seule K-cc de X se calcule en examinant les 8 voisins

Homotopie discrète et simplicité• Propriété : x est K-simple NK

X(x)=1

• Retrait des points K-simples :– séquentiel perte des propriétés métriques,– parallèle risque de perte de l’homotopie– solution : ‘¼ parallèle’ : on ne retire ensemble que les points qui

ont 1 voisin ‘Nord’ (resp. ‘Est’, ‘Sud’, ‘Ouest’) dans Xc

• Rq : noyau homotopique ne préserve pas la forme de X utilisation de ‘points d’ancrage’

3

0221228

3

0221224

)(

)(

iiii

X

iiii

X

xxxxN

xxxxN x3 x1x2

x4 x0,x8x

x5 x7x6

Une réunion de points K-simples n’est pas nécessairement un ensemble simple, ex :

x et y sont 8-simplesmais pas {x,y}

x

y

Caractérisation géométrique des points K-simples

• Définition : transformation ‘tout ou rien’ teste l’appartenance de certains voisins à X ET de certains autres à Xc

• Définition : amincissement (resp. épaississement) de X enlever (resp. ajouter) des points de X sélectionnés par 1 transformation en tout ou rien.

• Propriété : 1 amincissement (épaississement) est homotopique si l’inversion de couleur du point central ne modifie pas la topologie.

Ex. préserve topo

• Exemples d’élément structurant :

Lskel Mskel Ebardage

Squelette morphologique : algorithme

• Rq : noyau homotopique ne préserve pas la forme de X utilisation de ‘points d’ancrage’ , e.g. maxima locaux de la distance

• Algorithme préservant la topologie : – Initialiser S(X) à X– Répéter (jusqu’à avoir traité tous les points de X) :

• Soit ESd les points de S(X) ayant un voisin immédiat dans

(S(X))c dans la direction ‘Nord’ (resp. ‘Est’, ‘Sud’, ‘Ouest’)• Déterminer LK-s l’ensemble (parmi les points de ES

d) des points ‘K-simples’ (en K connexité)

• Retirer simultanément de S(X) tous les points de LK-s (sauf points d’ancrage)

• Changer la direction considérée (N, E, S, ou O)

• Informatiquement, utilisation de ‘piles’ de pixels

1 1 1 1 1 1

1 1 1

11

2

12

1

11

22

1 1

1

2

1 1 1

122

11

2 2 1 2

12

1 12

Exemple : X

8-co

nnex

ité4-

conn

exité

Itérations 0, 1, 2 Itérations 3, 4, 5 Itérations 6, 7, 8

Squelette par zones d’influence (SKIZ)

• Définition :Soit X compact de R2, la zone d’influence d’une composante connexe Xi de X est l’ens. des points plus près de Xi que de tout autre composanteLe SKIZ est la frontière des zones d’influence

• Calcul du SKIZ :1. Amincissement du fond par Lskel2. Puis ébardage du résultat de 1.

• Ex :

Exercices (I)• Proposer une ou plusieurs solutions pour

les problèmes cités en introduction :

Comment éliminer le bruit ? Comment séparer ces 2 composantes ?

Comment étiqueter différemment 2 formes

connexes ?

Comment comparer 2 formes ?

Exercices (II)

• Démontrer les propriétés de commutation des opérateurs dilatation et érosion binaires.(Utiliser les définitions de ces opérateurs)

• Démontrer les propriétés de croissance / décroissance et extensivité / anti-extensivité des opérateurs ouverture et fermeture binaires.(Utiliser les propriétés des opérateurs dilatation et érosion, notamment l’adjonction pour démontrer l’extensivité / anti-extensivité)

XXX

XXX

YXYX

BBBB

BBBB

BBB

''

''

XXX

XXX

YXYX

BBBB

BBBB

BBB

''

''

Exercices (II) : correction• Commutation des opérateurs dilatation et érosion.

• Propriétés des ouvertures / fermetures binaires– Croissance / X : trivial car B et B / X

– Extensivité / anti-extensivitépropriété d’adjonction car

car

– (Dé)croissance / B

XXBB XX BB XX BB XX BB

XXXXX BBBBBBBB ''''

XXXXX BBBBBBBB ''''

XBtXBz

XBBzXX

XXXX

YXYXYX

tz

zzBBzzBB

Bt tBz zBBzzBB

Bt tBz zBz

zzB

//

'/'

'

''

'

zzzz

zzz

zzBB

zzzzBB

zzzB

BXBBXB

XBXBBz

XBBzX

XBXBzXBBzX

YBXBzYXBzYX

'ou '

ou 'ou '/

'/

'et /'/

et //

'

'

Exercices (III)

• Soit l’image suivante :

On cherche on cherche à compter les différents types de cellules et leur proportions respectives.

Proposez une solution, décrivez le synoptique de l’algorithme à mettre en œuvre et les fonctions à développer (notamment les entrées / sorties), puis pour chacune d’elles le pseudo-code.

Exercices (III) : correction

SeuillageÉliminer les objets touchant le bord

Éliminer le bruit (petites particules)

Squelette

Détermination des paramètres pour chaque particule

Classification

Image niveaux de

gris

Image binaire

Image binaire filtrée

Image binaire filtrée

Image des squelettes

des particules

Liste des objets avec caractérist.

Liste des objets avec étiquettes

Détection des différentes particules

Image segmentée

des particules

Classification : objectifs• Mettre en évidence les similarités/

dissimilarités entre les ‘objets’ (e.g. pixels)• Obtenir une représentation simplifiée (mais

pertinente) des données originales

Définitions préalables• Espace des caractéristiques d (sS, ysd)

• Espace de décision = ensemble des classes (sS, xs), = {i, i[1,c] }

• Règle de décision ( = d(ys) )

• Critère de performance

sx~

Mettre sous un même label les objets ou pixels similaires

numériques ou syntaxiques

Passer de l’espace des caractéristiques à celui des classes → règle : supervisée / non supervisée,

paramétrique / non paramétrique,probabiliste / syntaxique / autre,

avec rejet / sans rejet

Ex. de classification non paramétrique

• Classification k-ppv (plus proches voisins)On dispose d’un ensemble (de ‘référence’)

d’objets déjà labelisésPour chaque objet y à classifier, on estime ses k

ppv selon la métrique de l’espace des caractéristiques, et on lui affecte le label majoritaire parmi ses k ppv

Possibilité d’introduire un rejet (soit en distance, soit en ambiguïté)

Très sensible à l’ensemble de référence

• Exemples :

1-ppv 3-ppv 5-ppv

k-ppv (

/24

)Euclidienne, Mahanolobis

… Possibilité de modélisation de

loi complexes, de forme non nécessairement paramétrique (ex. en 2D disque et couronne)

Connaissance des caractéristiques des classes

• Cas supervisé– Connaissance a priori des caractéristiques des classes

– Apprentissage à partir d’objets déjà étiquetés (cas de données ‘complètes’)

• Cas non supervisé Définition d’un critère, ex. :

- minimisation de la probabilité d’erreur- minimisation de l’inertie intra-classe maximisation de l’inertie inter-classes

Définition d’un algorithme d’optimisation

Equivalence minimisation de la dispersion intra-classe / maximisation de la dispersion

inter-classes

ki kjCy Cyji

kk yy

CCD 2

2intra2

1

ki kjCy Cy

jjiik

yyyyC

222

22

1

ki kjCy Cyjkkiik

k

yCyyCC

222

22

1

2222

222

1kk

Cyik

k

CyCC ki

221k

Cyi

k ki

yC

ki Cy

kik

k yC

22 1

c

kkkCD

1

2inter

c

kkki C

Ny

N 1

11

c

kkk

Cyikkkkk CyCCCDD

ki1

2222intrainter 2

c

kk

c

kkk

c

k Cyi CCy

ki 1

2

11

2 2 i

ii

i yNy 222 .

c

kkCDD

1intraintra

ki Cyi

kk y

C

1

Algorithme des c-moyennes (cas non sup.)

• Initialisation (itération t=0) : choix des centres initiaux (e.g. aléatoirement, répartis, échantillonnés)

• Répéter jusqu’à vérification du critère d’arrêt :– t++– Labelisation des objets par la plus proche

classe

– Mise à jour des centres par minimisation de l’erreur quadratique :

– Estimation du critère d’arrêt (e.g. test sur #ch(t) )

21tiss yminargx~

i

t

Ssss

t tt x,xch# 1

itsxSs

siti y,k,i

: 11

Remarques :

# de classes a priori

Dépendance à l’initialisation

c =3

c =4

c =5

=30

c =2

Variantes K-moyennes• ISODATA

– Regroupement ou division de classes

nouveaux paramètres : N=#min objets par classe, S seuil de division

(division de la classe i si : maxj[1,d]ij > S et #objets de la classe > 2N+1

et Iintra(i) > Iintra), C seuil de regroupement (regroupement des classes i et

j si : dist(i, j)C), #max itérations

• Nuées dynamiques– Remplacement de la mesure de ‘distance’ par une mesure de

‘dissemblance’ dis(ys,i)

minimiser

classe i représentée par son ‘noyau’, e.g. centre ( K-moyennes), plusieurs ‘échantillons’ de référence zl l[1,p] (dis(.,.) = moyenne des

distances de l’objet aux zl)

c

i Ssis ,ydis

1

Probabilités et mesure de l’information

• Probabilités fréquencistes / subjectivistesPhysique stat. : répétition de phénomènes dans des

‘longues’ séquences probabilité = passage à la limite d’une fréquence

≠Modèle de connaissance a priori : degré de confiance

relatif à un état de connaissance probabilité = traduction numérique d’un état de connaissance

• Remarque : Quantité d’information et probabilitésI = -log2(pi)

I ≥ 0, information d’autant plus importante que évènement inattendu (de faible probabilité)

Théorie bayésienne de la décision• La théorie de la décision bayésienne repose sur

la minimisation du ‘risque’• Soit Ct(x,x’) le coût associé à la décision de x’

alors que la réalisation de X était x• La performance de l’estimateur x’ est mesurée

par le risque de Bayes E[Ct(x,x’)] =

x 'x

'x,x'x,xP Ct

y x 'xdy.y'x,xy/'x,xP)y(P Ct

y 'x xdy.y'x,xy/xPy/'xP)y(P Ct

x'x

'x,xy/xPminargyx~ Ct

P(x’/x,y)=P(x’/y) car décision selon y seul

Coût marginal (conditionnel à y) à minimiserOr x’P(x’/y)=1 et x’, P(x’/y)≥0,

La règle qui minimise le coût moyen est donc celle telle que P(x’/y)=1 si et seulement si xP(x/y)Ct(x,x’)=1

Exemple• Détection d’un véhicule dangereux (V)

• Décider V si et seulement si

VVCtyVPVVCtyVPVVCtyVPVVCtyVP ,/,/,/,/

yVPyVPyVPyVP /////

0,,

,

,

VVCtVVCt

VVCt

VVCt

Cas où , on va décider plus facilement V que V en raison du coût plus fort d’une décision erronée en faveur de V que de V

Critère du Maximum A Posteriori• MAP :

Ct(x,x’) = 0, si x = x’

= 1, si x x’

'xxx'x

y/xPminargyx~ :

y/'xPmaxarg'x

'xP.'x/yPmaxargyx~'x

Cas d’un mélange de lois normales

• Exemples

iit

ii

diss yyxyP

..21

exp2

1/ 1

2

2

2

300003000030

i

2

2

2

600006000060

i

Estimation de seuils (cas supervisé)• Image = ensemble d’échantillons suivant une loi de

distribution de paramètres déterminés par la classeex. : distribution gaussienne

• Cas 1D (monocanal), si seuil de séparation des classes i et i+1, probabilité d’erreur associée :

– Maximum de vraisemblance :

2

2

2exp

2

1 ,,,

i

is

iississ

yxyPxRy

1 isisis yPyPx décider

212

1

212

2

2

ln2

1

2ln

2

1

2

ii

isi

i

isis

yyx

: gaussien cas

0ln211

21

2

21

21

2

2

21

122

12

2

i

i

i

i

i

i

i

i

i

is

iisis yyx

0ln22

1

22

1222

12

122

12

122

12

i

iiiiiiiiiiisiisis yyx

– Maximum de vraisemblance (suite) :

– Maximum A Posteriori :

11.. isiisiis yPyPx décider

dyy

dyy

P

i

i

si

i

is

ii

iE .ln

2exp.ln

2exp

2

2

121

21

dyy

dyy

P

i

i

si

i

ii

s

ii

iiE .ln

2exp..ln

2exp.

2

2

121

21

1

21

2

21

21 '..

ii

iiiiis

1

121

221

2221

21

2221

21 .

.ln.2....'

ii

iiiiiiiiiiiiii

1

21

1

21

22

ln2

1

2ln

2

1

2 i

i

i

is

i

i

i

isis

yyx

: gaussien cas

2

1

22

1222

12

1222

122

12

1 lni

iiiiiiiiiiiii

21

2

21

21

ii

iiiiis

Lien c-moyennes / théorie bayésienne• Maximum de vraisemblance sur des lois de paramètres i (e.g.

i=(i,i)) inconnus :

• Cas d’échantillons indépendants : max. de la logvraisemblance

d’où :(*)

or :

d’où (*)

• Cas gaussien, i connus, i inconnus

résolution itérative

K-moyennes : i=Id i[1,c] et P(i | ys,) = 1 si i = xs,= 0 sinon

Sss

Sss yplogmaxargyplogmaxarg

~

01

1011

i

s

Ss si

S... yp

yp,c,i

yyplog,c,i

01

i

iis

Sssi

,yplog,yP,c,i

c

iiiiss P.,ypyp

1

Sssi

Ssssi

i ,yP

y.,yP,c,i 1

c,i

,yP

y.,yP

Ss

tsi

Sss

tsi

ti 11

Sy,....ypmaxarg~

1

0,/

,ln2

,ln 12

Ssissii

isiiisii

isiiis

yyP

yyPy

CstyP

Sy,....ypmaxarg~

1en effet :

c

iiiis

c

iiis

c

iis

ss

PyP

PPyPP

yPPP

yPyP

1

1

1

,

,1

,,1,

en effet :

d’où :

0,ln,0,

,

,

0,0,1

,

,

,

,

,

,

1

iisiSs

siiisiSs iis

si

iisiSs s

ic

iiiis

iSs s

s

i

s

i

s

i

is

si

iis

si

yPyPyPyP

yP

yPyP

PPyP

yP

yP

P

yP

P

yP

P

yP

yP

yP

yP

Exercices (I)Soit l’image à deux canaux suivante :

• Soit les pixels de référence suivants : label 1 : valeurs (1,03;2,19) (0,94;1,83) (0,59;2,04)label 2 : valeurs (2,08;0,89) (2,23;1,16) (1,96;1,14)Effectuer la classification au k-ppv.Commentez l’introduction d’un nouveau pixel de référence de label 1 et de valeurs (1,32;1,56)

2,48 1,68 2,24 2,55 2,36 1,64 2,20 1,42

1,68 1,96 2,43 1,95 1,61 2,23 1,55 2,50

1,57 1,65 1,92 2,34 1,41 2,45 1,50 2,28

2,53 1,42 2,11 2,08 2,24 1,96 2,27 1,63

1,32 0,80 1,20 0,59 0,94 1,36 1,59 0,94

1,03 1,14 1,26 1,04 0,83 1,10 1,09 0,64

1,55 1,52 0,40 0,55 1,30 1,33 0,95 0,50

1,13 0,70 0,76 1,16 0,56 1,60 0,64 1,06

1,33 0,67 0,55 1,32 0,80 1,42 1,44 1,23

0,51 0,95 0,81 1,04 1,03 1,16 1,42 0,43

0,45 0,43 1,35 0,91 1,21 1,55 1,53 0,60

1,44 1,18 0,83 0,89 0,58 1,14 1,47 1,06

1,56 1,52 1,78 2,04 1,79 2,50 1,72 1,83

2,19 2,14 1,76 2,49 1,46 1,41 1,80 2,31

1,68 2,54 1,62 2,44 2,41 2,40 2,56 2,48

2,19 2,35 2,28 1,95 1,51 2,24 2,53 1,50

Exercices (I) : correction

Classification : exercices (II)Sur l’image à deux canaux précédente :

• Déterminer les seuils de décision pour chacun des canaux si l’on suppose 2 classes gaussiennes de caractéristiques respectives :canal 1 : (1,1)=(2.0,0.38), (2,2)=(1.0,0.34)

canal 2 : (1,1)=(1.0,0.36), (2,2)=(2.0,0.39)

Effectuer la classification par seuillage.

• Effectuer la classification c-means pour c=2.Comparer avec les résultats précédents.Comparer avec la classification c-means pour c=3.

Exercices (II) : correction