[ALLEEG, EEG, CURRENTSET, ALLCOM] = eeglab;
% 1) 导入 EEG = pop_loadbv(‘C:\EEGdata\’, ‘EEG_0006.vhdr’); EEG = eeg_checkset(EEG);
% 2) 可选:先做工频陷波,避免后续步骤受线噪影响 EEG = pop_eegfiltnew(EEG, 49, 51, [], 1); % 50 Hz notch
% 3) 检查并标记坏道(任选一种) % 手动:Tools → Reject data → Reject channels % 自动(需要 CleanRawdata 插件): % tmpEEG = clean_rawdata(EEG, 5, -1, 0.8, 4, 20); % badMask = ~tmpEEG.etc.clean_channel_mask; % EEG = pop_select(EEG, ‘nochannel’, find(badMask)); % 这里用手动更安全;确定坏道后下一步插值
% 4) 插值坏道(如有) % EEG = eeg_interp(EEG, badChannelLabels, ‘spherical’);
% 5) 重参考到平均(CAR) EEG = pop_reref(EEG, []); % [] = average reference EEG = eeg_checkset(EEG);
% 6) 带通滤波 EEG = pop_eegfiltnew(EEG, 1, []); % 高通 1 Hz EEG = pop_eegfiltnew(EEG, [], 40); % 低通 40 Hz
% 7) ICA + 自动标注清理(可选) EEG = pop_runica(EEG, ‘extended’,1,’interupt’,’on’); EEG = pop_iclabel(EEG, ‘default’); EEG = pop_icflag(EEG, [NaN NaN; 0.8 1; 0.8 1; 0.8 1; NaN NaN; NaN NaN; NaN NaN]); % 手动复核组件图:pop_selectcomps(EEG, 1:30); % 删除被标记成伪迹的 IC: rej = find(EEG.reject.gcompreject); EEG = pop_subcomp(EEG, rej, 0);
% 8) 保存 EEG = pop_saveset(EEG, ‘filename’,’EEG_0006_CAR_clean.set’, ‘filepath’,’C:\EEGdata\’);
发表回复