Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
STEP DETECTION TECHNIQUE
Document Type and Number:
WIPO Patent Application WO/2018/050986
Kind Code:
A1
Abstract:
The invention relates to a technique for step detection by a user device. This method comprises: - obtaining (E1) an acceleration signal from successive acceleration measurements along at least one axis in a reference frame of three orthogonal axes, in the form of successive samples; - processing said signal, in the course of which a current sample of the acceleration signal is saved (E5) when the absolute value of its amplitude is greater than a dynamic threshold dependent on a sliding average determined over a plurality of acceleration signal samples centred on said current sample, the saved samples forming a processed signal; - a search (E6-E7) in the processed signal for at least two samples, wherein the first sample takes an extreme value of a first type belonging to the group comprising a minimum and a maximum, and the second sample is the first sample found among the following samples that takes an extreme value of the second type, the second type belonging to said group and being distinct from the first type, a step being detected when said two samples are found.

Inventors:
FAURE JULIEN (FR)
FROISSARD GAÉTAN (FR)
Application Number:
PCT/FR2017/052328
Publication Date:
March 22, 2018
Filing Date:
September 04, 2017
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
ORANGE (FR)
International Classes:
G01C21/20; A63B24/00; G01C22/00
Domestic Patent References:
WO2015054702A12015-04-16
WO2015113915A12015-08-06
WO2011095842A12011-08-11
Other References:
NEIL ZHAO: "Full-Featured Pedometer Design Realized with 3-Axis Digital Accelerometer", ANALOG DIALOGUE 44-06, 4 June 2010 (2010-06-04), pages 1, XP055375518, Retrieved from the Internet [retrieved on 20170523]
Attorney, Agent or Firm:
LECOMTE, Isabelle (FR)
Download PDF:
Claims:
REVENDICATIONS

1. Procédé de détection de pas par un dispositif utilisateur (10, 11), solidaire d'un utilisateur, ledit procédé comprenant :

- une obtention (El) d'un signal d'accélération à partir de mesures d'accélération successives selon au moins un axe dans un repère de trois axes orthogonaux sous la forme d'échantillons successifs ;

- un traitement dudit signal, au cours duquel un échantillon courant du signal d'accélération est conservé (E5) lorsque la valeur absolue de son amplitude est supérieure à un seuil dynamique dépendant d'une moyenne glissante déterminée sur une pluralité d'échantillons du signal d'accélération centré sur ledit échantillon courant, les échantillons conservés formant un signal traité ;

- une recherche (E6-E7) dans le signal traité d'au moins deux échantillons, dans lesquels le premier échantillon prend une valeur extrême d'un premier type appartenant au groupe comprenant un minimum et un maximum, et le deuxième échantillon est le premier trouvé parmi les échantillons suivants prenant une valeur extrême du deuxième type, le deuxième type appartenant audit groupe et étant distinct du premier type, un pas étant détecté lorsque lesdits deux échantillons sont trouvés.

2. Procédé de détection selon la revendication 1, dans lequel, un échantillon du signal d'accélération est obtenu (E4) par soustraction de ladite moyenne glissante à une mesure d'accélération.

3. Procédé de détection selon la revendication 2, dans lequel un filtre passe-bas est appliqué (E3) à la mesure d'accélération préalablement à la détermination de ladite moyenne glissante. 4. Procédé de détection selon l'une quelconque des revendications 1 à 3, dans lequel un pas détecté est comptabilisé (El i) lorsqu'une moyenne glissante de durée de pas précédents est comprise entre une première et une deuxième valeurs seuil.

5. Procédé de détection selon l'une quelconque des revendications 1 à 4, dans lequel un pas détecté est comptabilisé lorsqu'une variance de durée de pas précédents est inférieure à une troisième valeur seuil.

6. Dispositif utilisateur (10, 11), destiné à être solidaire d'un utilisateur, ledit dispositif comprenant :

- un module d'obtention (112) d'un signal d'accélération à partir de mesures d'accélération successives selon au moins un axe dans un repère de trois axes orthogonaux sous la forme d'échantillons successifs ; - un module de détection (113), agencé pour :

traiter un signal d' accélération obtenu en conservant un échantillon courant du signal d'accélération lorsque la valeur absolue de son amplitude est supérieure à un seuil dynamique dépendant d'une moyenne glissante déterminée sur une pluralité d'échantillons du signal d'accélération centré sur ledit échantillon courant, les échantillons conservés formant un signal traité ;

rechercher dans le signal traité au moins deux échantillons, dans lesquels le premier échantillon prend une valeur extrême d'un premier type appartenant au groupe comprenant un minimum et un maximum, et le deuxième échantillon est le premier trouvé parmi les échantillons suivants prenant une valeur extrême du deuxième type, le deuxième type appartenant audit groupe et étant distinct du premier type, un pas étant détecté lorsque lesdits deux échantillons sont trouvés.

