API reference

Covariance Estimation

Covariances([estimator]) Estimation of covariance matrix.
ERPCovariances([classes, estimator, svd]) Estimate special form covariance matrix for ERP.
XdawnCovariances([nfilter, applyfilters, …]) Estimate special form covariance matrix for ERP combined with Xdawn.
CospCovariances([window, overlap, fmin, …]) Estimation of cospectral covariance matrix.
Coherences([window, overlap, fmin, fmax, fs]) Estimation of coherences matrix.
HankelCovariances([delays, estimator]) Estimation of covariance matrix with time delayed hankel matrices.
Shrinkage([shrinkage]) Regularization of covariance matrices by shrinkage

Embedding

Embedding([n_components, metric, eps]) Embed SPD matrices into an Euclidean space of smaller dimension.

Classification

MDM([metric, n_jobs]) Classification by Minimum Distance to Mean.
FgMDM([metric, tsupdate, n_jobs]) Classification by Minimum Distance to Mean with geodesic filtering.
TSclassifier([metric, tsupdate, clf, …]) Classification in the tangent space.
KNearestNeighbor([n_neighbors, metric, n_jobs]) Classification by K-NearestNeighbor.

Clustering

Kmeans([n_clusters, max_iter, metric, …]) Kmean clustering using Riemannian geometry.
KmeansPerClassTransform([n_clusters]) Run kmeans for each class.
Potato([metric, threshold, n_iter_max, …]) Artefact detection with the Riemannian Potato.

Tangent Space

TangentSpace([metric, tsupdate]) Tangent space project TransformerMixin.
FGDA([metric, tsupdate]) Fisher Geodesic Discriminant analysis.

Spatial Filtering

Xdawn([nfilter, classes, estimator, …]) Implementation of the Xdawn Algorithm.
CSP([nfilter, metric, log]) Implementation of the CSP spatial Filtering with Covariance as input.
SPoC([nfilter, metric, log]) Implementation of the SPoC spatial filtering with Covariance as input.
BilinearFilter(filters[, log]) Bilinear spatial filter.

Channel selection

ElectrodeSelection([nelec, metric, n_jobs]) Channel selection based on a Riemannian geometry criterion.
FlatChannelRemover Finds and removes flat channels.

Stats

PermutationDistance([n_perms, metric, mode, …]) Permutation test based on distance.
PermutationModel([n_perms, model, n_jobs, …]) Permutation test using any scikit-learn model for scoring.

Utils function

Utils functions are low level functions that implement most base components of Riemannian Geometry.

Distances

distance(A, B[, metric]) Distance between two covariance matrices A and B according to the metric.
distance_euclid(A, B) Euclidean distance between two covariance matrices A and B.
distance_riemann(A, B) Riemannian distance between two covariance matrices A and B.
distance_logeuclid(A, B) Log Euclidean distance between two covariance matrices A and B.
distance_logdet(A, B) Log-det distance between two covariance matrices A and B.
distance_kullback(A, B) Kullback leibler divergence between two covariance matrices A and B.
distance_kullback_sym(A, B) Symetrized kullback leibler divergence.
distance_wasserstein(A, B) Wasserstein distance between two covariances matrices.

Mean

mean_covariance(covmats[, metric, sample_weight]) Return the mean covariance matrix according to the metric
mean_euclid(covmats[, sample_weight]) Return the mean covariance matrix according to the euclidean metric :
mean_riemann(covmats[, tol, maxiter, init, …]) Return the mean covariance matrix according to the Riemannian metric.
mean_logeuclid(covmats[, sample_weight]) Return the mean covariance matrix according to the log-euclidean metric.
mean_logdet(covmats[, tol, maxiter, init, …]) Return the mean covariance matrix according to the logdet metric.
mean_wasserstein(covmats[, tol, maxiter, …]) Return the mean covariance matrix according to the wasserstein metric.
mean_ale(covmats[, tol, maxiter, sample_weight]) Return the mean covariance matrix according using the AJD-based log-Euclidean Mean (ALE).
mean_harmonic(covmats[, sample_weight]) Return the harmonic mean of a set of covariance matrices.
mean_kullback_sym(covmats[, sample_weight]) Return the mean covariance matrix according to KL divergence.

Geodesic

geodesic(A, B, alpha[, metric]) Return the matrix at the position alpha on the geodesic between A and B according to the metric :
geodesic_riemann(A, B[, alpha]) Return the matrix at the position alpha on the riemannian geodesic between A and B :
geodesic_euclid(A, B[, alpha]) Return the matrix at the position alpha on the euclidean geodesic between A and B :
geodesic_logeuclid(A, B[, alpha]) Return the matrix at the position alpha on the log euclidean geodesic between A and B :

Tangent Space

tangent_space(covmats, Cref) Project a set of covariance matrices in the tangent space according to the given reference point Cref
untangent_space(T, Cref) Project a set of Tangent space vectors in the manifold according to the given reference point Cref

Base

sqrtm(Ci) Return the matrix square root of a covariance matrix defined by :
invsqrtm(Ci) Return the inverse matrix square root of a covariance matrix defined by :
expm(Ci) Return the matrix exponential of a covariance matrix defined by :
logm(Ci) Return the matrix logarithm of a covariance matrix defined by :
powm(Ci, alpha) Return the matrix power \(\alpha\) of a covariance matrix defined by :

Aproximate Joint Diagonalization

rjd(X[, eps, n_iter_max]) Approximate joint diagonalization based on jacobi angle.
ajd_pham(X[, eps, n_iter_max]) Approximate joint diagonalization based on pham’s algorithm.
uwedge(X[, init, eps, n_iter_max]) Approximate joint diagonalization algorithm UWEDGE.