# O-GEST: Overground gait events detector using B-Spline-based geometric models for marker-based and markerless analysis

Mehran Hatamzadeh, Laurent Busé, Katia Turcot, Raphael Zory

► To cite this version:

Mehran Hatamzadeh, Laurent Busé, Katia Turcot, Raphael Zory. O-GEST: Overground gait events detector using B-Spline-based geometric models for marker-based and markerless analysis. Journal of Biomechanics, 2025, 189, pp.6. 10.1016/j.jbiomech.2025.112803. hal-05098901

HAL Id: hal-05098901

https://univ-cotedazur.hal.science/hal-05098901v1

Submitted on 5 Jun 2025

HAL is a multi-disciplinary open access
archive for the deposit and dissemination of sci-
entific research documents, whether they are pub-
lished or not. The documents may come from
teaching and research institutions in France or
abroad, or from public or private research centers.

L'archive ouverte pluridisciplinaire HAL, est
destinée au dépôt et à la diffusion de documents
scientifiques de niveau recherche, publiés ou non,
émanant des établissements d'enseignement et de
recherche français ou étrangers, des laboratoires
publics ou privés.

<figure><img src="image_1.png" /></figure>

Distributed under a Creative Commons Attribution 4.0 International License
1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

# O-GEST: Overground gait events detector using B-Spline-based geometric models for marker-based and markerless analysis

Mehran Hatamzadeh<sup>a, b *</sup>, Laurent Busé<sup>b</sup>, Katia Turcot<sup>c</sup>, Raphael Zory<sup>a, d</sup>

<sup>a</sup> Université Côte d'Azur, LAMHESS, Nice, France

<sup>b</sup> Université Côte d'Azur, Inria, Sophia Antipolis, France

<sup>c</sup> Université Laval, Department of Kinesiology, Faculty of Medicine, Centre interdisciplinaire de recherche en réadaptation et intégration sociale (Cirris), Quebec, Canada

<sup>d</sup> Institut Universitaire de France (IUF), Paris, France

* Corresponding Author: Mehran Hatamzadeh, PhD.

E-mail 1: mehran.hatamzadeh@univ-eiffel.fr

E-mail 2: mehran.hatamzadeh@univ-lyon1.fr

E-mail 3: hatamzadeh.mehran@gmail.com

Laurent Busé, PhD - laurent.buse@inria.fr

Katia Turcot, PhD - Katia.Turcot@kin.ulaval.ca

Raphael Zory, PhD - Raphael.ZORY@univ-cotedazur.fr
28

**Abstract:**

29

Accurate gait events detection is imperative for reliable assessment of normal and pathological gaits.

30

However, this detection becomes challenging in the absence of force plates. Hence, this research

31

introduces two geometric models integrated into an automatic algorithm (O-GEST) for overground

32

gait events detection using kinematic data.

33

O-GEST employs B-Spline-based geometric models to represent the horizontal trajectory of foot

34

landmarks. It leverages gait-dependent thresholds, along with optimal coefficients to detect events

35

and compute spatiotemporal parameters on healthy and pathological gaits. To validate the proposed

36

algorithm, timing differences in the detected events using the force plates and O-GEST were

37

calculated and also compared between different methods on the gait data of 390 subjects. This dataset

38

includes 200 healthy subjects, 100 subjects with unilateral hip osteoarthritis, 50 stroke survivors, 26

39

individuals diagnosed with Parkinson's disease, and 14 children with cerebral palsy.

40

The validation results show that O-GEST detects gait events with an overall accuracy of 13.5 ms for

41

foot-strike and 12.6 ms for foot-off. It also demonstrates significantly more accurate results than the

42

common deep learning-based and kinematic-based methods.

43

O-GEST offers several advantages, including its applicability for events detection across various

44

pathologies, capability to handle noisy trajectories, and usability in the absence of certain foot

45

landmarks. Development of such algorithms could lead to enhanced accuracy and reliability of gait

46

analysis in force-plate-less environments, especially in markerless gait analysis setups.

47

48

**Keywords:** Gait events detection, Pathological gait pattern, Geometric modeling, Markerless

49

analysis, B-Spline curves.

50

51

52

53

54

55

56

57

58
59

# 1. Introduction:

60

61

62

63

64

65

66

67

68

Clinical gait analysis (CGA) is an assessment to diagnose walking impairments that highly relies on accurate gait events detection (GED) for cycle separation, spatiotemporal parameters calculation, etc (Eckardt et al., 2017). The gold standard devices for this purpose are force plates, foot switches, or force-sensitive resistors (Bruening et al., 2014; Taborri et al., 2016). However, when using force plates, only a few steps are usually captured during a trial, and their outdoor utilization is limited (Fonseca et al., 2022). Foot switches or force-sensitive resistors are also prone to mechanical failure and are deemed unreliable for pathological GED (Figueiredo et al., 2018). Furthermore, these tools are impractical for markerless approaches, developed for convenient indoor and outdoor utilization without needing force plates, markers, etc (Uhlrich et al., 2023; Hatamzadeh et al., 2024).

69

70

71

72

73

74

75

76

77

78

79

80

81