7. Programme pour un dispositif utilisateur, comprenant des instructions de code de programme destinées à commander l'exécution des étapes du procédé de détection selon l'une des revendications 1 à 5 mises en œuvre par le dispositif, lorsque ledit programme est exécuté par ledit dispositif.

8. Support d'enregistrement lisible par un dispositif utilisateur sur lequel est enregistré le programme selon la revendication 7.

Description:
Technique de détection de pas

L'invention se rapporte au domaine général des télécommunications.

L'invention concerne plus particulièrement une technique de détection de pas effectué par un utilisateur d'un dispositif. Ce dispositif est solidaire des déplacements de l'utilisateur et ainsi de l'utilisateur.

On constate actuellement un engouement pour des dispositifs ou des logiciels de suivi d'activité pour le sport ou la vie quotidienne. Ceux-ci visent à donner une estimation de l'activité de leur utilisateur. Une des activités qui peut être suivie est la marche ou la course représentées par les déplacements effectués sur une période temporelle ou bien sur un trajet et caractérisés par un nombre de pas effectué.

A titre d'exemple, le document brevet WO2011095842 décrit un dispositif inertiel permettant de détecter un pas d'un utilisateur de ce dispositif. Plus précisément, un pas est détecté à partir d'une mesure d'une accélération selon trois axes orthogonaux, effectuée par un capteur. Une valeur efficace, ou valeur RMS (pour « Root Mean Square »), est déterminée à partir de cette mesure d'accélération. Cette valeur efficace est ensuite comparée avec une valeur seuil, un pas étant détecté lorsque la valeur efficace est supérieure à cette valeur seuil.

Il a été constaté qu'un tel dispositif est particulièrement sensible aux conditions dans lesquelles la mesure d'accélération est effectuée. Une mauvaise fixation du capteur effectuant la mesure peut en effet conduire à une décision de détection d'un pas qui n'est pas correcte. Des mouvements de l'utilisateur, comme par exemple le fait de se lever d'une chaise, peuvent aussi entraîner de fausses détections. Du fait de ces fausses détections, le dispositif aura tendance à surévaluer l'activité.

Un des buts de l'invention est de remédier à des insuffisances/inconvénients de l'état de la technique et/ou d'y apporter des améliorations.

Selon un premier aspect, l'invention a pour objet un procédé de détection de pas par un dispositif utilisateur, solidaire d'un utilisateur. Le procédé comprend :

- une obtention d'un signal d'accélération à partir de mesures d'accélération successives selon au moins un axe dans un repère de trois axes orthogonaux sous la forme d'échantillons successifs ;

- un traitement dudit signal, au cours duquel un échantillon courant du signal d'accélération est conservé lorsque la valeur absolue de son amplitude est supérieure à un seuil dynamique dépendant d'une moyenne glissante déterminée sur une pluralité d'échantillons du signal d'accélération centré sur ledit échantillon courant, les échantillons conservés formant un signal traité ;

- une recherche dans le signal traité d'au moins deux échantillons, dans lesquels le premier échantillon prend une valeur extrême d'un premier type appartenant au groupe comprenant un minimum et un maximum, et le deuxième échantillon est le premier trouvé parmi les échantillons suivants prenant une valeur extrême du deuxième type, le deuxième type appartenant audit groupe et étant distinct du premier type, un pas étant détecté lorsque lesdits deux échantillons sont trouvés.

Le dispositif est porté par un utilisateur ou bien fixé à un utilisateur et est ainsi solidaire des déplacements de cet utilisateur.

Par détection d'un pas, on entend par la suite une détection d'un impact sur le sol. Cet impact est produit par le contact d'un pied pour un être humain ou d'une patte pour un animal sur le sol.

Le procédé de détection utilise ainsi un seuil dynamique, qui dépend directement de la moyenne glissante d'un signal d'accélération mesuré par un accéléromètre ou d'un signal d'accélération qui a été prétraité. Il est alors possible de détecter des pas dans des conditions de mouvement très différentes : marche, course, montée d'un escalier. Il est également possible de détecter des pas dans des conditions de mesure très différentes : fixation de accéléromètre instable, localisation variable (poche droite ou gauche d'un pantalon, sac à main). Par ailleurs, ce procédé permet de détecter des pas aussi bien d'humains que d'animaux.

Ce procédé de détection présente l'avantage de s'appuyer uniquement sur des mesures d'accélération fournies par un accéléromètre. Il ne nécessite pas de mesures fournies par un gyroscope, ce dernier étant très consommateur de ressources énergétiques. A titre d'exemple illustratif, la consommation énergétique d'un gyroscope est environ cent fois plus élevée que celle de accéléromètre seul.

