• Aucun résultat trouvé

Asservissement visuel et commande de la distance focale

N/A
N/A
Protected

Academic year: 2021

Partager "Asservissement visuel et commande de la distance focale"

Copied!
24
0
0

Texte intégral

(1)

HAL Id: inria-00074072

https://hal.inria.fr/inria-00074072

Submitted on 24 May 2006

HAL is a multi-disciplinary open access

archive for the deposit and dissemination of

sci-L’archive ouverte pluridisciplinaire HAL, est destinée au dépôt et à la diffusion de documents

To cite this version:

Bernard Espiau. Asservissement visuel et commande de la distance focale. RR-2613, INRIA. 1995. �inria-00074072�

(2)

a p p o r t

d e r e c h e r c h e

ASSERVISSEMENT VISUEL ET

COMMANDE DE LA DISTANCE FOCALE

Bernard ESPIAU

N˚ 2613

Juillet 1995

(3)
(4)

Bernard ESPIAU

Programme 4 | Robotique, image et vision Projet BIP

Rapport de recherche n 2613 | Juillet 1995 | 20 pages

Resume :

Cet article pr esente l'application de techniques d'asservissement visuel d esormais classiques au cas ou l'une des variables de commande est la distance focale. Plus pr ecis e-ment, on suppose disposer d'un zoom commandable en vitesse en compl ement des six autres mouvements pilot es de la cam era. On s'int eresse au probleme des quatre points formant un carr e, et l'on d enit deux fonctions a r eguler, l'une s'interpr etant en terme de centrage, l'autre associ ee a la taille globale de la cible dans l'image. On propose ensuite des lois de commande non-lin eaires simples dont on etudie le comportement th eorique. On montre egalement l'existence de deux solutions, et l'on donne quelques r esultats de simulation en conclusion.

Mots-cle :

Vision par ordinateur, commande de robots, zoom, asservissement visuel

(5)

where the focal length of a camera is itself a control variable. We also suppose that the other movements of the camera can be controlled independently. We consider the problem of a plane target, made of 4 points which are the vertices of a square to be centered in the image, the edges of which being horizontal or vertical. We then dene two functions to be servoed: the rst one expresses the centering and the second represents the overall size of the image target. After having computed the jacobian matrices, we propose and study some simple control laws. We show the existence of two solutions and conclude by giving a few simulation results.

(6)

1 Introduction

Les travaux actuels en asservissement visuel (cf 7] par exemple), aussi bien dans le cas des robots manipulateurs que dans celui des robots mobiles, considerent que les variables de commande du systeme sont associ ees aux seuls mouvements d'un repere li e a la cam era. Dans le cas ou la distance focale de celle-ci varie, il est possible en un premier stade de consid erer qu'il s'agit d'une perturbation que la commande doit compenser si elle est susamment robuste (cf 2, 3]), au m^eme titre que d'autres erreurs sur les parametres d' etalonnage. Une deuxieme facon de voir les choses consiste au contraire a exploiter cette variation, par l'interm ediaire d'un zoom motoris e, et donc a consid erer la distance focale comme reli ee plus ou moins directement a une variable de commande suppl ementaire. Notons qu'il existe une certaine analogie entre le contr^ole de la distance focale f et celui de la profondeur Z, toutes deux contribuant a modier globalement la dimension des objets dans l'image. Cette redondance s'illustre en consid erant la r egulation a zero d'une coordonn ee image correspon-dant a la projection perspective simple d'un point 3D, x = fXZ. Alors, la satisfaction de la contrainte _x = 0 requiert f_

f = _

ZZ, expression qui indique comment sont reli ees les deux commandes en vitesse associ ees. Nous pourrions donc utiliser presque telles quelles les com-mandes classiques en vitesse d etaill ees par exemple en 1]. Toutefois, la di erence de nature entre la distance focale et les 6 deplacements de SE(3) usuellement consid er es et l'existence de dispositifs physiques di erents dans les deux cas incitent a consid erer la commande du zoom comme sp ecique, et d evolue a des t^aches bien identi ees. Ce point de vue est la base du pr esent article.

Pour pr eciser l'int er^et d'avoir un contr^ole particulier de la distance focale, prenons l'exemple classique (1]) d'un asservissement sur 4 points coplanaires formant un carr e. La liaison virtuelle habituellement r ealis ee etant de classe C0, la sp ecication du

mouve-ment dans l'axe de la cam era se fait en imposant une trajectoire temporelle au parametre "consigne de largeur du carr e centr e dans l'image". Cela n'est pas forc ement tres judicieux, car l'on peut avoir envie de xer directement la vitesse d'avance d esir ee dans cette direction tout en gardant l'image centr ee, r ealisant ainsi une liaison de classe C1, plus conforme a la

nature de la t^ache hybride a r ealiser.