Therefore, the initial GED approach in the unavailability of gold standards involves employing kinematic-based methods that utilize landmarks' trajectory or their derivatives. However, their accuracy is reported to be inadequate for pathological GED (French et al., 2020; Zaharadka et al., 2020; Vu et al., 2020). Consequently, events in pathological gaits are usually annotated manually, making CGA time-consuming and motivating the development of automatic algorithms (Kidzinski et al., 2019; Lempereur et al., 2020; Nie et al., 2023; Osis et al., 2016; Dumphart et al., 2023; Kim et al., 2022). Nevertheless, the developed GED algorithms struggle to handle diverse gait patterns (Visscher et al., 2021), and could face challenges in accurately processing noisy trajectories obtained through markerless methods. In this regard, a geometric model that imitates the horizontal trajectory of foot landmarks and imposes symmetry of walking has been introduced for markerless gait analysis of healthy subjects (Hatamzadeh et al., 2022). Building upon this foundation, the concept has been further developed in this research to adapt to both normal and pathological gaits, where asymmetry between the legs' trajectories may exist.

82

83

Therefore, this research introduces an automatic algorithm (O-GEST) for overground GED, by integrating two geometric models with an improved events' localization method that uses gait-
dependent thresholds and optimized coefficients. The accuracy of the developed algorithm in detecting the timing of gait events is validated against gold standards, and its performance is compared with existing algorithms across diverse pathologies.

87

## 2. Methods:

### 2.1. Gait data:

A total of 390 subjects drawn from publicly available gait datasets were included in this study (Table 1), encompassing healthy subjects, patients with unilateral hip osteoarthritis (HOA), stroke survivors, Parkinson's patients (PD), children with cerebral palsy and typically developing children (CP-TD) (Bertaux et al., 2022; Criekinge et al., 2023; Meyns 2022; Shida et al., 2023).

94

<table><caption>**Table 1.** Quantity and characteristics of the subjects in each group (mean ± standard deviation), gait parameters, and detail of the analysis.</caption><thead><tr><th>Group</th><th>Quantity</th><th>Age (years)</th><th>Weight (kg)</th><th>Height (cm)</th><th>Gait speed (ms<sup>-1</sup>)</th><th>Trials</th><th>Foot-strikes</th><th>Foot-offs</th></tr></thead><tbody><tr><td>Healthy</td><td>200</td><td>55.9 (±17.8)</td><td>72.5 (±14.7)</td><td>167.4 (±10)</td><td>1.12 (±0.18)</td><td>610</td><td>1288</td><td>1246</td></tr><tr><td>HOA</td><td>100</td><td>66.8 (±9.6)</td><td>77.7 (±17.3)</td><td>164.3 (±8.8)</td><td>0.78 (±0.24)</td><td>367</td><td>872</td><td>780</td></tr><tr><td>Stroke</td><td>50</td><td>64.2 (±14)</td><td>72.0 (±13.6)</td><td>170.5 (±7.9)</td><td>0.49 (±0.29)</td><td>96</td><td>370</td><td>420</td></tr><tr><td>Parkinson</td><td>26</td><td>64.2 (±9.8)</td><td>71.4 (±12.5)</td><td>166.0 (±7)</td><td>0.94 (±0.29)</td><td>102</td><td>386</td><td>413</td></tr><tr><td>CP-TD</td><td>14</td><td>9.90 (±2.1)</td><td>31.3 (±7.9)</td><td>137.1 (±12.2)</td><td>0.97 (±0.37)</td><td>14</td><td>55</td><td>49</td></tr><tr><td>Total</td><td>390</td><td>58.7(±18.2)</td><td>72.2 (±17)</td><td>165.8 (±11)</td><td>0.94 (±0.30)</td><td>1189</td><td>2971</td><td>2908</td></tr></tbody></table>

95

96

### 2.2. O-GEST Algorithm:

O-GEST is an automatic algorithm based on geometric models that imitate the horizontal distance trajectory of foot landmarks to the reference point (in marker-based systems) or the camera in front or back of the subject (in markerless analysis). During gait, the horizontal trajectory of a foot landmark has either a single movement direction or exhibits directional movement changes at specific
time intervals. For example, following a foot-strike on the heel in a normal gait, the ankle and toe rotate clockwise to reach flat-foot phase. However, in an abnormal gait, after a foot-strike on the toe, the ankle and heel rotate counterclockwise, and their movement direction changes from forward progression to backward. Hence, two geometric models have been designed (Figure 1): one for landmarks' trajectories without directional changes (Model 1), and another for those exhibiting directional changes (Model 2).

108

<figure><img src="image_2.png" /><figcaption>**Figure 1.** Designed models for sections of the horizontal trajectory of foot landmarks. In this figure, green circles are B-Splines' control points with their control polygon shown by the green dashed line, and red squares are the extreme of the curves according to RDLs.</figcaption></figure>

109

110

111

112

113
Each model consists of two lines and a parametric curve (Cubic B-Spline) between them, constructed with 4 (Model 1) and 5 (Model 2) control points. B-Spline curves ($B(u)$) are piecewise polynomial curves, defined by means of an order ($k$), a set of $n + 1$ control points {$P_0, P_1, ..., P_n$}, and some basis functions ($N_{i,k}(u)$). The complete form of the utilized planar B-Splines is as follows:

$$B(u) = \sum_{i=0}^{n} P_i N_{i,k}(u) \quad , \quad P_i = \begin{pmatrix} x_i \\ y_i \end{pmatrix} \qquad (1)$$

where the basis functions are defined according to recursive Cox-de Boor equations (Boor 1972), using $k$ and a sequence of non-decreasing real numbers called knots vector $U = [u_0, u_1, ..., u_m]$, as follows:

$$N_{i,0}(u) = \begin{cases} 1 & u \in [u_k, u_{k+1}] \\ 0 & \text{otherwise} \end{cases} \\ N_{i,k}(u) = M_{i,k}(u)N_{i,k-1}(u) + (1 - M_{i+1,k}(u))N_{i+1,k-1}(u) \qquad (2)$$

$$M_{i,0}(u) = \begin{cases} \frac{u - u_i}{u_{i+k} - u_i} & u_i < u_{i+k} \\ 0 & \text{otherwise} \end{cases}$$

To construct the B-Splines, knot vectors with extremity knots of multiplicity of $k$ (repeated knots at both ends) were used to ensure that the curves interpolate their first and last control points. Hence, in Model 1: $n = 3, k = 4, U = [0,0,0,0,1,1,1,1]$, and in Model 2: $n = 4, k = 4, U = [0,0,0,0,1,2,2,2,2]$. Restrictive conditions (G1 smoothness constraints) are also added to maintain the geometric continuity in the models (Figure 1). The cubic B-Spline curve with 4 control points (Model 1) can be realized as a cubic Bézier curve, defined previously (Hatamzadeh et al., 2022). In the same vein, cubic B-Spline with 5 control points (Model 2) is a combination of 2 cubic Bézier curves which can be extracted by means of the knot insertion algorithm. The utilized cubic B-Spline curves offer several advantages to be used in motion analysis, such as providing a smooth pattern (useful for denoising data), generalizability to different walking styles (e.g., slow, fast) by adjusting control points' position, $C^2$ continuity governed by the knot vector to ensure smooth first (speed) and second derivative's (acceleration), local control (adjusting a point alters only a curve segment, not the entire
trajectory), and allowing to construct curves of the same degree with any number of control points (maintaining stability without increasing the polynomial degree) (Boehm 1977, 1980).

O-GEST algorithm proceeds in four major steps. First, each landmark's trajectory is separated into sections spanning from one mid-flat foot point to the next (Figure 1). To do so, the first employed method relies on identifying intersections between the left and the right trajectories (Hatamzadeh et al., 2022). In case there are no intersections, the second method is employed, which sets a threshold on the trajectory's maximum absolute speed, to identify midpoints in the flat-foot areas and separating sections. Afterward, section-wise ratios of horizontal displacement in the backward direction to the forward direction are calculated, and the maximum is selected as follows:

$$ \text{Ratio}_{\text{Landmark, Leg, s}} = \frac{|\Delta Y_{\text{Backward, s}}|}{0.015|\Delta Y_{\text{Forward, s}}|} \qquad (3) $$

$$ \text{MaxRatio}_{\text{Landmark, Leg}} = \max\{\text{Ratio}_{\text{Landmark, Leg, s}}\}, \quad s = 1, 2, \dots, S $$

where lowercase s is a section's identifier and capital S is the total number of sections. Then, the suitable model for each landmark is assigned automatically by the algorithm as follows:

$$ \text{Model}_{\text{Landmark, Leg}} = \begin{cases} \text{Model 1} & \text{MaxRatio}_{\text{Landmark, Leg}} < 1 \\ \text{Model 2} & \text{MaxRatio}_{\text{Landmark, Leg}} \ge 1 \end{cases} \qquad (4) $$

$$ \text{Landmark} \in \{\text{Toe, Ankle, Heel}\} $$

$$ \text{Leg} \in \{\text{Left, Right}\} $$

To fit the assigned model, section-wise errors based on the orthogonal distance from each data point to the model are calculated and minimized using an iterative quadratic programming (QP) approach. Assuming data of section s with J samples as $\{(X_{s,1}, Y_{s,1}), (X_{s,2}, Y_{s,2}), \dots, (X_{s,J}, Y_{s,J})\}$, and their orthogonal projection on the model of that section as $\{(X_{s,1}^*, Y_{s,1}^*), (X_{s,2}^*, Y_{s,2}^*), \dots, (X_{s,J}^*, Y_{s,J}^*)\}$, the total error function is calculated as follows:

$$ E_{\text{Landmark, Leg}} = \sum_{s=1}^{S} \sum_{j=1}^{J} \left\| \begin{pmatrix} X_{s,j} \\ Y_{s,j} \end{pmatrix} - \begin{pmatrix} X_{s,j}^* \\ Y_{s,j}^* \end{pmatrix} \right\|_{2}^{2} \qquad (5) $$
$$159 \quad \text{Total Error} = \sum_{\text{Landmarks}} \sum_{\text{Legs}} \frac{E_{\text{Landmark, Leg}}}{E0_{\text{Landmark, Leg}}}$$

where $E0$ is the error at the initial step of the optimization. Following model fitting, first, the overall direction line (ODL) is obtained, which interpolates the data of a section (Figure 1) and its slope represents the section's mean gait speed ($\bar{V}_s = \tan(\theta)$). Then, the rotated versions of ODL (RDLs) are employed to find moments in which the landmark's velocity with respect to RDLs, changes its sign. In other words, gait events lay at B-Splines extrema relative to the RDLs, with the first extremum ($M_1$) representing foot-off and the last extremum ($M_2$) representing foot-strike.

