Abstract
In this chapter, we provide an overview of publicly available software platforms for brain–computer interfaces. We have identified seven major BCI platforms and one platform specifically targeted towards feedback and stimulus presentation. We describe the intended target user group (which includes researchers, programmers, and end users), the most important features of each platform such as availability on different operating systems, licences, programming languages involved, supported devices, and so on. These seven platforms are: (1) BCI2000, (2) OpenViBE, (3) TOBI Common Implementation Platform (CIP), (4) BCILAB, (5) BCI++, (6) xBCI, and (7) BF++. The feedback framework is called Pyff. Our conclusion discusses possible synergies and future developments, such as combining different components of different platforms. With this overview, we hope to identify the strengths and weaknesses of each available platform, which should help anyone in the BCI research field in their decision which platform to use for their specific purposes.
Keywords
- Graphical User Interface
- Motor Imagery
- Independent Component Analysis
- Common Spatial Pattern
- Stimulus Application
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.
This is a preview of subscription content, log in via an institution.
Buying options
Tax calculation will be finalised at checkout
Purchases are for personal use only
Learn about institutional subscriptionsNotes
- 1.
- 2.
- 3.
- 4.
- 5.
- 6.
- 7.
- 8.
- 9.
- 10.
- 11.
- 12.
- 13.
- 14.
- 15.
- 16.
- 17.
- 18.
- 19.
- 20.
- 21.
- 22.
- 23.
- 24.
- 25.
- 26.
- 27.
- 28.
- 29.
- 30.
- 31.
- 32.
- 33.
References
Allison, B.Z., McFarland, D.J., Schalk, G., Zheng, S.D., Jackson, M.M., Wolpaw, J.R.: Towards an independent brain–computer interface using steady state visual evoked potentials. Clin. Neurophysiol. 119, 399–408 (2008)
Bell, A.J., Sejnowski, T.J.: An information-maximization approach to blind separation and blind deconvolution. Neural Comput. 7, 1129–1159 (1995)
Bell, C.J., Shenoy, P., Chalodhorn, R., Rao, R.P.: Control of a humanoid robot by a noninvasive brain–computer interface in humans. J. Neural Eng. 5, 214–220 (2008)
Bianchi, L., Babiloni, F., Cincotti, F., Salinari, S., Marciani, M.G.: An object oriented approach to biofeedback applications for disabled people. In: 3rd International Conference on BioElectroMagnetism, pp. 1–3. Bled, Slovenia (2000)
Bianchi, L., Babiloni, F., Cincotti, F., Mattia, D., Marciani, M.G.: Developing wearable bio-feedback systems: the BF++ framework approach. In: 1st International IEEE EMBS Conference on Neural Engineering, pp. 607–609. Capri, Italy (2003)
Bianchi, L., Quitadamo, L., Garreffa, G., Cardarilli, G., Marciani, M.: Performances evaluation and optimization of brain computer interface systems in a copy spelling task. IEEE Trans. Neural Syst. Rehabil. Eng. 15, 207–216 (2007)
Bianchi, L., Quitadamo, L.R., Abbafati, M., Marciani, M.G., Saggio, G.: Introducing NPXLab 2010: a tool for the analysis and optimization of P300 based brain–computer interfaces. In: 2nd International Symposium on Applied Sciences in Biomedical and Communication Technologies, pp. 1–4 (2009)
Blankertz, B., Lemm, S., Treder, M., Haufe, S., Müller, K.R.: Single-trial analysis and classification of ERP components – a tutorial. NeuroImage 56, 814–825 (2011)
Breitwieser, C., Daly, I., Neuper, C., Müller-Putz, G. R.: Proposing a standardized protocol for raw biosignal transmission. IEEE Trans. Biomed. Eng. 59, 852–859 (2012)
Breitwieser, C., Neuper, C., Müller-Putz, G.R.: A concept to standardize raw biosignal transmission for brain–computer interfaces. In: Proceedings of the 33rd Annual International Conference of the IEEE Engineering in Medicine and Biology Society (2011b)
Brouwer, A.M., Van Erp, J.B.F.: A tactile P300 brain–computer interface. Front. Neurosci. 4 (2010)
Brunner, P., Ritaccio, A.L., Lynch, T.M., Emrich, J.F., Wilson, J.A., Williams, J.C., Aarnoutse, E.J., Ramsey, N.F., Leuthardt, E.C., Bischof, H., Schalk, G.: A practical procedure for real-time functional mapping of eloquent cortex using electrocorticographic signals in humans. Epilepsy Behav. 15, 278–286 (2009)
Brunner, P., Ritaccio, A.L., Emrich, J.F., Bischof, H., Schalk, G.: Rapid communication with a “P300” matrix speller using electrocorticographic signals (ECoG). Front. Neurosci. 5 (2011)
Buch, E., Weber, C., Cohen, L.G., Braun, C., Dimyan, M.A., Ard, T., Mellinger, J., Caria, A., Soekadar, S., Fourkas, A., Birbaumer, N.: Think to move: a neuromagnetic brain–computer interface (BCI) system for chronic stroke. Stroke 39, 910–917 (2008)
Cabrera, A.F., Dremstrup, K.: Auditory and spatial navigation imagery in brain–computer interface using optimized wavelets. J. Neurosci. Methods 174, 135–146 (2008)
Cincotti, F., Mattia, D., Aloise, F., Bufalari, S., Astolfi, L., De Vico Fallani F., Tocci, A., Bianchi, L., Marciani, M.G., Gao, S., Millán, J., Babiloni, F.: High-resolution EEG techniques for brain–computer interface applications. J. Neurosci. Meth. 167, 31–42 (2008a)
Cincotti, F., Mattia, D., Aloise, F., Bufalari, S., Schalk, G., Oriolo, G., Cherubini, A., Marciani, M.G., Babiloni, F.: Non-invasive brain–computer interface system: towards its application as assistive technology. Brain Res. Bull. 75, 796–803 (2008b)
Delorme, A., Makeig, S.: EEGLAB: an open source toolbox for analysis of single-trial EEG dynamics including independent component analysis. J. Neurosci. Meth. 134, 9–21 (2004)
Delorme, A., Mullen, T., Kothe, C., Acar, Z.A., Bigdely-Shamlo, N., Vankov, A., Makeig, S.: EEGLAB, SIFT, NFT, BCILAB, and ERICA: new tools for advanced EEG processing. Comput. Intell. Neurosci. 2011, 130,714 (2011)
Felton, E.A., Wilson, J.A., Williams, J.C., Garell, P.C.: Electrocorticographically controlled brain–computer interfaces using motor and sensory imagery in patients with temporary subdural electrode implants – report of four cases. J. Neurosurg. 106, 495–500 (2007)
Graimann, B., Allison, B., Pfurtscheller, G.: Brain-computer interfaces: a gentle introduction. In: Graimann, B., Allison, B., Pfurtscheller, G.: (eds.) Brain–Computer Interfaces: Revolutionizing Human–Computer Interaction, pp. 1–28. Springer Berlin Heidelberg, (2011)
Kanoh, S., Scherer, R., Yoshinobu, T., Hoshimiya, N., Pfurtscheller, G.: “Brain switch” BCI system based on EEG during foot movement imagery. In: Proceedings of the Third International Brain–Computer Interface Workshop and Training Course, pp. 64–65 (2006)
Kanoh, S., Scherer, R., Yoshinobu, T., Hoshimiya, N., Pfurtscheller, G.: Effects of long-term feedback training on oscillatory EEG components modulated by motor imagery. In: Proceedings of the Fourth International Brain–Computer Interface Workshop and Training Course, pp. 150–155 (2008)
Kothe, C., Makeig, S.: Estimation of task workload from EEG data: new and current tools and perspectives. In: Proceedings of the 33rd Annual International Conference of the IEEE Engineering in Medicine and Biology Society (2011)
Kubánek, J., Miller, K.J., Ojemann, J.G., Wolpaw, J.R., Schalk, G.: Decoding flexion of individual fingers using electrocorticographic signals in humans. J. Neural Eng. 6, 066,001 (2009)
Kübler, A., Nijboer, F., Mellinger, J., Vaughan, T.M., Pawelzik, H., Schalk, G., McFarland, D.J., Birbaumer, N., Wolpaw, J.R.: Patients with ALS can use sensorimotor rhythms to operate a brain–computer interface. Neurology 64, 1775–1777 (2005)
Lancaster, J.L., Woldorff, M.G., Parsons, L.M., Liotti, M., Freitas, C.S., Rainey, L., Kochunov, P.V., Nickerson, D., Mikiten, S.A., Fox, P.T.: Automated Talairach atlas labels for functional brain mapping. Hum. Brain Mapp. 10, 120–131 (2000)
Leuthardt, E.C., Schalk, G., Wolpaw, J.R., Ojemann, J.G., Moran, D.W.: A brain–computer interface using electrocorticographic signals in humans. J. Neural Eng. 1, 63–71 (2004)
Leuthardt, E.C., Miller, K.J., Schalk, G., Rao, R.P., Ojemann, J.G.: Electrocorticography-based brain computer interface – the Seattle experience. IEEE Trans. Neural Syst. Rehabil. Eng. 14, 194–198 (2006)
Leuthardt, E.C., Miller, K.J., Anderson, N.R., Schalk, G., Dowling, J., Miller, J., Moran, D.W., Ojemann, J.G.: Electrocorticographic frequency alteration mapping: a clinical technique for mapping the motor cortex. Neurosurgery 60, 260–270 (2007)
Lotte, F., Renard, Y., Lécuyer, A.: Self-paced brain–computer interaction with virtual worlds: a qualitative and quantitative study “out-of-the-lab.” In: Proceedings of the Fourth International Brain–Computer Interface Workshop and Training Course, pp. 373–378 (2008)
Makeig, S., Bell, A.J., Jung, T.P., Sejnowski, T.J.: Independent component analysis of electroencephalographic data. In: Touretzky, D., Mozer, M., Hasselmo, M. (eds.) Advances in Neural Information Processing Systems, pp. 145–151. MIT Press (1996)
Makeig, S., Gramann, K., Jung, T.P., Sejnowski, T.J., Polzner, H.: Linking brain, mind and behavior. Int. J. Psychophysiol. 73, 95–100 (2009)
Mason, S.G., Birch, G.E.: A general framework for brain–computer interface design. IEEE Trans. Neural Syst. Rehabil. Eng. 11, 70–85 (2003)
McFarland, D.J., Krusienski, D.J., Sarnacki, W.A., Wolpaw, J.R.: Emulation of computer mouse control with a noninvasive brain–computer interface. J. Neural Eng. 5, 101–110 (2008)
McFarland, D.J., Sarnacki, W.A., Wolpaw, J.R.: Electroencephalographic (EEG) control of three-dimensional movement. J. Neural Eng. 7, 036,007 (2010)
Mellinger, J., Schalk, G., Braun, C., Preissl, H., Rosenstiel, W., Birbaumer, N., Kübler, A.: An MEG-based brain–computer interface (BCI). NeuroImage 36, 581–593 (2007)
Miller, K.J., Dennijs, M., Shenoy, P., Miller, J.W., Rao, R.P., Ojemann, J.G.: Real-time functional brain mapping using electrocorticography. Neuroimage 37, 504–507 (2007a)
Miller, K.J., Leuthardt, E.C., Schalk, G., Rao, R.P., Anderson, N.R., Moran, D.W., Miller, J.W., Ojemann, J.G.: Spectral changes in cortical surface potentials during motor movement. J. Neurosci. 27, 2424–32 (2007b)
Millán, J., Rupp, R., Müller-Putz, G.R., Murray-Smith, R., Giugliemma, C., Tangermann, M., Vidaurre, C., Cincotti, F., Kübler, A., Leeb, R., Neuper, C., Müller, K.R., Mattia, D.: Combining brain–computer interfaces and assistive technologies: state-of-the-art and challenges. Front. Neurosci. 4 (2010)
Müller-Putz, G.R., Kaiser, V., Solis-Escalante, T., Pfurtscheller, G.: Fast set-up asynchronous brain-switch based on detection of foot motor imagery in 1-channel EEG. Med. Biol. Eng. Comput. 48, 229–233 (2010)
Palmer, J.A., Makeig, S., Kreutz-Delgado, K., Rao, B.D.: Newton Method for the ICA Mixture Model. In: Proceedings of the 33rd IEEE International Conference on Acoustics and Signal Processing (ICASSP), pp. 1805–1808 (2008)
Parini, S., Maggi, L., Turconi, A.C., Andreoni, G.: A robust and self-paced BCI system based on a four class SSVEP paradigm: algorithms and protocols for a high-transfer-rate direct brain communication. Comput. Intell. Neurosci. 2009, 864,564 (2009)
Prechelt, L.: An empirical comparison of seven programming languages. IEEE Comput. 33, 23–29 (2000)
Quitadamo, L.R., Marciani, M.G., Cardarilli, G.C., Bianchi, L.: Describing different brain computer interface systems through a unique model: a UML implementation. Neuroinformatics 6, 81–96 (2008)
Ramoser, H., Müller-Gerking, J., Pfurtscheller, G.: Optimal spatial filtering of single trial EEG during imagined hand movement. IEEE Trans. Rehabil. Eng. 8, 441–446 (2000)
Renard, Y., Lotte, F., Gibert, G., Congedo, M., Maby, E., Delannoy, V., Bertrand, O., Lécuyer, A.: OpenViBE: an open-source software platform to design, test, and use brain–computer interfaces in real and virtual environments. Presence 19, 35–53 (2010)
Royer, A.S., He, B.: Goal selection versus process control in a brain–computer interface based on sensorimotor rhythms. J. Neural Eng. 6, 016,005 (2009)
Schalk, G., Mellinger, J.: A Practical Guide to Brain-Computer Interfacing with BCI2000: General-Purpose Software for Brain-Computer Interface Research, Data Acquisition, Stimulus Presentation, and Brain Monitoring. Springer London (2010)
Schalk, G., McFarland, D.J., Hinterberger, T., Birbaumer, N., Wolpaw, J.R.: BCI2000: A General-Purpose Brain-Computer Interface (BCI) System. IEEE Trans. Biomed. Eng. 51, 1034–1043 (2004)
Schalk, G., Kubánek, J., Miller, K.J., Anderson, N.R., Leuthardt, E.C., Ojemann, J.G., Limbrick, D., Moran, D., Gerhardt, L.A., Wolpaw, J.R.: Decoding two-dimensional movement trajectories using electrocorticographic signals in humans. J. Neural Eng. 4, 264–275 (2007)
Schalk, G., Leuthardt, E.C., Brunner, P., Ojemann, J.G., Gerhardt, L.A., Wolpaw, J.R.: Real-time detection of event-related brain activity. NeuroImage 43, 245–249 (2008a)
Schalk, G., Miller, K.J., Anderson, N.R., Wilson, J.A., Smyth, M.D., Ojemann, J.G., Moran, D.W., Wolpaw, J.R., Leuthardt, E.C.: Two-dimensional movement control using electrocorticographic signals in humans. J. Neural Eng. 5, 75–84 (2008b)
Sellers, E.W., Vaughan, T.M., Wolpaw, J.R.: A brain–computer interface for long-term independent home use. Amyotroph. Lateral Scler. 11, 449–455 (2010)
Susila, I.P., Kanoh, S., Miyamoto, K., Yoshinobu, T.: xBCI: a generic platform for development of an online BCI system. IEEE Trans. Electr. Electron. Eng. 5, 467–473 (2010)
Tomioka, R., Müller, K.R.: A regularized discriminative framework for EEG analysis with application to brain–computer interface. NeuroImage 49, 415–432 (2010)
Valderrama, A.T., Oostenveld, R., Vansteensel, M.J., Huiskamp, G.M., Ramsey, N.F.: Gain of the human dura in vivo and its effect on invasive brain signals feature detection. J. Neurosci Methods 187, 270–279 (2010)
Vaughan, T.M., McFarland, D.J., Schalk, G., Sarnacki, W.A., Krusienski, D.J., Sellers, E.W., Wolpaw, J.R.: The Wadsworth BCI Research and Development Program: at home with BCI. IEEE Trans. Neural Syst. Rehabil. Eng. 14, 229–233 (2006)
Venthur, B., Scholler, S., Williamson, J., Dähne, S., Treder, M.S., Kramarek, M.T., Müller, K.R., Blankertz, B.: Pyff – a pythonic framework for feedback applications and stimulus presentation in neuroscience. Front. Neurosci. 4 (2010)
Vidal, J.J.: Toward direct brain–computer communication. Ann. Rev. Biophys. Bioeng. 2, 157–180 (1973)
Wilson, J.A., Felton, E.A., Garell, P.C., Schalk, G., Williams, J.C.: ECoG factors underlying multimodal control of a brain–computer interface. IEEE Trans. Neural Syst. Rehabil. Eng. 14, 246–250 (2006)
Wilson, J.A., Mellinger, J., Schalk, G., Williams, J.: A procedure for measuring latencies in brain-computer interfaces. IEEE Trans. Biomed. Eng. 7, 1785–1797 (2010)
Wisneski, K.J., Anderson, N., Schalk, G., Smyth, M., Moran, D., Leuthardt, E.C.: Unique cortical physiology associated with ipsilateral hand movements and neuroprosthetic implications. Stroke 39, 3351–3359 (2008)
Wolpaw, J.R., McFarland, D.J.: Multichannel EEG-based brain–computer communication. Clin. Neurophysiol. 90, 444–449 (1994)
Wolpaw, J.R., McFarland, D.J.: Control of a two-dimensional movement signal by a noninvasive brain–computer interface in humans. Proc. Natl. Acad. Sci. USA 101, 17,849–17,854 (2004)
Yamawaki, N., Wilke, C., Liu, Z., He, B.: An enhanced time-frequency-spatial approach for motor imagery classification. IEEE Trans. Neural Syst. Rehabil. Eng. 14, 250–254 (2006)
Zander, T.O., Kothe, C.: Towards passive brain–computer interfaces: applying brain–computer interface technology to human-machine systems in general. J. Neural Eng. 8, 025,005 (2011)
Acknowledgements
The views and the conclusions contained in this document are those of the authors and should not be interpreted as representing the official policies, either expressed or implied, of the corresponding funding agencies. The authors would like to acknowledge the following projects and funding sources:
BCI2000: This work was supported by grants from the US Army Research Office (W911NF-07-1-0415, W911NF-08-1-0216) and the NIH/NIBIB (EB006356 and EB000856).
OpenViBE: This work was partly supported by grants of the French National Research Agency under the OpenViBE (ANR-05-RNTL-016) and OpenViBE2 (ANR-09-CORD-017) projects.
TOBI: This work is supported by the European ICT Programme Project FP7-224631.
BCILAB: Research was sponsored by the Army Research Laboratory and was accomplished under Cooperative Agreement Number W911NF-10-2-0022. Initial development was supported by a gift from the Swartz Foundation (Oldfield, NY) and a basic research grant of the Office of Naval Research (ONR).
Pyff: This work was partly supported by grants of the Bundesministerium für Bildung und Forschung (BMBF) (FKZ 01IB001A, 01GQ0850) and by the FP7-ICT Programme of the European Community, under the PASCAL2 Network of Excellence, ICT-216886.
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2012 Springer-Verlag Berlin Heidelberg
About this chapter
Cite this chapter
Brunner, C. et al. (2012). BCI Software Platforms. In: Allison, B., Dunne, S., Leeb, R., Del R. Millán, J., Nijholt, A. (eds) Towards Practical Brain-Computer Interfaces. Biological and Medical Physics, Biomedical Engineering. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-29746-5_16
Download citation
DOI: https://doi.org/10.1007/978-3-642-29746-5_16
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-29745-8
Online ISBN: 978-3-642-29746-5
eBook Packages: Physics and AstronomyPhysics and Astronomy (R0)