Algorithme générique de filtrage particulaire ( SIR )

Dans le document The DART-Europe E-theses Portal (Page 61-65)

sation consiste en la définition d’un ensemble de particules pondérées décrivant la distribution a priori p(x0), e.g. en affectant des poids identiques w0i = N1 à des échantillons x10, . . . , xN0 indépendants identiquement distribués (i.i.d.) selonp(x0).

A chaque instantt, disposant de la mesureztet de la description particulaire{xit−1, wt−1i }de p(xt−1|z1:t−1), la détermination de l’ensemble de particules pondérées{xit, wit}associé à la den-sitéa posteriorip(xt|z1:t)se fait en deux étapes. Dans un premier temps, lesxitsont échantillon-nés selon la fonction d’importanceq(xt|xt−1, zt)évaluée enxt−1 =xit−1, cf. l’équation (II.2).

Les poidswti sont ensuite mis à jour de façon à assurer la cohérence de l’approximation (II.1).

Ce calcul obéit à (II.3), oùp(xt|xt−1) rend compte de la dynamique du processus d’état sous-jacent, et la vraisemblancep(zt|xt)d’un état possiblext vis à vis de la mesureztest évaluée à partir de la densité de probabilité relative au lien état-observation.

Toute méthode de simulation séquentielle de type Monte Carlo souffre du phénomène de

II.2FORMALISME DU FILTRAGE PARTICULAIRE 57 dégénérescence, au sens où après quelques itérations, les poids non négligeables tendent à se concentrer sur une seule particule. Afin de limiter ce phénomène, une étape de rééchantillon-nage peut être insérée en fin de chaque cycle, cf. l’item 9 de l’algorithmeSIR(pour "Sampling Importance Resampling") table II.1. Ainsi, N nouvelles particules x˜it sont obtenues par ré-échantillonnage avec remise dans l’ensemble{xjt}selon la loiP(˜xit=xjt) = wtj. Les particules associées à des poidswtj élevés sont dupliquées, au détriment de celles, faiblement pondérées, qui disparaissent, de sorte que la séquencex˜1t, . . . ,x˜Nt est i.i.d. selonPN

i=1wtiδ(xt−xit).

Cette étape de redistribution peut soit être appliquée systématiquement, soit être déclen-chée seulement lorsqu’un critère d’efficacité du filtre passe en deçà d’un certain seuil [Doucet et al., 2000, Arulampalam et al., 2002]. Le calcul des moments de (II.1) doit de préférence faire intervenir l’ensemble des particules pondérées avant rééchantillonnage.

Un dernier point concerne ici la fonction de vraisemblance où il est judicieux dans notre contexte robotique de fusionner plusieurs mesures de nature différentes. Sous hypothèse de leur indépendance conditionnellement à l’état, la vraisemblance unifiée deNdmesures s’écrit alors :

p(zt|xt) =

Nd

Y

j

p(zjt|xk) (II.4)

II.2.2 Échantillonnage guidé par la dynamique ou CONDENSATION

L’algorithme de CONDENSATION [Isard and Blake, 1998a] (pour "Conditional Density Propagation") peut être vu comme le cas particulier de l’algorithmeSIR où la fonction d’im-portance est relative à la dynamique du processus d’état : xit ∼ p(xit|xit−1). Ceci confère à la CONDENSATIONune structure « prédiction / mise à jour » comparable à celle du filtre de Kal-man. En effet, la densité ponctuellePN

i=1wit−1δ(xt−xit)approxime la prédictionp(xt|z1:t−1).

En outre, la mise à jour des poids selonwit ∝ wit−1p(zt|xit)rappelle la formule de Bayes sous-jacente à l’étape de mise à jour de l’estimé de Kalman.

Dans un contexte de suivi visuel, l’algorithme de CONDENSATION original définit les vraisemblances des particules à partir de primitives visuelles de type contour, mais d’autres primitives ont également été envisagées, par exemple des distributions de couleur [Nummiaro et al., 2003, Pérez et al., 2002].

