WO2014043757A1 - Stride detection - Google Patents
Stride detection Download PDFInfo
- Publication number
- WO2014043757A1 WO2014043757A1 PCT/AU2013/001074 AU2013001074W WO2014043757A1 WO 2014043757 A1 WO2014043757 A1 WO 2014043757A1 AU 2013001074 W AU2013001074 W AU 2013001074W WO 2014043757 A1 WO2014043757 A1 WO 2014043757A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- stride
- time
- phase
- gyroscope
- accelerometer
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Ceased
Links
Classifications
-
- A—HUMAN NECESSITIES
- A61—MEDICAL OR VETERINARY SCIENCE; HYGIENE
- A61B—DIAGNOSIS; SURGERY; IDENTIFICATION
- A61B5/00—Measuring for diagnostic purposes; Identification of persons
- A61B5/72—Signal processing specially adapted for physiological signals or for diagnostic purposes
- A61B5/7235—Details of waveform analysis
- A61B5/7253—Details of waveform analysis characterised by using transforms
- A61B5/726—Details of waveform analysis characterised by using transforms using Wavelet transforms
-
- A—HUMAN NECESSITIES
- A61—MEDICAL OR VETERINARY SCIENCE; HYGIENE
- A61B—DIAGNOSIS; SURGERY; IDENTIFICATION
- A61B5/00—Measuring for diagnostic purposes; Identification of persons
- A61B5/0002—Remote monitoring of patients using telemetry, e.g. transmission of vital signals via a communication network
- A61B5/0015—Remote monitoring of patients using telemetry, e.g. transmission of vital signals via a communication network characterised by features of the telemetry system
- A61B5/002—Monitoring the patient using a local or closed circuit, e.g. in a room or building
-
- A—HUMAN NECESSITIES
- A61—MEDICAL OR VETERINARY SCIENCE; HYGIENE
- A61B—DIAGNOSIS; SURGERY; IDENTIFICATION
- A61B5/00—Measuring for diagnostic purposes; Identification of persons
- A61B5/103—Measuring devices for testing the shape, pattern, colour, size or movement of the body or parts thereof, for diagnostic purposes
- A61B5/11—Measuring movement of the entire body or parts thereof, e.g. head or hand tremor or mobility of a limb
- A61B5/112—Gait analysis
-
- A—HUMAN NECESSITIES
- A61—MEDICAL OR VETERINARY SCIENCE; HYGIENE
- A61B—DIAGNOSIS; SURGERY; IDENTIFICATION
- A61B5/00—Measuring for diagnostic purposes; Identification of persons
- A61B5/103—Measuring devices for testing the shape, pattern, colour, size or movement of the body or parts thereof, for diagnostic purposes
- A61B5/11—Measuring movement of the entire body or parts thereof, e.g. head or hand tremor or mobility of a limb
- A61B5/1121—Determining geometric values, e.g. centre of rotation or angular range of movement
-
- A—HUMAN NECESSITIES
- A61—MEDICAL OR VETERINARY SCIENCE; HYGIENE
- A61B—DIAGNOSIS; SURGERY; IDENTIFICATION
- A61B2562/00—Details of sensors; Constructional details of sensor housings or probes; Accessories for sensors
- A61B2562/02—Details of sensors specially adapted for in-vivo measurements
- A61B2562/0219—Inertial sensors, e.g. accelerometers, gyroscopes, tilt switches
-
- A—HUMAN NECESSITIES
- A61—MEDICAL OR VETERINARY SCIENCE; HYGIENE
- A61B—DIAGNOSIS; SURGERY; IDENTIFICATION
- A61B5/00—Measuring for diagnostic purposes; Identification of persons
- A61B5/40—Detecting, measuring or recording for evaluating the nervous system
- A61B5/4076—Diagnosing or monitoring particular conditions of the nervous system
- A61B5/4082—Diagnosing or monitoring movement diseases, e.g. Parkinson, Huntington or Tourette
Definitions
- the invention concerns gait analysis, an in particular the detection of a stride in sensor data.
- aspects of the invention include a computer-implemented method for stride detection from sensor data, software and a stride detection system.
- gait analysis A systematic study of human walking, called gait analysis is of paramount importance in many applications ranging from monitoring daily activities to measuring the recovery of patients with neuromuscular disorders.
- GITRite In the context of neuromuscular disorders, commercial gait measurement systems such as the GAITRite and VICON allow physiotherapists to monitor the performance of a patient undergoing a particular medical treatment.
- the VICON system uses multiple infrared cameras to track reflective markers which are placed on certain anatomical location on the body.
- the GAITRite is an automated system that measures the temporal and spatial gait parameters accurately via an electronic walkway which contains 13824 pressure sensors to capture the geometry and relative arrangement of each footfall as a function of time.
- these systems are expensive and can only be used within clinical and controlled laboratory environments. Well-trained personnel are also required to operate the system.
- MEMS micro-electro-mechanical systems
- a computer-implemented method for stride detection from time series gyroscope sensor data representing angular velocity of a user's leg while taking the stride comprising:
- the method uses the same time domain representation of high frequency components to identify the toe-off phase and the heel-strike phase. As a result only a single determining step is performed, as compared to determining different data
- the extreme value of the time domain representation of high frequency components may be represented as a maximum value and/or spike having a magnitude above an adaptive or normalised threshold.
- the extreme value that occurs before the first time is at a second time
- the method further comprising:
- the extreme value that occurs after the first time is at a third time, and the method further comprising:
- the step of determining from the gyroscope data high frequency components may be performed using two-level wavelet decomposition.
- the wavelet decomposition may be performed on the transverse plane.
- the step of determining from the gyroscope data high frequency components may further comprise squaring the high frequency components.
- Stride detection may also be based on time series accelerometer sensor data
- conditional tests to the accelerometer data and the gyroscope data that if met identify a flat-foot phase at a fourth time.
- the method may further comprise validating the stride detection if the fourth time:
- the gyroscope data is tri-axial and stride detection is also based on time series
- accelerometer sensor data representing a user's leg linear acceleration while taking the stride
- the method may further comprise determining a three dimensional reconstruction of the stride based on the gyroscope data and the identified swing-phase, toe-off-phase and heel-strike phase. This three-dimensional reconstruction facilitates better understanding of the motion of the stride.
- the initial orientation may be measured at the flat-foot phase. Determining the orientation may comprise determining the initial pitch and roll using accelerometer data, and setting the initial yaw to zero. Subsequent orientations will be updated using the gyroscope data.
- the orientation may be used to align the accelerometer data with a global reference frame.
- Determining the orientation may be repeated for each detected stride.
- the determined times of the toe-off and heel strike events may be estimates but it is an advantage that these estimates are of high quality.
- Stride detection may also be based on time series accelerometer sensor data representing the user's leg linear acceleration while taking the stride, and the method is repeated to detect a second stride in the time series gyroscope sensor data, and the method further comprising:
- the accelerometer data may be tri-axial.
- the method may further comprise determining the length of the detected stride based on the determined velocity.
- the method may be repeated to detect a third stride in the time series gyroscope data, the method further comprising:
- determining the velocity of the stride between the flat-foot phase of the second stride and the flat-foot phase of the third stride by initially re-estimating the initial velocity to zero and re-estimating the velocity of the sensor having the gyroscope and the accelerometer.
- the method may comprise receiving gyroscope data from two or more gyroscopes.
- the method may comprise receiving accelerometer data from two or more sensors
- Identifying the swing phase of the stride may be based on an adaptive threshold.
- software that is computer readable instructions stored on computer readable medium, that when executed by a computer causes the computer to perform the method described above.
- a stride detection system to detect a stride from time series gyroscope sensor data representing angular velocity of a user's leg while taking the stride, the system comprising a processor programmed to:
- the system may comprise a sensor having a gyroscope that is attached to the leg of the user taking the stride.
- the sensor may also comprise an accelerometer.
- the gyroscope and the accelerometer may be tri-axial.
- the processor may be remotely located from the sensor.
- stride detection and stride length can be performed in a low cost and suitably accurate way.
- Fig. 1 shows an example system for stride detection.
- Fig. 2 shows an example hardware design of a sensor node.
- Fig. 3 shows an example hardware design of a central storage (CSN) node.
- Fig. 4 shows an example hardware design of a central interface (CIN) node.
- Fig. 5 shows an example software architecture of a transceiver module.
- Fig. 6 shows an example network topology for the stride detection system.
- Fig. 7 shows an example of a three dimensional inertial strapdown system where the initial body frame is aligned with the global reference frame.
- Fig. 8 graphically shows an example global reference frame and body frame in a two dimensional stride detection system.
- Fig. 9 shows an example representation of yaw, pitch and roll used in orientation.
- Fig. 10 shows a flowchart showing an example of wavelet decomposition.
- Fig. 1 1(a) shows example gait phases identified in a typical gyroscope data.
- Fig. 1 1(b) is a table that shows spatial and temporal parameter definitions.
- Fig. 2 shows a human leg with a sensor node attached to the shank.
- Fig. 13 shows an example method for a single sensor system.
- Fig. 14 shows an example overview method of gait events and stride detection.
- Fig. 15 shows an example of time domain representation of high frequency components determined from gyroscope data.
- Fig. 16 is an example flowchart for heel-strike and toe-off detection from gyroscope data and high frequency components of the gyroscope data.
- Fig. 17 is an example flowchart for stance detection algorithm.
- Fig. 18 is an example flowchart of gait phase validation.
- Fig. 1 shows sensor orientation during a flat-foot phase and global reference frame.
- Fig. 20 graphically shows an example z-axis acceleration measurement of a stationary sensor and the calculated velocity shows the drift resultant from the integration.
- Fig. 21 shows an example of time domain representation of high frequency components determined from gyroscope data.
- Fig. 22 shows examples of stance detection from typical y-axis gyroscope data.
- Fig. 23 shows an example overall output of the stance detection algorithm.
- Fig. 24 shows an example overall output of gait events and stride detection.
- Fig. 25 is a table showing example thresholds for gait events detection.
- Fig. 26 shows an example gyroscope signal and wavelet reconstructed signal for leg swing.
- Fig. 27 shows an example integration interval of the z-axis acceleration and an example of integration drift of the z-axis velocity.
- Fig. 28 shows an example reset velocity signal.
- Fig. 29 shows a flowchart showing an example method for stride detection.
- Fig. 30 is a table showing example values for thresholds and alternative methods for their calculation.
- Fig. 31 is a table showing the actual number of stride and those detected using
- NICTA's IMU algorithm developed on 3 normal subjects and one Parkinsons diseased patient.
- Fig. 32 shows the stride length comparison between laboratory based gold standard
- Fig. 33 shows the stride velocity comparison between laboratory based gold standard
- Fig. 34 shows the stride length comparison between GAITRite and NICTA's IMU stride length algorithm on a Parkinson's disease patient (before and after medication)
- Fig. 35 shows an example user interface.
- the application of this example relates to calculating stride length of a medical patient.
- step is used interchangeably with the term stride throughout this document, where step is taken in reference to movement of the same foot.
- the medical patient 100 wears two sensors 102 and 104 which are shown in more detail at 102' and 104' respectively.
- the sensor nodes 102 and 104 acquire
- magnetic field strength data [00087] at the attached positions of the body In this example only two sensor nodes 102 and 104 are shown but it will be appreciated that more sensors could be used, and on different limbs of the medical patient 100.
- the sensor provides samples at a user- settable frequency, such as 819.2Hz.
- This data is then sent to the Central Storage Node (CSN) 108 which is shown in more detail at 108'.
- CSN Central Storage Node
- the CSN 108 is worn by the patient 100.
- the data is aggregated by the CSN 108 and stored on a USB flash drive 108b.
- the CSN 108 also acts as the sensor network master and coordinates the sensor nodes 102 and 104 on the network 120.
- the wireless USB dongle 140 or Central Interface Node (CIN) 140 is installed on PC 150 and acts as a bridge allowing the network 120 to interface directly with a PC 150, analogous to a WiFi network card which allows a PC to interact with a WiFi network.
- the CIN 140 performs the same storage and network coordination functions as the CSN 108. Unlike the CSN 108 however, data received by the CIN 140 from the sensor nodes 102 and 104 are sent directly to the PC 150 rather than CSN 108. This mode of operation allows sensor data to be processed in real time. Due to its overlapping functionality a deployed network 120 uses either a CSN 108 or CIN 140 but not both.
- the network 100 has two modes of operation:
- sensor data is sent to the CSN 108 for storage 108b and can be conveniently post-processed at a later time.
- the offline mode of operation is suitable for long-term monitoring applications where a PC 150 may not be near the patient 100 all the time.
- data is streamed from the sensors 102 and 104 via a CIN 1 0 to a PC 150 allowing for real-time data acquisition and processing.
- An inertial measurement unit 202 is an inertial MEMS sensor including a 3 axis accelerometer 212, 3 axis gyroscope 214 and a 3 axis magnetometer 216 that provide measurements of angular rate, linear acceleration and magnetic field strength respectively.
- the inertial measurement unit includes software configurable sampling rates for example of up to 819.2Hz. Acquired data transferred via SPI interface to the wireless microcontroller 218 and is then wirelessly transmitted to either the CSN 108 or CIN 140 for storage and processing.
- the central components of the CSN 108 is shown in Fig. 3.
- the VDIPL module 300 functions as an embedded USB host controller for the CSN 108. It connects to the transmission module, such as a JN5139 microcontroller 302 via the interface 304, such as a UART, allowing the transmission module 302 to store data acquired wirelessly from the sensor nodes 102, 104 on to a flash drive 180b.
- Converter module 400 allows the transmission module 402 to interface directly with a PC via USB 404.
- the converter module 400 performs the functions of a protocol translator and level shifter between the output of the transmission module 402 and the USB input 404 of the PC.
- This communication channel to the transmission module 402 is exposed on the host PC as a configurable virtual serial port allowing programs written on the host PC to communicate with the CIN 140.
- the CIN 140 is not battery powered, but draws power from the USB port 404 of the host PC.
- the software architecture running in this example for the JN5139 is layered with multiple protocol stacks running simultaneously. An overview of this layered architecture is shown in Fig. 5.
- the IEEE 802.15.4 standard is specifically designed for Wireless Personal Area Networks (WPAN) with short transmission distances of under 10m.
- the Network Layer 502 on the JN5139 runs the JenNet protocol stack. User applications are built upon and interact with the JenNet stack via its Jenie Application Programming Interface.
- the JenNet stack is a thin protocol stack built upon the IEEE 802.15.4 protocol and extends its capabilities.
- the user application 504 is developed on top of the JenNet Network Layer 502. In fact, the user applications 504 sometimes bypass the JenNet layer 502 and access the lower level IEEE 802.15.4 stack directly to assist in packet loss issues.
- FIG. 35 A sample user interface shown on the computer 150 is shown in Fig. 35.
- This GUI visualises the determined stride length data in a stem plot and shows some output statistics.
- a user can zoom in or out of the plot, or select some data plot to see the exact value.
- More graphs and more statistics can be implemented in the plotting and statistics area, such as pie graph which can show the distribution of the stride length (SL) more easily; and percentage of the shorter strides and longer strides.
- the user e.g. doctors
- the user can see the status of the patient's walking in the data logging period. If the patient is walking more casually and freely, the medication towards this patient is decent. If significant short strides (more than a normal person walks) are observed from the patient's data, this would indicate that the patient's medication can be improved.
- Gait analysis systems based on inertial sensors are affected by many different error sources including accelerometer/gyroscope bias, thermo-mechanical white noise, flicker noise, temperature effects and calibration errors. Kinematics relationship that requires the integration of biased and noise affected measurements will result in errors that accumulate over time. Therefore, several algorithms need to be employed to reduce the uncertainty in the measurement of gait parameters.
- Accelerometers and gyroscopes are the cores of any inertial strapdown system. To obtain positional information from inertial strapdown systems four basic processing stages are required namely
- the accelerometer will measure the acceleration of the motion as well as the acceleration due to gravity while the gyroscope will measure the angular velocity of the shank.
- the body frame is aligned with the global reference frame.
- This global frame defined as the orthogonal axis set that is aligned with the gravity vector (superscript g denotes global frame).
- g denotes global frame.
- ⁇ can be calculated by integrating the gyroscope measurements, ⁇ .
- ⁇ can be used to construct a rotation matrix, R that is used to project the accelerometer measurements onto the global frame.
- FIG. 9 shows a representation of yaw, pitch and roll orientation.
- the Euler Theorem states that three rotations are needed to make a coordinate frame coincide with another frame. Each of the rotations will occur about a new coordinate frame after the previous rotation.
- a particular reference frame is rotated to a new coordinate frame through a sequence of ⁇ rotations. This means that a rotation ⁇ (roll) about x-axis, followed by a rotation ⁇ (pitch) about the new y- axis and followed by a rotation ⁇ (yaw) about the newer z-axis are applied onto the original reference frame.
- rotations can be expressed mathematically by the equation 5.6.
- the Euler angles can be obtained by using accelerometer measurement under stationary
- Quaternions are a four-parameter representation of rotation based on the idea that any
- coordinate frame can be transformed to another by a single rotation about an Euler axis (axis of rotation). It consists of a set of four parameters in which there are three components of a vector directed along the Euler axis and one scalar quantity, as shown below.
- ⁇ q ⁇ sin fl
- q 0 cos 0
- Quaternions can be used to rotate a vector by using a rotation matrix in equation 5.8.
- Quaternions can be calculated by using the gyroscope measurements and hence the
- Wavelet transformation allows the detection of a specified frequency at a specified time.
- the wavelet theory the Coiflet wavelet, is chosen in the analysis of gait events due to its similarity with the gait events signal.
- Wavelet decomposition involves splitting a signal into low-frequency components called approximation and high-frequency components called detail for each level of decomposition. The decomposed signal will be down-sampled
- Fig. 10 summarises the wavelet decomposition algorithm where cA, and cD i are the approximation and detail respectively, and represents the level of decomposition.
- FF foot-flat
- HO heel-off
- TO toe-off
- SW swing phase
- heel-strike being the point when initial contact is made with the heel.
- Fig. 1 1(a) shows the region of these phases by using Y-axis gyroscope signal.
- the sensor node is attached to the shank of the subject, with the sensor axes shown in Fig. 12. Note that the body initial frame does not align with the global frame.
- Fig. 13 provides an overview of the single sensor gait analysis algorithm.
- Fig. 14 The overview of the step "gait events and step detection” is shown in Fig. 14.
- the gyroscope is used to detect the dynamic gait events while the fusion of accelerometer and gyroscope is used to detect the stance phase.
- the y-axis gyroscope will be the most sensitive to shank rotation.
- a typical gyroscope signal of a walking subject is shown in Fig. 15(a) and the method of detecting a stride is shown in Fig. 29.
- the shank When the subject starts walking from a foot-flat phase, the shank will rotate anti-clockwise about y-axis during which the gyroscope outputs a negative angular velocity. The anti-clockwise rotation will reach a minimum just before the toe-off event, and the gyroscope signal appears to be a sharp minimum peak.
- the subject's shank will then rotate in the clockwise direction and reach maximum velocity before slowing down to prepare for heel-strike.
- the heel-strike signal will then appear to be a rather sharp negative minimum peak in the signal.
- wavelet analysis using Coiflet wavelet is applied onto the gyroscope signal to locate these events in time and frequency domain.
- Two-level wavelet decomposition is applied onto gyroscope signal shown in Fig. 15(a) to decompose the signal into its approximation and scale components.
- a signal is then reconstructed in time domain using only the detail to extract the high frequency components, that is the high frequency components are determined to be in both in time and frequency domain 320.
- a typical reconstructed signal is shown in Fig. 15(b) in which high amplitude spikes can be observed at both the toe-off and heel-strike events.
- the squaring operation is used to amplify the amplitude for more robust peak detection as shown in Fig, 15(c).
- a threshold limit is set to detect these spikes and in practice, multiple nearby spikes may have magnitudes above this threshold.
- a swing-phase in the gyroscope data is identified by exceeding a predetermined or adaptive threshold 322.
- the adaptive threshold for determining the swing-phase in the gyroscope data can be implemented by iteratively averaging over the peaks within a certain time window of data and reducing the window size. This approach is advantageous over normal averaging in that high values can be retained leading to a more accurate threshold value.
- a time corresponding to the middle of the identified swing is used as a reference to remove replicate peaks that appear in the reconstructed signal for the same gait event.
- the maximum peaks detected and identified at 144 in the reconstructed signal are candidate toe-off or heel-strike events in the reconstructed signal.
- the mid-swing 146 is identified from the on gyroscope data 142.
- the candidate 144b being the closest preceding spike is taken to represent the heel-strike, and candidate 144c is taken to be the toe-strike.
- the local minimums 148a and 148b in the gyroscope signal 142 in a time window centred on the times of the spikes 144b and 144c are identified and the timing of these minimums 148a and 148b are taken as the timing of the heel-strike and toe-strike respectively.
- stance detection is implemented to detect the time when the foot is stationary on the ground. Stance will be detected if the signal from both the accelerometer and gyroscope satisfy the three conditions stated below.
- Condition 1 Ma nitude of acceleration must be between two thresholds.
- Ci ⁇ 1 a min ⁇ M ⁇ th a (5.12) CO otherwise
- Condition 2 Local acceleration must be below a given threshold.
- Condition 3 Magnitude of the gyroscope must be below a given threshold.
- a stride is only detected if the multiple phases of the gait have been identified 328.
- a more detailed algorithm validates the detected gait events by checking if the gait events occur in proper sequence, namely foot-flat, heel- off, toe-off, swing and heel-strike. It also considers whether a stance is detected in the right sequence.
- the block diagram of Fig. 18 summarises the validation algorithm. Box 180 can be seen as detecting the stride. Prior to this any detected stride is simply a candidate until validated.
- Stride length is one of the most important gait parameters for measuring the performance of a Parkinson disease patient. It can be defined as the distance between two consecutive foot-flat, heel-strike or toe-off events.
- the stride length calculation involves a vector integration that determines both the scalar magnitude and direction. Such information can therefore be used in performing 3D reconstructions of the motion when necessary.
- there is an unknown factor which is the initial velocity condition. This quantity has to be kept minimal so that stride length can be calculated accurately. By choosing the integration interval from foot-flat to the next foot-flat event, this unknown quantity can be assumed to be zero since the foot is almost stationary during foot-flat events.
- the velocity is reset to zero.
- orientation computation can be divided into two parts. Firstly, the initial orientation is calculated using the accelerometer measurements and secondly, the relative orientation is calculated using the gyroscope measurements.
- the initialized quaternion is updated in each sampling interval using gyroscope data allowing the orientation of the sensor to be computed for each sample. This information can then be used to project accelerometer measurements to the global reference frame.
- the measured acceleration will contain both movement acceleration and acceleration due to gravity.
- acceleration due to gravity needs to be removed from the measurement.
- the measurement from the accelerometer must first be projected on to the global axes by using the rotation matrix set out above.
- the gravity component can then be removed by simply removing the '-lg'component from the z-axis measurement.
- the procedure is summarised in equation 5.19.
- sensor measurement will contain offset and bias due to temperature dependent noise or random walk.
- the projected z-axis acceleration measurement contains a small mean offset of approximately 0.005g while the accelerometer was put stationary. If this acceleration is integrated to calculate the velocity, the velocity will grow almost linearly over time as shown in Fig. 20(b). This effect is called integration drift, which will cause large error in the stride length calculation. However, this integration drift can be removed because the initial and end velocity condition are equal to zero (recall that the initial and end gait events are foot-flat). This is achieved by applying the equation 5.20.
- the equation 5.20 can be thought as removing a linearly increasing offset from the velocity obtained from the integration of acceleration and reset the velocity to zero at the end of gait cycle.
- the data filtering method uses detection based on normalized threshold values.
- equations 5.25-5.27 apply to angle computation during stance phase with
- thresholds for stance detection and two thresholds for toe-off and heel-strike detection.
- the spike threshold is chosen such that its value is the middle point between the lowest amplitude of the spikes and zero.
- the mid-swing point threshold is chosen such that its value is the middle point between the lowest mid-swing value and zero.
- Fig. 21 shows sample data in use where 220 shows the x-axis gyroscope signal and 222 shows the squared wavelet reconstruction signal that is time aligned with the x-axis gyroscope signal 222.
- Fig. 22(a) is a y-axis gyroscope signal.
- Fig. 22(b) is a y-axis gyroscope signal.
- Fig. 22(b) has shown the magnitude of acceleration with condition CI , When the sensor
- Example thresholds are 9ms "2 and 1 1ms '2 for error margin.
- the output of CI will be high if the magnitude of acceleration falls between the intervals.
- Fig. 25(c) shows the local acceleration variance with condition C2.
- the window size for calculating the local variance is in this specific example is set to be 21 , determined empirically. When the foot has less dynamics, the local variance of acceleration is very low. An example of a threshold of 1.2 can be set to detect this event. Output of C2 will be high if the local acceleration is less than this threshold.
- Fig. 25(d) has shown the magnitude of angular velocity with condition C3. An example threshold is 80 degree per second. This means that the output for C3 will be high for the magnitude of angular velocity that is less than this threshold.
- Fig. 23 has shown the overall output of stance detection algorithm. The combination of three conditions is able to detect the stance phase accurately.
- Fig. 26 the x-axis gyroscope signal 270 of a person swinging their leg instead of walking is shown.
- This signal 270 includes alternating maximum and minimum peaks like in a typical gait cycle.
- the wavelet reconstructed signal 272 does not contain high amplitude spikes; Although swinging of leg exhibits consecutive positive and negative amplitude, using the method described here they are not detected as the heel-strike and toe-off events because the spikes events are not present in the signal. This shows that the wavelet analysis is able to differentiate a swing from a stride.
- Fig. 27(a) shows z-axis acceleration measurement and Fig. 27(b) shows velocity signal.
- Fig. 28 shows that the reset velocity signal has the integration drift removed, in which the initial and end velocities are equal to zero.
- Fig. 31 shows that the gait events detection algorithm has detected 701 strides out of 709 strides taken by the subjects including the Parkinson Disease Patient and there is no false detection. The eight miss-detections are due to the gait events validation algorithm, which removes any suspected false detection. In conclusion, this algorithm has achieved an accuracy of 98.9%.
- the mean squared error is 3.02cm 2 .
- the mean squared error is 4.41cm 2 .
- Fig. 34 shows that the Parkinson's diseased patients stride length increases after medication in comparison to before medication.
- the reliability and portability offered by this system could serve as a self-monitoring and improvement system for people in different situations such as sports, gaming and rehabilitation.
Landscapes
- Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Public Health (AREA)
- Surgery (AREA)
- Veterinary Medicine (AREA)
- General Health & Medical Sciences (AREA)
- Animal Behavior & Ethology (AREA)
- Biophysics (AREA)
- Pathology (AREA)
- Biomedical Technology (AREA)
- Heart & Thoracic Surgery (AREA)
- Medical Informatics (AREA)
- Molecular Biology (AREA)
- Physiology (AREA)
- Dentistry (AREA)
- Oral & Maxillofacial Surgery (AREA)
- Psychiatry (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Artificial Intelligence (AREA)
- Signal Processing (AREA)
- Geometry (AREA)
- Computer Networks & Wireless Communication (AREA)
- Measurement Of The Respiration, Hearing Ability, Form, And Blood Characteristics Of Living Organisms (AREA)
Description
[0001] Title
(0002] STRIDE DETECTION
[0003] Cross-Reference to Related Applications
[0004] The present application claims priority from Australian Provisional Patent Application
No 2012904124 filed on 20 September 2012, the content of which is incorporated herein by reference.
[0005] Technical field
[0006] The invention concerns gait analysis, an in particular the detection of a stride in sensor data. Aspects of the invention include a computer-implemented method for stride detection from sensor data, software and a stride detection system.
[0007] Background art
[0008] A systematic study of human walking, called gait analysis is of paramount importance in many applications ranging from monitoring daily activities to measuring the recovery of patients with neuromuscular disorders.
[0009] In the context of neuromuscular disorders, commercial gait measurement systems such as the GAITRite and VICON allow physiotherapists to monitor the performance of a patient undergoing a particular medical treatment. The VICON system uses multiple infrared cameras to track reflective markers which are placed on certain anatomical location on the body. The GAITRite is an automated system that measures the temporal and spatial gait parameters accurately via an electronic walkway which contains 13824 pressure sensors to capture the geometry and relative arrangement of each footfall as a function of time. However, these systems are expensive and can only be used within clinical and controlled laboratory environments. Well-trained personnel are also required to operate the system.
[00010] Also, since the analysis is performed in a confined and controlled environment it requires the individual to be transported to these specialised laboratories, which can be highly inconvenient. The data collection and analysis process requires combining data captured from various angles (for camera-based systems) making it a complex, time consuming (about four hours per day) and tedious process. Further, patients may not exhibit their natural movement patterns in the laboratory. Also, only a limited number of strides/gestures can be observed and patients may not exhibit all of their abnormal characteristics in the given measurement period.
With the emergence of micro-electro-mechanical systems (MEMS) based sensors that contain both mechanical and electrical elements integrated into small devices, newer compact monitoring systems such as pedometers (e.g. G-sensor) or activity monitors (e.g Stepwatch) are slowly entering the market,
[00012] Summary of the Invention
(00013] In a first aspect there is provided a computer-implemented method for stride detection from time series gyroscope sensor data representing angular velocity of a user's leg while taking the stride, the method comprising:
determining a time domain representation of high frequency components of the gyroscope data;
identifying in the gyroscope data a first time associated with a swing-phase of the stride;
identifying in the time domain representation of high frequency components an extreme value that occurs before the first time as a toe-off phase of the stride; identifying the time domain representation of high frequency components an extreme value that occurs after the first time as the heel-strike phase of the stride; and
detecting the stride only if a swing-phase, toe-off phase and heel -strike phase is identified.
It is an advantage that the high frequency components are used to identify phases that form the detected stride. In this way false detection of strides is reduced by confirming additional phases of a stride using high frequency components analysis.
The method uses the same time domain representation of high frequency components to identify the toe-off phase and the heel-strike phase. As a result only a single determining step is performed, as compared to determining different data
representations from which the toe-off and heel-strike phases are identified
respectively, it is an advantage this that reduces the associated computational complexity.
It is a further advantage of the invention that a predefined gait pattern is not needed.
The extreme value of the time domain representation of high frequency components may be represented as a maximum value and/or spike having a magnitude above an adaptive or normalised threshold.
Where appropriate the order of these steps is not important or could be performed simultaneously.
Optionally, the extreme value that occurs before the first time is at a second time, and the method further comprising:
identifying in the gyroscope sensor data an extreme value within a time interval based on the second time, and
determining the time of the toe-off phase as the time of the extreme value within the time interval.
Optionally, the extreme value that occurs after the first time is at a third time, and the method further comprising:
identifying in the gyroscope sensor data an extreme value within a time interval based on the third time, and
determining the time of the heel-strike phase as the time of the extreme value within the time interval.
It is an advantage of this embodiment that the timing of the toe-off and heel strike event can be more accurately determined.
[00022] The step of determining from the gyroscope data high frequency components may be performed using two-level wavelet decomposition. The wavelet decomposition may be performed on the transverse plane. The step of determining from the gyroscope data high frequency components may further comprise squaring the high frequency components.
[00023] Stride detection may also be based on time series accelerometer sensor data
representing a user's leg linear acceleration while taking the stride, and the method further comprising:
applying conditional tests to the accelerometer data and the gyroscope data that if met identify a flat-foot phase at a fourth time.
[00024] The method may further comprise validating the stride detection if the fourth time:
occurs before the second time and within a predetermined time interval based on the second time, and/or
occurs after the third time and does not occur between the second and third time.
[00025] The gyroscope data is tri-axial and stride detection is also based on time series
accelerometer sensor data representing a user's leg linear acceleration while taking the stride, and the method further comprising:
determining the orientation of the sensor having the gyroscope and
accelerometer from the accelerometer data and gyroscope data.
The method may further comprise determining a three dimensional reconstruction of the stride based on the gyroscope data and the identified swing-phase, toe-off-phase and heel-strike phase. This three-dimensional reconstruction facilitates better understanding of the motion of the stride.
It is an advantage of this embodiment that the orientation of the sensor does not need to align with the global frame. That means better freedom in the placement of the sensor on the user.
The initial orientation may be measured at the flat-foot phase. Determining the orientation may comprise determining the initial pitch and roll using accelerometer data, and setting the initial yaw to zero. Subsequent orientations will be updated using the gyroscope data.
The orientation may be used to align the accelerometer data with a global reference frame.
Determining the orientation may be repeated for each detected stride.
The determined times of the toe-off and heel strike events may be estimates but it is an advantage that these estimates are of high quality.
Stride detection may also be based on time series accelerometer sensor data representing the user's leg linear acceleration while taking the stride, and the method is repeated to detect a second stride in the time series gyroscope sensor data, and the method further comprising:
identify a flat-foot phase of the stride and the second stride based on the gyroscope sensor data and accelerometer sensor data representing the user's leg linear acceleration taking the stride; and
determining the velocity of the stride by integrating the accelerometer signal as measured between the flat-foot phase of the stride and the flat-foot phase of the second stride.
The accelerometer data may be tri-axial.
It is an advantage of this embodiment that by measuring velocity from flat-foot phases the unknown quantity of the initial velocity can be assumed to be zero.
The method may further comprise determining the length of the detected stride based on the determined velocity.
It is an advantage of this embodiment that by using the accelerometer data, the length of the detected stride can be determined accurately.
The method may be repeated to detect a third stride in the time series gyroscope data, the method further comprising:
identify a flat-foot phase of the third stride based on the gyroscope sensor data and the accelerometer sensor data of a user taking the stride; and
determining the velocity of the stride between the flat-foot phase of the second stride and the flat-foot phase of the third stride by initially re-estimating the initial velocity to zero and re-estimating the velocity of the sensor having the gyroscope and the accelerometer.
The method may comprise receiving gyroscope data from two or more gyroscopes.
[00039] The method may comprise receiving accelerometer data from two or more
accelerometer.
[00040] Identifying the swing phase of the stride may be based on an adaptive threshold.
[00041] In a second aspect, there is provided software, that is computer readable instructions stored on computer readable medium, that when executed by a computer causes the computer to perform the method described above.
[00042] In a third aspect there is provided a stride detection system to detect a stride from time series gyroscope sensor data representing angular velocity of a user's leg while taking the stride, the system comprising a processor programmed to:
determine a time domain representation of high frequency components of the gyroscope data;
identify in the gyroscope data a first time associated with a swing phase of the stride;
identify in the time domain representation of high frequency components an extreme value that occurs before the first time as a toe-off phase of the stride;
identify in the time domain representation of high frequency components an extreme value that occurs after the first time as the heel-strike phase of the stride; and detect the stride only if a swing-phase, toe-off phase and heel-strike phase is identified.
The system may comprise a sensor having a gyroscope that is attached to the leg of the user taking the stride. The sensor may also comprise an accelerometer. The gyroscope and the accelerometer may be tri-axial.
[00044J The processor may be remotely located from the sensor.
[000451 Optional features of the first aspect of the invention are also optional features of the second and third aspects of the invention.
It is an advantage of at least one embodiment of the invention that stride detection and stride length can be performed in a low cost and suitably accurate way.
[000471 Brief description of the drawings
(00048] An example of the invention will now be described with reference to the following diagrams in which:
[00049] Fig. 1 shows an example system for stride detection.
[00050] Fig. 2 shows an example hardware design of a sensor node.
[00051] Fig. 3 shows an example hardware design of a central storage (CSN) node.
[00052] Fig. 4 shows an example hardware design of a central interface (CIN) node.
[00053] Fig. 5 shows an example software architecture of a transceiver module.
[00054] Fig. 6 shows an example network topology for the stride detection system.
[00055] Fig. 7 shows an example of a three dimensional inertial strapdown system where the initial body frame is aligned with the global reference frame.
[00056] Fig. 8 graphically shows an example global reference frame and body frame in a two dimensional stride detection system.
[00057] Fig. 9 shows an example representation of yaw, pitch and roll used in orientation.
[00058] Fig. 10 shows a flowchart showing an example of wavelet decomposition.
[00059] Fig. 1 1(a) shows example gait phases identified in a typical gyroscope data.
[00060] Fig. 1 1(b) is a table that shows spatial and temporal parameter definitions.
[00061] Fig. 2 shows a human leg with a sensor node attached to the shank.
[00062] Fig. 13 shows an example method for a single sensor system.
[00063] Fig. 14 shows an example overview method of gait events and stride detection.
[00064] Fig. 15 shows an example of time domain representation of high frequency components determined from gyroscope data.
[00065] Fig. 16 is an example flowchart for heel-strike and toe-off detection from gyroscope data and high frequency components of the gyroscope data.
[00066] Fig. 17 is an example flowchart for stance detection algorithm.
[00067] Fig. 18 is an example flowchart of gait phase validation.
[00068] Fig. 1 shows sensor orientation during a flat-foot phase and global reference frame.
[00069] Fig. 20 graphically shows an example z-axis acceleration measurement of a stationary sensor and the calculated velocity shows the drift resultant from the integration.
[00070] Fig. 21 shows an example of time domain representation of high frequency components determined from gyroscope data.
[00071] Fig. 22 shows examples of stance detection from typical y-axis gyroscope data.
[00072] Fig. 23 shows an example overall output of the stance detection algorithm.
[00073] Fig. 24 shows an example overall output of gait events and stride detection.
[00074] Fig. 25 is a table showing example thresholds for gait events detection.
[00075] Fig. 26 shows an example gyroscope signal and wavelet reconstructed signal for leg swing.
[00076] Fig. 27 shows an example integration interval of the z-axis acceleration and an example of integration drift of the z-axis velocity.
[00077] Fig. 28 shows an example reset velocity signal.
[00078] Fig. 29 shows a flowchart showing an example method for stride detection.
[00079] Fig. 30 is a table showing example values for thresholds and alternative methods for their calculation.
[00080] Fig. 31 is a table showing the actual number of stride and those detected using
NICTA's IMU algorithm developed on 3 normal subjects and one Parkinsons diseased patient.
[00081] Fig. 32 shows the stride length comparison between laboratory based gold standard
(GAITRite) and NICTA's IMU stride length algorithm
[00082] Fig. 33 shows the stride velocity comparison between laboratory based gold standard
(GAITRite) and NICT A' s algorithm
[00083] Fig. 34 shows the stride length comparison between GAITRite and NICTA's IMU stride length algorithm on a Parkinson's disease patient (before and after medication)
[00084] Fig. 35 shows an example user interface.
[00085] Best modes of the invention
[00086] The application of this example relates to calculating stride length of a medical patient.
The term step is used interchangeably with the term stride throughout this document, where step is taken in reference to movement of the same foot. The medical patient 100 wears two sensors 102 and 104 which are shown in more detail at 102' and 104' respectively. The sensor nodes 102 and 104 acquire
linear acceleration,
angular velocity and
magnetic field strength data
[00087] at the attached positions of the body. In this example only two sensor nodes 102 and 104 are shown but it will be appreciated that more sensors could be used, and on different limbs of the medical patient 100. The sensor provides samples at a user- settable frequency, such as 819.2Hz.
[00088] This data is then sent to the Central Storage Node (CSN) 108 which is shown in more detail at 108'. In this example the CSN 108 is worn by the patient 100. The data is aggregated by the CSN 108 and stored on a USB flash drive 108b. In addition, to its storage functions the CSN 108 also acts as the sensor network master and coordinates the sensor nodes 102 and 104 on the network 120. The wireless USB dongle 140 or Central Interface Node (CIN) 140 is installed on PC 150 and acts as a bridge allowing the network 120 to interface directly with a PC 150, analogous to a WiFi network card which allows a PC to interact with a WiFi network. In addition to its primary function as a PC-Network bridge, the CIN 140 performs the same storage and network coordination functions as the CSN 108. Unlike the CSN 108 however, data received by the CIN 140 from the sensor nodes 102 and 104 are sent directly to the PC 150 rather than CSN 108. This mode of operation allows sensor data to be processed in real time. Due to its overlapping functionality a deployed network 120 uses either a CSN 108 or CIN 140 but not both.
[00089] The network 100 has two modes of operation:
i. In offline mode, sensor data is sent to the CSN 108 for storage 108b and can be conveniently post-processed at a later time. The offline mode of operation is suitable for long-term monitoring applications where a PC 150 may not be near the patient 100 all the time.
ii. In real-time mode, data is streamed from the sensors 102 and 104 via a CIN 1 0 to a PC 150 allowing for real-time data acquisition and processing.
[00090] The primary components of the sensors 102 and 104 are shown in Fig. 2. An inertial measurement unit 202 is an inertial MEMS sensor including a 3 axis accelerometer 212, 3 axis gyroscope 214 and a 3 axis magnetometer 216 that provide measurements
of angular rate, linear acceleration and magnetic field strength respectively. The inertial measurement unit includes software configurable sampling rates for example of up to 819.2Hz. Acquired data transferred via SPI interface to the wireless microcontroller 218 and is then wirelessly transmitted to either the CSN 108 or CIN 140 for storage and processing.
(00091] The central components of the CSN 108 is shown in Fig. 3. The VDIPL module 300 functions as an embedded USB host controller for the CSN 108. It connects to the transmission module, such as a JN5139 microcontroller 302 via the interface 304, such as a UART, allowing the transmission module 302 to store data acquired wirelessly from the sensor nodes 102, 104 on to a flash drive 180b.
[00092] The central components of the CIN 140 is shown in Fig. 4. A TTL to USB Serial
Converter module 400 allows the transmission module 402 to interface directly with a PC via USB 404. The converter module 400 performs the functions of a protocol translator and level shifter between the output of the transmission module 402 and the USB input 404 of the PC. This communication channel to the transmission module 402 is exposed on the host PC as a configurable virtual serial port allowing programs written on the host PC to communicate with the CIN 140. Unlike the CSN 108 and sensor nodes 102, 104, however the CIN 140 is not battery powered, but draws power from the USB port 404 of the host PC.
The software architecture running in this example for the JN5139 is layered with multiple protocol stacks running simultaneously. An overview of this layered architecture is shown in Fig. 5.
[00094] The lowest MAC and Physical layers 500 of the JN5139 run the IEEE 802.15.4
protocol stack. The IEEE 802.15.4 standard is specifically designed for Wireless Personal Area Networks (WPAN) with short transmission distances of under 10m.
[00095] The Network Layer 502 on the JN5139 runs the JenNet protocol stack. User applications are built upon and interact with the JenNet stack via its Jenie Application Programming Interface. The JenNet stack is a thin protocol stack built upon the IEEE 802.15.4 protocol and extends its capabilities.
[00096] The user application 504 is developed on top of the JenNet Network Layer 502. In fact, the user applications 504 sometimes bypass the JenNet layer 502 and access the lower level IEEE 802.15.4 stack directly to assist in packet loss issues.
[00097] The star topology used by the network is shown in Fig. 6
[00098] A sample user interface shown on the computer 150 is shown in Fig. 35. This GUI visualises the determined stride length data in a stem plot and shows some output statistics. By using the plot tools a user can zoom in or out of the plot, or select some data plot to see the exact value. More graphs and more statistics can be implemented in the plotting and statistics area, such as pie graph which can show the distribution of the stride length (SL) more easily; and percentage of the shorter strides and longer strides. From the statistics the user (e.g. doctors) can see the status of the patient's walking in the data logging period. If the patient is walking more casually and freely, the medication towards this patient is decent. If significant short strides (more than a normal person walks) are observed from the patient's data, this would indicate that the patient's medication can be improved.
[00099] Gait analysis systems based on inertial sensors are affected by many different error sources including accelerometer/gyroscope bias, thermo-mechanical white noise, flicker noise, temperature effects and calibration errors. Kinematics relationship that requires the integration of biased and noise affected measurements will result in errors that accumulate over time. Therefore, several algorithms need to be employed to reduce the uncertainty in the measurement of gait parameters.
(000100] Accelerometers and gyroscopes are the cores of any inertial strapdown system. To obtain positional information from inertial strapdown systems four basic processing stages are required namely
orientation determination,
projection of acceleration onto the global frame,
gravity component removal and
double integration of projected acceleration data to obtain distance travelled.
[000101] These four processing stages are now described with a two-dimensional example.
[000102] Consider a system where a three-axial accelerometer and three-axis gyroscope are attached to the shank of an individual as shown in Fig. 7 and that the motion of the shank is constrained to a single plane (x-z plane). The measurement axes of accelerometer are mounted parallel to the plane of motion whereas the measurement axis of the gyroscope is orthogonal to the accelerometer axes so that it can detect the rotation about the axis perpendicular to the x-z plane. Let a* and
(superscript denotes body frame and subscript denotes measurement axis) denote the measured acceleration in the body frame. The body frame is defined as an orthogonal axis set that is aligned with the sensor measurement axes. As the individual moves, the accelerometer will measure the acceleration of the motion as well as the acceleration due to gravity while the gyroscope will measure the angular velocity of the shank. Assume that initially the body frame is aligned with the global reference frame. This global frame defined as the orthogonal axis set that is aligned with the gravity vector (superscript g denotes global frame). When the shank moves, the body frame will deviate from the global frame by an angle Θ as shown in Fig. 8. Θ can be calculated by integrating the gyroscope measurements, ω. With the assumption initially the sensor axes are aligned with the global frame, Θ can be used to construct a rotation matrix, R that is used to project the accelerometer measurements onto the global frame.
Gravitational acceleration can then be removed by simply subtracting -\g from the projected z-axis accelerometer measurement. Lastly, double integration is used to
calculate the distance travelled. The following equations summarises the basic processin tasks described above.
[000103J Similar processing concepts will apply to three-dimensional systems. Such systems will have more complex orientation representation and will be discussed further below.
(000104J In practice, gait motion is not constrained to two-dimensions. Three-dimensional
modelling must be used in gait analysis to track orientation. This orientation information can then be used to project the accelerometer measurements onto the global frame as explained above. There are three major conventions used to describe the orientation and rotation in 3D space, namely direction cosine matrix, Euler angles, and quaternion. Here only EuleT angle and quaternion is described.
[0001051 Fig. 9 shows a representation of yaw, pitch and roll orientation.
[000106) The Euler Theorem states that three rotations are needed to make a coordinate frame coincide with another frame. Each of the rotations will occur about a new coordinate frame after the previous rotation. To illustrate, assume that a particular reference frame is rotated to a new coordinate frame through a sequence of φθψ rotations. This means that a rotation φ (roll) about x-axis, followed by a rotation Θ (pitch) about the new y- axis and followed by a rotation ψ (yaw) about the newer z-axis are applied onto the original reference frame. These rotations can be expressed mathematically by the equation 5.6.
cos Θ cos ψ - cos φ sin ψ + sin φ sin e cos ψ sin φ $\η φ + cos sin 5 cos ψ r9 cos Θ sin cos φ cos φ + sin φ sin 0 sin φ - sin φ cos φ + cos φ sin Θ sin ψ (5.6) - sin fl sin φ cos 0 cos φ cos 0
[000107] The Euler angles can be obtained by using accelerometer measurement under stationary
condition, which will be discussed below. These angles can also be obtained by solving the differential equation that is related to the angular velocities measurements from the gyroscope. The drawbacks of Euler angle representation is the singularity problem and 'gimbal lock' issue.
(000108) Quaternions are a four-parameter representation of rotation based on the idea that any
coordinate frame can be transformed to another by a single rotation about an Euler axis (axis of rotation). It consists of a set of four parameters in which there are three components of a vector directed along the Euler axis and one scalar quantity, as shown below. q = ai + bj + ck + d = q + q0 (5.7) where i2 - j2 = k2 = ijk - ~\, \q\ = sin fl and q0 = cos 0
[0001091 Quaternions can be used to rotate a vector by using a rotation matrix in equation 5.8.
2 + a2 - b2 ~ cz 2(ab - cd) 2(ac + bd)
C9 - 2(ab + cd) d2 + b2 - a2 - 2(bc - ad) (5.8)
2{ac - bd) 2(bc + ad) d2 + c2 - b2 - a2
[000110] Quaternions can be calculated by using the gyroscope measurements and hence the
rotation matrix Cf , can be obtained. It is related to the angular velocities via the differential equation shown in equation 5.9. Assuming that the gyroscope sampling interval is τ and angular velocities are constant within each sampling period, a discretised version of the solution to equation 5.9 can be written as equation 5.10.
q =
-ω^. -u>y -αιζ 0 qk + i = [exp(nkTs)qk] (5.10a) <?ο = <?(0) (5.10b)
0 ω2 -ωγ
w/iere Ω, = [[ω χ] and [, -ωζ 0 ω^- ι— ω 0 J
>y -ωχ 0
[000111] Unlike Euler Angles, quaternions do not suffer from singularity problems. However, it is important for normalization to be performed for every update of the quaternion to preserve the vector length.
[000112] Wavelet transformation allows the detection of a specified frequency at a specified time. In this example the wavelet theory, the Coiflet wavelet, is chosen in the analysis of gait events due to its similarity with the gait events signal. Wavelet decomposition involves splitting a signal into low-frequency components called approximation and high-frequency components called detail for each level of decomposition. The decomposed signal will be down-sampled
by a factor of 2 so that the same low and high pass filter can be used to further separate the signal until the required frequency range is obtained. Fig. 10 summarises the wavelet decomposition algorithm where cA, and cDi are the approximation and detail respectively, and represents the level of decomposition.
[000113] The act of walking is cyclical, in which the gait cycle can be divided into five phases:
foot-flat (FF) being the point in time in the stance phase when the foot is plantar grade, heel-off (HO) being the point in the stance phase when the heel leaves the ground, toe-off (TO) being the point when terminal contact is made with the toe,
swing phase (SW) the period of time when the foot is not in contact with the ground. In those cases where the foot never leaves the ground (foot drag), it can be defined as the phase when all portions of the foot are in forward motion; and
heel-strike (HS) being the point when initial contact is made with the heel.
|000114] These phases can be detected by using either gyroscope or accelerometer measurements. Fig. 1 1(a) shows the region of these phases by using Y-axis gyroscope signal.
The definitions of all spatiotemporal parameters are listed in the table of Fig. 1 1(b).
Single sensor gait analysis algorithms will now be discussed. The sensor node is attached to the shank of the subject, with the sensor axes shown in Fig. 12. Note that the body initial frame does not align with the global frame.
Fig. 13 provides an overview of the single sensor gait analysis algorithm.
The overview of the step "gait events and step detection" is shown in Fig. 14. The gyroscope is used to detect the dynamic gait events while the fusion of accelerometer and gyroscope is used to detect the stance phase.
[000119] With the sensor orientation shown in Fig. 12, the y-axis gyroscope will be the most sensitive to shank rotation. A typical gyroscope signal of a walking subject is shown in Fig. 15(a) and the method of detecting a stride is shown in Fig. 29. When the subject starts walking from a foot-flat phase, the shank will rotate anti-clockwise about y-axis during which the gyroscope outputs a negative angular velocity. The anti-clockwise rotation will reach a minimum just before the toe-off event, and the gyroscope signal appears to be a sharp minimum peak. The subject's shank will then rotate in the clockwise direction and reach maximum velocity before slowing down to prepare for heel-strike. The heel-strike signal will then appear to be a rather sharp negative minimum peak in the signal. In order to detect the toe-off and heel-strike, which are
sharp minimum turning points, wavelet analysis using Coiflet wavelet is applied onto the gyroscope signal to locate these events in time and frequency domain.
[000120] Two-level wavelet decomposition is applied onto gyroscope signal shown in Fig. 15(a) to decompose the signal into its approximation and scale components. A signal is then reconstructed in time domain using only the detail to extract the high frequency components, that is the high frequency components are determined to be in both in time and frequency domain 320. A typical reconstructed signal is shown in Fig. 15(b) in which high amplitude spikes can be observed at both the toe-off and heel-strike events. The squaring operation is used to amplify the amplitude for more robust peak detection as shown in Fig, 15(c).
[000121] A threshold limit is set to detect these spikes and in practice, multiple nearby spikes may have magnitudes above this threshold. A swing-phase in the gyroscope data is identified by exceeding a predetermined or adaptive threshold 322. The adaptive threshold for determining the swing-phase in the gyroscope data can be implemented by iteratively averaging over the peaks within a certain time window of data and reducing the window size. This approach is advantageous over normal averaging in that high values can be retained leading to a more accurate threshold value. A time corresponding to the middle of the identified swing is used as a reference to remove replicate peaks that appear in the reconstructed signal for the same gait event. Only the nearest spikes to the left (before) 324 and right (after) of the time corresponding to the middle of swing will be stored 326. The sample points corresponding to these spikes are not exactly aligned to the toe-off and heel-strike events. In order to detect the timing of the toe-off and heel-strike event accurately, the detection is further refined by searching for the minima in the original gyroscope signal within a set interval. The flowchart and graph in Fig. 16 summarises the above algorithm.
[000122] The maximum peaks detected and identified at 144 in the reconstructed signal are candidate toe-off or heel-strike events in the reconstructed signal. The mid-swing 146 is identified from the on gyroscope data 142. The candidate 144b being the closest
preceding spike is taken to represent the heel-strike, and candidate 144c is taken to be the toe-strike.
[000123] The local minimums 148a and 148b in the gyroscope signal 142 in a time window centred on the times of the spikes 144b and 144c are identified and the timing of these minimums 148a and 148b are taken as the timing of the heel-strike and toe-strike respectively.
[000124] To validate the toe-off and heel-strike events detected from the algorithm of Fig. 14, stance detection is implemented to detect the time when the foot is stationary on the ground. Stance will be detected if the signal from both the accelerometer and gyroscope satisfy the three conditions stated below.
Ci = \1 amin < M < tha (5.12) CO otherwise
1000126] Condition 2: Local acceleration must be below a given threshold.
0 otherwise
[000127] Condition 3: Magnitude of the gyroscope must be below a given threshold.
|ω* | = jolx + Uk + (»1Ζ (5.15)
CI = kK ^ (5 16)
(.0 otherwise
[000128] These three logical conditions must be satisfied simultaneously for a stance to be detected. The result is then filtered using a median filter to reduce the noise in the output signal. Fig. 17 summarises this method.
[000129] To further refine our gait event algorithms we implement a gait events validation algorithm. In its simplest form, a stride is only detected if the multiple phases of the gait have been identified 328. A more detailed algorithm validates the detected gait events by checking if the gait events occur in proper sequence, namely foot-flat, heel- off, toe-off, swing and heel-strike. It also considers whether a stance is detected in the right sequence. The block diagram of Fig. 18 summarises the validation algorithm. Box 180 can be seen as detecting the stride. Prior to this any detected stride is simply a candidate until validated.
[000130] Stride length (SL) is one of the most important gait parameters for measuring the performance of a Parkinson disease patient. It can be defined as the distance between two consecutive foot-flat, heel-strike or toe-off events. The stride length calculation involves a vector integration that determines both the scalar magnitude and direction. Such information can therefore be used in performing 3D reconstructions of the motion when necessary. Typically, there is an unknown factor which is the initial velocity condition. This quantity has to be kept minimal so that stride length can be calculated accurately. By choosing the integration interval from foot-flat to the next foot-flat event, this unknown quantity can be assumed to be zero since the foot is almost stationary during foot-flat events.
[000131] After each integration interval the velocity and angle are reset to eliminate drift effects.
In particular, the velocity is reset to zero. These resets ensure that integration drift does not accumulate.
[000132] With the integration interval defined above, orientation computation can be divided into two parts. Firstly, the initial orientation is calculated using the accelerometer
measurements and secondly, the relative orientation is calculated using the gyroscope measurements.
(000133] Initial orientation will first be described. During the foot-flat event, denotes the beginning of an integration interval, the foot is stationary. Therefore, the accelerometer measurements only contain the acceleration due to gravity (lg).
[000134J As illustrated in Fig. 17, although the accelerometer in sensor frame measures non-zero component for each axis measurement the magnitude of the acceleration vector is 1 g. The pitch Θ and roll φ angles can be determined by utilizing the knowledge of gravity vector but yaw ψ cannot be determined since the axis of yaw rotation is orthogonal to the gravity vector. By setting ψ to zero for the rotation formula in equation 5.6, the itch and roll angles can be found by solving the matrix equation 5.17.
l-isJ - sin Θ sin φ cos Θ cos φ cos Θ
φ - arctan- ay? (5.17b)
Θ = arcsin (-~) (5.17c)
[000135] The Euler angles can then be used to initialize the quaternion by using the formula shown in equation 5.18.
flo = c0 d0]r
Note that the yaw angle used to initialize the quaternion is equal to zero since absolute yaw angle is not required for stride length calculation. This will be explained in detail below.
[000137] In relation to relative orientation the initialized quaternion is updated in each sampling interval using gyroscope data allowing the orientation of the sensor to be computed for each sample. This information can then be used to project accelerometer measurements to the global reference frame.
[000138] During walking, the measured acceleration will contain both movement acceleration and acceleration due to gravity. In order to calculate the stride length parameter, acceleration due to gravity needs to be removed from the measurement. The measurement from the accelerometer must first be projected on to the global axes by using the rotation matrix set out above. The gravity component can then be removed by simply removing the '-lg'component from the z-axis measurement. The procedure is summarised in equation 5.19.
[000139] In practice, sensor measurement will contain offset and bias due to temperature dependent noise or random walk.
[000140) As illustrated in Fig. 20(a), the projected z-axis acceleration measurement contains a small mean offset of approximately 0.005g while the accelerometer was put stationary. If this acceleration is integrated to calculate the velocity, the velocity will grow almost linearly over time as shown in Fig. 20(b). This effect is called integration drift, which will cause large error in the stride length calculation. However, this integration drift can be removed because the initial and end velocity condition are equal to zero (recall that
the initial and end gait events are foot-flat). This is achieved by applying the equation 5.20.
ν"( = /' α(τ)άτ (5.20a)
[000141] The equation 5.20 can be thought as removing a linearly increasing offset from the velocity obtained from the integration of acceleration and reset the velocity to zero at the end of gait cycle.
[000142] With the integration drift removed from the measurements, distance travelled on each individual axis can be obtained by integrating over the respective velocity component as shown in equation 5.21.
[000143] Recall that absolute yaw angle is not obtained above since there is no absolute horizontal reference vector. In addition, stride length calculation does not require the yaw angle. In order to calculate the stride length, the magnitude of distance travelled on the horizontal plane must be calculated to represent the distance moved for each gait cycle as shown in equation 5.22.
si = (5.22)
[000144] It can be seen that the method utilises a number of thresholds. These can be constant
(see Fig. 25). An alternate way of dynamically calculating these thresholds in shown in Fig. 30. The data filtering method uses detection based on normalized threshold values.
[000145] The main reason for using tri-axial gyroscopes instead of single axis gyroscope is that
there is no specific initial orientation requirement on the sensor. If a single axis gyroscope is used, the sensor axes of the gyroscope need to be approximately aligned with rotation axis of the shank and thigh respectively so that the sensor will be able to capture most of the motion dynamics. Recall that quaternion represents a single rotation Θ about the Euler axis. Instead of limiting the sensor orientation, tri-axis gyroscope should be used to capture the dynamics in 3D space. Gyroscope measurement can be used to update the quaternion, where the angle of rotation about the true rotation axis of thigh and shank can be calculated. Let rotation axis equal to (x,y, z) , quaternion can be rewritten as in equation 5.25. q [x y z] cosf] (5.25)
[0001 6J Note that absolute orientation is not required in this algorithm. Hence, the quaternion
formula can initialised as shown in equation 5.26 to calculate the relative orientation. qi(k + l) = [exp(nkTs)qt(k)) (5.26a) qt( ) = [0 0 0 1] (5.26b) where k = 0,1 ... , tHS(l) - tT0(l)
(tHS = time instant at heelstrike, tT0
(1 = 1, ... N and N: Number of Stride)
[000147] Let „t and be the relative angle between the start and end of swing phase for
thigh and shank respectively, these angles can be calculated using equation 5.27.
qi(tHS(l) - tT0(l) + 1) = [asw (5.27a) aswing °r swing = 2 * arccos(dsw) from thigh and shank gyroscope (5.27a)
[000148] Similarly, equations 5.25-5.27 apply to angle computation during stance phase with
* = 0, l,...,rro(/) -tws(/) .
[000149] In use, five parameters need to be set in the gait events detection algorithm: three
thresholds for stance detection and two thresholds for toe-off and heel-strike detection.
For toe-off and heel-strike detection, the spike threshold is chosen such that its value is the middle point between the lowest amplitude of the spikes and zero. Similarly, the mid-swing point threshold is chosen such that its value is the middle point between the lowest mid-swing value and zero. Fig. 21 shows sample data in use where 220 shows the x-axis gyroscope signal and 222 shows the squared wavelet reconstruction signal that is time aligned with the x-axis gyroscope signal 222.
[000150] For stance detection, three thresholds for magnitude of acceleration, local variance of
acceleration and magnitude of gyroscope need to be determined. The typical measured data are shown in Fig. 22. Where Fig. 22(a) is a y-axis gyroscope signal. Fig. 22(b) .
shows Condition 1 for Stance Detection 230 and Magnitude of Acceleration 232. Fig.
22(c) shows Condition 2 for Stance Detection 233 and Local Variance of Acceleration 234. Fig. 22(d) shows Condition 3 for Stance Detection 236 and Magnitude of Angular Velocity 238.
[000151] Fig. 22(b) has shown the magnitude of acceleration with condition CI , When the sensor
is placed stationary, only the acceleration due to gravity will be measured, which is equal to 9,81ms"2 . Example thresholds are 9ms"2 and 1 1ms'2 for error margin. The output of CI will be high if the magnitude of acceleration falls between the intervals.
Fig. 25(c) shows the local acceleration variance with condition C2. The window size for calculating the local variance is in this specific example is set to be 21 , determined
empirically. When the foot has less dynamics, the local variance of acceleration is very low. An example of a threshold of 1.2 can be set to detect this event. Output of C2 will be high if the local acceleration is less than this threshold. Fig. 25(d) has shown the magnitude of angular velocity with condition C3. An example threshold is 80 degree per second. This means that the output for C3 will be high for the magnitude of angular velocity that is less than this threshold.
[000152] Fig. 23 has shown the overall output of stance detection algorithm. The combination of three conditions is able to detect the stance phase accurately.
(000153] The output of whole gait events detection algorithm is shown in Fig. 24 and a summary of example gait parameters is summarised in the table of Fig. 25.
[000154] The following description shows the robustness of wavelet decomposition method to detect toe-off and heel-strike events. Referring to Fig. 26, the x-axis gyroscope signal 270 of a person swinging their leg instead of walking is shown. This signal 270 includes alternating maximum and minimum peaks like in a typical gait cycle.
[000155] The wavelet reconstructed signal 272 does not contain high amplitude spikes; Although swinging of leg exhibits consecutive positive and negative amplitude, using the method described here they are not detected as the heel-strike and toe-off events because the spikes events are not present in the signal. This shows that the wavelet analysis is able to differentiate a swing from a stride.
[000156] Fig. 27(a) shows z-axis acceleration measurement and Fig. 27(b) shows velocity signal.
This shows that integration of accelerometer measurement, which is the velocity signal; contain the integration drift that grows linearly.
[000157] Fig. 28 shows that the reset velocity signal has the integration drift removed, in which the initial and end velocities are equal to zero.
Fig. 31 shows that the gait events detection algorithm has detected 701 strides out of 709 strides taken by the subjects including the Parkinson Disease Patient and there is no false detection. The eight miss-detections are due to the gait events validation algorithm, which removes any suspected false detection. In conclusion, this algorithm has achieved an accuracy of 98.9%.
Fig. 32 shows the stride length measurement using our developed algorithm has a very strong correlation (R2=0.9949) with the GAITRite stride length measurement. By calibrating the sensor measurement with the above scaling factor and offset value, the mean squared error is 3.02cm2.
Fig. 33 shows the temporal parameter, stride velocity, has a slightly smaller correlation (R2=0.9905) to the GAITRite system in comparison to the stride length. The mean squared error is 4.41cm2.
(000161] Fig. 34 shows that the Parkinson's diseased patients stride length increases after medication in comparison to before medication.
[000162] The real time mode of operation described above this mode of operation further broadens the capabilities of the system allowing it to be deployed in applications such as gaming and real-time gesture recognition.
[000163] The system described is essentially independent of stride style of the user. The parameters listed above could be adjusted for particular individuals, particularly those that do not exhibit the five different phases of the gait cycle.
The reliability and portability offered by this system could serve as a self-monitoring and improvement system for people in different situations such as sports, gaming and rehabilitation.
[000165] It will be appreciated by persons skilled in the art that numerous variations and/or modifications may be made to the above-described embodiments, without departing
from the broad general scope of the present disclosure. The present embodiments are, therefore, to be considered in all respects as illustrative and not restrictive.
Claims
1. A computer-implemented method for stride detection from time series gyroscope sensor data representing angular velocity of a user's leg while taking the stride, the method comprising:
determining a time domain representation of high frequency components of the gyroscope data;
identifying in the gyroscope data a first time associated with a swing-phase of the stride;
identifying in the time domain representation of high frequency components an extreme value that occurs before the first time as a toe-off phase of the stride;
identifying in the time domain representation of high frequency components an extreme value that occurs after the first time as the heel-strike phase of the stride; and detecting the stride only if a swing-phase, toe-off phase and heel-strike phase is identified.
2. The computer-implemented method of claim 1 , wherein the extreme value that occurs before the first time is at a second time, and the method further comprising: identifying in the gyroscope sensor data an extreme value within a time interval based on the second time, and
determining the time of the toe-off phase as the time of the extreme value within the time interval.
3. The computer-implemented method of claim 1 or 2, wherein the extreme value that occurs after the first time is at a third time, and the method further comprising: identifying in the gyroscope sensor data an extreme value within a time interval based on the third time, and
determining the time of the heel-strike phase as the time of the extreme value within the time interval.
4. The computer-implemented method of any one of the preceding claims, wherein stride detection is also based on time series accelerometer sensor data representing a user's leg linear acceleration while taking the stride, and the method further comprising:
applying conditional tests to the accelerometer data and the gyroscope data that if met identify a flat-foot phase at a fourth time.
5. The computer-implemented method of 4, and limited by claim 2 and 3, wherein the method further comprises:
validating the stride detection if the fourth time:
occurs before the second time and within a predetermined time interval based on the second time, and/or
occurs after the third time and does not occur between the second and third time.
6. The computer-implemented method of any one of the preceding claims, wherein the gyroscope data is tri-axial and stride detection is also based on time series accelerometer sensor data representing a user's leg linear acceleration while taking the stride, and the method further comprising:
determining the orientation" of the sensor having the gyroscope and accelerometer from the accelerometer data and gyroscope data.
7.. The computer-implemented method of any one of the preceding claims, wherein stride detection is also based on time series accelerometer sensor data representing the user's leg linear acceleration while taking the stride, and the method is repeated to detect a second stride in the time series gyroscope sensor data, and the method further comprising:
identify a flat-foot phase of the stride and the second stride based on the gyroscope sensor data and accelerometer sensor data representing the user's leg linear acceleration taking the stride; and
determining the velocity of the stride by integrating the accelerometer signal as measured between the flat-foot phase of the stride and the flat-foot phase of the second stride.
8. The computer-implemented method of claim 7, wherein the method is repeated to detect a third stride in the time series gyroscope data, the method further comprising: identify a flat-foot phase of the third stride based on the gyroscope sensor data and the accelerometer sensor data of a user taking the stride; and
determining the velocity of the stride between the flat-foot phase of the second stride and the flat-foot phase of the third stride by initially re-estimating the initial velocity to zero and re-estimating the velocity of the sensor having the gyroscope and the accelerometer.
9. The computer-implemented method of any one of the preceding claims, wherein the extreme value of the time domain representation of high frequency components is identified based on an adaptive threshold.
10. The computer-implemented method of any one of the preceding claims, wherein the identifying the swing phase of the stride is based on an adaptive threshold.
11. Software, that is computer readable instructions stored on computer readable medium, that when executed by a computer causes the computer to perform any one of the preceding claims.
12. A stride detection system to detect a stride from time series gyroscope sensor data representing angular velocity of a user's leg while taking the stride, the system comprising a processor programmed to:
determine a time domain representation of high frequency components of the gyroscope data;
identify in the gyroscope data a first time associated with a swing phase of the stride;
identify in the time domain representation of high frequency components an extreme value that occurs before the first time as a toe-off phase of the stride;
identify in the time domain representation of high frequency components an extreme value that occurs after the first time as the heel-strike phase of the stride; and
detect the stride only if a swing-phase, toe-off phase and heel-strike phase is identified.
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| AU2012904124A AU2012904124A0 (en) | 2012-09-20 | Step detection | |
| AU2012904124 | 2012-09-20 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2014043757A1 true WO2014043757A1 (en) | 2014-03-27 |
Family
ID=50340456
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/AU2013/001074 Ceased WO2014043757A1 (en) | 2012-09-20 | 2013-09-20 | Stride detection |
Country Status (1)
| Country | Link |
|---|---|
| WO (1) | WO2014043757A1 (en) |
Cited By (32)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US9452287B2 (en) | 2013-01-21 | 2016-09-27 | Cala Health, Inc. | Devices and methods for controlling tremor |
| KR20160148356A (en) * | 2015-06-16 | 2016-12-26 | 전진홍 | Device and method for measuring body posture |
| US9802041B2 (en) | 2014-06-02 | 2017-10-31 | Cala Health, Inc. | Systems for peripheral nerve stimulation to treat tremor |
| CN110680335A (en) * | 2019-10-08 | 2020-01-14 | 深圳市臻络科技有限公司 | Step length measuring method and device, system and non-volatile computer storage medium thereof |
| CN110916984A (en) * | 2019-12-03 | 2020-03-27 | 上海交通大学医学院附属第九人民医院 | Wearable device for preventing frozen gait and implementation method thereof |
| US10765856B2 (en) | 2015-06-10 | 2020-09-08 | Cala Health, Inc. | Systems and methods for peripheral nerve stimulation to treat tremor with detachable therapy and monitoring units |
| US10814130B2 (en) | 2016-07-08 | 2020-10-27 | Cala Health, Inc. | Dry electrodes for transcutaneous nerve stimulation |
| US11113943B2 (en) | 2019-05-07 | 2021-09-07 | Electronic Caregiver, Inc. | Systems and methods for predictive environmental fall risk identification |
| US11213224B2 (en) * | 2018-03-19 | 2022-01-04 | Electronic Caregiver, Inc. | Consumer application for mobile assessment of functional capacity and falls risk |
| WO2022066095A1 (en) * | 2020-09-25 | 2022-03-31 | Walkbeat Ab | System and method for analyzing gait in humans |
| US11331480B2 (en) | 2017-04-03 | 2022-05-17 | Cala Health, Inc. | Systems, methods and devices for peripheral neuromodulation for treating diseases related to overactive bladder |
| US11344722B2 (en) | 2016-01-21 | 2022-05-31 | Cala Health, Inc. | Systems, methods and devices for peripheral neuromodulation for treating diseases related to overactive bladder |
| US11488724B2 (en) | 2018-06-18 | 2022-11-01 | Electronic Caregiver, Inc. | Systems and methods for a virtual, intelligent and customizable personal medical assistant |
| US11596785B2 (en) | 2015-09-23 | 2023-03-07 | Cala Health, Inc. | Systems and methods for peripheral nerve stimulation in the finger or hand to treat hand tremors |
| WO2023095032A1 (en) * | 2021-11-24 | 2023-06-01 | Kinetikos Driven Solutions, S.A. | System and method for unsupervised monitoring in mobility related disorders |
| US11791050B2 (en) | 2019-02-05 | 2023-10-17 | Electronic Caregiver, Inc. | 3D environment risks identification utilizing reinforced learning |
| CN116919387A (en) * | 2023-04-07 | 2023-10-24 | 深圳市韶音科技有限公司 | Gait data processing method and system |
| US11857778B2 (en) | 2018-01-17 | 2024-01-02 | Cala Health, Inc. | Systems and methods for treating inflammatory bowel disease through peripheral nerve stimulation |
| US11890468B1 (en) | 2019-10-03 | 2024-02-06 | Cala Health, Inc. | Neurostimulation systems with event pattern detection and classification |
| US11923058B2 (en) | 2018-04-10 | 2024-03-05 | Electronic Caregiver, Inc. | Mobile system for the assessment of consumer medication compliance and provision of mobile caregiving |
| US12009083B2 (en) | 2020-11-16 | 2024-06-11 | Electronic Caregiver, Inc. | Remote physical therapy and assessment of patients |
| US12011259B2 (en) | 2015-12-11 | 2024-06-18 | Electronic Caregiver, Inc. | Systems and methods for fall detection |
| US12034748B2 (en) | 2020-02-28 | 2024-07-09 | Electronic Caregiver, Inc. | Intelligent platform for real-time precision care plan support during remote care management |
| WO2024207511A1 (en) * | 2023-04-07 | 2024-10-10 | 深圳市韶音科技有限公司 | Processing method and system for gait data |
| US12125137B2 (en) | 2020-05-13 | 2024-10-22 | Electronic Caregiver, Inc. | Room labeling drawing interface for activity tracking and detection |
| US12127817B2 (en) | 2020-07-22 | 2024-10-29 | Electronic Caregiver, Inc. | Systems and methods for mitigating the spread of infectious diseases |
| US12233265B2 (en) | 2016-08-25 | 2025-02-25 | Cala Health, Inc. | Systems and methods for treating cardiac dysfunction through peripheral nerve stimulation |
| US12251560B1 (en) | 2019-08-13 | 2025-03-18 | Cala Health, Inc. | Connection quality determination for wearable neurostimulation systems |
| US12265900B2 (en) | 2018-01-17 | 2025-04-01 | Electronic Caregiver, Inc. | Computing devices with improved interactive animated conversational interface systems |
| US12453853B2 (en) | 2013-01-21 | 2025-10-28 | Cala Health, Inc. | Multi-modal stimulation for treating tremor |
| US12575780B2 (en) | 2015-07-31 | 2026-03-17 | Cala Health, Inc. | Systems, devices, and method for the treatment of osteoarthritis |
| US12629522B1 (en) | 2023-12-04 | 2026-05-19 | Cala Health, Inc. | Neurostimulation systems with event pattern detection and classification |
Citations (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20050010139A1 (en) * | 2002-02-07 | 2005-01-13 | Kamiar Aminian | Body movement monitoring device |
| US20100228520A1 (en) * | 2006-06-09 | 2010-09-09 | Pal Technologies Ltd. | activity monitor |
| US20120078594A1 (en) * | 2009-03-31 | 2012-03-29 | Commissariat A L'energie Atomique Et Aux Energies Alternatives | System and method for observing a person's walking activity |
| US20120089330A1 (en) * | 2010-10-07 | 2012-04-12 | Honeywell International Inc. | System and method for wavelet-based gait classification |
| WO2012077142A1 (en) * | 2010-12-07 | 2012-06-14 | I.N.A.I.L. Instituto Nazionale Per L'assicurazione Contro Gli Infortuni Sul Lavoro | Method of analysis of the movement particularly of the walk of a person |
-
2013
- 2013-09-20 WO PCT/AU2013/001074 patent/WO2014043757A1/en not_active Ceased
Patent Citations (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20050010139A1 (en) * | 2002-02-07 | 2005-01-13 | Kamiar Aminian | Body movement monitoring device |
| US20100228520A1 (en) * | 2006-06-09 | 2010-09-09 | Pal Technologies Ltd. | activity monitor |
| US20120078594A1 (en) * | 2009-03-31 | 2012-03-29 | Commissariat A L'energie Atomique Et Aux Energies Alternatives | System and method for observing a person's walking activity |
| US20120089330A1 (en) * | 2010-10-07 | 2012-04-12 | Honeywell International Inc. | System and method for wavelet-based gait classification |
| WO2012077142A1 (en) * | 2010-12-07 | 2012-06-14 | I.N.A.I.L. Instituto Nazionale Per L'assicurazione Contro Gli Infortuni Sul Lavoro | Method of analysis of the movement particularly of the walk of a person |
Non-Patent Citations (1)
| Title |
|---|
| LEE S-W. ET AL.: "Detection of Spatio-Temporal Gait Parameters by Using Wearable Motion Sensors", PROCEEDINGS OF THE 2005 IEEE ENGINEERING IN MEDICINE AND BIOLOGY 27TH ANNUAL CONFERENCE, SHANGHAI, CHINA, pages 6836 - 6839 * |
Cited By (53)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US12161858B2 (en) | 2013-01-21 | 2024-12-10 | Cala Health, Inc. | Devices and methods for controlling tremor |
| US12453853B2 (en) | 2013-01-21 | 2025-10-28 | Cala Health, Inc. | Multi-modal stimulation for treating tremor |
| US10850090B2 (en) | 2013-01-21 | 2020-12-01 | Cala Health, Inc. | Devices and methods for controlling tremor |
| US9452287B2 (en) | 2013-01-21 | 2016-09-27 | Cala Health, Inc. | Devices and methods for controlling tremor |
| US10625074B2 (en) | 2013-01-21 | 2020-04-21 | Cala Health, Inc. | Devices and methods for controlling tremor |
| US10179238B2 (en) | 2014-06-02 | 2019-01-15 | Cala Health, Inc. | Systems for peripheral nerve stimulation |
| US10960207B2 (en) | 2014-06-02 | 2021-03-30 | Cala Health, Inc. | Systems for peripheral nerve stimulation |
| US10549093B2 (en) | 2014-06-02 | 2020-02-04 | Cala Health, Inc. | Method for peripheral nerve stimulation |
| US10561839B2 (en) | 2014-06-02 | 2020-02-18 | Cala Health, Inc. | Systems for peripheral nerve stimulation |
| US12109413B2 (en) | 2014-06-02 | 2024-10-08 | Cala Health, Inc. | Systems and methods for peripheral nerve stimulation to treat tremor |
| US10173060B2 (en) | 2014-06-02 | 2019-01-08 | Cala Health, Inc. | Methods for peripheral nerve stimulation |
| US10905879B2 (en) | 2014-06-02 | 2021-02-02 | Cala Health, Inc. | Methods for peripheral nerve stimulation |
| US9802041B2 (en) | 2014-06-02 | 2017-10-31 | Cala Health, Inc. | Systems for peripheral nerve stimulation to treat tremor |
| US10765856B2 (en) | 2015-06-10 | 2020-09-08 | Cala Health, Inc. | Systems and methods for peripheral nerve stimulation to treat tremor with detachable therapy and monitoring units |
| US12157001B2 (en) | 2015-06-10 | 2024-12-03 | Cala Health, Inc. | Systems and methods for peripheral nerve stimulation to treat tremor with detachable therapy and monitoring units |
| KR101702462B1 (en) | 2015-06-16 | 2017-02-03 | 전진홍 | Device and method for measuring body posture |
| KR20160148356A (en) * | 2015-06-16 | 2016-12-26 | 전진홍 | Device and method for measuring body posture |
| US12575780B2 (en) | 2015-07-31 | 2026-03-17 | Cala Health, Inc. | Systems, devices, and method for the treatment of osteoarthritis |
| US11596785B2 (en) | 2015-09-23 | 2023-03-07 | Cala Health, Inc. | Systems and methods for peripheral nerve stimulation in the finger or hand to treat hand tremors |
| US12420082B2 (en) | 2015-09-23 | 2025-09-23 | Cala Health, Inc. | Systems and methods for peripheral nerve stimulation in the finger or hand |
| US12011259B2 (en) | 2015-12-11 | 2024-06-18 | Electronic Caregiver, Inc. | Systems and methods for fall detection |
| US12357824B2 (en) | 2016-01-21 | 2025-07-15 | Cala Health, Inc. | Systems, methods and devices for peripheral neuromodulation |
| US11918806B2 (en) | 2016-01-21 | 2024-03-05 | Cala Health, Inc. | Systems, methods and devices for peripheral neuromodulation of the leg |
| US11344722B2 (en) | 2016-01-21 | 2022-05-31 | Cala Health, Inc. | Systems, methods and devices for peripheral neuromodulation for treating diseases related to overactive bladder |
| US10814130B2 (en) | 2016-07-08 | 2020-10-27 | Cala Health, Inc. | Dry electrodes for transcutaneous nerve stimulation |
| US12233265B2 (en) | 2016-08-25 | 2025-02-25 | Cala Health, Inc. | Systems and methods for treating cardiac dysfunction through peripheral nerve stimulation |
| US11331480B2 (en) | 2017-04-03 | 2022-05-17 | Cala Health, Inc. | Systems, methods and devices for peripheral neuromodulation for treating diseases related to overactive bladder |
| US12161865B2 (en) | 2017-04-03 | 2024-12-10 | Cala Health, Inc. | Systems, methods and devices for peripheral neuromodulation |
| US11857778B2 (en) | 2018-01-17 | 2024-01-02 | Cala Health, Inc. | Systems and methods for treating inflammatory bowel disease through peripheral nerve stimulation |
| US12265900B2 (en) | 2018-01-17 | 2025-04-01 | Electronic Caregiver, Inc. | Computing devices with improved interactive animated conversational interface systems |
| US11213224B2 (en) * | 2018-03-19 | 2022-01-04 | Electronic Caregiver, Inc. | Consumer application for mobile assessment of functional capacity and falls risk |
| JP7375120B2 (en) | 2018-03-19 | 2023-11-07 | エレクトロニック ケアギヴァー,インコーポレイテッド | Consumer application for mobile assessment of functional capacity and fall risk |
| JP2022153362A (en) * | 2018-03-19 | 2022-10-12 | エレクトロニック ケアギヴァー,インコーポレイテッド | Consumer application for mobile assessment of functional capacity and falls risk |
| KR20220123326A (en) | 2018-03-19 | 2022-09-06 | 일렉트로닉 케어기버, 아이앤씨. | Consumer application for mobile assessment of functional ability and fall risk |
| US11923058B2 (en) | 2018-04-10 | 2024-03-05 | Electronic Caregiver, Inc. | Mobile system for the assessment of consumer medication compliance and provision of mobile caregiving |
| US11488724B2 (en) | 2018-06-18 | 2022-11-01 | Electronic Caregiver, Inc. | Systems and methods for a virtual, intelligent and customizable personal medical assistant |
| US11791050B2 (en) | 2019-02-05 | 2023-10-17 | Electronic Caregiver, Inc. | 3D environment risks identification utilizing reinforced learning |
| US12033484B2 (en) | 2019-05-07 | 2024-07-09 | Electronic Caregiver, Inc. | Systems and methods for predictive environmental fall risk identification using dynamic input |
| US11113943B2 (en) | 2019-05-07 | 2021-09-07 | Electronic Caregiver, Inc. | Systems and methods for predictive environmental fall risk identification |
| US12251560B1 (en) | 2019-08-13 | 2025-03-18 | Cala Health, Inc. | Connection quality determination for wearable neurostimulation systems |
| US11890468B1 (en) | 2019-10-03 | 2024-02-06 | Cala Health, Inc. | Neurostimulation systems with event pattern detection and classification |
| CN110680335A (en) * | 2019-10-08 | 2020-01-14 | 深圳市臻络科技有限公司 | Step length measuring method and device, system and non-volatile computer storage medium thereof |
| CN110916984A (en) * | 2019-12-03 | 2020-03-27 | 上海交通大学医学院附属第九人民医院 | Wearable device for preventing frozen gait and implementation method thereof |
| US12034748B2 (en) | 2020-02-28 | 2024-07-09 | Electronic Caregiver, Inc. | Intelligent platform for real-time precision care plan support during remote care management |
| US12125137B2 (en) | 2020-05-13 | 2024-10-22 | Electronic Caregiver, Inc. | Room labeling drawing interface for activity tracking and detection |
| US12127817B2 (en) | 2020-07-22 | 2024-10-29 | Electronic Caregiver, Inc. | Systems and methods for mitigating the spread of infectious diseases |
| WO2022066095A1 (en) * | 2020-09-25 | 2022-03-31 | Walkbeat Ab | System and method for analyzing gait in humans |
| US12009083B2 (en) | 2020-11-16 | 2024-06-11 | Electronic Caregiver, Inc. | Remote physical therapy and assessment of patients |
| WO2023095032A1 (en) * | 2021-11-24 | 2023-06-01 | Kinetikos Driven Solutions, S.A. | System and method for unsupervised monitoring in mobility related disorders |
| CN119110705A (en) * | 2023-04-07 | 2024-12-10 | 深圳市韶音科技有限公司 | Gait data processing method and system |
| WO2024207511A1 (en) * | 2023-04-07 | 2024-10-10 | 深圳市韶音科技有限公司 | Processing method and system for gait data |
| CN116919387A (en) * | 2023-04-07 | 2023-10-24 | 深圳市韶音科技有限公司 | Gait data processing method and system |
| US12629522B1 (en) | 2023-12-04 | 2026-05-19 | Cala Health, Inc. | Neurostimulation systems with event pattern detection and classification |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| Zhao et al. | Adaptive gait detection based on foot-mounted inertial sensors and multi-sensor fusion | |
| Sessa et al. | A methodology for the performance evaluation of inertial measurement units | |
| Mannini et al. | Walking speed estimation using foot-mounted inertial sensors: Comparing machine learning and strap-down integration methods | |
| Anwary et al. | An automatic gait feature extraction method for identifying gait asymmetry using wearable sensors | |
| Zhou et al. | Inertial sensors for motion detection of human upper limbs | |
| Takeda et al. | Gait analysis using gravitational acceleration measured by wearable sensors | |
| Mannini et al. | Gait phase detection and discrimination between walking–jogging activities using hidden Markov models applied to foot motion data from a gyroscope | |
| Picerno | 25 years of lower limb joint kinematics by using inertial and magnetic sensors: A review of methodological approaches | |
| Mariani et al. | Heel and toe clearance estimation for gait analysis using wireless inertial sensors | |
| Meng et al. | Self-contained pedestrian tracking during normal walking using an inertial/magnetic sensor module | |
| Sabatini et al. | Fourier-based integration of quasi-periodic gait accelerations for drift-free displacement estimation using inertial sensors | |
| Wang et al. | Estimate spatial-temporal parameters of human gait using inertial sensors | |
| Hamacher et al. | Towards the assessment of local dynamic stability of level-grounded walking in an older population | |
| Djurić-Jovičić et al. | Nonlinear optimization for drift removal in estimation of gait kinematics based on accelerometers | |
| US11092441B2 (en) | Systems and methods for walking speed estimation | |
| Yang et al. | Inertial sensors in estimating walking speed and inclination: an evaluation of sensor error models | |
| Tjhai et al. | Step-size estimation using fusion of multiple wearable inertial sensors | |
| Tjhai et al. | Using step size and lower limb segment orientation from multiple low-cost wearable inertial/magnetic sensors for pedestrian navigation | |
| Yan et al. | Accurate fall detection by nine-axis IMU sensor | |
| Ammann et al. | Human motion component and envelope characterization via wireless wearable sensors | |
| Sun et al. | An artificial neural network framework for lower limb motion signal estimation with foot-mounted inertial sensors | |
| Akhavanhezaveh et al. | Diagnosing gait disorders based on angular variations of knee and ankle joints utilizing a developed wearable motion sensor | |
| Qiu et al. | Heterogeneous data fusion for three-dimensional gait analysis using wearable MARG sensors | |
| Visi et al. | Assessing the accuracy of an algorithm for the estimation of spatial gait parameters using inertial measurement units: application to healthy subject and hemiparetic stroke survivor | |
| Ahmadi et al. | Human gait monitoring using body-worn inertial sensors and kinematic modelling |
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: 13838609 Country of ref document: EP Kind code of ref document: A1 |
|
| NENP | Non-entry into the national phase |
Ref country code: DE |
|
| 122 | Ep: pct application non-entry in european phase |
Ref document number: 13838609 Country of ref document: EP Kind code of ref document: A1 |