Research Article

A Framework for the Comparative Assessment of Neuronal Spike Sorting Algorithms towards More Accurate Off-Line and On-Line Microelectrode Arrays Data Analysis

Table 5

Computational effort and runtime to process a single spike.

Method Number of additionsNumber of multiplicationsNumber of if-operationsTime (μs)

PCA0
DWT0
FSDE0
GEO1
FCM
DBC00
O-sort8

Computational requirements to classify a single spike (3 ms waveform sampled at 25 kHz). Columns from 2 to 4 indicate the number of operations for each spike included into the implemented Matlab code, showing their dependence on algorithms parameters. The last column reports the resulting execution times (averaged over 100 repetitions and reported as mean ± standard deviation). Times are for Matlab running on a quad-core 3.3 GHz CPUs desktop computer with 4 GB RAM and Windows 7 64-bit. Asterisks in the first column indicate methods for which an implementation in C language with MEX-files was performed.
Projection onto 3 principal components.
3-level wavelet decomposition.
Extraction of 7 geometric features from the spike waveform.
Worse case in which all the cycles/iterations involved in O-sort method are entered.
: number of samples per spike ( in the numerical time example).
: number of clusters or templates ( in the numerical time example).
: resolution of the look-up-table for density-based clustering method ( in the numerical time example).