Online/Offline logic...

About the GUI application to design signal processing pipelines
Post Reply
rflamary
Posts: 5
Joined: Mon Jun 29, 2009 8:42 am

Online/Offline logic...

Post by rflamary »

Hello,

I try to use the Designer to play the Inserm P300 scenarios. But I do not totally understand How is made the difference between online and offline calculus. For instance the classifier trainer is an offline algorithm working on a complete feature vector (seems to be the red triangle) so it does not need to be online like the other boxes... How is it done? In my mind the green and purple triangle corresponds to online data and the red one to a huge vector not changing in time. but then how do I launch the training process?

Other question: If I want to treat all the data in a simili-online way but with a speed more high than the "real" time for instance speed up the visualisation of the P300 speller, how can it be done?

Anyway, I think a tutorial concerning this may be usefull

Rémi

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

Re: Online/Offline logic...

Post by yrenard »

Hello,

I am currently at the BBCI workshop. There are several explanations I have to provide for this post so please, stay tuned, I'll give detailed answer as soon as I have enough time to write it clearly :)

Yann

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

Re: Online/Offline logic...

Post by yrenard »

Hello Remi and sorry for late reply !!
rflamary wrote: I try to use the Designer to play the Inserm P300 scenarios. But I do not totally understand How is made the difference between online and offline calculus. For instance the classifier trainer is an offline algorithm working on a complete feature vector (seems to be the red triangle) so it does not need to be online like the other boxes... How is it done? In my mind the green and purple triangle corresponds to online data and the red one to a huge vector not changing in time. but then how do I launch the training process?
OpenViBE is completely designed to be used online. The red connector as you name it is a feature vector stream. It changes over time and contains the actual feature vector at a specific instant. The classifier trainer buffers all the feature vectors coming on its first input and packs all those feature vectors internally in a feature vector set. The training process is triggered with a specific training stimulation chosed in the settings of the classifier trainer box and coming from its second purple input (stimulations).

As you can see, the way we do offline processing in OpenViBE is very linked to the way we process the signals online :
- we replay and process a complete file
- the offline algorithm buffers the data it needs
- at the end of the file or at a given stimulation late in the file, we trigger an action so the offline training algorithm can start
- the last step is usually time consuming and freezes OpenViBE, because all the computations are done in a single process call
rflamary wrote: Other question: If I want to treat all the data in a simili-online way but with a speed more high than the "real" time for instance speed up the visualisation of the P300 speller, how can it be done?
There is a fast forward button just near the play button. If you press this button, the scenario will be played as fast as possible. If CPU usage is already close to 100%, it won't be faster :) For the P300 speller scenario, you should have a significant speedup !
rflamary wrote: Anyway, I think a tutorial concerning this may be usefull
Yep, we already talked about this a lot.
I keep it up on my TODO list :)

I hope my explanations helps

Yann

Post Reply