• Aucun résultat trouvé

B. Reconnaissance du contour

B.2 Analyse du contour

B.2.1 Première méthode utilisée

Les diverses méthodes utilisées par d’autres groupes ont déjà été présentées au chapitre II.1 p. 57. Nous allons décrire ici les améliorations successives que nous avons apportées à l’algorithme de détection ; le premier algorithme que nous avons développé présentait déjà de nettes améliorations par rapport aux méthodes ne dé-tectant que des points ou portions du contour [Schneider et al., 1984; Bivas et al., 1987; Strey et al., 1995], ou enfin l’ensemble du contour à partir du minimum des ni-veaux de gris [Engelhardt et al., 1985; Faucon et al., 1989; Mitov et al., 1992; Méléard et al., 1997; Häckl et al., 1997]. La première génération de l’algorithme était l’adap-tation à notre système de celui développé par H.-G. Döbereiner [Döbereiner et al., 1997; Döbereiner, 2000a]. Nous allons décrire son fonctionnement.

Le premier point

n. En effet le processeur Xeon permet d’exécuter plusieurs processus en parallèle sur le même processeur.

B. Reconnaissance du contour

Cas de la première image (ou de la première image après une où le contour n’a pas été trouvé) L’utilisateur définit un rectangle dans l’image où se trouve la vésicule, ainsi qu’un point approximativement au centre de la vésicule. La première étape est de trouver un point du contour ; pour cela le programme trace une ligne horizontale passant par le point donné par l’utilisateur ; le long de cette ligne, les niveaux de gris sont calculés. Ensuite sur un intervalle de 15 points, 7 points avant le point testé et 5 après, la forme du profil est approximée par une droite et la pente de cette droite mesurée (voir sur cette approximation le § A.1.3 p. 81). Ce processus est répété pour tous les points de la ligneo. Le point testé qui a la

Intensit é (unit é arbitraire) Position (Pixels)

Fig.II.24 – Vésicule et profil de niveau de gris le long d’une ligne horizontale passant sensiblement par le centre de la vésicule, afin de déterminer un premier point du contour (voir § B.2.1).

plus grande pente (calculée sur 15 points) est pris comme premier point du contour (x0, y0) (voir fig. II.24 et II.19 p. 83). Dans le cas où on se trouve à l’image suivant une image où le contour n’a pas été trouvé, le point sensiblement au centre de la vésicule donné par l’utilisateur est remplacé par le dernier point du dernier contour détecté correctement.

Cas d’une image suivant une image où le contour a été détecté correc-tement Dans ce cas, le premier point du contour sera le dernier point du contour précédent.

Trouver le point suivant à partir du précédent Dans cette première version de l’algorithme, la détection est effectuée le long d’un axe vertical et d’un axe hori-zontal uniquement. Nous allons détailler la détection le long d’un axe horihori-zontal. Si le dernier point reconnu est (xi, yi), alors on calcule les niveaux de gris le long d’une droite horizontale passant par (xi, yi ± 1) ; le signe est choisi de telle sorte que ce

o. On commence en fait au point 8 et on finit au point N-7, pour permettre de toujours prendre les 15 points de la même manière.

(a) (b) (c) 520 500 480 460 440 50 40 30 20 gr e y le v el (a. u .) position (pixels) position (pixels) A B 520 500 480 460 440 300 250 200 150 100 50 0 gr e y le v el (a. u .)

F

R

Fig.II.25 – (a) Image en contraste de phase d’une vésicule géante. La résolution est de 11 pixel par microns. (b) Profil des niveaux de gris le long de la ligne AB de l’image (a) (longueur 29.4 µm). On pourra remarquer les deux maxima de pente correspon-dant aux intersections avec le contour. (c) Zoom sur le profil de (b) corresponcorrespon-dant à la zone grisée. Le profil est approché localement par une droite représentée en trait plein F. La ligne en pointillé R correspond au niveau de gris moyen. L’intersection de ces deux droites F et R va donner la position du contour. On pourra remarquer à l’intérieur du cercle que le minimum d’intensité du halo autour de la vésicule peut être divisé en deux à cause du bruit de détection et conduire à une perte de précision si la membrane est localisée à partir du minimum d’intensité comme c’est le cas pour [Méléard et al., 1998; Gerbeaud, 1998] ou [Häckl et al., 1997].

