Difference between revisions of "Contributions:BCPy2000"

From BCI2000 Wiki
Jump to: navigation, search
(Location)
(Synopsis)
Line 1: Line 1:
 
==Synopsis==
 
==Synopsis==
BCPy2000 is a set of modules for BCI2000 that allows a highly customizable experiment design using the Python scripting language. It was developed by Thomas Schreiner at the Max-Planck-Institute for Biological Cybernetics in Tübingen / Germany. An extensive amount of relevant documentation is contained in the project thesis, which is available for download [http://{{SERVERNAME}}/downloads/doc/BCPy2000Thesis.pdf here].
+
BCPy2000 takes the C++ out of BCI2000 programming. It is aimed at developers of new applications and new signal processing methods, providing a platform for rapid, flexible development of experimental Brain-Computer Interface systems in Python. It takes advantage of various high-level Python packages: VisionEgg[http://visionegg.org] for stimulus presentation, NumPy[http://numpy.scipy.org] and SciPy[http://scipy.org] for signal processing and classification, and IPython[http://ipython.scipy.org] for interactive debugging.
 +
 
 +
You can program a python-based application module, signal processing module, or even a signal source module for generating custom test signals and playing back data files. You can slow the system right down or even step through packet-by-packet, while interactively debugging your python code with pdb.
 +
 
 +
BCPy2000 implements a lot of infrastructure that allows you to get an application module running quickly. It also contains a set of optional tools, which are still a work in progress, but which are rapidly turning into a kind of "standard library" of Pythonic signal-processing algorithms and stimulus widgets.
  
 
The source code is available under the terms of the GNU General Public License v3.
 
The source code is available under the terms of the GNU General Public License v3.
 +
 +
BCPy2000 is coming soon:  30.09.2008
  
 
==Location==
 
==Location==

Revision as of 00:39, 30 September 2008

Synopsis

BCPy2000 takes the C++ out of BCI2000 programming. It is aimed at developers of new applications and new signal processing methods, providing a platform for rapid, flexible development of experimental Brain-Computer Interface systems in Python. It takes advantage of various high-level Python packages: VisionEgg[1] for stimulus presentation, NumPy[2] and SciPy[3] for signal processing and classification, and IPython[4] for interactive debugging.

You can program a python-based application module, signal processing module, or even a signal source module for generating custom test signals and playing back data files. You can slow the system right down or even step through packet-by-packet, while interactively debugging your python code with pdb.

BCPy2000 implements a lot of infrastructure that allows you to get an application module running quickly. It also contains a set of optional tools, which are still a work in progress, but which are rapidly turning into a kind of "standard library" of Pythonic signal-processing algorithms and stimulus widgets.

The source code is available under the terms of the GNU General Public License v3.

BCPy2000 is coming soon: 30.09.2008

Location

http://www.bci2000.org/svn/trunk/src/contrib/BCPy2000

Versioning

Author

Thomas Schreiner

Version History

no changes recorded yet.

Source Code Revisions

(TODO: In this section, indicate the BCI2000 source code revisions (changesets) that you used when developing your contribution, and information about testing/compilation. Adapt the list to your own needs. Hint: You obtain the revision of a source code repository by right-clicking its top level directory, and choosing "show log" from the TortoiseSVN submenu.)

  • Initial development: XXXX
  • Tested under: YYYY
  • Known to compile under: ZZZZ
  • Broken since: UUUU

Functional Description

See the documentation chapter of my thesis.

Parameters

See the documentation chapter of my thesis.

States

See the documentation chapter of my thesis.