WaveSorter emphasizes dynamic visualization and versatility. Slider controls let the user select any coefficient or sample from any of several transforms, which can then be plotted to either axis of a 2D histogram (scatterplot). Within the waveform space, cursor-based controls let the user select subregions of the waveform space or individual waveforms to view. The user may cluster waveforms manually or via one of several popular clustering programs. The classification along with waveform properties (width, etc.) can be saved to disk in simple text files. WaveSorter is written in C++, utilizes the GNU Scientific Library for all computation, and is highly parallelized; on modern hardware it can handle files containing several 100,000s of waveforms per channel with almost no noticeable loss in GUI fluidity and <1sec lags for files with >1,000,000 waveforms per channel. It can be run in batch mode. It supports a wide array of binary file formats as well as ASCII text.

Features

  • Waveform metrics: Time(stamp), height, width, slope, and slope of differentiated waveform.
  • Transforms: PCA, Haar Wavelet, and spline interpolation. Transforms are performed on both raw and differentiated waveforms.
  • Clustering algorithms: K-Means++, AutoClass C, Super-Paramagnetic Clustering, and KlustaKwik, as well as manual clustering.
  • Select subsets of waveforms from the 2D scatterplot using either a sliding bar, or one of 3 color-coded resizable disks. Simply slide/drag the bar or disks to the desired regions to inspect the waveforms there.
  • The time slider allows visualization and clustering to be restricted to a particular time range within the session.
  • "Movie" option allows you to view an animated playback of the session as you have clustered it. The animation can progress through time or any other dimension.
  • Supports *.apm (FHC), *nev (Neuroshare), *.plx (Plexon), and *M (REX/MEX) file formats, as well as simple ASCII text.

Project Samples

Project Activity

See All Activity >

License

GNU General Public License version 3.0 (GPLv3)

Follow WaveSorter

WaveSorter Web Site

You Might Also Like
Employee monitoring software with screenshots Icon
Employee monitoring software with screenshots

Clear visibility and insights into how employees work. Even remotely.

Stay productive working at any distance from anywhere with Monitask.
Rate This Project
Login To Rate This Project

User Ratings

★★★★★
★★★★
★★★
★★
2
0
0
0
0
ease 1 of 5 2 of 5 3 of 5 4 of 5 5 of 5 0 / 5
features 1 of 5 2 of 5 3 of 5 4 of 5 5 of 5 0 / 5
design 1 of 5 2 of 5 3 of 5 4 of 5 5 of 5 0 / 5
support 1 of 5 2 of 5 3 of 5 4 of 5 5 of 5 0 / 5

User Reviews

  • WaveSorter is an effective and easy to use spike-sorting software for identifying units recorded on multiple single electrodes. The displays and user interface are well-designed. This is the only program I have seen that allows you to plot the derivative of the waveform and principal components based on it. These turn out to produce a very large separation between background noise and well-recorded spikes. The timestamps for clustered units can be exported to simple text files for further analysis. One tip: I had to always run the program as an administrator to allow it to make changes as it works. I don't know if this is still the case in newer versions.
    1 user found this review helpful.
  • Great program. Fast and effective.
Read more reviews >

Additional Project Details

Operating Systems

Linux, Mac, Windows

Intended Audience

Science/Research

User Interface

Qt

Programming Language

C++, C

Related Categories

C++ Data Visualization Software, C++ Medical Software, C Data Visualization Software, C Medical Software

Registered

2012-05-10