C++ Programming for Brain-Computer Interface Calibration Innovations
The UM Direct Brain Interface Laboratory utilizes the classifier program included in the C++ distribution of the BCI2000 v3 to calibrate a P300 BCI to the brain activity of an individual. “BCI” refers to an electroencephalogram (EEG)-based brain-computer interface which allows participants with physical impairments to directly interact with a computer interface using their brains with minimal motor demands. In order to interact with this interface, participants use the P300 component of the event-related brain potential (ERP) (Farwell and Donchin 1988). Though the technology is promising, there are barriers to clinical implementation that the UM-DBI Laboratory aims to address. It is to aid the efficiency and effectiveness of UM-DBI studies that relevant C++ tool and usability additions are proposed. The P300 BCI Classifier calibrates via machine learning and this classifier program has been the point of focus for this project. Through the addition of various practical additions and refinements, the source code for the P300 BCI classifier may be better modified to provide more meaningful output, and allow for a more accessible and functional user interface when assessing output and input. These additions are made through careful coding and testing practice. The general methodology implemented in this research project includes assessing desired changes/additions to be made, understanding the context in which this modification should be implemented, and carefully testing input and output in order to assess adequate functionality (without any unintended consequences). This work is ongoing, and it is intended that all additions will provide added usability and functionality to UM-DBI laboratory researchers.