I am very new to BCI2000. I downloaded the code and set it up with Borland C++ in order to look at it.
I have a question about how BCI does signal processing. I have the impression that it hands off functions like FFT or FIR filtering to Matlab that must then be running in the background. Is this right? If I am wrong, then any explanation that will help me understand how I went wrong will be very helpful.
BCI2000 and Matlab
BCI2000 online signal processing is fully independent of Matlab.
Still, BCI2000 allows you to use Matlab for online processing if that makes sense for you. See the MatlabFilter documentation page for more information:
http://www.bci2000.org/wiki/index.php/P ... tlabFilter
The standard BCI2000 OfflineAnalysis tool is written in Matlab, and thus requires Matlab or the Matlab Runtime to run.
For individual offline processing, BCI2000 comes with Matlab support for reading data files: http://www.bci2000.org/wiki/index.php/U ... _MEX_Files
HTH,
Juergen
Still, BCI2000 allows you to use Matlab for online processing if that makes sense for you. See the MatlabFilter documentation page for more information:
http://www.bci2000.org/wiki/index.php/P ... tlabFilter
The standard BCI2000 OfflineAnalysis tool is written in Matlab, and thus requires Matlab or the Matlab Runtime to run.
For individual offline processing, BCI2000 comes with Matlab support for reading data files: http://www.bci2000.org/wiki/index.php/U ... _MEX_Files
HTH,
Juergen
Thanks for prompt reply
I see the MatlabFilter and I see how that works. I also see a set of base classes and I can see how to subclass them in order to insert my own filters. So I understand that these filters would be independent of Matlab.
But I was looking for a library of C++ functions for example FFT or a generic FIR, or maybe some kind of spectral estimator. This is what I can't find. And I don't see any indication of such modules in any of the documentation. Do you have such generic functions, and if so can you tell me where to look?
But I was looking for a library of C++ functions for example FFT or a generic FIR, or maybe some kind of spectral estimator. This is what I can't find. And I don't see any indication of such modules in any of the documentation. Do you have such generic functions, and if so can you tell me where to look?
Filters
Al,
There are a number of existing filters in BCI2000 (including AR-based and FFT-based spectral estimation). Please see http://www.bci2000.org/wiki/index.php/U ... ce:Filters for a detailed description.
These filters are appropriately combined in particular modules that come with BCI2000. For example, ARSignalProcessing uses the SpatialFilter, AR-based spectral estimation, a linear classifier, and an automatic gain controller at the output.
If you post your requirements (i.e., what you are trying to do), we can help you more specifically.
Gerv
There are a number of existing filters in BCI2000 (including AR-based and FFT-based spectral estimation). Please see http://www.bci2000.org/wiki/index.php/U ... ce:Filters for a detailed description.
These filters are appropriately combined in particular modules that come with BCI2000. For example, ARSignalProcessing uses the SpatialFilter, AR-based spectral estimation, a linear classifier, and an automatic gain controller at the output.
If you post your requirements (i.e., what you are trying to do), we can help you more specifically.
Gerv
Filters
Gerv,
Right now, I am just trying to understand how BCI2000 works. I uploaded the project and at first couldn't find the source of the filters. I saw the Matlab interface but couldn't find the filters you had written yourselves. Really just a newbie mistake about which I feel a bit embarrassed.
But with your explanation that they are there, I went back again and found them under signalprocessing (they were hiding right out in the open!)
Perhaps your documentation could include some pointers to where things are for someone like me who is trying to dig into the internals. But the mistake in not seeing them is entirely mine.
Thanks very much for your help and I'm sorry for the trouble.
Al
Right now, I am just trying to understand how BCI2000 works. I uploaded the project and at first couldn't find the source of the filters. I saw the Matlab interface but couldn't find the filters you had written yourselves. Really just a newbie mistake about which I feel a bit embarrassed.
But with your explanation that they are there, I went back again and found them under signalprocessing (they were hiding right out in the open!)
Perhaps your documentation could include some pointers to where things are for someone like me who is trying to dig into the internals. But the mistake in not seeing them is entirely mine.
Thanks very much for your help and I'm sorry for the trouble.
Al
Intro to BCI2000
Al,
The BCI2000 Tour and the tutorials on the documentation web site may be helpful as well. Let us know if they do not cover all information, and we will add it.
Gerv
The BCI2000 Tour and the tutorials on the documentation web site may be helpful as well. Let us know if they do not cover all information, and we will add it.
Gerv
Who is online
Users browsing this forum: No registered users and 3 guests