Configuration parameters for source module

This forum deals with BCI2000 configuration issues.
Locked
frapa
Posts: 4
Joined: 14 Jul 2006, 17:37

Configuration parameters for source module

Post by frapa » 04 Oct 2006, 16:27

Hi, where can I find additional informations about parameters involved in source module ? I'm developing a new source module for P300 Speller Application, wich catches offline EEG data (in microvolts) from an export ascii file. Thanks a lot.
Francesco

gschalk
Posts: 615
Joined: 28 Jan 2003, 12:37

New Source Module ...

Post by gschalk » 06 Oct 2006, 11:02

Francesco,

I am not sure what you mean by all parameters involved in the source module. There is a section in the BCI2000 Software Design Document that discusses development of new source modules.

If you have more specific questions, please post them here.


The Gerv

frapa
Posts: 4
Joined: 14 Jul 2006, 17:37

My offline scenario ...

Post by frapa » 06 Oct 2006, 17:49

Dear Gerwin, thanks for your response !
I read the BCI2000 documentation but I’m still in doubt
I’m on my first experience with BCI2000 - P300 Speller application. I created a new source module to acquire EEG data from an ASCII file, which contains values in microvolt for 4 channel (sampling rate : 256 ). Here is an example of this file

"GALNT ASCII CONVERTED FILE"
"Patient Data: " "BCI BCI" "01/09/2006"
"Trace date: " "04/10/2006"
"Start second: " 0
"Seconds: " 860
"Sampling rate : " 256
"Values are expressed in [µV]"

"TR 00", "TR 01", "TR 02", "TR 03"
"C3-Cz", "Cz-C4", "MK-MK", "MK-MK"

5.3 26.4 -0.0 -0.0
3.6 25.9 -0.0 -0.0
5.4 25.6 -0.0 -0.0
………………………….

My scenario is:
1) Start BCI2000-P3Speller and register EEG data during stimulus ;
2) Export this registration in ASCII file;
3) Restart BCI2000 reading source signal from file (stimuli are the same of step 1), trying to simulate online activity.

At the moment, the results are not satisfying, this is why I’m looking for further information.
I set up the system as follow (not all parameters are listed ..):

Filtering matrix MUD= 2 3 1 76.8 1 2 76.8 1 64 0 100
Filtering matrix MLR= 2 5 0 0 0 0 0 0 0 0 0 0 64 0 100
Filtering int ClassMode= 1
Visualize int VisualizeClassFiltering= 1
Visualize int VisualizeP3TemporalFiltering= 0
P3SignalProcessing int NumSamplesInERP= 153.6
P3SignalProcessing int NumERPsToAverage= 15
P3SignalProcessing int TargetERPChannel= 1

Filtering int SpatialFilteredChannels= 2 2 1 64 // Number of Spatially Filtered Channels
Filtering matrix SpatialFilterKernal= 2 2 1 0 0 1 64 -100 100 // Spatial Filter Kernal Weights
Filtering floatlist SourceChOffset= 0 0
Filtering floatlist SourceChGain= 1 1

Filtering floatlist SourceChTimeOffset= -1
Filtering int AlignChannels= 0
Visualize int VisualizeCalibration= 1
Filtering int NumControlSignals= 2
Source int TransmitCh= 4
Source intlist TransmitChList= 1 2
Source int SoftwareCh= 4
Source int SampleBlockSize= 32
Source int SamplingRate= 256
Source int SignalType= float32
P3Speller int OnTime= 4
P3Speller int OffTime= 1
P3Speller int NumberOfSequences= 15
P3Speller int PostSetInterval= 60
P3Speller int PreSetInterval= 60

Do you think this parameters are correct ?

Thank you for your interest.
Francesco

gschalk
Posts: 615
Joined: 28 Jan 2003, 12:37

P3Speller ...

Post by gschalk » 06 Oct 2006, 18:26

Francesco,

When I looked at the parameter file, there were two obvious problems:

P3SignalProcessing int NumSamplesInERP= 153.6

NumSamplesInERP defines the length of the epoch after the stimulus. The fact that you use a float tells me that this is incorrect.

Source int TransmitCh= 4
Source intlist TransmitChList= 1 2

If you set TransmitCh to 4, you also need four numbers in the TransmitChList.

Finally, when you say that the results are not satisfactory, I guess you mean that you do not get good online classification results. I suggest you read the appropriate chapters in the BCI2000 Workshop Tutorial that describe how to configure the system for P300 detection.

Gerv

frapa
Posts: 4
Joined: 14 Jul 2006, 17:37

Post by frapa » 07 Oct 2006, 10:58

Gerv,
I calculate NumSamplesinERP = 0,600*256=153.6 (600 msec - 256 sampling rate) as I read in your P300 Tutorial (NumSamplesInERP
144 (...144 samples corresponds to 600ms at a 240Hz sampling rate.)
)
. Do you think I should use 153 or 154 (I think it's the same ...) ?

In my experiment I set up TransmithCh to 2, I typed wrong in my previous message.
Finally, I don't know if MUD and MLR are set up correctly.
In MUD I have to write 1 or more row for each channel ?
(es.
1 75 1
1 76 1
1 77 1
1 78 1
......)
What are the best values for MLR ? I can't find an example for P300 ...
Thank you again !!
Francesco

gschalk
Posts: 615
Joined: 28 Jan 2003, 12:37

P3 questions ...

Post by gschalk » 08 Oct 2006, 18:32

Francesco,

For NumSamplesinERP, you may use 153, or 154. In fact, it does not really matter too much how long your ERP epoch is, as long as you cover all samples that you 'address' using the MUD matrix.

The MLR matrix is not used for the P300.

What exactly you put in the MUD matrix is not so easy to answer. In the simplest case, you do offline analyses on the data (e.g., using Mario or P300GUI), determine which channel/sample has the highest discrimination between targets and non-targets (i.e., the highest r^2 value). Then, simply set TransmitChList to include that channel, and set the MUD matrix to one row with

x y 1

Where x is the channel number in the list of transmitted channels, and y is the sample number.

Using more complex methods, you may increase the classification rates and you could use more than one row. However, even with this simple example, you should be getting results that are significantly above chance.

Gerv

frapa
Posts: 4
Joined: 14 Jul 2006, 17:37

Mario or P300GUI ...

Post by frapa » 09 Oct 2006, 06:16

Dear Gerwin, I have another little question for you. In your tutorial, other parameters are indicated : UD_A and UD_B. In wich module are they defined ? are they still used in P300 ?
Finally where can I found Mario or P300GUI (for offline analyses ...) ?

Thanks again for your precious help.
Francesco

gschalk
Posts: 615
Joined: 28 Jan 2003, 12:37

P3Speller ...

Post by gschalk » 09 Oct 2006, 16:03

Francesco,

These parameters are still defined, but they are now called YMean/YGain and are in Statistics.

P300GUI and Mario in the tools directory. There is a new version of Mario that is not in the repository yet. Please email Emanuele emanuele80@libero.it about it. Thanks.

The Gerv

Locked

Who is online

Users browsing this forum: No registered users and 2 guests