日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

脑机接口基础学习19---救救我吧,Evoked数据可视化

發(fā)布時(shí)間:2024/1/1 编程问答 38 豆豆
生活随笔 收集整理的這篇文章主要介紹了 脑机接口基础学习19---救救我吧,Evoked数据可视化 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

在這一節(jié)的學(xué)習(xí)中,我遇到了非常大的問題
Evoked potential(EP)誘發(fā)電位或誘發(fā)反應(yīng)是指出現(xiàn)在諸如閃光或純音之類的刺激后,從人類或其他動物的神經(jīng)系統(tǒng),特別是大腦的特定部分記錄的特定模式的電位。不同形式和類型的刺激會產(chǎn)生不同類型的電位。

誘發(fā)電位振幅往往較低,從小于1微伏到數(shù)微伏不等,而腦電圖為數(shù)微伏,肌電圖為毫伏,心電圖通常接近20毫伏。為了在EEG、ECG、EMG等生物信號和環(huán)境噪聲的背景下解決這些低幅度電位,通常需要對信號進(jìn)行平均。信號被時(shí)間鎖定在刺激上,大部分噪聲是隨機(jī)產(chǎn)生的,這樣就可以通過對重復(fù)響應(yīng)來平均掉噪聲。

誘發(fā)電位(Evoked)結(jié)構(gòu)主要用于存儲實(shí)驗(yàn)期間的平均數(shù)據(jù),在MNE中,創(chuàng)建Evoked對象通常使用mne.Epochs.average()來平均epochs數(shù)據(jù)來實(shí)現(xiàn)。
在這篇文章中,著重于mne.Evoked的繪圖功能

#案例介紹:#導(dǎo)入工具包 import os import os.path as op import numpy as np import matplotlib.pyplot as pltimport mne ''' 第一步: 從文件中讀取誘發(fā)對象'''data_path=r'E:\腦機(jī)接口資料\MNE-sample-data\MEG\sample' fname=data_path+'/sample_audvis-ave.fif' evoked=mne.read_evokeds(fname,baseline=(None,0),proj=True)

#打印evoked print(evoked)


從上面打印信息可以看到,Evoked的內(nèi)容包含了4個(gè)類別的evoked數(shù)據(jù),分別是:Left Auditory、Right Auditory、Left visual、Right visual

注意:誘發(fā)事件是一系列誘發(fā)事件的實(shí)例
通過將參數(shù)條件傳遞給mne.read_evokeds(),您只能讀取其中一個(gè)類別。為了使本教程更簡單,我們將每個(gè)實(shí)例讀取到一個(gè)變量

evoked_l_aud=evoked[0] evoked_r_aud=evoked[1] evoked_l_vis=evoked[2] evoked_r_vis=evoked[3]

下面我們繪制事件相關(guān)的電位/場(ERP/ERF)。默認(rèn)情況下不繪制不良通道,在這里,我們明確設(shè)置了exclude參數(shù),以紅色顯示不良頻道。MNE-Python的所有繪圖功能都會返回
圖形實(shí)例的句柄。有了句柄后,我們可以自定義繪制效果

fig=evoked_l_aud.plot(exclude=(),time_unit='s')


下面我們將它變得更漂亮一些,僅使用MNE通道。許多mne函數(shù)都包含一個(gè)pick參數(shù)來包含頻道的選擇。pick_types()、mne.pick_channels()/mne.pick_channels_regexp()或可以解釋為通道名稱或通道類型的字符串列表,可以輕松構(gòu)造這些通道索引。使用spatial_colors=True,對各個(gè)通道進(jìn)行顏色編碼,以顯示傳感器的位置----具體地說,將傳感器的x、y和z位置轉(zhuǎn)換為R、G和B值

evoked_l_aud.plot(spatial_colors=True,gfp=True,picks='meg')


注意左邊的圖例,這些顏色表明可能有兩個(gè)不同的信號來源。從第一個(gè)數(shù)字來看,這并不明顯。嘗試用鼠標(biāo)左鍵繪制斜線。它應(yīng)該打開一個(gè)新的窗口,其中topomaps(頭皮區(qū)域)是繪制區(qū)域的平均值。還有一個(gè)單獨(dú)繪制topomaps的功能

evoked_l_aud.plot_topomap(time_unit='s')

到了這里我就不行了,一直錯(cuò)!!!


嘗試修改環(huán)境變量名中文為英文,但是還是解決不了這個(gè)問題,有大佬知道怎樣做的話可以指點(diǎn)一下我嗎,我被這個(gè)問題煩了好久了

#默認(rèn)情況下,topomaps是從誘發(fā)數(shù)據(jù)上平均分布的時(shí)間點(diǎn)繪制的 #我們也可以自己定義時(shí)間times=np.arange(0.05,0.151,0.05) evoked_r_aud.plot_topomap(times=times,ch_type='mag',time_unit='s') # 或者我們可以自動選擇峰值。 evoked_r_aud.plot_topomap(times='peaks', ch_type='mag', time_unit='s') #首先,我們在一個(gè)圖形中創(chuàng)建一組matplotlib軸,并將所有誘發(fā)數(shù)據(jù)的類別相互繪制在一起fig,ax=plt.subplots(1,5,figsize=(8,2)) kwargs=dict(times=0.1,show=False,vmin=-300,vmax=300,time_unit='s') evoked_l_aud.plot_topomap(axes=ax[0], colorbar=True, **kwargs) evoked_r_aud.plot_topomap(axes=ax[1], colorbar=False, **kwargs) evoked_l_vis.plot_topomap(axes=ax[2], colorbar=False, **kwargs) evoked_r_vis.plot_topomap(axes=ax[3], colorbar=False, **kwargs) for ax, title in zip(ax[:4], ['Aud/L', 'Aud/R', 'Vis/L', 'Vis/R']):ax.set_title(title) plt.show()

上面幾段代碼都是在報(bào)這個(gè)錯(cuò)誤,不知道為什么就是用不了plot_topomap()
求大佬拯救!!!

總結(jié)

以上是生活随笔為你收集整理的脑机接口基础学习19---救救我吧,Evoked数据可视化的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。