L'adjonction d'un zoom motoris epermet alors de chercher, de plus, a maintenir constante et susamment grande la taille du carr e centr e dans l'image durant l'avance, donc en g en eral a augmenter la distance focale, f. Cette politique pr esente les avantages suivants:

1. la sensibilit e, @ (signaux)

@ (mouvements), est proportionnelle a f. Donc, si la r esolution du robot est

susamment elev ee, a une pr ecision de mesure donn ee dans l'image correspondra une meilleure pr ecision de positionnement relatif cam era/cible dans l'espace 3D, lorsqu'elles sont proches, que dans le cas classique!

2. les coordonn ees des points dans l'image, utilis ees dans cette application comme gran-deurs a asservir, sont en g en eral calcul ees en estimant les centres de gravit e de taches elliptiques dans l'image. On peut penser que la pr ecision de cette estimation est li ee a la taille des taches et que l'on donc int er^et a les maintenir aussi grandes que possible!

(7)

3. comme on l'imagine, la commande de f sera bas ee sur des mesures dans l'image. Une mesure pr ecise de la valeur de f ne sera donc pas n ecessaire, ce qui simplie la conception du zoom motoris e.

Enn, il faut remarquer que l'emploi d'un zoom permet de compenser l'existence d'une limite physique au d eplacement de la cam era dans la direction de l'axe optique, limite provenant des but ees articulaires ou de la taille nie des segments. On augmente alors en un certain sens l'espace de travail du couplefrobot-cam erag.

Cet article pr esente une m ethode permettant de r esoudre simplement le probleme du contr^ole de la position de primitives dans l'image en utilisant simultan ement des commandes associ ees aux d eplacements de la cam era et a la variation de la distance focale. Le premier paragraphe pr ecise les diverses grandeurs concern ees et donne les modeles associ es. Le second propose un sch ema de commande et en analyse la stabilit e. Quelques r esultats et conclusions terminent cet article.

Il faut par ailleurs souligner que la bibliographie sur ce sujet pr ecis est tres pauvre, si l'on fait exception des publications traitant de la mod elisation de systemes a focale variable. On ne retiendra en fait que l'article 6], paru simultan ement au pr esent travail et ne traitant que tres partiellement le probleme.

2 Modeles

2.1 Cadre general

On considere un ensemble de n  4 points 3D, li es rigidement, et de coordonn ees

(Xi Yi Zi) dans un repere associ e a la cam era. Pour la simplicit e de l'expos e, on suppo-sera, sans perte de g en eralit e, que la matrice de projection perspective, habituellement de la forme P = APcD (cf 3]), se r eduit ici a

P = 0 @ f 0 0 0 f 0 0 0 1 1 A(I 3 j 0) (1)

ou f > 0 est la distance focale. On notera alors:

0 @ xi yi 1 1 A= P 0 B B @ Xi Yi Zi 1 1 C C A (2)

les coordonn ees des points dans l'image, et l'on pose:

s = ( x1x2 x3 x4y1 y2 y3 y4 )

T (3)

L'espace de conguration du systeme cam era-zoom est SE(3)<. Soit "r

0un el ement de

(8)

sont les positions XYZ. On note: q =  f "r0  (4) En se placant dans le cadre de (1]) et (4]), on cherchera, d'une facon g en erale, a r eguler a zero une fonction de la forme

~e(qt) = D(s(q);s

(t)) (5)

ou s(t) sp ecie un objectif a atteindre sous la forme de trajectoires d esir ees des

coordon-n ees des points dans l'image, et D est une matrice constante m2n de rang plein, avec

mm 0

7 ou m

0 est la dimension du vecteur de commande.

Souvent, la r egulation des signaux dans l'image n'est pas la seule cause du mouvement relatif objet/cam era: on peut par exemple d esirer simultan ement faire suivre a certaines composantes du repere associ e a la cam era une trajectoire pr eprogramm ee, ou bien se trouver en pr esence d'un mouvement autonome, eventuellement inconnu, de l'objet. En g en eral, une facon de bien poser le probleme consiste a consid erer que la r egulation de ~e(qt) est une t^ache prioritaire et que, sous contrainte de sa r ealisation, on cherchera a accomplir une t^ache secondaire repr esent ee par la minimisation d'une certaine fonction de co^ut, hs(qt).

L'expression g en erale de la fonction a r eguler est alors (cf 4]): e = Wy~e+ (I

;W

yW)@hs

@q (6)

ou W est une matrice de rang plein telle que R(WT) = R(@~e

@q) et  un scalaire positif. Ici, et pour des raisons evoqu ees en section 1 il appara^%t assez naturel de consid erer le mouvement en profondeur Z soit comme t^ache secondaire, soit comme perturbation. On aura donc m = 6, m0= 7 dans le premier cas. Dans le second, on a alors m0 = m = 6, et

