TABLE I. Overview of the Core Algorithms Provided in the Gaitmap Package.
| Processing Step | Algorithm | Description |
| Preprocessing | align_dataset_to_gravity | Alignment of IMU signal with gravity. |
| align_heading_of_sensors | Align the heading to the movement direction using PCA on the gyroscope signal and an integration of the acceleration signal (unpublished, inspired by [40]). | |
| Gait Detection | UllrichGaitSequenceDetection | Detection of gait using harmonic frequencies from raw IMU signals [41]*. |
| Stride Segmentation | BarthDtw | Template matching using dynamic time warping (DTW) modified based on [42]*. |
| ConstrainedBarthDtw | BarthDtw with additional local warping constraints. Inspired by local weightings explained in [43]. | |
| HmmStrideSegmentation | Multi-activity Hidden-Markov-Model (HMM) based on [44]* implemented using [37]. | |
| Event Detection | RamppEventDetection | Initial and terminal foot contact detection based on signal features [39]*. |
| FilteredRamppEventDetection | RamppEventDetection with additional lowpass filtering for specific calculation steps. | |
| HerzerEventDetection | Initial and terminal foot contact based on signal features tuned for stair walking [45]*. Combines concepts from [39]* and [46]. | |
| Zero-Velocity Detection | AredZuptDetector | Window based thresholding on gyroscope norm to detect static regions [47]. |
| NormZuptDetector | Window based thresholding to detect static regions. Generalized version of ARED from [47]. | |
| ShoeZuptDetector | Window based thresholding on combined gyroscope and accelerometer norm to detect static regions [47]. | |
| Trajectory Reconstruction | RtsKalman | Zero-Velocity aided Error Tracking Kalman Filter with smoothing to estimate the foot trajectory from IMU signals. Based on [48], [49] with implementation details from [50]. |
| MadwickRtsKalman | Variation of the RtsKalman method using the Madgwick algorithms for orientation estimation (unpublished, based on [24], [48], [49], [50]). | |
| SimpleGyroIntegration | Orientation estimation based on integration of the gyroscope signal. | |
| MadgwickAHRS | Sensor fusion algorithm for orientation estimation [24]. | |
| ForwardBackwardIntegration | Position estimation using double-integration of the acceleration with dedrifting through forward-backwards integration [51] and [9]*. | |
| PieceWiseLinearDedriftedIntegration | Position estimation using double-integration of the acceleration with linear drift model (unpublished, inspired by [52]). | |
| Parameter Estimation | TemporalParameterCalculation | Calculation of temporal parameters (e.g. stride time) based on the detected events. |
| SpatialParameterCalculation | Calculation of spatial parameters (e.g. stride length) based on the calculated trajectory [39], [53]*. |
The Name in the Algorithm Column Corresponds to the class/function Name Within the Package. The Last Column Lists the Publications That the Algorithm is Based On. Algorithms Marked With an Asterisk (*) are Publications That Were Published by the Authors of This Manuscript Directly or the Associated Research Group. Besides the Core Algorithms, the Package Provides a Number of Helper Methods, Which are Not Listed Here. For a Full List See the Official Documentation Page (gaitmap.readthedocs.io). The Categories are Listed in the Order They are Typically Used in a Gait Analysis Pipeline.