Ainsi, le procédé de détection est particulièrement adapté pour être intégré dans un objet connecté, tel qu'une montre connectée, un bracelet connecté ou bien encore un collier connecté. Il peut également être exécuté sur un terminal mobile, tel qu'un « smartphone ».

Les différents modes ou caractéristiques de réalisation mentionnés ci-après peuvent être ajoutés indépendamment ou en combinaison les uns avec les autres, aux étapes du procédé de de détection tel que défini précédemment.

Selon une caractéristique particulière du procédé de détection, un échantillon du signal d'accélération est obtenu par soustraction de ladite moyenne glissante à une mesure d'accélération..

Des relevés de signaux d'accélération ont permis de constater que lorsque la vitesse moyenne, c'est-à-dire le rythme de l'utilisateur varie, le signal d'accélération n'oscille plus autour d'une valeur moyenne constante. Ceci est notamment le cas lors d'une accélération pendant une course ou bien lors d'un passage de la marche à la course à pied. Il est alors plus difficile de détecter un enchaînement d'un échantillon prenant une valeur maximale suivie d'un échantillon prenant une valeur minimale. Grâce à cette opération de centrage autour de la moyenne glissante, le signal d'accélération est centré quel que soit le rythme de l'utilisateur et la détection d'un enchaînement est facilitée. La détection d'un pas est ainsi améliorée lorsque le rythme de l'utilisateur varie.

Selon une caractéristique particulière du procédé de détection, un filtre passe-bas est appliqué à la mesure d'accélération préalablement à la détermination de ladite moyenne glissante..

Ce filtre passe bas permet d'éliminer du bruit et de supprimer des caractéristiques non désirables dans le signal d'accélération. Ce bruit et ces caractéristiques sont susceptibles de dégrader le signal d'accélération. Ils peuvent être introduits par accéléromètre en fonction de ses performances, d'une température d'utilisation, de vibration ou de changement de rythme instantané. Le filtrage passe-bas permet ainsi de lisser le signal d'accélération. Un tel filtre passe- bas est facilement intégrable dans un programme temps réel et nécessite peu de ressources de calcul. Le filtre passe-bas est par exemple un filtre d'ordre un.

Selon une caractéristique particulière du procédé de détection, un pas est comptabilisé lorsqu'une moyenne glissante de durée de pas précédents est comprise entre une première et une deuxième valeurs seuil.

Ceci permet d'écarter des pas dont les valeurs sont assimilées à des erreurs de détection, par exemple parce qu'ils ne correspondent pas à des valeurs courantes observées chez les humains ou les animaux. On peut citer par exemple les vibrations d'un moteur de voiture qui provoquent des accélérations suffisamment importantes pour être du même ordre de grandeur que des pas mais dont les caractéristiques fréquentielles (nombre d'oscillation par minute) sont très éloignées des valeurs de pas courantes.

Selon une caractéristique particulière du procédé de détection, cumulative ou alternative à la caractéristique précédente, un pas est comptabilisé lorsqu'une variance de durée de pas précédents est inférieure à une troisième valeur seuil.

Ceci permet d'écarter des pas dont les valeurs sont assimilées à des erreurs de détection, du fait d'une variabilité trop importante par rapport aux autres pas détectés précédemment. En effet, sur une courte période d'observation de quelques pas, nous pouvons considérer que l'utilisateur marche ou court à un rythme relativement régulier.

Selon un deuxième aspect, l'invention concerne également un dispositif utilisateur, destiné à être solidaire d'un utilisateur, ledit dispositif comprenant :

- un module d'obtention d'un signal d'accélération à partir de mesures d'accélération successives selon au moins un axe dans un repère de trois axes orthogonaux sous la forme d'échantillons successifs ;

- un module de détection, agencé pour :

traiter un signal d'accélération obtenu en conservant un échantillon courant du signal d'accélération lorsque la valeur absolue de son amplitude est supérieure à un seuil dynamique dépendant d'une moyenne glissante déterminée sur une pluralité d'échantillons du signal d'accélération centré sur ledit échantillon courant, les échantillons conservés formant un signal traité ;

rechercher dans le signal traité au moins deux échantillons, dans lesquels le premier échantillon prend une valeur extrême d'un premier type appartenant au groupe comprenant un minimum et un maximum, et le deuxième échantillon est le premier trouvé parmi les échantillons suivants prenant une valeur extrême du deuxième type, le deuxième type appartenant audit groupe et étant distinct du premier type, un pas étant détecté lorsque lesdits deux échantillons sont trouvés. Ce dispositif utilisateur peut bien sûr comporter en termes structurels les différentes caractéristiques relatives au procédé de détection tel que décrit précédemment, qui peuvent être combinées ou prises isolément. Ainsi, les avantages énoncés pour le procédé de détection selon le premier aspect sont transposables directement au dispositif utilisateur. Par conséquent, ils ne sont pas détaillés plus amplement.

