使用标准模板 MRI 主题根据 EEG 数据计算前向算子

使用标准模板 MRI 主题根据 EEG 数据计算前向算子_第1张图片

# https://mne.tools/stable/auto_tutorials/forward/35_eeg_no_mri.html

# 本教程说明如何使用标准模板 MRI 主题根据 EEG 数据计算前向算子
#
# 成人模板 MRI (fsaverage)
# 首先我们展示如何fsaverage用作替代subject

# Authors: Alexandre Gramfort 
#          Joan Massich 
#          Eric Larson 
#
# License: BSD-3-Clause

import os.path as op
import numpy as np

import mne
from mne.datasets import eegbci
from mne.datasets import fetch_fsaverage

# Download fsaverage files
fs_dir = fetch_fsaverage(verbose=True)
subjects_dir = op.dirname(fs_dir)

# The files live in:
subject = "fsaverage"
trans = "fsaverage"  # MNE has a built-in fsaverage transformation
src = op.join(fs_dir, "bem", "fsaverage-ico-5-src.fif")
bem = op.join(fs_dir, "bem", "fsaverage-5120-5120-5120-bem-sol.fif")


#加载数据  BCI的
# (raw_fname,) = eegbci.load_data(subject=1, runs=[6])
# raw = mne.io.read_raw_edf(raw_fname, preload=True)

raw = mne.io.read_raw_eeglab('eeg_data/sub2.set')



# Clean channel names to be able to use a standard 1005 montage
# new_names = dict(
#     (ch_name, ch_name.rstrip(".").upper().replace("Z", "z").replace("FP", "Fp"))
#     for ch_name in raw.ch_names
# )
# raw.rename_channels(new_names)

# Read and set the EEG electrode locations, which are already in fsaverage's
# space (MNI space) for standard_1020:
# montage = mne.channels.make_standard_montage("standard_1005")

# raw.set_montage(montage)
raw.set_eeg_reference(projection=True)  # needed for inverse modeling

# Check that the locations of EEG electrodes is correct with respect to MRI
# mne.viz.plot_alignment(
#     raw.info,
#     src=src,
#     eeg=["original", "projected"],
#     trans=trans,
#     show_axes=True,
#     mri_fiducials=True,
#     dig="fiducials",
# )

#Setup source space and compute forward
fwd = mne.make_forward_solution(
    raw.info, trans=trans, src=src, bem=bem, eeg=True, mindist=5.0, n_jobs=None
)

print()
#保存前向解到文件中
# mne.write_forward_solution('solution_bci4.fif',fwd,overwrite=True)
# 保存出问题,暂时先不保存




你可能感兴趣的:(python)