[FieldTrip] channelrepair issue

Rojas, Don Don.Rojas at ucdenver.edu
Thu Jul 7 23:30:06 CEST 2011


All I can do is confirm that this issue exists for our 4D data as well, although we don't use the ft_channelrepair function. The same 4 quite distant channels (one had been deleted in the dataset I had handy) were chosen for repair when I ran this on one of our datasets (also a 248 channel 4D system). I agree the choice doesn't make any sense given the 3 cm distance you define. A quick look at the critical calculation in ft_channelrepair, line 109 distance = ... is correct given the inputs. So I wonder if the issue is with the actual channel indices used rather than the calculation, but I don't have time to track that down. All I can say is that for the distance you specify, channels A235, A216, A199, A215 would be much closer to A234 than those that are selected via the channel repair function. Channel A8 is in fact nearly 21 cm away from channel A234 in the array, based on examination of the data read in from Eugene Kronberg's pdf4D matlab object code, which I think was originally the basis for the FieldTrip 4D reader function.


Don Rojas

On Jul 7, 2011, at 1:26 PM, Jim Li wrote:

Dear Fieldtrip developer,

Can anybody help me with this channel-repair issue I've been having? I can provide the raw data if you need. I really want to solve the problem, you know.

Thanks a lot,


On Thu, Jul 7, 2011 at 2:22 PM, Jim Li <megjim1 at gmail.com<mailto:megjim1 at gmail.com>> wrote:
Hi Odelia,

Yes, I downloaded the latest version of Fieldtrip and tried your suggestion "cfg.neighbourdist = 0.03",   but it still weirdly uses the far-away channels like A121 to do the channel-repair for A234 (these two channels are 24.1172cm apart!).  Here is the detail:

cfg                         = [];
cfg.dataset                 = 'e,rfhp0.1Hz';
cfg.trialdef.eventtype      = 'TRIGGER';
cfg.trialdef.eventvalue     = 320;
cfg.trialdef.prestim        = 1;
cfg.trialdef.poststim       = 1;
cfg                         = ft_definetrial(cfg);
cfg.blc                     = 'yes';                              % do baseline correction with the complete trial

cfg.blcwindow               = [-1 0];
cfg.channel                 = {'MEG'};
raw_DATA                    = ft_preprocessing(cfg);

cfg = [];
cfg.badchannel = {'A234'};
cfg.neighbourdist =  0.03;

[raw_DATA] = ft_channelrepair(cfg, raw_DATA)


And here is the outcome: -----------------------------

the input is raw data with 248 channels and 201 trials
repairing channel A234
  using neighbour A121
  using neighbour A143
  using neighbour A173
  using neighbour A8

repairing bad channels for trial 1
repairing bad channels for trial 2
repairing bad channels for trial 3
repairing bad channels for trial 4
repairing bad channels for trial 5
repairing bad channels for trial 6
repairing bad channels for trial 7
repairing bad channels for trial 8
repairing bad channels for trial 9
repairing bad channels for trial 10


Thank you.

fieldtrip mailing list
fieldtrip at donders.ru.nl<mailto:fieldtrip at donders.ru.nl>

Don Rojas, Ph.D.
Associate Professor of Psychiatry
U. of Colorado Denver Anschutz Medical Campus
Director, UCD Magnetoencephalography Lab
13001 E. 17th Pl F546
Aurora, CO 80045

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.science.ru.nl/pipermail/fieldtrip/attachments/20110707/9c073141/attachment-0002.html>

More information about the fieldtrip mailing list