The amount of rotation for each RDL is a gait speed-dependent value, calculated according to a linear combination of the mean and standard deviation of each section's speed data, with optimized coefficients. Assuming the mean speed of section $s$ as $\bar{V}_s$, the standard deviation of $\sigma_{V_s}$, minimum of $V_{Min_s}$, maximum of $V_{Max_s}$, and the time span from the first control point to the point that has the minimum speed in that section's B-Spline model as $T_{P0 to Min}$, the angles for RDLs are obtained as follows:

$$172 \quad \theta_1 = \begin{cases} \arctan(1.0707(\bar{V}_s) + 0.2345(\sigma_{V_s})) & |\bar{V}_s| \ge 0.8 \text{ and } T_{P0 to Min} \le 0.35 \\ \arctan(0.2334(\bar{V}_s) - 0.9047(\sigma_{V_s})) & |\bar{V}_s| \ge 0.8 \text{ and } T_{P0 to Min} > 0.35 \\ \arctan(0.1823(\bar{V}_s) - 0.5032(\sigma_{V_s})) & |\bar{V}_s| < 0.8 \end{cases} \quad (6)$$

$$173 \quad \theta_2 = \begin{cases} \arctan(0.4534(\bar{V}_s) - 0.1296(\sigma_{V_s})) & |\bar{V}_s| \ge 0.6 \\ \arctan(0.2767(\bar{V}_s) - 0.1393(\sigma_{V_s})) & |\bar{V}_s| < 0.6 \end{cases}$$

$$174 \quad \theta_3 = \begin{cases} \arctan(-0.1165(\bar{V}_s) - 0.4022(\sigma_{V_s})) & \frac{V_{Max_s}}{|V_{Min_s}|} \le 0.1 \\ \arctan(0.4(V_{Max_s})) & \frac{V_{Max_s}}{|V_{Min_s}|} > 0.1 \end{cases}$$

After finding the extrema, their temporal sequencing order is taken into account to extract foot-strike and foot-off moments of each leg, as follows:

$$177 \quad \text{Foot Strike}_{\text{Leg, s}} = \min\{x_{M2}, \text{Toe}, x_{M2}, \text{Ankle}, x_{M2}, \text{Heel}\} \quad (7)$$

$$178 \quad \text{Foot Off}_{\text{Leg, s}} = \max\{x_{M1}, \text{Toe}, x_{M1}, \text{Ankle}, x_{M1}, \text{Heel}\}$$
## 2.3. Validation:

For validation, absolute and true errors for the timing difference in the detected events, by the force plates, and by each of the configurations of the O-GEST algorithm, were computed. The true error was defined as the signed difference in events' timing ($Events_{Algorithm} - Events_{Force plate}$), along with its absolute value, which reflects the deviation magnitude regardless of direction. Furthermore, one deep learning-based algorithm and four kinematics-based methods were also included for comparison (A description of them is provided in Appendix 1). To do so, first, the normality of the errors was checked using the Shapiro-Wilk test. Then, a parametric test for normally distributed data (T-test), or a nonparametric test (Kruskal-Wallis test) for non-normally distributed data was used.

## 3. Results:

O-GEST algorithm detected gait events with an overall accuracy of 13.5 ms for foot-strike and 12.6 ms for foot-off across all groups (Table 2). Among the different possible configurations of utilizing O-GEST (Figure 2 A), the most accurate results were obtained when a combination of toes and heels or all three-foot landmarks (toes, ankles, and heels) were fed into the algorithm. Utilizing single landmarks (e.g., only ankles) or other combinations of dual landmarks (e.g., ankles and toes) could result in slightly higher errors than the best configurations and are only made available for utilization in case a landmark is missing. In the best configurations, O-GEST detected gait events with a mean absolute error of 12.3 ms on healthy subjects, 13.7 ms on HOA, 17.5 ms on stroke survivals, 10.1 ms on PD, and 10.4 ms on CP-TD children (Table 3).
<table><caption>**Table 2.** Overall mean absolute error and 95% confidence interval in milliseconds for overground gait events detection. All methods were validated on all groups, except DeepEvent, which was validated only on the CP-TD children group.</caption><thead><tr><td>Method</td><td>Foot-strike (ms)</td><td>Foot-off (ms)</td></tr></thead><tbody><tr><td>O-GEST</td><td><b>13.5 [13.2, 13.9]</b></td><td><b>12.6 [12.2, 12.9]</b></td></tr><tr><td>Zeni et al., 2008</td><td>43.2 [42.4, 43.9]</td><td>25.6 [25, 26.1]</td></tr><tr><td>Ghoussayni et al., 2004</td><td>26.1 [25.4, 26.8]</td><td>14.8 [14.3, 15.2]</td></tr><tr><td>Desailly et al., 2009</td><td>21.2 [20.5, 21.9]</td><td>14.6 [14.2, 15.1]</td></tr><tr><td>Hsue et al., 2007</td><td>57.8 [57, 58.6]</td><td>34.3 [33.5, 35.1]</td></tr><tr><td>DeepEvent</td><td>16.8 [14.4,19.2]</td><td>7.3 [5.6,8.9]</td></tr></tbody></table>

<figure><img src="image_3.png" /><figcaption>**Figure 2.** Violin plots of true error distribution for all detected events using O-GEST in different configurations and in each group (A), and compared to the other algorithms (B).</figcaption></figure>

202

203

204

205

206

207

208

