How to test "3x3 Matrix" with P300-speller-xDAWN and Emotiv

Working with OpenViBE signal processing scenarios and doing scenario/BCI design
Post Reply
davidchung
Posts: 16
Joined: Thu Nov 18, 2010 4:37 pm

How to test "3x3 Matrix" with P300-speller-xDAWN and Emotiv

Post by davidchung »

Hi,

I would like to experiment my personal scenario using "P300-speller-xDAWN".

The plan is to modify the original "p300-speller-xDAWN" such that the size of the matrix is "3 x 3 with my personal symbols", instead of alphnumeric characters. I need some help on how to implement this scenario.

I have already tested the Magic Card scenario, and it works fine. However, I would like to use the latest "p300-speller xDAWN" algorithm and the "row-column flashing" method (not the cell-by-cell flashing in Magic Card scenario) in my scenario.


So, I have modified the following files in p300-speller-xDAWN.

[STEP 1]

In "p300-speller-stimulator.cfg" I have changed as follows:
(i.e. # of rows 6->3, # of cols 6->3, and # of repetitions 12 -> 6).
This change makes intensification to happen only in either the first 3 rows or the first 3 columns.

A copy of modified "p300-speller-stimulator.cfg" is below.
<OpenViBE-SettingsOverride>
<SettingValue>OVTK_StimulationId_Label_00</SettingValue>
<SettingValue>OVTK_StimulationId_Label_01</SettingValue>
<SettingValue>OVTK_StimulationId_Label_07</SettingValue>
<SettingValue>3</SettingValue>
<SettingValue>3</SettingValue>
<SettingValue>6</SettingValue>
<SettingValue>10</SettingValue>
<SettingValue>0.100000</SettingValue>
<SettingValue>0.050000</SettingValue>
<SettingValue>0.000000</SettingValue>
<SettingValue>4.000000</SettingValue>
<SettingValue>false</SettingValue>
</OpenViBE-SettingsOverride>

However, I am not sure how to change the graphics, that is, the "6 x 6 matrix with alphanumberic characters" to "3 x 3 matrix with my personal symbols".


[STEP 2]
In "p300-speller-visualisation.cfg", I am not sure exactly what I need to change here.


[STEP 3]
What do I need to change in "p300-speller.ui"?
Do I need GTK to change parameters and graphics?


Again much thanks for your wonderful support,

Sincerely,
David

bpayan
Posts: 46
Joined: Fri Jan 08, 2010 4:02 pm

Re: How to test "3x3 Matrix" with P300-speller-xDAWN and Emo

Post by bpayan »

Dear Davidchung

For your modifications on the file p300-speller-stimulation.cfg, I don't see any problems on it, but for the training phase, I think it's better to keep 12 repetitions to have a better classification.

You are right for the file p300-speller-visualisation.cfg, you needn't to do modification on it, except if you want to change the application colors, the labels size or the path of your file ".ui".

The real modifications for graphic part is in the file p300-speller.ui. It's more simple to use the software “glade” to do modifications.
First you need to delete a few "eventbox" objects. It's simple to know what "eventbox" you need to delete, example the "eventbox" naming "eventbox-1.3" is the event box corresponding to the letter, line 1 column 3. After that you can change the column and line values in the "p300-speller-table".
Each "eventbox" contains a "label" object, if you want to change the letter of it, you can add another letter in the property “Label”. Or if you want to change the letter by a picture, you need to delete the corresponding "label" object and add an "GtkImage" object, next you need to add the path of your picture in the “pixbuf “ property.

I hope this helps

best regards

bpayan

yrenard
Site Admin
Posts: 645
Joined: Fri Sep 01, 2006 3:39 pm
Contact:

Re: How to test "3x3 Matrix" with P300-speller-xDAWN and Emo

Post by yrenard »

Just an addition to mention that latest version of glade can be downloaded from http://glade.gnome.org/

Yann

davidchung
Posts: 16
Joined: Thu Nov 18, 2010 4:37 pm

Re: How to test "3x3 Matrix" with P300-speller-xDAWN and Emo

Post by davidchung »

bpayan wrote: The real modifications for graphic part is in the file p300-speller.ui. It's more simple to use the software “glade” to do modifications.
First you need to delete a few "eventbox" objects. It's simple to know what "eventbox" you need to delete, example the "eventbox" naming "eventbox-1.3" is the event box corresponding to the letter, line 1 column 3. After that you can change the column and line values in the "p300-speller-table".
Each "eventbox" contains a "label" object, if you want to change the letter of it, you can add another letter in the property “Label”.
Following your guide, I was able to create my 3x3 matrix with different letters using Glade, and the acquisition scenario seems to work with my 3x3 matrix scenario (i.e. the rows and columns flash randomly). Although I haven't test the all steps yet, but I think it should work. I'll do that soon.

Thanks a lot!
bpayan wrote: Or if you want to change the letter by a picture, you need to delete the corresponding "label" object and add an "GtkImage" object, next you need to add the path of your picture in the “pixbuf “ property.
I was able to create GtkImage objects in the 3x3 matrix with the path information in the pixbuf property. However, when I run the acquisition scenario, I see the 3x3 matrix with my images on the screen, but the rows and columns of the matrix do not flash.

What further changes do I need to make here?

Thank you,
David

bpayan
Posts: 46
Joined: Fri Jan 08, 2010 4:02 pm

Re: How to test "3x3 Matrix" with P300-speller-xDAWN and Emo

Post by bpayan »

Dear DavidChung,

I was able to create GtkImage objects in the 3x3 matrix with the path information in the pixbuf property. However, when I run the acquisition scenario, I see the 3x3 matrix with my images on the screen, but the rows and columns of the matrix do not flash.

What further changes do I need to make here?

I'm sorry, I made a mistake when I proposed this solution, because I hadn't think to this problem. This solution is more difficult that I explained.
The letter's flash is represented by a changement of the background and foreground colors, but with a picture, the background is hided by it and the foreground color can't be changed, that's why you didn't see the flash. The problem is, you can't use the same solution as the "magic card" because the "speller" can't replace a GtkImage by an other.
You can try to fix the size of “even box” to have a picture smaller than the "even box" and change the color of the flash, to see it better.
With this solution, you will see your picture with a border corresponding to your flash, when the line or column will be flash. But I think the flash stay discrete, that's why I'm not sure this solution give a good result.

If you can, the best is to keep the letter's system otherwise if this solution have a bad result, you'll need to make a new box inspired by the "speller" and the "magic card".

I hope this help and I'm interested by your feedback.

bpayan

davidchung
Posts: 16
Joined: Thu Nov 18, 2010 4:37 pm

Re: How to test "3x3 Matrix" with P300-speller-xDAWN and Emo

Post by davidchung »

Hi

I am testing P300-speller-xDAWN using 3x3 matrix containing letters only (e.g. A ~ I).
After all the training, the OpenViBE does NOT display any detected "results" in the final Online phase. I see the targets flash, but it is does not show the results.

Thanks,
David


FYI,

1. p300-speller-stimulator.cfg

<OpenViBE-SettingsOverride>
<SettingValue>OVTK_StimulationId_Label_00</SettingValue>
<SettingValue>OVTK_StimulationId_Label_01</SettingValue>
<SettingValue>OVTK_StimulationId_Label_07</SettingValue>
<SettingValue>3</SettingValue>
<SettingValue>3</SettingValue>
<SettingValue>12</SettingValue>
<SettingValue>10</SettingValue>
<SettingValue>0.100000</SettingValue>
<SettingValue>0.050000</SettingValue>
<SettingValue>0.000000</SettingValue>
<SettingValue>4.000000</SettingValue>
<SettingValue>false</SettingValue>
</OpenViBE-SettingsOverride>

3. p300-stimulations-targets.xml
Please refer to the attachment.
Attachments
p300-stimulations-targets.xml
(3.44 KiB) Downloaded 504 times

yrenard
Site Admin
Posts: 645
Joined: Fri Sep 01, 2006 3:39 pm
Contact:

Re: How to test "3x3 Matrix" with P300-speller-xDAWN and Emo

Post by yrenard »

Dear davidchung,

Did you adapt the processing pipeline so it handles 3 choices instead of 6 for both rows & columns ?

Btw, Baptiste is currently on holidays, he will be back and able to help you next week.

Yann

bpayan
Posts: 46
Joined: Fri Jan 08, 2010 4:02 pm

Re: How to test "3x3 Matrix" with P300-speller-xDAWN and Emo

Post by bpayan »

Dear davidchung,

I tested the P300-speller-xDAWN with a 3x3 matrix, and I hadn't problems. I saw targets and results flashes.

Your files, p300-stimulation-targets.xml and p300-speller-stimulator.cfg, are good so, if you haven't got problems about classifier processor and spatial filter, I think the problem comes to "voting classifier" boxes.

You have 2 "voting classifier" boxes, one to choose the good column and one to choose the good line.
Each voting classifier needs to have the same input number as the number of column/line of the matrix.
In your case, each voting classifier needs to keep only the three first inputs.
If this explication doesn't correct your problem can you send me your scenario, I will look it to find the problem.

Best regards,

bpayan

ceclombart
Posts: 2
Joined: Sat Mar 15, 2014 7:24 pm

Re: How to test "3x3 Matrix" with P300-speller-xDAWN and Emo

Post by ceclombart »

Hello Davidchung,

I'm trying to do the same than you but I can't! I have a 3x3 matrix with the letter and I try to change with picture but he doesn't work.
For now, I only have picture but it doesn't flash!
Could you please give me more details about what you have done?

Thank you!
Cécile

tshanno
Posts: 2
Joined: Wed Jun 29, 2016 4:42 pm

Re: How to test "3x3 Matrix" with P300-speller-xDAWN and Emo

Post by tshanno »

Hi,

I followed your instructions and have the matrix as a 3x3 now, but when the scenario is running, the target that pops up in blue doesn't always show up. What is going wrong here/how can I fix this?



yrenard wrote:Dear davidchung,

Did you adapt the processing pipeline so it handles 3 choices instead of 6 for both rows & columns ?

Btw, Baptiste is currently on holidays, he will be back and able to help you next week.

Yann
Also, could you give a more detailed description of how we are supposed to modify the "processing pipeline"?

Thanks for your help!
Tara

Post Reply