• Aucun résultat trouvé

Calcul de la loi de commande

Asservissement visuel d’un éclairage opératoire

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

4.1.5 Calcul de la loi de commande

4.1.5.1 Notion de fonction de tâche

Pour une tâche d’asservissement visuel 2D, il est nécessaire de connaître la configuration courante des primitivess(t)en fonction der(t), la pose de l’éclairage telle que :

s(t) =g(r(t)) (4.11)

L’objectif est donc de faire tendre s(t) vers une configuration désirée s(t) connue au préalable. La réalisation de cet objectif conduit donc à la minimisation de l’erreur (ou fonction de tâche) définie dans l’image, notéee(t), telle que :

e(t) =s(t)−s(t) (4.12)

La caméra est donc bien dans la pose désirée sie(t) = 0. L’objectif de l’asservissement visuel est donc de trouver l’enchainement des poses permettant d’atteindre s. Cependant résoudrer=g1(s)pour définir le chemin optimal -méthode globale- pour le robot s’avère généralement coûteux en temps de calcul, ce qui exclut son utilisation en ligne. Il est donc plus simple de recourir à la méthode locale consistant en une approximation de la fonctiong :

˙

oùLsest la matrice d’interaction de dimension2×6liant l’espace cartésien à celui de l’image ([HHC96]).

Le second membre τ est le torseur cinématique quantifiant le mouvement à effectuer pour atteindre la pose désirée, exprimé dans le repère cartésien. τ est une composition de translations tet de rotations telle que :

τ= [t,R]T, avect= (tx, ty, tz)T et R= (Rx, Ry, Rz)T (4.14) 4.1.5.2 La matrice d’interaction Ls

Considérant des primitives est de type point et une caméra perspective, la matrice d’interaction Ls

a pour expression (4.15). Le lecteur pourra se reporter aux travaux de [Cha90] pour une extension vers d’autres types de matrices d’interaction. Il faut noter que cette forme n’est valable que dans le cas d’une seule primitive. Or, comme l’a montré [MR93] il est nécessaire, dans le cas d’un robot à six degrés de liberté, d’en avoir au minimum trois pour assurer l’unicité de la pose. En conséquence, nous concaténonskfois la matrice (4.15) de manière

à obtenir une matrice d’interaction (de dimension(2k)×6) englobant l’ensemble des primitives visuelles

Dans cette expressionLsicorrespond à la matrice d’interaction de laièmeprimitive. Par abus de langage nous utiliserons la notationLs(s, Z)pour parler deLstotal(s, Z).

Ce calcul de la matrice d’interaction est donc fonction de s et de Z. Si la détermination de s est ai-sée car elle revient à connaître les coordonnées (u, v)T de la zone d’intérêt, il n’en est pas de même pour la profondeur Z séparant la caméra du point dans l’espace cartésien. En effet, la projection dans l’espace de la caméra dénature la qualité des informations, ne permettant pas de revenir à l’appréciation de la profondeur. L’ajout de capteurs extéroceptifs est dans notre cas interdit, ce qui implique de devoir estimerZcet par conséquentLs. L’évaluation deLsnotéLˆspeut s’effectuer suivant plusieurs modalités : 1. Lˆs ,Ls(s,Zˆc). Cette approche consiste à estimer à chaque itération l’altitudeZc permettant de se rapprocher au plus près de Ls(s, Zc). Les techniques employées en la matière sont basées sur le traitement d’images permettant la reconstruction 3D de la scène, ce qui suppose la mise à disposi-tion de plusieurs caméras ou d’un modèle géométrique de la cible. Ce type d’estimadisposi-tion implique le déplacement rectiligne des primitives dans l’espace image, ce qui peut engendrer des mouvements inappropriés dans l’espace 3D ;

2. Lˆs ,Ls(s, Z). La matrice d’interaction est choisi constante, égale à celle évaluée à la position désirée c’est-à-dire pours≡setZ≡Z. L’avantage est le contrôle des mouvements dans l’espace 3D, à l’instar de la méthode précédente, mais cela invalide le caractère rectiligne du déplacement des primitives ;

3. Lˆs , 12(Ls(s,Zˆc) +Ls(s, Z)). Proposé par [Mal04], le calcul de la série de Taylor de la matrice d’interaction arrêté au second ordre permet le contrôle commun du robot dans les espaces 3D et image. Cependant, cette technique requiert comme pourLs(s, Z)la connaissance de la distance séparant la primitive de la caméra ;

4. D’autres auteurs proposent un calcul différent de la matrice d’interaction : citons par exemple un développement suivant une méthode dynamique quasi-Newtonienne [PML04] et une forme générali-sée [MC08] permettant le passage deLs(s, Z)àLs(s,Zˆc)par ajustement d’un scalaire pondérant leur importance, ainsi qu’un apprentissage non pas de la matrice d’interaction comme dans [HA94]