209
Validations showed that O-GEST results are consistent across various pathologies and lay between 8.2 to 19.2 ms of accuracy. Furthermore, its accuracy on healthy subjects and the majority of the pathological cohorts was superior to the included GED methods. The superiority of O-GEST results was not only producing fewer errors (Table 3) but also more concentrated error distributions (Figure 2 B) for events detection. In foot-strike detection, significant under-estimation of event timing is observed when utilizing the coordinate-based (Desailly et al., 2009; Zeni et al., 2008), velocity-based (Ghoussayni et al., 2004), or acceleration-based methods (Hsue et al., 2007), compared to O-GEST. All the above-mentioned methods and also the included deep learning-based method showed more widely distributed errors in foot-strike detection compared to O-GEST (Figure 2 B). Among the tested methods, it was expected to obtain the most accurate results on CP-TD children by DeepEvent, due to the utilization of pathological children's gait data for its training (Lempereur et al., 2020). However, O-GEST achieved higher accuracy than DeepEvent in foot-strike detection on CP-TD children (O-GEST: 8.2 ms, DeepEvent: 16.8 ms) and DeepEvent produced the best results only for foot-off detection on this cohort (O-GEST: 12.5 ms, DeepEvent: 7.3 ms). In foot-off detection, the most accurate results were obtained by OGEST on healthy (11.2 ms), HOA (13.8 ms), stroke (15.9 ms), and PD (10.9 ms) groups. Furthermore, the coordinate-based algorithm of Zeni and the acceleration-based algorithm resulted in a higher overestimation of foot-off timing than the other methods, in the majority of the groups.

O-GEST has a few advantages which explain its superior performance. Firstly, the data are smoothed by a geometric model that imitates the movement pattern and leads to the denoised data that better reflect the actual trajectory content; whereas other filtering techniques may eliminate them. Secondly, due to the variety of walking patterns across pathologies, events temporal sequencing order has been taken into account; whereas in other methods, toe for foot-off and heel for foot-strike is usually
utilized, leading to failure on pathological gaits. Thirdly, it utilizes subject-specific and optimal gait speed-dependent thresholds that lead to consistent performance on various pathologies.

