Spike Sorting BOTM

Spike sorting using Bayes Optimal Template Matching (BOTM), see [Franke2011]. An earlier version is described in [Franke2010]. Requires the BOTMpy library. In order to use the plugin, select the results from a spike detection. You need detected spikes for the initialization period (determined by the parameter "Initialization segments"), the spike sorting works without previously detected spikes after initialization.

Functionality and Options

First, selected spikes are collected until "Spikes for clustering" spikes are found (or no spikes are available because a total of "Initialization segments" or all selected segments have been used).

The spikes are then clustered using a Gaussian Mixture Model, cluster counts from "Minimum clusters" to "Maximum clusters" are tried. Data strips of "Spike samples" length are considered, they are aligned on "Align sample". The feature used for alignment is given by "Align on".

After clustering, clusters containing less than "Minimum cluster size" spikes are discarded and clusters are merged when the euclidean distance of their upsampled means is smaller than "Maximum merge distance".

After "Initialization Segments" or after all selected segments have been processed, the real sorting starts again at the first segment. No output is generated before this jump! If less than "Spikes for clustering" spikes have been found before this point, no sorting will be created.

New units and their corresponding spike trains are created. If "Create template spikes" is checked, a spike with the prototypical waveform used for sorting is created in each segment for each unit.

If there are artifact epochs that should not be considered for spike detection, check "Ignore artifact epochs" and set "Artifact Tag" to the value of their 'tag' annotation. The artifact detection plugin can create Epoch objects with this annotation.


0.2.1: Better error messages.

0.2: Use previous spike trains instead of running a spike detection with default parameters.

[Franke2010]Franke, F., Natora, M., Boucsein, C., Munk, M. H., & Obermayer, K. (2010). An online spike detection and spike classification algorithm capable of instantaneous resolution of overlapping spikes. Journal of computational neuroscience, 29(1-2), 127-148. http://link.springer.com/article/10.1007/s10827-009-0163-5
[Franke2011]Franke, F (2011). Real-Time Analysis of Extracellular Multielectrode Recordings. PhD Thesis, TU Berlin http://opus.kobv.de/tuberlin/volltexte/2012/3387/

All files

VersionViewer versionUpload dateSize
0.2.1 0.3.0 July 16, 2013 10.2 KB
0.2 0.3.0 June 28, 2013 10.1 KB
0.1 0.3.0 June 24, 2013 9.7 KB


New comment

Please log in to leave a comment.

Author: Philipp Meier

Website: https://github.com/pmeier82/BOTMpy

Download most recent version: 0.2.1

License: BSD