WO2013140075A1 - Dispositif et procede d'identification d'un mouvement cyclique, programme d'ordinateur correspondant - Google Patents

Dispositif et procede d'identification d'un mouvement cyclique, programme d'ordinateur correspondant Download PDF

Info

Publication number
WO2013140075A1
WO2013140075A1 PCT/FR2013/050568 FR2013050568W WO2013140075A1 WO 2013140075 A1 WO2013140075 A1 WO 2013140075A1 FR 2013050568 W FR2013050568 W FR 2013050568W WO 2013140075 A1 WO2013140075 A1 WO 2013140075A1
Authority
WO
WIPO (PCT)
Prior art keywords
cyclic
hmm
type
sequence
statistical
Prior art date
Application number
PCT/FR2013/050568
Other languages
English (en)
Inventor
Florence GRIS
Pierre Jallon
Original Assignee
Commissariat à l'énergie atomique et aux énergies alternatives
Movea
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 Commissariat à l'énergie atomique et aux énergies alternatives, Movea filed Critical Commissariat à l'énergie atomique et aux énergies alternatives
Priority to EP13715344.1A priority Critical patent/EP2828797A1/fr
Priority to US14/386,549 priority patent/US9952043B2/en
Publication of WO2013140075A1 publication Critical patent/WO2013140075A1/fr

Links

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01BMEASURING LENGTH, THICKNESS OR SIMILAR LINEAR DIMENSIONS; MEASURING ANGLES; MEASURING AREAS; MEASURING IRREGULARITIES OF SURFACES OR CONTOURS
    • G01B21/00Measuring arrangements or details thereof, where the measuring technique is not covered by the other groups of this subclass, unspecified or not relevant
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/18Complex mathematical operations for evaluating statistical data, e.g. average values, frequency distributions, probability functions, regression analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/20Movements or behaviour, e.g. gesture recognition
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2218/00Aspects of pattern recognition specially adapted for signal processing

