Difference between revisions of "Gait events"
Siddhartha (Talk | contribs) |
Siddhartha (Talk | contribs) |
||
Line 53: | Line 53: | ||
*implement_type - To detect the gait event, two implementations are provided. Default value: 'fit' | *implement_type - To detect the gait event, two implementations are provided. Default value: 'fit' | ||
**'fit' - 2D Gaussian distribution fitting is done to estimate gait event (runs slow) | **'fit' - 2D Gaussian distribution fitting is done to estimate gait event (runs slow) | ||
− | **'fast'- faster | + | **'fast'- faster implementation to estimate the event. Warning: 'fast' implementation might not give the best estimate of the gait event compared to gaussian fitting. It is not presented in the paper but is solely provided to estimate events faster without gaussian fitting. |
'''Output Arguments:''' | '''Output Arguments:''' | ||
− | *HS - vector containing sample numbers of Heel-Strike | + | *HS - vector containing sample numbers of Heel-Strike occurrences |
− | *TO - vector containing sample numbers of Toe-Off | + | *TO - vector containing sample numbers of Toe-Off occurrences |
Revision as of 22:13, 24 October 2016
Gait Event Detection in Real-World Environments for Long-Term Applications
Detecting gait events is the key to many gait analysis applications that would benefit from continuous monitoring or long-term analysis. Most gait event detection algorithms using wearable sensors that offer a potential for use in daily living have been developed from data collected in controlled indoor experiments. However, for real-word applications, it is essential that the analysis is carried out in humans’ natural environment; that involves different gait speeds, changing walking terrains, varying surface inclinations and regular turns among other factors. Existing domain knowledge in the form of principles or underlying fundamental gait relationships can be utilized to drive and support the data analysis in order to develop robust algorithms that can tackle real-world challenges in gait analysis. This paper presents a novel approach that exhibits how domain knowledge about human gait can be incorporated into time-frequency analysis to detect gait events from longterm accelerometer signals. The accuracy and robustness of the proposed algorithm are validated by experiments done in indoor and outdoor environments with approximately 93,600 gait events in total. The proposed algorithm exhibits consistently high performance scores across all datasets in both, indoor and outdoor environments.
List of Specifications
- Activities: Walking and running
- Accelerometer:
- Placement of 3-axis Accelerometer: Anywhere around the ankle in any orientation as shown in Figure 1.
- Sensitivity of the Accelerometer: (+-) 4g or more. Please also check if the accelerometer signal has saturated during intense activity such as running.
- Sampling Frequency: Preferred - 128 Hz [A Sampling frequency of 50Hz and above is acceptable.]
- Input data:
- accX - accelerometer data from X - axis
- accY - accelerometer data from Y - axis
- accZ - accelerometer data from Z - axis
- Input data format: The accelerometer signals should be in units of m/s^2 and need to be in .mat format [in Matlab file format].
- IMPORTANT NOTE: The data should consist of ONLY walking and running segments of the signal. Segments corresponding to inactivity or any other activity should be removed from the signals prior to running the implementation.
Implementation
The implementation of the algorithm is provided as a library that can be used to detect gait events from 3-axis accelerometer signals collected during walking or running.
[HS,TO] = SK_gedAlgo(accX,accY,accZ,Fs,winSizeFactor,implement_type);
Input Arguments:
- accX, accY, accZ [unit: m/s^2]- signals obtained from each individual axis of 3-axes accelerometer
- Fs [unit: Hz] - sampling frequency of the acceleration signal. Originally developed for 128 Hz
- winSizeFactor - size of the running window. Default value = 3. Vary this size from 2 to 6 to get better results or if code crashes.
- implement_type - To detect the gait event, two implementations are provided. Default value: 'fit'
- 'fit' - 2D Gaussian distribution fitting is done to estimate gait event (runs slow)
- 'fast'- faster implementation to estimate the event. Warning: 'fast' implementation might not give the best estimate of the gait event compared to gaussian fitting. It is not presented in the paper but is solely provided to estimate events faster without gaussian fitting.
Output Arguments:
- HS - vector containing sample numbers of Heel-Strike occurrences
- TO - vector containing sample numbers of Toe-Off occurrences
[1] Siddhartha Khandelwal; Nicholas Wickström, "Gait Event Detection in Real-World Environment for Long-Term Applications: Incorporating Domain Knowledge into Time-Frequency Analysis," in IEEE Transactions on Neural Systems and Rehabilitation Engineering , vol.PP, no.99, pp.1-1
[2] Siddhartha Khandelwal; Nicholas Wickström, "Identification of Gait Events using Expert Knowledge and Continuous Wavelet Transform Analysis", in BIOSIGNALS 2014, 7th International Conference on Bio-inspired Systems and Signal Processing, Angers, France, March 3-6, 2014
DiVA url: [3]
[3] Siddhartha Khandelwal, Nicholas Wickström, Evaluation of the performance of accelerometer-based gait event detection algorithms in different real-world scenarios using the MAREA gait database, Gait & Posture, Volume 51, January 2017, Pages 84-90, ISSN 0966-6362, http://dx.doi.org/10.1016/j.gaitpost.2016.09.023.
Link to the MAREA gait database: MAREA gait databse