• Aucun résultat trouvé

4.3 Méthode 1 : modélisation par système dynamique

4.3.5 L’identification des paramètres

L’objectif de la phase d’identification est d’ajuster les paramètres du mo-dèle physique donné par sa formulation analytique, de sorte qu’il génère des dynamiques similaires à celles des données gestuelles provenant de la captation de mouvement. Il s’agit donc d’estimer des paramètres du système dynamique (a, b, c) qui correspondent le mieux aux données en-trantes. Ce problème est bien connu et est appelé identification de système (ang. fitting) (Ljung, 1987).

Différentes méthodes peuvent être utilisées afin de mener à bien l’estima-tion des paramètres (ici, (a, b, c)) des équal’estima-tions différentielles homogènes du second ordre. Dans cette thèse, nous avons testé deux méthodes ba-sées sur l’ajustement par les moindres carrés et sur le filtrage particulaire. L’avantage de la méthode des moindres carrés est sa simplicité mais son inconvénient réside dans les contraintes liées aux réglages de la fenêtre de calcul. Nous décrivons également une méthode basée sur du filtrage parti-culaire, qui permet d’estimer les paramètres sur un fenêtre qui peut varier dynamiquement. Cependant, la mise en œuvre de la méthode d’identifica-tion par filtres particulaires est bien plus complexe.

a) La méthode des moindres carrés

La méthode d’ajustement par les moindres carrés permet de sélectionner, parmi la famille des fonctions f(q; θ) (ici θ = (a, b, c) et f(q; θ) = a¨q+b ˙q+cq) où une ou plusieurs variables muettes q sont indexées par un ou plusieurs paramètres inconnus θ, la fonction qui reproduit le mieux les données expé-rimentales. La procédure d’ajustement retourne également une estimation indirecte de la valeur des paramètres θ.

La méthode des moindres carrées considère que la fonction f(q; θ) qui dé-crit le mieux les données expérimentales, est celle qui minimise la somme quadratique des déviations par rapport aux prédictions de f(q; θ) qui sont

données par le modèle connu à priori. Si, par exemple, nous disposons de N mesures (zi)i=1,...,N, les paramètres θ « optimaux » au sens de la méthode des moindres carrés sont ceux qui minimisent la quantité

S(θ) = N X i=1 (zi− f(qi; θ))2 = N X i=1 r2i(θ) (4.7)

Les ri(θ)sont appelés les résidus du modèle, et représentent l’écart entre la donnée ziobservée et la prédiction f(qi; θ). S(θ) peut être considéré comme une mesure de la distance entre les données expérimentales et le modèle théorique qui prédit ces données. La fonction optimale minimise donc cette distance.

Si l’on dispose d’une estimation de l’écart type σidu bruit qui affecte chaque mesure zi, on l’utilise pour « pondérer » la contribution de la mesure au χ2. Une mesure aura d’autant plus de poids que son incertitude sera faible :

χ2(θ) = N X i=1 zi− f(qi; θ) σi 2 = N X i=1 wi(zi− f(qi; θ))2 (4.8)

Ainsi, si le modèle d’erreur est gaussien (i.e. les erreurs de mesure qui en-tachent les zi sont distribuées suivant une loi normale), la méthode des moindres carrés permet d’estimer quantitativement l’adéquation du mo-dèle aux mesures, pour peu que l’on dispose d’une estimation fiable des erreurs σi. La quantité wi, inverse de la variance du bruit affectant la me-sure zi , est appelée poids de la mesure zi.

Dans le cas d’une fonction polynomiale z = f(q; θ) = Pn

k=1θkqk, si nous disposons de N mesures, (qi, zi, σi), nous pouvons exploiter la linéarité du modèle pour exprimer χ2 sous une forme matricielle plus simple dont on peut calculer le gradient. Le minimum de χ2est alors atteint pour les θkqui annule le gradient de χ2.

La longueur fixe N de la fenêtre utilisée pour l’estimation des paramètres du système dynamique par la méthode des moindres carrés est un point critique. Cette longueur a un rôle important puisqu’une fenêtre trop courte ne permet pas la reconnaissance de mouvement avec une fréquence d’os-cillation faible. Au contraire, une fenêtre trop grande peut englober deux régimes différents et écraser les nuances menant à une identification er-ronée des paramètres. Cette fenêtre peut être fixée par une segmentation préalable du signal. Dans tous les cas, il est nécessaire de prendre garde aux cas limites où les fréquences d’oscillation sont soit trop élevées, soit trop faibles.

b) Le filtrage particulaire

