Multiple Sclerosis
100,000
Functional data analysis in elastic shape metric spaces
Lab-STICC Department, UMR CNRS 6285, Institut Universitaire de Technologie de Vannes, France
2024-12-15
Gait analysis of body part orientation over time
Two key numbers in France
Multiple Sclerosis
100,000
Parkinson's disease
160,000
Two key observations
Unit quaternion
A unit quaternion \(\mathbf{q} = (q_w, q_x, q_y, q_z)^\top \in \mathbb{R}^4\) encodes a rotation of angle \(\theta\) around the axis \(\mathbf{u}\) as: \[ \begin{aligned} \mathbf{q} &= q_w + q_x \mathbf{i} + q_y \mathbf{j} + q_z \mathbf{k} \\ &= \cos \left( \frac{\theta}{2} \right) + (u_x \mathbf{i} + u_y \mathbf{j} + u_z \mathbf{k}) \sin \left( \frac{\theta}{2} \right), \end{aligned} \] with \(\mathbf{i}^2 = \mathbf{j}^2 = \mathbf{k}^2 = \mathbf{i} \mathbf{j} \mathbf{k} = -1\).
Raw data collected by the eGait device:
Gait cycle
Set of movements accomplished in between two consecutive heel strikes of the same foot on the ground.
\(\phantom{\Longrightarrow}\)
\(\Longrightarrow\)
Handling non-Euclidean geometry
Definition 1 (Smooth manifold) A smooth or differentiable manifold is a topological space that locally resembles linear space.
Definition 2 (Group) A group is a set \(\mathcal{G}\), with composition operation \(\circ\), that, for elements \(\mathcal{X}, \mathcal{Y}, \mathcal{Z} \in \mathcal{G}\), satisfies the following axioms:
Definition 3 (Lie group) A Lie group is a smooth manifold whose elements satisfy the group axioms.
Vectors \(\mathbf{x} = (0, x_1, x_2, x_3) = 0 + ix_1 + jx_2 + kx_3\) rotate in 3D space by an angle \(\theta\) around the unit axis \(\mathbf{u}\) through the double quaternion product \(\mathbf{x}^\prime = \mathbf{q} \mathbf{x} \mathbf{q}^\star\).
Original manifold \(\mathbb{S}^3\)
\[ \scriptsize{ \begin{array}{rccc} \mathbf{q}: & [0,1] & \to & \mathbb{S}^3 \\ & s & \mapsto & \mathbf{q}(s) \end{array} } \]
Tangent space \(\mathcal{T}\mathbb{S}^3 \approx \mathbb{R}^3\)
\[ \scriptsize{ \begin{array}{rccc} \mathbf{t}: & [0,1] & \to & \mathbb{R}^3 \\ & s & \mapsto & \log(\mathbf{q}(s)) = (\theta(s) / 2) \mathbf{v}(s) \end{array} } \]
Metric space
Which distance should we use?
Original manifold \(\mathbb{S}^3\)
\[ \scriptsize{ \begin{array}{rccc} \mathbf{q}: & [0,1] & \to & \mathbb{S}^3 \\ & s & \mapsto & \mathbf{q}(s) \end{array} } \]
Tangent space \(\mathcal{T}\mathbb{S}^3 \approx \mathbb{R}^3\)
\[ \scriptsize{ \begin{array}{rccc} \mathbf{t}: & [0,1] & \to & \mathbb{R}^3 \\ & s & \mapsto & \log(\mathbf{q}(s)) = (\theta(s) / 2) \mathbf{v}(s) \end{array} } \]
Metric space
Which distance should we use?
Square-root velocity function (SRVF) space \(L^2 \left( [0, 1], \mathbb{R}^3 \right)\) (Kurtek et al. 2012; Tucker, Wu, and Srivastava 2013; Srivastava and Klassen 2016)
\[ \scriptsize{ \begin{array}{rccc} \mathbf{g}: & [0,1] & \to & \mathbb{R}^3 \\ & s & \mapsto & \begin{cases} \frac{\mathbf{t}^\prime(s))}{\sqrt{\| \mathbf{t}^\prime(s)) \|}} & \text{if } \mathbf{t}^\prime(s) \neq 0 \\ 0 & \text{otherwise} \end{cases} \end{array} } \]
Defining a proper metric space for analyzing individual gait patterns
\[ d(\mathbf{q}_1, \mathbf{q}_2) = \| \mathbf{v}_1 - \mathbf{v}_2 \|_{L^2} \]
Geometric invariant | Distance (all isometric) |
---|---|
Warping | \(d(\mathbf{q}_1, \mathbf{q}_2) = \min_{\gamma \in \Gamma} \| \mathbf{v}_1 - (\mathbf{v}_2 \circ \gamma) \sqrt{\dot{\gamma}} \|_{L^2}\) |
Orientation | \(d(\mathbf{q}_1, \mathbf{q}_2) = \min_{R \in \mathrm{SO}(3)} \| \mathbf{v}_1 - R \mathbf{v}_2 \|_{L^2}\) |
Scale | \(d(\mathbf{q}_1, \mathbf{q}_2) = \left\| \frac{\mathbf{v}_1}{\| \mathbf{v}_1 \|_{L_2}} - \frac{\mathbf{v}_2}{\| \mathbf{v}_2 \|_{L_2}} \right\|_{L^2}\) |
\[ \Gamma = \{ \gamma : [0,1] \to [0,1] | \gamma(0) = 0, \gamma(1) = 1, 0 < \dot{\gamma} < +\infty \} \]
Reminder
In tangent space, we manipulate trajectories of the form:
\[ s \mapsto \theta(s) \mathbf{u}(s), \]
where \(\theta\) is the rotation angle and \(\mathbf{u}\) the axis of rotation.
Rotation invariance
Makes two trajectories with orientations expressed in two different frames of reference equal. This is a good property.
Scale invariance
Makes two trajectories with proportional rotation angle equal. It might be a good property if proportional rotation angle captures differences due to individuals’ height.
vespa64: data set in {squat} package
Statistical analyses currently extended to IGPs:
Clustering - Deps: {fdacluster}, {fdasrvf}, {dbscan} (Sangalli et al. 2010; Vantini 2012)
S3
impl. of kmeans()
, hclust()
and dbscan()
for qts_sample
objects;qtsclust
;S3
impl. of autoplot()
and plot()
for qtsclust
objects for visualization.PCA - Deps: {MFPCA} (Happ and Greven 2018; Happ-Kurz 2020)
S3
impl. of prcomp()
for qts_sample
objects;prcomp_qts
;S3
impl. of autoplot()
, plot()
and predict()
for prcomp_qts
objects for easy visualizations and prediction.Elastic shape analysis for gait orientation data
Extension under elastic shape metrics
We aim to extend clustering, PCA and regression (prediction, classification) to make use of the elastic shape metric spaces.
CMStatistics 2024 - King’s College London – https://astamm.github.io – aymeric.stamm@cnrs.fr