Instrumented gait assessment with a single wearable: an introductory tutorial

Background : Gait is a powerful tool to identify ageing and track disease progression. Yet, its high resolution measurement via traditional instruments remains restricted to the laboratory or bespoke clinical facilities. The potential for that to change is due to the advances in wearables where the synergy between devices and smart algorithms has provided the potential of ‘a gait lab on a chip’. Methods : Commercially available wearables for gait quantification remain expensive and are restricted to a limited number of characteristics unsuitable for a comprehensive assessment required within intervention or epidemiological studies. However, the increasing demand for low-cost diagnostics has fuelled the shift in how health-related resources are distributed. As such we adopt open platform technology and validated research methodologies to harmonise engineering solutions to satisfy current epidemiological needs. Results : We provide an introduction to conduct a routine instrumented gait assessment with a discrete, low-cost, accelerometer-based wearable. We show that the capture and interpretation of raw gait signals with a common scripting language can be straightforward and suitable for use within modern studies. We highlight the best approaches and hope that this will help compliment any analytical tool-kit as part of future cohort assessments. Conclusions : Deployment of wearables can allow accurate gait assessment in accordance with advocated methods of data collection as there is a strong demand for sensitive outcomes derived from pragmatic tools. This tutorial shows that instrumentation of gait using a single open source wearable is pragmatic due to low-cost and translational analytical methods to derive sensitive outcomes.


Introduction
Human locomotion (gait) can be described as the ability to perform a whole body movement in a rhythmical and consistent manner to transverse a distance in a safe and upright posture. Its preservation is important for independence and longevity in older adults and crucial for people with movement disorders whose quality of life is further threatened by falls and multisystem deconditioning 1 . Its correct quantification is now recognised as a powerful tool to identify ageing 2 , enhance diagnostics, measure efficacy of intervention and monitor disease progression 2-4 . Furthermore, its utility can be broadened to predict the risk of disease, falls, and cognitive decline 5 .
While gait speed is a useful global characteristic of performance 6 it may not capture the nature of underlying pathology 7 . Instrumenting gait to define more precise and clinical relevant spatio-temporal gait features (e.g. step time, step length) stem from the use of large, expensive mechanical laboratory-based equipment typical of clinical/laboratory facilities. A newer more practical approach has emerged in the form of wearable technology (wearables), i.e. lightweight, discrete and smaller accelerometer and/or gyroscope-based devices that can be attached to the body over/ under clothing. The added benefit of these devices is their suitability for deployment in any setting: low-cost, continuous recording for a multitudinous number of gait cycles 8 and potential for quantifying novel frequency-based gait features 9 . Despite their obvious advantages, their use has been limited to academic studies rather than regular clinical usage within epidemiological studies. This can be attributed to: (i) poor agreement when compared to traditional laboratory-based reference equipment during validation studies 8,10 ; and (ii) bespoke technical/engineering skills required to design/implement algorithms for the interpretation of the raw signals which differ due to attachment location, e.g. chest or waist 11 . The latter presents a signal processing challenge beyond the scope of any (typical) clinical researcher for whom the application of wearables would yield greater dividends: gait assessment as an accurate and reliable prognostic tool for healthy and/or pathological populations 2,12 .
In this tutorial we address this problem which has hindered both engineering and clinical professions: development versus application. We provide an introduction on how gait can be instrumented with a single, low-cost wearable. This is informed by best practice, validated methodologies 8,10 and a clinically relevant conceptual gait model 7 . We hope this tutorial will facilitate the utility of instrumented gait as a pragmatic tool for biomarker development in future epidemiological studies.