Definitions

  • the present invention relates to a device for identifying a type of cyclic movement among a set of types of possible cyclic movements of a physical system observed by at least one motion sensor. It also relates to a corresponding method and computer program.
  • physical system any system producing a physical output observable by a sensor, the system being assumed a priori to be able to reproduce a predetermined number of cyclical movements modeled by the identification device.
  • the observed physical system may for example be an animated object capable of being driven according to a cyclical movement that it is desired to identify, or even monitor to detect possible anomalies, using one or more sensors.
  • the detectable cyclic movements are variable and the applications multiple.
  • the invention relates to a device for identifying a type of cyclic movement among a set of possible types of cyclic movements of a physical system observed by at least one motion sensor, comprising:
  • At least one motion sensor for providing a sequence of observation data of the physical system
  • a computer connected to the sensor and to the storage means, programmed to analyze the sequence of observation data and to select one of the possible types of cyclical movements on the basis of the stored statistical model.
  • the cyclic movement observed is a swimming activity.
  • the motion sensor is at least one measurement axis and worn by a user.
  • the calculator is more specifically programmed to analyze a sequence of observation data and to identify the type of swimming practiced by the user over time by using a unique Markov statistical model with N hidden states corresponding respectively to N types of strokes. identifiable.
  • the identification of the type of swimming is possible but rather summary.
  • different variants can be practiced by the same person or by different people.
  • the model applied in this document does not allow to describe more precisely the type of swimming observed so that such variants can not be detected a priori, except to multiply the number of hidden states in the statistical model used by modeling a priori these different variants and thus also increase the risk of detection errors.
  • a device for identifying a cyclic movement among a set of possible cyclical movements of a physical system observed by at least one motion sensor comprising:
  • At least one motion sensor for providing a sequence of observation data of the physical system
  • a computer connected to the sensor and to the storage means, programmed to analyze the sequence of observation data and select one of the possible cyclical movements on the basis of the stored statistical model
  • the storage means comprise at least one statistical Markov model with hidden states by possible cyclic movement
  • the computer is programmed to analyze a compatibility of the observation data sequence with each cyclic movement possible based on the statistical model that is associated with this cyclical movement,
  • the computer is further programmed to provide a sequence of hidden states of the statistical model associated with the cyclic movement selected from the observation data sequence and the statistical model associated with the selected cyclic movement.
  • a device instead of having a single Markov model with N hidden states corresponding to the N possible cyclic movements as would be taught in patent application FR 2 943 554, a device according to the invention provides for at least N state Markov models. hidden to identify the N cyclic movements. The modeling is therefore finer because then the hidden states of the same Markov model can model several components of the same cyclic movement.
  • a sequence of hidden states of the statistical model associated with the cyclic motion selected from the sequence of observation data from the sensor a detailed temporal analysis of the identified motion and its components is available.
  • each hidden-state Markov statistical model relating to a possible cyclic motion is a cyclic model represented by an oriented graph in which an oriented cycle of hidden states is imposed.
  • each hidden state of each statistical model of the storage means corresponds to a predetermined sub-movement of the cyclic movement with which this statistical model is associated.
  • a hidden state corresponding to a starting sub-movement of the cyclic motion with which this statistical model is associated is represented by a node of the corresponding oriented graph situated upstream of said oriented cycle
  • a hidden state corresponding to a stop sub-movement of the cyclic movement with which this statistical model is associated is represented by a node of the corresponding oriented graph located downstream from said oriented cycle.
  • a method for identifying a cyclic movement among a set of possible cyclic motions of a physical system observed by at least one sensor comprising:
  • At least one statistical Markov model with hidden states by possible cyclic motion is stored in memory
  • the selection is made by analyzing a compatibility of the sequence of observation data with each possible cyclical movement on the basis of the statistical model which is associated with this cyclical movement, the identification method further comprising the provision of a sequence of hidden states of the statistical model associated with the selected cyclic motion from the observation data sequence and the statistical model associated with the selected cyclic motion.
  • the selection includes a comparison of probabilities for possible cyclical movements knowing the sequence of observation data, the probabilities being estimated based on the stored statistical models.
  • the provision of said sequence of hidden states is performed by applying the Viterbi algorithm.
  • the identification method as defined above further comprises the computation of statistical parameters or counting of said sequence of hidden states provided.
  • each hidden-state Markov statistical model relating to a possible cyclic movement being a cyclic model in which an oriented cycle of hidden states is imposed
  • the calculated statistics or counting parameters comprise at least one of the elements. of the set consisting of a number of state cycles hidden in said provided hidden state sequence, durations of each cycle, an average of the durations of each cycle, a variance of the durations of each cycle and a pause period in a cycle.
  • FIG. 1 diagrammatically represents the general structure of an identification device according to one embodiment of the invention
  • FIG. 2 illustrates an example of a hidden state statistical model of Markov having constraints of transitions between hidden states forming a cycle and which can be taken into account by the identification device of FIG. 1,
  • FIG. 3 illustrates a particular use of the identification device of FIG. 1,
  • FIG. 4 illustrates the successive steps of an identification method implemented by the device of FIG. 1, and
  • FIG. 5 illustrates, by means of a diagram, a result of the identification method of FIG. 4 obtained on the basis of a cyclic statistical model such as that of FIG. 2.
  • the device 10 shown in FIG. 1 is a device for identifying a cyclic movement among a set of possible cyclical movements of a physical system observed by at least one motion sensor. It comprises for this purpose an observation module 12, a processing module 14 and an interface module 16.
  • the observation module 12 comprises one or more sensors represented by the unique reference 18 for the observation of the physical system.
  • the sensor 18 may for example comprise a motion sensor with one, two or three measurement axes, in particular a 3D accelerometer carried by a person, for the identification of a cyclic movement of this person, for example in the context of a walking, running or swimming activity of that person,
  • it may comprise a motion sensor for determining the activity of a mobile system in a set of possible repetitive or cyclic activities
  • the motion sensor may comprise an accelerometer, a gyrometer or a magnetometer, - etc.
  • the sensor 18 may also comprise several sensors each providing observations which, combined, make it possible to envisage detecting more complex cyclic movements.
  • observation data can be directly derived from a sampling of the observation signal or obtained after one or more treatments, in particular one or more filtering, of this signal. It is thus understood that the observation data can be mono or multivalued, even when only one sensor 18 is available.
  • the processing module 14 is an electronic circuit, for example that of a computer. It comprises storage means 20, for example a memory type RAM, ROM or other, in which are stored the parameters of several statistical models Markov hidden state.
  • Each cyclic motion S-1, S-N expected to be detectable by the detection device 10 using the sensor 18 is modeled by a corresponding concealed state Markov statistical model denoted HMM-1, HMM-N.
  • HMM-1 concealed state Markov statistical model
  • a first HMM-1 model can be breaststroke
  • a second HMM-2 model can match the crawl
  • a third HMM-3 model can match the backstroke, etc.
  • HMM-n Any of the stored hidden state statistical Markov models, denoted HMM-n and modeling the cyclic motion S-n, is defined by the following parameters:
  • the probability law of each hidden state i of the model HMM-n can be chosen from the family normal laws. In this case, it is defined by its expectation ⁇ ⁇ and its variance ⁇ n
  • ⁇ ⁇ is a vector comprising as many components
  • ⁇ n ⁇ a matrix comprising as many rows and columns only values provided at each moment.
  • HMM-n statistical model some constraints may be imposed in the HMM-n statistical model, including constraints on transitions,] a hidden state to another, some may be prohibited.
  • the HMM-n model can be itself of cyclic type.
  • FIG. 2 An example cyclic HMM-n cyclic model with three cyclic hidden states K2, K3, K4 and five concealed states in total K1 to K5 is illustrated in FIG. 2. It is suitable for modeling a physical activity of a person, detectable at using an accelerometer sensor, most of these activities being periodic or pseudoperiodic. For example, walking or swimming involves successions of sub-movements, respectively limbs and head, which are repeated.
  • the first state K1 represents the commitment of the periodic or pseudoperiodic activity considered (for example a thrust on the edge of a basin in the case of a swimming)
  • the three successive states K2, K3 and K4 represent the periodic phase or pseudoperiodic of the activity itself, and the state K5, the end or exit of the activity.
  • a 1 t1 1 - ⁇ ⁇ 5
  • a ⁇ 2 ⁇ 1
  • a 2.2 1 - ⁇ 2 - ⁇ 2
  • a 2.3 ⁇ 2
  • a 2.5 ⁇ 2
  • a 3.3 1 - ⁇ 3 - ⁇ 3
  • a 3 4 ⁇ 3
  • a 3 5 ⁇ 3
  • a 4 1 4 1 - ⁇ 4 - ⁇ 4
  • a 4 2 ⁇ 4
  • a cyclic HMM-n model with Cn hidden states of which Cn-2 are cyclic is constrained as follows:
  • a breaststroke swim could be represented by a cyclic pattern with five cyclic hidden states (K2, K3, K4, K5, K6), an engagement state (K1) upstream of the cycle and a state (K7) of output downstream of the cycle. would correspond to one of the following five successive sub-movements of the breaststroke:
  • the arms spread widely, palms facing outward, finger tight, to form an angle of 45 ° to the axis head / feet; towards the end of the movement, the palms are oriented towards the bottom, to facilitate the exit of the head and the shoulders of the water,
  • the memory 20 may further store, in association with each HMM-n model, one or more L-n training sequences.
  • Each training sequence of the HMM-n model is in fact an observation sequence provided by the sensor 18, but it is known that it was extracted from the observation of the physical system while it reproduced the cyclic motion Sn.
  • the formation of a base of training sequences can for example be obtained by performing an observation method such as that described in the patent application FR 2 943 554. It can also be obtained empirically.
  • a learning sequence Ln can be processed upon reception by the processing module 14, or stored in memory 20 in connection with the HMM-n model for further processing, for a configuration or reconfiguration of the identification device. 10 by updating parameters of the HMM-n model, as is for example detailed in the French patent application published under the number FR 2 964 223.
  • the processing module 14 further comprises a computer 22, for example a central computer unit equipped with a microprocessor 24 and a storage space of at least one computer program 26. This computer 22, and more particularly the microprocessor 24, is connected to the sensor 18 and the memory 20.
  • the computer program 26 performs three main functions illustrated by modules 28, 30 and 32 in FIG.
  • the first function fulfilled by the identification module 28, for example in the form of at least one instruction loop, is a function of identification of a cyclic movement reproduced by the physical system, on receipt of a observation sequence O (0: M-1) provided by the sensor 18. This function will be detailed with reference to FIG. 4.
  • the identification module 28 comprises a first module 28A for identifying a type of cyclic movement among several possible types.
  • This first module 28A is programmed to select one of the possible cyclic movements S-1, SN by analyzing a compatibility of the observation sequence 0 (0: M-1) with each possible cyclic movement on the basis of of the statistical model that is associated with this cyclical movement.
  • This compatibility analysis comprises, for example, a comparison of probabilities relating to these possible cyclical movements knowing the observation sequence, the probabilities being estimated on the basis of the statistical HMM-1 stored models,
  • HMM-N HMM-N.
  • the resolution of this selection using hidden-state Markov statistical models is well known and is one of the three major classes of problems solved by hidden Markov models, as mentioned in L. Rabiner's article entitled “A tutorial on Hidden Markov Models and selected applications in speech recognition," Proceedings of the IEEE, vol. 77, no. 2, pp. 257-286, February 1989.
  • This is the first class of problems mentioned in this article on page 261 and whose resolution is detailed on pages 262 and 263.
  • the identification module 28 includes a second module 28B for temporal analysis of the cyclic movement selected by the first module 28A.
  • This second module 28B is programmed to provide a sequence of hidden states X (0: M-1) of the statistical model associated with the cyclic motion selected from the observation sequence and the statistical model associated with the selected cyclic movement.
  • the resolution of this provision of a hidden state sequence X (0: M-1) using a hidden-state Markov statistical model is well known and is also one of three major classes of problems solved by the hidden Markov models, as mentioned in the article by L. Rabiner mentioned above. This is the second class of problems mentioned in this article on page 261 and whose resolution is detailed on pages 263 and 264.
  • this second class of problems it is desired to provide the sequence of hidden states X (0: M -1) corresponding best, according to a certain optimality criterion, to the observation sequence X (0: M-1) knowing the Markov statistical model selected for this observation sequence.
  • Several solutions are known for solving this second class of problems. One of them is to apply the Viterbi algorithm as described in the L. Rabiner article mentioned earlier. From the hidden state sequence provided in this manner, also called the Viterbi path, the second time analysis module 28B is further programmed to compute statistical or counting parameters. For example, given the cyclic nature of the HMM-1, HMM-N HMM statistic models, these statistics or counting parameters may include a number of hidden state cycles in the hidden state sequence provided.
  • the study of these statistical or counting parameters from the Viterbi path then makes it possible to access a more precise identification of the cyclical movement identified.
  • the second function fulfilled by the recording module 30, for example in the form of an instruction loop, is a function of recording, in the memory 20, an observation sequence in relation to the one of the possible cyclic movements S-1, SN. This observation sequence then becomes a learning sequence to be used for configuring or reconfiguring the identification device 10.
  • the third function fulfilled by the configuration module 32, for example in the form of an instruction loop, is a configuration function of the identification device 10 by updating the parameters of at least one statistical model HMM stored in memory 20 by means of a training sequence or a set of corresponding learning sequences Ln.
  • This function is for example described in the patent application FR 2 964 223 and will not be detailed. It can, however, advantageously be adapted according to the specific constraints imposed by the cyclic models.
  • the interface module 16 may comprise a mode selector 34 controlled by a user, in particular the person carrying the identification device 10 itself, when the observed physical system is a person.
  • the identification device 10 operates by default in identification mode, thus executing the identification module 28.
  • the identification device 10 may momentarily enter record mode, when an observation sequence associated with a known cyclical movement reproduced by the observed physical system is provided by the sensor 18 and must be recorded as a training sequence in the memory 20.
  • the identification device may then comprise a recording interface 36, with the aid of which the user defines the observation sequence (for example marking its beginning and end) and associates it with one of the possible cyclical movements.
  • the recording interface 36 may comprise, in a conventional manner, a screen and / or input means.
  • the identification device 10 can momentarily go into configuration mode, when the user feels that he has enough training sequences in memory 20 to improve the adaptation of the detection device 10 to the observed physical system.
  • observation modules 12, processing 14 and interface 16 are structurally separable.
  • the identification device 10 may be designed in one piece or in several separate hardware elements interconnected by means of data transmission with or without wire.
  • processing modules 14 and possibly the interface modules 16 can be implemented by computer. Only the observation module 12 is necessarily in the vicinity or in contact with the physical system observed since it comprises the sensor or sensors.
  • FIG. 3 a particularly compact embodiment is illustrated for an application for identifying a cyclic movement of a person 40.
  • the identification device 10 is entirely integrated in a housing. 42 carried by the person.
  • the sensor is for example a 3D accelerometer and cyclic movements observed are for example types of swimming.
  • the housing 42 is for example firmly held on an arm of the person 40 by means of a bracelet 44, so that the detection device 10 is worn as a watch.
  • the housing 42 could be held on the front of the person 40 by means of a strip.
  • the housing 42 could be held on one of the legs of the person 40.
  • FIG. 4 illustrates the successive steps of a method of configuring the device 10 and of identifying observation sequences using the device 10 once configured.
  • a base of training sequences is constituted. It can be constituted by execution of the recording module 30 and / or by execution of an observation method such as that described in the patent application FR 2 943 554.
  • a training sequence is in fact an observation sequence in relation to one of the possible cyclic movements S-1, SN.
  • the data of an observation sequence can be directly derived from a sampling of the observation signal provided by the sensor 18 or obtained after one or more treatments, in particular one or more filtering, of this signal. If additional treatment is deemed necessary on any observation sequence before confronting it with the HMM-1, HMM-N cyclic statistical models, in particular to extract a sequence of particular characteristics, then this additional processing can be performed by the computer 22 during an optional step 102 .
  • a step 104 the device 10 is configured or reconfigured using the base of the training sequences.
  • the execution of this step will not be detailed. As indicated above, this can be done by an adaptation of the teaching disclosed in the patent application FR 2 964 223. Alternatively, this step can also be performed empirically and not reconfigurable.
  • the cyclical statistical models HMM-1, HMM-N are thus up to date and exploitable.
  • the steps 100 to 104 detailed above allow the configuration of the identification device 10 so as to make it operational and can be repeated as often as desired.
  • the actual identification method implemented by the device 10, and even more precisely by its identification module 28, comprises a step 200 of reception, by the computer 22 of the processing module 14, of a sequence of observation of the physical system provided by the sensor 18.
  • step 202 If additional processing is deemed necessary on the received observation sequence before comparing it with the cyclic statistical models HMM-1, HMM-N, in particular to extract a sequence of particular characteristics, then this additional processing can be performed by the calculator 22 in an optional step 202 identical to step 102
  • the compatibility of the observation sequence with each cyclic statistical model HMM-n is estimated, as indicated previously in the description of the first module 28A.
  • the HMM-i cyclic statistical model maximizing the calculated probabilities is selected and the corresponding cyclical movement is identified.
  • the sequence of hidden states representing at best the sequence of observation is calculated and supplied at the output of the computer 22, as indicated previously in the description of the second module 28B, that is to say by application of the Viterbi algorithm as described in the article by L. Rabiner mentioned above.
  • the sequence of hidden states obtained reproduces these constraints and thus finely characterizes the sequence of the sub-movements of the identified cyclic motion. It can then be displayed on a screen, for example a screen of the identification device 10 if it has one, and be statistically analyzed. In particular, statistical or counting parameters as mentioned above can be evaluated and possibly displayed.
  • FIG. 5 illustrates the assignment of hidden states to the samples of an observation sequence of a cyclic activity such as swimming, based on a cyclic pattern selected by the identification device 10 (step 204 ) to a state of engagement (state 1) and three cyclic states (states 2, 3 and 4) such as that of figure 2.
  • the sampled observation sequence is illustrated by the curve C1
  • the Viterbi path corresponding, provided by the identification device 10 (step 206) is illustrated by the curve C2.
  • the statistical analysis of the Viterbi C2 path allows to analyze its irregularities of cycles, their number, their speed, etc.
  • an identification device such as that described above allows identification and fine analysis of the cyclic movements reproduced by an observed physical system.
  • the fact of providing the Viterbi path associated with an observation sequence whose cyclic motion it has reproduced has been identified makes it possible to access the temporal and statistical analysis of the subunits simply and with sufficient precision. movements of this identified movement.
  • the detection device can be designed in very different forms since its observation modules 12, processing 14 and interface 16 are separable. Its design can thus be adapted to the intended application and the observed physical system.

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Mathematical Physics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Mathematical Optimization (AREA)
  • Mathematical Analysis (AREA)
  • Computational Mathematics (AREA)
  • Evolutionary Biology (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • General Engineering & Computer Science (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Databases & Information Systems (AREA)
  • Software Systems (AREA)
  • Operations Research (AREA)
  • Algebra (AREA)
  • Probability & Statistics with Applications (AREA)
  • Health & Medical Sciences (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • General Health & Medical Sciences (AREA)
  • Psychiatry (AREA)
  • Social Psychology (AREA)
  • Human Computer Interaction (AREA)
  • Multimedia (AREA)
  • Measurement Of The Respiration, Hearing Ability, Form, And Blood Characteristics Of Living Organisms (AREA)
  • Image Analysis (AREA)

Abstract

Ce dispositif (10) d'identification d'un type de mouvement cyclique d'un système physique parmi un ensemble de types de mouvements cycliques possibles comporte : au moins un capteur de mouvement (18) pour la fourniture d'une séquence de données d'observation du système physique; des moyens (20) de stockage d'au moins un modèle statistique de Markov à états cachés (HMM-1, …, HMM-N); et un calculateur (22) programmé (28A) pour analyser la séquence de données d'observation et sélectionner un type de mouvement cyclique sur la base du modèle statistique stocké. Les moyens de stockage (20) comportent au moins un modèle statistique de Markov à états cachés par type de mouvement cyclique possible et le calculateur (22) est programmé (28A) pour analyser une compatibilité de la séquence de données d'observation avec chaque type de mouvement cyclique possible sur la base du modèle statistique qui est associé à ce type de mouvement cyclique. En outre, le calculateur (22) est programmé (28B) pour fournir une séquence d'états cachés du modèle statistique associé au type de mouvement cyclique sélectionné à partir de la séquence de données d'observation et du modèle statistique associé au type de mouvement cyclique sélectionné.

Description

Dispositif et procédé d'identification d'un mouvement cyclique, programme d'ordinateur correspondant
La présente invention concerne un dispositif d'identification d'un type de mouvement cyclique parmi un ensemble de types de mouvements cycliques possibles d'un système physique observé par au moins un capteur de mouvement. Elle concerne également un procédé et un programme d'ordinateur correspondants.
Elle s'applique au domaine technique de la détection et de la reconnaissance de mouvements.
On entend par « système physique », tout système produisant une sortie physique observable par un capteur, le système étant supposé a priori pouvoir reproduire un nombre prédéterminé de mouvements cycliques modélisés par le dispositif d'identification.
Le système physique observé peut par exemple être un objet animé susceptible d'être entraîné selon un mouvement cyclique que l'on souhaite identifier, voire surveiller pour détecter d'éventuelles anomalies, à l'aide d'un ou plusieurs capteurs.
Il peut aussi s'agir d'une personne ou d'un animal en situation de déplacement (marche, course, nage, ...) impliquant une succession de sous- mouvements cycliques. Selon le ou les capteurs utilisés, les mouvements cycliques détectables sont variables et les applications multiples.
L'invention porte plus précisément sur un dispositif d'identification d'un type de mouvement cyclique parmi un ensemble de types de mouvements cycliques possibles d'un système physique observé par au moins un capteur de mouvement, comportant :
- au moins un capteur de mouvement pour la fourniture d'une séquence de données d'observation du système physique,
- des moyens de stockage d'au moins un modèle statistique de Markov à états cachés,
- un calculateur, relié au capteur et aux moyens de stockage, programmé pour analyser la séquence de données d'observation et sélectionner l'un des types de mouvements cycliques possibles sur la base du modèle statistique stocké.
Un tel dispositif est décrit dans la demande de brevet français publiée sous le numéro FR 2 943 554. Dans ce document, le mouvement cyclique observé est une activité de nage. Le capteur de mouvement est à au moins un axe de mesure et porté par un utilisateur. Le calculateur est plus précisément programmé pour analyser une séquence de données d'observation et pour identifier le type de nage pratiqué par l'utilisateur au cours du temps en utilisant un unique modèle statistique de Markov à N états cachés correspondant respectivement à N types de nages identifiables.
Avec ce type de dispositif, l'identification du type de nage est possible mais assez sommaire. Notamment, pour un même type de nage, différentes variantes peuvent être pratiquées par une même personne ou par des personnes différentes. Or le modèle appliqué dans ce document ne permet pas de qualifier plus précisément le type de nage observé de sorte que de telles variantes ne peuvent a priori pas être détectées, sauf à multiplier le nombre d'états cachés dans le modèle statistique employé en modélisant a priori ces différentes variantes et à augmenter également ainsi le risque d'erreurs de détection.
II peut alors être souhaité de prévoir un dispositif d'identification de mouvement cyclique qui permette de s'affranchir d'au moins une partie des problèmes et contraintes précités tout en tirant profit d'une analyse bayésienne par modélisation de Markov à états cachés.
Il est donc proposé un dispositif d'identification d'un mouvement cyclique parmi un ensemble de mouvements cycliques possibles d'un système physique observé par au moins un capteur de mouvement, comportant :
- au moins un capteur de mouvement pour la fourniture d'une séquence de données d'observation du système physique,
- des moyens de stockage d'au moins un modèle statistique de Markov à états cachés,
- un calculateur, relié au capteur et aux moyens de stockage, programmé pour analyser la séquence de données d'observation et sélectionner l'un des mouvements cycliques possibles sur la base du modèle statistique stocké,
dans lequel :
- les moyens de stockage comportent au moins un modèle statistique de Markov à états cachés par mouvement cyclique possible,
- le calculateur est programmé pour analyser une compatibilité de la séquence de données d'observation avec chaque mouvement cyclique possible sur la base du modèle statistique qui est associé à ce mouvement cyclique,
- le calculateur est en outre programmé pour fournir une séquence d'états cachés du modèle statistique associé au mouvement cyclique sélectionné à partir de la séquence de données d'observation et du modèle statistique associé au mouvement cyclique sélectionné.
Ainsi, au lieu d'avoir un unique modèle de Markov à N états cachés correspondant aux N mouvements cycliques possibles comme l'enseignerait la demande de brevet FR 2 943 554, un dispositif selon l'invention prévoit au minimum N modèles de Markov à états cachés pour identifier les N mouvements cycliques. La modélisation est donc plus fine parce qu'alors les états cachés d'un même modèle de Markov peuvent modéliser plusieurs composantes d'un même mouvement cyclique. En fournissant en outre une séquence d'états cachés du modèle statistique associé au mouvement cyclique sélectionné à partir de la séquence de données d'observation issue du capteur, on dispose d'une analyse temporelle détaillée du mouvement identifié et de ses composantes.
De façon optionnelle, chaque modèle statistique de Markov à états cachés relatif à un mouvement cyclique possible est un modèle cyclique représenté par un graphe orienté dans lequel un cycle orienté d'états cachés est imposé.
De façon optionnelle également, chaque état caché de chaque modèle statistique des moyens de stockage correspond à un sous-mouvement prédéterminé du mouvement cyclique auquel est associé ce modèle statistique.
De façon optionnelle également, pour chaque modèle statistique :
- un état caché correspondant à un sous-mouvement de démarrage du mouvement cyclique auquel est associé ce modèle statistique est représenté par un nœud du graphe orienté correspondant situé en amont dudit cycle orienté, et
- un état caché correspondant à un sous-mouvement d'arrêt du mouvement cyclique auquel est associé ce modèle statistique est représenté par un nœud du graphe orienté correspondant situé en aval dudit cycle orienté.
Il est également proposé un procédé d'identification d'un mouvement cyclique parmi un ensemble de mouvements cycliques possibles d'un système physique observé par au moins un capteur, comportant :
- la réception d'une séquence de données d'observation du système physique fournie par au moins un capteur, - la sélection par un calculateur de l'un des mouvements cycliques possibles par analyse de la séquence de données d'observation sur la base d'au moins un modèle statistique de Markov à états cachés stocké en mémoire, dans lequel :
- au moins un modèle statistique de Markov à états cachés par mouvement cyclique possible est stocké en mémoire,
- la sélection se fait par l'analyse d'une compatibilité de la séquence de données d'observation avec chaque mouvement cyclique possible sur la base du modèle statistique qui est associé à ce mouvement cyclique, le procédé d'identification comportant en outre la fourniture d'une séquence d'états cachés du modèle statistique associé au mouvement cyclique sélectionné à partir de la séquence de données d'observation et du modèle statistique associé au mouvement cyclique sélectionné.
De façon optionnelle, la sélection comporte une comparaison de probabilités relatives aux mouvements cycliques possibles connaissant la séquence de données d'observation, les probabilités étant estimées sur la base des modèles statistiques stockés.
De façon optionnelle également, la fourniture de ladite séquence d'états cachés est réalisée par application de l'algorithme de Viterbi.
De façon optionnelle également, le procédé d'identification tel que défini ci- dessus comporte en outre le calcul de paramètres statistiques ou de comptage de ladite séquence d'états cachés fournie.
De façon optionnelle également, chaque modèle statistique de Markov à états cachés relatif à un mouvement cyclique possible étant un modèle cyclique dans lequel un cycle orienté d'états cachés est imposé, les paramètres statistiques ou de comptage calculés comportent au moins l'un des éléments de l'ensemble constitué d'un nombre de cycles d'états cachés dans ladite séquence d'états cachés fournie, des durées de chaque cycle, d'une moyenne des durées de chaque cycle, d'une variance des durées de chaque cycle et d'une durée de pause dans un cycle.
II est enfin également proposé un programme d'ordinateur téléchargeable depuis un réseau de communication et/ou enregistré sur un support lisible par ordinateur et/ou exécutable par un processeur, comprenant des instructions pour l'exécution des étapes d'un procédé d'identification tel que défini ci-dessus, lorsque ledit programme est exécuté sur un ordinateur. L'invention sera mieux comprise à l'aide de la description qui va suivre, donnée uniquement à titre d'exemple et faite en se référant aux dessins annexés dans lesquels :
- la figure 1 représente schématiquement la structure générale d'un dispositif d'identification selon un mode de réalisation de l'invention,
- la figure 2 illustre un exemple de modèle statistique de Markov à états cachés présentant des contraintes de transitions entre états cachés formant un cycle et pouvant être pris en compte par le dispositif d'identification de la figure 1 ,
- la figure 3 illustre une utilisation particulière du dispositif d'identification de la figure 1 ,
- la figure 4 illustre les étapes successives d'un procédé d'identification mis en œuvre par le dispositif de la figure 1 , et
- la figure 5 illustre, à l'aide d'un diagramme, un résultat du procédé d'identification de la figure 4 obtenu sur la base d'un modèle statistique cyclique tel que celui de la figure 2.
Le dispositif 10 représenté sur la figure 1 est un dispositif d'identification d'un mouvement cyclique parmi un ensemble de mouvements cycliques possibles d'un système physique observé par au moins un capteur de mouvement. Il comporte à cet effet un module d'observation 12, un module de traitement 14 et un module d'interface 16.
Le module d'observation 12 comporte un ou plusieurs capteurs représentés par l'unique référence 18 pour l'observation du système physique.
De façon non limitative, quelques exemples de capteurs et de situations observables à l'aide de ces capteurs sont donnés :
- le capteur 18 peut par exemple comporter un capteur de mouvements à un, deux ou trois axes de mesure, notamment un accéléromètre 3D porté par une personne, pour l'identification d'un mouvement cyclique de cette personne, par exemple dans le cadre d'une activité de marche, de course ou de nage de cette personne,
- plus généralement, il peut comporter un capteur de mouvements pour la détermination de l'activité d'un système mobile dans un ensemble d'activités répétitives ou cycliques possibles,
- le capteur de mouvement peut comporter un accéléromètre, un gyromètre ou un magnétomètre, - etc.
Le capteur 18 peut aussi comporter plusieurs capteurs fournissant chacun des observations qui, combinées, permettent d'envisager de détecter des mouvements cycliques plus complexes.
II effectue des mesures sur le système physique pour fournir au moins un signal d'observation, transmis sous la forme de séquences de données d'observation, dites séquences d'observation, au module de traitement 14. Les données d'observation peuvent être directement issues d'un échantillonnage du signal d'observation ou obtenues après un ou plusieurs traitements, notamment un ou plusieurs filtrages, de ce signal. On comprend ainsi que les données d'observation peuvent être mono ou multivaluées, y compris lorsque l'on ne dispose que d'un seul capteur 18.
Le module de traitement 14 est un circuit électronique, par exemple celui d'un ordinateur. Il comporte des moyens de stockage 20, par exemple une mémoire de type RAM, ROM ou autre, dans lesquels sont stockés les paramètres de plusieurs modèles statistiques de Markov à états cachés.
Chaque mouvement cyclique S-1 , S-N prévu pour être détectable par le dispositif de détection 10 à l'aide du capteur 18 est modélisé par un modèle statistique de Markov à état cachés correspondant noté HMM-1 , HMM-N. Par exemple, si le mouvement cyclique à identifier est un type de nage, un premier modèle HMM-1 peut correspondre à la brasse, un deuxième modèle HMM-2 peut correspondre au crawl, un troisième modèle HMM-3 peut correspondre au dos crawlé, etc.
L'un quelconque des modèles statistiques de Markov à état cachés stockés, noté HMM-n et modélisant le mouvement cyclique S-n, est défini par les paramètres suivants :
- Cn, le nombre d'états cachés de ce modèle HMM-n,
- ττι , TTCn, les Cn probabilités initiales, indépendantes de toute observation, de chaque état caché de ce modèle HMM-n,
- (ai,j)1<ij<cn, la matrice des probabilités de transition de chaque état caché i vers chaque autre état caché j de ce modèle HMM-n, et
- pour chaque état caché, les paramètres d'une loi de probabilité de l'observation fournie à chaque instant par le capteur.
A titre d'exemple non limitatif et pour simplifier les notations, la loi de probabilité de chaque état caché i du modèle HMM-n peut être choisie dans la famille des lois normales. Dans ce cas, elle est définie par son espérance μηί et sa variance ∑n Lorsque les données fournies par le capteur 18 sont multivaluées, μηί est un vecteur comportant autant de composantes et∑n{ une matrice comportant autant de lignes et de colonnes que de valeurs fournies à chaque instant.
Par ailleurs, certaines contraintes peuvent être imposées dans le modèle statistique HMM-n, notamment des contraintes portant sur les transitions ,,] d'un état caché à un autre dont certaines peuvent être interdites. Ainsi, dans le cas où les Cn états cachés du modèle HMM-n représentent des sous-mouvements élémentaires successifs et ordonnés, incluant au moins un cycle caractéristique d'une activité cyclique répétitive ou pseudopériodique, le modèle HMM-n peut être lui-même de type cyclique.
Un exemple de modèle HMM-n cyclique à trois états cachés cycliques K2, K3, K4 et cinq états cachés au total K1 à K5 est illustré sur la figure 2. Il est adapté à la modélisation d'une activité physique de personne, détectable à l'aide d'un capteur accélérométrique, la plupart de ces activités étant périodiques ou pseudopériodiques. Par exemple la marche ou la nage comportent des successions de sous- mouvements, respectivement des membres et de la tête, qui se répètent. Le premier état K1 représente l'engagement de l'activité périodique ou pseudopériodique considérée (par exemple une poussée sur le bord d'un bassin dans le cas d'une nage), les trois états successifs K2, K3 et K4 représentent la phase périodique ou pseudopériodique de l'activité proprement dite, et l'état K5, la fin ou sortie de l'activité.
Ainsi, les paramètres de ce modèle de Markov à cinq états cachés correspondant sont contraints de la façon suivante :
- "Π"! = 1 , ττ2 = 0, π3 = 0, π4 = 0, π5 = 0, (l'activité considérée commence nécessairement par sa phase d'engagement),
- V i,j au = 0, sauf : a1 t1 = 1 -εΐ 5 a^2 = ε1 ; a2,2 = 1 -ε22, a2,3 = ε2, a2,5 = δ2, a3,3 = 1 -ε33, a3 4 = ε3, a3 5 = δ3, a4i4 = 1 -ε44, a4 2 = ε4, a4 5 = δ4, 35 5 = 1 .
Plus généralement, un modèle HMM-n cyclique à Cn états cachés dont Cn-2 sont cycliques est contraint de la façon suivante :
- TT-I = 1 , V i>1 ττ, = 0,
- V i,j a,j = 0, sauf :
• ai ,i = 1 -ει , a1 2 = £i , où £i e ]0,1 [, • V i, 1 <i<(Cn-1 ) : au = 1 -εΓδί, au+1 = ε,,
Figure imgf000010_0001
= δ, où ε,,δ, e ]0,1 [2 et
Figure imgf000010_0002
• a.Cn-1 ,Cn-1 = 1 ^Cn-1 "Ôcn-1 , 3θη-1 ,2 = εα>1 , 3cn-1 ,Cn = δα>1 , 3cn,Cn = 1 , OU ε-ι ,δοη-ι e ]0,1 [2 et ε-ι +δοη-ι≤ 1 - A titre d'exemple concret, en fonction du capteur utilisé et de sa position, une nage de type brasse pourrait être représentée par un modèle cyclique à cinq états cachés cycliques (K2, K3, K4, K5, K6), un état (K1 ) d'engagement en amont du cycle et un état (K7) de sortie en aval du cycle. Chaque état du cycle correspondrait à l'un des cinq sous-mouvements successifs suivants de la brasse :
- K2 : bras tendus vers l'avant, mains à l'horizontale, jointes et les pouces collés ; la tête est sous l'eau, rentrée sous les bras, le regard vers le fond ; le nageur est en phase d'expiration,
- K3 : les bras s'écartent largement, les paumes dirigées vers l'extérieur, doigts serrés, pour former un angle de 45° par rapport à l'axe tête / pieds ; vers la fin du mouvement, les paumes s'orientent vers le fond, pour faciliter la sortie de la tête et des épaules de l'eau,
- K4 : les bras effectuent leur phase de retour au niveau du thorax,
- K5 : en fin de retour, les mains se joignent de nouveau, la tête sort de l'eau, le nageur inspire très rapidement, et
- K6 : retour à l'état K2 : les bras fléchis entrent en extension, les mains sont jointes ; la tête se place sous les bras, le menton est rentré.
La mémoire 20 peut en outre stocker, en association avec chaque modèle HMM-n, une ou plusieurs séquences d'apprentissage L-n. Chaque séquence d'apprentissage du modèle HMM-n est en fait une séquence d'observation fournie par le capteur 18, mais dont il est connu qu'elle a été extraite de l'observation du système physique alors qu'il reproduisait le mouvement cyclique S-n.
La constitution d'une base de séquences d'apprentissage peut par exemple s'obtenir par exécution d'un procédé d'observation tel que celui décrit dans la demande de brevet FR 2 943 554. Elle peut aussi s'obtenir de façon empirique.
Une séquence d'apprentissage L-n peut être traitée dès réception par le module de traitement 14, ou bien stockée en mémoire 20 en relation avec le modèle HMM-n en vue d'un traitement ultérieur, pour une configuration ou reconfiguration du dispositif d'identification 10 par mise à jour de paramètres du modèle HMM-n, comme cela est par exemple détaillé dans la demande de brevet français publiée sous le numéro FR 2 964 223. Le module de traitement 14 comporte en outre un calculateur 22, par exemple une unité centrale d'ordinateur munie d'un microprocesseur 24 et d'un espace de stockage d'au moins un programme d'ordinateur 26. Ce calculateur 22, et plus particulièrement le microprocesseur 24, est relié au capteur 18 et à la mémoire 20.
Le programme d'ordinateur 26 remplit trois principales fonctions illustrées par des modules 28, 30 et 32 sur la figure 1 .
La première fonction, remplie par le module d'identification 28, par exemple sous la forme d'au moins une boucle d'instructions, est une fonction d'identification d'un mouvement cyclique que reproduit le système physique, sur réception d'une séquence d'observation O(0 : M-1 ) fournie par le capteur 18. Cette fonction sera détaillée en référence à la figure 4.
Plus précisément, le module d'identification 28 comporte un premier module 28A d'identification d'un type du mouvement cyclique parmi plusieurs types possibles. Ce premier module 28A est programmé pour sélectionner l'un des mouvements cycliques possibles S-1 , S-N par l'analyse d'une compatibilité de la séquence d'observation 0(0 : M-1 ) avec chaque mouvement cyclique possible sur la base du modèle statistique qui est associé à ce mouvement cyclique. Cette analyse de compatibilité comporte par exemple une comparaison de probabilités relatives à ces mouvements cycliques possibles connaissant la séquence d'observation, les probabilités étant estimées sur la base des modèles statistiques stockés HMM-1 ,
HMM-N. La résolution de cette sélection à l'aide de modèles statistiques de Markov à états cachés est bien connue et fait partie des trois grandes classes de problèmes résolus par les modèles de Markov cachés, telles que mentionnées dans l'article de L. Rabiner, intitulé "A tutorial on Hidden Markov Models and selected applications in speech récognition," Proceedings of the IEEE, vol. 77, no. 2, pp. 257-286, février 1989. Il s'agit de la première classe de problèmes mentionnée dans cet article en page 261 et dont la résolution est détaillée en pages 262 et 263. Selon cette première classe de problèmes, on souhaite calculer la probabilité d'obtenir la séquence d'observation 0(0 : M-1 ) pour chaque mouvement cyclique possible connaissant le modèle associé puis on sélectionne le mouvement cyclique produisant la probabilité la plus élevée. Pour le mouvement cyclique S-n et en notant X(0 : M-1 ) une séquence quelconque d'états cachés du modèle statistique correspondant à S-n, cette probabilité s'écrit : Prs_n (O(0 : M - 1)) = X Prs_n (θ(θ : M - 1), X (θ : M - 1))
M-i , cette
=∑Prs_„ (X(0)) Prs_„ (0(0 Χ(0))Π Prs_„ (O(m)|x(m)) Prs_„ (X(m)|x(m - 1)) expression pouvant se simplifier et se calculer à l'aide des paramètres connus du modèle de Markov correspondant.
Plus précisément également, le module d'identification 28 comporte un second module 28B d'analyse temporelle du mouvement cyclique sélectionné par le premier module 28A. Ce second module 28B est programmé pour fournir une séquence d'états cachés X(0 : M-1 ) du modèle statistique associé au mouvement cyclique sélectionné à partir de la séquence d'observation et du modèle statistique associé au mouvement cyclique sélectionné. La résolution de cette fourniture d'une séquence d'états cachés X(0 : M-1 ) à l'aide d'un modèle statistique de Markov à états cachés est bien connue et fait également partie des trois grandes classes de problèmes résolus par les modèles de Markov cachés, telles que mentionnées dans l'article de L. Rabiner mentionné précédemment. Il s'agit de la deuxième classe de problèmes mentionnée dans cet article en page 261 et dont la résolution est détaillée en pages 263 et 264. Selon cette deuxième classe de problèmes, on souhaite fournir la séquence d'états cachés X(0 : M-1 ) correspondant le mieux, selon un certain critère d'optimalité, à la séquence d'observation X(0 : M-1 ) connaissant le modèle statistique de Markov sélectionné pour cette séquence d'observation. Plusieurs solutions sont connues pour la résolution de cette deuxième classe de problèmes. L'une d'entre elles consiste à appliquer l'algorithme de Viterbi tel que décrit dans l'article de L. Rabiner mentionné précédemment. A partir de la séquence d'états cachés fournie de cette manière, appelée également chemin de Viterbi, le second module 28B d'analyse temporelle est en outre programmé pour calculer des paramètres statistiques ou de comptage. Par exemple, compte tenu du caractère cyclique des modèles statistiques de Markov à états cachés HMM-1 , HMM-N, ces paramètres statistiques ou de comptage peuvent comporter un nombre de cycles d'états cachés dans la séquence d'états cachés fournie, les durées de chaque cycle, une moyenne des durées de chaque cycle, une variance des durées de chaque cycle, une durée de pause dans un cycle, etc. L'étude de ces paramètres statistiques ou de comptage issus du chemin de Viterbi permet alors d'accéder à une identification plus précise du mouvement cyclique identifié. Dans le cas de nages, on peut ainsi par exemple déterminer si celle-ci est pratiquée de façon sportive ou dilettante, de façon régulière ou non, avec ou sans erreurs, avec ou sans pauses. La deuxième fonction, remplie par le module d'enregistrement 30, par exemple sous la forme d'une boucle d'instructions, est une fonction d'enregistrement, dans la mémoire 20, d'une séquence d'observation en relation avec l'un des mouvements cycliques possibles S-1 , S-N. Cette séquence d'observation devient alors une séquence d'apprentissage à utiliser pour configurer ou reconfigurer le dispositif d'identification 10.
La troisième fonction, remplie par le module de configuration 32, par exemple sous la forme d'une boucle d'instructions, est une fonction de configuration du dispositif d'identification 10 par mise à jour des paramètres d'au moins un modèle statistique HMM-n stocké en mémoire 20 à l'aide d'une séquence d'apprentissage ou d'un ensemble de séquences d'apprentissage correspondant L-n. Un mode de réalisation de cette fonction est par exemple décrit dans la demande de brevet FR 2 964 223 et ne sera pas détaillé. Il peut cependant avantageusement être adapté en fonction des contraintes spécifiques imposées par les modèles cycliques.
Pour sélectionner quelle fonction le module de traitement 14 doit remplir, le module d'interface 16 peut comporter un sélecteur de mode 34 commandé par un utilisateur, notamment la personne portant le dispositif d'identification 10 elle-même, lorsque le système physique observé est une personne.
Dans un mode de réalisation simple, il peut être considéré que le dispositif d'identification 10 fonctionne par défaut en mode d'identification, exécutant ainsi le module d'identification 28.
Sur commande de l'utilisateur via le sélecteur de mode 34, le dispositif d'identification 10 peut momentanément passer en mode d'enregistrement, lorsqu'une séquence d'observation associée à un mouvement cyclique connu reproduit par le système physique observé est fournie par le capteur 18 et doit être enregistrée comme séquence d'apprentissage dans la mémoire 20. Le dispositif d'identification peut alors comporter une interface d'enregistrement 36, à l'aide de laquelle l'utilisateur définit la séquence d'observation (par exemple en marquant son début et sa fin) et l'associe à l'un des mouvements cycliques possibles. L'interface d'enregistrement 36 peut comporter, de façon classique, un écran et/ou des moyens de saisie.
Sur commande de l'utilisateur via le sélecteur de mode 34 également, le dispositif d'identification 10 peut momentanément passer en mode de configuration, lorsque l'utilisateur estime disposer de suffisamment de séquences d'apprentissage en mémoire 20 pour améliorer l'adaptation du dispositif de détection 10 au système physique observé.
On notera que les modules d'observation 12, de traitement 14 et d'interface 16 sont structurellement séparables. Ainsi le dispositif d'identification 10 peut être conçu d'un seul tenant ou en plusieurs éléments matériels distincts reliés entre eux par des moyens de transmission de données avec ou sans fil. En particulier, les modules de traitement 14 et éventuellement d'interface 16 peuvent être mis en œuvre par ordinateur. Seul le module d'observation 12 est nécessairement au voisinage voire au contact du système physique observé puisqu'il comporte le ou les capteurs.
Sur la figure 3, un mode de réalisation particulièrement compact est illustré, pour une application d'identification d'un mouvement cyclique d'une personne 40. Selon ce mode de réalisation, le dispositif d'identification 10 est tout entier intégré dans un boîtier 42 porté par la personne. Le capteur est par exemple un accéléromètre 3D et les mouvements cycliques observés sont par exemple des types de nages. Pour une telle application d'identification de différentes nages (brasse, crawl, ...), le boîtier 42 est par exemple fermement maintenu à un bras de la personne 40 au moyen d'un bracelet 44, de sorte que le dispositif de détection 10 est porté tel une montre. En variante (non illustrée), le boîtier 42 pourrait être maintenu sur le front de la personne 40 au moyen d'un bandeau. Enfin, pour une application d'identification de marche, de course de fond ou de sprint, le boîtier 42 pourrait être maintenu sur l'une des jambes de la personne 40.
La figure 4 illustre les étapes successives d'un procédé de configuration du dispositif 10 et d'identification de séquences d'observation à l'aide du dispositif 10 une fois configuré.
Au cours d'une première étape 100, une base de séquences d'apprentissage est constituée. Elle peut être constituée par exécution du module d'enregistrement 30 et/ou par exécution d'un procédé d'observation tel que celui décrit dans la demande de brevet FR 2 943 554. Dans cette base, une séquence d'apprentissage est en fait une séquence d'observation en relation avec l'un des mouvements cycliques possibles S-1 , S-N.
Comme indiqué précédemment, les données d'une séquence d'observation peuvent être directement issues d'un échantillonnage du signal d'observation fourni par le capteur 18 ou obtenues après un ou plusieurs traitements, notamment un ou plusieurs filtrages, de ce signal. Si un traitement supplémentaire est jugé nécessaire sur toute séquence d'observation avant de la confronter aux modèles statistiques cycliques HMM-1 , HMM-N, notamment pour en extraire une séquence de caractéristiques particulières, alors ce traitement supplémentaire peut être exécuté par le calculateur 22 lors d'une étape optionnelle 102.
Ensuite, lors d'une étape 104, le dispositif 10 est configuré ou reconfiguré à l'aide de la base des séquences d'apprentissage. L'exécution de cette étape ne sera pas détaillée. Comme indiqué précédemment, cela peut se faire par une adaptation de l'enseignement divulgué dans la demande de brevet FR 2 964 223. En variante, cette étape peut également être exécutée de façon empirique et non reconfigurable. Les modèles statistiques cycliques HMM-1 , HMM-N sont ainsi à jour et exploitables.
Les étapes 100 à 104 détaillées ci-dessus permettent la configuration du dispositif d'identification 10 de manière à le rendre opérationnel et peuvent être réitérées aussi souvent que souhaité.
Le procédé d'identification proprement dit mis en œuvre par le dispositif 10, et même plus précisément par son module d'identification 28, comporte une étape 200 de réception, par le calculateur 22 du module de traitement 14, d'une séquence d'observation du système physique fournie par le capteur 18.
Si un traitement supplémentaire est jugé nécessaire sur la séquence d'observation reçue avant de la confronter aux modèles statistiques cycliques HMM- 1 , HMM-N, notamment pour en extraire une séquence de caractéristiques particulières, alors ce traitement supplémentaire peut être exécuté par le calculateur 22 lors d'une étape optionnelle 202 identique à l'étape 102
Ensuite, au cours d'une étape 204 exécutée par le premier module 28A du module d'identification 28, la compatibilité de la séquence d'observation avec chaque modèle statistique cyclique HMM-n est estimée, comme indiqué précédemment lors de la description du premier module 28A. Le modèle statistique cyclique HMM-i maximisant les probabilités calculées est sélectionné et le mouvement cyclique correspondant est identifié.
Enfin, au cours d'une étape 206 exécutée par le second module 28B du module d'identification 28, sur la base du modèle statistique cyclique HMM-i sélectionné à l'étape précédente, la séquence d'états cachés représentant au mieux la séquence d'observation est calculée et fournie en sortie du calculateur 22, comme indiqué précédemment lors de la description du second module 28B, c'est-à-dire par application de l'algorithme de Viterbi tel que décrit dans l'article de L. Rabiner mentionné précédemment.
Compte tenu des contraintes de cycle imposées dans le modèle statistique cyclique HMM-i sélectionné, la séquence d'états cachés obtenue reproduit ces contraintes et caractérise ainsi finement la séquence des sous-mouvements du mouvement cyclique identifié. Elle peut alors être affichée sur un écran, par exemple un écran du dispositif d'identification 10 s'il en comporte un, et être statistiquement analysée. En particulier, des paramètres statistiques ou de comptage tels que mentionnés précédemment peuvent être évalués et éventuellement affichés.
La figure 5 illustre l'affectation d'états cachés aux échantillons d'une séquence d'observation d'une activité cyclique telle qu'une nage, sur la base d'un modèle cyclique sélectionné par le dispositif d'identification 10 (étape 204) à un état d'engagement (état 1 ) et trois états cycliques (états 2, 3 et 4) tel que celui de la figure 2. La séquence d'observation échantillonnée est illustrée par la courbe C1 , tandis que le chemin de Viterbi correspondant, fourni par le dispositif d'identification 10 (étape 206), est illustré par la courbe C2. L'analyse statistique du chemin de Viterbi C2 permet d'analyser ses irrégularités de cycles, leur nombre, leur rapidité, etc.
Il apparaît clairement qu'un dispositif d'identification tel que celui décrit précédemment permet une identification et une analyse fine des mouvements cycliques reproduits par un système physique observé. En particulier, le fait de fournir le chemin de Viterbi associé à une séquence d'observation dont on a identifié le mouvement cyclique qu'elle reproduit, permet d'accéder simplement et avec une précision suffisante à l'analyse temporelle et statistique des sous-mouvements de ce mouvement identifié.
On notera par ailleurs que l'invention n'est pas limitée aux modes de réalisation décrits précédemment.
Notamment, le dispositif de détection peut être conçu sous des formes très diverses puisque ses modules d'observation 12, de traitement 14 et d'interface 16 sont séparables. Sa conception peut ainsi s'adapter à l'application envisagée et au système physique observé.
Il apparaîtra plus généralement à l'homme de l'art que diverses modifications peuvent être apportées aux modes de réalisation décrits ci-dessus, à la lumière de l'enseignement qui vient de lui être divulgué. Dans les revendications qui suivent, les termes utilisés ne doivent pas être interprétés comme limitant les revendications aux modes de réalisation exposés dans la présente description, mais doivent être interprétés pour y inclure tous les équivalents que les revendications visent à couvrir du fait de leur formulation et dont la prévision est à la portée de l'homme de l'art en appliquant ses connaissances générales à la mise en œuvre de l'enseignement qui vient de lui être divulgué.

Claims

REVENDICATIONS
1 . Dispositif (10) d'identification d'un type de mouvement cyclique parmi un ensemble de types de mouvements cycliques possibles d'un système physique (40) observé par au moins un capteur de mouvement (18), comportant :
au moins un capteur de mouvement (18) pour la fourniture d'une séquence de données d'observation du système physique (40), des moyens (20) de stockage d'au moins un modèle statistique de Markov à états cachés (HMM-1 , HMM-N),
- un calculateur (22), relié au capteur (18) et aux moyens de stockage
(20), programmé (28A) pour analyser la séquence de données d'observation et sélectionner l'un des types de mouvements cycliques possibles sur la base du modèle statistique stocké, caractérisé en ce que :
- les moyens de stockage (20) comportent au moins un modèle statistique de Markov à états cachés par type de mouvement cyclique possible,
le calculateur (22) est programmé (28A) pour analyser une compatibilité de la séquence de données d'observation avec chaque type de mouvement cyclique possible sur la base du modèle statistique qui est associé à ce type de mouvement cyclique, le calculateur (22) est en outre programmé (28B) pour fournir une séquence d'états cachés (C2) du modèle statistique (HMM-i) associé au type de mouvement cyclique sélectionné à partir de la séquence de données d'observation et du modèle statistique associé au type de mouvement cyclique sélectionné.
2. Dispositif d'identification (10) selon la revendication 1 , dans lequel chaque modèle statistique de Markov à états cachés (HMM-1 , HMM-N) relatif à un type de mouvement cyclique possible est un modèle cyclique représenté par un graphe orienté dans lequel un cycle orienté (K2, K3, K4) d'états cachés est imposé.
3. Dispositif d'identification (10) selon la revendication 1 ou 2, dans lequel chaque état caché (K1 , K2, K3, K4, K5) de chaque modèle statistique (HMM-1 , HMM-N) des moyens de stockage (20) correspond à un sous-mouvement type prédéterminé du type de mouvement cyclique auquel est associé ce modèle statistique.
4. Dispositif d'identification (10) selon les revendications 2 et 3, dans lequel, pour chaque modèle statistique (HMM-1 , HMM-N) :
un état caché (K1 ) correspondant à un sous-mouvement type de démarrage du type de mouvement cyclique auquel est associé ce modèle statistique est représenté par un nœud du graphe orienté correspondant situé en amont dudit cycle orienté, et un état caché (K5) correspondant à un sous-mouvement type d'arrêt du type de mouvement cyclique auquel est associé ce modèle statistique est représenté par un nœud du graphe orienté correspondant situé en aval dudit cycle orienté.
5. Procédé d'identification d'un type de mouvement cyclique parmi un ensemble de types de mouvements cycliques possibles d'un système physique (40) observé par au moins un capteur, comportant :
la réception (200) d'une séquence de données d'observation du système physique (40) fournie par au moins un capteur (18), la sélection (204) par un calculateur (22) de l'un des types de mouvements cycliques possibles par analyse de la séquence de données d'observation sur la base d'au moins un modèle statistique de Markov à états cachés (HMM-1 , HMM-N) stocké en mémoire, caractérisé en ce que :
au moins un modèle statistique de Markov à états cachés par type de mouvement cyclique possible est stocké en mémoire (20), la sélection (204) se fait par l'analyse d'une compatibilité de la séquence de données d'observation avec chaque type de mouvement cyclique possible sur la base du modèle statistique qui est associé à ce type de mouvement cyclique,
et en ce qu'il comporte en outre la fourniture (206) d'une séquence d'états cachés (C2) du modèle statistique (HMM-i) associé au type de mouvement cyclique sélectionné à partir de la séquence de données d'observation et du modèle statistique associé au type de mouvement cyclique sélectionné.
6. Procédé d'identification selon la revendication 5, dans lequel la sélection (204) comporte une comparaison de probabilités relatives aux types de mouvements cycliques possibles connaissant la séquence de données d'observation, les probabilités étant estimées sur la base des modèles statistiques stockés (HMM-1 HMM-N).
7. Procédé d'identification selon la revendication 5 ou 6, dans lequel la fourniture (206) de ladite séquence d'états cachés (C2) est réalisée par application de l'algorithme de Viterbi.
8. Procédé d'identification selon l'une quelconque des revendications 5 à 7, comportant en outre le calcul (206) de paramètres statistiques ou de comptage de ladite séquence d'états cachés (C2) fournie.
9. Procédé d'identification selon la revendication 8, dans lequel, chaque modèle statistique de Markov à états cachés (HMM-1 , HMM-N) relatif à un type de mouvement cyclique possible étant un modèle cyclique dans lequel un cycle orienté (K2, K3, K4) d'états cachés est imposé, les paramètres statistiques ou de comptage calculés comportent au moins l'un des éléments de l'ensemble constitué d'un nombre de cycles d'états cachés dans ladite séquence d'états cachés (C2) fournie, des durées de chaque cycle, d'une moyenne des durées de chaque cycle, d'une variance des durées de chaque cycle et d'une durée de pause dans un cycle.
10. Programme d'ordinateur (26) téléchargeable depuis un réseau de communication et/ou enregistré sur un support lisible par ordinateur et/ou exécutable par un processeur (24), caractérisé en ce qu'il comprend des instructions (28A, 28B) pour l'exécution des étapes d'un procédé d'identification selon l'une quelconque des revendications 5 à 9, lorsque ledit programme est exécuté sur un ordinateur.
PCT/FR2013/050568 2012-03-20 2013-03-18 Dispositif et procede d'identification d'un mouvement cyclique, programme d'ordinateur correspondant WO2013140075A1 (fr)

Priority Applications (2)

Application Number Priority Date Filing Date Title
EP13715344.1A EP2828797A1 (fr) 2012-03-20 2013-03-18 Dispositif et procede d'identification d'un mouvement cyclique, programme d'ordinateur correspondant
US14/386,549 US9952043B2 (en) 2012-03-20 2013-03-18 Device and method for identifying a cyclic movement and corresponding computer program

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR1252493 2012-03-20
FR1252493A FR2988501B1 (fr) 2012-03-20 2012-03-20 Dispositif et procede d'identification d'un mouvement cyclique, programme d'ordinateur correspondant

Publications (1)

Publication Number Publication Date
WO2013140075A1 true WO2013140075A1 (fr) 2013-09-26

Family

ID=48083516

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/FR2013/050568 WO2013140075A1 (fr) 2012-03-20 2013-03-18 Dispositif et procede d'identification d'un mouvement cyclique, programme d'ordinateur correspondant

Country Status (4)

Country Link
US (1) US9952043B2 (fr)
EP (1) EP2828797A1 (fr)
FR (1) FR2988501B1 (fr)
WO (1) WO2013140075A1 (fr)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010083562A1 (fr) * 2009-01-22 2010-07-29 National Ict Australia Limited Détection d'activité
WO2010090867A2 (fr) * 2009-01-21 2010-08-12 SwimSense, LLC Système de surveillance de performance à états multiples
FR2943554A1 (fr) 2009-03-31 2010-10-01 Movea Systeme et procede d'observation d'une activite de nage d'une personne
FR2964223A1 (fr) 2010-08-31 2012-03-02 Commissariat Energie Atomique Procede de configuration d'un dispositif de detection a capteur, programme d'ordinateur et dispositif adaptatif correspondants

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010090867A2 (fr) * 2009-01-21 2010-08-12 SwimSense, LLC Système de surveillance de performance à états multiples
WO2010083562A1 (fr) * 2009-01-22 2010-07-29 National Ict Australia Limited Détection d'activité
FR2943554A1 (fr) 2009-03-31 2010-10-01 Movea Systeme et procede d'observation d'une activite de nage d'une personne
FR2964223A1 (fr) 2010-08-31 2012-03-02 Commissariat Energie Atomique Procede de configuration d'un dispositif de detection a capteur, programme d'ordinateur et dispositif adaptatif correspondants

Non-Patent Citations (7)

* Cited by examiner, † Cited by third party
Title
ARASH ALI AMINI AND HAO ZHANG: "HMM Based Video Classification Using Simple Features", 1 January 2008 (2008-01-01), XP002691026, Retrieved from the Internet <URL:http://www.eecs.berkeley.edu/~zhanghao/main/publications/subfolder/video_HMM_report.pdf> [retrieved on 20130121] *
BODO ROSENHAHN ET AL: "human Motion. Understanding, Modelling, Capture and Animation", 1 January 2008, SPRINGER, article "Chapter 3 : Recognition of Action as a Bayesian Parameter Estimation Problem over Time", pages: 57 - 79, XP002691033 *
HSI-LIN CHEN ET AL: "A Hidden Markov Model-based approach for recognizing swimmer's behaviors in swimming pool", MACHINE LEARNING AND CYBERNETICS (ICMLC), 2010 INTERNATIONAL CONFERENCE ON, IEEE, PISCATAWAY, NJ, USA, 11 July 2010 (2010-07-11), pages 2459 - 2465, XP031759889, ISBN: 978-1-4244-6526-2 *
L. RABINER: "A tutorial on Hidden Markov Models and selected applications in speech recognition", PROCEEDINGS OF THE IEEE, vol. 77, no. 2, February 1989 (1989-02-01), pages 257 - 286, XP002550447, DOI: doi:10.1109/5.18626
LAWRENCE R RABINER: "A Tutorial on Hidden Markov Models and selected Applications in Speech Recognition", PROCEEDINGS OF THE IEEE, IEEE. NEW YORK, US, vol. 77, no. 2, 1 February 1989 (1989-02-01), pages 257 - 286, XP002550447, ISSN: 0018-9219, DOI: 10.1109/5.18626 *
O. THOMAS ET AL: "Wearable-Sensor Activity Analysis UsingSemi-Markov Models with a Grammar", 5 November 2008 (2008-11-05), XP002691025, Retrieved from the Internet <URL:http://eprints.pascal-network.org/archive/00007400/01/3547_Wearable_s_1.pdf> [retrieved on 20130121] *
SERGIOS THEODORIDIS ET KONSTANTINOS KOUTROUMBAS: "Pattern Recognition, 4th ed.", 1 January 2009, ACADEMIC PRESS, article "chapter 9: Context-Dependent Classification", pages: 521 - 565, XP002691024 *

Also Published As

Publication number Publication date
EP2828797A1 (fr) 2015-01-28
FR2988501A1 (fr) 2013-09-27
FR2988501B1 (fr) 2015-01-02
US9952043B2 (en) 2018-04-24
US20150073746A1 (en) 2015-03-12

Similar Documents

Publication Publication Date Title
EP2483758B1 (fr) Systeme et procede de reconnaissance de gestes
WO2006103240A1 (fr) Procédé d&#39;identification de visages à partir d&#39;images de visage, dispositif et programme d&#39;ordinateur correspondants
WO2013030508A1 (fr) Procédé de configuration d&#39;un dispositif de détection à capteur, programme d&#39;ordinateur et dispositif adaptatif correspondants
EP2423851B1 (fr) Procédé de configuration d&#39;un dispositif de détection à capteur, programme d&#39;ordinateur et dispositif adaptatif correspondants
EP2767882A1 (fr) Procédé de segmentation temporelle d&#39;un geste instrumenté, dispositif et terminal associés
EP3614306A1 (fr) Procédé de localisation et d&#39;identification de visage et de détermination de pose, à partir d&#39;une vue tridimensionnelle
WO2019110914A1 (fr) Extraction automatique d&#39;attributs d&#39;un objet au sein d&#39;un ensemble d&#39;images numeriques
WO2019186050A1 (fr) Dispositif informatique de detection de troubles du rythme cardiaque
EP2988249B1 (fr) Procédé de détermination, dans une image, d&#39;au moins une zone susceptible de représenter au moins un doigt d&#39;un individu
EP2638492A1 (fr) Dispositif de détection à capteur, procédé de détection et programme d&#39;ordinateur correspondants
EP3252563B1 (fr) Détermination d&#39;un contexte de mobilité d&#39;un utilisateur porteur d&#39;un équipement muni de capteurs inertiels
WO2014072535A1 (fr) Procede d&#39;identification
WO2013140075A1 (fr) Dispositif et procede d&#39;identification d&#39;un mouvement cyclique, programme d&#39;ordinateur correspondant
EP3797509B1 (fr) Traitement d&#39;un bruit impulsionnel dans une séquence vidéo
EP3770806A1 (fr) Procede de surveillance video du franchissement d&#39;une ligne par des personnes, programme d&#39;ordinateur et dispositif correspondants
EP4150574B1 (fr) Procédé de traitement d&#39;images
WO2018104626A1 (fr) Procede et dispositif d&#39;obtention d&#39;un systeme de labellisation d&#39;images
EP3491582B1 (fr) Procédé de comparaison d&#39;objets disposés au voisinage les uns des autres, et dispositif associé
EP4292013A1 (fr) Dispositif et procede de traitement de donnees videos pour detection du vivant
EP3022685B1 (fr) Procede d&#39;identification rapide d&#39;un objet biometrique durant la phase d&#39;acquisition et dispositif d&#39;identification pour la mise en oeuvre de ce procede
WO2024088981A1 (fr) Procédé de détection d&#39;un mouvement d&#39;un corps
WO2018046868A1 (fr) Procédé de reconnaissance de motif dans une pluralité de signaux
EP3770805A1 (fr) Procede d&#39;identification d&#39;une personne dans une video, par une signature visuelle de cette personne, programme d&#39;ordinateur et dispositif correspondants
FR3076030A1 (fr) Procede d&#39;optimisation de l&#39;apprentissage d&#39;une interface neuronale directe
FR2894352A1 (fr) Procede de saisie adaptative et entites associees.

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 13715344

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 2013715344

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 14386549

Country of ref document: US

NENP Non-entry into the national phase

Ref country code: DE