Parallelised Differentiable Straightest Geodesics for 3D Meshes

Imperial College London
* Joint senior authors, equal contribution

Abstract

Machine learning has been progressively generalised to operate within non-Euclidean domains, but geometrically accurate methods for learning on surfaces are still falling behind. The lack of closed-form Riemannian operators, the non-differentiability of their discrete counterparts, and poor parallelisation capabilities have been the main obstacles to the development of the field on meshes.

A principled framework to compute the exponential map on Riemannian surfaces discretised as meshes is straightest geodesics, which also allows tracing geodesics and parallel-transporting vectors as a by-product.

We provide a parallel GPU implementation and derive two different methods for differentiating through the straightest geodesics, one leveraging an extrinsic proxy function and one based upon a geodesic finite differences scheme. After proving our parallelisation performance and accuracy, we demonstrate how our differentiable exponential map can improve learning and optimisation pipelines on general geometries.

In particular, to showcase the versatility of our method, we propose a new geodesic convolutional layer, a new flow matching method for learning on meshes, and a second-order optimiser that we apply to centroidal Voronoi tessellation.

Try our method and more with digeo, our differential geometry library for learning on meshes: pip install digeo

AI-generated Podcast (Paper Introduction)

Method Overview

In continuous Riemannian geometry, a geodesic is defined by having zero covariant acceleration: $$\nabla_{\dot{\gamma}(t)}\dot{\gamma}(t)=0$$

On discrete 3D meshes, this concept is adapted using the angle preservation criteria. To maintain a straight path, the left and right surface angles must remain equal ($\theta_l = \theta_r$) for every point $p$ along the curve as it iteratively crosses faces, edges, and vertices.

Because straightest geodesics consist of piecewise linear segments across discrete faces, the derivative is discontinuous ($\dot{\gamma}_v(t) \notin \mathcal{C}^1$ at face transitions). Standard automatic differentiation also fails due to the discrete combinatorial choices made during the tracing algorithm.

To enable end-to-end backpropagation, we derive two distinct methods for computing the Jacobians $J_{Exp}^v$ and $J_{Exp}^p$.

Extrinsic Proxy (EP)

EP is a fast method that relies on an analytical formulation to approximate gradients with respect to the initial vector $v$. It emulates the tracing result in Euclidean space by using the cumulative rotation $R$ accumulated by the geodesic path:

$$\varphi(p,v) = p_{proxy}^{\prime} = [R^{fix} \cdot (p+v)] + t^{fix}$$

During the backward pass, $R^{fix}$ effectively backward parallel-transports the upstream Jacobian from the destination point $p'$ back to the start point $p$.

Geodesic Finite Differences (GFD)

For applications requiring high accuracy for both $p$ and $v$, we use GFD. This method adapts finite differences to respect the mesh geometry by perturbing inputs along a local non-orthogonal barycentric coordinate system and projecting the results via a pseudoinverse $M^\dagger$.

For example, the Jacobian for $v$ evaluates perturbations along its parallel $\hat{e}_{||}$ and perpendicular $\hat{e}_{⊥}$ axes:

$$J_{Exp}^v \approx M_{p'}^{\dagger} \cdot \left[ \frac{Exp(p, v+\epsilon_v \hat{e}_{||}) - p'}{\epsilon_v} \quad \frac{Exp(p, v+\epsilon_v \hat{e}_{\perp}) - p'}{\epsilon_v} \right]$$

Applications


Adaptive Geodesic Convolution

Adaptive Geodesic Convolutions enhance standard Geodesic Convolutional Neural Networks (GCNN) by introducing learnable receptive fields. While GCNN and other methods rely on a fixed patch size determined by precomputed distances, AGC leverages the differentiable straightest geodesics to dynamically adjust the patch size for each channel and layer during the training process. This flexibility allows the model to adapt its filters based on the underlying surface geometry, capturing features at the most relevant scales. When tested on human body part segmentation, this approach outperformed fixed-patch methods and reached higher accuracy levels, particularly when using Heat Kernel Signatures as input.

MeshFlow

MeshFlow is a generative modeling framework inspired by flow matching that transports noise distributions to target data distributions on a manifold. By using the differentiable exponential map, MeshFlow avoids the need for slow ODE solvers and frequent projection steps typically required to keep points on a mesh surface.

Mesh-LBFGS

Mesh-LBFGS is a quasi-Newton optimiser specifically adapted for 3D meshes. It captures curvature information to accelerate optimisation by replacing standard Euclidean operations with manifold-specific operators like parallel transport and the exponential map. We applied this to the Geodesic Centroidal Voronoi Tessellation problem, which involves partitioning a surface into regions centered around specific seed points. Compared to the traditional Lloyd's algorithm (linear optimiser), Mesh-LBFGS achieves faster convergence and superior minimisation performance, especially in scenarios where the initial seeds are clustered together.

Bibtex

Copied!
@inproceedings{verninas2026disgeod,
  title={Parallelised Differentiable Straightest Geodesics for 3D Meshes},
  author={Verninas, Hippolyte and Korkmaz, Caner and Zafeiriou, Stefanos and Birdal, Tolga and Foti, Simone},
  booktitle={Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition},
  year={2026}
}