Materials and methods
Wearable technology: the mechanics The common sensor within modern wearables comprises a tri-axial (medio-lateral, anterior-posterior, longitudinal) accelerometer: due to low manufacturing cost, miniaturised size and low power consumption 8 . Data digitisation and associated memory within the wearable, one full battery charge of a modern wearable is sufficient to gather data every 0.01s (100 Hertz) for 7 days. The equivalent of over 180 million (60 data point/second × 3 axis) data points to analyse a participant. Accelerometers quantify acceleration (measured in meters per second squared, m•s -2 ), calculated from the varying voltage generated within the sensor during movement (e.g. gait), for detailed functionality refer to 13. The signal generated is a combination of acceleration due to (i) dynamic conditions where each axis is perturbed due to 3-dimensional motion and (ii) static conditions where gravity has a pronounced effect on one axis of the tri-axial accelerometer (depending on attachment orientation) making this sensor useful for measuring static posture (lying, sitting, standing).

Wearable technology: current options
There is a plethora of commercial wearables for gait studies, e.g.: GaitUp (foot), Opal (ankle), StepWatch ™ (shank) and DynaPort (lower back). Each of the aforementioned may not offer the high sampling rates to gather ~180 million data points but all positives/ negatives depending on the research question and provision of pre-programed outcomes. Nevertheless, all may be constraint by proprietary software and hence inbuilt data analytics. However, a recent shift by manufacturers has seen the (intellectual property) shackles loosened/removed to allow access to the 'raw' wearable data for bespoke analysis, facilitating attachment to any anatomical location (e.g. Shimmer ™ ) 14,15 . This has been driven by the rapidly developing 'open-source movement', a concept of allowing access to all technical schematics, software scripts and algorithm descriptions. As such the potential for researchers (engineering/clinical) to analyse and interpret wearable signals has risen. One opensource wearable is the movement monitor AX3 (from Axivity; dimensions: 23.0 × 32.5 × 7.6 mm; weight: 9 grams), which allows access to raw data and is not constrained by one anatomical location. While that device is low-cost, no proprietary software exists to aid analytics from the signals that are generated.
The following section details the instrumentation of gait in any environment. While numerous devices have been highlighted, we present a methodology for a high resolution device (100Hz) worn on the lower back.

Instrumenting gait
Due to the miniaturised form factor of most wearables, they can be worn discreetly on almost any body location. As different

Box 1. Key messages
• Cohort/pathological studies need objective methods of capturing outcomes sensitive to disease onset and progression.
• Gait has been shown as a pragmatic and useful (bio) marker of incipient pathology, inform diagnostic, track disease progression and measure the efficacy of interventions.
• Wearable technology offers the ability to capture gait data in any environment.
• A validated conceptual model of gait is presented. We recommend its adoption and use of a single low-cost wearable on the lower back with supplied analytical methodology.
• Quantified gait characteristics with wearables facilitate the possibility for personalised treatment and integration into modern telehealth infrastructures.
accelerations are experienced at different anatomical locations, correct placement is of paramount importance when attaching the wearable 11 . This is because algorithms used to investigate the signal and compute spatio-temporal outcomes are dependent on signal characteristics such as repeatable signal shapes/features. Typically, gait research has aligned to use of wearables located as close as possible to the centre of mass (CoM), i.e. the lower back (typically, 5 th lumbar vertebrae, L5). This best tracks whole body movement and for the purposes of instrumented testing a number of physical capability assessments and associated algorithms 16 . In another, it facilitates the use of a single wearable which reduces burden on the researcher and participant. This is of paramount importance during intervention or epidemiological studies where large patient numbers are recruited and tested 12,17,18 . The following details a methodology for instrumented gait analysis that has been successfully implemented in several healthy and pathological studies 8,10,12,18-20 .
Device attachment. Commercial devices are usually equipped with a strap/belt/clip for attachment. For the purposes of instrumented gait it is preferable that the wearable is attached as firmly to the participant as possible, eliminating spurious movement due to slippage. This usually requires direct attachment to the skin with a combination of dermatological adhesive(s) (e.g. Hypafix, BSN Medical Limited, Hull, UK) and double-sided tape. However, during prolonged testing, the participant's skin (if frail/dry) can become compromised as a result of slight wearable movement due to lack of protection from thin double-sided tape. A solution is to adopt an adhesive hydrogel (e.g. PALstickies, PALTechnologies, Glasgow, UK) which provides additional padding due to its thicker design. Some motion artefact (slippage) and misalignment due to correct orientation and placement may be eliminated at the pre-processing stage from previously recommended procedures 21,22 . Generally, under controlled gait assessment motion artefact is minimised due to a stringent and structured protocol.
(Note: alternate locations (e.g. chest, waist) may be possible, depending on the robustness (suitability) of the algorithm used to accurately detect gait events for different locations other than from its intended use 20 ).
Protocol & gait characteristics. Validated instrumentation has shown that the use of a single wearable on L5 can capture 14 clinically relevant gait characteristics 10,16 . Derived from a conceptual model ( Figure 1a) they have been shown to be sensitive to age and pathology 2 . Previous research suggests that the participant should perform a 2 minute continuous walk over a straight, or alternatively, looped path (Figure 1b) to record a sufficient number of gait cycles during steady state walking which improves the reliability of gait variability and asymmetry 1,3 . If steady state walking is required then the first 2.5 m of walking should be excluded 23 . If a testing environment doesn't permit the use of a continuous walk, repeated intermittent walks and pooling of data is recommended. However, gait initiation/termination and their associated acceleration and deceleration periods may negatively influence results. This can be minimised by excluding the first and last steps (values) of the walks before pooling.