mais de son inverse [LJDC04].

Dans un cas général, au voisinage de la pose de référence les différents jacobiens image seront similaires en raison du rapprochement de l’altitude courante et de l’altitude désirée. Le choix de la technique d’es-timation sera donc négligeable si la tâche du robot reste dévolue aux abords de la position de référence (car l’erreur d’estimation est moindre). A contrario, l’éloignement de la pose courante par rapport à la

pose désirée occasionnera de nettes disparités de comportement. Il est donc nécessaire de choisir judicieu-sement le type d’approximation en fonction des contraintes de l’application. Dans notre cas, l’élévation et l’abaissement ne sont pas motorisés ; nous estimerons donc constante la distance séparant la caméra de la scène opératoire (et par extension de la zone d’intérêt) ce qui correspond au cas n°1 c’est-à-dire oùLˆs,Ls(s,Zˆc). L’éclairage opératoire étant conçu pour une distance comprise entre 1m et 1.2m nous considéronsZˆc=1.1m.

4.1.5.3 Expression de la loi de commande

Nous cherchons à établir le lien entre les variations dans l’image et le déplacement à effectuer pour atteindre s. Pour ce faire, nous nous basons sur la fonction de tache vue précédemment qui s’écrit e(r, t) = (s(r, t)−s)(équation4.12). Pour simplifier l’écriture nous ne ferons plus mention des variables internes t et r correspondant respectivement au temps et à la pose de la caméra. Dès lors, nous avons sous condition que la cible est fixe :

˙

e= ˙s (4.17)

Afin de garantir la rapidité ainsi que la convergence de l’erreur de poursuite, il est courant d’utiliser une décroissance exponentielle de l’erreur :

˙

e=−λe (4.18)

oùλest un scalaire permettant la paramétrisation de la vitesse de convergence (λ∈R+). La dérivation du termee˙ permet d’écrire :

En combinant (4.19) et (4.18), le torseur cinématique s’exprime : τ(t) =−λLˆ+se−Lˆ+s ∂e

∂t (4.20)

Dans cette expression,Lˆ+s correspond à l’inverse de la matrice d’interaction. Cette opération n’est pas aisée. On distingue trois cas possibles :

1. d=n: la matrice d’interaction est carrée, l’inversion revient à faireLs=Ls1;

2. d < n : la matrice d’interaction n’est pas carrée, l’inversion se fait grâce à l’inverse généralisée.

Il est d’usage en asservissement visuel de recourir à l’opérateur pseudo-inverse de Moore-Penrose noté†. Son emploi est discuté par [LJDC04]. LorsqueLsest de rang plein, la pseudo-inverse a pour expression :Ls=LTs(LsLTs)1;

3. d > n : la matrice n’est toujours pas carrée, l’usage de la pseudo-inverse est encore possible mais avec un léger ajustement (sous condition que Ls soit de rang plein) :Ls = (LTsLs)1LTs. Ce cas peut induire d’autres problématiques telles que des minima locaux.

Le terme ∂e∂t, intervenant dans l’équation4.20, correspond au mouvement propre de l’objet dans l’image.

Dans la mesure où il n’est pas possible d’accéder à sa valeur exacte, il est nécessaire de procéder à son estimation. Nous reformulons donc4.20comme suit :

τ(t) =−λLˆ+se−Lˆ+s ∂eˆ

∂t (4.21)

La non prise en compte du mouvement propre de la cible induit des erreurs de traînage. Pour y pallier il est nécessaire d’estimer ∂e∂tˆ. L’équation (4.22) est un exemple d’estimation proposé par [BC95] qui consiste à soustraire la contribution du mouvement effectué par le système de l’erreur e obtenue dans l’image :

Dans la mesure où, dans notre cas, la zone d’intérêt n’est pas statique (le chirurgien n’arrête pas son geste) il apparaît intéressant de procéder à ce type d’estimation. Toutefois, compte-tenu que la zone d’intérêt évolue dans un espace limité et à vitesse faible, nous faisons l’hypothèse que ∂e∂tˆ = 0. Ceci implique une réécriture de (4.21) :

τ(t) =−λLˆ+se (4.23)

L’étude de la stabilité de ce système revient à considérer une fonction de LyapunovV telle que : – V doit être définie positive ;

– V˙ doit être semi-définie négative (cas stable) ou définie négative (cas asymptotiquement stable).

L’interprétation physique de cette propriété est que la dissipation continue d’énergie doit amener le système vers un point de stabilité.

Dans le cas d’une tâche de positionnement, la fonction candidate généralement considérée est ([DHKHC04]) : V(t) = 1