II.2.3 Échantillonnage guidé par la mesure ou ICONDENSATION

Le rééchantillonnage utilisé seul ne suffit pas à limiter efficacement le phénomène de dé-générescence évoqué précédemment. En outre, il peut conduire à une perte de diversité dans

l’exploration de l’espace d’état, du fait que la description particulaire de la densitéa posteriori risque de contenir de nombreuses particules identiques. La définition de la fonction d’impor-tance q(xt|xt−1, zt) – selon laquelle les particules sont distribuées – doit donc également faire l’objet d’une attention particulière [Arulampalam et al., 2002].

En suivi visuel, les modes des fonctions de vraisemblance p(zt|xt) relativement àxt sont généralement très marqués. Il s’en suit que les performances de la CONDENSATION sont souvent assez médiocres. Du fait que les particules sont positionnées selon la dynamique du processus d’état et « en aveugle » par rapport à la mesurezt, un sous-ensemble important d’entre elles peut être affecté d’une vraisemblance très faible par l’équationwit ∝wit−1p(zt|xit), dégra-dant ainsi significativement les performances de l’estimateur.

Une alternative peut donc consister à échantillonner les particules à l’instant t – ou bien seulement certaines de leurs composantes – selon une fonction d’importance q(xt|zt) définie à partir de l’image courante. Ainsi, l’exploration de l’espace d’état peut être guidée par des fonctionnalités de détection visuelle telles que lesblobs peau ou bien toute autre primitive in-termittente, qui, malgré un caractère sporadique, est très discriminante lorsqu’elle est présente : mouvement, son, etc. Cependant, rien n’empêche qu’une particule xit, dont tout ou partie des composantes sont positionnées à partir de l’image courante, soit incompatible avec sa particule prédécesseurxit−1du point de vue de la dynamique du processus d’état. Du fait quep(xit|xit−1) prend de faibles valeurs, une telle particule est alors faiblement pondérée dans (II.3).

Une solution simple à ce problème (stratégie référencéeICONDENSATION) est de définir la fonction d’importance comme un mélange d’une fonction d’importanceπ(.)basées sur des mesures, c’est-à-dire sur des détections visuelles et d’une fonction d’importance basée sur la dynamique [Pérez et al., 2004], soit :

q(xit|xit−1, zt) = απ(xit|zt) + (1−α)p(xit|xit−1). (II.5) Ainsi, α% des particules sont échantillonnées selon l’observation courante donc permettent une éventuelle (ré)-initialisation du filtre tandis les particules restantes suivent la dynamique du système. Ainsi, en cas de fausses mesures/détections ou de leur absence, (1 −α)% des particules continuent à évoluer selon la dynamique du système permettant alors de conserver une meilleure représentation de la distributiona posteriori.

II.3 Description de notre traqueur de gestes

Cette section présente ci-après notre algorithme de filtrage IIDMOT dédié au suivi multi-cibles 3D (dont les images sont acquises par un banc stéréo équipant nos robots, voir cha-pitre IV), puis les différentes mesures visuelles associées. L’implémentation du traqueur ainsi que les évaluations sont alors décrites.

II.3DESCRIPTION DE NOTRE TRAQUEUR DE GESTES 59

II.3.1 Stratégie de filtrage

Notre stratégieIIDMOT, décrite table II.2, combine les formalismes de la stratégie ICON-DENSATION(section II.2) et de la stratégie de filtres interactifs distribuésIDMOTinitiée par Quet al. dans [Qu et al., 2007]. Cette démarche est motivée par le souci, dans notre contexte robotique, de pouvoir (ré)-initialiser notre banque de filtres dévolus aux mains et à la tête et de limiter autant que possible les erreurs de fusion/labellisation (lors de l’exécution de gestes) par une interaction entre ces filtres. Rappelons le principe de la stratégieIDMOToù la variable m(m∈[1; 3]) indexe les cibles (en l’occurrence la tête et les deux mains).