<table><caption>**Table 3.** Mean absolute error, 95% confidence interval, and mean true error in milliseconds for events detection using O-GEST and other algorithms in each group. Significantly different results than the O-GEST are marked with *.</caption><thead><tr><th rowspan="2">Method-Group</th><th rowspan="2"></th><th colspan="3">Foot-strike (ms)</th><th colspan="3">Foot-off (ms)</th><th colspan="2">Combined (ms)</th></tr><tr><th>Absolute Error</th><th>95% CI</th><th>True Error</th><th>Absolute Error</th><th>95% CI</th><th>True Error</th><th>Absolute Error</th><th>95% CI</th></tr></thead><tbody><tr><td rowspan="5">O-GEST</td><td>Healthy</td><td>13.3</td><td>[12.8,13.9]</td><td>-11.4</td><td>11.2</td><td>[10.7,11.7]</td><td>4.4</td><td>12.3</td><td>[11.9,12.7]</td></tr><tr><td>HOA</td><td>13.6</td><td>[12.9,14.3]</td><td>-8.9</td><td>13.8</td><td>[13,14.5]</td><td>10.8</td><td>13.7</td><td>[13.2,14.2]</td></tr><tr><td>Stroke</td><td>19.2</td><td>[17.7,20.8]</td><td>-6</td><td>15.9</td><td>[14.7,17.1]</td><td>-0.7</td><td>17.5</td><td>[16.5,18.5]</td></tr><tr><td>Parkinson</td><td>9.1</td><td>[8.3,10]</td><td>-0.7</td><td>10.9</td><td>[10,11.8]</td><td>7.4</td><td>10.1</td><td>[9.4,10.7]</td></tr><tr><td>CP-TD</td><td>8.2</td><td>[6.8,9.7]</td><td>4.3</td><td>12.5</td><td>[10.5,14.6]</td><td>-9</td><td>10.4</td><td>[9.1,11.7]</td></tr><tr><td rowspan="5">Zeni et al., 2008</td><td>Healthy</td><td>45.9**</td><td>[45.1,46.6]</td><td>-45.9</td><td>24.3**</td><td>[23.6,25.1]</td><td>24.2</td><td>35.3**</td><td>[34.6,35.9]</td></tr><tr><td>HOA</td><td>46.2**</td><td>[44.9,47.5]</td><td>-46.2</td><td>28.7**</td><td>[27.7,29.7]</td><td>28.2</td><td>37.9**</td><td>[37,38.9]</td></tr><tr><td>Stroke</td><td>44.8**</td><td>[41.3,48.4]</td><td>-42.4</td><td>25.5**</td><td>[23.5,27.5]</td><td>8.5</td><td>34.8**</td><td>[32.7,37]</td></tr><tr><td>Parkinson</td><td>27.3**</td><td>[25.7,29]</td><td>-26</td><td>24.7**</td><td>[23.2,26.1]</td><td>20.5</td><td>26**</td><td>[24.9,27]</td></tr><tr><td>CP-TD</td><td>30.7**</td><td>[26.2,35.2]</td><td>-26.7</td><td>17*</td><td>[13.6,20.3]</td><td>14.8</td><td>23.8**</td><td>[20.7,26.8]</td></tr><tr><td rowspan="5">Ghoussayni et al., 2004</td><td>Healthy</td><td>26.1**</td><td>[25.3,26.8]</td><td>-25.8</td><td>13**</td><td>[12.5,13.6]</td><td>8.5</td><td>19.6**</td><td>[19.1,20.2]</td></tr><tr><td>HOA</td><td>27.6**</td><td>[26.3,28.8]</td><td>-27</td><td>15.3*</td><td>[14.4,16.2]</td><td>13.6</td><td>21.8**</td><td>[21,22.6]</td></tr><tr><td>Stroke</td><td>34.3**</td><td>[30.9,37.7]</td><td>-25</td><td>20.6**</td><td>[18.9,22.4]</td><td>1.2</td><td>27.3**</td><td>[25.3,29.2]</td></tr><tr><td>Parkinson</td><td>16**</td><td>[14.8,17.3]</td><td>-9.7</td><td>13.5**</td><td>[12.5,14.5]</td><td>10.1</td><td>14.7**</td><td>[13.9,15.5]</td></tr><tr><td>CP-TD</td><td>17.2**</td><td>[12.7,21.8]</td><td>0.3</td><td>10.8</td><td>[4.3,17.3]</td><td>0.2</td><td>14.3</td><td>[10.4,18.2]</td></tr><tr><td rowspan="5">Desailly et al., 2009</td><td>Healthy</td><td>21.2**</td><td>[20.4,21.9]</td><td>-20.4</td><td>13.3**</td><td>[12.6,13.9]</td><td>8.2</td><td>17.3**</td><td>[16.8,17.8]</td></tr><tr><td>HOA</td><td>18.9**</td><td>[17.7,20]</td><td>-13</td><td>14.4</td><td>[13.5,15.3]</td><td>11.9</td><td>16.8**</td><td>[16,17.5]</td></tr><tr><td>Stroke</td><td>32.9**</td><td>[29.8,36.1]</td><td>-17.8</td><td>21.2**</td><td>[19.4,23.1]</td><td>0.7</td><td>27**</td><td>[25.1,28.8]</td></tr><tr><td>Parkinson</td><td>16.3**</td><td>[15.1,17.6]</td><td>-2.1</td><td>13.5**</td><td>[12.5,14.6]</td><td>6.8</td><td>14.9**</td><td>[14.1,15.7]</td></tr><tr><td>CP-TD</td><td>8.7</td><td>[6.3,11.1]</td><td>-5.1</td><td>7.8*</td><td>[5.8,9.8]</td><td>-0.9</td><td>8.3*</td><td>[6.7,9.8]</td></tr><tr><td rowspan="5">Hsue et al., 2007</td><td>Healthy</td><td>60.1**</td><td>[59.3,61]</td><td>-60.1</td><td>25.7**</td><td>[24.8,26.6]</td><td>25.3</td><td>43.1**</td><td>[42.2,44]</td></tr><tr><td>HOA</td><td>64.1**</td><td>[62.7,65.5]</td><td>-64.1</td><td>39.9**</td><td>[38.4,41.4]</td><td>39.9</td><td>52.5**</td><td>[51.3,53.7]</td></tr><tr><td>Stroke</td><td>58.1**</td><td>[54.6,61.6]</td><td>-58</td><td>50**</td><td>[47.3,52.7]</td><td>49.8</td><td>53.8**</td><td>[51.6,56]</td></tr><tr><td>Parkinson</td><td>40.2**</td><td>[34.4,41.9]</td><td>-40.2</td><td>37.4**</td><td>[35.3,39.4]</td><td>37</td><td>38.7**</td><td>[37.4,40.1]</td></tr><tr><td>CP-TD</td><td>25.7**</td><td>[21.1,30.2]</td><td>-25.7</td><td>9.6</td><td>[6.8,12.4]</td><td>6.1</td><td>17.8**</td><td>[14.8,20.8]</td></tr><tr><td>DeepEvent</td><td>CP-TD</td><td>16.8**</td><td>[14.4,19.2]</td><td>16.5</td><td>7.3**</td><td>[5.6,8.9]</td><td>-0.7</td><td>12</td><td>[10.4,13.7]</td></tr></tbody></table>

O-GEST is not without limitations. It handles gait patterns with up to one-directional change in foot landmarks' horizontal trajectories and may be challenged where more directional changes have occurred. This could be resolved in future research by developing models with more control points, though their number should be carefully chosen to avoid adaptation to noise.
246

**5. Conclusion:**

247

O-GEST is utilizable in both marker-based and markerless setups on various pathologies, capable of

248

handling noisy trajectories, and applicable when some foot landmarks are missing. The development

249

of such algorithms could lead to enhanced accuracy and reliability of gait analysis in force-plate-less

250

environments.

251

252

**Code Availability:**

253

O-GEST algorithm is fully available at https://github.com/Mehran-Hatamzadeh/O-GEST and is

254

licensed under GNU AFFero General Public License (GNU AGPL V3.0).

255

256

**Funding:**

257

This work was supported by the COFUND BoostUrCAreer program of the Université Côte d'Azur,

258

which has received funding from the European Union's Horizon 2020 research and innovation

259

programme under the Marie Skłodowska-Curie Actions (MSCA, Grant Number: 847581), the

260

Conseil Région SUD Provence-Alpes-Côte d'Azur, and the IDEX UCA<sup>JEDI</sup>.

261

262

**References:**

263

Bertaux, A., Gueugnon, M., Moissenet, F., Orliac, B., et al., 2022. Gait analysis dataset of healthy volunteers and patients before and

264

6 months after total hip arthroplasty. Scientific Data, 9 (399). https://doi.org/10.1038/s41597-022-01483-3

265

