• Aucun résultat trouvé

5.2 Segmentation d’images par minimisation de la longueur de description

5.2.1 Longueur de description

Détaillons donc les différentes longueurs de description géométrique, Lgeom(P), des

paramètres, Lparam(Ψ), et de fidélité Lfid(Im|P, Ψ) proposées dans la littérature.

5.2.1.1 Longueur de description de la région spatiale

Dans [Leclerc, 1989], les contours de la partition sont décrits à l’aide d’un code de chaîne des contours : pour chaque région, on doit coder la position d’un point de départ, puis, la suite des directions à prendre pour parcourir totalement le contour. Cette longueur, sommée sur toutes les régions est divisée par deux car chaque contour est décrit une fois au titre de sa région extérieure et une autre fois au titre de toutes ses régions environantes. En considérant que les contours sont des chemins orientés sur la grille duale de la grille des pixels, le codage du premier nœud revient à choisir une position parmi les Nx∗ Ny

positions de l’image. La longueur de description correspondante est donc log(Nx∗ Ny). En

considérant une 4-connexité, l’arc menant au prochain nœud du contour est l’un des quatre arcs sortant du nœud initial. La longueur de description associée est donc log(4). Puis, les |C| − 2 prochains nœuds du contour C sont atteints en choisissant l’un des arcs sortants du nœud courant sans revenir en arrière. La longueur de description de chacune de ces directions est donc log(3). La longueur de description résultante pour une région est donc la suivante :

Lgeom(Ri) =

1

2 log(Nx∗ Ny) + log(4) + (|Ci| − 2) ∗ log(3) 

(5.4) Dans [Kanungo et al., 1994, Nicolas et al., 2001, Galland et al., 2003], les contours sont représentés à l’aide d’un graphe dont les arcs représentent des portions de contours

que de graphes eulériens qui la composent. Le codage des contours consiste donc à coder la position du pixel associé à chaque nœud de départ, puis à coder tous les arcs. Dans [Kanungo et al., 1994], le codage des points de départ est négligé. [Galland et al., 2003] propose une expression exacte de la longueur d’une telle description en remarquant que le nombre de points de départ est égal au nombre de composantes connexes sans nœud de degré impair plus la moitié du nombre de nœuds de degré impair. En effet, un nœud de degré impair est soit un nœud de départ, soit un nœud d’arrivée. [Nicolas et al., 2001] utilise une description encore plus compacte en utilisant des clés dans un code de chaîne du graphe précédant chaque nœud de départ. Le parcours de cette chaîne en stockant chaque clé dans une file FIFO (First In, First Out) permet de revenir au point de départ d’un chemin que l’on vient de finir de parcourir afin de terminer le parcours du précédent chemin là où on l’avait laissé. Ce codage remplace donc le codage de la position de chaque point de départ par le codage d’une clé. Pour le codage des arcs du graphe, [Kanungo et al., 1994] considère une description exacte du contour, et utilise la même description par codage de chaîne que dans [Leclerc, 1989]. La longueur de chaque arc doit donc être codée, et le codage de prior universel des entiers [Rissanen, 1983] est utilisé pour mesurer la longueur de description associée. [Galland et al., 2003] et [Nicolas et al., 2001] considèrent des contours polygonaux, et chaque arc est une ligne droite. L’offset en x et en y doit donc être codé pour chaque arc. [Galland et al., 2003] considère une distribution normale de ces offsets dont il code aussi les paramètres de façon à utiliser la longueur de description optimale de Shannon.

Les formes contenant des portions rectilignes couteront donc moins cher dans le système de codage de [Galland et al., 2003] que dans celui de [Leclerc, 1989] ou [Kanungo et al., 1994]. D’autre part, le codage de [Galland et al., 2003] est moins sensible au changement de résolution. Ainsi, une région carrée de 1 pixel dans une image de taille Nx∗ Ny coûte

log(Nx∗ Ny) + log(4) + 2 log(3), et log(s2Nx∗ Ny) + log(4) + (4.s− 2) log(3) pour une

image s fois mieux résolue alors que la longueur de description de [Galland et al., 2003] reste identique. Et la longueur de description de [Kanungo et al., 1994] est légèrement plus faible que celle considérée par [Leclerc, 1989].

