Dear @Francois
Hope you are doing well. I am currently testing source estimation with the beamformer method, I got some questions that I did not find on the forum and the tutorial. Maybe you could give me some recommendations/suggestions on my case.
My analysis pipeline:
EEG preprocessing โ source analysis โ scouts extraction (based on several brain regions) โ connectivity analysis
As written in your tutorial, the extracted time series has three orientations (x,y,z), but the connectivity analysis methods usually work between two time series rather than between two time series and a triplet of components. Thus, we need to project along the strongest dipole direction according to the tutorial from Fieldtrip.
In their example code, they use SVD(singular value decomposition) to find the parameter and then multiply the original time series.
beamformer = source.avg.filter{1};
%% construct a single virtual channel in the maximum power orientation
timeseries = cat(2, sourcedata.trial{:});
[u, s, v] = svd(timeseries, 'econ');
%% this is equal to the first column of matrix V, apart from the scaling with s(1,1)
timeseriesmaxproj = u(:,1)' * timeseries;
virtualchanneldata = [];
virtualchanneldata.label = {'cortex'};
virtualchanneldata.time = data.time;
for i=1:length(data.trial)
virtualchanneldata.trial{i} = u(:,1)' * beamformer * data.trial{i}(chansel,:);
end
In brainstorm, there is a option to save the filter from beamfomer interface(as shown below). As I did not know how the beamfomer was implemented in brainstorm, my question is: if I extracted the time series from brainstorm by scouts, do I need to multiply the filter with the extracted time series?