Le filtrage particulaire peut intervenir en tant que méthode incrémentale pour l’estimation de distributions de probabilités. C’est une méthode d’in-férence non exacte pour les réseaux bayesiens dynamiques. Cette méthode a été principalement utilisée, à partir des années 90, dans des applications en temps réel pour le suivi, la localisation et l’alignement d’objets (Hand-schin et Mayne, 1969, Arulampalam et al., 2002, Comaniciu et al., 2003, Del-laert et al., 1999, Doucet et al., 2000) et particulièrement depuis que nous disposons d’une assez grande puissance de calcul pour déployer la mé-thode en temps réel (Doucet et al., 2000). Cette mémé-thode est très connue dans le domaine de la vision notamment à travers l’algorithme CONDEN-SATION (Isard et Blake, 1998a,b) où un système dynamique linéaire régit la transition entre un état et le suivant et où l’échantillonnage est effectué à partir de la distribution a priori.

Le filtrage particulaire a également été appliqué par Courty et Arnaud (2008) au problème de cinématique inverse. Ils ont mis en œuvre cette mé-thode afin de définir un algorithme de contrôle du mouvement en temps réel qui prend en compte un modèle du mouvement a priori.

Dernièrement, le filtrage particulaire a été appliqué pour la reconnaissance adaptative de gestes continus (basés sur des templates) (Caramiaux, 2011). L’algorithme estime des caractéristiques gestuelles (échelle, vitesse, orien-tation) permettant l’adaptation de la reconnaissance. On peut considérer cette approche comme plus générale que celle des filtres de Kalman. Nous avons utilisé les filtres particulaires développés par Caramiaux (2011) pour estimer les paramètres du système dynamique du second ordre régis-sant les dynamiques des comporégis-sants de DS/DM. Généralement, le modèle peut être formulé avec le système dynamique suivant :