2ke(t)k2= 1

2e(t)Te(t) (4.24)

La dérivée deV par rapport au temps s’écrit :

V˙(t) =e(t)Te(t)˙ (4.25)

En remplacante(t)˙ pars(t)˙ (4.17) nous obtenons :

V˙(t) =e(t)Ts(t) =˙ e(t)TLsτ (4.26) Or, nous avons vu précédemment queτ peut s’exprimer sous la forme :τ =−λLˆse(t), ce qui conduit à : V˙(t) =−λe(t)TLsse(t) (4.27)

On cherche à montrer que le système adopte un comportement asymptotiquement stable et que l’er-reur e(t) est nulle uniquement lorsque s(t) = s. Il faut donc prouver que V˙(t) <0; la condition sur V(t)>0, ∀e(t)6= 0étant déjà obtenue (4.24). Conformément à l’équation (4.27), ceci revient à vérifier

−λe(t)TLsse(t)<0(∀e(t)) autrement dit queLss>0.

Nous pouvons isoler les trois cas suivants :

1. le nombre de primitives visuelles est inférieur à 3 : l’atteinte de la position désirée n’est pas possible ; 2. le nombre de primitives visuelles est égal à 3 : La matrice Ls est carrée, et inversible (dim(Ls) = (2×3)×6). Le système est globalement asymptotiquement stable car stable et globalement attractif.

Le calcul deτ (4.20) conduit à l’atteinte dee(t) = 0telle ques=s;

3. le nombre de primitives visuelles est supérieur à 3 : il y a existence de plusieurs minima locaux.

Le système n’est pas globalement asymptotiquement stable mais uniquement stable localement.

L’utilisation de quatre primitives pour un robot à six degrés de liberté est préconisée ([CA07]).

Remarque : Ce problème de minima locaux rencontré dans ce dernier cas n’affecte pas l’AV3D et l’AV2D1/2 qui combinent les deux approches. D’autres stratégies le permettent aussi comme celle dite hybride (ou à commutation) qui consiste à passer de l’AV2D à l’AV3D en fonction de leur erreur respective. Ceci permet d’augmenter le domaine de stabilité du système et d’éviter la sortie de pri-mitives de l’image [GH07] (voir [KB08] pour une adaptation "matérielle" de cette stratégie). Une autre technique repose sur la notion de trajectoire du mouvement à exécuter (path planning). En la matière, il est possible d’utiliser des points de passage dans l’espace 3D constituant des étapes locales que le robot devra franchir pour atteindre la pose demandée. Ceci pose le problème de la traduction des informations tridimensionnelles en position articulaire car l’usage du modèle géométrique inverse permettant ce type de passage induit potentiellement des anomalies (conditions aux limites). Afin de ne pas passer par un modèle inverse, le recours au modèle géométrique direct est envisageable. L’avantage immédiat est l’évitement des singularités de ce modèle ; en contrepartie, l’aisance de travail apportée par la définition de la trajectoire dans l’espace 3D n’est plus de mise dans l’espace articulaire. Cette technique s’avère donc plus difficile à exploiter. Une dernière option repose sur la génération de la trajectoire dans l’espace image, on parle alors de trajectoire visuelle ([BMG97]).

Nous avons considéré jusqu’à présent que le robot servant à placer la zone d’intérêt au centre de la tache lumineuse possédait six degrés de liberté. Or, comme nous le verrons dans le chapitre 5 consacré aux réalisations techniques, le robot que nous utilisons dans cette étude n’en possède que deux. Dans ces conditionsLstotal n’est composé que deLs1 correspondant à la zone d’intérêt qui a pour expression (4.28) ([CC00]).

Compte-tenu des dimensions deLs, une seule primitive suffit. L’atteinte des est assurée sous condition qu’à chaque instant les coordonnées des(t)soient connues. Ceci suppose que le processus de la désigna-tion puisse fournir à chaque itéradésigna-tion la posidésigna-tion de la zone d’intérêt.

En résumé :

Nous avons présenté dans cette partie nos hypothèses de travail ainsi que les différentes étapes de mise en œuvre d’un asservissement visuel 2D. Nous avons montré que la loi de commande utilisée permet la décroissance exponentielle de l’erreur et assure la stabilité du système. Nous avons mis en avant que la détermination du torseur cinématique correspondant au déplacement à effectuer, nécessite l’inversion de la matrice d’interaction qui peut s’avèrer délicate. Cependant dans notre cas elle est simplifiée du fait de l’altitude constante de l’éclairage et de l’utilisation d’une seule primitive visuelle. Toutefois pour garantir le déplacement continu de l’éclairage il est nécessaire d’avoir à chaque itération la position de la zone d’intérêt.