A chaque instant imaget, le principe est d’effectuerk = 1, . . . , Kitérations. Après le calcul d’une première estimée{ˆxmt,1}m=1,2,3 pour chaque cible àk = 1, la distance 3D inter-cibles est estimée. Lorsque deux cibles sont distantes, c’est-à-dire que la distance entre centroïdes asso-ciés est supérieure à un seuil prédéfinidT H, celles-ci sont sans interaction et les filtres associés sont logiquement indépendants. A contrario, si celles-ci sont proches, nous introduisons des fonctions d’« inertie », notéeϕ2(.), et de « répulsion magnétique », notéeϕ1(.), dans le calcul de leurs vraisemblances associées afin de limiter les erreurs précédemment mentionnées. Le principe est décrit par les étapes 9 à 22 de la table II.2.

La fonction de répulsionϕ1(.)est calculée par : ϕ1(xi,mt , ztm, znt)∝1− 1

avecβ1etσ1deux termes de normalisation déterminésa priori,Di,mest la distance euclidienne séparant la particulexi,mt de l’estimée temporairexnt,k. A l’instar des champs magnétiques, deux ciblesm et nproches engendrent une force d’attraction entre elles pour leurs particules asso-ciées (du point de vue des mesures), phénomène alors compensé par cette fonction de répulsion.

Le principe est extensible à trois cibles en possible interaction deux à deux sans ajout d’une combinatoire très élevée. L’équilibre entre répulsion magnétique et gravitation est trouvé après quelques oscillations k qui aboutissent à la stabilisation du nuage de particules. En pratique, quelques itérations (K ∈[4; 6]) assurent la convergence du processus.

La fonctionϕ2(.)considère la dynamique des ciblesviaune force d’inertie définie par : ϕ2(xi,mt ,xmt−1,xmt−2)∝1 + 1 avec−v→t,iet−−→vt−1les vitesses de la cible en question modélisées respectivement par le mouvement de la i`eme particule par rapport à l’estimée temporaire et par celui des estimées des deux pas précédents. Le principe est de supposer que−→vt sera proche de −−→vt−1, hypothèse réaliste de part la cadence de traitement des images. β2 est un terme de normalisation, tandis que σ21 et σ22

caractérisent la variance des vecteurs. Enfin,θi,mreprésente l’angle entre−v→t,iet−−→vt−1. Le lecteur averti remarquera queϕ2(.)diffère du principe original [Qu et al., 2007] par son terme angulaire.

En effet, la vitesse est ici rajoutée afin d’éviter un effet collatéral de la méthode : dans le cas de vitesses faibles et donc pour une cible quasi statique, l’angle entre les vitesses n’a pas de

1:SIt= 0(INITIALISATION) ALORS préalablement à une étape de normalisation assurant quePN

i=1ωi,mt = 1

8: Sélection de l’estimée temporairexˆmt,1, par exemple en calculant l’estimé du minimum d’erreur quadratique moyenne (MMSE), Ep(xm

t |zm1:t)[xm

t ], afin d’approcher la loi de filtrage par

p(xm

15: Sélectionner l’estimée temporaireˆxm

t,k+1

16: Calculerϕ1, ϕ2

17: Repondérerωti,n=ωti,n12

18: Normaliser lesi,nt }Ni=1

19: Sélectionner l’estimée temporaireˆxn

t,k+1

20: FIN POUR

21: FIN SI

22: FIN POUR

23: De manière systématique ou en fonction d’un critère d’efficacité, rééchantillonner la description[{xi,m

t , ωi,mt }]Ni=1dep(xm

t |zm1:t) de façon à obtenir un ensemble de particules pondérées [{x(s

i,m)

Dans le document The DART-Europe E-theses Portal (Page 61-65)