l'on commandera directement ~e donn e par (5) sans utiliser l'expression (6). Dans tous les cas, la commande est de la forme

u' _q =;k( ^@e @q);1 e ; ^@e @t (7)

ou k est un scalaire positif et ( ^@e@q);1 un modele de l'inverse du jacobien de e. Une CS de

stabilit e est alors la positivit e de @e@q( ^@e@q);1.

Remarque

Il faut souligner qu'en fait les composantes dessont liees par deux relations provenant

de la contrainte de rigidite. Cependant, la prise en compte explicite de cette contrainte necessite une connaissance complete de la geometrie 3D, hypothese que nous ne sou-haitons pas imposer. Nous ne l'utiliserons donc pas, sauf pour calculer les solutions du probleme de positionnement envisage dans la suite (cf annexe).

(9)

2.2 Mise en oeuvre

Nous examinons a pr esent comment l'approche pr ec edente s'impl emente sur un cas par-ticulier.

2.2.1 Objectif

On considere une cible constitu ee de 4 points formant un carr e, de projections dans l'image Si i = 1234. La position d' equilibre est caract eris ee par l'image repr esent ee gure 1. Par ailleurs nous supposerons que l'on se situe toujours hors des congurations d eg en er ees dans l'image (points ou ar^etes confondus, surface nulle).

a a x y s s s s 1 2 3 4

Fig.1 - : Carr e centr e dans l'image

La matrice D de (5) est alors de dimensions 68, et l'on note

x = s;s  (8) avec s= aC (9) ou C = ( ;1 1 1 ;1 1 1 ;1 ;1 )T (10)

(10)

2.2.2 Matrices jacobiennes

On a: @s @q =  @s @f @"r@s0  (11) c'est-a-dire, en utilisant (1) et (2), @s @q = (f Ls 0T) (12)

ou l'on a not e:

L0T = @s

@"r0 (13)

L0T est de dimension 8

6. Elle est obtenue en eectuant d'abord une permutation circulaire

de longueur 3 des colonnes de fLT

0, ou L

T

0 est la classique matrice d'interaction canonique,

ou matrice du 'ot optique associ ee aux 4 points (cf 3]). Puis, les 4 lignes correspondant aux abcisses des points sont plac ees en haut dans l'ordre 1..4, suivies des 4 lignes correspondant aux ordonn ees dans le m^eme ordre. Elle est donc de la forme:

L0T = fL 0 0T = f 0 B B B B B B B B B B B B B B B @ x1y1 f2 ;(1 + x2 1 f2) y1 f ; 1 Z1 0 x1 fZ1 x2y2 f2 ;(1 + x2 2 f2) y2 f ; 1 Z2 0 x2 fZ2 x3y3 f2 ;(1 +x 2 3 f2) y3 f ; 1 Z3 0 x3 fZ3 x4y4 f2 ;(1 +x 2 4 f2) y4 f ; 1 Z4 0 x4 fZ4 (1 +y2 1 f2) ; x1y1 f2 x1 f 0 ; 1 Z1 y1 fZ1 (1 +y2 2 f2) ;x 2y2 f2 x2 f 0 ; 1 Z2 y2 fZ2 (1 +y2 3 f2) ;x 3y3 f2 x3 f 0 ; 1 Z3 y3 fZ3 (1 +y2 4 f2) ;x 4y4 f2 x4 f 0 ; 1 Z4 y4 fZ4 1 C C C C C C C C C C C C C C C A (14) D'ou: @~e @q = D  s f f~L0 0T fl 6  = DH (15)

ou l'on a partitionn e L0

0T sous la forme L 0 0T = (~L 0 0T j l

6), l6 etant la derniere colonne,

relative au mouvement en translation le long de l'axe Oz.

A l' equilibre, c'est-a-dire lorsque x = 0 et s = s, la matrice L 0 0T de 14 s' ecrit: L0 0T = (~L 0 0T l 6) jeq = 0 B B B B B B B B B B @ ;a 1 ;a 2 a3 a4 0 ;a 5 a1 ;a 2 a3 a4 0 a5 ;a 1 ;a 2 ;a 3 a4 0 a5 a1 ;a 2 ;a 3 a4 0 ;a 5 a2 a1 ;a 3 0 a4 a5 a2 ;a 1 a3 0 a4 a5 a2 a1 a3 0 a4 ;a 5 a a a 0 a a 1 C C C C C C C C C C A (16)

(11)

ou a3= af eq ! a2= 1 + a1! a1= a 2 3 ! a 4= ; 1 Zeq ! a5= a feqZeq (17) On remarque: l6 jeq = af eqZeq C (18) et CT~L0 0T jeq= (0 0 0 0 0) (19) Donc, en utilisant (9) et (18), on a: Hjeq=  a feqC feq~L0 0T a ZeqC  (20) La premiere et la derniere colonne de H jeq etant identiques, son rang est inf erieur ou egal

