Simulation source reconstruction problems

I am trying to perform a simulation, which is to be

I perform the following steps

  1. Define a region on the default brain using scouts
  2. Export the scouts to MATLAB
  3. create a zero-matrix the same size as the source matrix for the default brain, downsampled to 15,000 vertices.
  4. for a range of time define the voxels matching the scout vertices to be equal to one, while leaving remaining vertices equal to zero.
  5. Add white Gaussian noise to create a SNR of 3.
  6. Multiply by the Lead field matrix, exported from MATLAB for the default anatomy, the bst_gain_orient function is used
  7. Scale the source values so they are the right order of magnitude for the EEG signals.
  8. replace the EEG.F with the values from the above step from an actual source recording.
  9. Import to MATLAB
  10. Calculate the Noise covariance matrix
  11. compute sources

The problem I am having is the source localization isn’t very good. The scouted region will contain both the gyrus and walls of the sulcus into the bottom of the sulcus, but during the reconstruction all I see is activation at the very top of the gyrus and then the very bottom of the sulcus, there is no activation at all along the sulcal walls, which isn’t consistent with the results from analysing actual data. Does anyone know why I am not seeing any activation along the sulcal walls? Do I need to adjust or change some step in my procedure?

The attached image shows the scouted region which was defined and the source reconstruction.

Hello,

Your procedure looks ok. You can probably make your simulation procedure easier with the recent processes we added in the “Simulate section”:

  1. Generate the signal you want to want to use in the activated region (constant 1): Simulate > Simulate generic signals
  2. Add the process “Simulate > Simulate recordings from scout” to generate simulated recordings (you need a head model in the folder, it uses the selected/green one)
  3. You can add the noise at that time manually with the process Pre-process > Run Matlab command
  4. Then you run a regular source estimation (noise covariance, inverse model)

For the modeling part, the wMNE input is expected to show mostly superficial sources. You have to apply a form of noise normalization to reveal the deeper sources:

  • use a different inverse model that already integrates a noise-normalization (computed based on the noise covariance): dSPM or sLORETA
  • apply a Z-score operation on your sources (based on the level of noise on a defined baseline)

Note that the default analysis pipeline for source processing is using dipoles with orientations constrained to the normal of the cortex surface.
For more control over the process, you could be interested in running your analysis with unconstrained orientations (3 dipoles with 3 orthogonal orientations at each vertex, instead of one).

Please let us know how this goes.
Thanks,
Francois

I generated source signals using the method you suggested, but the time course and source it creates is only 1x501. Where that 1 was dictated by the single Scout region I had. Is there a way to have it simulate the recordings on all of the electrodes? or is there some step I am missing?

Step #1 generates a signal [1xNtime]
Step #2 generates a signal [Nsensors x Ntime], based on the channel file and the head model available for this file.

Both steps are creating a 1xN file. In the first step I define a function for the time course, the samplign frequency, and number of time points. It produces a file, which I drag into the process window, click run, simulate, simulate sources from scouts. I select the only scout present and it produces a 1xN source reconstruction file. Does the fact the sensor file is in the common files sub folder and not the same subfolder as the simulations make a difference? Am I running the wrong process?

It seems to be a notation in Brainstorm. If I export the simulated signal the data in the matlab.F is indeed NchannlexNtimepoints. it is only in Brainstorm that it says the file is 1x501. Thank you for your help.

So doing as you suggested worked great for the sources in MEG, however in EEG, although the sources did become more diffuse they still only sit at the top and bottom of the sulci/gyri and won’t connect with each other. Do you know what may be the cause of this? could it be because SNR is too low or too high? or is there some other cause for why the simulations of the EEG won’t show activation along the sulcal walls?

Nicholas

Hi Nicholas,

So have you understood how to manage those processes and the files they generate or do you still need help with that?

About the maps you get: The sensitivity of the acquisition+reconstruction method decrease rapidly with the depth, which causes the areas that are the closest to the sensors to show higher amplitudes. The orientation of the sources has an important influence over the results as well. It’s common to observe what you describe with minimum norm solutions, the online tutorials illustrate those effects: http://neuroimage.usc.edu/brainstorm/Tutorials/TutSourceEstimation

Some methods can help control this effect. Have you tried the following options:

Cheers,
Francois

Yes I now understand how to manage the processes and files generated to perform the simulations.

For our simulations we are using the BEM model created by openMEEG and z-scores with a fully constrained model, and for the MEG it works well and shows a continuous region that will cover the sulcus, gyrus and the areas between. However, when we run the same analysis with the EEG we see activity only at the top of gyro and the bottom of sulci but not the areas in between. This is the same analysis we ran experimental EEG data with and in that case we see somewhat similar areas, but the regions between the top of the gyro and bottom of the sulci show activation so there is a continuous region of activation and not disjointed bands of activation. I was wondering if you knew what may lead to the simulation failing to connect the two regions located next to each other while the analysis on the experimental data was able to do it just fine, in both cases we used a z-score of 3 as our threshold. Is it a SNR issue? does there need to be more sources present in the brain to help the activation in the walls be pulled out? We are just trying to understand why there is such a difference between the experimental and simulations when we run the analysis with the exact same settings, and if possible find a way to make the simulations match what we see in the experimental. Thank you for your time.

Nicholas

What you describe is the normal behavior of the minimum norm model, so I can’t give you any advice to fix those results because it’s not a “problem” per se.

If you want to see more “connected” regions to get nicer figures, you can try the following (understanding that it doesn’t lead necessarily to more correct results):

  • Use unconstrained source models
  • Use sLORETA normalization
  • Modify the SNR of the simulated signals and redo completely the simulation (recalculate the noise covariance + inverse model)
  • Lower your threshold for the display on the surfaces

Francois

Ok, that makes sense. What had me thrown off, was the fact we had done this exact analysis pipeline with subject data and never saw that problem, but when we ran it with the simulations we did. So can you explain why it is present in the simulations and not the experimental analysis when it is the normal behavior of a minimum norm model. Why should it not appear in subject data over simulations?

Nicholas

[QUOTE=Francois;5998]What you describe is the normal behavior of the minimum norm model, so I can’t give you any advice to fix those results because it’s not a “problem” per se.

If you want to see more “connected” regions to get nicer figures, you can try the following (understanding that it doesn’t lead necessarily to more correct results):

  • Use unconstrained source models
  • Use sLORETA normalization
  • Modify the SNR of the simulated signals and redo completely the simulation (recalculate the noise covariance + inverse model)
  • Lower your threshold for the display on the surfaces

Francois[/QUOTE]

If you modify your parameters and thresholds, use the same noise models and with similar SNR you will see the same effect.
If you get differences you don’t like with the exact same method, you should question your simulations…