Skip to content
Examples for Geomstats
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.
deep_learning Rename "example" into "project" (#14) Dec 29, 2018
robotics Rename "example" into "project" (#14) Dec 29, 2018
se3_pose_estimation Add doc + some cleaning (#17) Dec 31, 2018
.gitignore Initial commit May 14, 2018
LICENSE Update Dec 31, 2018


Applications for Geomstats

Brain Connectome Analysis

We consider the fMRI data from the 2014 MLSP Schizophrenia Classification challenge, consisting of the resting-state fMRIs of 86 patients split into two balanced categories: control vs people suffering schizophrenia.

We approach the classification task by using a SVM classifier on pairwise-similarities between brain connectomes, represented as the SPD matrices of their regularized Laplacians. The similarities are computed with the affine-invariant Riemannian distance on the manifold of SPD matrices.

# from the root of your unziped directory
cd brain_connectome
pip3 install -r requirements.txt

Robotics Application

We consider a robot arm in this application. In robotics, it is common to control a manipulator in Cartesian space rather than configuration space. We generate a geodesic on SO(3) between the initial orientation of the robot arm and its desired final orientation. We use the generated trajectory as an input to the robot controller.

The robotics application is a little bit more involved. It has its own file and corresponding instructions. You will need a C++ compilation toolchain.

# from the root of your unziped directory
cat robotics/

Training MNIST on the Hypersphere

We consider the training of MNIST with weights constrained on the Hypersphere. The optimization step has been modified in keras such that the stochastic gradient descent is done on the manifold through the Exponential Map.

The deep learning application requires a tensorflow patch and installing a modified version of keras.

# from the root of your unziped directory
cat deep_learning/

Training a Pose Estimation Network

This example trains a pose estimation network using a SE3 Geodesic Loss function.

# from the root of your unziped directory
cat se3_pose_estimation/

Enjoy :)


  • Claire Donnat
  • Benjamin Hou
  • Mikael Jorda
  • Alice Le Brigant
  • Johan Mathe
  • Nina Miolane
You can’t perform that action at this time.