a 6. En d'autres termes, les commandes en f et Z ne sont pas ind ependantes. On se trouve donc (et ceci est li e au choix de la cible 3D et du motif a atteindre dans l'image) dans le deuxieme cas evoqu e a la n du paragraphe 2.1 et l'on ne peut utiliser l'approche (6). Il nous faut eliminer la composante en Z dans la commande. On pose donc

q0=  f "r00  (21) ou "r00est "r0sans sa derniere composante. D'ou

@~e

@q0 = D( sf f~L 0

0T) = DH0 (22)

2.2.3 Choix des variables a commander

Il reste a trouver la matrice D. La solution naturelle est D = H0 y jeq, avec, gr^ace a (19): H0 y jeq =  (8a 2 f2 eq);1 0 0 1 f2 eq(~L0 0~L 0 0T);1 jeq !  a feqCT feq~L0 0 jeq  (23) D'ou D =  feq 8aC T 1 feq~L0 0 y ! (24) On peut egalement choisir pour D une expression plus simple, ne n ecessitant pas la connaissance des termes a l' equilibre (le probleme est alors, il est vrai, repouss e a la d eter-mination du modele du jacobien de la fonction a r eguler utilis e dans la commande). Soit donc: D =  CT B  (25)

(12)

ou B est une matrice 5 8 de rang plein poss edant les propri et es suivantes: C1 : Bx = 0 () s = 



86= 0 La condition susante n ecessite d'avoir

BC = 0 (26)

A noter que cette propri et e implique que D est de rang plein. La condition n ecessaire utilise la contrainte de rigidit e et est trait ee en annexe a partir d'un exemple. Elle montre que le probleme a deux solutions: celle de la gure 1 et une autre correspondant a une rotation de 180 deg. du carr e autour de l'axe OZ.

C2 : rang (B~L0 0T) = 5 On a en eet @e @q = (f fs ~L0 0T fl 6) (27)

soit a l' equilibre, en utilisant (18) et (19): @e @qjeq =  8a feq 0 8a Zeq 0 feqB ~L0 0T jeq 0 ! (28) qui n'est de rang plein que sous la conditionC2. Par la suite on notera:

A1= B~L0

0T (29)

e1= C

Tx (30)

e2= Bx (31)

Une forme de B respectant les conditionsC1 etC2 est:

0 B B B B @ 1 1 1 1 0 0 0 0 0 0 0 0 1 1 1 1 1 ;1 1 ;1 0 0 0 0 0 0 0 0 1 ;1 1 ;1 0 0 0 0 ;1 1 1 ;1 1 C C C C A (32)

2.2.4 Interpretation

Le choix ci-dessus appara^%t assez naturel: la variable monodimensionnelle e1 repr esente

le p erimetre du carr e et correspond bien a l'id ee que le zoom permet de contr^oler la taille globale d'un objet dans l'image. Le contr^ole des variables de e2 signie que l'on cherche

a atteindre un carr e centr e dans l'image sans se pr eoccuper de sa taille. L' equation (28) montre le d ecouplage eectif entre ces deux objectifs au voisinage de la position d' equilibre, e1n' etant sensible qu'a une variation de focale et e2 a un d eplacement.

(13)

3 Commande

On note u1la vitesse de consigne du moteur reli e au zoom, suppos ee ^etre la grandeur de

commande accessible pour la distance focale. Par ailleurs, comme indiqu e plus haut, nous consid erons la vitesse de translation le long de l'axe Z de la cam era comme une fonction du temps ind ependante, VZ(t). Les 5 autres vitesses relatives cam era/scene sont les grandeurs de commande not ees u2. En d erivant les equations de projection perspective bas ees sur (1)

et en utilisant les notations pr ec edentes, le systeme d' etat non-lin eaire s' ecrit:

