SOMMAIRE

Les contours actis classiques : les snakes

b. Approches de résolution
Plusieurs approches de résolution existent afin de minimiser la fonctionnelle d’énergie : l’approche variationnelle, la méthode de programmation dynamique et l’algorithme glouton (greedy).

L’approche variationnelle

Il s’agit de l’implémentation la plus courante.
La méthode variationnelle consiste à résoudre les équations d'Euler associées à la fonctionnelle qui sont des équations aux dérivées partielles.

L'énergie à minimiser est :


Cela revient à chercher la solution de l'équation d'Euler associée (car un minimum vérifie l'équation d''Euler) :
(1)

avec
Remarque

: Cette éuation peut avoir plusieurs solutions car elle a plusieurs minima locaux.

Il faut ensuite discrétiser la courbe en réduisant les éléments de la courbe en points auxquels sont rattachées les forces externes et d'images de la courbe considérées en ces points.
Les dérivées figurant dans l'équation (1) sont alors remplacées par les différences finies c'est à dire des approximations.

On associee cette implémentation à une équation d'évolution temporelle. La position à l’itération t est calculée en fonction des forces liées à l’image et de la position t-1.
Le processus d'évolution s'arrête lorsque la différence entre deux itérations est très petite.

Programmation dynamique (Amini)

Cette méthode, introduite par Amini est une implémentation classique de résolution de problème d’optimisation.
Amini considère l’équation :


Après discrétisation, il convient que :

Le terme d’énergie interne est composé du terme du 1er degré et du terme du second degré. Après la discrétisation, cette énergie interne met en jeu un élément du contour, l’élément précédent et l’élément suivant. On a donc :

Avec :

Ceci nous ramène à un problème d'optimisation d'une fonction numérique de plusieurs variables. Il suffit de minimiser l’expression précédente pour obtenir à chaque itération le contour optimal.

Algorithme glouton (Greedy Snake Algorithm)

Cet algorithme itératif a été mis au point par Williams et Shah.
A chaque étape, pour chaque point du snake vi, on cherche le point dans le voisinage ayant la plus petite énergie. Si l’énergie calculée est inférieure à l’énergie du point vi, ce point est alors choisi comme nouveau point du snake et remplace le précèdent. Sinon le point vi n’est pas modifié.
On répète ce mécanisme jusqu’à convergence c'est-à-dire lorsque le contour à l’étape n est identique à celui obtenu à l’étape n - 1.

Remarque : Pour que la méthode fonctionne, il faut s’assurer que les points sont suffisamment espacés : si deux points sont trop proches l’un de l’autre, ils auront tendance à converger vers le même point et la courbe s’écrasera.








Copyright IMAC 2007 - Stéphanie Juillard - Lucie Moineau