5.2.1.2 Longueur de description des paramètres

La partie géométrique de ˜Im ainsi décrite, les valeurs des sous-images doivent être codées. Deux a priori sont considérés dans [Leclerc, 1989] : une image constante par mor- ceaux, et une image lisse par morceaux. Dans le cas de sous-images constantes, un seul paramètre par région doit être décrit. Ce paramètre, qui est la moyenne, µi des pixels sur

chaque région a donc pour longueur [Rissanen, 1989] : L(µi) = d2log(Ri), en notant d,

la dimension. Dans le cas d’un bruit gaussien de moyenne nulle uniforme par morceaux, comme considéré dans [Leclerc, 1989, Kanungo et al., 1994], on a Ψi= (µi, Γi), où Γiest la

des paramètres s’écrit donc dans ce cas :

Lparam(Ψi) = d(1 +

d + 1

2 ) log(|Ri|) (5.5) Cette modélisation du bruit rend partiellement compte des différentes textures.

Dans le cas de sous-images à valeurs sur une surface polynomiale [Leclerc, 1989, Ka- nungo et al., 1994], les sous-images ont une moyenne qui varie spatialement. Les coefficients non nuls de la moyenne polynomiale, ainsi que la matrice de covariance doivent donc être codés. Dans le cas multidimensionnel, la longueur de description de ces coefficients est donc : L(αi) = d4.(pi+ 1)(pi+ 2). log(|Ri|) où pi est le degré du polynome de la moyenne

de la région Ri. En toute rigueur, il faudrait aussi coder ces degrés, cependant, [Kanungo

et al., 1994] montre expérimentalement que la longueur associée peut être négligée. Donc, pour tous les paramètres, on obtient : Lparam = d4 (d + 1) + (pi+ 1)(pi+ 2) log(|Ri|).

Dans [Galland et al., 2003] le problème est étendu au cas de bruits gamma afin de rendre compte du speckle des images radar, puis dans [Galland et al., 2005] des bruits de Poisson et Bernoulli sont aussi considérés. Le codage des paramètres se fait exactement comme précédemment, en notant k, le nombre de paramètres, on a Lparam = k2log(|Ri|).

[Delyon et al., 2006] présente une extension au cas où les pixels des régions suivent des distributions de type inconnu. Les pixels de chaque région sont vus, comme précédemment comme des réalisations de variables aléatoires indépendantes et identiquement distribuées selon une distribution Pr qui est ici inconnue, et ne fait pas nécessairement partie des

distributions canoniques. La distribution est alors modélisée par une fonction en escalier de Q marches de longueurs variables qui approximent l’histogramme de la région. Les paramètres à coder sont dans ce cas la largeur des bins de l’histogramme de la région, ainsi que chacune des probabilités qui leur sont associées. Cet algorithme permet donc de segmenter automatiquement des images dont les régions peuvent avoir des textures très différentes.

5.2.1.3 Terme de fidélité correspondant à une région spatiale

La description du bruit découle directement de la longueur de code optimale de Shan- non : L(x) = − log(P (x)). Donc Lfid(Ri) =− log(P (ImRi|Ψi)). Nous considérons que les

pixels d’une région Ri sont des réalisations indépendantes d’une même variable aléatoire

de paramètre Ψi. Dans le cas d’un modèle de sous-images de moyennes µi et de matrices

de covariance Γi, la probabilité de la restriction de l’image, ImRi à la région spatiale Ri

est donc : P (ImRi;N (µRi, Γi)) = Q|ImRi| j=1 1 (2π)32√|ΓRi|exp  −(ImRi(j)−µi) T Γi−1(ImRi(j)−µi) 2  (5.6)

En remarquant que µi = |Im1

Ri| P|ImRi| j=1 ImRi(j), et ΓRi = 1 |ImRi|(ImRi TIm Ri)− µi Tµ i, la

longueur de description du terme de fidélité radiométrique devient :

Lfid(Ri) = |ImRi|

2 (3 + log(2.π) + 3. log(|ΓRi|)) (5.7)