EEG 脑电信号处理合集(2): 信号预处理

脑电信号在采集完以后,需要进行一系列的预处理操作,然后才能用于后续的科学研究和计算。预处理是脑电信号分析最基本且重要的一步。基于python环境MNE库。

1 使用带通滤波器,信号滤波,去噪,去工频干扰

python 复制代码
data_path = sample.data_path()
meg_path = data_path / "MEG" / "sample"
raw_fname = meg_path / "sample_audvis_filt-0-40_raw.fif"

raw = mne.io.read_raw_fif(raw_fname).crop(0, 60).pick("meg").load_data()

reject = dict(mag=5e-12, grad=4000e-13)
raw.filter(1, 30, fir_design="firwin")

加载完raw数据以后,直接使用raw.filter() 进行带通滤波。

2 进行独立成分分析,去除一些artifacts

由于独立成分分析对低飘移很敏感,所以一般在进行独立成分分析之前,需要对数据进行高通滤波,一般高通滤波的截止频率为1H在。

这里可以使用mne.preporcess.ICA() 函数 实现对raw信号的独立成分分析。

python 复制代码
def run_ica(method, fit_params=None):
    ica = ICA(
        n_components=20,
        method=method,
        fit_params=fit_params,
        max_iter="auto",
        random_state=0,
    )
    t0 = time()
    ica.fit(raw, reject=reject)
    fit_time = time() - t0
    title = "ICA decomposition using %s (took %.1fs)" % (method, fit_time)
    ica.plot_components(title=title)
相关推荐
2601_967979124 小时前
Python第七十四讲 异常处理完全精通 try-except零基础保姆级教程
python·异常处理·编程教程·错误处理·try-except
wuyk5554 小时前
Spider-第07讲-JSON接口与正则提取
爬虫·python·json
2601_967987375 小时前
Sqlite参考手册
数据库·python·sqlite·api·教程
用户019027581615 小时前
A 股到价提醒机器人:AlphaFeed + 飞书/钉钉 Webhook
python
特立独行的猫A6 小时前
Ionic + 仓颉语言的 cj-tauri 开发框架实战:开发精美移动端 APP
java·后端·python
高洁016 小时前
数据同化与动态状态估计:让孪生持续贴合现实
人工智能·python·深度学习·transformer·迁移学习
通信仿真爱好者6 小时前
第【139】期--基于深度学习的OFDM信道估计方法研究--python完整代码
python·深度学习·ofdm·信道估计
威哥爱编程7 小时前
模拟面试智能体开发实战 07:答完一题就点评一题,结构化输出给分建议,让每道题都变成复盘
python·agent·harmonyos
cpolar技术支持7 小时前
中文文件名排序跟拼音对不上:os.listdir 返回的是文件系统顺序,三个中文名按字节排结果正好相反
python·文件系统·cpolar·编码·排序
Thanks_ks7 小时前
【第 008 讲】在终端中运行 Python 程序:交互模式与脚本模式 | 绝对路径与相对路径 | 以模块方式运行 | 常见报错的识别与排查
python·异常处理·终端·脚本·命令行·cmd·python 解释器