B. Reconnaissance du contour

point soit dans le prolongement des points du contour déjà reconnus (typiquement on se base sur les 10 derniers points et on regarde si l’ordonnée croît ou décroît). Le long de cette droite, on va approcher la forme du profil de niveaux de gris en fonction de l’abscisse par une droite (F) sur l’intervalle (xi− 5, yi± 1) (xi+ 5, yi± 1) (voir fig. II.25). On calcule parallèlement le niveau de gris moyen sur l’intervalle (xi− 15, yi± 1) (xi+ 15, yi± 1) ; de là on obtient une droite horizontale (R) sur un graphique représentant le niveau de gris en fonction de l’abscisse. L’intersection de (R) et de (F) donne le point (¯xi, yi± 1). On notera Sx

i, la pente de la droite (F) (voir fig. II.25).

On reproduit la même méthode le long d’une droite verticale passant par le point (xi± 1, yi) pour obtenir l’estimation (xi± 1, ¯yi), et la pente Siy.

A cette étape on va comparer les pentes Sx i et Sy

i. On estimera la position de la membrane à cet endroit provenant du cas (vertical ou horizontal) qui a donné la plus grande pentep. Ainsi on obtient par exemple dans le cas où Sx

i domine, l’estimation (exi+1, eyi+1) = (xi±1, ¯yi) pour la position de la membrane et (xi+1, yi+1) = (xi±1, yi) pour la position du point sur la grille de pixel qui permet l’itération suivante. Fin de l’acquisition d’un contour Nous déterminons ainsi de proche en proche les points du contour. Le contour est considéré comme fini lorsque l’algorithme re-vient sur le point indexé par m (à quelques pixels prés) où m vaut typiquement 10 (on suppose qu’on a numéroté les points détectés les uns après les autres de proche en proche). Prendre le point indexé par m plutôt que le premier point permet d’utiliser les points entre 1 et m−1 pour permettre à l’algorithme de se stabiliser correctement sur le contour. Par ailleurs, on utilise plusieurs fois les 10 points précédents le point courant pour la détection du contour ; pour les premiers points, ces points précédents sont fixées arbitrairement à des valeurs tel qu’ils forment une droite verticale avec le premier point et orientée vers les ordonnées décroissante ; les points détectés en utilisant ces points fixés arbitrairement ne sont pas intégrés au contour, grâce au fait que m est plus grand ou égal à «la mémoire des points précédents» (qui contient typiquement 10 points).

Par ailleurs si l’itération pour rechercher les points du contour suivant se répète un trop grand nombre de fois, et que le nombre de points détectés comme appar-tenant au contour atteint une valeur limiteq, alors le contour est abandonné, non enregistré. Cette condition force les contour détectés à être clos pour être enregistrés. Le contour enregistré Le contour enregistré est le contour commençant au point m (voir § B.2.1) et finissant au dernier point détecté. Cela permet un contour clos, et sans zone de recouvrement (où le tracé reviendrait sur des points déjà détectés).

p. Un raffinement pour éviter à l’algorithme d’osciller entre estimation par droite horizontale et estimation par droite verticale dans les zones où le contour de la vésicule fait un angle de 45◦ avec l’horizontale est de mettre un «retard» au changement de direction pour l’estimation. Par exemple, il faut que la pente en vertical soit 10 fois de suite la plus grande que l’estimation par droite horizontale, avant qu’on passe à l’estimation par droite verticale.

q. Cette limite paramétrable est fixée dans notre cas à 212= 4096, sachant qu’en fonction de la taille de la vésicule le nombre de points varie de 700 à 3000.

Limitations Cette méthode a un inconvénient majeur : en effet à un moment de la reconnaissance il y a un saut discontinu dans la méthode de calcul de la position ; en effet on passe d’une détection suivant l’axe horizontal, à une détection suivant l’axe vertical. Ceci introduit un artefact dans le contour qui prend la forme d’une ou plusieurs «dents de scie». De plus lorsque le contour est incliné d’une valeur proche de 45 par rapport à l’horizontale, la reconnaissance est relativement imprécise. Ces différents points conduiront aux amélioration décrites dans le § B.2.2.