FR 3000376 A1 20140704 FR 1350012 A 20130102 Procédé d'estimation de mouvement d'un objet massique poly-articulé L'invention concerne un procédé d'estimation de mouvement d'un objet massique poly-articulé et s'applique au domaine de la capture du 5 mouvement d'un objet poly-articulé à l'aide de capteurs inertiels disposés sur l'objet. Plusieurs techniques existantes peuvent être utilisées pour capturer le mouvement d'un objet poly-articulé. Les systèmes mettant en oeuvre ces 10 techniques peuvent être classés en deux catégories. La première catégorie regroupe les systèmes exploitant au moins un capteur et ont recours à un dispositif externe qui sert de référence absolue. A titre d'illustration, le dispositif externe peut être composé d'une ou plusieurs caméras situées à des positions connues. Dans un autre exemple, ce 15 dispositif externe peut être composé d'un ou plusieurs émetteurs de type ultrason, électromagnétique ou autre, lesdits émetteurs étant positionnés à des positions connues de l'environnement. La seconde catégorie regroupe les systèmes composés exclusivement de capteurs n'ayant pas recours à un dispositif externe 20 servant de référence absolue. Avantageusement, les systèmes appartenant à la seconde catégorie bénéficient d'un espace d'utilisation illimité car l'objet poly-articulé n'est pas contraint de rester dans l'espace opérationnel de dispositifs externes utilisés comme référence absolue, cet espace opérationnel correspondant par exemple au champ de vision d'une caméra 25 ou à la portée d'un émetteur. Cependant, les systèmes de cette catégorie présentent un phénomène de dérive d'estimation du fait qu'ils sont dénués de référence par rapport à l'environnement. En d'autres termes, l'erreur des estimations des positions par rapport l'environnement des éléments composant l'objet poly-articulé est non bornée dans le temps. Les éléments 30 composants l'objet poly-articulé sont appelés segments. Certains systèmes appartenant à la seconde catégorie, c'est-à-dire comportant que des capteurs n'ayant pas recours à un dispositif externe servant de référence absolue utilisent des capteurs inertio-magnétiques comme par exemple des gyromètres, des accéléromètres ou des 5 magnétomètres. Ces capteurs peuvent être mis en oeuvre en utilisant la technologie des microsystèmes électromécaniques MEMS, acronyme venant de l'expression anglo-saxonne « Micro-Electro-Mechanical Systems ». Cela permet d'obtenir des capteurs compacts et légers. Ainsi, il est possible d'instrumenter l'objet poly-articulé avec ce type de capteurs sans qu'ils ne 10 gênent son mouvement. Comme les capteurs MEMS sont peu consommateurs d'énergie, ils sont souvent embarqués à bord de petits modules indépendants et autonomes en énergie qui transmettent leurs informations à une unité centrale via une liaison sans fil. Par ailleurs, les capteurs MEMS sont particulièrement bon marché. 15 Dans la suite de la description, le mot « accéléromètre » désigne un capteur capable de mesurer la somme vectorielle de son accélération propre et de la gravité. Le mot « gyromètre » désigne un capteur capable de mesurer le vecteur vitesse de rotation par rapport à un repère immobile. Le mot « magnétomètre » désigne un capteur capable de mesurer le vecteur 20 champ magnétique terrestre. Les mesures sont exprimées dans le repère du capteur. L'estimation de la position en translation d'un objet mobile libre dans l'espace via des mesures issues de capteurs inertio-magnétiques MEMS est un problème difficile à résoudre. La seule information relevant de la 25 translation est la mesure issue de l'accéléromètre. Pour obtenir une position en translation, on peut intégrer deux fois l'accélération propre en fonction du temps. Comme un accéléromètre mesure à la fois l'accélération propre de l'objet auquel il est attaché mais aussi l'accélération liée au champ de pesanteur ambiant, il est nécessaire d'extraire la gravité de la mesure de 30 l'accéléromètre avant de réaliser la double intégration temporelle. La capacité à annuler les effets de la gravité dépend de la capacité du système à estimer finement son orientation, et ce pour toutes les dynamiques du mouvement. Une erreur même très petite d'un milli-radian (mrad) dans l'estimation de l'orientation induit une erreur de 0.01 m/s2 sur l'accélération propre 5 extraite. Si cette erreur n'est pas corrigée, elle se traduit après la double intégration par une erreur de 4.5 mètres au bout de trente secondes. Les erreurs d'estimation d'orientation des dispositifs sont généralement significativement supérieures à un milli-radian, d'autant plus que la performance des méthodes est très généralement dépendante de la 10 dynamique du mouvement capturé. Ainsi, si cette dérive d'estimation n'est par réduite, une estimation précise de la translation d'un objet mobile libre est impossible. Un système d'estimation de mouvement permettant de réduire cette dérive est décrit dans le brevet US8165844. La solution proposée s'appuie 15 sur un dispositif composé d'un ensemble de modules de capture disposés sur des segments de l'objet poly-articulé. Chaque module est équipé de capteurs inertio-magnétiques (accéléromètre, gyromètre et éventuellement magnétomètre). Le dispositif comprend en outre un circuit de fusion permettant d'estimer la position et l'orientation des segments. La fusion 20 s'appuie sur les mesures inertio-magnétiques provenant des modules de capture. La collecte des mesures peut se faire de façon filaire ou sans-fil. Le procédé permettant de réduire la dérive sur l'estimation de la position comprend une phase d'estimation et une phase de correction. La phase d'estimation comprend deux étapes. Dans une première 25 étape, des grandeurs cinématiques sont estimées pour chaque module de capture à partir des mesures qu'ils fournissent. L'expression « grandeurs cinématiques » désigne la position, la vitesse et l'accélération d'un corps rigide. Ces grandeurs sont exprimées par rapport au module de capture et non par rapport au segment auquel le capteur est attaché. Dans une 30 seconde étape, les grandeurs cinématiques des segments sont estimées en s'appuyant sur la connaissance du positionnement des capteurs sur les segments et de la morphologie de l'objet poly-articulé en utilisant par exemple la longueur des segments. La sortie de la phase d'estimation est une estimation des grandeurs cinématiques des segments. La phase de correction améliore cette première estimation. Elle peut contenir jusqu'à trois étapes. Dans une première étape, les limitations liées aux articulations sont exploitées pour corriger l'estimation des grandeurs cinématiques des segments. A titre d'exemple une information indiquant une rotation interdite autour d'un axe particulier peut être exploitée. Dans une deuxième étape, la détection de contacts extérieurs est utilisée pour corriger l'estimation des grandeurs cinématiques des segments. Cette détection est réalisée en utilisant un capteur externe ou une heuristique basée sur les grandeurs cinématiques des segments exprimées en des points particuliers. Dans une troisième étape, les mesures de capteurs externes sont exploitées afin de corriger l'estimation des grandeurs cinématiques des segments. Les capteurs externes sont par exemple de type GPS (Global Positionning System) ou RFID (Radio Frequency IDentification). Les données présentées en sortie des trois étapes de la phase de correction sont identiques. Il s'agit d'une estimation des grandeurs cinématiques des segments. La phase correction de ce procédé correspond donc à une suite de corrections élémentaires successives. Une dérive en translation inhérente à ce procédé est la conséquence de l'utilisation d'une double intégration temporelle des estimées de l'accélération propre pour chaque capteur. Si ces estimées sont très légèrement erronées, les estimées des positions en translation des capteurs sont éloignées de leurs valeurs réelles. La phase de correction est mise en oeuvre pour corriger ces erreurs. L'invention décrite dans la suite est une alternative à ce procédé permettant de réduire la dérive sur l'estimation de la position en translation en évitant d'avoir recours à une double intégration temporelle de l'estimée de 30 l'accélération propre au niveau de chaque capteur. Un des buts de l'invention est remédier à des inconvénients de l'état de la technique et d'y apporter des améliorations. A cet effet l'invention a pour objet un procédé d'estimation de mouvement d'un objet massique poly-articulé, composé d'une pluralité de segments reliés par au moins une articulation. Le procédé comporte les étapes suivantes : acquisition de mesures inertielles issues d'au moins un module de capture fixe par rapport à un segment, ledit module étant composé d'un accéléromètre et d'un gyromètre, lesdites mesures étant exprimées dans un repère de mesure fixe par rapport audit segment ; détermination à partir desdites mesures d'au moins un vecteur effort extérieur à l'objet massique de manière à contrôler un modèle physique de cet objet, ledit modèle représentant l'objet massique ; estimation des grandeurs cinématiques associées aux segments de l'objet en appliquant le principe fondamental de la dynamique avec le au moins un vecteur d'effort déterminé à l'étape précédente. Les étapes du procédé sont par exemple appliquées périodiquement avec un pas de temps prédéfini. Une étape est par exemple appliquée pour au moins une articulation de l'objet de manière à déterminer un effort et/ou une contrainte associé à ladite articulation à partir des paramètres représentatifs des liaisons mises en oeuvre par cette articulation, cet effort et/ou cette contrainte étant utilisée lors de l'application du principe fondamental de la dynamique. Des mesures du champs magnétique terrestres peuvent être acquises du module de capture, ledit module comprenant pour cela un troisième 25 capteur de type magnétomètre. Une étape d'estimation de l'orientation Rsensor des modules de capture par rapport à une référence de l'environnement est par exemple appliquée pour le au moins un module de capture en utilisant les mesures acquises. Une étape de détermination d'un moment M posttton est par exemple 30 appliquée en utilisant le positionnement Rssgnmsot, du au moins un module de capture sur son segment, de l'orientation Rsensor du module de capture et de l'orientation Rsgmt du segment auquel il est attaché estimée au pas de temps précédent. Le moment M -position peut être déterminé en utilisant l'expression suivante : Mposition = Kr[(Rssenmsot r Rsgmt - Rsensor) (Rssenmsot r Rsgmt Rsensor)1 dans laquelle : Kr est une matrice diagonale de taille 3 x 3 correspondant à des coefficients de raideur ; XT représente la transposée d'une matrice X ; représente l'opérateur chapeau tel que : lx 0 -vz pour tout y = Vy 17 = [19z 0 Vz -Vy l2x Une étape de détermination d'un moment M -vitesse représentatif d'un contrôle en vitesse sur un segment est par exemple appliquée après l'acquisition des mesures, ledit moment étant déterminé à partir du positionnement Rssgnmsotr, de la vitesse de rotation du module de capture (i) -sensor et de la vitesse de rotation du segment auquel il est attaché (osent estimée au pas de temps précédent. Le moment M -vitesse est par exemple déterminé en utilisant l'expression suivante : Mroatesse = Br (W smt sgmt Il Dsegnsor Wsensor) dans laquelle : Br est une matrice diagonale de taille 3 x 3 correspondant à des coefficients d'amortissement. Une étape détermine par exemple une force F', représentative d'un contrôle en accélération incluant la gravité sur le segment en utilisant les masses m des segments sur lesquels sont attachés les modules de capture, des mesures produites par l'accéléromètre et de l'estimation de l'orientation Rsensor dudit module. La force F', est par exemple déterminée pour chaque segment en utilisant l'expression suivante : F', = m Rsensor RsensorT (à + asensor) dans laquelle : à> représente le vecteur gravité ; asensor représente l'accélération propre du module de capture. Une étape détermine par exemple une force Fsun simulant l'effet de la 15 pesanteur sur le segment en utilisant les masses m des segments et la position des segments psgm;, Rsent estimée au pas de temps précédent. Une étape a par exemple pour objectif de déterminer des forces de collision F,0111s10n, lesdites forces étant déterminées à partir des informations de contact issues d'une détection de collision entre les géométries des 20 segments et la géométrie de l'environnement et à partir de la modélisation du frottement entre l'objet poly-articulé et l'environnement. L'invention a aussi pour objet un système d'estimation de mouvement d'un objet massique poly-articulé, composé d'une pluralité de segments reliés par au moins une articulation et comportant : 25 - un ensemble d'au moins un module de capture positionné sur au moins un segment de l'objet poly-articulé, ledit module étant fixe par rapport à un segment et étant composé d'au moins un accéléromètre et un gyromètre ; - une unité de traitement adapté pour acquérir des mesures inertielles issues du au moins un module de capture lesdites mesures étant exprimées dans un repère de mesure fixe par rapport audit segment, déterminer à partir desdites mesures au moins un vecteur effort extérieur à l'objet massique de manière à contrôler un modèle physique de cet objet, ledit modèle représentant l'objet massique, estimer des grandeurs cinématiques associées aux segments de l'objet en appliquant le principe fondamental de la dynamique avec le au moins un vecteur d'effort. L'invention a aussi pour objet un programme d'ordinateur comportant des instructions pour l'exécution du procédé décrit précédemment, lorsque le programme est exécuté par un processeur. D'autres caractéristiques et avantages de l'invention apparaîtront à l'aide de la description qui suit donnée à titre illustratif et non limitatif, faite en regard des dessins annexés parmi lesquels : la figure 1 illustre les relations qui existent entre les différentes grandeurs dynamiques ; la figure 2 donne un exemple d'objet poly-articulé utilisé comme modèle physique du corps humain ; la figure 3 donne un exemple d'articulation du coude et illustre son influence sur les mouvements relatifs des segments y étant reliés ; la figure 4 présente un mode de réalisation d'un procédé d'estimation de mouvement d'un objet poly-massique ; la figure 5 donne un exemple de segment du modèle physique en contact avec le sol et fait apparaitre les forces résultant de ce contact ; la figure 6 donne un exemple de système d'estimation de mouvement. Dans cet exemple, le mouvement d'un opérateur est capturé de manière à animer son avatar virtuel sur une visualisation 3D en temps réel. La figure 1 illustre les relations qui existent entre les différentes 5 grandeurs dynamiques. Les grandeurs cinématiques 100 regroupent la position 101, la vitesse 102 et l'accélération 103 d'un corps rigide. Ces grandeurs peuvent se référer aussi bien à la translation qu'à la rotation. Ainsi, les grandeurs cinématiques regroupent : 10 - la position en translation ; - la position en rotation appelée aussi orientation ou position angulaire ; - la vitesse de translation appelée aussi vitesse linéaire ; - la vitesse de rotation appelée aussi taux de rotation ou vitesse angulaire ; 15 - l'accélération en translation appelée aussi accélération linéaire ou accélération propre ; - l'accélération en rotation appelée aussi accélération angulaire. Les grandeurs dynamiques 104 correspondent à l'ensemble composé 20 des grandeurs cinématiques 100 et des efforts 105. Les efforts peuvent se référer aussi bien à la translation qu'à la rotation. Le terme « effort » regroupe : - les forces, désignées aussi par l'expression « efforts de translation » ; - les moments, désignés aussi par l'expression « efforts de rotation ». 25 La vitesse est la dérivée temporelle 106 de la position. Si une estimée de la vitesse est à disposition, il est donc possible d'estimer la position en procédant à une intégration temporelle 107 de la vitesse. L'accélération est la dérivée temporelle 108 de la vitesse. Si une estimée de l'accélération est à disposition, il est donc possible d'estimer la vitesse en 30 procédant à une intégration temporelle 109 de l'accélération. Une différence de position peut être convertie en effort par l'introduction d'une raideur 110. Une différence de vitesse peut être convertie en effort par l'introduction d'un amortissement 111. La somme des efforts et de l'accélération sont liées par la seconde loi de Newton 112, via l'introduction de la masse et de la matrice d'inertie. Enfin, il est possible d'obtenir la position à partir de la somme des efforts en intégrant l'équation du Principe Fondamental de la Dynamique 113. La figure 2 donne un exemple d'objet poly-articulé utilisé comme modèle physique du corps humain. L'objet d'intérêt est un objet poly-articulé composé de segments reliés par des articulations. Dans la suite de la description, un segment désigne un objet rigide ou supposé rigide définit par : - une géométrie, c'est-à-dire par une forme volumique bien définie ; - une masse et une inertie, une matrice d'inertie étant définie dans un repère de référence propre au segment. Par ailleurs, une articulation désigne une liaison entre deux segments. Cette liaison définit la configuration relative que peut avoir un segment 20 distant par rapport à un segment auquel il est lié. Une articulation est définie par : - un ou plusieurs degrés de libertés représentatifs notamment des caractéristiques de centres, d'axes ou de buttées ; - une ou plusieurs contraintes induisant des absences de degré de 25 liberté représentatifs notamment des caractéristiques de centres ou d'axes. Dans l'exemple de la figure 2, un objet poly-articulé 200 correspondant à une modélisation simple du corps humain est présenté. Cet objet polyarticulé est composé de dix-neuf segments reliés par dix-huit articulations. 30 Ainsi, la main est modélisée par un premier segment 203 relié par une articulation 206 à un deuxième segment 202 correspondant à l'avant bras. L'articulation 206 possède par exemple deux degrés de liberté. Le segment 202 correspondant à l'avant bras est relié par une articulation 205 à deux degrés de liberté au segment 201 correspondant au bras. Le segment 201 est quant à lui relié à la clavicule par une articulation 204 à trois degrés de libertés. La figure 3 donne un exemple d'articulation du coude et son influence sur les mouvements relatifs des segments y étant reliés. Le bras 303, l'avant 10 bras 304 et la main 305 sont représentés. L'articulation du coude définit les mouvements de l'avant bras par rapport au bras. Cette articulation autorise deux degrés de libertés permettant deux rotations d'axes concourants correspondant à la flexion/extension 300 et la prono-supination 301. 15 Les contraintes imposées par l'articulation du coude sont : - l'interdiction de translation selon les trois axes ; - l'interdiction de la troisième rotation correspondant à l'axe du bras 302 , - les buttées des deux degrés de liberté correspondant aux angles 20 minimum et maximum autorisés. La figure 4 présente un mode de réalisation d'un procédé d'estimation de mouvement d'un objet poly-massique. L'objectif du procédé est notamment de réaliser des estimations des 25 grandeurs cinématiques pour les segments de l'objet poly-articulé. Ces estimations correspondent pour les différents segments à la position en translation psgm;, la position en rotation Rsgmt , la vitesse de translation vsgmt et la vitesse de rotation cosgm;. Ces estimations peuvent être réalisées périodiquement en utilisant un pas de temps par exemple de dix 30 millisecondes. Le procédé est exécuté de manière itérative. A la première itération, une étape d'initialisation 400 est mise en oeuvre. Pour cela, des valeurs par défaut sont utilisées. Ces valeurs par défaut sont obtenues par exemple en demandant à un acteur de prendre une pose statique connue préalablement. Sa position en translation par rapport à l'environnement est initialisée à une valeur choisie, par exemple zéro. Ensuite, une étape d'acquisition des mesures 401 est exécutée. Ces mesures sont le résultat des opérations réalisées par des capteurs embarqués dans les modules de capture positionnées sur l'objet poly- articulé. Dans un mode de réalisation préféré, les modules de capture comprennent deux capteurs. Le premier capteur est un gyromètre et le second un accéléromètre. Dans un mode de réalisation alternatif, les modules de capture comprennent un troisième capteur de type magnétomètre. Une étape d'estimation de l'orientation des modules de capture 402 est ensuite appliquée. Pour chaque module, l'orientation par rapport à une référence de l'environnement est estimée. Le résultat de cette étape correspond par exemple à une matrice de rotation Rsensor. Une matrice de rotation R est une matrice de la forme : R= Rxx [Ryx Rxy Rxz 3x3 Rzx Ryy Ryzi E II: Rzy Rzz avec : R-I- = RT E det(R) = 1, det(. ) représentant la fonction déterminant. 25 Pour écrire la matrice de rotation d'un corps rigide j par rapport à un autre corps rigide i servant de référence, la méthodologie suivante peut être utilisée. II: 3x3 Dans un premier temps, un repère orthonormé direct p, est choisit comme repère de référence, dans lequel sera exprimée la configuration du corps rigide j. Dans un deuxième temps, le repère orthonormé direct tp; est attaché au 5 corps rigide, c'est-à-dire que les coordonnées de tous points du corps rigides exprimés dans tp; sont constants dans le temps et ce quelque soit le mouvement du corps rigide j. Dans un troisième temps, la matrice R est définie comme la matrice de taille 3 x 3 des coordonnées des trois vecteurs unitaires des axes du repère 10 tp; exprimés dans tpi. La concaténation se fait selon les colonnes. L'estimation de l'orientation est réalisée en utilisant les mesures réalisées par les capteurs des différents modules de capture. Ainsi, la mesure de l'accéléromètre et la mesure du vecteur vitesse de rotation (i) --sensor du gyromètre peuvent être utilisées. En complément, une mesure du champ 15 magnétique terrestre hsensor en provenance d'un magnétomètre peut également être utilisée. Il est à noter que l'estimation de l'accéléromètre correspond à la quantité suivante : RsensorT (à> asensor) 20 dans laquelle : à> représente la gravité ; asensor représente l'accélération propre du capteur, et donc du module de capture dans lequel il est embarqué. L'estimation de l'orientation peut être réalisée en utilisant la technique décrite 25 dans la publication de demande de brevet internationale W02010/007160. Une étape 403 de détermination d'un moment M --posttton est ensuite appliquée. Pour cela, une raideur est utilisée. Le moment M --posttton est déterminé à partir de la connaissance du positionnement Rsensor des capteurs sur les segments, de l'orientation du module de capture Rsensor estimée à l'étape 402 et de l'orientation Rsgmt du segment auquel il est attaché estimée au pas de temps précédent. La raideur est un coefficient utilisé comme paramètre pour convertir un écart d'orientation en un moment. L'écart s'exprime comme étant la différence entre l'orientation estimée à l'instant t à partir des mesures acquises et l'orientation estimée à l'instant d'estimation précédent. La raideur est donc un paramètre et son choix permet d'affiner les performances d'estimation du procédé. Les raideurs utilisées peuvent être différentes d'un segment à l'autre A titre d'exemple, si la raideur est introduite à l'aide d'une matrice diagonale Kr de taille 3 x 3, le moment 11/1 -position peut être déterminé en utilisant l'expression suivante : Mposition = Kr[(Rssgnmsot r Rsgmt Rsensor) (Rssgnmsot r Rsgmt Rsensor)1 dans laquelle : XT représente la transposée d'une matrice X ; représente l'opérateur chapeau tel que : lx 0 -vz pour tout iy = Vy 17 = vz 0 Vz -Vy l2x Une étape 404 de détermination d'un moment M -vitesse est ensuite appliquée et utilise un amortissement. Ce moment est représentatif d'un contrôle en vitesse sur un segment et est élaboré à partir de la connaissance du positionnement des modules de capture sur les segments Rssgnmsotr, de la vitesse de rotation du module de capture (i) -sensor> et de la vitesse de rotation du segment auquel il est attaché cosen; estimée au pas de temps précédent, c'est-à-dire à l'instant d'estimation précédent. L'amortissement est un coefficient utilisé comme paramètre pour convertir un écart de vitesse de rotation en moment. L'écart s'exprime comme la différence entre la vitesse de rotation estimée à l'instant t et la vitesse de rotation estimée à l'instant d'estimation précédent. L'amortissement est donc un paramètre et son choix permet d'affiner les performances d'estimation du procédé. Les amortissements utilisés peuvent être différents d'un segment à l'autre. A titre d'exemple, si Br est une matrice diagonale de taille 3 x 3 correspondant à des coefficients d'amortissement, le moment 11/1 -vitesse> être déterminé en utilisant l'expression suivante : Mvitesse = Br (wsgmt R ss egnms ot r Wsensor) Une étape 405 a pour objectif de déterminer une force F', représentative d'un contrôle en accélération. Ce contrôle correspond à deux phénomènes, soit une action de la gravité et un contrôle en accélération propre. Les masses m des segments sur lesquels sont attachés les modules de capture sont utilisées afin d'élaborer une force F', à partir de la mesure de l'accéléromètre RsensorT ( + asensor) et de la connaissance de l'orientation Rsensor déterminée pour chaque segment en utilisant l'expression suivante : Facc = m Rsensor RsensorT (à + asensor) Une étape 406 a pour objectif de déterminer une force Fs,m. Les masses m des segments sont utilisées afin d'élaborer des forces à partir de la position des segments psent, Rsgmt estimée au pas de temps précédent. Ces forces correspondent à la simulation du poids des segments non-concernés par l'étape 405. Il est alors possible de déterminer pour chaque segment la force peut du module de capture. A titre d'exemple, la force F', peut être Fsun simulant l'effet de la pesanteur sur le segment en utilisant l'expression suivante : FU = mg Les étapes 405, 406 permettent de simuler l'effet de la gravité de manière réaliste. Les masses des segments sont prises en compte indépendamment et la gravité est vue comme une accélération. Une étape 407 a pour objectif de déterminer des forces de collision Fcolluton représentatives des efforts que l'environnent exerce sur l'objet poly- articulé. Ces forces sont déterminées à partir des informations de contacts issues d'une détection de collision entre les géométries des segments et la géométrie de l'environnement et à partir de la modélisation du frottement entre l'objet poly-articulé et l'environnement. Ces informations de contact correspondent par exemple des points 3D et des normales pour chaque point de contact. Ces forces peuvent être calculées à partir d'une méthode par contrainte ou par pénalité en utilisant les estimées de position du pas de temps précédent. La résolution des contacts peut être réalisée à partir de plusieurs modélisations de frottement différentes et conformément aux méthodes classiquement utilisées dans l'état de l'art. A titre d'exemple, une telle méthode est décrite dans l'article de Trinkle, intitulé Interactive Simulation of Rigid Body Dynamics in Computer Graphics, State of the Art Reports, 2012. Il apparaît que plusieurs techniques 403, 404, 405, 406 de détermination d'efforts 420 peuvent être utilisées. L'homme du métier peut choisir au moins une de ces techniques ou une combinaison de plusieurs de ces techniques dans une mise en oeuvre particulière de l'invention. Si les étapes 405 et 406 sont mises en oeuvre ensemble, il faut choisir pour chaque segment l'une ou l'autre de ces techniques. Pour chaque articulation, une étape 408 pouvant être appliquée en parallèle des étapes de détermination d'efforts 420 précédemment mentionnées a pour objectif de déterminer un effort 421 et/ou une contrainte 422 à partir des paramètres de liaison du modèle physique et des grandeurs cinématiques des segments Rsgmt et cosent>. Les paramètres de liaison du modèle physique sont des paramètres représentatifs des liaisons mises en oeuvre par cette articulation de manière à traduire par exemple des axes de rotation interdits ou des buttées. Cet effort correspond par exemple à un ensemble composé d'une force Farticulation et d'un moment M -articulation pour chaque articulation. Ces efforts 421 et/ou contraintes 422 permettent d'assurer la non-désarticulation de l'objet poly-articulé. Ils peuvent être obtenus selon plusieurs méthodes de l'état de l'art comme par exemple la méthode des pénalités, la méthode des coefficients multiplicateurs de Lagrange, la méthode des impulsions ou par un re-paramétrage du système, comme décrit dans l'article de Trinkle cité précédemment. Une fois que les efforts/contraintes ont été déterminés par les étapes 402, 403, 404, 405, 406, 407, 408, une étape 409 a pour objectif de résoudre sous les contraintes physiques le système d'équation du principe fondamental de la dynamique et à partir de la masse et des matrices d'inerties des segments. Le résultat de cette étape correspond à une estimation 410 des grandeurs cinématiques psgm;, Rsgmt, vsent> et cosen; de chaque segment. Il est ensuite vérifié 411 si l'estimation de mouvement est terminée. Si 25 c'est le cas, l'exécution se termine. Sinon, le pas de temps est incrémenté 412 et une nouvelle itération 430 est lancée. Le procédé se distingue des procédés appartenant à l'état de la technique notamment du fait qu'il ne procède pas à une double intégration temporelle des estimées d'accélérations propres pour chaque capteur. Elle est réalisée à l'échelle globale sous contrainte physique. Ainsi, le problème de dérive en translation est contrainte. L'intégration et la synthèse des efforts sont réalisés au niveau global en résolvant le système d'équation du Principe Fondamental de la Dynamique sous contrainte physique. Toutes les contraintes sont prises en compte en une seule étape finale. Il n'y a pas d'estimation de grandeurs cinématiques intermédiaires comme par exemple une estimation de la position en translation des capteurs. Avantageusement, le procédé n'utilise pas d'heuristiques de détection 10 d'immobilité ce qui permet de régler le procédé facilement. En effet, ces heuristiques sont souvent difficiles à régler car elles sont dépendantes de l'usage qui est fait du système de capture de mouvements. La figure 5 donne un exemple de segment du modèle physique en contact 15 avec le sol et fait apparaitre les forces résultant de ce contact. Deux segments sont représentés. Le premier segment 500 correspond à un pied et le second segment 501 correspond au tibia relié au pied par une articulation. Le segment 500 est en contact avec le sol 502. Une phase de détection de collision permet de déterminer quels sont les zones de contact 20 du segment 500 avec le sol 502. Ensuite, en prenant en compte le poids 503, 504 des segments et la modélisation du frottement, des forces de collision Fcolluton 505, 506, 507 peuvent être déterminées comme expliqué précédemment. 25 La figure 6 donne un exemple de système d'estimation de mouvement. Dans cet exemple, le mouvement d'un opérateur est capturé de manière à animer son avatar virtuel sur une visualisation 3D en temps réel. Des modules de capture sont utilisés. Un module de capture dispose par exemple de trois capteurs, soit un accéléromètre trois axes, un gyromètre 30 trois axes et un magnétomètre trois axes. L'opérateur 600 est par exemple équipé de quatorze modules de capture 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614 fixés rigidement sur son corps par une combinaison vestimentaire adaptée. Les modules de capture peuvent être positionnés de la manière suivante: - un module sur chaque paume 602, 607 ; - un module sur chaque avant bras 603, 606 ; - un module sur chaque bras 604, 605 ; - un module sur la tête 601 ; - un module à la ceinture 608 ; - un module sur chaque cuisse 609, 610 ; - un module sur chaque tibia 611, 612 ; - un module sur chaque pied 613, 614. Les informations des modules de capture sont collectées par un contrôleur de mouvement, à l'aide par exemple d'un récepteur sans fil connecté en USB à une unité de traitement distante 615 telle qu'un ordinateur. L'unité de traitement 615 met en oeuvre de procédé décrit précédemment en utilisant un modèle physique de l'opérateur. L'objectif du système est par exemple d'animer un humain virtuel. Le modèle physique est composé d'une pluralité de segments reliés les uns aux autres par des articulations. Ce modèle physique est par exemple agencé de 20 la manière suivante: - un bassin servant de référence et étant utilisé comme corps racine de la chaine poly-articulée. Le bassin a par exemple six degrés de liberté par rapport à l'environnement ; - un tronc est composé de trois segments rigides ; 25 - des clavicules modélisées avec des segments rigides articulés au niveau du sternum ; - un cou modélisé avec un segment rigide ; - une tête modélisée par un segment articulé sur le cou ; - deux pieds décomposés en deux parties, la plante et le talon d'un 30 côté, les métatarses et les orteils de l'autre. Les doigts ne sont pas modélisés, c'est-à-dire qu'ils sont considérés rigidement fixés aux paumes. La modélisation cinématique comprend par exemple vingt liaisons pour un total de quarante-cinq degrés de liberté internes. Les articulations sont par exemple limitées par des butées articulaires. Les géométries des segments peuvent être choisies comme des segments dilatés, des quadrilatères dilatés ou des géométries complexes issues de conception assistée par ordinateur. Les inerties peuvent être calculées à partir des géométries de chaque segment. Le modèle physique est ensuite positionné dans un environnement. Cet 10 environnement est par exemple modélisé par un sol plan infini. Les frottements peuvent être modélisés par une loi de Coulomb avec un coefficient d'adhérence de 0.9. Avantageusement, l'invention peut être appliquée pour des objectifs et besoins très divers comme par exemple l'analyse du mouvement. Dans ce 15 cas, à partir de la connaissance du mouvement, des informations spécifiques sont extraites pour des besoins applicatifs particuliers. L'invention peut également être utilisée pour la reconstruction complète de mouvement en vue de l'afficher. Le mouvement peut alors être modifié ou amplifié pour obtenir des effets désirés. 20 Ainsi, l'invention peut être utilisée notamment dans le cadre de la rééducation fonctionnelle, de l'actimétrie, de la formative sportive, des jeux vidéo, du diagnostic thérapeutique, du suivi thérapeutique, de la formation professionnelle au geste technique, de l'ergonomie des produits, de l'ergonomie du poste de travail, de l'animation, du suivi de troupes militaires 25 et/ou du suivi d'acteurs de la sécurité civile. REVENDICATIONS1- Procédé d'estimation de mouvement d'un objet massique poly- articulé, composé d'une pluralité de segments reliés par au moins une articulation, ledit procédé comportant les étapes suivantes : acquisition (401) de mesures inertielles issues d'au moins un module de capture fixe par rapport à un segment, ledit module étant composé d'un accéléromètre et d'un gyromètre, lesdites mesures étant exprimées dans un repère de mesure fixe par rapport audit segment ; détermination (420) à partir desdites mesures d'au moins un vecteur effort extérieur à l'objet massique de manière à contrôler un modèle physique de cet objet, ledit modèle représentant l'objet massique ; estimation (409) des grandeurs cinématiques (410) associées aux segments de l'objet en appliquant le principe fondamental de la dynamique avec le au moins un vecteur d'effort déterminé à l'étape précédente (420). 2- Procédé selon la revendication 1 dans lequel les étapes du procédé sont appliquées périodiquement avec un pas de temps prédéfini. 3- Procédé selon la revendication 1 dans lequel une étape (408) est appliquée pour au moins une articulation de l'objet de manière à déterminer un effort (421) et/ou une contrainte (422) associé à ladite articulation à partir des paramètres représentatifs des liaisons mises en oeuvre par cette articulation, cet effort (421) et/ou cette contrainte (422) étant utilisée lors de l'application (409) du principe fondamental de la dynamique.30 4- Procédé selon l'une des revendications précédentes dans lequel des mesures du champs magnétique terrestres sont acquises (401) du module de capture, ledit module comprenant pour cela un troisième capteur de type magnétomètre. 5- Procédé selon l'une des revendications précédentes dans lequel une étape d'estimation (402) de l'orientation Rsensor des modules de capture par rapport à une référence de l'environnement est appliquée pour le au moins un module de capture en utilisant les mesures acquises (401). 6- Procédé selon l'une des revendications précédentes dans lequel une étape (403) de détermination d'un moment M --postuon est ensuite appliquée en utilisant le positionnement Rsgnsot, du au moins un module de capture sur son segment, de l'orientation Rsensor du module de capture et de l'orientation Rsgmt du segment auquel il est attaché estimée au pas de temps précédent. 7- Procédé selon la revendication 5 dans lequel le moment M --posaton est déterminé en utilisant l'expression suivante : Mposition = Kr[(Rssenmsot r Rsgmt - Rsensor) (Rssenmsot r Rsgmt Rsensor)1 dans laquelle : Kr est une matrice diagonale de taille 3 x 3 correspondant à des coefficients de raideur ; XT représente la transposée d'une matrice X ; représente l'opérateur chapeau tel que : lx 0 -vz Vy pour tout y = Vy P = vz 0 -12x vz -Vy l2x 0 8- Procédé selon l'une des revendications précédentes dans lequel une étape (404) de détermination d'un moment M vitesse représentatif d'un contrôle en vitesse sur un segment est appliquée après l'acquisition (401) des mesures, ledit moment étant déterminé à partir du positionnement Rssegnmsotr, de la vitesse de rotation du module de capture GOsensor et de la vitesse de rotation du segment auquel il est attaché cosent estimée au pas de temps précédent. 9- Procédé selon la revendication 8 dans lequel le moment M vitesse est déterminé en utilisant l'expression suivante : Mvitesse = Br (wsgmt Rsensor wsensor) dans laquelle : 15 Br est une matrice diagonale de taille 3 x 3 correspondant à des coefficients d'amortissement. 10-Procédé selon l'une des revendications précédentes dans lequel une étape (405) détermine une force F', représentative d'un contrôle en 20 accélération incluant la gravité sur le segment en utilisant les masses m des segments sur lesquels sont attachés les modules de capture, des mesures produites par l'accéléromètre et de l'estimation de l'orientation Rsensor dudit module. 25 11-Procédé selon la revendication 10 dans lequel la force F', est déterminée pour chaque segment en utilisant l'expression suivante : 10Fa, c c = m Rsensor RsensorT (à + asensor) dans laquelle : à> représente le vecteur gravité ; asensor représente l'accélération propre du module de capture. 12-Procédé selon l'une des revendications précédentes dans lequel une étape (406) détermine une force Fsun simulant l'effet de la pesanteur sur le segment en utilisant les masses m des segments et la position des segments psent, Rsgmt estimée au pas de temps précédent. 13-Procédé selon l'une des revendications précédentes dans lequel une étape (407) a pour objectif de déterminer des forces de collision Fcolltston, lesdites forces étant déterminées à partir des informations de contact issues d'une détection de collision entre les géométries des 15 segments et la géométrie de l'environnement et à partir de la modélisation du frottement entre l'objet poly-articulé et l'environnement. 14- Système d'estimation de mouvement d'un objet massique poly- 20 articulé, composé d'une pluralité de segments reliés par au moins une articulation et comportant : un ensemble d'au moins un module de capture (601, 602, 603, 604, 605, 607, 608, 609, 610, 611, 612, 613, 614) positionné sur au moins un segment de l'objet poly-articulé, ledit module 25 étant fixe par rapport à un segment et étant composé d'au moins un accéléromètre et un gyromètre ; une unité de traitement (615) adapté pour acquérir (401) des mesures inertielles issues du au moins un module de capture 10lesdites mesures étant exprimées dans un repère de mesure fixe par rapport audit segment, déterminer (420) à partir desdites mesures au moins un vecteur effort extérieur à l'objet massique de manière à contrôler un modèle physique de cet objet, ledit modèle représentant l'objet massique, estimer (409) des grandeurs cinématiques (410) associées aux segments de l'objet en appliquant le principe fondamental de la dynamique avec le au moins un vecteur d'effort. 15- Programme d'ordinateur comportant des instructions pour l'exécution du procédé selon l'une quelconque des revendications 1 à 13, lorsque le programme est exécuté par un processeur.