• Aucun résultat trouvé

4.6 L’algorithme Panama, Röfer

4.6.3 Orientation

Röfer apporte des idées nouvelles, qui s’appuient sur le fait que le flux optique calculé est dense et régulièrement réparti autour de la vue de référence.

Le but d’ensemble est d’extraire trois paramètres : – la composante rotationnelle du mouvement du robot ;

– la direction du vecteur déplacement du robot (dans le référentiel de la première vue) ; – la norme de ce même vecteur.

Nous nous concentrons dans cette section sur l’extraction de la composante rotationnelle.

Röfer reprend le fait (que nous avons déjà illustré en figure4.2à l’occasion du modèle de Nelson

et Aloimonos) qu’en théorie le flux optique dû à la translation seule est de signe constant à gauche et à droite de la ligne joignant point d’expansion et point de contraction ; et cette ligne est un diamètre du cercle représentant le panorama. À ce champ théorique s’ajoute une composante due à la composante rotationnelle du mouvement, égale à l’angle de la rotation et s’ajoutant sur tous les éléments.

La somme du flux dû à la translation est nulle lorsque l’hypothèse de distances égales (cf

sec-tion 4.5) est vérifiée. La première proposition de Röfer est de calculer la moyenne du flux observé

et de retrancher cette moyenne de toute les valeurs. Malheureusement ceci n’est qu’approximatif car, même sans rotation, les écarts d’un côté et de l’autre peuvent être très différents. Par exemple, si l’ani-mat longe un mur proche situé d’un côté de son champ de vision, alors que l’espace est ouvert de l’autre côté, le flux sera bien plus fort du côté du mur.

Röfer introduit une remarque qualitative intéressante. Même si le flux translationnel est plus

im-portant d’un côté que de l’autre, il reste vrai qu’il y a dans le flux translationneln2 valeurs positives et

n

2 valeurs négatives. La méthode, illustrée en figure4.5, consiste donc à trier les écarts pour séparer la

moitié des plus grands de la moitié des plus petits. Ensuite, il suffit de retrancher une valeur séparant ces deux ensembles pour retrouver un flux optique translationnel.

Cette dernière méthode semble bien fondée et donner le bon résultat. Röfer rapporte en effet une bonne précision dans des expériences simulées comme réelles. Les simulations qu’il décrit ont une

erreur maximale de 4.5, et en général meilleure (souvent de l’ordre d’1).

Remarquons que cette précision s’appuie sur la densité de l’appariement obtenu. Si l’environne-ment ne contient pas assez d’élél’environne-ments susceptibles de contribuer à un bon appariel’environne-ment, la précision peut s’en trouver dégradée. En fait, cet effet peut être prédit en le comparant à la solution trouvée par Nelson et Aloimonos. Ces derniers trouvent l’orientation en minimisant une fonction mesurant les éléments faisant du flux optique mesuré un flux non purement translationnel. Pour trouver un flux satisfaisant il faut descendre un gradient, donc calculer la valeur de la fonction de coût plusieurs fois. C’est plus coûteux en calcul mais la méthode est applicable même si une partie des informations manque ou est irrégulièrement répartie. En revanche, la méthode de Röfer qui trie les valeurs dispo-nibles est un peu plus légère (si on utilise un algorithme de tri performant) mais elle suppose que toutes les valeurs sont disponibles et pertinentes. Nous y reviendrons au moment de comparer notre

4.6. L’ALGORITHME PANAMA, RÖFER 99 a) b) c) flux optique rotation calculée θ θ θ

FIG. 4.5: Méthode 2 de Röfer pour extraire la composante rotationnelle du flux optique. a) Le flux optique trouvé, déroulé suivant l’axe des abscisses. b) Puisque le champ translationnel seul contient autant de points de flux dans un sens que de flux dans l’autre sens, il suffit de trier les valeurs du champ composite et repérer une des valeurs séparant le jeu trié en deux sous-ensembles de même nombre d’éléments. C’est la rotation cherchée. c) Après avoir retiré la rotation à tous les éléments du flux initial, on obtient le flux translationnel restant. (Figure adaptée de [RöF 97b].)

4.6.4 Direction à suivre

Une fois obtenu le flux optique dû à la translation, on cherche les points d’expansion et de contrac-tion qui sont normalement opposés.

Röfer introduit là aussi des propositions intéressantes, qui s’appuient sur la disponibilité d’un appariement dense et précis.

a) b) FOE FOC flux optique vecteur vote directions de vote possible direction de translation