Data import & segmentation.
Matlab ® is a scripting programming language for general scientific computing that utilizes matrix oriented high-level programming for a large number of numerical tasks on many common platforms. Data processing can be achieved using existing and/or prototypic algorithms via script or command structure interfaces 24,25 . Its support network ('Matlab Central'), comprehensive toolboxes and ability to be translated to opensource languages (e.g. Python TM , Octave) make it suitable for the processing of (gait) data into other programming software types [26][27][28][29] . Therefore, for the purposes of this tutorial Matlab ® pseudo-code is provided.
Data must be downloaded from the wearable via associated software and saved securely. Data recorded by the wearable and saved by the proprietary software (including open-source) will typically be made available as a comma separated value (.csv) file due to its exchangeability. Importing the data to Matlab ® (Appendix 1, 1) can be achieved through the use of the xlsread function which offers the freedom to import data from a single or multiple column array(s) within a specified spreadsheet (Appendix 1, 2).
Once imported, data will automatically be saved to Matlab ® workspace as a variable. Typically some generic movement data will be recorded by the wearable during a testing session before/after the gait task and will need to be removed. If saved via a spreadsheet, erroneous data can be highlighted and deleted, trimming the data. If intermittent walks were performed, data can be segmented manually in the spreadsheet format prior to importing. (Note: Those familiar with Matlab ® , the ginput function can be used to segment data; enables user to define the exact start/end of the walk due to cursor point and click on a plot and save the x-axis values (samples/frames), Appendix 1, 3).
Data preparation: pre-processing. Data captured by wearables are subject to 'noise': random fluctuations in the signal due to connecting hardware and/or external interference. Removing noise can be achieved by filtering. There are many techniques one can apply to a signal (e.g. Butterworth, Chebyshev), each with their own advantages/disadvantages. Essentially, filters are deemed useful depending on how well they can remove the unwanted signal due to various associated parameters. Care must be taken when choosing those values as it may impact algorithm analysis, feature extraction. Nevertheless, the literature details the most common method as the 4 th order Butterworth filter with a cut off-frequency between 15-20 Hertz (Hz), Appendix 1(4). (For a comprehensive assessment of pre-processing of wearable gait signals refer to 30).

