Clarification for output format - epochs

Working with OpenViBE signal processing scenarios and doing scenario/BCI design
Post Reply
blewandowski
Posts: 7
Joined: Sun Feb 07, 2021 12:27 pm

Clarification for output format - epochs

Post by blewandowski »

Hi,

I've been fiddling for some time now with the P300 demo, was able to run the classifier with an ok score. I decided to compare the LDA classifier with other ones, and since I'm more comfortable with writing code, I've decided to branch out of the designer and fiddle in a jupyter notebook.

To do so, I've taken the replay scenario of p300, and added a csv file writer box, the input links are the stimulations from the generic stream reader (which loads the file I've used to train the last classifier) and an epoched averaged signal.

I've successfully loaded the csv but I'm having trouble making sense of the data - there is an epoch column that from first glance correspond to the stimulation based epoching box.

This creates a new epoch after the OVTK_StimulationId_VisualStimulationStart is visible in the stream, it then does this for 0.6s.
The csv file contains these rows though

Code: Select all

74	23.626867	0	-61.872613	5.423805	5.336922	NaN	NaN	NaN
75	23.340117	1	122.415990	3.753208	3.470638	NaN	NaN	NaN


where we can see that the epoch has changed, but there are no stimulations tied to this time.

Here are the beginning rows that have a stimulation with them

Code: Select all

0	23.034867	0	-175.652395	2.798264	1.342050	32769:32777:33029:33036:32778:32773:32771:3328...	20.0460161110:20.0460662949:22.0655885558:22.0...	0.0000000000:0.0000000000:0.0000000000:0.00000...
25	23.234867	0	89.746432	-8.077858	-7.473044	32780	23.2392178809	0.0000000000
38	23.338867	0	122.415990	3.753208	3.470638	33286:33025:32779	23.3400682809:23.3401066861:23.3401165335	0.0000000000:0.0000000000:0.0000000000
62	23.530867	0	28.951199	2.703738	4.148936	32780	23.5359182237	0.0000000000
112	23.636117	1	-69.652697	1.132564	4.114039	33286:33032:32779	23.6380859825:23.6381306809:23.6381336607	0.0000000000:0.0000000000:0.0000000000
Can you shed some light on why the row 112 contains the stimulation that should trigger a new epoch, while the epoch is already changed in row 75?

Kind regards,
Bartlomiej

Thibaut
Posts: 264
Joined: Wed Oct 31, 2018 9:14 am

Re: Clarification for output format - epochs

Post by Thibaut »

Hi,
I'm not sure to understand all with the fragment of csv in example.
For CSV Output you have column to help you but I can add informations,
You have epochs but an epoch is not only an exact T time but for example a bloc of 1s and if you avec a 250Hz signal during one second you have 250 T time so with this example your epoch 0 is set in 250 line. You stimulation is put (normally) in the line with the nearest time of the stimulation. And in your example 33286:33032:32779 mean only you have receive 3 stimulations in near same time, the next column is the exact time of the stimulation and the next the duration of your stimulation, if you have same stimulation in different line the answer is simple, you have the stimulation send multiple times.^^
Thibaut

blewandowski
Posts: 7
Joined: Sun Feb 07, 2021 12:27 pm

Re: Clarification for output format - epochs

Post by blewandowski »

I'll try to elaborate a bit more on the issue then, to further clarify,

I have a csv file that I've exported from a modified p300 example, which saves an epoched signal along with the stimulations present from the recorded file from the training scenario of p300.

The csv contains column as follows
Time:125Hz Epoch Cz O1 O2 Event Id Event Date Event Duration

The scenario looks like this

Image

I'm trying to figure out why certain events that trigger a new epoch, appear in the middle of an epoch.
I've described a specific sequence in the previous post.

Namely, an epoch 1, should in my opinion start at time 23.6380859825, which is when the stimulation that triggers a new epoching event has happened. instead, there are multiple previous events in that epoch, that happened before that stimulation was set. Is this a bug or am I missing something?

I understand that I can't compare different T times, of rows with a different Epoch, I'm pointing out that the time of the stimulation event that triggers epoching happens after some singnal is epoched.

Thank you in advance for looking into the issue.
Cheers!

Thibaut
Posts: 264
Joined: Wed Oct 31, 2018 9:14 am

Re: Clarification for output format - epochs

Post by Thibaut »

HI,
Can you link the scenario and the CSV file.
I'm not sure to understand
Thibaut


Thibaut
Posts: 264
Joined: Wed Oct 31, 2018 9:14 am

Re: Clarification for output format - epochs

Post by Thibaut »

Hello,
I just saw your files, I think you are receiving the stimulation from your EEG file while the epoch is not yet finished (received after 0.3s while the epoch duration is 0.6). Use a listener stimulation at the exit of your file to see if the stimulations are correctly "timed".
Thibaut

Post Reply