We should aim to one day use the official SpikeInterface!
Detailed comparison: https://github.com/CSC-UW/spikeinterface/compare...wisc/dev
Summary, updated 5/11/2022:
- Explicitly sets MKL BLAS and LAPACK shared object libraries, which is necessary on Linux per #199.
- Commits: 1
- Perhaps we should submit a PR to spikeinterface / KiloSort install intstructions with info about how to obtain proper BLAS and LAPACK versions, then set the relevant environment variables in
.bashrc
? Or is there a spikeinterface config file that users can add their BLAS and LAPACK locations to? Or can they be set as a keyword argument somewhere? Like in the Kilosort sorter class?
- Allow passing amplitudes directly in compute_amplitude_cutoff (allow using Kilosort amplitudes)
Latest Release |
|
Documentation |
|
License |
|
Build Status |
|
Codecov |
|
SpikeInterface is a Python framework designed to unify preexisting spike sorting technologies into a single code base.
Please Star the project to support us and Watch to always stay up-to-date!
With SpikeInterface, users can:
- read/write many extracellular file formats.
- pre-process extracellular recordings.
- run many popular, semi-automatic spike sorters (also in Docker/Singularity containers).
- post-process sorted datasets.
- compare and benchmark spike sorting outputs.
- compute quality metrics to validate and curate spike sorting outputs.
- visualize recordings and spike sorting outputs in several ways (matplotlib, sortingview, in jupyter)
- export report and export to phy
- offer a powerful Qt-based viewer in separate package spikeinterface-gui
- have some powerful sorting components to build your own sorter.
Detailed documentation for spikeinterface can be found here.
Several tutorials to get started can be found in spiketutorials.
There are also some useful notebooks on our blog that cover advanced benchmarking and sorting components.
You can also have a look at the spikeinterface-gui.
You can install the new spikeinterface
version with pip:
pip install spikeinterface[full]
The [full]
option installs all the extra dependencies for all the different sub-modules.
To install all interactive widget backends, you can use:
pip install spikeinterface[full,widgets]
To get the latest updates, you can install spikeinterface
from sources:
git clone https://github.com/SpikeInterface/spikeinterface.git
cd spikeinterface
pip install -e .
cd ..
If you find SpikeInterface useful in your research, please cite:
@article{buccino2020spikeinterface,
title={SpikeInterface, a unified framework for spike sorting},
author={Buccino, Alessio Paolo and Hurwitz, Cole Lincoln and Garcia, Samuel and Magland, Jeremy and Siegle, Joshua H and Hurwitz, Roger and Hennig, Matthias H},
journal={Elife},
volume={9},
pages={e61834},
year={2020},
publisher={eLife Sciences Publications Limited}
}