(

uk = fTR(uk−1,vk−1)

zk = fOB(uk,wk) (4.9)

où, au temps discret k,

• ukreprésente le vecteur des états du système ;

• fTRest la fonction (potentiellement non linéaire) qui régit l’évolution de l’état du système suivant uk−1et une séquence de bruits indépendants et identiquement distribués (i.i.d.) vk−1;

• fOBest la fonction (potentiellement non-linéaire) qui génère les observa-tions zk, selon l’état du système uk, et une séquence de bruits i.i.d. wk. La forme de l’équation (4.9) implique que le processus est Markovien, c’est-à-dire que l’état du système à chaque instant dépend seulement de l’état du système à l’instant précédent. Le problème est donc formulé comme un problème d’estimation et d’adaptation des valeurs de uk.

Le mouvement peut avoir des dynamiques différentes suivant chaque di-mension. Par exemple un mouvement circulaire qui oscille en 2D, peut s’amortir graduellement en ordonnée (en aplatissant le cercle graduelle-ment) pour laisser place à une dynamique oscillatoire qui a lieu unique-ment en abscisse. Afin de prendre en compte ces cas lorsque le mouveunique-ment est capturé en 2D ou en 3D, nous avons choisi de modéliser chacune des dimensions du mouvement par une équation différentielle indépendante. Ainsi, la méthode d’identification par filtrage particulaire est alors lancée en parallèle pour identifier indépendamment les paramètres de chacune des équations différentielles régissant le mouvement sur chaque dimen-sion.

L’ensemble des états :

Prenons le cas du modèle dynamique linéaire du second ordre : M ¨z(t) + ν(t) ˙z(t) + K(t)z(t) = 0

Après la normalisation (pour M 6= 0) : ¨

z(t) + a(t) ˙z(t) + b(t)z(t) = 0 Après discrétisation au temps k :

¨

zk+ ak˙zk+ bkzk= 0

L’état de notre système est composé des coefficients du modèle dynamique ci-dessus :

uk = ak bk

! ∈ R2

Les transitions entre les états :

Dans le modèle proposé, la fonction de transition entre les états, fTR (voir l’équation(4.9)) est linéaire, et donnée par la matrice A et la distribution de probabilité gaussienne : p(uk|uk−1) = N (uk|Auk−1, Σ) (4.10) Où A est : A = 1 0 0 1 ! Et Σ = σ1 0 0 σ2 !

σirégit la vitesse de convergence et la précision de l’estimation (estimation fine ou bruitée).

La fonction d’observation :

Dans notre modèle la fonction d’observation fOB (voir Equation (4.9)) est choisie pour suivre une distribution gaussienne.

p(zk|uk) = C expk¨zk+ ak˙zk+ bkzkk

2

2

!

(4.11) Cest la constante de normalisation faisant en sorte queR

Rp(u) = 1(pour que p soit une distribution de probabilités). Rappelons que z est la coor-donnée sur une dimension de la cible du geste capturé.

Inférence des paramètres :

L’idée des filtres particulaires est de trouver les meilleurs choix des para-mètres de uk à chaque itération. Pour cela il s’agit de tester plusieurs (for-mellement Ns) versions de uk: ui

kpour i = 1..Ns; et de prendre le meilleur. Nsest typiquement se situe fréquemment autour de 2000.

ui k= a i k bi k !

Pour choisir la meilleure valeur de uk on assigne à chaque ui

k un poids wi

k ∈ [0, 1]. Les poids étant normalisés comme suit :PNs

i=1wi

k= 1. Les poids représentent des distributions de probabilités sur les valeurs potentielles de uket sont estimés à partir de la fonction d’observation fOB. Le meilleur choix de ukest le plus vraisemblable.

Formellement, nous pouvons utiliser un ensemble de points de support avec leurs poids associés {ui

k, wi k}Ns

i=1pour caractériser les p(uk|u0:k−1, z1:k). Ainsi, la « vraie distribution » de l’état du système peut être approchée par une série de fonctions delta de Dirac pondérées :

p(uk|u0:k−1, z1:k)≈

Ns X i=1

wikδ(uk− uik)

Dans notre cas et avec l’hypothèse Markovienne qui signifie que l’estima-tion du coefficient actuel dépend seulement de l’estimal’estima-tion du coefficient précédent et de l’observation actuelle, nous avons :

p(uk|u0:k−1, z1:k) = p(uk|uk−1, zk)

Finalement la valeur de ˆuk résultant des mesures aléatoires est calculée ainsi : ˆ uk= Ns X i=1 wikui k

Ce qui signifie que les coefficients sont calculés ainsi : ˆ ak = Ns X i=1 wikaik ˆbk = Ns X i=1 wikbik

Une étape optionnelle de ré-échantillonage peut être utilisée pour faire face au problème de dégénérescence, commun aux approches de filtrage parti-culaire. Le ré-échantillonage est introduit car après un certain nombre d’ité-rations de l’algorithme d’inférence, seul un petit nombre de particules n’a pas de poids négligeable. Ainsi, il convient de faire appel à une fonction de rééchantillonage si ce nombre de particules est inférieur à un certain seuil à définir.

L’agorithme décrit ci-dessous, reprend toutes les étapes détaillées ci-dessus d’identification en temps réel de paramètres par filtres particulaires. Algorithme (filtrage Particulaire) 1 Identification de système en temps réel, étape au temps t ayant une observation zk

for i = 1 . . . Nsdo Par définition : ui

k= (ai kbi

k)

aik:= aik−1+N (0|σ1)%en additionnant une valeur aléatoire autour de 0 bi

k:= bi

k−1+N (0|σ2)%en additionnant une valeur aléatoire autour de 0 p(zk|ui k) := C exp  −kz¨k+ aik˙zk+ bikzkk2 2  ˆ wi k:= wi k−1p(zk|ui k) % en normalisant les poids wikwˆ

i k P

jwˆkj, ∀i = 1 . . . Ns

% en calculant la taille de l’échantillon effectif Nef f ← ( Ns X i=1 (wik)2)−1 % re-echantillonage si besoin

if Nef f < seuil de ré-echatillonage then ré-échantilloner u1 k. . . uNs k selon ddf w1 k. . . wNs k wi k← N−1 s ∀i = 1 . . . Ns return ˆuk= Ns X i=1 wkiui k

c) Système dynamique par morceaux

Dans le cas où il est difficile de représenter un phénomène par un système dynamique unique, il est possible d’avoir recours à une modélisation par systèmes dynamiques par morceaux. Un système naturel n’est générale-ment pas linéaire et il est pertinent de le modéliser par une séquence de sys-tèmes linéaires. Ces méthodes sont souvent appelées Switching Linear Dyna-mic Systems(SLDS). Bregler (1997) a d’abord introduit les SLDS comme plu-sieurs systèmes dynamiques définissant des classes symboliques et a utilisé un HMM pour modéliser l’émission d’une classe ou la transition entre les classes. Murphy (1998) a défini, par la suite, dans sa thèse, la structure des SLDS comme un commutateur entre filtres de Kalman avec une inférence non exacte. Enfin, Oh et al. (2008) ont proposé de nouvelles méthodes d’in-férence testées sur le mouvement des abeilles. La modélisation de qualités de mouvement par SLDS n’a pas été traitée dans le cadre de cette thèse, mais constitue toutefois une perspective extrêmement prometteuse pour la reconnaissance de dynamiques complexes et composées.