Source anaylsis

Robert Oostenveld r.oostenveld at FCDONDERS.RU.NL
Wed Jul 26 09:07:03 CEST 2006


On 25 Jul 2006, at 14:22, jciveira at unav.es wrote:
> I have the same problem and I do not know how to fix it, even
> though I tried your solution with cfg.channelcmb.
>
> My case is : i have a set of 82 electrodes, I make freqanalysis
> with cfg.channelcmb = channelcombination({'all'
> 'all'},data.label);  thus I get
>
> freq =
>
>         label: {82x1 cell}
>        dimord: 'chan_freq'
>          freq: [14 14.4000 14.8000 15.2000 15.6000 16 16.4000
> 16.8000 17.2000 17.6000 18]
>     powspctrm: [82x11 double]
>      labelcmb: {3321x2 cell}
>     crsspctrm: [3321x11 double]
>           cfg: [1x1 struct]
>
> When I make sourceanalysis with a dipole as a reference and I have
> no problems but when I want to use a channel as a reference I
> always have the same error:
> The cross-spectral-density matrix is not complete.
>
> Can you help me?
>
> Best regards
> Juan

Dear Juan

Do you have 82 EEG electrodes, or 81 and one EMG electrode? I would
expect the latter, since computing coherence between one particular
EEG electrode and sources in the brain with DICS will not lead to
meaningfull results. The selected EEG electrode will pick up volume-
conducted activity from all sources in the brain (as opposed to an
EMG electrode) and would be referenced to the same reference
electrode as all other electrodes. So there will be a huge amount of
trivial coherence, whose spatial distribution in the brain will
probably more reflect the volume-conduction than something
physiologically interpretable.

Although I have not used DICS with a reference channel on EEG data, I
would expect the code to work if you follow a procedure like this:

cfg = ... trial selection stuff
cfg = definetrial(cfg)
cfg = ... preprocessing stuff
cfg.channel = list of all EEG electrodes
cfg.implicitref = name of implicit reference electrode used for the
EEG channels
cfg.reref = 'all'  % rereference all EEG electrodes to an average
reference
data_eeg = preprocessing(cfg)

cfg = ... trial selection stuff
cfg = definetrial(cfg)
cfg = ... preprocessing stuff
cfg.channel = list of all EMG electrodes, assuming that they are
bipolar channels
% cfg.reref may be used if you have two unipolar channels on the
muscle of interest
cfg.rectify = 'yes'   % this makes the spiky nature of the EMG more
visible, and improves the coherence estimate
cfg.baseline = 'yes'  % remove baseline prior to rectification, not
neccessary but still preferable
data_emg = preprocessing(cfg)

% combine EEG and EMG in one dataset, both are referenced differently
data = appenddata([], data_eeg, data_emg);

cfg = ... frequency analysis stuff
cfg.ouptu = 'powandcsd'
cfg.channelcmb = {'all', 'all'}
freq = freqanalysis(cfg, data);

cfg = ... source specific settings
cfg.refchan = one of your bipolar EMG channels
cfg.channel = all your EEG channels
source = sourceanalysis(cfg, freq)

best regards,
Robert



More information about the fieldtrip mailing list