open-source electrophysiology
spikeinterface.png

SpikeInterface

Spikeinterface simplifies the process of running multiple spike sorters on the same dataset

Description

One pipeline, many sorters

The algorithms available for spike sorting have proliferated in recent years. While it’s great to have many options, we still don’t know how these sorters stack up against each other. It is clear that they don’t always give the same results so having an easy way to run them side-by-side is essential.

SpikeInterface, created through a collaboration between the University of Oslo, the University of Edinburgh, the Flatiron Institute, the Lyon Neuroscience Research Center, and the Allen Institute, simplifies the process of running multiple sorters on the same dataset. With a few lines of code and regardless of the underlying data format, users can: run, compare, and benchmark most modern spike sorting algorithms; pre-process, post-process, and visualize extracellular datasets; validate, curate, and export sorting outputs; and more.

SpikeInterface is open source and implemented in Python 3. The package is available on PyPI (https://pypi.org/project/spikeinterface).

Features

Features

Easy-to-use API

Modular design

Efficient use of memory mapping and parallelization

Compatible with many input and output formats

Pre- and post-processing functions for extracellular datasets

Quality metrics for validation and automatic curation

Evaluation for both ground-truth and non-ground-truth datasets

Fully reproducible analysis workflows

Compatibility with Phy

Compatible sorters

Klusta

Mountainsort4

SpyKING Circus

Kilosort

Kilosort2

HerdingSpikes2

Tridesclous

IronClust

Wave Clus

Spike interface modules
pipelinefull (1).png