Selon un troisième aspect, l'invention concerne un programme pour un dispositif utilisateur, comprenant des instructions de code de programme destinées à commander l'exécution des étapes du procédé de détection précédemment décrit mises en œuvre par le dispositif utilisateur, lorsque ce programme est exécuté par ce dispositif et un support d'enregistrement lisible par un dispositif sur lequel est enregistré un programme pour un dispositif.

Les avantages énoncés pour le procédé de détection selon le premier aspect sont transposables directement au programme pour un dispositif utilisateur et au support d' enregistrement.

La technique de détection sera mieux comprise à l'aide de la description suivante de modes de réalisation particuliers, en référence aux dessins annexés sur lesquels :

la figure 1 représente un environnement dans lequel est mis en œuvre le procédé de de détection dans un mode de réalisation particulier ;

la figure 2 représente un dispositif utilisateur selon un mode particulier de réalisation ;

la figure 3 illustre des étapes d'un procédé de détection mises en œuvre par un dispositif utilisateur selon un mode particulier de réalisation.

La figure 1 représente un environnement dans lequel est mis en œuvre le procédé de détection de pas lors d'un déplacement d'un dispositif utilisateur dans un mode de réalisation particulier. Le dispositif utilisateur est destiné à être solidaire d'un utilisateur : il peut être porté, fixé, ...Ainsi, le déplacement du dispositif utilisateur correspond à un déplacement de l'utilisateur duquel ce dispositif utilisateur est solidaire. Ce déplacement peut être de type marche, course, montée ou descente d'un escalier, ou toute combinaison de ces types de déplacement. Par utilisateur, on entend par la suite aussi bien un être humain qu'un animal. Par détection d'un pas, on entend par la suite une détection d'un impact sur le sol. Cet impact est produit par le contact d'un pied pour un être humain ou d'une patte pour un animal sur le sol.

L'environnement représenté comprend deux dispositifs utilisateur 10, 11 accédant à un réseau de communication 1 par l'intermédiaire d'un réseau d'accès mobile, non représenté sur la figure 1. Le réseau d'accès mobile correspond par exemple à un réseau de communication mobile de type GSM, EDGE, 3G, 3G+ ou 4G (également appelé LTE pour « Long Term Evolution »)... Dans le mode de réalisation représenté, les dispositifs utilisateur 10, 11 envoient des données relatives à une activité de l'utilisateur à un serveur 20. Ce serveur 20 est agencé pour fournir un service à partir des données reçues. Ce service peut correspondre par exemple à un service de santé, un service d'aide à la personne. Il est ici souligné que la technique de détection de pas ne nécessite pas cet accès au réseau de communication 1 pour être mise en œuvre. Les dispositifs utilisateur 10, 11 peuvent ainsi fonctionner en complète autonomie. Par ailleurs, dans un mode de réalisation particulier, les dispositifs utilisateur 10, 11 mémorisent les données relatives à une activité de l'utilisateur dans une mémoire de stockage locale, afin de les envoyer ultérieurement au serveur 20, par exemple lorsque le réseau de communication 1 est accessible.

Les dispositifs utilisateur 10 et 11 peuvent être tout type de terminaux permettant de transmettre des données relatives à une activité d'un utilisateur, tels qu'un téléphone portable, un téléphone intelligent (« smartphone » en anglais), une tablette, un objet connecté.

Dans l'exemple représenté sur la figure 1, le dispositif utilisateur 10 est un terminal de type « smartphone ».

Dans l'exemple représenté sur la figure 1, le dispositif utilisateur 11 est un objet connecté disposant d'un écran et de boutons d'interaction.