Correcting for offset & misalignment.
When the wearable is attached to the participant, it is generally understood that the orientation or alignment of the device is offset due to attachment error and participant body shape. Additionally, gravity exerts a force, most notable on one axis. Attachment error and gravity can be easily overcome by asking the participant to remain still upon initial attachment and recording a few seconds of (quasi) static activity in a standing posture. The average/mean of the values captured by each axis in this posture is later subtracted from corresponding axes to eliminate offsets and misalignment.
However, this method is best suited to correct acceleration data in static postures only and not recommended for post-processing of gait data 22 . The correct approach is to transform the tri-axial data into a horizontal-vertical orthogonal coordinate system, i.e. using trigonometry relating to the Cartesian coordinate system 22,30 . The methodology relies on calculating and correcting for the best estimates of the (offset/misalignment) angles (θ ) between the true horizontal-vertical and that of the raw anterior-posterior (a a ) and medio-lateral (a m ) accelerations. While the accelerometer within the wearable cannot provide the rotational angle (gyroscopes), it is deduced 22 that the average value of a a and a m will approach the sin of the angles within the same directions, Equation 1-Equation 4 (translated code Appendix 1, 5). By applying the inverse sin (arcsin) methodology, one can derive the necessary values needed to correct offset/misalignment in four straightforward, recommended 30 steps: (i) Correction in the anterior-posterior plane (a A , note change of subscript case): (ii) An interim correction (a' ν ) in the vertical direction must be derived before a true value for a V : (iv) Finally, a V may now be estimated: The above is achieved through mean, sin, cos and arcsin functions along with basic matrix multiplication (Appendix 1, 5).

Algorithms.
Methodologies have been developed to quantify temporal and spatial characteristics for a wearable on L5, comparisons can be found here 31 . All aim to identify two features of gait: initial contact (IC, i.e. heel strike) and final contact (FC, i.e. toe off), Figure 2a. A robust temporal method 31 uses wavelets 32 . This methodology is a powerful signal processing tool that has been used successfully in gait and postural transition analysis 32-34 , yet its use remains limited due to complexity. The basic premise is that it offers an extension on the Fourier transform by two procedures: continuous (CWT) and discrete (DWT) wavelet transforms. Detailed descriptions is beyond the scope of this manuscript, but can be easily described; (i) CWT: a correlation between waveforms (raw signal and probing function, i.e. wavelet) at different scales (~ frequencies) and positions (in time), where the resulting coefficients roughly correspond to the best match; and (ii) DWT: a combination of high/low pass filters to divide up a (raw) signal into various components. (see 35 in depth descriptions refer to). Nevertheless, implementing a CWT algorithm 32 for IC/FC event detection can be relatively straightforward if utilising the Wavelet Toolbox within Matlab ® , Appendix 1(6): (i) Numerical integration of the raw vertical acceleration (a v ) with the function cumtrapz (ii) Differentiation of the integrated signal with the cwt function (Wavelet Toolbox TM Matlab ® ) resulting in signal S1, Figure 2b (iii) Find S1 local minima times, which equate to IC, through the use of the findpeaks function, Figure 2b (iv) Differentiate signal S1 with cwt function to get signal S2, (v) Find local maxima (FC) times of signal S2 by using findpeaks, Figure 2b Temporal characteristics. To fully replicate the characteristics of gait: step, stance, stride and swing times must be derived. This is achieved through the sequence of IC/FC events in relation to the double support phase of the gait cycle (see Figure 2 where l is wearable height and h is change in height of the wearable (i.e. CoM) as the participant walks, Appendix 1(7). Subsequently, by fusing the algorithms from Figure 2 8,10 , it is possible to quantify an estimate for step velocity (Equation 6 and Appendix 1, 7). However, implementing the cumtrapz function to derive velocity and speed from acceleration introduces an error known as drift. This can be eliminated through the use of filtering, but generally remains problematic within wearable gait analysis.

2
Step length 2 2lh h = Data for 5 (#1 -#5) healthy younger adults provided: 20-40 years, with demographic details within each spreadsheet. (Plot the data from each axis to determine orientation, if vertical is orientated at +1g, this can be inverted by multiplying all data by -1). All walks performed at the participants self-selected preferred pace for 2 minutes collected at 100Hz with a wearable worn on L5. Date format mat be converted by the Matlab ® function datestr.

Discussion and conclusion
Our aim in this paper has been to present an introductory tutorial, learned from best practice and robust methodologies to instrumented gait with a single wearable. Drawing on a validated conceptual model we provide a suitable and robust means to quantify and implement an analysis framework to derive 14 clinically relevant gait characteristics, for quantification in any environment. This has practical implications for the understanding of instrumented gait in future epidemiological studies, as a useful diagnostic.
It is important to consider the limitations associated with a single tri-axial accelerometer wearable. Direct integration of the raw acceleration data can amplify errors in calculation and compromise the integrity of results. Raw acceleration data varies among controls and across pathologies, as such universal processing (algorithms) recommendations are difficult to derive 39 . Location of the wearable in this example is specific to the algorithms' functionality and therefore gait outcomes quantified from alternation locations should treated with caution 20 .
Though implementing the algorithm and associated signal processing techniques can seem straightforward, initial familiarisation with the scripting language(s) and implementation of code can be daunting. Nonetheless, the methodologies presented here provide an opportunity to add more informed, objective data to future epidemiological studies. Wearables are being increasingly used in free-living environments, richer in habitual behaviours and aligning with developing telehealth infrastructures 5,12 .
Understanding the abilities as well as the limitations of existing technologies by all professions can help harmonise technological resources and find application in alternate fields of research.
Author contributions SDD, AH, SS and AG conceived the methodology and drafted the paper with help from CL, PE and AB. LR developed the protocol and advised on best clinical practice with SS. SDD, AH and AG performed the scripted Matlab ® algorithms with input from PE and AG. All authors contributed to critical revisions of the manuscript including methodology for the purposes of an introductory tutorial into instrumented gait.

Competing interests
No competing interests were disclosed.

Grant information
SDD, AG and LR are supported by the Biomedical Research Unit/ Centre at Newcastle University. The research was also supported by the NIHR Newcastle CRF Infrastructure funding. AB is supported by the ADAPT, a Norwegian Research Council funded project (FRIMEDBIO, 230435). Views expressed are solely those of the authors.
The funders had no role in study design, data collection and analysis, decision to publish, or preparation of the manuscript.

Listing Code and descriptions
1 General scripting The different font text (below) may be input to the Command Window of Matlab ® . Wording within Matlab ® (like most scripting languages) is case-sensitive e.g. "Variable" ≠ "variable". Words appearing after the '%' are ignored, this is a useful method to insert comments within code for clarity. It is important to remember that Matlab ® deals with rows and columns of data. For example the variable Data, a 100 (row) × 4 (column) matrix, Column 1 = Data(:,1); Row 57 = Data(57,:); Row 12, column 3 = Data(12,3); For further information refer to the 'Matlab Central' file exchange. It is a useful resource with many tips and code not already detailed within Matlab ® . Within the package is a useful 'help' functionality that will inform about any code i.e. mean, standard deviation, integration. Moreover, it will (usually) detail how the named function is best applied with examples. When creating variables, its best to use descriptive names such as outcomes, e.g. 'ParticipantHeight' (no spaces). The variable name is stored/displayed in the Workspace. Typically data are stored as a numerical array (rows, columns) and are manipulated through by the functions within the package. 'help mean' returns detailed usage of the mean function and how the mean of an array of values may be found. Within the help text will be suggested functions similar to what was queried, in this instance median, std*, min, max, var*, cov*, mode are displayed. (*standard deviation, variance and covariance) 2 Importing (reading) data AccData = xlsread('GaitData.xls', 'Sheet1', 'A1:C1000'); The variable created (AccData, accelerometer data) is to the left of the equation. Data are written to that variable from a file ('GaitData.xls') within the sheet ('Sheet1'), 3 columns wide (spreadsheet columns A to C; tri-axial data) and 1000 lines long, i.e. gait sampled at 100 Hz (0.01 times a second) for 100s.

3
Plotting and manual segmentation Use of the ginput function will accompany plot where the gait data are displayed via a figure. Plot allows the researcher to visualise the data, ginput to specifically highlight the start and end of the walk. Suggested use of plot and with ginput: plot(AccData); % plots tri-axial accelerometer data legend('Vertical','Medio','Antero'); % attaches a legend to the plot figure/window xlabel('Samples'); ylabel('Gravity (g)'); % labels x and y StartStop = ginput(2); % saves 2 x and y coordinates from user input clicking on plot For the purposes of defining start/end points within accelerometer data, refer to the 1 st column of StartStop,as follows: StartStop(:,1);

Listing Code and descriptions
7 Calculating temporal gait characteristics from the IC/FC events Typically this is achieved by subtracting IC events from following IC/FC events within a looped array, undertaken by for/end loop as shown below. An array of SwingTime values can be estimated externally from the loop once all the stride and stance values have been calculated. for i = 1:length(IC) % The for loop must be iterate a predefined StepTime(i) = IC(i + 1) -IC(i); StanceTime(i) = FC(i + 1) -IC(i); StrideTime(i) = IC(i + 2) -IC(i); end SwingTime = StrideTime -StanceTime;
"static conditions... where gravity has a pronounced effect on one axis". If one of the sensors axes are not aligned with vertical, gravity will have an effect on all axes.
"[various commercial devices]... may not offer high sampling rates". Please say which do and don't, and what is your definition of "high".
"all positives and negatives depending on the research question...". What do you mean by this statement? I don't understand.
As mentioned above, IMUs are completely overlooked here.
What is motivation for selecting 100 Hz? Tradition? The appendix states 15-20 Hz is the bandwidth of human movement, so about 50-60 Hz sampling rate should be ample.
p4: "healthy and pathological studies". Grammar problem. The studies are not healthy.
Define what is meant by "slippage".
"misalignment due to correct orientation". Do you mean incorrect orientation?
You propose a lab-based test over a 25 m loop, but this is at odds with the introduction which motivates this tutorial as a method for "deployment in any setting". Intro should be changed.
"doesn't". Write "does not". Do not use contractions in formal articles.
"utilises" rather than "utilizes" as this appears to be UK English.
"Attachment error and gravity can be easily overcome". This is a naive comment. Without an gyroscope it is very much not an easy task. Reword to say "approximately" or "crudely".
"The average/mean values of the values captured...". In general you have not discussed the important issue of calibration properly. The offsets, sensitivities and non-orthogonality of the axes should be fixed before experiments start. See following references for more information .
I'm sticking my neck out here, but I'm very sure the method proposed to resolve accelerations in the world frame is wrong. This is a concern since the original source is 18 years old . I've gone through the maths and I'm fairly certain it's incorrect, but would be happy to be corrected. The correct method would involve two rotations to get the correct rotation matrix. The first is a rotation about the AP axis (same as x-axis in world at the start), then tip the frame back by rotation around the y-axis of the world. The final rotation matrix gives same equations when inclination is only in xz-plane or yz-plane, as per Moe-Nilssen paper, but do not match when there is both pitch and roll simultaneously. It is also obvious this is wrong as Eq.
(1) (p5) in this paper does not use the a_m 1,2,3 simultaneously. It is also obvious this is wrong as Eq.
(1) (p5) in this paper does not use the a_m accelerometer reading, and it would definitely contribute to the x-axis acceleration in the world frame if there is both pitch and roll.
Typo in Eq (2) The use of the Wavelet Toolbox and findpeaks function in MATLAB are a limiting factor in the implementation. Also, it is not clear in the text or code what the scale factor is. It seems to be 10 samples at a sample rate of 100 Hz, so 0.1 s. Why this scale? Also, your code should be configurable with respect to variable sampling rates. If it is to be used by those unskilled in the art, they should not be expected to understand the importance of such hyperparameters.  p6: "wearable-height" should be "wearable height". p7: Need to define terms in Eqs. (7b) and (8). What is "SD"? What is "Steps"? What is "average"? p7: Dataset 1: "if vertical is oriented at +1g, this can be inverted by multiplying by -1." Acceleration due gravity is vertically up, and so should read +1g, assuming the positive sense of the sensors z-axis also points up. There is also a typo here: "format mat be converted". p7: spelling. "alternation" to "alternative". Appendix: Units for Wn should be stated written in code as fn/(fs/2) with terms defined in comments.

Introduction:
In paragraph two at "This can be attributed to:….", in the interest of clarity, perhaps the authors could explicitly state and support the fact that temporal measures have been better validated than spatial ones to date and hence this tutorial mainly supports the analysis of temporal gait characteristics.
Information included later in the paper under "current options" may sit better in the introduction section. As suggested above, a table outlining the stated products in addition to other wearable sensing gait analysis products, their associated sampling rates, placement, output measures and cost would help readers understand the argument for using a low cost accelerometer solution and implementing the techniques described in this tutorial.

Materials & Methods:
The description of the signal as (i) and (ii) is misleading and may cause readers to think that under dynamic conditions there is no gravitational acceleration present in the signals. Perhaps rephrase to a summation of inertial acceleration and gravitational acceleration acting on each axes.
Where the authors present a "high resolution device (100Hz)……." they should also provide recommendation on accelerometer range and sensitivity for maximising signal quality when analysing gait with an accelerometer positioned at L5.
While the authors go into good detail on sensor positioning, they do not mention the importance of calibrating a tri-axial accelerometer device. Not doing so can have a negative effect on the validity of computed gait characteristics, especially spatial ones. To make this tutorial more holistic, steps and sample code to do this could be added which would help a clinician/researcher to calibrate a 'generic' tri-axial accelerometer. The "correcting for offset" paragraph is only a partial solution. In the pre-processing section a little more elaboration on what the "unwanted signal" is and adding a description of what the "desired signal" corresponds to would help readers new to the area of signal interpretation.
In the "Correcting for offset and misalignment" section where it is stated that "the average value of [...] will approach the sin of the angles" it should be stated whether the values are in m/s^2 or g. Also, it is worth noting that this assumption may not work well when the accelerometer is undergoing significant inertial acceleration i.e. at high gait speeds. In steps (iii) and (v) of algorithms are there any thresholds or other inputs to the function that findpeaks people following the tutorial should know about?
In the "spatial characteristics" section where h is used, it may help to more explicitly state how h is calculated in the text as well as in Figure 2(c) which is currently difficult to interpret in black and white.

Discussion & Conclusion:
I think it would be important to reiterate here that the methods presented are for application in steady state walking. The authors state elsewhere in the manuscript that shorter intermittent walks can be pooled, but walking. The authors state elsewhere in the manuscript that shorter intermittent walks can be pooled, but caution against the effects of acceleration/ deceleration portions of the signal. They state that this, "...can be minimised by excluding the first and last steps (values) of the walks before pooling". This is somewhat vague and needs to be cautioned against more clearly in the concluding paragraphs.
No competing interests were disclosed.

Competing Interests:
We have read this submission. We believe that we have an appropriate level of expertise to confirm that it is of an acceptable scientific standard.
The benefits of publishing with F1000Research: Your article is published within days, with no editorial bias You can publish traditional articles, null/negative results, case reports, data notes and more The peer review process is transparent and collaborative Your article is indexed in PubMed after passing peer review Dedicated customer support at every stage For pre-submission enquiries, contact research@f1000.com