• Aucun résultat trouvé

Classification des asservissements visuels

Asservissement visuel d’un éclairage opératoire

4.1 Généralités sur l’asservissement visuel

4.1.1 Classification des asservissements visuels

4.1.1.1 Position et nombre de caméra(s)

Pour réaliser ce déplacement, différentes approches ont été proposées. Elles diffèrent selon le nombre de caméra(s) utilisée(s), leur position, le type d’informations visuelles à disposition, la connaissance a priori sur l’objet et son environnement. [KC02] propose de hiérarchiser ces approches selon le nombre de caméra(s) en action ainsi que leur position. On distingue alors des macro-groupes (figure4.1).

Fig.4.1 – Classification des différentes approches en asservissement visuel (source : [KC02])

1. la caméra se trouve au bout de l’effecteur (Eye-in-hand) : on parle alors de caméra embarquée ; 2. la caméra observe l’effecteur (Stand-alone parfois Eye-to-hand) : il s’agit de caméra déportée ; 3. plusieurs caméras se trouvent au bout de l’effecteur ;

4. plusieurs caméras sont déportées ;

5. utilisation combinée de caméras embarquées et déportées (nous ajoutons à la figure4.1l’association de deux caméras, l’une embarquée l’autre déportée à l’image de [FCM00]).

Remarque :Pièce centrale dans une tâche d’asservissement visuel, la caméra est un capteur constitué d’une optique et d’une matrice photosensible. Elle permet l’observation d’une scène à distance dans un domaine spectral donné, dans la plupart des cas le visible. Toutefois il est possible de trouver des caméras dans d’autres domaines tels que l’infrarouge ([CHYQNS04]), les rayons X ([OIA+11]) et γ ([XSK+10]), utilisées notamment pour la surveillance, le médical et le nucléaire. Le domaine spec-tral n’est pas le seul critère de différenciation, sont également présents la résolution, l’encombrement mais aussi la qualité de leur optique. Si l’optique permet d’atténuer l’astigmatisme (dû au mauvais accolement des lentilles), la courbure de champ, les aberrations chromatiques ainsi que les distorsions, elle joue également un rôle dans la capture de la scène. La caméra peut alors être omnidirection-nelle (caméra catadioptrique permettant une vue à 360°) grâce à l’utilisation de miroir plan ([HA01]), hyperbolique ([YYY93]) ou encore parabolique ([GN98]). Plus classiquement il s’agit de caméras pers-pectives (caméras dioptriques). Enfin elle peut être motorisée ; il s’agit notamment des caméras dites PTZ (Pan Tilt Zoom [DJ08]) qui possèdent deux degrés de liberté.

4.1.1.2 Asservissement direct ou indirect

Une autre manière de classifier les asservissements visuels consiste à regarder la distance "logicielle"

séparant la loi de commande des moteurs : on parle alors d’asservissement visuel indirect ou direct.

L’asservissement visuel indirect repose sur l’emploi de contrôleurs bas-niveau chargés de convertir la consigne provenant d’une loi de commande définie en vitesse. Il est donc nécessaire d’avoir un caden-cement des contrôleurs bas-niveau plus élevé que celui du calculateur chargé de la loi de commande et par extension plus élevé que la fréquence d’acquisition de la caméra. Ceci conditionne donc le choix des caméras à utiliser dans ce type d’asservissement, les caméras rapides étant à proscrire. Bien que ce point puisse constituer un élément rédhibitoire selon les applications, l’indépendance de l’organe chargé du traitement d’images et de la loi de commande en fait une technique pertinente lorsque la définition du robot est sujette à débat.

A contrario, dans un asservissement visuel direct, l’état du robot est estimé au niveau du contrôleur vision. Charge à cet organe de gérer les moteurs afin de réaliser le mouvement souhaité. Cet aspect rend donc plus difficile le changement du robot dédié à la manipulation (passage par exemple d’un robot cylindrique RPP à un robot anthropomorphe 6R). Cependant, l’avantage majeur de cette approche est qu’elle permet l’emploi de caméras vingt à quarante fois plus rapides ([GDM00], [NITM00]) qu’une ca-méra classique (cadencée à 25Hz) grâce à l’augmentation des capacités de calcul des ordinateurs (loi de Moore).