Boehm, W. "Cubic B-spline curves and surfaces in computer aided geometric design". Computing 1977, 19, 29-34.

266

https://doi.org/10.1007/BF02260739

267

Boehm, W. "Inserting new knots into B-spline curves". Computer-Aided Design, 1980, 12(4). https://doi.org/10.1016/0010-

268

4485(80)90154-2
269

Boor, C.D. "On calculating with B-splines". J. Approx. Theory, 1972, 6 (1), 50-62. https://doi.org/10.1016/0021-9045(72)90080-9

270

Bruening, D.A., Ridge, S.T., 2014. Automated event detection algorithms in pathological gait. Journal of Gait & Posture, 39, 472-477.

271

https://doi.org/10.1016/j.gaitpost.2013.08.023

272

Criekinge, T.V., Saeys, W., Truijen, S., Vereeck, L., et al., 2023. A full-body motion capture gait dataset of 138 able-bodied adults

273

across the life span and 50 stroke survivors. Scientific Data, 10 (852). https://doi.org/10.1038/s41597-023-02767-y

274

Desailly, E., Daniel, Y., Sardain, P., Lacouture, P., 2009. Foot contact event detection using kinematic data in cerebral palsy children

275

and normal adults gait. Journal of Gait & Posture, 29, 76-80. https://doi.org/10.1016/j.gaitpost.2008.06.009

276

Dumphart, B., Slijepcevic, D., Zeppelzauer, M., Kranzl, A., et al., 2023 Robust deep learning-based gait event detection across

277

various pathologies. PLoS ONE, 18 (8). https://doi.org/10.1371/journal.pone.0288555

278

Eckardt, N., Kibele, A., 2017. Automatic identification of gait events during walking on uneven surfaces. Journal of Gait & Posture,

279

52, 83-86. https://doi.org/10.1016/j.gaitpost.2016.11.029

280

Figueiredo, J., Félix, P., Costa, L., Moreno, J.C., et al., 2018. Gait Event Detection in Controlled and Real-Life Situations: Repeated

281

Measures From Healthy Subjects. IEEE Transactions on Neural Systems and Rehabilitation Engineering, 26 (10).

282

https://doi.org/10.1109/TNSRE.2018.2868094

283

Fonseca, M., Dumas, R., Armand, S., 2022. Automatic gait event detection in pathologic gait using an auto-selection approach among

284

concurrent methods. Journal of Gait & Posture, 96, 271-274. https://doi.org/10.1016/j.gaitpost.2022.06.001

285

French, M.A., Koller, C., Arch, E.S., 2020. Comparison of three kinematic gait event detection methods during overground and

286

treadmill walking for individuals post stroke. Journal of Biomechanics, 99, 109481. https://doi.org/10.1016/j.jbiomech.2019.109481

287

Ghoussayni, S., Stevens, C., Durham, S., Ewins, D., 2004. Assessment and validation of a simple automated method for the detection

288

of gait events and intervals. Journal of Gait & Posture, 20, 266-272. https://doi.org/10.1016/j.gaitpost.2003.10.001

289

Hatamzadeh, M., Busé, L., Chorin, F., Alliez, P., et al., 2022. A kinematic-geometric model based on ankles' depth trajectory in frontal

290

plane for gait analysis using a single RGB-D camera. Journal of Biomechanics, 145, 111358.

291

https://doi.org/10.1016/j.jbiomech.2022.111358

292

Hatamzadeh, M., Busé, L., Turcot, K., Zory, R., 2024. Improved markerless gait kinematics measurement using a biomechanically-

293

aware algorithm with subject-specific geometric modeling. Journal of Measurement, 234, 114857.

294

https://doi.org/10.1016/j.measurement.2024.114857

295

Hsue, B.J., Miller, F., Su, F.C., Henley, J., et al., 2007. Gait timing event determination using kinematic data for the toe walking

296

children with cerebral palsy. Journal of Biomechanics, 40 (2), S529. https://doi.org/10.1016/S0021-9290(07)70519-5

297

Kidzinski, Ł., Delp, S., Schwartz, M., 2019. Automatic real-time gait event detection in children using deep neural networks. Journal

298

of PLOS ONE, 14 (1), e0211466. https://doi.org/10.1371/journal.pone.0211466
299 Kim, Y.K., Visscher, R.M.S., Viehweger, E., Singh, N.B., Taylor, W.R., et al., 2022. A deeplearning approach for automatically
detecting gaitevents based on foot-marker kinematics in children with cerebral palsy-Which markers work best for which gait
patterns? PLoS ONE, 17(10), e0275878. https://doi.org/10.1371/journal.pone.0275878

302 Lempereur, M., Rousseau, F., Remy-Neris, O., Pons, C., et al., 2020. A new deep learning-based method for the detection of gait events
303 in children with gait disorders: proof-of-concept and concurrent validity. Journal of Biomechanics, 98, 109490.
304 https://doi.org/10.1016/j.jbiomech.2019.109490

305 Li, C., He, Y., Chen, T., Tian, S., 2021. Real-Time Gait Event Detection for a Lower Extremity Exoskeleton Robot by Infrared Distance
306 Sensors. IEEE Sensors Journal, 21 (23), 27116-27123. https://doi.org/10.1109/JSEN.2021.3111212

307 Meyns, P., 2022. Gait data children with spastic CP and typically developing children. Dataset. https://simtk.org/frs/?group_id=1212

