Resources for learning about Brain-Computer Interface design, development and research.
If you encounter an interesting or qualitative resource, or something of which you think it might be valuable to the team or future teams, do not hesitate to add it!
- [book,*] Brain-Computer Interfaces - Principles and Practice, Wolpaw & Wolpaw, 2012
- [book] NeuroTechX Neurotechnology Primer
- [paper] Nicolas-Alonso, Luis Fernando, and Jaime Gomez-Gil. "Brain computer interfaces, a review." sensors 12.2 (2012): 1211-1279.
- [paper] Wolpaw, Jonathan R., et al. "Brain–computer interfaces for communication and control." Clinical neurophysiology 113.6 (2002): 767-791.
- [paper] Wolpaw, Jonathan R., Jose Del R. Millan, and Nick F. Ramsey. "Brain-computer interfaces: Definitions and principles." Handbook of clinical neurology 168 (2020): 15-23.
- [links] NeuroTechX edu
- [links] NeuroTechX BCI resource github
- [links] NeuroTechX webinars
- [paper] Abiri, Reza, et al. "A comprehensive review of EEG-based brain–computer interface paradigms." Journal of neural engineering 16.1 (2019): 011001.
- [toolkit] psychopy, a python library for precise experimental visual and auditory stimulation
- [tooklkit] psychtoolbox, a MATLAB library for precise experimental visual and auditory stimulation
-
[book] Cohen, M. X. Analyzing neural time series data: theory and practice. MIT press, 2014. (through KU Leuven LIMO for access)
-
[video,*] Analyzing Neural Time Series by Mike X Cohen
https://www.youtube.com/playlist?list=PLn0OLiymPak0t1moK3sn4Sl1seXlEOPHT
https://www.youtube.com/playlist?list=PLn0OLiymPak2jxGCbWrcgmXUtt9Lbjj_A
https://www.youtube.com/playlist?list=PLn0OLiymPak2BYu--bR0ADNBJsC4kuRWs
https://www.youtube.com/playlist?list=PLn0OLiymPak1wp4wMQ7tbYrtyFUatMVJs
https://www.youtube.com/playlist?list=PLn0OLiymPak1Ch2ce47MqwpIw0x3m6iZ7
-
[toolkit,*] MNE: a python library for EEG/MEG signal processing
-
[tutorial,*] MNE's signal processing and analysis tutorials
-
[toolkit] EEGLAB: a MATLAB toolbox for EEG signal processing
-
[toolkit] Fieldtrip: a MATLAB toolbox for EEG/MEG/iEEG signal processing
-
[toolkit] MNE-BIDS-pipeline a framework to implement preprocessing pipelines with MNE for BIDS format data
- [paper,*] Lotte, Fabien, et al. "A review of classification algorithms for EEG-based brain–computer interfaces: a 10 year update." Journal of neural engineering 15.3 (2018): 031005.
- [paper] Barachant, Alexandre, et al. "Multiclass brain–computer interface classification by Riemannian geometry." IEEE Transactions on Biomedical Engineering 59.4 (2011): 920-928.
- [toolkit] MNE decoding module. Nex to signal processing capabilities, MNE also contains implementations of some frequently used decoding algorithms.
- [toolkit] pyRiemann contains python implementations of Riemannian Geometry-based BCI decoders ant utilities.
- [toolkit,*] MOABB. Next to an interface for publicly available BCI benchmark datasets, it also contains implementations of preprocessing pipelines and decoders.
- [toolkit,*] Lab Streaming Layer (lsl), a middleware ecosystem to stream, receive, synchronize, and record neural, physiological, and behavioral data streams acquired from diverse sensor hardware
- [toolkit] pyLSL, a python library to interface with lsl
- [toolkit,*] OpenVibe, a software platform with graphical user interface dedicated to designing, testing and using brain-computer interfaces
- [tutorial] OpenVibe tutorials some plug-and-play examples of working, on-line BCIs to get started
- [toolkit] timeflux, a framework for the acquisition and real-time processing of biosignals (text-based interface)
- [toolkit,*] MOABB, the largest BCI benchmark database with python interface
- [tutorial] Tutorial on MOABB usage
- [toolkit] Brain Imaging Data Structure (BIDS), a data format specification for a brain data storage.
- [toolkit] MNE-BIDS, a python library to manipulate data in BIDS format with an interface to MNE
- [platform] openneuro, a free and open platform for validating and sharing BIDS-compliant MRI, PET, MEG, EEG, and iEEG data
- [toolkit] openneuro-py, a python library to download and manipulate openneuro datasets
- [links] The BCI competition datasets
- [links] The BNCI horizon 2020 datasets
- [links] https://github.com/meagmohit/EEG-Datasets
- [links] https://openbci.com/community/publicly-available-eeg-datasets/
- [links] https://github.com/hisunjiang/Public-datasets-of-BCI
- TODO: Some good python tutorials
- TODO: Some good jupyter tutorials
- TODO: Some good git tutorials
- [toolkit] brainflow, a library with support for multiple programming languages to obtain, parse and analyze EEG, EMG, ECG and other kinds of data from biosensors
- TODO: links to documentation for headset use, placement, maintenance and SDKs/interfacing
- [video,*] StatQuest machine learning concepts and techniques videos
- [video] 3blue1brown neural network videos
- [video] 3blue1brown linear algebra videos
- [toolkit] Scikit-learn, a python library implementing machine learning models and evaluation pipelines