Project details for pySPACE

Logo pySPACE 1.2

by krell84 - October 29, 2014, 15:36:28 CET [ Project Homepage BibTeX BibTeX for corresponding Paper Download ]

view (3 today), download ( 2 today ), 0 subscriptions


pySPACE is the abbreviation for "Signal Processing and Classification Environment in Python using YAML and supporting parallelization". It is a modular software for processing of large data streams that has been specifically designed to enable distributed execution and empirical evaluation of signal processing chains. V arious signal processing algorithms (so called nodes) are available within the software, from finite impulse response filters over data-dependent spatial filters (e.g. CSP, xDAWN) to established classifiers (e.g. SVM, LDA). pySPACE incorporates the concept of node and node chains of the MDP framework. Due to its modular architecture, the software can be easily extended with new processing nodes and more general operations. Large scale empirical investigations can be configured using simple text- configuration files in the YAML format, executed on different (distributed) computing modalities, and evaluated using an interactive graphical user interface.

pySPACE allows the user to connect nodes modularly and automatically benchmark the respective chains for different parameter settings and compare these with other node chains, e.g. by automatic evaluation of classification performances provided within the software. In addition, the pySPACElive mode of execution can be used for online processing of streamed data. The software specifically supports but is not limited to EEG data. Any kind of time series or feature vector data can be processed and analyzed. pySPACE additionally provides interfaces to specialized signal processing libraries such as SciPy, the WEKA Machine Learning Framework, MDP, and the Maja Machine Learning Framework (MMLF).

pySPACE features:

  • completely modular signal processing chains

  • over 200 processing nodes: comprising data loading, splitting, selection and saving; filtering and normalization; feature generation and selection; parameter optimization; and classification, postprocessing and evaluation

  • several large dataset operations

  • benchmarking of signal processing (including the calculation of numerous metrics)

  • pySPACElive mode for online processing of incoming data streams

  • interfaces to other frameworks

  • modular and easy to extent

  • comprehensive developer and user documentation

  • data visualization and graphical user interface for analysis of performance results

  • easy installation building the pySPACEcenter containing everything the user needs: executables, configuration, data storage and specifications

Currently supported operating systems are Linux and MacOSX, and also cluster architectures using MPI or the IBM LoadLeveler system but the software should also run on windows. The software has required dependencies to Python2.6 or 2.7, NumPy, SciPy and YAML. Further optional dependencies exist, e.g. for plotting Matplotlib is needed. Computational efficiency is achieved by using C/C++-Code libraries where needed, e.g. SVM classification can be performed using the LIBSVM package.

Changes to previous version:

improved testing, improved documentation, windows compatibility, more algorithms

BibTeX Entry: Download
Corresponding Paper BibTeX Entry: Download
Supported Operating Systems: Linux, Windows, Mac Os X
Data Formats: Arff, Brainamp, Csv, Numpy, Edf
Tags: Brain Computer Interface, Classification, Preprocessing, Parallel, Machine Learning, Signal Processing, Prediction, Time Series Analysis, Parameter Optimization, Metrics, Benchmarking
Archive: download here

Other available revisons

Version Changelog Date

improved testing, improved documentation, windows compatibility, more algorithms

October 29, 2014, 15:36:28

First release. Initial Announcement on

August 23, 2013, 21:00:32


No one has posted any comments yet. Perhaps you'd like to be the first?

Leave a comment

You must be logged in to post comments.