Ces deux dispositifs utilisateur comprennent chacun un capteur (ou obtiennent des données en provenance d'un capteur externe), agencé pour mesurer une accélération linéaire du dispositif utilisateur, et donc de l'utilisateur, dans un repère composé de trois axes orthogonaux notés x, y, z. Plus précisément, le capteur interne ou externe est agencé pour mesurer trois accélérations linéaires, chacune selon un des axes orthogonaux. Ce capteur est appelé par la suite accéléromètre trois axes. La figure 2 représente un dispositif utilisateur 10, 11 dans un mode particulier de réalisation. Le dispositif utilisateur 10, 11 comprend notamment :

- un processeur 110 pour exécuter des instructions de code de modules logiciels ;

- une zone mémoire 111, agencée pour mémoriser une application qui comprend des instructions de code pour mettre en œuvre les étapes du procédé de détection ;

- une mémoire de stockage, non représentée, agencée pour stocker des données utilisées lors de la mise en œuvre du procédé de détection, des données relatives à une activité de l'utilisateur ou bien encore des données résultant de la mise en œuvre du procédé de détection ; - un module d'obtention 112 d'un signal d'accélération à partir de mesures d'accélération successives selon au moins un axe dans un repère de trois axes orthogonaux sous la forme d'échantillons successifs ;

- un module de détection de pas 113.

Dans un mode de réalisation particulier, le module d'obtention 112 obtient le signal d'accélération d'un capteur externe comprenant un accéléromètre trois axes. Ce capteur externe est solidaire du dispositif utilisateur.

Dans un autre mode de réalisation particulier, le module d'obtention 112 est un capteur comprenant un accéléromètre trois axes, agencé pour mesurer une accélération 31,25 fois par seconde.

Dans un mode de réalisation particulier, le dispositif utilisateur 10, 11 comprend en outre un module d'émission/réception, agencé pour communiquer avec le réseau de communication 1 par l'intermédiaire d'un réseau d'accès mobile.

Dans un mode de réalisation particulier, le dispositif utilisateur 10, 11 comprend un module d'émission/réception radio basse consommation. A titre d'exemple illustratif, il s'agit d'un module radio BLE, pour « Bluetooth Low Energy ». Ceci permet notamment au dispositif utilisateur 10, 11 de transmettre ses données à un autre dispositif, par exemple un terminal mobile, qui dispose lui d'un accès au réseau de communication 1.

Dans un mode de réalisation particulier, le capteur 112 comprend également un gyroscope 3 axes. Toutefois, pour la mise en œuvre de la technique de détection, il n'est pas nécessaire de l'activer, ce qui permet de limiter la consommation énergétique.

Dans un mode de réalisation particulier, le dispositif utilisateur 10, 11 comprend un module d'interface utilisateur.

Il est ici souligné que pour la mise en œuvre du procédé de détection, il suffit qu'une mesure de l'accélération sur un axe soit possible.

Il est également souligné que le dispositif utilisateur 10, 11 comprend également d'autres modules de traitement, non représentés sur la figure 2, agencés pour mettre en œuvre les différentes fonctions de dispositif utilisateur. La figure 3 illustre des étapes d'un procédé de détection de pas mises en œuvre par un dispositif utilisateur 10, 11 selon un mode particulier de réalisation.

On rappelle ici que le procédé de détection utilise uniquement des mesures d' accélération successives, indépendamment de l'orientation du dispositif utilisateur 10, 11. Par la suite, on se place dans le cas particulier où trois mesures d'accélération Acc x , Acc y , Acc z sont fournies, chacune d'entre elles étant associées à un des axes orthogonaux x, y, z. Il est rappelé que le procédé de détection peut être également mis en œuvre en fonction de mesures d' accélération effectuées sur un seul axe. On se place par la suite dans le cas particulier où le dispositif utilisateur 10, 11 comprend le capteur. La description est aisément modifiable au cas particulier où le module d'obtention 112 du dispositif utilisateur 10, 11 obtient le signal d' accélération d'un capteur externe.

Dans une étape El , le module de détection 113 obtient du capteur 112 un signal d' accélération à partir de mesures d'accélération successives selon au moins un axe dans un repère de trois axes orthogonaux x, y, z sous la forme d'échantillons successifs Acc x , Acc y , Acc z . Les mesures d'accélération sont obtenues avec une fréquence fixe, par exemple 31.25 Hz, en utilisant un convertisseur analogique numérique intégré dans le capteur 112.

Dans une étape E2, le module de détection 113 met le signal d'accélération sous la forme d'un signal d'accélération normalisé, représentant la norme euclidienne de la mesure d' accélération selon chacun des trois ax

où Acc N représente le vecteur normé de l' accélération, les composantes Acc„ Acc y , Acc z correspondent respectivement aux mesures d'accélération selon les axes orthogonaux x, y et z du capteur 112 et n est l'indice de l'échantillon.

Il a été constaté par le déposant à partir de signaux d'accélération obtenus que les signaux correspondant aux différents axes de l'accéléromètre Acc x , Acc y , Acc z varient de manière quasiment identique et que seules les amplitudes des signaux changent. Il est ainsi possible dans un mode de réalisation particulier d'effectuer une détection de pas avec une seule mesure d'accélération obtenue pour un seul axe du capteur. Ce mode de réalisation est particulièrement adapté lorsque l'orientation du capteur est définie et ne varie pas.

Dans une étape E3, le module de détection 113 applique un filtre passe-bas, par exemple d'ordre un, au signal d'accélération normalisé Acc N , représentatif de la mesure d' accélération ou des mesures d'accélération pour l'échantillon n.

Plus précisément :

Acc' N (n) = Acc' N (n— 1) — (Acc' N (n— 1) — Acc N (n)) où a est le coefficient du filtre, Acc' N est la sortie du filtre et Acc N correspond au signal d' accélération normalisé. On peut fixer par exemple a à 1/20.

Ce filtre passe-bas a pour effet de lisser la courbe et de limiter le bruit dans le signal d' accélération. Ceci permet notamment d' améliorer les performances lors de la détection des extrema qui fait l'objet d'une étape décrite ultérieurement. Il est ici souligné qu'un tel filtre passe- bas est facilement intégrable dans un programme temps réel et nécessite peu de ressources de calcul.

Dans une étape E4, le module de détection 113 détermine une moyenne glissante du signal d' accélération normalisé Acc' N obtenu lors de l'étape E3 et soustrait cette moyenne glissante déterminée à l'échantillon n du signal d'accélération normalisé. Cette moyenne glissante correspond localement à la composante continue du signal.

Cette moyenne glissante M est déterminée par le module de détection 113 sur une fenêtre de K échantillons centrée sur l'échantillon n. On note K sous la forme 2L+1.

Plus précisément :

M(n) = —

où L est une constante.

A titre d'exemple illustratif, on peut fixer K à la valeur de dix-sept et ainsi la constante L prend la valeur de huit.

Pour l'échantillon n, le nouveau signal d'accélération S obtenu correspond alors à :

5(n) = Acc' N (n) - (n)

Le centrage du signal d'accélération en fonction de la moyenne glissante permet d'améliorer la détection des extrema, décrite ultérieurement. En effet, il a été constaté par le déposant que, lorsque la vitesse moyenne ou le rythme de l'utilisateur varie, le signal d'accélération n'oscille plus autour d'une valeur moyenne constante. Ceci complique la détection des extrema. Les oscillations du signal d'accélération sont ainsi ramenées autour de la valeur zéro, quelles que soient les variations de vitesse de l'utilisateur.

Dans une étape E5, le signal d'accélération S est traité par le module de détection 113 afin de conserver uniquement les échantillons dont l'amplitude est supérieure à un seuil dynamique. Plus précisément, un échantillon courant du signal d'accélération S est conservé lorsque la valeur absolue de son amplitude est supérieure à un seuil dynamique dépendant d'une moyenne glissante M(n) déterminée sur une pluralité d'échantillons du signal d'accélération centré sur l'échantillon courant d'indice n. Les échantillons conservés forment un signal d'accélération traité S'.

Ce traitement correspond à :

s, (n) = (5(n)5i |5(n) | > ? (n)/G

0 sinon

où β est une constante et G est la valeur de la gravité 10 m.s "2 en sortie du convertisseur analogique -numérique du capteur 112.

La constante β prend par exemple la valeur de cent.

Pour un convertisseur délivrant des mesures d'accélération codées sur 16 bits, variant entre plus ou moins 4 fois G, alors la valeur de 1 G est codée par 8192.

Comme le seuil dynamique dépend de la moyenne glissante du signal d' accélération, plus le rythme de l'utilisateur est élevé, plus la suppression du bruit est importante. Ceci permet ensuite de mieux détecter les extrema. Le seuil dynamique permet notamment de s'adapter aux changements de rythme de l'utilisateur.

Dans le mode de réalisation décrit, le module de détection 113 recherche ensuite dans le signal d'accélération traité S' au moins un échantillon prenant une valeur maximale suivi parmi les échantillons suivants d'un échantillon prenant une valeur minimale. Par suivi, on entend que dans le signal d' accélération traité, on trouve un échantillon prenant une valeur maximale et un échantillon prenant une valeur minimale, se succédant dans le temps sans être nécessairement contigus. Aucun autre échantillon prenant une valeur extrême ne se trouve entre les deux échantillons trouvés. Un pas est détecté lorsqu'un tel enchaînement est trouvé. Il est ici souligné que dans un autre mode de réalisation particulier, un pas est détecté par un enchaînement d'un échantillon prenant une valeur minimale suivie d'un échantillon prenant une valeur maximale. Autrement dit, le module de détection 113 recherche dans le signal d'accélération traité S ' au moins deux échantillons, dans lesquels le premier échantillon prend une valeur extrême d'un premier type appartenant au groupe comprenant un minimum et un maximum, et le deuxième échantillon est le premier trouvé parmi les échantillons suivants prenant une valeur extrême du deuxième type, le deuxième type appartenant audit groupe et étant distinct du premier type, un pas étant détecté lorsque lesdits deux échantillons sont trouvés.

Une valeur maximale est détectée si la différence entre deux échantillons successifs est positive puis négative. Autrement dit, lorsque { S'(n) - S'(n-l) } est strictement positif et { S'(n+1) - S'(n) } est strictement négatif, alors une valeur maximale a été détectée. Dans le mode de réalisation décrit, le signal d' accélération traité a été centré : une valeur maximale est toujours positive et les valeurs maximales non positives sont écartées.

Une valeur minimale est détectée si la différence entre deux échantillons successifs est négative puis positive. Autrement dit, lorsque {S'(n) - S'(n-l) } est strictement négatif et {S'(n+1) - S'(n) } est strictement positif, alors une valeur minimale a été détectée. Dans le mode de réalisation décrit, le signal d' accélération traité a été centré : une valeur minimale est toujours négative et les valeurs minimales non négatives sont écartées.

Dans un mode de réalisation particulier, cette recherche est mise en œuvre de la manière suivante.

Dans une étape E6, le module de détection 113 calcule la différence entre { S'(n+1) -

S'(n) }et compare son signe à celui de { S'(n) - S'(n-l) }. Si le signe est identique, alors S'(n) ne correspond pas à une valeur extrême (minimale ou maximale) dans le signal d'accélération traité. Le module de détection 113 retourne alors à l'étape El en attente de réception d'un nouvel échantillon.

Dans le cas contraire, c'est-à-dire si le signe de {S'(n+1) - S'(n) }est différent de celui de

{S'(n) - S'(n-l) } , une valeur minimale ou maximale est détectée. Dans une étape E7, le module de détection 113 mémorise dans une zone mémoire la détection de cette valeur. Toujours dans cette étape E7, lorsque la valeur détectée est minimale et qu'il y a eu une détection d'une valeur maximale parmi les échantillons précédents, le module de détection 113 mémorise également l'indice de l'échantillon n ayant conduit à la détection de cette valeur minimale, un pas p ayant été détecté. Ainsi, dans ce mode de réalisation, la durée d'un pas correspond la différence en termes d'échantillons entre deux détections de valeur minimale.

On note D(p) un vecteur des durées (en termes d'échantillons) entre deux pas p successifs déterminés par la mise en œuvre des étapes El à E7. D(p) correspond ainsi à la durée écoulée entre le pas p et le pas p+1.

Dans une étape E8, le module de détection 113 effectue un filtrage sur les détections de pas, afin d'éliminer des fausses détections.

Plus précisément, dans cette étape E8, le module de détection 113 détermine une moyenne glissante D' de durée de pas et une pseudo-variance Var de durée de pas. Dans le mode de réalisation décrit, ces moyenne et pseudo-variance sont déterminées de la manière suivante :

Var(p) = 1 / p \D (i) - D (p) \

*Y—i i i= P p-P-i

où P est une constante.

Par exemple, P peut prendre une valeur de huit. Ceci implique que le procédé de détection nécessite que l'utilisateur du dispositif fasse au moins huit pas. Ainsi, les déplacements inférieurs à huit pas ne seront pas comptabilisés par le procédé. Toutefois, ceci ne semble pas très contraignant lorsque les pas sont comptabilisés sur une durée importante.

Ainsi, la moyenne glissante D' et la pseudo variance Var sont calculées sur huit durées de pas.

A l'étape E8, un pas p est pris en compte comme étant un pas lorsque la moyenne glissante D' de durée de pas précédents est comprise entre une première valeur seuil Cl et une deuxième valeur seuil C2. On suppose qu'un utilisateur se déplace à une vitesse comprise entre 0,5 et 5 pas par seconde. On peut donc choisir Cl à 6 et C2 à 62. Lorsque la moyenne glissante n'est pas comprise entre ces deux seuils, alors il s'agit alors sans doute de bruits parasites, par exemple lié à un choc lors de la montée d'un escalier. Dans ce cas, le pas p n'est pas pris en compte et n'est pas finalement détecté ; le procédé de détection retourne à l'étape El, en attente d'obtention d'un signal d'accélération en provenance du capteur 112.

Toujours dans cette étape E8, un pas p est pris en compte lorsque la variance de durée de pas précédents est inférieure à une troisième valeur seuil C3. Plus précisément, la pseudo-variance Var telle que déterminée précédemment est comparée à la troisième valeur seuil C3. On fait ici l'hypothèse que l'utilisateur marche ou court à un rythme relativement régulier. On choisit par exemple C3 à la valeur 15. Lorsque la variance de durée de pas précédents est supérieure à la troisième valeur seuil C3, alors il s'agit alors sans doute de bruits parasites. Dans ce cas, le pas p n'est pas pris en compte et n'est pas finalement détecté ; le procédé de détection retourne à l'étape El , en attente d'obtention d'un signal d'accélération en provenance du capteur 112.

Ainsi, un pas p est finalement détecté au cours de l'étape E8 lorsque la moyenne glissante

D'(p) de durée de pas précédents est comprise entre la première valeur seuil Cl et la deuxième valeur seuil C2 et lorsque la variance Var(p) de durée de pas précédents est inférieure à la troisième valeur seuil C3 :

(vrai si Cl≤D'(v)≤ C2 et Var p) < C3

pas = ■

(. faux sinon

Dans une étape E9, le pas p est comptabilisé. Un compteur C step est incrémenté et représente un nombre de pas détecté sur une période d'observation. Le procédé de détection retourne à l'étape El , en attente d'obtention d'un signal d' accélération en provenance du capteur

112.

Le mode de réalisation qui a été décrit permet de déterminer un nombre de pas effectué par un utilisateur d'un dispositif utilisateur de manière fiable et uniquement à partir d'une mesure d'un signal d'accélération. Ceci permet de limiter la consommation énergétique du dispositif. Les performances du procédé de détection se sont avérées meilleures que d'autres algorithmes connus, notamment lors de tests effectués dans différents environnements avec un panel d'utilisateurs. Ce procédé de détection est facilement intégrable dans un objet connecté.

Dans un mode de réalisation particulier, les calculs lors de la mise en œuvre des étapes E2 à E8 sont effectués en valeur entières. Ceci permet de réduire la complexité de mise en œuvre du procédé.

Aucune limitation n'est attachée à ces différents modes de réalisation et l'homme du métier est à même d'en définir d'autres reposant sur un seuil dynamique dépendant d'une moyenne glissante déterminée sur une pluralité d'échantillons d'un signal d'accélération centré sur un échantillon courant.

Dans un mode de réalisation particulier, l'étape E4 de centrage du signal d'accélération autour de la moyenne glissante n'est pas mise en œuvre. Dans ce cas, l'étape E5 est adaptée avec un seuil dynamique qui dépend toujours de la moyenne glissante mais prenant en compte cet absence de centrage.

Dans un mode de réalisation particulier qui peut être cumulatif avec le mode de réalisation précédent, l'étape E3 de filtrage passe -bas n'est pas mise en œuvre. Les performances du procédé restent satisfaisantes.

Dans un mode de réalisation particulier qui peut être cumulatif avec les modes de réalisation précédents, l'étape E8 de filtrage des durées de pas n'est pas mise en œuvre. Les performances du procédé restent satisfaisantes. Dans le mode de réalisation qui a été décrit, l'étape E8 est mise en œuvre avec deux comparaisons, l'une sur la durée moyenne de pas et l'autre sur la variance de la durée de pas. D'autres modes de réalisation peuvent également être prévus en n'effectuant qu'une seule des deux comparaisons.

La technique de détection est mise en œuvre au moyen de composants logiciels et/ou matériels. Dans cette optique, le terme "module" peut correspondre dans ce document aussi bien à un composant logiciel, qu'à un composant matériel ou à un ensemble de composants matériels et/ou logiciels, apte à mettre en œuvre une fonction ou un ensemble de fonctions, selon ce qui est décrit précédemment pour le module concerné.

Un composant logiciel correspond à un ou plusieurs programmes d'ordinateur, un ou plusieurs sous-programmes d'un programme, ou de manière plus générale à tout élément d'un programme ou d'un logiciel. Un tel composant logiciel est stocké en mémoire puis chargé et exécuté par un processeur de données d'une entité physique et est susceptible d'accéder aux ressources matérielles de cette entité physique (mémoires, supports d'enregistrement, bus de communication, cartes électroniques d'entrées/sorties, interfaces utilisateur, etc).

De la même manière, un composant matériel correspond à tout élément d'un ensemble matériel (ou hardware). Il peut s'agir d'un composant matériel programmable ou non, avec ou sans processeur intégré pour l'exécution de logiciel. Il s'agit par exemple d'un circuit intégré, d'une carte à puce, d'une carte électronique pour l'exécution d'un micrologiciel (firmware), etc.

Dans un mode de réalisation particulier, les modules 112, 113 sont agencés pour mettre en œuvre le procédé de détection précédemment décrit. Il s'agit de préférence de modules logiciels comprenant des instructions logicielles pour faire exécuter les étapes du procédé de détection précédemment décrit, mises en œuvre par un dispositif utilisateur. L'invention concerne donc aussi :

- un programme pour un dispositif utilisateur, comprenant des instructions de code de programme destinées à commander l'exécution des étapes du procédé de détection précédemment décrit, lorsque ledit programme est exécuté par ce dispositif utilisateur ;

- un support d'enregistrement lisible par un dispositif utilisateur sur lequel est enregistré le programme pour un dispositif.