EP2836891A1 - Systeme ameliore de capture de mouvements d'une structure articulee - Google Patents

Systeme ameliore de capture de mouvements d'une structure articulee

Info

Publication number
EP2836891A1
EP2836891A1 EP13707660.0A EP13707660A EP2836891A1 EP 2836891 A1 EP2836891 A1 EP 2836891A1 EP 13707660 A EP13707660 A EP 13707660A EP 2836891 A1 EP2836891 A1 EP 2836891A1
Authority
EP
European Patent Office
Prior art keywords
state
acc
segments
pseudo
sensors
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
EP13707660.0A
Other languages
German (de)
English (en)
Inventor
Pierre Grenet
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Movea SA
Commissariat a lEnergie Atomique et aux Energies Alternatives CEA
Original Assignee
Movea SA
Commissariat a lEnergie Atomique et aux Energies Alternatives CEA
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Movea SA, Commissariat a lEnergie Atomique et aux Energies Alternatives CEA filed Critical Movea SA
Publication of EP2836891A1 publication Critical patent/EP2836891A1/fr
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01PMEASURING LINEAR OR ANGULAR SPEED, ACCELERATION, DECELERATION, OR SHOCK; INDICATING PRESENCE, ABSENCE, OR DIRECTION, OF MOVEMENT
    • G01P15/00Measuring acceleration; Measuring deceleration; Measuring shock, i.e. sudden change of acceleration
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B5/00Measuring for diagnostic purposes; Identification of persons
    • A61B5/103Measuring devices for testing the shape, pattern, colour, size or movement of the body or parts thereof, for diagnostic purposes
    • A61B5/11Measuring movement of the entire body or parts thereof, e.g. head or hand tremor or mobility of a limb
    • A61B5/1116Determining posture transitions
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63BAPPARATUS FOR PHYSICAL TRAINING, GYMNASTICS, SWIMMING, CLIMBING, OR FENCING; BALL GAMES; TRAINING EQUIPMENT
    • A63B71/00Games or sports accessories not covered in groups A63B1/00 - A63B69/00
    • A63B71/06Indicating or scoring devices for games or players, or for other sports activities
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/011Arrangements for interaction with the human body, e.g. for user immersion in virtual reality

