SYSTEME ET PROCEDE DE DETERMINATION EN TEMPS REEL D'UN PARAMETRE D'UN MOUVEMENT DE FORME REPETITIVE
L'invention porte sur un système et un procédé de détermination en temps réel d'un paramètre d'un mouvement de forme répétitive.
Le terme temps réel, signifie que le temps de réponse est adapté au contexte de l'application.
La présente invention s'applique à tout domaine dans lequel un mouvement de forme répétitive se déroule, tel le domaine médical, la rééducation, le domaine sportif, mais s'applique particulièrement bien au domaine du jeu vidéo, dans lequel de nombreux jeux nécessitent des mouvements de forme répétitive de la part du joueur. L'invention peut également s'appliquer à des mouvements de forme répétitive d'un automate ou robot.
L'analyse de mouvements humains est mise en œuvre dans différents domaines tels le cinéma, les jeux vidéos, et le sport. Cette analyse permet, par exemple, de pouvoir reproduire les mouvements effectués par un utilisateur, afin d'animer un personnage virtuel affiché sur un écran, sans devoir recréer un modèle physique complexe, tout en conservant une gestuelle plus naturelle et spontanée.
La capture de mouvement est principalement utilisée pour le cinéma et les jeux vidéo afin d'animer des avatars ou personnages virtuels sur un écran d'affichage, en reproduisant les mouvements réels, tel que par exemple décrit dans le document WO 200801 1352.
Cependant, de tels systèmes nécessitent l'utilisation de marqueurs spécifiques disposés sur chaque membre de l'utilisateur, combinés à une acquisition vidéo centrée sur la personne. La vidéo est ensuite analysée afin de définir un modèle en déterminant, en trois dimensions, la localisation de chaque marqueur.
Cette technique implique une mise en œuvre complexe car les contraintes sur la précision des mouvements effectués et la localisation des marqueurs sont importantes. De plus l'acquisition des données et leur traitement ne sont pas nécessairement effectués en temps réel car il s'agit
principalement de reproduire les mouvements et non pas d'interagir en temps réel avec un système.
D'autres méthodes, comme celle divulguée dans le document WO 2006103662 permettent le suivi d'événements sportifs. Cette application permet de commander un ensemble de caméras de manière à améliorer leur orientation selon les phases d'actions sportives se déroulant, ou de pouvoir effectuer un résumé des phases d'actions sportives ayant eu lieu. Cependant, les caméras étant souvent loin des sportifs, elles ne peuvent pas être utilisées dans des applications nécessitant une grande précision.
Dans le cas d'interactions entre un utilisateur et une machine, par exemple une console de jeux vidéo, il existe d'autres méthodes en cours de développement qui permettent une interaction entre le joueur et la console de jeux. Récemment, le projet Natal de Microsoft (marque déposée) a été présenté. Il vise à proposer une nouvelle interface utilisant une caméra vidéo qui interprète les mouvements effectués par l'utilisateur afin de piloter un jeu vidéo ou une interface multimédia.
Cependant, cette technique contraint l'utilisateur à agir dans un espace déterminé nécessitant notamment l'absence d'obstacle entre l'utilisateur et le système.
D'autres systèmes utilisent des capteurs embarqués, ou, en d'autres termes, l'utilisateur est équipé de capteurs, tel un capteur de système de localisation par satellites, permettant de donner sa localisation ou position, ou de capteurs permettant de déterminer ses mouvements, tel un accéléromètre, un magnétomètre, ou un gyromètre. Les capteurs doivent être le moins intrusifs et facilement positionnables sans intervention extérieure.
De tels capteurs, même de bas coût, permettent d'obtenir une meilleure précision dans la mesure des mouvements qu'un capteur vidéo où la précision est proportionnelle à la taille et à la définition du capteur et donc nécessite des traitements plus complexes et une machine de traitement plus performante et plus coûteuse.
Les capteurs embarqués peuvent être utilisés pour la géolocalisation et le guidage. Certains véhicules ou appareils équipés de récepteur de système de localisation par satellites, tel des récepteurs GPS, contiennent également une centrale inertielle afin de pallier les coupures
temporaires de la réception des signaux du système. Un tel système a été ainsi adapté pour le guidage de piétons, comme décrit dans le document US 2009192708. Ces approches nécessitent cependant une référence de position globale, les capteurs de mouvement ne peuvent être utilisés que de manière temporaire afin de pallier un défaut conséquent ou bien pour gagner en précision. Les systèmes utilisés impliquent très peu de capteurs, un simple accéléromètre permet de donner la direction principale et la vitesse du déplacement, et aucun détail supplémentaire n'est nécessaire pour caractériser le mouvement. De plus, il n'est pas nécessaire de répondre au plus vite lors d'un changement de vitesse ou de direction. De tels systèmes ne sont pas adaptés pour des mouvements relativement précis, ni pour l'utilisation d'une interface.
Dans la présente invention, l'utilisateur interagit avec une machine uniquement grâce aux capteurs de mouvements. Cette approche nécessite donc une grande précision, mais surtout une réponse au plus tôt et une prise en main simple et naturelle.
Depuis quelques années, l'utilisation de capteurs fixés sur une personne afin de commander une interface de communication se développe.
En particulier dans le contexte du jeu vidéo où certains systèmes permettent d'interagir d'une manière plus précise qu'avec une manette ou un clavier, mais également d'apporter de la convivialité en permettant aux personnes non-initiées de pouvoir jouer rapidement sans apprendre à maîtriser des commandes, celles liées aux mouvements étant plus naturelles. Enfin, cette approche apporte un réalisme amélioré en adaptant le jeu vidéo aux mouvements propres du joueur.
Ainsi, Sony a proposé une manette dualshock (marque déposée) compatible avec sa console de jeu comportant un capteur de mouvement, afin de pouvoir transcrire à l'écran les mouvements appliquées à celle-ci. Cependant, les mouvements sont limités et la fonctionnalité principale reste donc la possibilité d'amplifier les mouvements de direction en fonction de l'inclinaison de la manette.
Plus récemment, Nintendo a introduit sa console grand public Wii (marque déposée) qui comprend des manettes interactives. Ces manettes sont munies d'un accéléromètre qui est utilisé pour connaître le mouvement du joueur, mais sans déterminer plus précisément la direction ou l'amplitude
du mouvement. Pour compléter cette manette, une plateforme est développée afin de considérer également les mouvements des jambes, telle que décrite dans le document EP 0908701 . Cependant, cette plateforme ne permet que de connaître la fréquence des mouvements de jambes au même endroit et ne tolère donc pas de déplacement du joueur. De plus, elle ne permet pas de connaître l'orientation du joueur pour pouvoir, par exemple, effectuer une commande de rotation.
Le document WO 2006086487 concerne l'adaptation d'un module sur une chaussure de sport afin de mesurer et transmettre l'information de quantité de mouvements effectués. La particularité de cette invention réside dans la capacité à mesurer la quantité d'activité physique effectuée par le joueur afin de pouvoir activer certaines fonctionnalités du jeu, ou certaines caractéristiques de l'avatar ou personnage virtuel. Cependant, ce dispositif ne permet pas d'interfacer totalement un joueur avec son personnage virtuel. En effet, seul un capteur est utilisé, par exemple un accéléromètre, pour mesurer l'activité physique, mais aucune information n'est récupérée pour caractériser plus précisément les mouvements effectués.
Ces systèmes manquent de précision et de rapidité pour des applications en temps réel, notamment dans le domaine du jeu vidéo.
Un but de l'invention est de pallier les problèmes précédemment cités.
Selon un aspect de l'invention, il est proposé un système de détermination en temps réel d'un paramètre d'un mouvement de forme répétitive comprenant :
- des premiers moyens d'estimation d'une approximation de la période dudit mouvement de forme répétitive, avant la fin du mouvement courant, à partir de signaux représentatifs dudit mouvement ;
- des moyens de détermination d'une taille de fenêtre glissante à partir de ladite période estimée par lesdits premiers moyens d'estimation ; et
- des deuxièmes moyens d'estimation précise, par fenêtre glissante, dudit paramètre de mouvement, à partir de signaux représentatifs dudit mouvement et de ladite taille de fenêtre glissante délivrée par lesdits premiers moyens d'estimation.
La détermination en temps réel est ainsi améliorée, car les premiers moyens d'estimation d'une approximation de la période du
mouvement de forme répétitive, avant la fin du mouvement en cours permet aux moyens de détermination d'estimer rapidement, de manière adaptative, une taille de fenêtre glissante particulièrement adaptée au calcul précis du paramètre de mouvement de manière rapide. La taille de la fenêtre glissante est ainsi automatiquement adaptée à la variation de la période du mouvement de forme répétitive. On entend par mouvement de forme répétitive, un mouvement de forme relativement semblable, mais dont des paramètres peuvent varier, tels la période (ou fréquence ou vitesse), l'amplitude, ou l'impact (puissance d'un choc de contact).
Dans un mode de réalisation, ledit paramètre de mouvement est la période dudit mouvement de forme répétitive.
Le système est particulièrement adapté pour estimer précisément, en temps réel, la période du mouvement de forme répétitive, à partir d'une première estimation rapide approximative permettant de déterminer rapidement une taille de fenêtre glissante particulièrement adaptée à un calcul précis de la période, qui ainsi est effectué bien plus rapidement. Aussi, la détermination de la période du mouvement de forme répétitive est ainsi effectuée précisément avec un temps de réponse au plus tôt amélioré, i.e. un aspect temps réel amélioré.
Par exemple, lesdits deuxièmes moyens d'estimation comprennent des moyens de calcul par corrélation de la période du mouvement de forme répétitive.
Ainsi, à partir de statistiques peu complexes, il est possible de déterminer le paramètre sans connaissance a priori de la signature temporelle du mouvement.
Selon un mode de réalisation, lesdits premiers moyens d'estimation d'un autre paramètre de mouvement dudit mouvement de forme répétitive, différent de ladite période, comprennent lesdits deuxièmes moyens d'estimation précise de ladite période.
Si on détermine avec un système selon l'invention, la période du mouvement de forme répétitive, en temps réel, de manière précise, celle-ci peut être utilisée, pour calculer un autre paramètre de mouvement, différent de la période, selon un autre aspect de l'invention, en servant à déterminer une taille de fenêtre glissante, permettant ensuite une estimation précise et rapide de cet autre paramètre de mouvement.
Dans un mode de réalisation, lesdits moyens de détermination comprennent un gain multiplicatif de sécurité.
Une marge de sécurité est ainsi prise pour la détermination de la taille de la fenêtre glissante, ce qui permet d'éviter que la taille de la fenêtre glissante soit un peu trop petite.
Selon un mode de réalisation, le système comprend une interface de communication pour communiquer en temps réel l'évolution dudit mouvement, par exemple, une interface audiovisuelle.
Une telle interface de communication audiovisuelle est particulièrement bien adaptée pour des systèmes de jeux vidéo.
Dans un mode de réalisation, le système comprend, en outre, un ensemble capteur adapté pour être fixé sur l'élément effectuant le mouvement de forme répétitive, pour délivrer lesdits signaux.
L'ensemble capteur peut comprendre au moins un magnétomètre, et/ou au moins un accéléromètre, et/ou un gyromètre, et/ou un capteur de pression, et/ou un électrocardiographe, et/ou un débitmètre de mesure du souffle, et/ou un capteur de mesure de la fréquence de respiration.
Selon un autre aspect il est également proposé un procédé de détermination en temps réel d'un paramètre d'un mouvement de forme répétitive comprenant les étapes consistant à :
- estimer une approximation de la période dudit mouvement de forme répétitive, avant la fin du mouvement courant, à partir de signaux représentatifs dudit mouvement ;
- déterminer une taille de fenêtre glissante à partir de ladite période estimée approximativement ; et
- estimer précisément, par fenêtre glissante, ledit paramètre de mouvement, à partir de signaux représentatifs dudit mouvement et de ladite taille de fenêtre glissante déterminée.
Selon un mode de mise en œuvre, on détermine en temps réel la période précise dudit mouvement de forme répétitive.
Dans un mode de mise en œuvre, l'estimation d'un autre paramètre de mouvement dudit mouvement de forme répétitive, différent de ladite période, utilise dans l'étape d'estimation approximative de ladite période, l'étape d'estimation précise de la période dudit mouvement de forme répétitive.
Selon un mode de mise en œuvre, lesdits signaux sont transmis par un ensemble capteur fixé sur l'élément effectuant le mouvement de forme répétitive, comprenant, par exemple, au moins un magnétomètre, et/ou au moins un accéléromètre, et/ou un gyromètre, et/ou un capteur de pression, et/ou un électrocardiographe, et/ou un débitmètre de mesure du souffle, et/ou un capteur de mesure de la fréquence de respiration.
Dans un mode de réalisation, un changement de repère desdits signaux transmis par l'ensemble capteur muni d'un premier repère orthonormé [X, Y, Z] est effectué en utilisant une décomposition en valeurs propres décroissantes Au, λν et Aw pour exprimer ledit premier repère orthonormé [X, Y, Z] dans un deuxième repère orthonormé [U, V, W], dont l'axe U ou les axes U et V correspondent respectivement à un axe principal ou un plan principal dudit mouvement.
On améliore ainsi la précision et la robustesse. En outre, une calibration automatique de l'ensemble capteur est alors possible.
Selon un mode de réalisation, ladite détermination en temps réel de la période précise dudit mouvement de forme répétitive détecte des maxima locaux et un maximum global, sur ladite fenêtre glissante, lesdits maxima locaux et global étant multiples d'une durée élémentaire, et sélectionne le maximum, correspondant à ladite période précise, se produisant le plus tôt et dont l'écart avec ledit maximum global est inférieur à un seuil.
Le faible risque d'erreur sur la détection de ladite période précise est ainsi encore plus limité sur la taille de la fenêtre glissante déjà optimisé grâce à l'estimation approximative rapide de la période.
L'invention sera mieux comprise à l'étude de quelques modes de réalisation, décrits à titre d'exemples nullement limitatifs, et illustrés par les dessins annexés sur lesquels :
- la figure 1 illustre schématiquement un système de détermination en temps réel d'un paramètre d'un mouvement de forme répétitive, selon un aspect de l'invention ;
- la figure 2 illustre schématiquement un exemple de réalisation d'un système de la figure 1 , dans lequel le paramètre est la période selon un aspect de l'invention ;
- la figure 3 illustre schématiquement un système de la figure 2 estimant en outre un autre paramètre de mouvement dudit mouvement de forme répétitive, différent de ladite période, selon un aspect de l'invention ;
- les figures 4 et 5 illustrent schématiquement un ensemble capteurs dans le cas d'une application de jeu vidéo ;
- les figures 6 et 7 illustrent schématiquement un problème de détermination de la période ; et
- la figure 8 représente schématiquement un exemple de comparaison du calcul de la période selon un aspect de l'invention avec une estimation avec une fenêtre de taille optimisée.
Sur les différentes figures, les éléments ayant des références identiques sont identiques.
Sur la figure 1 est illustré un exemple d'un système de détermination en temps réel d'un paramètre d'un mouvement de forme répétitive, comprenant un premier module d'estimation EST1 d'une approximation Tr de la période du mouvement de forme répétitive, avant la fin du mouvement courant, à partir de signaux S1 , S2 représentatifs du mouvement. Un module de détermination DET détermine une taille F de fenêtre glissante à partir de ladite période Tr estimée par le premier module d'estimation EST1 , par exemple en multipliant l'approximation rapide Tr par un facteur ou gain égal à 1 +Δ, de manière à prendre une marge de sécurité. Δ peut par exemple être compris entre 0 et 0.5. Un deuxième module d'estimation précise, par fenêtre glissante, du paramètre de mouvement, à partir des signaux S1 , S2 représentatifs du mouvement et de la taille F de fenêtre glissante délivrée par le premier module d'estimation EST1 .
La figure 2 illustre un cas dans lequel le paramètre de mouvement déterminé en temps réel dans un mouvement de forme répétitive est la période du mouvement, qui est délivrée en sortie Tp par le deuxième module d'estimation EST2.
En ce cas, l'invention permet, par l'estimation rapide, généralement avant la fin du mouvement en cours, de la période du mouvement Tr, de fournir au deuxième module d'estimation précise une taille F de fenêtre glissante optimisée, par l'intermédiaire du module de
détermination DET, ce qui permet au deuxième module d'estimation EST2 d'effectuer, au plus tôt, une estimation précise Tp de ladite période. Cette estimation précise est bien plus rapide.
Dans le cas du calcul de la période, le deuxième module d'estimation EST2 effectue une corrélation par fenêtre glissante à partir d'un seul signal ou de plusieurs signaux, pouvant ou non comprendre les signaux d'entrée du premier module d'estimation EST1 .
La figure 3 illustre une réalisation "en cascade", selon un aspect de l'invention, dont le système de la figure 2 est repris, et sert de premier module d'estimation rapide EST'1 , pour estimer une taille de fenêtre glissante pour estimer précisément un autre paramètre de mouvement qui, du coup permet de prendre comme estimation rapide Tr' de la période, directement la période précise Tp déjà calculée de manière précise.
Le module d'estimation rapide EST1 de la période peut, par exemple mettre en œuvre des estimations rapides décrites dans le document " frequency tracking in nonstationary signais using Joint Order Statistics", Proceedings of the International Symposium on Time-Frequency and Time- Scale Analysis 96, p 441 -444, de A. Marakov, dans "Un nouvel outil d'analyse temps-fréquence basé sur un moyennage à recalage de phase" Gretsi 2009, de M. Jabloun, ou dans "Adaptive spectrogram vs. Adaptive pseudo Wigner-Ville distribution for instantaneous frequency estimation", Signal Processing 2003, de S. Chandra Sekhar.
Les signaux S1 , S2, ou S3 peuvent être identiques, différents, ou l'un peut inclure un autre. Ils proviennent de capteurs transmettant des signaux représentatifs d'un mouvement de forme répétitive. Par exemple, un ensemble capteur peut comprendre au moins un magnétomètre, et/ou au moins un accéléromètre, et/ou un gyromètre, et/ou un capteur de pression, et/ou un électrocardiographe, et/ou un débitmètre de mesure du souffle, et/ou un capteur de mesure de la fréquence de respiration.
La figure 4 illustre un exemple dans lequel l'invention est appliquée au domaine du jeu vidéo pour des mouvements de marche de forme répétitive. L'ensemble capteur comprend, pour chaque jambe, un accéléromètre triaxial et un magnétomètre triaxial (X, Y et Z). Chaque modalité est un signal tridimensionnel, en l'espèce douze signaux au total.
Ces signaux sont échantillonnés à intervalles réguliers, et chaque signal reçu est daté afin de pouvoir synchroniser les données.
Cette configuration répond à un positionnement spécifique du capteur, par exemple sur le côté du pied afin d'orienter un des axes principaux d'un capteur selon le mouvement, mais il est envisageable d'appliquer un traitement pour effectuer un changement de repère (U, V, W), afin de positionner les capteurs dans un même repère. Ce changement de repère permet également de connaître la direction principale ou le plan principal du mouvement, comme illustré sur la figure 5.
En d'autres termes, un changement de repère des signaux dans un premier repère orthonormé (X, Y, Z) est effectué en utilisant une décomposition en valeurs propres décroissantes Au, λν et Aw pour exprimer le premier repère orthonormé (X, Y, Z) dans un deuxième repère orthonormé (U, V, W), dont l'axe U ou les axes U et V correspondent respectivement à un axe principal ou un plan principal dudit mouvement.
Le signal devant contenir un maximum d'information à propos du mouvement effectué, il est nécessaire que l'axe du capteur duquel est extrait le signal soit orienté de manière optimale par rapport au mouvement.
Soit le capteur est positionné de manière optimale, par exemple de sorte que l'axe X du capteur mesure la composante du signal comprenant le plus d'informations, avec le meilleur rapport signal/bruit, soit un changement de repère peut être effectué.
Pour effectuer ce changement de repère de la base (X, Y, Z) à (U, V, W), une décomposition en valeurs propres est utilisée. Le principe consiste à déterminer des coefficients Au, λν et Aw, tels que Au > λν > Aw. La base du capteur peut ainsi être décrite comme une combinaison des différents axes (U,V,W) qui forment un repère orthonormé. Une des propriétés de la décomposition permet de définir ce nouveau repère tel que l'axe U soit l'axe principal du mouvement.
Par exemple, pour un pied donné, il faut considérer les 3 signaux de capteur sur une fenêtre, par exemple issus de l'accéléromètre A : [Ax, Ay, Az].
Il faut ensuite calculer la matrice de corrélation C :
c(Ax, Ax) c(Ax, Ay) c(Ax, Az)
C = \ c(Ay, Ax) c(Ay, Ay) c(Ay, Az) , avec c(A,B) la fonction de c(Az, Ax) c(Az, Ay) c(Az, Az)
corrélation entre A et B.
Selon le principe de l'Analyse en Composante Principale ou ACP, les coefficients Au, λν et Aw sont définis par les relations suivantes :
K o o
0 A, 0 et D = P lCP ; avec P la matrice de passage qui définit 0 0 A,„
ainsi le nouveau repère, c'est-à-dire la matrice qui permet de modifier les signaux afin de les adapter dans le nouveau repère. La décomposition en valeurs propres permet de déterminer la matrice de passage P, ainsi que la matrice L.
Ainsi, pour appliquer les traitements, il est possible de considérer le signal de l'accéléromètre Au, plutôt que Ax.
Pour un tel exemple, pour simuler la marche/course, le système considère que le joueur effectue des mouvements de marche/course, soit lorsque les pieds quittent le sol, soit avec les pointes de pieds au sol. Dans la suite de la description, non limitative, c'est sur cet exemple qu'est appliquée l'invention.
La période, permet de définir la fréquence ou vitesse des pas du joueur, c'est-à-dire de déterminer si le joueur marche lentement, rapidement ou s'il court. La durée des pas peut être estimée avec une fonction de corrélation entre deux signaux S1 et S2. L'idée est d'estimer le décalage temporel entre les deux signaux qui maximise leurs corrélations, ce décalage topt est lié ensuite à la période T des pas du joueur. Différentes configurations de complexité croissante peuvent être envisagées :
S1 =S2= Agx ou Adx ou Agu ou Adu soit une autocorrélation sur une composante d'un pied choisi de façon arbitraire si possible orientée suivant l'axe de mouvement principal. Dans ce cas, ορί =T,
S1 = Agx et S2=Adx, ou Agu ou Adu soit une corrélation entre deux mêmes composantes des deux pieds. Il faut veiller dans ce cas à ce que les deux axes aient la même direction et le même sens. Dans ce cas, opt =112,
Dans le cas précédent, il est possible de s'assurer de la colinéarité des axes en réalisant une estimation de l'axe principal du mouvement sur chaque pied par une technique de décomposition en valeurs propres du signal.
Pour permettre le suivi des variations de période des pas du joueur, le calcul de la corrélation s'appuie sur une fenêtre du signal qui considère de manière causale, ou en d'autres termes qui prend en compte une fenêtre temporelle utilisant uniquement des échantillons précédents l'instant d'intérêt, le signal ainsi que les derniers échantillons acquis. Afin de déterminer la période du signal, il est nécessaire d'englober au moins une période du signal.
On a l'équation suivante pour la corrélation rsls2(ï, T) entre deux signaux S1 et S2:
dans laquelle :
t représente l'instant courant,
T représente le décalage considéré,
It représente l'intervalle dépendant de t.
Cette fonction peut être estimée par : rsis 2(t, T) = ∑Sl(t - 0).S2(t - 0 - T)
0=0
Tf représentant la taille de la fenêtre temporelle d'intérêt et définit donc la plage de variation du retard τ comme [0; Tf[.
Afin de favoriser les derniers échantillons acquis et d'améliorer la qualité de l'estimation, il est possible d'ajouter dans ce calcul une fenêtre de pondération wTf_T de durée Tf- T qui permet ainsi d'appliquer sur chaque fenêtre du signal un certain poids proportionnel à l'instant de la fenêtre et l'instant de l'échantillon. La fonction de corrélation peut alors être calculée par la relation suivante :
^5152 (^ ' ^") Tf -T-l X
∑wTf _T (a)2
a=0
∑Sl(t - 0).S 2(t - 0 - T)wT 2 f _T (0)
(9=0
dans laquelle a représente un indice temporel de la fenêtre de pondération.
La corrélation permet de déterminer, lorsque celle-ci est maximale, le décalage optimal correspondant à la période du signal. La figure 6 représente la fonction de corrélation en fonction de t et de T pour un signal dont la période varie.
La figure 7 est une coupe de la figure 6 à un instant t=35s donné. Sur ces deux figures, il s'agit du cas S1 =S2= Agx ou Adx avec une autocorrélation sur une composante d'un pied. Ensuite, il est nécessaire d'effectuer un suivi du maximum afin de corriger d'éventuelles erreurs à un instant donné.
Cette étape permet ainsi de faciliter la recherche de la valeur maximale de corrélation en supprimant les valeurs secondaires, multiples de la période, grâce à la taille adaptée de la fenêtre glissante.
Le résultat de période correspondant à la durée d'un pas est donc la valeur T déterminée par le maximum de la corrélation :
Cette méthode nécessite donc un seul paramètre : 7^ (7} ) correspondant au décalage maximal à considérer pour le calcul de la corrélation. Ce décalage est interprété comme le retard maximal possible, puisqu'il faut considérer une fenêtre temporelle de cette taille.
Lors d'une utilisation d'un paramètre fixe, le retard sera constant, mais si le rythme s'accélère, il n'est pas possible de répondre au plus tôt. Il faudrait ainsi régler la taille maximale de la fenêtre en fonction du pas le plus lent, soit plusieurs secondes. Ainsi l'idée est d'avoir un réglage adaptatif de la taille de la fenêtre d'analyse pour optimiser la rapidité du système lors d'un changement de rythme de marche.
En d'autres termes, Comme le montre la figure 7, le résultat de la corrélation Γ présente plusieurs lobes dont chaque maximum est localisé en
T, 21, 3Τ, ... , kT dans le cas de l'autocorrélation (respectivement 112, 3T/2, 5T/2, (2k+1 )T/2 dans le cas de la corrélation entre les deux pieds). Dans le cas idéal d'un signal parfaitement stationnaire, le lobe dont le maximum est le maximum global est situé à T (respectivement 112). Cependant, dans le cas d'un signal dont la période est non stationnaire, il se peut que le maximum global ne soit pas situé à T (respectivement 112), mais à 21 ou 3T (respectivement 3T/2, 5T/2).
Dans ce cas, le résultat donné pour l'estimation de la période serait donc faussé, et la période estimée serait deux ou trois fois supérieure à la valeur réelle. Aussi, une correction est apporté comme suit :
Soit T l'instant du maximum global,
S'il existe un lobe dont le maximum est proche de la valeur du maximum à l'instant 112 ou T/3, ou 1/4 ... alors l'instant T est corrigé en 1/2 ou T/3 ou 1/4, c'est-à-dire le plus grand dénominateur possible (respectivement 2T/5, 2T/3, ...).
Une deuxième vérification est possible, afin de valider la continuité temporelle. Le principe consiste à valider la valeur de T, en la comparant avec des valeurs déterminées sur les dernières fenêtres. Si la valeur varie trop, alors nous attendons l'acquisition d'un nouvel échantillon. Selon la valeur de T sur la fenêtre suivante, qui est soit proche des valeurs sur les fenêtres précédentes, soit proche de T sur la fenêtre actuelle. Dans ce dernier cas, il y a eu un changement de rythme et la valeur de T trouvée est bonne, sinon, le mouvement n'a pas varié et l'estimation de T sur la fenêtre actuelle est fausse, et peut être remplacée par la moyenne de T sur la fenêtre précédente et la fenêtre suivante.
Selon un aspect de l'invention, une étape de prédétermination de la taille de la fenêtre glissante est ajoutée, qui se base sur une estimation simple et approximative de la période du signal.
Pour cette estimation simple et rapide, il est par exemple possible de mettre en œuvre l'estimation de Makarov, précédemment citée, qui permet de définir de manière causale, i.e. en n'utilisant que des échantillons du passé, une échelle de valeur pour la période du signal.
Une estimation de Marakov permet de déterminer la fréquence d'un signal non stationnaire, à chaque instant, en considérant les derniers échantillons acquis. Le principe s'appuie sur la statistique des tendances.
Pour chaque point du signal, il faut estimer si la tendance est modifiée, c'est- à-dire si les valeurs maximales et minimales observées à l'instant précédent sont conservées. Si cette tendance est modifiée, alors le point n'est pas un extremum, sinon il s'agit d'un extremum. Ainsi, il est possible de connaître à chaque instant l'instant correspondant au précédent extremum, ce qui peut être converti, en connaissant la fréquence d'échantillonnage, en période ou fréquence estimée.
L'algorithme est de complexité réduite et est donc parfaitement adapté à une détermination préalable de la période du signal. A partir de cette estimation, il est en effet possible de déterminer de manière optimale la taille de la fenêtre glissante sur laquelle sont effectués par la suite les traitements pour l'estimation des paramètres. Il est en effet plus pertinent de ne considérer que les dernières périodes du signal qui correspondent au mouvement en cours, plutôt que de considérer des signaux décrivant un mouvement passé et achevé qui perturberait les calculs.
Par exemple, les signaux issus des magnétomètres sont utilisés en entrée du premier module d'estimation EST1 car ils comportent moins de lobes. Cette estimation de Marakov considère simplement les changements de tendance du signal en évaluant la présence d'extremums. Pour chaque point, il est possible de déterminer la distance au plus proche extremum passé. Ainsi à l'apparition d'un nouvel extremum il est possible d'estimer la période grâce à la distance au précédent extremum.
Un second paramètre pouvant être estimé est l'amplitude, c'est-à- dire la longueur d'un pas. De même, il est nécessaire d'extraire la taille de la fenêtre glissante contenant le signal du pas effectué, soit en utilisant le résultat de la corrélation précise du deuxième module d'estimation EST2, soit à partir du résultat de Makarov de la première estimation rapide du premier module d'estimation EST1 .
L'amplitude est déterminée à l'aide des signaux issus des magnétomètres et correspond à valeur absolue de la différence du maximum et du minimum de la somme des signaux :
S étant la somme des signaux des magnétomètres du pied droit ou du pied gauche :
S(t) = Mï (t) + My (t) + Mz (t) ou S(t) = Mu (t) + Mv (t) + Mw (t) en cas de changement de repère.
Un troisième paramètre peut être l'impact, c'est-à-dire la puissance du choc entre le talon et le sol. Cette valeur est reliée directement à l'accélération du capteur et donc proportionnelle à ces valeurs.
On considère que le résultat correspond à la valeur maximale de l'accélération pendant le pas effectué. Comme pour l'amplitude, il faut donc extraire la fenêtre du signal correspondant au pas effectué, soit à l'aide du résultat de la corrélation précise du deuxième module d'estimation EST2, soit à partir du résultat de Makarov de la première estimation rapide du premier module d'estimation EST1 .
Le calcul est effectué simplement comme étant la norme des signaux d'accélération :
7(0 = max ||A( || = max AX (t)2 + A (t)2 + A (t)2
ie[t-T,t " ie[t-T,t] * ' L
Une autre caractéristique du mouvement peut être l'orientation.
Pour cela, les signaux des magnétomètres sont utilisés, en considérant tout naturellement l'orientation du joueur par rapport au nord magnétique.
Le calcul de corrélation implique une fenêtre de pondération. La forme de la pondération peut être choisie. Cependant, la forme influe peu sur les performances du moment où la fenêtre accorde davantage d'importance aux échantillons les plus récents.
Enfin, selon la position du capteur, il peut être intéressant d'indiquer l'axe principal d'orientation des capteurs afin d'utiliser seulement deux signaux (par exemple pied gauche et pied droit selon l'axe X) pour le calcul de la corrélation.
Il est également possible d'appliquer un changement de repère afin de déterminer l'axe principal du mouvement et par conséquent de déterminer automatiquement l'axe principal à considérer, mais ce calcul peut amener une complexité supplémentaire. Ici encore, les expériences ont mis en évidence que l'utilisation du même axe X, lorsque le capteur est positionné sur le côté du pied permet de fournir de bons résultats, tout en conservant une bonne robustesse.
Afin d'illustrer l'intérêt de prédéterminer la fréquence de la marche, la figure 8 représente les résultats pour la détermination de la période ou durée des pas en utilisant une fenêtre adaptative ou non.
Les signaux illustrés sur la figure 8 sont, représentent, du haut vers le bas :
- le signal d'accélération selon l'axe X transmis par l'accéléromètre lié à un pied ;
- la fonction de corrélation en fonction du temps t et du décalage τ pour une taille de fenêtre variable. La zone en noir en haut de l'image est liée à la taille de la fenêtre réglée de façon adaptative. Elle varie, sur cet exemple, entre 0.5 seconde et 1 .7 secondes ;
- la période estimée de manière adaptative selon l'invention, comparativement à la valeur réelle ;
- la fonction de corrélation en fonction du temps t et du décalage τ pour une taille de fenêtre fixe ; et
- la période estimée avec une fenêtre de taille fixe de 2 secondes, comparativement à la valeur réelle.
Ainsi aux instants A, B et C, auxquels ont lieu une transition d'une marche rapide à une marche lente, l'approche adaptative représentée sur le deuxième graphe, répond plus rapidement que dans le cas d'une fenêtre de taille fixe, représenté sur le troisième graphe. L'instant D correspond à une transition d'une marche lente à une marche rapide pour laquelle la différence est plus nuancée du fait du signal lui-même mais la réactivité est quand même améliorée. L'instant E est intéressant car il montre que lors d'une transition plus douce entre deux vitesses de marche est plus graduelle avec une approche adaptative.
La présente invention est particulièrement intéressante pour améliorer l'aspect temps réel, ainsi que, dans le cas du jeu vidéo, pour améliorer la robustesse du système vis-à-vis des différentes manières de jouer.