308 Nie, J., Jiang, M., Botta, A., Takeda, Y., 2023. An adaptive gait event detection method based on stance point for walking assistive
devices. Journal of Sensors and Actuators A: Physical, 364, 114842. https://doi.org/10.1016/j.sna.2023.114842

310 O'Connor, C.M., Thorpe, S.K., O'Malley, M.J., Vaughan, C.L., 2007. Automatic detection of gait events using kinematic data. Journal
311 of Gait & Posture, 25, 469-474. https://doi.org/10.1016/j.gaitpost.2006.05.016

312 Osis, S.T., Hettinga, B.A., Ferber, R., 2016. Predicting ground contact events for a continuum of gait types: An application of targeted
313 machine learning using principal component analysis. Journal of Gait & Posture, 46, 86-90.
314 https://doi.org/10.1016/j.gaitpost.2016.02.021

315 Pérez-Ibarra, J.C., Siqueira, A.A.G., Krebs, H.I., 2020. Identification of Gait Events in Healthy and Parkinson's Disease Subjects Using
316 Inertial Sensors: A Supervised Learning Approach. IEEE Sensors Journal, 20 (24), 14984-14993.
317 https://doi.org/10.1109/JSEN.2020.3011627

318 Rueterbories, J., Spaich, E.G., Larsen, B., Andersen, O.K., 2010. Methods for gait event detection and analysis in ambulatory systems.
319 Journal of Medical Engineering & Physics, 32, 545-552. https://doi.org/10.1016/j.medengphy.2010.03.007

320 Shida, T.K.F., Costa, T.M., Oliveira, C.E.N., Treza, R.C., 2023. A public data set of walking full-body kinematics and kinetics in
321 individuals with Parkinson's disease. Journal of Frontiers in Neuroscience, 17, 992585. https://doi.org/10.3389/fnins.2023.992585

322 Taborri, J., Palermo, E., Rossi, S., Cappa, P., 2016. Gait partitioning methods: a systematic review. Journal of Sensors, 16 (1), 66.
323 https://doi.org/10.3390/s16010066

324 Uhlrich, S.D., Falisse, A., Kidziński, Ł., Muccini, J., et al., 2023. OpenCap: Human movement dynamics from smartphone videos.
325 Journal of Plus Computational Biology, 19 (10), e1011462. https://doi.org/10.1371/journal.pcbi.1011462

326 Vu, H.T.T, Dong, D., Cao, H.L., Verstraten, T., 2020. A Review of Gait Phase Detection Algorithms for Lower Limb Prostheses.
327 Journal of Sensors, 20 (14), 3972. https://doi.org/10.3390/s20143972
328

Visscher, R.M.S, Sansgiri, S., Freslier, M., Harlaar, J., et al., 2021. Towards validation and standardization of automatic gait event

329

identification algorithms for use in paediatric pathological populations. Gait & Posture, 86, 64-69.

330

https://doi.org/10.1016/j.gaitpost.2021.02.031

331

Zahradka, N., Verma, K., Behboodi, A., Bodt, B., et al., 2020. An Evaluation of Three Kinematic Methods for Gait Event Detection

332

Compared to the Kinetic-Based ‘Gold Standard’. Journal of Sensors, 20 (18), 5272. https://doi.org/10.3390/s20185272

333

Zeni, J., Richards, J., Higginson, J.S., 2008. Two simple methods for determining gait events during treadmill and overground walking

334

using kinematic data. Journal of Gait & Posture, 27, 710-714. https://doi.org/10.1016/j.gaitpost.2007.07.007

335

336

337

338

339

340

341

342

343

344

345

346

347

348

349

350

351

352

353

354

355

356

357

358

359
360

# Appendix 1.

361

362

363

364

365

366

367

Assuming that the subject is moving farther from the reference point (i.e., horizontal distance trajectories of the foot landmarks are increasing), the methods used for comparison with O-GEST are described as follows:

**Method of Zeni:** Foot-strike is detected using the maximum distance between the *Heel* *Horizontal* and *Sacrum* *Horizontal*, and foot-off is detected using the minimum distance between the *Toe* *Horizontal* and *Sacrum* *Horizontal* (Zeni et al., 2008).

368

369

370

**Method of Ghoussayni:** A threshold of $0.78V_{Gait}$ is applied on the sagittal velocity of the heel to detect foot-strike, and a threshold of $0.66V_{Gait}$ is applied on the sagittal velocity of the toe for foot-off detection (Ghoussayni et al., 2004).

371

372

373

374

375

**Method of Desailly:** *Heel* *Horizontal* and *Toe* *Horizontal* trajectories are high pass filtered at 0.5 times of the gait frequency and the first maximum among the maxima is used for foot-strike detection. Furthermore, *Heel* *Horizontal* and *Toe* *Horizontal* trajectories are high pass filtered at 1.1 times of the gait frequency and the last minimum among their minima is used for foot-off detection. In this method, the gait frequency is computed using the *Heel* *Vertical* trajectory (Desailly et al., 2009).

376

377

378

**Method of Hsue:** Foot-strike is detected as the minimum of the second derivative of the *Heel* *Horizontal* trajectory, and foot-off is detected as the maximum of the second derivative of the *Toe* *Horizontal* trajectory (Hsue et al., 2007).

379

380

381

**DeepEvent:** DeepEvent is a long short term memory (LSTM) recurrent neural network trained on gait data of children with various pathologies for events detection using 3D trajectory and velocity of foot landmarks (Lempereur et al., 2020).

382