ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

FieldTrip 脑电分析实战指南:三步跑通 EEG/MEG 预处理、时频与统计全流程

FieldTrip 脑电分析实战指南:三步跑通 EEG/MEG 预处理、时频与统计全流程 FieldTrip 脑电分析实战指南三步跑通 EEG/MEG 预处理、时频与统计全流程【免费下载链接】fieldtripThe MATLAB toolbox for MEG, EEG and iEEG analysis项目地址: https://gitcode.com/gh_mirrors/fi/fieldtripFieldTrip 是运行在 MATLAB 上的开源 MEG/EEG/iEEG 分析工具箱面向刚入门的神经科学研究者一次配置即可按自己的脚本完成数据导入、预处理、时频分析到非参数统计的完整链条每一步都能保存、复现。适用场景它解决了哪些具体问题你大概率会碰到下面这三件事FieldTrip 对它们都有直接回应。采集系统五花八门文件格式对不上。实验室里可能同时有 CTF、Neuromag/Elekta、BTi/4D、Yokogawa 这类 MEG 系统加上各家 EEG 设备的文件。fileio目录下的读取函数把这些常见格式统一转换成 FieldTrip 内部数据结构后续流程不再关心原始文件长什么样遇到冷门格式时ft_filetype可以先查它认不认得。同一套预处理要在几十个被试身上保持完全一致。FieldTrip 把每个步骤的参数都放进一个cfg结构体写进脚本后对每个被试循环调用参数逐字一致论文方法部分可以原样引用cfg里的取值。商业软件是黑箱改不动算法。FieldTrip 全部源码开放GPLv3specest、statfun等目录里的实现可以直接读想加一个新方法照着statfun里ft_statfun_xxx的命名约定写一个函数就能被统计模块调用。三步跑通最小流程装好 MATLAB 后按下面三步就能出第一张时频图。第一步准备环境并验证安装% 仓库就位后加入路径, ft_defaults 负责补齐各子目录 addpath(fieldtrip) ft_defaults ft_checksetup % 打印安装检查信息注意不要用addpath(genpath(...))工具箱里有兼容性目录和外部子工具箱一并加入会引发函数冲突ft_defaults会替你挑对目录。建议把addpath和ft_defaults两行放进 MATLAB 的启动文件免去每次手动执行。第二步读入原始数据并跑一遍预处理raw ft_readheader(subj01_continuous.fif) cfg ft_defaults(preproc) cfg.dataset raw cfg.cleaning 1 % 自动标记坏通道 cfg.detrend 1 % 去除线性趋势 cfg.hpd 0.1 % 0.1 Hz 高通滤波 data ft_preprocessing(cfg, raw)ft_preprocessing是一条流水线入口分段、滤波、去趋势、坏道处理都通过往cfg里加键完成参数怎么设、结果怎么来一眼可查。第三步计算时频表示并做组间检验这一步不需要新代码继续改cfg即可。先调ft_freqanalysis把cfg.method设为multitaper用cfg.foi圈定频率范围、cfg.toi圈定时间窗口得到每个通道的功率随时间变化的表示再调ft_freqstatistics把cfg.method设为montecarlo、cfg.statistic设为ft_statfun_depsamplesT对两组数据做非参数置换检验返回带 p 值的统计结果最后用ft_topoplotTFR把功率随时间画成地形图序列。到这里数据进、统计图出的最小闭环就完成了。功能全景按分析任务对照不按代码目录而按你要回答的问题来查更省事你想做的事主入口函数常用参数要点切出单个试次、看平均波形ft_definetrialft_timelockanalysiscfg.trialdef定义事件与前后窗算频段能量随时间变化ft_freqanalysismethod选 multitaper/wavelet/hilbert比较两个条件或两组被试ft_freqstatisticsmethod montecarlostatistic指定统计量把头皮信号定位到脑内ft_prepare_headmodelft_sourceanalysis先建头模型再选最小范数、波束形成器等画地形图与电极布局ft_topoplotTFR、ft_plot_layoutcfg.layout指定布局文件算通道间连接性ft_connectivityanalysis支持相干、PLV、Granger 等多种指标时频方法的选择可以这样记多锥度 FFT频率分辨率高适合平稳信号小波时间分辨率高适合追踪快速变化Hilbert 变换直接给解析信号适合后续做相位分析。三者都在同一个ft_freqanalysis入口下切换。进阶技巧并行拆分被试循环。把被试循环放进parfor每个被试独立走读入-预处理-时频多被试数据量下耗时可缩短数倍记得先parpool设定 worker 数。固定随机种子。小波与置换检验都用到随机数脚本开头用rng固定种子才能让你的结果被别人原样复现。大文件先切再算。连续记录内存放不下时用ft_redefinetrial按事件切成试次或对不关心高频的研究做降采样再进入时频步骤。把 cfg 和结果一起存盘。用savevar或save同时保存cfg与结果结构体方法部分写作和日后复查都省事。坏道策略写死在脚本里。插值还是剔除用ft_channelrepair、ft_badchannel统一处理避免人工逐个看波形导致标准漂移。常见问题 FAQft_defaults 到底做了什么能不能手动加路径替代它会按当前 MATLAB 版本把各功能子目录加入路径并跳过不该加载的兼容目录。手动addpath(genpath(...))会把兼容目录和外部工具箱一起加进来容易让同名函数互相覆盖所以官方明确不推荐。multitaper 和 wavelet 到底选哪个看你更在乎哪个维度要频率轴上分得细比如区分 8 Hz 和 9 Hz 的能量差异选 multitaper代价是时间轴模糊要看某个事件后几百毫秒内的快速振荡选 wavelet代价是频率轴模糊。不确定时两者都算一遍看结论是否一致。我的设备格式 FieldTrip 不认怎么办先用ft_filetype确认支持范围若原始格式不支持可先用设备自带工具或 EEGLAB 等工具导出成通用格式如 EEGLAB 的 .setFieldTrip 可以直接读入。fileio目录下的读取函数结构一致熟悉一个就基本会读所有格式。内存不够时频计算跑到一半就崩怎么办按顺序尝试用ft_redefinetrial减小单次处理量、降采样到研究需要的频率、用cfg.channel只保留感兴趣通道、把被试循环拆成多段脚本分批执行。这四招组合通常能解决绝大多数内存问题。统计结果不显著该先查什么先别动统计参数。依次检查坏道处理是否到位、基线窗口是否合理、试次量是否足够、时频参数频率范围、锥度数是否过窄。预处理的问题会以不显著的形式在统计阶段暴露。结语FieldTrip 给你的不是某个孤立算法而是从原始文件到统计图、全程参数可查可复现的一条完整分析链。现在把仓库 clone 下来git clone https://gitcode.com/gh_mirrors/fi/fieldtrip跟着上面三步走一遍你的第一张时频地形图半小时之内就能出来。【免费下载链接】fieldtripThe MATLAB toolbox for MEG, EEG and iEEG analysis项目地址: https://gitcode.com/gh_mirrors/fi/fieldtrip创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表