Definitions

  • the present invention relates to a resolution method using a measurement system arranged on a structure articulated or not to capture its movements.
  • this structure is a person or an animal, it can apply to the fields of medicine, animation, sports or video games.
  • attitude centers that are able to evaluate their own orientation with respect to a landmark.
  • attitude controllers There are different types of attitude controllers depending on the sensors they combine.
  • Each MTx combines a triaxial accelerometer with a triaxial magnetometer and a triaxial gyrometer, allowing to know the orientation and the displacement of the segment of the body on which it is fixed, whether it is the shoulder, the arm or the the forearm for example. Then the segments are associated taking into account the skeleton. Seventeen MTx are thus judiciously distributed in a combination to guarantee their position on the body.
  • the MTx are connected by wired links to two electronic boxes responsible for collecting and synchronizing the MTx data.
  • Xbus Masters communicate with a computer through a wired or wireless link.
  • the attitude centers like the MTx which combine an accelerometer with a magnetometer and a gyrometer, have a fairly high energy consumption. MTxs are mostly expensive, which may not be economically justified in some areas. These are disadvantages that the present invention proposes to solve.
  • the HuMAnS solution implements a very simple Kalman filter, which diverges in the case of an AM fusion without a gyrometer and works satisfactorily only by using 9-axis AGM plants on each segment.
  • said patent application does not disclose a measurement system that minimizes the cost / performance ratio.
  • the present invention proposes a measurement system adapted to the articulated structure whose movement one wishes to capture, which satisfies the minimization of the cost / performance ratio.
  • the object of the invention is, in the context of capturing the movements of an entire human body, to add a priori in order to limit the number of angular velocity sensors, for example gyrometers in general which are more consumers of energy and more expensive than other inertial or magnetic sensors, in particular to reduce the overall cost of implementation and increase the autonomy of the system.
  • a priori notably include the fact that the sensors are fixed in a known manner and / or calibrated geometrically on a hinged structure or not and that, consequently, their relative movements can only be rotational compositions; they also include the use of static mode algorithms when the segments are detected in a pseudostatic state.
  • the invention discloses a system for capturing the movements of a structure comprising a plurality of substantially rigid N segments in articular connection with said structure, said system comprising a set of N accelerometers with at least one measurement axis, each said N accelerometers being substantially integral with one of said N segments; a set of P second sensors adapted to restore a direction of a fixed reference, each substantially integral with a segment; a set of Q third sensors able to restore a measurement representative of an angular velocity, each substantially substantially integral with a segment; a module for communicating the outputs of N accelerometers, P second sensors and Q third sensors with a computer processing module, said processing module comprising a state observer, said system being characterized in that it further comprises a module for detecting a pseudo-static state of each of the segments of said structure, a pseudostatic orientation calculation module segments in a pseudo-static state, a state observer module configured to replace the outputs of the state observer prediction function by the outputs of the pseudo-static orientation calculation module for the
  • the second sensors are magnetometers.
  • the third sensors are gyrometers.
  • the state observer is a Kalman filter.
  • modules of the system of the invention are configured by state evolution models of the form: or :
  • x denotes a state vector of the body
  • function means a measurement function characteristic of accelerometers, magnetometers and gyrometers
  • Measurement [Measurement Accelerometer, MeasurementMagnetometer, MeasurementGyrometer stands for A vector of measurements provided by accelerometers, magnetometers and gyrometers;
  • x denotes the first derivative of x with respect to time
  • the evolution means a function of evolution of the state of the body;
  • ⁇ , E and E respectively denote a segment orientation angle, its first derivative and second derivative with respect to time, where x AOE AOE y and z denote the components AOE AOE driving the acceleration of the overall of the body in an earthly landmark ( ⁇ , ⁇ , ⁇ ).
  • the state evolution model of the Kalman filter uses said pseudo-static angles for the segments detected in a pseudo-static state and the state evolution model of the Kalman filter for the segments detected in a state. dynamic.
  • the model of evolution of states of the Kalman filter uses a hypothesis of constancy of the accelerations of the angles of the articulations.
  • the state vector is estimated from the pseudostatic angles at the output of the calculation module of said pseudo-static angles, if all the segments are detected in a pseudo-static state and is estimated by the Kalman filter, if a segment at least is detected in a dynamic state.
  • the criterion of pseudo-staticity is filled by a segment since at least one of the quantities provided by at least one of the elements of the group comprising an attitude center or a gyrometer which is integral with it provides at least a measurement selected from the standard of an acceleration vector and an angle between said acceleration vector and a magnetic field vector which is less than a predetermined threshold value.
  • the model of state evolution of the Kalman filter predicts the angle ⁇ , its first derivative at and its derivative second by the function defined by: where ⁇ ⁇ , v é , v ⁇ , v Acc x x , v Acc y y and v Acc z are noise terms on the measure of ⁇ , to, ⁇ , Acc x , A ⁇ y and A ⁇ z respectively.
  • the state evolution model of the Kalman filter predicts the acceleration of acc acceleration as the average of the accumulative acceleration accelerations calculated for each accelerometer from the vector Mes_ Acc_e of actual measurements provided. by said accelerometer, the acceleration Acc _ together being calculated for each accelerometer by:
  • Acc _ together - Tem 'R * sensor (My _ _ Acc actual - My Acc Acc _ _ together
  • Earth Rector denotes a rotation matrix with an accelerometer to said related marker to the terrestrial reference
  • My _ Acc Acc ensemUe 0 denotes a theoretical measurement vector calculated by making the assumption that the overall acceleration is zero
  • the measurement model of the accelerometer of the Kalman filter is given by the equation:
  • Mes _ Acc denotes a vector of measurements taken by said accelerometer
  • Tem R Ca denotes a rotation matrix of the reference linked to the accelerometer towards the terrestrial reference
  • GO is the terrestrial gravitational field measured from an initial position in the bound coordinate system at the accelerometer
  • Earth T Sensor is a vector of translation of the terrestrial reference to the reference linked to the accelerometer.
  • the covariances of measurement noise and state evolution are estimated both a priori and a posteriori.
  • the covariances of the state evolution noises are estimated a priori from a comparison between the predicted states and actual states taken from a database of movements of a body.
  • the covariances of the state evolution noise are reevaluated a posteriori by calculating for each segment a gain index of the state evolution model from the differences between standard deviations of the sensors for real states taken from a database of movements of a body and deviations measured by said sensors.
  • the invention also discloses a method for capturing the motions of a structure comprising a plurality of substantially rigid N segments in articular connection with said structure, said method comprising a step of acquiring measurements of N accelerometers with at least one measurement axis said accelerometers being substantially integral with said at least one segment; a step of acquiring measurements of P second sensors capable of restoring a direction of a fixed reference, each substantially integral with a segment; a step of acquiring measurements of Q third sensors capable of restoring a measurement representative of an angular velocity, each substantially substantially integral with a segment; a step of communicating the outputs of N accelerometers, P second sensors and Q third sensors to a computer processing step, said method being characterized in that it further comprises a step of detecting a pseudo-static state of each segment of said structure, a pseudostatic orientation calculation step of the segments in a pseudo-static state, if at least one output of the step of detecting a pseudo-static state is false, a step replacing the outputs of a prediction function of a
  • the main advantage of the present invention is that the cost of implementation is lower and the operating autonomy is greater. It also allows greater ease of adaptation to different application contexts (more or less dynamic, necessary precision perceived by the user, cost of the system, autonomy, size ). In fact, the method can provide an ideal system à la carte, that is to say according to the specification of the five parameters mentioned above, at least.
  • FIG. 1 illustrates an example where the structure is a human being of which a part of the body is instrumented by the measurement system
  • FIG. 2 illustrates an example where the structure is a human being whose whole body is instrumented by the measurement system
  • FIG. 3 represents a general flowchart of the processes of the method for implementing the invention.
  • the pseudo-static algorithms used in the present invention belong to the state of the art algorithms for finding a three-dimensional orientation from the knowledge of one or more directions of the fixed space.
  • TRIAD TRI-axial Attitude Determination
  • This algorithm makes it possible to estimate a rotation quaternion from the measurement of two reference directions.
  • Any other algorithm for calculating the orientation of an object in a reference frame from its position relative to gravitational field vectors and magnetic field vectors (or any other uniform field) can replace the TRIAD algorithm.
  • a WEST type algorithm Quaternion ESTimator
  • a segment will be said to be static or pseudo-static if the error on the pseudo-static algorithm that calculates the orientation of said segment respects a threshold that is fixed (for example, 10 °).
  • a threshold that is fixed (for example, 10 °).
  • a "staticity" detector algorithm is used which is based on the comparison of a threshold with the accelerometer norm and with the cosine of the angle between the vectors measured by the accelerometer and by the second sensor, and to the statistics of measurements on a sliding window.
  • FIG. 1 illustrates an exemplary implementation of the invention for which three accelerometers 101, 102 and 103, three direction sensors 104, 105 and 106, and an angular speed sensor 107, are attached to the three segments that are shoulder of a person (to which the sensors 101 and 104 are attached), the arm of the person (to which the sensors 102 and 105 are attached), and finally the forearm of the person (to whom the sensors are attached 103, 106 and 107).
  • FIG. 2 represents an exemplary implementation of the invention for which a set of 17 measurement units are distributed over the main segments of the body.
  • the different measuring devices are of two different types: the first comprises an accelerometer associated with a direction sensor (for example a magnetometer), which constitutes a first type of measuring unit called AM (201 to 21 1), the second includes a complete combination of the 3 types of sensors (accelerometer, direction sensor and angular speed sensor) and will be called AGM (212 to 217).
  • the AM type plants are preferably placed on the segments likely to undergo the least disturbances (own acceleration and / or magnetic disturbances) while the AGM plants will preferentially be arranged on the segments likely to undergo disturbances of this nature.
  • the segments of the body are equipped respectively as follows:
  • Each of the sensors 101, 102, 103 and 104 transmits its data. via a radio link to a box commonly called master node, this box being connected to a computer via a USB link. The case and the computer are not shown in the figure.
  • the data can be used on the computer through a programming interface marketed under the trade name Motion Development Kit (MDK).
  • MDK Motion Development Kit
  • the MDK programming interface allows to obtain raw and calibrated measurements of a MotionPod, or to obtain an estimation of the orientation of a MotionPod, this thanks to static algorithms concerning the version 2 of the MotionPod.
  • the present exemplary embodiment may constitute an evolution of the MDK programming interface.
  • This example of distribution of the measurement methods on the articulated structure is generalizable to any articulated structure comprising several segments organized according to a tree constituted by a reference mark (in the example the center of mass), the tree comprising branches which themselves comprise segments including a segment end.
  • the angular velocity sensors which are not sensitive to magnetic disturbances or to their own accelerations, will be placed at the ends of the segments, that is to say at the points of the branches having the greatest stroke.
  • An additional angular velocity sensor positioned for example in the center of mass of the shaft improves the measurements.
  • R is the number of branches whose movements are to be captured
  • the number of angular velocity sensors will advantageously be equal to R + 1, or possibly R.
  • the invention can be implemented satisfactorily with six angular speed sensors (or 5), while 17 central AM are provided (one per segment).
  • FIG. 3 represents a general flowchart of the processes of the method for implementing the invention in several of its embodiments.
  • steps 300 which take place at the sampling frequency of the attitude centers and the gyroscopes, the measurements of these sensors are provided at steps 310, 320 which can take place sequentially:
  • a detection 310 of the pseudo-static state of the segments e.g., thresholding the norm of the acceleration vector and the angle between the magnetic field and the acceleration vector
  • ⁇ the other hand calculation is performed 320, producing the values 330 of the joint angles for the segments considered pseudo-static in step 310, and the full state vector thereof up to second order the angles, and considering the overall acceleration as nil;
  • the sensor measurements are processed in the observer used (which may advantageously but not exclusively be a Kalman filter or a filter extended Kalman), whose treatments include:
  • ⁇ a correction step 3420 the outputs of the evolution step 3410 by reinjecting predictions / measures deviations modified by the filter gain according to the method conventionally applied in a Kalman filter;
  • the values 350 of the estimated states are retrieved, either from the branch 320, if all the segments have been detected in a pseudo-static state, or from the branch 340, if at least one segment has been detected in a dynamic state.
  • the numerical references denote indifferently the steps of the method of the invention and the modules of the system capable of implementing it.
  • a first method of local resolution used in the prior art is to independently determine the orientation angles of each of the segments using an angle sensor (eg an AM central or AGM). But this method is not very effective, because it does not allow to take advantage of the reduction of the number of degrees of freedom that allow the geometrical constraints linking the articulated members between them. More precisely, the local method does not allow to take into account the mechanical link (law of composition of the movements) between the segments which are translated in the model of the measurement of the accelerometer for all the segments.
  • an angle sensor eg an AM central or AGM
  • the present invention proposes an original overall resolution method making it possible to simultaneously evaluate all of the orientation angles of the segments at a lower cost, by estimating their first and second derivatives to express the inter-segment mechanical links.
  • the problem to be solved is written as the inversion of the following direct problem:
  • Measurement [Accelerometer Measurement, Measurement Magnetometer, MeasurementGyrometer
  • the present invention proposes to model the problem in a system of states including a function of evolution of the system, noted evolution in the following equalities.
  • the problem is posed as follows:
  • the method of the invention uses a hybrid resolution model of the problem.
  • This resolution model according to the invention is hybrid in the sense that it implements an observer (for example a Kalman filter, an iterative inversion method, an error minimization between observed data and a model) comprising a pseudo-static operation and a dynamic operating mode, the estimations of the last mode are initialized with those of the first mode (which amounts to making a resetting of the filter on an initial state considered more stable) for the calculation of the angles when the condition of pseudo-staticity is filled for a given sensor This condition is verified by a pseudo-immobility sensor detection function.
  • an observer for example a Kalman filter, an iterative inversion method, an error minimization between observed data and a model
  • the estimations of the last mode are initialized with those of the first mode (which amounts to making a resetting of the filter on an initial state considered more stable) for the calculation of the angles when the condition of pseudo-staticity is filled for a given sensor This condition is verified by a pseudo
  • the estimate is initialized from the previous data according to the chosen evolution.
  • this initialization corresponds to the first so-called evolution step and the covariances of said filter are adjusted empirically.
  • Pseudo-static mode is more specific. It receives the input pseudo-static angles on one or more segments when said segments are subjected to a pseudo-static movement, that is to say a slow and regular movement with an own acceleration less than 0.1 G. In this mode, the estimate is safer because the number of degrees of freedom is lower than in the dynamic mode.
  • pseudostatic algorithms are stable: for a given measurement configuration, there is only one solution.
  • the covariance values are set empirically.
  • the invention proposes a function of deactivating the Kalman filter if all the segments follow a pseudo-static movement, and activation of the pseudostatic algorithms for all the segments.
  • an extended Kalman filter can be used.
  • Such a filter is better known by the Anglo-Saxon name Extended Kalman Filter or EKF. But other types of observer can be used without any difficulty and without departing from the scope of the present invention.
  • a Kalman filter requires adjustment of various parameters, such as covariances. Even if the basic settings of the filter can be governed by more or less empirical laws, its fine adjustment can only be done by practical tests.
  • the kinematic model is defined starting from the vector of the variables of states that are the three angles of Cardan (yaw or yaw, pitch or pitch and roll or millet), which parameter the articular rotations as well as their two successive derivatives: dyaw l d 2 yaw l . dpitc ⁇ d 2 pitc ⁇ drol 2 roll l y iW j ,
  • [ ⁇ , ⁇ , ⁇ , ⁇ ⁇ , ⁇ ,, ⁇ ⁇ ] where the last three state variables are the coordinates of the set acceleration in a terrestrial reference ( ⁇ , ⁇ , ⁇ ), a continuous evolution function can therefore be defined by:
  • V i noises where the terms 3 ⁇ 4, 3 ⁇ 4, 3 ⁇ 4, v Acc x , v Acc y and v Acc z are noise terms.
  • Te denotes the time elapsing between a time t and a time t + 1, that is to say the sampling frequency.
  • the evolution function connects the state at time t to the state at time t + 1.
  • the prediction of the overall acceleration corresponds to the acceleration of the first segment in the terrestrial frame, expressed in the terrestrial frame chosen.
  • the invention proposes to use the measurements of the sensors and the angles that have been predicted by the method described previously (eq.
  • This method has the advantage of forcing the coupling of the sensors beyond the joint information already carried by the articulated chain segment modeling.
  • a window of 10 samples at 200 Hz can be used and threshold values equal to 0.0455 for the deviation of the accelerometer standard to 1 (gravity) and 0.0333 for the cosine deviation to its value. reference, 0.0526 for the standard deviation standard on the magnetometer, and 0.0467 for the standard deviation standard on the accelerometer.
  • the pseudo-static angles are injected into the Kalman filter in substitution of the angles predicted by the first step of the filter.
  • the covariance of the measurement noise is quite simple. Indeed, for accelerometers as for magnetometers, this noise can advantageously be modeled as an additive noise without bias, that is to say:
  • Measurement Measurement pat ⁇ + aite noise eq. 1 0
  • noise modeling is more complex. It is considered as an additive noise, noted noise pos t-evolution, which corresponds to the noise of digitization (which must be weak), and a noise of model, noted noise pre -evoiution, which is preponderant because it corresponds really to the error made considering the constant assumption.
  • the number of examples can be of the order of twenty examples of gestures, lasting 60 seconds.
  • the size of the state vector is of the order of 201 for a complete articulated chain, which leads to a covariance matrix of size 201 x201.
  • the dynamic adjustment consists in observing the measurements to anticipate the dynamic of the movement and thus of the state variables.
  • the covariance matrix of the model can then be dynamically modified according to this observer. Concretely, one will calculate, via a function std, the standard deviation of the measurements of the accelerometers, the magnetometers, and if necessary, gyrometers, if they are available for each segment, then we will use a function, noted function thereafter, for
  • sAcc, sMag, sGyro standard deviations on 10 samples (accelerometer, magnetometer and gyrometer respectively)
  • oAcc, rAcc, eAcc coefficients on the accelerometer (offset, ratio and exponent respectively)
  • oMag, rMag, eMag coefficients on the magnetometer (offset, ratio and exponent respectively)
  • oGyro, rGyro, eGyro coefficients on the gyrometer (offset, ratio and exponent respectively) The values of the different coefficients allowing to define function are
  • Variations may be made to the order of the steps and to the criteria of some of them, in particular to the criterion for detecting pseudostatic states and the steps of the Kalman filter, without departing from the general scope of the present invention.
  • the observer is not necessarily a Kalman filter.

Landscapes

  • Engineering & Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • General Physics & Mathematics (AREA)
  • General Health & Medical Sciences (AREA)
  • Human Computer Interaction (AREA)
  • Pathology (AREA)
  • Heart & Thoracic Surgery (AREA)
  • Oral & Maxillofacial Surgery (AREA)
  • Physiology (AREA)
  • Biophysics (AREA)
  • Physical Education & Sports Medicine (AREA)
  • Biomedical Technology (AREA)
  • Dentistry (AREA)
  • Medical Informatics (AREA)
  • Molecular Biology (AREA)
  • Surgery (AREA)
  • Animal Behavior & Ethology (AREA)
  • Public Health (AREA)
  • Veterinary Medicine (AREA)
  • Measurement Of The Respiration, Hearing Ability, Form, And Blood Characteristics Of Living Organisms (AREA)
  • Navigation (AREA)

Abstract

La présente invention concerne un système de capture des mouvements d'un corps constitué de segments sensiblement rigides articulés entre eux pour et un procédé pour utiliser ledit système. Le système comprend des centrales d'attitudes fixées sur les segments du corps, lesdites centrales comprenant chacune au moins un accéléromètre et un magnétomètre, et un nombre réduit de gyromètres. Il comprend également un module de détection d'états pseudo-statiques et un module de calcul d'angles pseudo-statiques. Lorsque tous les segments sont détectés dans un état pseudo-statique, le vecteur d'état est fourni par le module de calcul des angles pseudo-statiques. Lorsqu'un segment est détecté dans un état dynamique, le vecteur d'état est fourni en sortie d'un filtre de Kalman.

Description

SYSTEME AMELIORE DE CAPTURE DE MOUVEMENTS D'UNE
STRUCTURE ARTICULEE Domaine technique
La présente invention concerne un procédé de résolution utilisant un système de mesure disposé sur une structure articulée ou non en vue de capturer ses mouvements. Dans le cas où cette structure est une personne ou un animal, elle peut s'appliquer aux domaines de la médecine, du cinéma d'animation, du sport ou encore aux jeux vidéo.
Art antérieur et problème technique
Depuis ses premiers domaines d'application que sont la médecine et le cinéma d'animation, la capture du mouvement d'un corps humain entier est une technique en plein essor, qui a vu son utilisation se généraliser, notamment au sport et aux jeux vidéo. En effet, la démocratisation des microsystèmes électromécaniques, plus connus sous l'acronyme anglo- saxon de MEMS, notamment la démocratisation des capteurs inertiels et magnétiques comme les accéléromètres, les magnétomètres et les gyromètres, a permis l'essor de dispositifs très compacts appelés "centrales d'attitude" qui sont capables d'évaluer leur propre orientation par rapport à un repère terrestre. Il existe différents types de centrales d'attitude en fonction des capteurs qu'elles combinent. Cependant, dans l'art antérieur, seule la combinaison d'un accéléromètre avec un magnétomètre et un gyromètre dans une centrale d'attitude permet l'estimation de l'orientation cinématique de ladite centrale de façon satisfaisante en présence d'accélération inconnue, c'est-à-dire sans aucune connaissance a priori sur son mouvement ou en présence de perturbations magnétostatiques. En effet, on ne peut estimer l'orientation de la centrale avec une accélération propre de ladite centrale non nulle que dans le cas d'une fusion de données à trois modalités dite fusion AGM (Accéléromètres, Magnétomètres et Gyromètres). Si on se place dans le cas d'une fusion à deux modalités dite AM (Accéléromètres et Magnétomètres), on ne sait pas estimer l'orientation cinématique, car les informations d'accélération et de gravitation contenues dans la mesure de l'accéléromètre sont indissociables. Ainsi, une solution de capture de mouvement cinématique du corps entier appelée Moyen a été développée par la société Xsens. Cette solution est décrite dans un document intitulé Inertial Sensing Of Human Movement (H.J.Luinge). Elle repose sur des centrales d'attitude connues sous la dénomination commerciale MTx. Chaque MTx combine un accéléromètre triaxe avec un magnétomètre triaxe et un gyromètre triaxe, permettant ainsi de connaître l'orientation et le déplacement du segment du corps sur lequel il est fixé, qu'il s'agisse de l'épaule, du bras ou de l'avant bras par exemple. Ensuite les segments sont associés en tenant compte du squelette. Dix-sept MTx sont ainsi judicieusement répartis dans une combinaison afin de garantir leur position sur le corps. Les MTx sont connectés par des liaisons filaires à deux boîtiers électroniques chargés de collecter et de synchroniser les données des MTx. Les Xbus Masters communiquent avec un ordinateur grâce à une liaison avec ou sans fil. Malheureusement, les centrales d'attitude comme les MTx, qui combinent un accéléromètre avec un magnétomètre et un gyromètre, ont une consommation d'énergie assez élevée. Les MTx ont surtout un coût élevé, qui peut ne pas se justifier économiquement dans certains domaines. Il s'agit là d'inconvénients que la présente invention se propose de résoudre.
La demande de brevet français FR 2 916 069 A1 décrit une autre solution de capture des mouvements cinématiques du corps entier à partir d'une boîte à outils appelée HuMAnS selon l'acronyme anglo-saxon signifiant Humanoid Motion Analysis and Simulation. Il s'agit d'un ensemble d'outils en langage C et Scilab développés par l'une des demanderesses en collaboration avec l'INRIA. Contrairement à la solution Moven citée précédemment, qui est liée aux centrales MTx, la solution HuMAnS est uniquement logicielle et n'est liée à aucun type de capteurs ou de centrale. Elle permet, entre autres, l'analyse, la modélisation et le contrôle de mouvement d'humanoïdes et d'humains à partir d'un modèle géométrique du corps humain permettant de construire des mesures capteurs réparties sur les segments du corps. La solution HuMAnS implémente un filtre de Kalman très simple, qui diverge dans le cas d'une fusion AM sans gyromètre et ne fonctionne de manière satisfaisante qu'en utilisant des centrales AGM complètes à 9 axes sur chaque segment. En outre, ladite demande de brevet ne divulgue pas de système de mesures permettant de minimiser le rapport coût consommation/performance.
La présente invention propose un système de mesures adapté à la structure articulée dont on souhaite capturer le mouvement, qui satisfait la minimisation du rapport coût consommation/performance.
L'invention a notamment pour but, dans le cadre de la capture des mouvements d'un corps humain entier, d'ajouter des a priori afin de limiter le nombre de capteur de vitesse angulaire, par exemple des gyromètres en général plus consommateur d'énergie et plus chers que les autres capteurs inertiels ou magnétiques, de manière notamment à réduire le coût global de réalisation et d'augmenter l'autonomie du système. Ces a priori incluent notamment le fait que les capteurs sont fixés de manière connue et/ou calibrée géométriquement sur une structure articulée ou non et que, par conséquent, leurs mouvements relatifs ne peuvent être que des compositions de rotations ; ils incluent aussi le fait d'utiliser les algorithmes en mode statique quand les segments sont détectés dans un état pseudostatique.
Reprise des revendications
A cet effet, l'invention divulgue un système de capture des mouvements d'une structure comprenant une pluralité de N segments sensiblement rigides en liaison articulaire avec ladite structure, ledit système comprenant un ensemble de N accéléromètres à au moins un axe de mesure, chacun desdits N accéléromètres étant sensiblement solidaire d'un desdits N segments ; un ensemble de P seconds capteurs aptes à restituer une direction d'un repère fixe, chacun sensiblement solidaire d'un segment ; un ensemble de Q troisièmes capteurs aptes à restituer une mesure représentative d'une vitesse angulaire, chacun sensiblement solidaire d'un segment ; un module de communication des sorties des N accéléromètres, des P seconds capteurs et des Q troisièmes capteurs avec un module de traitement informatique, ledit module de traitement comprenant un observateur d'état, ledit système étant caractérisé en ce qu'il comprend en outre un module de détection d'un état pseudo-statique de chacun des segments de ladite structure, un module de calcul d'orientation pseudostatique des segments dans un état pseudo-statique, un module de l'observateur d'état configuré pour remplacer les sorties de la fonction de prédiction de l'observateur d'état par les sorties du module de calcul d'orientation pseudo-statique pour les segments pour lesquels la condition de détection en sortie du module de détection d'un état pseudo-statique est vraie et en ce que le nombre Q est strictement inférieur au nombre N et au nombre P. Avantageusement, R étant égal au nombre de branches de la structure dont le mouvement est capturé, le nombre Q est inférieur ou égal à R+1 .
Avantageusement, les seconds capteurs sont des magnétomètres. Avantageusement, les troisièmes capteurs sont des gyromètres.
Avantageusement, l'observateur d'état est un filtre de Kalman.
Avantageusement, les modules du système de l'invention sont configurés par des modèles d'évolution d'états de la forme: ou :
x désigne un vecteur d'état du corps;
fonction désigne une fonction de mesure caractéristique des accéléromètres, des magnétomètres et des gyromètres;
Mesure = [Mesure Accéléromètre,MesureMagnétomètre,MesureGyromètre désigne Un vecteur de mesures fournies par les accéléromètres, les magnétomètres et les gyromètres;
x désigne la dérivée première de x par rapport au temps;
évolution désigne une fonction d'évolution de l'état du corps; Avantageusement, le vecteur d'état x est de la forme Χ = [Θ,Θ,Θ,Α∞Χ,Α∞,,Α∞Ζ] OÙ
Θ , è et ë désignent respectivement un angle d'orientation des segments, sa dérivée première et sa dérivée seconde par rapport au temps, où Aœxy et Aœz désignent les composantes de l'accélération d'entraînement Aœ de l'ensemble du corps dans un repère terrestre (Χ,Υ,Ζ).
Avantageusement, le modèle d'évolution d'états du filtre de Kalman utilise lesdits angles pseudo-statiques pour les segments détectés dans un état pseudo-statique et le modèle d'évolution d'états du filtre de Kalman pour les segments détectés dans un état dynamique.
Avantageusement, le modèle d'évolution d'états du filtre de Kalman utilise une hypothèse de constance des accélérations des angles des articulations. Avantageusement, le vecteur d'état est estimé à partir des angles pseudostatiques en sortie du module de calcul desdits angles pseudo-statiques, si tous les segments sont détectés dans un état pseudo-statique et est estimé par le filtre de Kalman, si un segment au moins est détecté dans un état dynamique.
Avantageusement, le critère de pseudo-staticité est rempli par un segment dès lors que l'une au moins de grandeurs fournies par au moins l'un des éléments du groupe comprenant une centrale d'attitude ou un gyromètre qui en est solidaire fournit au moins une mesure choisie parmi la norme d'un vecteur accélération et d'un angle entre ledit vecteur accélération et un vecteur champ magnétique qui est inférieure à une valeur de seuil prédéterminée.
Avantageusement, le modèle d'évolution d'états du filtre de Kalman prédit l'angle Θ , sa dérivée première à et sa dérivée seconde à par la fonction définie par : où υθ , vé , vë , vAcc_x , vAcc_y et vAcc z sont des termes de bruit sur la mesure de Θ , à , ë , Accx , Aœy et Aœz respectivement.
Avantageusement, le modèle d'évolution d'états du filtre de Kalman prédit l'accélération d'entraînement Acc comme la moyenne des accélérations d'entraînement Acc _ ensembie calculées pour chaque accéléromètre à partir du vecteur Mes _ Acc _ réeiie de mesures réellement fournies par ledit accéléromètre, l'accélération d'entraînement Acc _ ensemble étant calculée pour chaque accéléromètre par :
Acc _ ensemble = - Tem 'RCapteur * (Mes _ Acc _ réelle - Mes _ Acc Acc _ensembleTerre Recteur désigne une matrice de rotation d'un repère lié audit accéléromètre vers le repère terrestre et Mes _ AccAcc ensemUe=0 désigne un vecteur de mesures théorique calculé en faisant l'hypothèse que l'accélération d'ensemble est nulle. Avantageusement, le modèle de mesure de l'accéléromètre du filtre de Kalman est donnée par l'équation:
Capteur
Mes Acc -■ R Terre * G0
où Mes _ Acc désigne un vecteur de mesures prises par ledit accéléromètre, TemRCapteur désigne une matrice de rotation du repère lié à l'accéléromètre vers le repère terrestre, GO est le champ gravitationnel terrestre mesuré depuis une position initiale dans le repère lié à l'accéléromètre et TerreTCapteur est un vecteur de translation du repère terrestre vers le repère lié à l'accéléromètre.
Avantageusement, les covariances des bruits de mesure et d'évolution d'états sont estimées à la fois a priori et a postériori.
Avantageusement, les covariances des bruits d'évolution d'états sont estimées a priori à partir d'une comparaison entre les états prédits et des états réels prélevés dans une base de données de mouvements d'un corps.
Avantageusement, les covariances des bruits d'évolution d'états sont réestimées a postériori en calculant pour chaque segment un indice de gain du modèle d'évolution d'états à partir des écarts entre des déviations standards des capteurs pour des états réels prélevés dans une base de données de mouvements d'un corps et les déviations mesurées par lesdits capteurs.
L'invention divulgue également un procédé de capture des mouvements d'une structure comprenant une pluralité de N segments sensiblement rigides en liaison articulaire avec ladite structure, ledit procédé comprenant une étape d'acquisition des mesures de N accéléromètres à au moins un axe de mesure, lesdits accéléromètres étant sensiblement solidaires dudit au moins un segment ; une étape d'acquisition des mesures de P seconds capteurs aptes à restituer une direction d'un repère fixe, chacun sensiblement solidaire d'un segment ; une étape d'acquisition des mesures de Q troisièmes capteurs aptes à restituer une mesure représentative d'une vitesse angulaire , chacun sensiblement solidaire d'un segment ; une étape de communication des sorties des N accéléromètres, des P seconds capteurs et des Q troisièmes capteurs à une étape de traitement informatique, ledit procédé étant caractérisé en ce qu'il comprend en outre une étape de détection d'un état pseudo-statique de chacun des segments de ladite structure, une étape de calcul d'orientation pseudostatique des segments dans un état pseudo-statique, si au moins une sortie de l'étape de détection d'un état pseudo-statique est fausse, une étape remplaçant les sorties d'une fonction de prédiction d'un observateur d'état qui reçoit en entrée les sorties des N accéléromètres, P seconds capteurs et Q troisièmes capteurs, Q étant strictement inférieur au nombre N et au nombre P, par les sorties de l'étape de calcul d'orientation pseudo-statique pour les segments pour lesquels la condition de détection en sortie du module de détection d'un état pseudo-statique est vraie.
Avantages : La présente invention a donc pour principal avantage de présenter un coût de mise en œuvre plus faible et une autonomie de fonctionnement plus grande. Elle autorise aussi une plus grande facilité d'adaptation à des contextes applicatifs différents (dynamique plus ou moins grande ; précision nécessaire perçue par l'utilisateur, coût du système, autonomie, encombrement...). En fait, la méthode peut proposer un système idéal à la carte, c'est-à-dire selon la spécification des cinq paramètres cités ci-dessus, au moins.
Résumé des figures
D'autres caractéristiques et avantages de l'invention apparaîtront à l'aide de la description qui suit faite en regard des figures suivantes qui illustrent des exemples de mise en œuvre du procédé selon la présente invention :
- La figure 1 illustre un exemple où la structure est un être humain dont une partie du corps est instrumentée par le système de mesure ;
- La figure 2 illustre un exemple où la structure est un être humain dont le corps entier est instrumenté par le système de mesure ; - La figure 3 représente un organigramme général des traitements du procédé pour mettre l'invention en œuvre.
Description de l'invention à partir des figures On précise pour commencer la signification ou le contenu d'un certain nombre d'éléments qui sont utilisés dans la présente demande.
Les algorithmes pseudo-statiques utilisés dans la présente invention appartiennent à l'état de l'art des algorithmes permettant de trouver une orientation en trois dimensions à partir de la connaissance d'une ou plusieurs directions de l'espace fixe.
un premier algorithme de calcul traditionnel d'orientation est TRIAD (TRI- axial Attitude Détermination). Voir par exemple (cf : http://en.wikipedia.Org/wiki.Triad Method ou Harold D. Black, A passive System for determining the attitude of a satellite. American Institute of Aeronautics and Astronautics Journal, 2(7):1350-1351 , July 1964). Cet algorithme permet d'estimer un quaternion de rotation à partir de la mesure de deux directions de référence.
Tout autre algorithme permettant de calculer l'orientation d'un objet dans un repère de référence à partir de sa position par rapport aux vecteurs champ gravitationnel et champ magnétique terrestres (ou de tout autre champ uniforme) peut remplacer l'algorithme TRIAD. En particulier, dans le cas de plus de deux capteurs, on peut utiliser un algorithme de type OUEST (Quaternion ESTimator), décrit notamment dans la publication http://www.dept.aoe.vt.edu/~cdhall/courses/aoe4140/attde.pdf et, en comparaison avec TRIAD dans http://www.malcolmdshuster.com/comm 1981 a J TRIAD-QUEST.pdf.
Un segment sera dit statique ou pseudo-statique si l'erreur sur l'algorithme pseudo-statique qui calcule l'orientation dudit segment respecte un seuil que l'on se fixe (par exemple, 10°). En pratique, on utilise un algorithme détecteur de « staticité » qui repose sur la confrontation d'un seuil à la norme de l'accéléromètre et au cosinus de l'angle entre les vecteurs mesurés par l'accéléromètre et par le second capteur, et à la statistique des mesures sur une fenêtre glissante.
Dans tout le document, les variables représentant les orientations sont généralement exprimées en utilisant une représentation angulaire. Toute autre forme de représentation mathématique d'une orientation pourrait être utilisée alternativement et de manière équivalent, par exemple, des matrices de rotation, des quaternions ou des cosinus directeurs. La figure 1 illustre un exemple de mise en œuvre de l'invention pour lequel trois accéléromètres 101 , 102 et 103, trois capteurs de direction 104, 105 et 106, et un capteur de vitesse angulaire 107, sont attachés aux trois segments que sont l'épaule d'une personne (à laquelle sont attachés les capteurs 101 et 104), le bras de la personne (auquel sont attachés les capteurs 102 et 105), et enfin l'avant-bras de la personne (auquel sont attachés les capteurs 103, 106 et 107).
La figure 2 représente un exemple de mise en œuvre de l'invention pour lequel un ensemble de 17 centrales de mesure sont réparties sur les principaux segments du corps. Cette mise en oeuvre particulière est utilisée pour la capture corps entier. Les différents dispositifs de mesure sont de deux types différents : le premier comporte un accéléromètre associé à un capteur de direction (par exemple un magnétomètre), ce qui constitue une première nature de centrale de mesure appelée AM (201 à 21 1 ), le second comporte une combinaison complète des 3 types de capteurs (accéléromètre, capteur de direction et capteur de vitesse angulaire) et sera appelée AGM (212 à 217). Les centrales de type AM sont préférentiellement placées sur les segments susceptibles de subir le moins de perturbations (accélération propre et/ou perturbations magnétiques) alors que les centrales AGM seront préférentiellement disposées sur les segments susceptibles de subir des perturbations de cette nature. Dans cette mise en œuvre, les segments du corps sont équipés respectivement de la façon suivante :
- L'épaule gauche par la centrale AM 201
- Le bras gauche par la centrale AM 202
- L'avant-bras gauche par la centrale AM 203
- La main gauche par la centrale AGM 212
- L'épaule droite par la centrale AM 204
- Le bras droit par la centrale AM 205
- L'avant-bras droit par la centrale AM 206
- La main droite par la centrale AGM 213
- Le buste par la centrale AM 207
- Le bassin par la centrale AGM 216
- La cuisse gauche par la centrale AM 210
- Le tibia gauche par la centrale AM 21 1 - Le pied gauche par la centrale AGM 215
- La cuisse droite par la centrale AM 208
- Le tibia gauche par la centrale AM 209
- Le pied droit par la centrale AGM 214
- La tête par la centrale AGM 217
Pour le présent exemple de réalisation de l'invention, les demandeurs ont utilisé des centrales AM 201 , 202, 203, 204, 205, 206, 207, 208, 209, 210, 21 1 qui sont commercialisés sous la dénomination commerciale MotionPod Version 2 et des centrales AGM 212, 213, 214, 215, 216, 217 qui combinent chacune un accéléromètre triaxe avec un magnétomètre triaxe et un gyromètre triaxe sous la dénomination commerciale MotionPod Version 3. Chacun des capteurs 101 , 102, 103 et 104 transmet ses données via une liaison radio à un boîtier communément appelé nœud-maître, ce boîtier étant relié à un ordinateur par une liaison USB. Le boîtier et l'ordinateur ne sont pas représentés sur la figure. Les données sont exploitables sur l'ordinateur grâce à une interface de programmation commercialisé sous la dénomination commerciale Motion Développement Kit (MDK). L'interface de programmation MDK permet soit d'obtenir des mesures brutes et calibrées d'une MotionPod, soit d'obtenir une estimation de l'orientation d'une MotionPod, ceci grâce à des algorithmes statiques en ce qui concerne la version 2 de la MotionPod. Avantageusement, le présent exemple de réalisation peut constituer une évolution de l'interface de programmation MDK.
Cet exemple de répartition des modalités de mesure sur la structure articulée est généralisable à toute structure articulée comprenant plusieurs segments organisés selon un arbre constitué d'un repère de référence (dans l'exemple le centre de masse), l'arbre comportant des branches qui comportent eux- mêmes des segments dont un segment extrémité. Avantageusement, les capteurs de vitesse angulaire, non sensibles aux perturbations magnétiques ni aux accélérations propres, seront placés aux extrémités des segments, c'est-à-dire aux points des branches ayant la course la plus grande. Un capteur de vitesse angulaire supplémentaire, positionné par exemple au centre de masse de l'arbre améliore les mesures. Ainsi, selon l'invention, si R est le nombre des branches dont on souhaite capturer les mouvements, le nombre de capteurs de vitesse angulaire sera avantageusement égal à R+1 , ou éventuellement R. Dans le cas d'un corps humain dont on souhaite capturer les mouvements des quatre membres et de la tête (cinq « branches »), tel que celui de la figure 2, l'invention pourra être mise en œuvre de manière satisfaisante avec six capteurs de vitesse angulaire (voire 5), alors que 17 centrales AM sont prévues (une par segment).
Préalablement à l'utilisation du système ainsi constitué par les capteurs 101 , 102, 103 et 104 pour capturer les mouvements de l'ensemble à trois segments épaule-bras-avant-bras de la personne, il faut évaluer le changement de repère entre le repère du solide que constitue chaque segment et le repère du capteur attaché audit segment. Ainsi, il faut évaluer le changement de repère entre le repère de l'épaule et le capteur 101 , le changement de repère entre le repère du bras et le capteur 102, ainsi que le changement de repère entre le repère de l'avant-bras et le capteur 103. On utilise également un repère fixe qui peut être par exemple le repère terrestre dont une direction privilégiée sera définie par le vecteur gravité et/ou le vecteur champ magnétique terrestre. On peut pour cela utiliser tout procédé de calibration. Cependant, le procédé de calibration géométrique faisant l'objet de la demande de brevet n ° 1252101 déposée le même jour que la présente demande et ayant même inventeur et mêmes titulaires est particulièrement avantageux.
La figure 3 représente un organigramme général des traitements du procédé pour mettre l'invention en œuvre, dans plusieurs de ses modes de réalisation.
La figure illustre un mode privilégié de réalisation de l'invention, dans lequel :
- Au cours d'étapes 300, qui se déroulent à la fréquence d'échantillonnage des centrales d'attitude et des gyroscopes, on fournit les mesures de ces capteurs à des étapes 310, 320 qui peuvent se dérouler séquentiellement :
D'une part, on réalise une détection 310 de l'état pseudostatique des segments (par exemple, seuillage de la norme du vecteur accélération et de l'angle entre le champ magnétique et le vecteur accélération) ; D'autre part, on effectue le calcul 320, produisant les valeurs 330 des angles des articulations pour les segments considérés comme pseudo-statiques dans l'étape 310, et on complète le vecteur d'états en dérivant jusqu'au second ordre les angles, et en considérant l'accélération d'ensemble comme nulle ;
- Si au moins un des segments n'est pas détecté dans un état pseudo-statique, on traite dans des étapes 3410, 3420 les mesures capteurs dans l'observateur utilisé (qui peut avantageusement mais non exclusivement être un filtre de Kalman ou un filtre de Kalman étendu), dont les traitements comprennent :
Une étape 3410 de calcul d'évolution/prédiction au cours de laquelle les segments dans un état pseudo-statique sont traités de telle sorte que les angles prédits sont égaux aux angles statiques en sortie de l'étape 320, la covariance de l'évolution étant modifiée comme indiqué ci-dessus, les segments dans un état dynamique étant traités par prédiction des angles sous hypothèse de constance de l'accélération angulaire ; en sortie de ces sous-étapes, on réalise une prédiction de l'accélération d'ensemble et une modification de la matrice de covariance en fonction de la statistique des mesures, comme expliqué ci- dessus ;
Une étape de correction 3420 des sorties de l'étape d'évolution 3410 en réinjectant les écarts prédictions/mesures modifiés par le gain du filtre selon la méthode classiquement appliquée dans un filtre de Kalman ;
- En sortie des étapes 320 et 340, on récupère les valeurs 350 des états estimés, soit de la branche 320, si tous les segments ont été détectés dans un état pseudo-statique, soit de la branche 340, si un segment au moins a été détecté dans un état dynamique.
Sur la figure 3, les références numériques désignent indifféremment les étapes du procédé de l'invention et les modules du système apte à la mettre en œuvre. Une fois que l'on s'est assuré de la calibration géométrique du port des capteurs par rapport à la structure articulée, le système est prêt pour capturer effectivement les mouvements de la personne. Pour cela, il lui faut en permanence évaluer les angles d'orientation des segments à l'aide du dispositif de mesures réparti.
Une première méthode de résolution locale utilisée dans l'art antérieur consiste à déterminer indépendamment les angles d'orientation de chacun des segments à l'aide d'un capteur d'angle (par exemple une centrale AM ou centrale AGM). Mais cette méthode est peu efficace, car elle ne permet pas de tirer partie de la réduction du nombre de degrés de libertés qu'autorisent les contraintes géométriques liant les membres articulés entre eux. Plus exactement, la méthode locale ne permet pas de prendre en compte le lien mécanique (loi de composition des mouvements) entre les segments qui se traduisent dans le modèle de la mesure de l'accéléromètre pour tous les segments.
En méthode locale utilisant des centrales AM, des hypothèses pseudostatiques sont faites: l'accélération propre des capteurs est considérée comme négligeable. Malheureusement, cette hypothèse devient très rapidement problématique dans le cadre de la capture des mouvements d'un corps entier, durant lesquels un simple mouvement de bras peut créer des accélérations qui invalident l'hypothèse pseudo-statique.
En méthode locale utilisant des centrales AGM, les hypothèses pseudostatiques sont levées ; cependant le système de mesures apparaît trop coûteux (prix, énergie, utilisation).
En outre, les deux solutions précédentes peuvent conduire à des résultats qui ne respectent pas les liens ou contraintes mécaniques.
C'est pourquoi la présente invention propose une méthode de résolution globale originale permettant d'évaluer à moindre coût simultanément la totalité des angles d'orientation des segments, en estimant leurs dérivées premières et secondes pour exprimer les liens mécaniques inter-segments.. Ainsi, selon l'invention, on écrit le problème à résoudre comme l'inversion du problème direct suivant :
Mesure = fonction (Etat) Où :
Mesure = [Mesure Accéléromètre,MesureMagnétomètre,MesureGyromètre
(notation dans laquelle Magnétomètre peut être remplacé par
« Second capteur de direction », et Gyromètre par « Capteur de vitesse angulaire »)
fonction : une fonction de mesure
Etat : l'ensemble des variables expliquant les mesures, incluant les angles, et leurs dérivées premières et secondes par rapport au temps, ainsi que l'accélération d'entraînement de l'ensemble de la structure articulée. Cet état est noté x par la suite et x sa dérivée par rapport au temps.
Pour une description des différentes combinaisons de capteurs, le choix de leur nombre et de leur positionnement, on se reportera aux commentaires ci- dessus relatifs aux figures 1 et 2.
Pour exprimer le lien entre les divers angles et leurs dérivées, la présente invention propose de modéliser le problème en un système d'états incluant une fonction d'évolution du système, notée évolution dans les égalités qui suivent. Ainsi, selon l'invention proposée on pose le problème de la manière suivante :
Mesure = fonction ^x)
x = évolution (x)
En outre, afin de résoudre ce problème quel que soit le type de mouvement que la structure articulée portant le système de mesure réalise, (mouvements rapides ou lents), le procédé de l'invention utilise un modèle de résolution hybride du problème. Ce modèle de résolution selon l'invention est hybride dans le sens où il met en œuvre un observateur (par exemple un filtre de Kalman, une méthode d'inversion itérative, une minimisation d'erreur entre données observées et modèle) comportant un mode de fonctionnement pseudo-statique et un mode de fonctionnement dynamique, les estimations du dernier mode sont initialisées à l'aide de celles du premier (ce qui revient à effectuer un recalage du filtre sur un état initial considéré comme plus stable) pour le calcul des angles lorsque la condition de pseudo-staticité est remplie pour un capteur donné Cette condition est vérifiée grâce à une fonction de détection de pseudo-immobilité des capteurs.
Dans le mode dynamique, on initialise l'estimation à partir des données précédentes suivant l'évolution choisie. Dans le cas où l'observateur est un filtre de Kalman, cette initialisation correspond à la première étape dite d'évolution et les covariances dudit filtre sont réglées empiriquement.
Le mode pseudo-statique est plus spécifique. Il reçoit en entrée les angles pseudo-statiques sur un ou plusieurs segments lorsque lesdits segments sont soumis à un mouvement pseudo-statique, c'est-à-dire un mouvement lent et régulier avec une accélération propre inférieure à 0,1 G. Dans ce mode, l'estimation est plus sûre car le nombre de degrés de liberté est plus faible que dans le mode dynamique. En effet les algorithmes pseudostatiques sont stables : pour une configuration de mesure donnée, il n'existe qu'une seule solution. Dans le cas du filtre de Kalman, les valeurs de covariance sont réglées empiriquement. De plus, l'invention propose une fonction de désactivation du filtre de Kalman si tous les segments suivent un mouvement pseudo-statique, et d'activation des algorithmes pseudostatiques pour tous les segments. Pour mettre en oeuvre l'invention, on peut utiliser un filtre de Kalman étendu. Un tel filtre est plus connu sous la désignation anglo-saxonne Extended Kalman Filter ou EKF. Mais d'autres types d'observateur peuvent être utilisés sans aucune difficulté et sans sortir du cadre de la présente invention. Un filtre de Kalman nécessite le réglage de divers paramètres, comme les covariances. Même si les réglages de base du filtre peuvent être régis par des lois plus ou moins empiriques, son réglage fin ne peut se faire que par des essais pratiques.
Pour la suite de la description, nous utiliserons un filtre de Kalman comme observateur. Plusieurs méthodes permettent de définir une fonction de prédiction du filtre, cette fonction correspondant à la fonction d'évolution. Elle doit prédire d'une part les angles et leurs dérivées, d'autre part l'accélération d'ensemble.
Concernant la prédiction des angles et de leurs dérivées, dans le cadre de la mise en œuvre de la présente invention, on peut par exemple faire l'hypothèse cinématique que les dérivées secondes sont égales à des constantes (jerk nul) et intégrer ces constantes. En effet, étant donnée la fréquence d'échantillonnage élevée, de l'ordre de 200 Hertz dans le cas des MotionPod2 (centrales AM), d'un ordre de grandeur plus élevée que les fréquences des gestes humains (de l'ordre d'une petite dizaine de hertz pour les mouvements les plus dynamiques), les accélérations peuvent être estimées constantes en première approximation sans dommage. Ainsi, le modèle cinématique est défini à partir du vecteur des variables d'états que sont les trois angles de Cardan (lacet ou yaw, tangage ou pitch et roulis ou mil), qui paramétrent les rotations articulaires ainsi que leurs deux dérivées successives : dyawl d2yawl . dpitc\ d2 pitc\ drol d2rolll y iWj ,
X =
dyaws d yaws dpitchs d pitchs drol d rolL yows , , pitchs , , rolL ,
dt dt dt dt dt dt2
Acc _ ensemble , Acc _ ensemble , Acc _ ensemble
On notera que pour une structure articulée complète comportant S=22 segments, considérant que toutes les articulations ont 3 degrés de liberté, la dimension du vecteur d'états est de 22*9+3=201 .
Ces trois angles étant régis par les mêmes équations, ils seront notés indifféremment Θ , ainsi que leurs dérivées premières et secondes qui seront respectivement notées indifféremment à et ë dans la suite de la présente description. L'accélération d'entraînement de l'ensemble du corps sera notée Acc _ ensembie ou parfois Acc pour simplifier les écritures. Ainsi, selon l'hypothèse de constance des dérivées secondes angulaires et de l'accélération d'entraînement de l'ensemble du corps, on a:
Θ = cstl
Acc = est-,
Avec le modèle d'état Χ = [Θ,Θ,Θ,Α∞Χ,Α∞,,Α∞Ζ] OÙ les trois dernières variables d'état sont les coordonnées de l'accélération d'ensemble dans un repère terrestre (Χ,Υ,Ζ), une fonction d'évolution continue peut donc être définie par :
avec
Vi des bruits où les termes ¾ , ¾ , ¾ , vAcc x , vAcc y et vAcc z sont des termes de bruit.
Dans ce formalisme continu, la fonction d'évolution relie l'état à sa dérivée, voire à ses dérivées successives. Il faut noter que ce modèle d'état continu est aisément transposable à un plus grand nombre de degrés de liberté. Les valeurs des écart-types sont choisies relativement grandes pour ¾ , vAcc_x , vAcc_y et vAcc_z , car l'hypothèse de constance des accélérations angulaires et de l'accélération d'ensemble est forte et pas forcément vérifiée. Par contre, υθ , vè , sont corrélés avec ¾ et le modèle utilisé est donc plutôt :
En effet, l'erreur sur l'hypothèse ë = constante est intégrée et transmise aux dérivées angulaires et aux angles. Ce modèle peut être discrétisé, donnant la fonction d'évolution suivante :
où Te désigne la durée s'écoulant entre un instant t et un instant t+1 , c'est-à- dire la fréquence d'échantillonnage. Dans ce formalisme discret, la fonction d'évolution relie l'état à l'instant t à l'état à l'instant t+1 . Soit
Dans l'hypothèse où le mouvement ne comporte pas de point fixe, la prédiction de l'accélération d'ensemble, correspond à l'accélération du premier segment dans le référentiel terrestre, exprimée dans le repère terrestre qu'on a choisi. Par premier, il faut comprendre le segment à partir duquel le modèle mathématique du squelette est défini, les autres segments étant définis par rapport à ce premier segment. Pour prédire cette accélération d'ensemble, l'invention propose d'utiliser les mesures des capteurs et les angles qui ont été prédits par la méthode décrite précédemment (eq. 4).
Pour cela, la fonction de mesure qui suit peut être utilisée pour chaque accéléromètre :
Mes Acc■ Capteur
Terre eq. 5
Où Mes _ Acc désigne l'accélération mesurée par un accéléromètre, Cap,mrRTerre désigne la matrice de rotation du repère terrestre vers un repère lié à cet accéléromètre, TerreTCapteur désigne le vecteur de translation du repère lié à l'accéléromètre vers le repère terrestre. D'où ^ 2 Terre i
Capteur
Acc = Acc ensemble = - emRr Canpr,teur * Mes Acc + G0 2
dt
l erreji eq. 6
Capteur
eR Capteur * Mes _ Acc + Cap,eurRTerre * GO-
2
dt
Où désigne la matrice de rotation du repère lié à l'accéléromètre vers le repère terrestre. L'accélération d'ensemble peut alors être estimée en prenant Mes _ Aœ = Mes _ Aœ _ réeiie . Une autre possibilité consiste à utiliser la mesure simulée pour une accélération d'ensemble nulle Mes _ AccAcc ensemble=0 :
M Arr Acc eq. 7
Où la matrice CapteurRTerre est définie pour angles = angles _ prédit et ACC = O . Il s'agit, pour les angles prédits grâce à la fonction d'évolution, de passer d'un formalisme angulaire à un formalisme matriciel.
Ce vecteur de mesures théorique Mes _ AccAcc ememble=0 est déduit en calculant la mesure théorique de l'accéléromètre à partir de l'hypothèse indiquée plus haut que l'accélération d'ensemble est nulle (le point de base pour la construction du squelette a une accélération nulle).
Capteur
En remplaçant le terme Captt Terre GO - 2 par Mes _ Acc Acc _ ensemble =0 dt
Acc ensemble = - Terre 'RCaptmr * Mes Acc réelle - Mes Ac Acc _ensemble= ι eq. 8
Cette estimation est effectuée sur chaque capteur, puis ces estimations sont moyennées pour réduire l'erreur d'estimation. Il vient alors : _ ensemble _ prédite = moyenne ( Acc _ ensemble capteur eq. 9
Cette méthode présente l'avantage de forcer le couplage des capteurs au- delà de l'information conjointe déjà portée par la modélisation en chaîne articulée de segments.
Afin de tester l'hypothèse pseudo-statique, on crée un observateur qui surveille le niveau d'une ou plusieurs des grandeurs suivantes :
la norme de l'accéléromètre, qui doit être proche de 1 G s'il y a immobilité,
l'angle entre la mesure du champ magnétique terrestre et la mesure du champ d'accélération,
la déviation standard de certaines mesures des capteurs dans une fenêtre glissante. Par exemple la norme des mesures de l'accéléromètre.
Il suffit ensuite de régler des seuils de décision. L'hypothèse pseudo-statique est considérée comme vérifiée si les valeurs sont inférieures à leurs seuils respectifs. Naturellement, les seuils sur les déviations standards dépendent des bruits capteurs. La dimension de la fenêtre glissante et les seuils sont réglés de façon empirique.
Par exemple, une fenêtre de 10 échantillons à 200 Hz peut être utilisée et des valeurs de seuil égales à 0,0455 pour l'écart de la norme accéléromètre à 1 (gravité) et 0,0333 pour l'écart du cosinus à sa valeur de référence, 0,0526 pour la norme de la déviation standard sur le magnétomètre, et 0,0467 pour la norme de la déviation standard sur l'accéléromètre.
Comme indiqué plus haut, en sortie de la détection de pseudo-staticité, on injecte les angles pseudo-statiques dans le filtre de Kalman en substitution des angles prédits par la première étape du filtre.
Dans des dynamiques de mouvements d'un corps entier sur une plage temporelle suffisamment large, on constate une période moyenne de retour à l'immobilité de l'ordre de 30 à 60s. Comme mentionné précédemment, l'utilisation de filtres de Kalman suppose l'estimation des covariances des bruits de mesure et d'évolution. Pour régler ces covariances dans le cadre de la mise en œuvre de la présente invention, on mettra avantageusement en œuvre conjointement deux méthodes de réglage : un réglage a priori et un réglage a posteriori.
S'agissant du réglage a priori, la covariance du bruit de mesure est assez simple. En effet, pour les accéléromètres comme pour les magnétomètres, ce bruit peut avantageusement être modélisé comme un bruit additif sans biais, c'est-à-dire :
Mesure = Mesure pat^aite + bruit eq. 1 0
Il suffit donc de faire une mesure statique suffisamment longue, de l'ordre d'une minute, et de calculer la covariance de la mesure :
(Mesure) * (Mesure)7
Covariance■ -— (moyenne (Mesure) * (moyenne (Mesure)
Nombre de Mesure J eq. 1 1
Où moyenne désigne la moyenne arithmétique.
S'agissant toujours du réglage a priori, la modélisation du bruit d'évolution est plus complexe. Il est considéré comme un bruit additif, noté bruitpost- évolution, qui correspond au bruit de numérisation (qui doit d'être faible), et un bruit de modèle, noté bruitpré-évoiution, qui est prépondérant car il correspond réellement à l'erreur faite en considérant l'hypothèse è constante.
Pour évaluer les covariances de l'évolution, des exemples de mouvements ont été avantageusement sélectionnés dans la base de mouvements au format BioVision Hierarchy (BVH) du laboratoire de capture de mouvement de l'Advanced Computing Center of Art and Design de Colombus (Ohio, USA), le but étant d'effectuer une série d'essais balayant l'ensemble des cas d'utilisation visés. La fonction d'évolution aux angles réels à l'instant k est alors appliquée sur chacun des essais et on compare le résultat avec les angles réels à l'instant k+1 . Il vient : {diff{x)*diff{x)T) eq. 1 2 covananceévolutk>n = 1 \moyenne\aijj \x)) moyenneyaijj
nombre échantillons—!
Puis diff [θ) = θ réel - Θ prédit - Te * diff [θ]
Covariance moyenne diff θ \ \ * moyenne diff θ \ \
Post_evo, e Nombre échantiUons - I ·" // ·" V // I
Même si ces grandeurs de bruit sont déterministes, une optimisation des paramètres correspondants peut améliorer la convergence des algorithmes. Cependant, il faut s'efforcer, en sélectionnant les mouvements faisant l'objet des essais, de rester générique et ne pas choisir des réglages spécifiques à un certain type de mouvement; sauf justement dans le cas d'une utilisation spécifique. Typiquement, si des mouvements d'une très grande dynamique doivent être étudiés, la covariance d'évolution doit, dans l'hypothèse où Ô est égale à une constante, être prise grande car l'hypothèse sera peu respectée. Inversement, dans un mouvement à faible dynamique, il faut préférer une covariance faible. Cependant, malgré tous les a priori qui peuvent être faits sur les réglages, il peut être intéressant de chercher à optimiser les réglages sur un nombre important d'exemples, afin de maximiser la précision angulaire des estimations. Typiquement le nombre d'exemples peut être de l'ordre d'une vingtaine d'exemples de gestes, d'une durée de 60 secondes. Il faut rappeler que la taille du vecteur d'états est de l'ordre de 201 pour une chaîne articulée complète, ce qui conduit à une matrice de covariance de taille 201 x201 . Le réglage dynamique consiste à observer les mesures pour anticiper la dynamique du mouvement et donc des variables d'états. La matrice de covariance du modèle peut alors être modifiée dynamiquement en fonction de cet observateur. Concrètement, on calculera, via une fonction std, la déviation standard des mesures des accéléromètres, des magnétomètres, et le cas échéant des gyromètres, si elles sont disponibles pour chaque segment, puis on utilisera une fonction, notée fonction par la suite, pour
calculer un indice ou gain de dynamisme gainsegment pour chaque segment : = fonction ^std ^MesAcc^_9 t j , std MesMag^_9 ^ j , std ^MesGyro^_9 t^j eq. 14
Enfin, la matrice de covariance d'évolution Q est multipliée par ce gain :
Q = gain _ segment * Q (segment)
eq. 1 5
Q (segment) étant la partie de Q correspondant à un segment
Pour obtenir une résolution optimale, il faut adapter la fonction fonction,
comme par exemple : fonction (sAcc, sMag, sGyro)
( ( ssAAcccc—— ooAAcc(c Y œ ( sMag— oMag sGyro— oGyro eq. 1 6
gain moyenne l rAcc ) rMag rGyro
Où :
gain : gain pour l'ensemble
sAcc, sMag, sGyro : déviations standards sur 10 échantillons (accéléromètre, magnétomètre et gyromètre respectivement) oAcc, rAcc, eAcc : coefficients sur l'accéléromètre (offset, rapport et exposant respectivement)
oMag, rMag, eMag : coefficients sur le magnétomètre (offset, rapport et exposant respectivement)
oGyro, rGyro, eGyro : coefficients sur le gyromètre (offset, rapport et exposant respectivement) Les valeurs des différents coefficients permettant de définir fonction sont
avantageusement réglées par optimisation sur l'ensemble des fichiers de test
au format BVH. Pour cela, les plages de valeurs acceptables sont balayées
en effectuant une résolution globale sur l'ensemble des fichiers de test. Cela
permet d'identifier des valeurs optimales. Ainsi, les résultats suivants ont été
obtenus par les demandeurs :
Lorsqu'on regarde sur un mouvement quelconque l'ordre de grandeur des différents états, on s'aperçoit que la dérivée angulaire a un ordre de grandeur de plus que l'angle et que la dérivée seconde a encore un ordre de grandeur de plus. Par conséquent, afin de limiter les erreurs de calcul numérique, il peut être avantageux de normaliser les états correspondants en posant : è modifié =— * Θ
10
! .. eCl- 1 7
Θ modifié = * Θ
100 II faut alors corriger les fonctions de mesures et d'évolution pour prendre en compte cette normalisation. La correction revient simplement à multiplier par 10 et 100 les états avant de faire les calculs, ainsi que les colonnes de la matrice jacobienne associées aux états concernés. Il faut aussi modifier les covariances associées aux états, en divisant par la même valeur que l'état associé.
Les différentes équations présentées ci-dessus ne sont pas modifiées par le nombre de variables d'état.
Des variantes peuvent être apportées à l'ordre des étapes et aux critères de certaines d'entre elles, notamment au critère de détection des états pseudostatiques et les étapes du filtre de Kalman, sans sortir du cadre général de la présente invention. L'observateur n'est pas forcément un filtre de Kalman.
Ces étapes du procédé de l'invention sont mises en œuvre de manière logicielle, certaines parties du logiciel pouvant être embarquées dans les capteurs, d'autres pouvant être implantées sur un micro-contrôleur, un microprocesseur, ou un micro-ordinateur connecté au système de capteurs. Ces capacités de traitement sont des circuits ordinaires, connectés et configurés pour effectuer les traitements décrits ci-dessus.
Les exemples décrits ci-dessus sont donnés à titre d'illustration de modes de réalisation de l'invention. Ils ne limitent en aucune manière le champ de l'invention qui est défini par les revendications qui suivent.

Claims

REVENDICATIONS
1 . Système de capture des mouvements d'une structure comprenant une pluralité de N segments sensiblement rigides en liaison articulaire avec ladite structure, ledit système comprenant :
- un ensemble de N accéléromètres (101 , 102, 103) à au moins un axe de mesure, chacun desdits N accéléromètres étant sensiblement solidaire d'un desdits N segments,
- un ensemble de P seconds capteurs (104, 105, 106) aptes à restituer une direction d'un repère fixe, chacun sensiblement solidaire d'un segment,
- un ensemble de Q troisièmes capteurs (107) aptes à restituer une mesure représentative d'une vitesse angulaire, chacun sensiblement solidaire d'un segment,
- un module de communication des sorties des N accéléromètres, des P seconds capteurs et des Q troisièmes capteurs avec un module de traitement informatique;
- ledit module de traitement comprenant un observateur d'état (340), ledit système étant caractérisé en ce qu'il comprend en outre :
- un module (310) de détection d'un état pseudo-statique de chacun des segments de ladite structure,
- un module (320) de calcul d'orientation pseudo-statique des segments dans un état pseudo-statique,
- un module (3410) de l'observateur d'état configuré pour remplacer les sorties de la fonction de prédiction de l'observateur d'état par les sorties du module (320) de calcul d'orientation pseudo-statique pour les segments pour lesquels la condition de détection en sortie du module (310) de détection d'un état pseudo-statique est vraie
- et en ce que le nombre Q est strictement inférieur au nombre N et au nombre P.
2. Système de capture des mouvements selon la revendication 1 , caractérisé en ce que, R étant égal au nombre de branches de la structure dont le mouvement est capturé, le nombre Q est inférieur ou égal à R+1 .
3. Système de capture des mouvements selon l'une des revendications 1 à 2, caractérisé en ce que les seconds capteurs sont des magnétomètres.
4. Système de capture des mouvements selon l'une des revendications 1 à
3, caractérisé en ce que les troisièmes capteurs sont des gyromètres. 5. Système de capture des mouvements selon l'une des revendications 1 à
4, caractérisé en ce que l'observateur d'état est un filtre de Kalman.
6. Système de capture des mouvements selon la revendication 5, caractérisé en ce que ses modules sont configurés par des modèles d'évolution d'états de la forme:
Mesure = fonction ^x)
x = évolution (x) où :
- x désigne un vecteur d'état du corps;
fonction désigne une fonction de mesure caractéristique des accéléromètres, des magnétomètres et des gyromètres;
Mesure = [Mesure Accéléromètre,MesureMagnétomètre,MesureGyromètre désigne un vecteur de mesures fournies par les accéléromètres, les magnétomètres et les gyromètres;
- x désigne la dérivée première de x par rapport au temps;
évolution désigne une fonction d'évolution de l'état du corps;
7. Système de capture des mouvements selon la revendication 6, caractérisé en ce que, le vecteur d'état x est de la forme x = [e,ô,ë,Accx,Accy,Accz] où θ , è et θ désignent respectivement un angle d'orientation des segments, sa dérivée première et sa dérivée seconde par rapport au temps, où Aœx Accy et Aœz désignent les composantes de l'accélération d'entraînement Acc de l'ensemble du corps dans un repère terrestre (Χ,Υ,Ζ).
8. Système de capture des mouvements selon l'une des revendications 6 à 7, caractérisé en ce que le modèle d'évolution d'états du filtre de Kalman utilise lesdits angles pseudo-statiques pour les segments détectés dans un état pseudo-statique et le modèle d'évolution d'états du filtre de Kalman pour les segments détectés dans un état dynamique. 9. . Système de capture des mouvements selon la revendication 8, caractérisé en ce que le modèle d'évolution d'états du filtre de Kalman utilise une hypothèse de constance des accélérations des angles des articulations. 10. Système de capture des mouvements selon l'une des revendications 6 à
9, caractérisé en ce que le vecteur d'état est estimé à partir des angles pseudo-statiques en sortie du module de calcul desdits angles pseudostatiques, si tous les segments sont détectés dans un état pseudostatique et est estimé par le filtre de Kalman, si un segment au moins est détecté dans un état dynamique.
1 1 . Système de capture des mouvements selon l'une des revendications 6 à
10, caractérisé en ce que le critère de pseudo-staticité est rempli par un segment dès lors que l'une au moins de grandeurs fournies par au moins l'un des éléments du groupe comprenant une centrale d'attitude ou un gyromètre qui en est solidaire fournit au moins une mesure choisie parmi la norme d'un vecteur accélération et d'un angle entre ledit vecteur accélération et un vecteur champ magnétique qui est inférieure à une valeur de seuil prédéterminée.
12. Système de capture des mouvements selon l'une des revendications 6 à
1 1 , caractérisé en ce que le modèle d'évolution d'états du filtre de Kalman prédit l'angle Θ , sa dérivée première à et sa dérivée seconde è par la fonction définie par :
- où νθ , và , ¾ , vAcc x , vAcc y et vAcc z sont des termes de bruit sur la mesure de Θ , è , à , Accx , Accy et Aœz respectivement.
13. Système de capture des mouvements selon l'une des revendications 6 à 12, caractérisé en ce que le modèle d'évolution d'états du filtre de Kalman prédit l'accélération d'entraînement Acc comme la moyenne des accélérations d'entraînement Acc _ ensembie calculées pour chaque accéléromètre à partir du vecteur Me _ Acc _ réeiie de mesures réellement fournies par ledit accéléromètre, l'accélération d'entraînement Aœ _ ensembie étant calculée pour chaque accéléromètre par :
Acc _ ensemble = - Tem 'RCapteur * (Mes _ Acc _ réelle - Mes _ Acc Acc _ensemble=0 ) où TerreRCap,eur désigne une matrice de rotation d'un repère lié audit accéléromètre vers le repère terrestre et Mes _ AccAcc ensemble=0 désigne un vecteur de mesures théorique calculé en faisant l'hypothèse que l'accélération d'ensemble est nulle.
14. Système de capture des mouvements selon l'une des revendications 6 à 13, caractérisé en ce que le modèle de mesure de l'accéléromètre du filtre de Kalman est donnée par l'équation:
Capteur
Mes Acc - R Terre * G0 - où Me _ Acc désigne un vecteur de mesures prises par ledit accéléromètre, TerreRCapteur désigne une matrice de rotation du repère lié à l'accéléromètre vers le repère terrestre, GO est le champ gravitationnel terrestre mesuré depuis une position initiale dans le repère lié à l'accéléromètre et TerreTCapteur est un vecteur de translation du repère terrestre vers le repère lié à l'accéléromètre. 15. Système de capture des mouvements selon l'une des revendications 6 à
14, caractérisé en ce que les covariances des bruits de mesure et d'évolution d'états sont estimées à la fois a priori et a postériori.
Système de capture des mouvements selon l'une des revendications 6 à
15, caractérisé en ce que les covariances des bruits d'évolution d'états sont estimées a priori à partir d'une comparaison entre les états prédits et des états réels prélevés dans une base de données de mouvements d'un corps. 17. Système de capture des mouvements selon l'une des revendications 6 à
16, caractérisé en ce que les covariances des bruits d'évolution d'états sont réestimées a postériori en calculant pour chaque segment un indice de gain du modèle d'évolution d'états à partir des écarts entre des déviations standards des capteurs pour des états réels prélevés dans une base de données de mouvements d'un corps et les déviations mesurées par lesdits capteurs.
18. Procédé de capture des mouvements d'une structure comprenant une pluralité de N segments sensiblement rigides en liaison articulaire avec ladite structure, ledit procédé comprenant :
- une étape d'acquisition des mesures de N accéléromètres (101 , 102, 103) à au moins un axe de mesure, lesdits accéléromètres étant sensiblement solidaires dudit au moins un segment,
- une étape d'acquisition des mesures de P seconds capteurs (104, 105, 106) aptes à restituer une direction d'un repère fixe, chacun sensiblement solidaire d'un segment,
- une étape d'acquisition des mesures de Q troisièmes capteurs (107) aptes à restituer une mesure représentative d'une vitesse angulaire , chacun sensiblement solidaire d'un segment, - une étape de communication des sorties des N accéléromètres, des P seconds capteurs et des Q troisièmes capteurs à une étape de traitement informatique ; ledit procédé étant caractérisé en ce qu'il comprend en outre :
- une étape (310) de détection d'un état pseudo-statique de chacun des segments de ladite structure,
- une étape (320) de calcul d'orientation pseudo-statique des segments dans un état pseudo-statique,
- si au moins une sortie de l'étape (310) de détection d'un état pseudostatique est fausse, une étape (3410) remplaçant les sorties d'une fonction de prédiction d'un observateur d'état qui reçoit en entrée les sorties des N accéléromètres, P seconds capteurs et Q troisièmes capteurs, Q étant strictement inférieur au nombre N et au nombre P, par .les sorties de l'étape (320) de calcul d'orientation pseudo-statique pour les segments pour lesquels la condition de détection en sortie du module (310) de détection d'un état pseudo-statique est vraie.
EP13707660.0A 2012-03-08 2013-03-07 Systeme ameliore de capture de mouvements d'une structure articulee Withdrawn EP2836891A1 (fr)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR1252103A FR2987913B1 (fr) 2012-03-08 2012-03-08 Systeme ameliore de capture de mouvements d'une structure articulee
PCT/EP2013/054561 WO2013131989A1 (fr) 2012-03-08 2013-03-07 Systeme ameliore de capture de mouvements d'une structure articulee

Publications (1)

Publication Number Publication Date
EP2836891A1 true EP2836891A1 (fr) 2015-02-18

Family

ID=47827231

Family Applications (1)

Application Number Title Priority Date Filing Date
EP13707660.0A Withdrawn EP2836891A1 (fr) 2012-03-08 2013-03-07 Systeme ameliore de capture de mouvements d'une structure articulee

Country Status (4)

Country Link
US (1) US9958470B2 (fr)
EP (1) EP2836891A1 (fr)
FR (1) FR2987913B1 (fr)
WO (1) WO2013131989A1 (fr)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2987735B1 (fr) 2012-03-08 2014-04-11 Movea Procede d'identification des parametres geometriques d'une structure articulee et d'un ensemble de reperes d'interet disposes sur ladite structure
US10324522B2 (en) * 2015-11-25 2019-06-18 Jakob Balslev Methods and systems of a motion-capture body suit with wearable body-position sensors
US10156907B2 (en) * 2015-12-14 2018-12-18 Invensense, Inc. Device for analyzing the movement of a moving element and associated method
US11402402B2 (en) * 2016-01-12 2022-08-02 Bigmotion Technologies Inc. Systems and methods for human body motion capture
WO2017205983A1 (fr) * 2016-06-02 2017-12-07 Bigmotion Technologies Inc. Systèmes et procédés d'estimation de vitesse de marche
CN106737604B (zh) * 2017-02-03 2024-04-02 释空(上海)品牌策划有限公司 方向控制力臂及虚拟现实体验设备
CN107773961A (zh) * 2017-09-15 2018-03-09 维沃移动通信有限公司 一种发球控制方法及移动终端
JP7159658B2 (ja) * 2018-07-11 2022-10-25 カシオ計算機株式会社 運動データ取得装置及び運動データ取得方法、運動データ取得プログラム
US12508472B2 (en) * 2020-06-17 2025-12-30 FitForm Technologies Inc. Tracking three-dimensional motion during an activity
CN114821006B (zh) * 2022-06-23 2022-09-20 盾钰(上海)互联网科技有限公司 交互式间接推理的孪生体态检测方法及系统
CN115937255B (zh) * 2022-12-10 2026-03-10 福州大学 一种基于反向运动学的人体运动学分析方法及系统

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6997882B1 (en) * 2001-12-21 2006-02-14 Barron Associates, Inc. 6-DOF subject-monitoring device and method
US7002551B2 (en) * 2002-09-25 2006-02-21 Hrl Laboratories, Llc Optical see-through augmented reality modified-scale display
FR2916069B1 (fr) 2007-05-11 2009-07-31 Commissariat Energie Atomique Procede de traitement pour la capture de mouvement d'une structure articulee

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
None *
See also references of WO2013131989A1 *

Also Published As

Publication number Publication date
US20150032408A1 (en) 2015-01-29
FR2987913A1 (fr) 2013-09-13
WO2013131989A1 (fr) 2013-09-12
US9958470B2 (en) 2018-05-01
FR2987913B1 (fr) 2015-10-16

Similar Documents

Publication Publication Date Title
EP2836891A1 (fr) Systeme ameliore de capture de mouvements d'une structure articulee
EP1492998B1 (fr) Dispositif de capture des mouvements de rotation d un solide
EP3213033B1 (fr) Procédé d'estimation d'un état de navigation contraint en observabilité
EP1985233B1 (fr) Procédé et dispositif de détection d'un axe de rotation sensiblement invariant
FR2976353A1 (fr) Procede d'estimation simplifie de l'orientation d'un objet et centrale d'attitude mettant en oeuvre un tel procede
FR2916069A1 (fr) Procede de traitement pour la capture de mouvement d'une structure articulee
WO2011144408A1 (fr) Procede et systeme pour fusionner des donnees issues de capteurs d'images et de capteurs de mouvement ou de position
WO2010007160A1 (fr) Procede d'estimation ameliore de l'orientation d'un objet et centrale d'attitude mettant en oeuvre un tel procede
CN117647263A (zh) 基于非线性优化的单光子相机视觉惯性里程计方法及系统
EP3655724B1 (fr) Procédé d'estimation du mouvement d'un objet évoluant dans un champ magnétique
EP1969314B1 (fr) Procede d'estimation d'un mouvement d'un solide
EP3658853A1 (fr) Procédé et dispositif de caractérisation d'un cap déterminé à partir de la mesure du champ magnétique
CN116701924B (zh) 一种用于惯性测量单元的数据降噪方法及系统
EP2268999A1 (fr) Systeme et procede de determination de parametres representatifs de l'orientation d'un solide en mouvement soumis a deux champs vectoriels
EP2822462A1 (fr) Procede d'identification des parametres geometriques d'une structure articulee et d'un ensemble de reperes d'interet disposes sur ladite structure
EP2941333B1 (fr) Procede d'estimation de mouvement d'un objet massique poly-articule
EP3655725B1 (fr) Procédé d'estimation du mouvement d'un objet évoluant dans un environnement et un champ magnétique
EP2534610A1 (fr) Système et procédé de détermination en temps réel d'un paramètre d'un mouvement de forme répétitive
EP3211370A1 (fr) Procede de filtrage des signaux issus d'un ensemble capteur comprenant au moins un capteur de mesure d'un champ physique vectoriel sensiblement constant dans le temps et l'espace dans un repere de reference
FR3142246A1 (fr) Procédé d’estimation de l’évolution d’une vitesse d’un point de mesure
FR3057349B1 (fr) Perfectionnements aux procedes d'alignement de centrale inertielle
CN119063709A (zh) 激光地图的处理方法及装置、存储介质、电子装置
FR2943424A1 (fr) Procede d'identification d'un axe rotation unique d'un mouvement de rotation

Legal Events

Date Code Title Description
PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

17P Request for examination filed

Effective date: 20141007

AK Designated contracting states

Kind code of ref document: A1

Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO RS SE SI SK SM TR

AX Request for extension of the european patent

Extension state: BA ME

DAX Request for extension of the european patent (deleted)
STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: EXAMINATION IS IN PROGRESS

17Q First examination report despatched

Effective date: 20180322

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: THE APPLICATION IS DEEMED TO BE WITHDRAWN

18D Application deemed to be withdrawn

Effective date: 20210629