FIG. 4.6: Méthode 1 de Röfer pour extraire la direction à suivre. a) Le flux translationnel, dont on cherche le point d’expansion (FOE) et le point de contraction (FOC). b) Selon sa direction, le sens de chaque flèche du flux optique « vote » sur le côté où se trouve le point d’expansion. Il suffit, si les sens des flèches sont justes, d’associer un vecteur vote à chaque élément de flux. Alors la somme vectorielle des votes pointe exactement vers le point d’expansion. En effet, parce que le flux optique est uniformément dense et tous les vecteurs votes sont unitaires, les écarts se compensent par symétrie. (Figure adaptée de [RöF 97b].)

Röfer expose une première méthode qui consiste à considérer que chaque élément de flux optique est compatible, selon sa direction, avec l’hypothèse que le point d’expansion est dans le demi-plan à gauche ou à droite du pixel considéré. On considère, comme pour les modèles CC, un vecteur unitaire

représentant cette information comme un vote (voir figure4.6). La somme de ces votes est supposée

être la direction du point d’expansion. La direction à suivre pour revenir au but est à l’opposé, c’est la direction du point de contraction. Remarquons que ce modèle est proche des modèles CC parce qu’il réalise une somme vectorielle. Cependant il a une particularité nouvelle et importante : la disponibilité d’informations de flux optique sur tout le cercle permet en principe une précision parfaite, si le flux optique est juste.

Malheureusement le sens du flux optique réellement obtenu en amont n’est pas juste en chaque point, surtout sur les petits vecteurs. La première méthode n’est donc pas exacte en pratique. Röfer propose alors une seconde méthode qui ressemble au modèle PV puisqu’on y introduit la proportion-nalité de chaque vecteur à la cause qui lui donne naissance. Malheureusement, ce changement rend caducs les arguments qui rendaient la première méthode potentiellement exacte (la symétrie ne com-pense plus les écarts). On peut lui prédire les mêmes travers que la méthode PV. Et les expériences en

simulation ([RöF 97b] chapitre 1) le confirment.

Röfer considère alors une troisième méthode intéressante (puis une quatrième, mais qui n’est qu’un petit raffinement par-dessus la troisième). On calcule la somme des flux optiques sur un

demi-4.6. L’ALGORITHME PANAMA, RÖFER 101

cercle. La position du demi-cercle telle que la somme est maximale est exactement en face de la position telle que la somme est minimale, et la limite entre ces deux demi-cercles opposés est en principe constituée du point d’expansion et du point de contraction.

Il est intéressant de noter que Röfer rapporte à l’aide d’expériences en simulation que ces mé-thodes, sauf la première, semblent compenser l’erreur sur l’orientation du robot. C’est-à-dire qu’avec ces solutions, si le robot a mal estimé son orientation, l’estimation de la direction vers le but n’en est pas très perturbée.

Röfer présente aussi une méthode pour calculer la « distance » parcourue, tout en précisant qu’elle ne constitue pas vraiment une mesure de distance, mais plutôt une indication qui permet d’estimer par exemple si un panorama A est plus proche de B que de C.

La conclusion des expériences de simulation est qu’en général, le meilleur choix est la solution 2 pour le calcul de l’orientation et la solution 1 pour le calcul de la direction à suivre.

4.6.5 Conclusion

La thèse de Röfer introduit des méthodes intéressantes car bien fondées et appuyées par des expé-riences.

On regrettera cependant que les expériences simulées dans le chapitre comparant les diverses mé-thodes concernent un environnement un peu simple et prennent ainsi le risque de ne pas être fidèles à la réalité. On remarquera que l’analyse et la discussion sont fondées sur des statistiques « analytiques »

et non « synthétiques » (cf.2.1.6.7).

Quoiqu’il en soit, il apparaît que si l’environnement est assez riche en détails et si le système visuel est capable de les apparier, alors le modèle de Röfer peut être précis.

Nous estimons cependant qu’il est plus intéressant de partir de panoramas segmentés car ils sont plus légers à traiter et peuvent donner de bons résultats. Les méthodes expérimentées par Röfer pour calculer l’orientation et la direction à suivre s’appuient généralement sur la densité et la régularité des appariements entre panoramas, propriété que n’ont pas des appariements de panoramas segmentés. Ces méthodes ne peuvent donc être reprises telles quelles dans notre cas.

Toutefois, la méthode de calcul de la direction à suivre par élimination, que nous introduirons

en5.3peut être considérée comme apparentée à la première méthode de Röfer pour calculer la

direc-tion à suivre, mais applicable à des panoramas segmentés.

De plus, Röfer s’est donné pour critère d’arrêt d’une trajectoire de l’animat le fait que le mouve-ment commandé en un point est proche de la direction opposée au mouvemouve-ment précédent, idée dont