ssvep采集脑电信号的FFT分析
来源:互联网 发布:caffe linux cpu 安装 编辑:程序博客网 时间:2024/04/28 07:46
SSVEP脑电数据的特征提取与处理
有neuroscan设备采集的数据格式为.cnt格式,使用下面的函数可以将其需要的导联数据提取出来,
将其提取出来为.mat格式数据,
function [Edata] = Extract(Sdata)% 将.cnt文件文件转为成MATLAB能分析的.mat数据格式% author:陈威2017.1.9% .cnt数据格式来自与ssvep范式的neuroscan脑电数据%有关于neuroscan的数据将.cnt格式的数据加载到MATLAB中进行分析,%可以先参考下面这个网址的内容然后在进行下面的程序的处理%http://52brain.com/thread-17770-1-1.html%此函数旨在将Neuroscan采集的cnt数据集中data数据提取相应的导联数据%以便后续做特征提取与分类%Neuroscan采集 LCD刺激显示 60hz刷新 暗光环境%共65个channel%数据提取14个channel:%1P147%2PZ48%3P249%4PO753%5PO554%6PO355%7POZ56%8PO457%9PO658%10PO859%11O161%12OZ62%13O263%14M265参考电极(左耳垂)A=loadcnt(Sdata); %加载外部cnt文件a=A.data;ka=1;kb=[47,48,49,53,54,55,56,57,58,59,61,62,63,65];%选择需要的导联数b=zeros(length(kb),length(a));for i=1:length(kb) b(ka,:)=a(kb(i),:); ka=ka+1;endEdata=b'; %取转置save filename.mat Edataend
得到可以由MATLAB处理的.mat数据后,然后进行FFT变换,已提取频率特征,在进行FFT变换之前,先进行滤波处理,代码如下
function [f,sy,peak,i]=FFT_detection(data,Fs);%data-- 要处理的数据%Fs--- 采样率%y---- 返回峰值最大的xdata=data(:,7)'; %信号选取单个通道的采样数据,这里选择为(7-->POZ-->56)L1=length(data);NFFT = 2^nextpow2(L1); %确定需要进行处理的数据点数[B A]=butter(2,[4/(Fs/2) 20/(Fs/2)]); %butter:2阶的巴特沃斯滤波器 后为上下截止频率eegx=filter(B,A,data); %filter:一维数字滤波器, x1是滤波前序列,B为分子,A为分母 Y1 = fft(eegx,NFFT); %进行fft变换sy=abs(Y1(1:NFFT)); %去模 sy=sy/(NFFT/2); %求实际幅值sy(1)=sy(1)/2;f=([1:NFFT]-1)*Fs/NFFT; %求实际频率[qy,qx]=max(sy);peak=(qx-1)/(NFFT/Fs); %最大峰值处的频率值 peak=(qx-1)*Fs/NFFTi=qx-1;fprintf(['fft spectrum max is [x=',num2str(peak),', y=',num2str(qy*2),'] \n'])plot(f,2*sy,'r');text(peak,qy*2,['(',num2str(peak),',',num2str(qy*2),')']); %在坐标系中显示顶点title('幅度-频率曲线图');axis([0 30 0 3]);ylabel('幅值');xlabel('频率(hz)');
0 0
- ssvep采集脑电信号的FFT分析
- 基于ARM的脑电信号采集系统
- 数字信号的 FFT 分析
- 新型脑电信号放大检测电路的设计
- 利用RNN做脑电信号的分类(一)
- 医疗电生理信号处理 心电信号 脑电信号
- FFT的分析和XILINX fft核的介绍
- 电信号在PCB上的传播速度
- 基于matlab的心电信号预处理
- 基于matlab的心电信号预处理
- 基于MATLAB的心电信号预处理
- 如何采用fft分析信号的频谱
- MATLAB中FFT的使用方法(频谱分析)
- 再续FFT:信号的频谱分析
- FFT结果的物理意义分析
- 心音与心电信号分析之一--6.26--心音信号概述
- 关于F28377D调用FFT库做fft时出现结果无穷大的原因分析
- 网络中电信号和光信号的传播
- cesium自定义气泡窗口infoWindow
- 《喵神-王巍博客》读书笔记,开发篇(6)
- 欢迎使用CSDN-markdown编辑器
- 架构师知识体系(3)--系统架构管理实践
- listview到底出现的阴影
- ssvep采集脑电信号的FFT分析
- python里遇到字典里key值为None的情况,取不出来。
- iOS 获取通讯录的4种方式详解
- C# 定时执行一个方法
- Android适配方法之dimen适配
- 微信分身
- 讯飞在线语音TTS队列策略
- ListView性能优化
- android:listview性能优化