( _f = u1 _x = f ~LT 0u 2+ fVZ(t)l6+ _ f f(x + aC) (33)

ou la fonction de sortie, de dimension 6, est e = e1 e2  = CT B  x (34)

que l'on veut r eguler a zero.

En utilisant (33), l' equation d ecrivant la dynamique de e2 s' ecrit donc:

_e2= fA1u2+ fVZ(t)Bl6+ _ffe2 (35)

ou Bl6 est nul a l' equilibre (cf (18) et (26)).

3.1 Deux cas simples

Dans ce paragraphe, nous supposons que la distance focale et que la matrice d'interaction LT sont connues a chaque instant. Consid erons deux situations:

3.1.1 Contr^ole explicite de

f

C'est le probleme trait e en 6]. La commande choisie est:

u1= ;(f;f )   > 0 u2= ;kfA ;1 1 e 2 ;A ;1 1 VZ(t)Bl 6  k > 0 (36) avec f(t = 0) = f0 (37) D'ou: _e2= k ( ;1;  kf(t) ;f  f(t) ) e2 (38)

Choisissons  et k tels que k > . Alors, en raison de la forme de u1 dans (36), il existe

un instant ti(f f) tel que t > t

(14)

VZ = 0 t, alors ti = 0 sous la condition susante  f0 1. Plus g en eralement, si la

focale evolue au cours du temps entre deux valeurs positives fmin et fmax (correspondant aux limites physiques du zoom) avec une vitesse born ee sup erieurement en valeur absolue par une valeur vf, alors une condition susante pour queke

2

kd ecroisse exponentiellement

vers zero est simplement k > vf 1

fmin.

3.1.2 Asservissement de

f

a partir de l'image

Ce premier petit r esultat montrait que l'on peut faire varier la distance focale au cours du temps sans in'uer sur la valeur nale de e2, si ce n'est sur son transitoire. Cependant, comme

l'on n'a pas de retour en e1, la position d' equilibre obtenue en x pr esente une ind etermination

de dimension 1. Comme nous souhaitons plut^ot maintenir constante la taille du carr e dans l'image, on va donc cette fois choisir la commande:

u1= ;fe 1 = ;f CTx  0 u2= ;kfA ;1 1 e 2 ;A ;1 1 VZ(t)Bl 6  k > 0 (39) On obtient alors: _e2= ( ;k;(CTx))e 2 (40)

Une condition susante de stabilit e exponentielle est k> max (;CTx). On a, par (9), max

(;CTx) = max (8a;CTs). En supposant que l'on reste dans un domaine ou les signes des

coordonn ees restent constants, la plus petite valeur possible de CTs est zero, qui correspond d'ailleurs a une singularit e. D'ou la condition:

k

 > 8a (41)

Nous avons donc e2 qui tend vers zero. Une fois atteinte cette position d' equilibre (au

temps t = te), le carr e est centr e dans l'image, donc parallele au plan cible. On a donc, gr^ace a (1),

CTs = 8lZceqf (42)

ou lc est la demi-longueur du c^ot e du carr e cible. Donc, pour t > te _f =;8f( l

cf

Zeq ;a) (43)

 et f etant positifs, cette equation a pour solution stable f = aZeq

lc , i.e e2 = 0. On

re-marque que cette valeur d' equilibre d epend de la profondeur Z, ainsi d'ailleurs que la vitesse de convergence.

Remarque

Supposons que l'evolution dee2 soit stoppee avant convergence, par exemple en annulantkau

temps ts. Alors, l'equation d'evolution de e1 en supposant VZ = 0 est _e1 =;(e

2 1+ 8

ae1) et la

(15)

3.2 Cas general

On suppose a pr esent que l'on ne conna^%t pas exactement la distance focale, ni la matrice d'interaction. Au lieu de (39), la commande r eelle sera donc:

( u1= ; ^fe 1= ; ^f CTx  0 u2= ;k ^ f ^A;1 1 e 2 ; ^A ;1 1 VZ(t)B^l 6  k > 0 (44) L' estimation de f n'est pas critique, car elle joue seulement sur les comportements transi-toires. Elle peut par exemple ^etre obtenue sous la forme

^

f(t) = ^f0+ Z t

0

u2() d (45)

Le systeme reboucl e en e2 s' ecrit alors

_e2 = ;k f^fA 1^A ;1 1 e 2+ fVZ(t)(I5 ;A 1^A ;1 1 )Bl 6 ; ^f f CTxe2 (46) Donc _e2 = k ( ( ; f ^fA1^A ;1 1 ;  kf (C^f Tx) )e2+ 1kfVZ(t)(I5 ;A 1^A ;1 1 )Bl 6 ) (47)

Cas 1:

VZ !0. On suppose ici qu'il existe un instant tstel que8t > ts jVZ(tj< e ;(ts)t.

Nous pouvons donc consid erer que la perturbation repr esent ee par le deuxieme terme est n egligeable a partir d'un instant tp. L' equation (47) a alors la forme, pour t > tp:

_e2=

;kf^f ( G(:)+(:)I

5)e2 (48)

ou l'on a not e:

G = A1^A ;1 1 !  = k ^f2 f2(C Tx) (49)

Une condition susante de d ecroissance exponentielle deke 2

kest la positivit e de

G(:) + (:)I5

Remarquons en premier lieu que l'on souhaite consid erer e1et e2de facon ind ependante.

Ainsi, si par exemple  = 0 (pas d'asservissement du p erimetre), la convergence de e2 doit

^etre assur ee. D'ou la condition susante suppl ementaire: G > 0. Nous supposerons donc: min(1

2(G + G

T) >  (i.e. xTGx > kxk 2).

On doit donc avoir  >;. Comme min (CTx) est n egatif et vaut;8a, on a:

min () = k(;8a) ^f 2

max f2

(16)

D'ou une condition susante: k  > 8a f 2 max f2 min (51)

Comme au paragraphe pr ec edent, il est ais e de calculer l' evolution de f (donc de e1 par

(42)) une fois le carr e centr e. En utilisant (44), on obtient: _f =;8 ^f( l

cf

Zeq ;a) (52)

La solution d' equilibre stable est la m^eme que pr ec edemment.

Cas 2:

VZ

ne tend pas vers

0. On constate tout d'abord qu'en montant le gain k il est toujours possible d'" ecraser" la perturbation repr esent ee par le deuxieme terme (cf 4]). Toutefois, dans un contexte ou la commande est echatillonn ee, cette augmentation est limit ee par des contraintes de stabilit e. On pourra egalement utiliser un terme int egral pour r eduire l'erreur r esiduelle, comme cela est fait en 5].