4.1.1.3 Critère de Sanderson et Weiss

Dernier critère de classification, celui de Sanderson et Weiss ([SW80]), repose sur le type d’information utilisé dans la boucle de commande. On distingue trois approches : 3D, 2D et hybride. Ces différents asservissements se différencient par leur mode de calcul de l’erreur qui s’effectue respectivement dans le repère cartésien, image ou mixte (bien que certains travaux proposent le passage d’un mode à un autre [GH08]).

Asservissement visuel 3D - AV3D

L’asservissement visuel 3D (Position Based Visual Servoing - PBVS) englobe les techniques utilisant dans leur boucle de commande la pose du robot. Celle-ci correspond à la position et à l’orientation de l’effecteur. L’objectif est donc de faire tendre la pose courante ˆp vers la pose désiréepconnue au préa-lable (figure4.2). Le calcul de l’erreur, intervenant dans la boucle de régulation, s’effectue dans le repère cartésien. L’estimation de ˆp est non triviale et donne lieu à deux principales approches :

– La première consiste à prendre plusieurs images simultanées sous différents points de vue (cas 3, 4 et 5 figure 4.1) et à appliquer le principe de géométrie épipolaire (stéréovision). Ceci permet une estimation de ˆp même en l’absence de connaissance sur la géométrie de la scène ;

– La seconde s’applique aux cas d’applications monoculaires. La détermination de la pose requiert alors le modèle géométrique (CAO) d’un ou plusieurs objet(s) observé(s) que ce soit par apprentis-sage ou par hypothèse. Cette technique repose sur l’extraction à chaque itération d’indices visuels que l’on appelle primitives visuelles. Ces primitives peuvent être "naturelles" (primitives intrin-sèques à l’objet comme les coins) ou "rajoutées" (amers visuels collés sur un cœur par exemple). Il peut s’agir de points, de droites ([ECR93]), d’ellipses particuliers de l’objet d’intérêt ([Vin01]) ou encore les moments [TC05] ; le lecteur pourra se reporter à [MC05] pour une synthèse en la matière.

Cependant, plus le nombre de paramètres nécessaires pour décrire la primitive est élevé et plus le temps de calcul pour identifier ces paramètres sera grand. Il faut donc mettre en regard la com-plexité des indices visuels identifiables dans la scène observée et la puissance de calcul accessible.

Ceci explique donc pourquoi les points sont généralement privilégiés ([Cha90]). Il faut également s’assurer qu’au cours du déplacement un nombre suffisant de primitives soit vu par la caméra, afin de se prémunir des problèmes de non unicité de pose dus à l’insuffisance du nombre de points détectés.

L’effort de reconstruction à faire limite les applications à des objets de géométrie simple (le temps de calcul pour l’estimation de la pose augmentant de façon significative avec la complexité de l’ob-jet). De plus, l’estimation de la pose reposant exclusivement sur la connaissance de la géométrie de l’objet d’intérêt, cette technique est donc vulnérable aux erreurs de modélisation de l’objet lui-même ainsi qu’aux bruits de mesure. Bien que l’asservissement visuel 3D ait pour avantage de déplacer l’effecteur selon des trajectoires réalisables, il ne garantit pas la non disparition d’une ou plusieurs primitives.

Fig. 4.2 – Principe de l’asservissement visuel 3D

Asservissement visuel 2D - AV2D

L’asservissement visuel 2D (Image Based Visual Servoing - IBVS) consiste à faire tendre une configu-ration de primitives courantes,s(t)vers une configuration désirées préalablement connue (figure4.3).

L’avantage d’une telle approche est l’absence de reconstruction géométrique même dans le cas d’appli-cations monoculaires où il y a une perte de profondeur.

