P300Classifier TransmitChList

Known Issues and Problems with BCI2000
Post Reply
epacheco
Posts: 7
Joined: 13 Mar 2023, 12:09

P300Classifier TransmitChList

Post by epacheco » 11 May 2023, 23:22

Hello everyone
I'm having troubles understanding how P300Classifier and BCILauncher work.
When you enter Parameter Configuration in BCI, the Channel Names can only be from 0 - 7, but TransmitChList can be from 0-7, 1-8, or any combination you prefer. So, are there channels being omitted?
On the other hand, in P300Classifier you can edit channel parameters as well, but when you write the .prm file with Channel Set 1 to 8, the Linear Matrix Classifier gives you Channels 1-7. My question again, are there channels being omitted?
How does TransmitChList actually works and the relationship with BCILauncher Parameter Settings if I want to use 8 channels.

I hope someone can help me because I'm very lost on this

mellinger
Posts: 1207
Joined: 12 Feb 2003, 11:06

Re: P300Classifier TransmitChList

Post by mellinger » 12 May 2023, 08:04

Hi,

BCI2000 channel numbering is 1-based in the GUI. TransmitChList uses a matching algorithm to determine which channels it transmits. So, if you specify 0-7, it will try 0 (no match), 1 (match), 2 (match), ... 7(match) and omit channel 8.

If you want all channels to be transmitted, just specify an asterisk * for TransmitChList.

P300Classifier may omit channels if they have no relevance for classification.

HTH

epacheco
Posts: 7
Joined: 13 Mar 2023, 12:09

Re: P300Classifier TransmitChList

Post by epacheco » 15 May 2023, 20:40

Thank you very much!
If I understood correctly, how the channels are named, from 0 to 7, doesn't matter. What really matters is to transmit all the channels or the channels I am interested in, right? Basically BCI2000 makes the change in the label of channels 0 - 7 to 1-8.

mellinger
Posts: 1207
Joined: 12 Feb 2003, 11:06

Re: P300Classifier TransmitChList

Post by mellinger » 21 May 2023, 12:13

In the P300Classifier program, channel names are ignored, and only one-based indices are used.

In the TransmitChList parameter of the source module, first channel names are matched, and then one-based indices.
So if you actually use 0-based indices in ChannelNames, and specify "0-7" as a range in TransmitChList, you will transmit the first eight channels.

I would however suggest not to use numbers as names in ChannelNames, as this will inevitably lead to confusion.
If you do not have any meaningful channel names (such as EEG 10-20 locations), just let set ChannelNames to "auto".

Post Reply

Who is online

Users browsing this forum: Google [Bot] and 0 guests