How can I do time-frequency analysis on continuous data?

I am trying to acquire a spectrogram for a long steady-state study. Naturally methods such as Morlet wavelet convolution are not applicable to lengthy and continuous data.
How can I have a Time-frequency plot for my lengthy steady-state Data (Hours long) using brainstorm?

Maybe something like the following?

  • Link the full continuous recordings to the database (menu Review raw file)
  • Epoch your data in regular blocks (a few seconds or a few minutes, depending on the time resolution you need), using the option "Split in time blocks" in the option window of the menu "Import to database"
  • Select all the epochs in the Process1 box
  • Select the process "Power spectrum density" or "FFT" to get a spectrogram for each block of data (you need to select the option "Save individual PSD values (for each trial)")
  • Add the process "Standardize > Concatenate time" immediately after, run the pipeline
  • In the new time-frequency file, the timing would not correspond to the original file: each time sample would correspond to the PSD of one block. You can edit the time vector manually in the file at the end if needed for display purposes.

I modified the concatenation process in order to create "timefreq" instead of "spectrum" file:
Update Brainstorm before you try this.

1 Like

Dear Francois,
Exactly! I will try that right away.
Thank you for your help and support,

Dear Francois , I have updated BrainStorm but I am still getting a spectrum file (FFT) instead of timefreq file after concatenation. Do I have to add the modified process manually ?

You need to recompute the concatenated files.

Please make sure that you have the following lines in the file process_concat.m:

If you don't: update Brainstorm again, something went wrong
Unless you are using the compiled version of Brainstorm?...

If you do: Please post a screen capture showing your file, including the blue tooltip that appears when you leave your mouse for a few seconds over the file (I'd need to know both the file name and the file path for the "spectrum" file).

Dear Francois, The new update works great for when I am using Matlab. But the compiled version is still the same. I would appreciate it if you could take a look at the attached image.


I haven't recompiled Brainstorm yet, and will not do it immediately since I'm working on other developments at the moment.
Please work with Matlab in the meantime.

Dear Francois, Certainly.
Thank you very much for your help

I've actually already recompiled Brainstorm.
You may now download a new version from the website.

Why do you use this compiled version if you have a Matlab license?

Dear Francois, thats good to hear !
Regarding your question, I do have the license on my personal computer, however sometimes I prefer to do work on a virtual machine using remote desktop because of its memory and processing power which is much higher than my PC. Since I dont have Matlab installed on that system I am using the compiled version there.
Best Regards,