Cependant, en se basant sur un contrôle uniquement dans l’image sans regard de la position de l’effecteur dans l’espace, il est parfois possible que le robot tente d’atteindre des positions inappropriées (hors de son espace de travail par exemple). Mis en évidence par [Cha98a] le problème "d’avance/retrait" est un exemple de ces mauvais comportements. Lors d’une tâche d’asservissement, où quatre primitives de type point servent au guidage, il est demandé à un robot à six degrés de liberté (de type free-flying camera) d’exécuter une rotation de 180°autour de l’axe optique de la caméra. Le phénomène observé est un retrait vers "l’infini" suivant l’axe optique. Ceci s’explique par le fait que le déplacement des points dans le re-père image de la caméra est restreint à des droites (en raison de la forme imposée de la dérivée de l’erreur).

Fig. 4.3 – Principe de l’asservissement visuel 2D

Asservissement visuel 2D1/2 - AV2D1/2

L’approche hybride, développée par [MCB98], utilise une consigne définie à la fois dans l’espace image de la caméra et dans l’espace cartésien, ce qui permet de pallier au problème "d’avance/retrait" possible dans l’AV2D grâce au découplage entre la rotation et la translation du robot. Ainsi, le contrôle en rotation est directement issu du calcul de l’homographie mettant en jeu l’appariement des points dans l’image, les translations sont quant à elles régies par l’erreur de configuration dans le plan image. En

s’affranchissant d’un modèle géométrique de la cible mais en conservant un contrôle dans l’espace image, il est possible d’éviter la fuite des primitives hors du champ de vision de la caméra possible en AV2D.

Cette technique suppose la mise à disposition des informations à la fois 3D et 2D. Dans le cas où aucune

Fig. 4.4 – Principe de l’asservissement visuel2D1/2

de ces informations n’est accessible, le recours à l’asservissement d2D/dt est une dernière option.

Asservissement visuel AVd2D/dt

La technique d’asservissement visuel d2D/dt utilise comme consigne un champ de vitesse désiré. Bien que la définition de la consigne se fasse dans le plan image, aucune extraction de primitives n’est nécessaire.

Dans [SW86] et [CC01], les auteurs utilisent un champ de vitesse basé sur un modèle du mouvement apparent de l’objet limité à un plan pour leur loi de commande (4.1). Le modèle développé prend la forme d’une expression quadratique telle que les variations de position d’un point (x, y)T de la scène observée (appartenant au plan imageπ) sont exprimées par :

( x˙ =c1+a1x+a2y+a3x2+a4xy

˙

y=c2+a5x+a6y+a7y2+a8xy (4.1) La démarche consiste donc à identifier le jeu de paramètresai etcinécessaire à l’accomplissement de la tâche demandée. Cependant, pour être effective cette approche requiert un temps de calcul important (notamment si le modèle du mouvement est quadratique) et s’avère très sensible aux bruits de mesures.

En résumé :

Nous venons de voir les différents types d’asservissements visuels. Nous retiendrons que :

– l’asservissement 3D effectue la régulation dans l’espace cartésien. Ceci passe par la planification et le suivi de trajectoire pour le déplacement du système robotique, ce qui permet d’assurer le succès de la tâche d’asservissement. En contrepartie, l’AV3D nécessite un modèle tridimensionnel de l’objet d’intérêt. La puissance de calcul nécessaire est proportionnelle à la complexité de ce modèle ce qui en limite les applications ;

– l’asservissement 2D effectue la régulation dans l’espace image grâce à des indices visuels appelés primitives. Ceci permet de ne pas avoir recours nécessairement à un modèle de l’objet. Le traitement d’images est donc crucial pour ce type d’asservissement. La planification d’une trajectoire n’est donc pas possible ;

– l’asservissement 2D12, utilise à la fois les informations 3D et 2D. L’idée est conserver les avantages des deux méthodes tout en palliant leurs inconvénients. Ainsi translation et rotation sont découplées ce qui permet entre autres d’être robuste au problème "d’avance/retrait" ;

– l’asservissement d2D/dt utilise la notion de champ de vitesse. Aucun modèle ou primitive n’est utilisé ce qui simplifie le traitement d’image. Toutefois, la difficulté d’accéder au modèle de mouvement de l’objet limite son application. Comme nous le verrons dans le chapitre dédié aux réalisations techniques, l’emploi d’une caméra unique nous limite à l’AV2D.