3.3 Variante

Le choix e1= CTx repr esente le p erimetre du carr e image seulement lorsque celui-ci est

centr e, le plan image etant parallele au plan du carr e 3D. On peut imaginer de choisir pour e1une expression plus repr esentative de la taille globale de l'image de l'objet. Par exemple,

en prenant: P(s) = P(x) = 4 X i=1 ((xi;xi +1) 2+ (y i;yi +1) 2) "5" = "1" (53) on a e1 = P(s) ;16a 2 (54)

Nous devons alors assurer: (C0 1) :  @P@s B  de rang plein (55) On a: @P @s = 0 B B B B B B B B B B @ 2x1 ;x 2 ;x 4 2x2 ;x 1 ;x 3 2x3 ;x 2 ;x 4 2x4 ;x 1 ;x 3 2y1 ;y 2 ;y 4 2y2 ;y 1 ;y 3 2y3 ;y 2 ;y 4 2y4 ;y 1 ;y 3 1 C C C C C C C C C C A T (56)

(17)

D`ou, a l' equilibre,

@P @s jeq

= 2aCT (57)

La condition (C0

1) est donc v eri ee, au moins localement. Par ailleurs, on a

@P @"r0 jeq = @P@s jeq L0Teq= ( 0 0 0 0 0 16a 2 Zeq ) (58) et @P @fjeq = 16a2 feq (59)

Tous les r esultats pr ec edents sont conserv es en remplacant CTx par P(s);16a

2, et donc

8a par 16a2dans les conditions de gain.

4 Resultats et conclusion

Les m ethodes propos ees dans cet article ont et e test ees en simulation. Les r esultats sont rassembl es en 5]. Nous en extrayons ici un exemple signicatif. Pr ecisons auparavant les conditions d'exp erience: la gure 2 pr esente, a gauche, l'image d esir ee et, a droite, l'image initiale. Celle-ci est obtenue, a partir de la position de la cam era correspondant a l'image cible, apres une rotation d'angle 15 deg autour de l'axe de vecteur ( 1

p 2 0

1 p

2) et une

trans-lation de 1 en x et de 2 en y (l'axe z est l'axe optique de la cam era). La distance focale variera entre les valeurs 1 et 2. Il faut souligner que, dans la mise en oeuvre de l'algorithme, le choix de la matrice B est d eterminant. Outre le fait qu'il est imp eratif d' eviter que BA1

soit singuliere a l' equilibre (ce qui est loin d'^etre aussi ais e qu'il ne le para^%t), un bon choix de B est celui qui, bien que simple, permet un certain d ecouplage entre les composantes de e2vis-a-vis des mouvements, pr esente une susamment bonne sensibilit e, et utilise plusieurs

mesures dans l'image a chaque ligne, pour pr eserver la sym etrie tout en r ealisant un certain ltrage des mesures. La matrice donn ee en (32) respecte ces criteres et est donc celle utilis ee dans les simulations.

On considere la commande du paragraphe 3.2. L'exemple pr esent e concerne le cas ou la matrice d'interaction utilis ee dans la commande est constante. Il s'agit en fait de son expression a l' equilibre, la distance focale etant x ee a une valeur arbitraire comprise entre ses limites. La gure 3 pr esente l' evolution des coordonn ees dans l'image, et la gure 4 donne l' evolution temporelle de la distance focale et des normes des deux erreurs e1 et e2.

D'autres r esultats, y compris l'utilisation de la variante propos ee en 3.3, sont pr esent es en 5]. Ceux-ci permettent de constater le bon comportement des m ethodes pr esent ees, m^eme en pr esence d'erreurs dans la matrice jacobienne ou d'une vitesse de cible non nulle. L'existence des deux solutions d emontr ee en annexe a egalement pu ^etre v eri ee. Comme il fallait s'y attendre, une condition initale correspondant a une rotation seule de 90 deg autour de l'axe z constitue "la ligne de partage des eaux", et correspond d'ailleurs a une singularit e.

(18)

Fig.2 - : Images nale et initiale

(19)

Fig.4 - : Evolution des erreurs et de la distance focale

Le travail pr esent e dans cet article est, a notre connaissance, original sur le plan du principe g en eral utilis e. La m ethode propos ee semble donner satisfaction en simulation. Il reste toutefois, pour la valider completement, a la mettre en oeuvre r eellement a l'aide d'un robot et d'une cam era avec zoom motoris e.

(20)

References

1] B. Espiau, F. Chaumette, P. Rives A New Approach to Visual Servoing in Robotics. IEEE Trans. on Robotics and Automation, Vol 8, No 3, June 1992

2] B. Espiau Eect of Camera Calibration Errors on Visual Servoing in Robotics. Proc. of the Third International Symposium on Experimental Robotics, Kyoto, Japan, 28-30 Octobre 1993

3] B. EspiauSur les erreurs en asservissement visuelRapport de recherche INRIA Rh^one-Alpes, a para^%tre, 1995

4] C. Samson, M. Le Borgne, B. EspiauRobot Control: the Task Function Approach Cla-rendon Press, Oxford, Janvier 1991

5] Bilal El-AliAsservissement visuel et commande de la distance focaleRapport de DEA, INPG/LAG, juin 1995

6] K. Hosoda, H. Moriyama, M. AsadaVisual Servoing Utilizing Zoom Mechanism, IEEE Conf. on Robotics and Automation, Nagoya, Japan, May 1995

(21)

5 Annexe

A Preliminaires

La contrainte de rigidit e associ ee aux 4 points 3D formant un carr e signie que l'espace de conguration associ e est SE(3), de dimension 6, au lieu de (<

3)4. En notant A

1 A2 A3 A4

les 4 points et O l'origine d'un repere quelconque, cette contrainte peut elle-m^eme s'exprimer a l'aide d'un ensemble redondant de contraintes portant sur les vecteurs ~OAi:

~ OAj+1 ;OA~ j ? OA~ j +2 ;OA~ j +1 (60) pour j = 123, et kOA~ j +1 ;OA~ j k= l 2 0 (61)

pour j = 1234 et avec A5= A1. On a aussi

~ OA4 ;OA~ 1= ~OA3 ;OA~ 2 (62)

B Utilisation

On cherche a trouver les solutions de l' equation e2 = Bx = 0, sachant BC = 0. Pour

simplier les calculs, nous allons choisir une matrice B plus simple qu'en (32), mais respec-tant n eanmoins les conditions n ecessaires. Le r esultat obtenu est alors valable pour toute les matrices de la classe GB,8G r eguliere. Soit donc

0 B B B B @ 1 0 0 0 1 0 0 0 0 1 0 0 0 ;1 0 0 0 0 1 0 0 0 1 0 0 0 0 1 0 0 0 ;1 1 2 0 1 0 0 0 0 1 C C C C A (63) Soit (Xi Yi Zi) les coordonn ees du point Ai dans le repere cam era. La condition Bx = 0

s' ecrit: fX 1Z1+ fY1Z1= 0 fX2Z2 ;fY 2Z2= 0 fX3Z3+ fY3Z3= 0 fX4Z4 ;fY 4Z4= 0 fX1Z1+ 2fX2Z2+ fX4Z4= 0 (64) Les equations (62) s' ecrivent:

X1 ;X 2+ X3 ;X 4 = 0 Y ;Y + Y ;Y = 0 Z Z + Z Z = 0 (65)

(22)

Les equations (64) et (65) donnent: X1= ;Y 1 (66) X2= Y2 (67) X3= ;Y 3 (68) X4= Y4 (69) ;Y 1Z1+ 2Y2Z2+ Y4Z4 = 0 (70) Y1 ;Y 2+ Y3 ;Y 4= 0 (71) Z1 ;Z 2+ Z3 ;Z 4= 0 (72)

Les equations (61) s' ecrivent: X2 j+1+Y 2 j+1+Z 2 j+1+X 2 j+Y2 j +Z2 j;2(Xj +1Xj+Yj+1Yj+Zj+1Zj) = l 2 0 ! j = 1234 (73) (66),(69) dans (73) donnent: 2(Y2 1 + Y 2 4) + (Z 4 ;Z 1) 2= l2 0 (74) (68),(69) dans (73) donnent: 2(Y2 3 + Y 2 4) + (Z 4 ;Z 3) 2= l2 0 (75) (66),(67) dans (73) donnent: 2(Y2 1 + Y 2 2) + (Z 2 ;Z 1) 2= l2 0 (76) (68),(67) dans (73) donnent: 2(Y2 3 + Y 2 2) + (Z 2 ;Z 3) 2= l2 0 (77) (75), (76), et (72) donnent: Y2 1 + Y 2 2 = Y 2 3 + Y 2 4 (78) (74), (77), et (72) donnent: Y2 3 + Y 2 2 = Y 2 1 + Y 2 4 (79) Soit donc: Y2 1 = Y 2 3 (80) et: Y2 2 = Y 2 4 (81)

Utilisons a pr esent les contraintes d'orthogonalit e (60). ~X1 ; ~X 2 ? ~X 1 ; ~X 4 donne: X2 1+Y 2 1+Z 2 1 ;X 1X4 ;Y 1Y4 ;Z 1Z4 ;X 1X2 ;Y 1Y2 ;Z 1Z2+X2X4+Y2Y4+Z2Z4= 0 (82)

(23)

Soit, gr^ace a (66), 67) et (69): 2(Y2 1 ;Y 2 4) + Z 2 1 ;Z 1Z4 ;Z 1Z2+ Z2Z4 = 0 (83) En additionnant avec (74): 4Y2 1 + 2Z 2 1+ Z 2 4 ;3Z 1Z4 ;Z 1Z2+ Z2Z4= l 2 0 (84) De facon analogue, ~X1 ; ~X 2 ? ~X 2 ; ~X 3donne: X2 2+Y 2 2+Z 2 2 ;X 2X3 ;Y 2Y3 ;Z 2Z3 ;X 1X2 ;Y 1Y2 ;Z 1Z2+X1X3+Y1Y3+Z1Z3= 0 (85) En utilisant (66), 67) et (68): 2(Y2 2 ;Y 2 1) + Z 2 2 ;Z 2Z3 ;Z 1Z2+ Z1Z3 = 0 (86) En soustrayant de (76): ;4Y 2 1 ;Z 2 1 + Z 1Z2 ;Z 2Z3+ Z1Z3= ;l 2 0 (87)

En combinant (84) et (87), puis en utilisant (72), il vient:

Z2= Z4 (88) En soustrayant (83) de (74), on obtient: ;4Y 2 4 ;Z 2 4 + Z 2Z4+ Z1Z4 ;Z 1Z2= ;l 2 0 (89)

(88), (89), (74) et (76) puis nalement (80) et (81) conduisent alors a: Y2 1 = Y 2 2 = Y 2 3 = Y 2 4 = l 2 0 4 (90) (88) et (70) donnent: ;Y 1Z1+ (2Y2+ Y4)Z2= 0 (91) (88) et (72) donnent: Z1 ;2Z 2+ Z3= 0 (92)

En combinant les equations (88), (90), (66), (67), (68), (69) avec (91) et (92), il appara^%t que les solutions candidates correspondent a un carr e centr e dans l'image, de c^ot e quelconque, avec plusieurs possibilit es d' etiquetage des sommets. Si l'on ne retient parmi celles-ci que les seules solutions physiquement possibles (pas de Z  0! pas de retournement, car on

suppose ^etre en r egulation vis-a-vis d'une position nominale), alors il ne reste a etudier que les diverses permutations circulaires du carr e centr e dans l'image. Parmi les 4 possibles, les cas d'une rotation de 

2 ou de 3

2 autour de l'axe Oz conduisent a des valeurs de Z n egatives.

Seules demeurent donc la solution attendue,et la situation obtenue apres une rotation de

(24)

E´ diteur

INRIA, Domaine de Voluceau, Rocquencourt, BP 105, 78153 LE CHESNAY Cedex (France) ISSN 0249-6399

Figure

Fig. 1 - : Carre centre dans l'image La matrice D de (5) est alors de dimensions 6  8, et l'on note
Fig. 3 - : Evolution des coordonnees image
Fig. 4 - : Evolution des erreurs et de la distance focale

Références

Documents relatifs

Puis relier par un segment vert les points (dans l'ordre) A, B,C, D, HOME : c'est le chemin retour pour Miss Mell.. • Tracer la droite passant par A et parallèle

Il comprend principalement deux niveaux; un mécanisme basé sur le système flou et un algorithme modifié des colonies de fourmis pour le réglage autonome des

L’archive ouverte pluridisciplinaire HAL, est destinée au dépôt et à la diffusion de documents scientifiques de niveau recherche, publiés ou non, émanant des

The goal of haptic rendering is to display the haptic attributes of surface and material properties of virtual objects in real time via a haptic interface

Oubli ne satisfait pas tout le monde Dans notre reportage consacré récemment à la commune de Le Crêt sous la rubrique «Bonjour Monsieur le syndic de...», nous avons omis de

l'administration n'aura toute diffusi()n de l'information pour des raisons autres aucune peine à refuser l'accès lorsqu'il s'agira de que celles sPécifiées. sauf

L’archive ouverte pluridisciplinaire HAL, est destinée au dépôt et à la diffusion de documents scientifiques de niveau recherche, publiés ou non, émanant des

marqueurs pAkt (phospho-protein kinase B) en A et B, Ki67 (marqueur de prolifération) en C et D et γH2AX (phosphorylation de l’histone H2AX induite suite à des dommages de l’ADN) en