资源简介
针对运动想象脑电信号,基于时频域和空间域分别采用小波变换法和共空间模式(CSP)提取特征向量,使用支持向量 机(SVM)对单一特征和融合特征进行识别并比较分类准确率
代码片段和文件信息
function [CSP_Train_featureCSP_Test_feature] = CSP(x)
EEGSignals = x; % 加载带通滤波后的脑电数据
%check and initializations
% EEGSignals.x_train=x;
EEG_Channels = size(EEGSignals.x_train2);
EEG_Trials = size(EEGSignals.x_train3);
classLabels = unique(EEGSignals.y_train);% Return non-repeating values
EEG_Classes = length(classLabels);
covMatrix = cell(EEG_Classes1); % 协方差矩阵
% Computing the normalized covariance matrices for each trial
trialCov = zeros(EEG_ChannelsEEG_ChannelsEEG_Trials);
for i = 1:EEG_Trials
E = EEGSignals.x_train(::i)‘;
EE = E*E‘;
trialCov(::i) = EE./trace(EE); % 计算协方差矩阵
end
clear E;
clear EE;
% 计算每一类样本数据的空间协方差之和
for i = 1:EEG_Classes
covMatrix{i} = mean(trialCov(::EEGSignals.y_train == classLabels(i))3);
end
% 计算两类数据的空间协方差之和
covTotal = covMatrix{1} + covMatrix{2};
% 计算特征向量和特征矩阵
[UcDt] = eig(covTotal);
% 特征值要降序排列
eigenvalues = diag(Dt);
[eigenvaluesegIndex] = sort(eigenvalues ‘descend‘);% 降序
Ut = Uc(:egIndex);
% 矩阵白化
P = diag(sqrt(1./eigenvalues))*Ut‘;
% 矩阵P作用求公共特征向量transformedCov1
transformedCov1 = P*covMatrix{1}*P‘;
%计算公共特征向量transformedCov1的特征向量和特征矩阵
[U1D1] = eig(transformedCov1);
eigenvalues = diag(D1);
[eigenvaluesegIndex] = sort(eigenvalues ‘descend‘);% 降序排列
U1 = U1(: egIndex);
% 计算投影矩阵W
CSPMatrix = U1‘ * P;
% 计算特征矩阵
FilterPairs = 2; % CSP特征选择参数m CSP特征为2*m个
features_train = zeros(EEG_Trials 2*FilterPairs+1);
features_test = zeros(EEG_Trials 2*FilterPairs+1);
Filter = CSPMatrix([1:FilterPairs (end-FilterPairs+1):end]:);
%extracting the CSP features from each trial
for t=1:EEG_Trials
%projecting the data onto the CSP filters
projectedTrial_train = Filter * EEGSignals.x_train(::t)‘;
projectedTrial_test = Filter * EEGSignals.x_test(::t)‘;
%generating the features as the log variance of the projected signals
variances_train = var(projectedTrial_train02);
variances_test = var(projectedTrial_test02);
for f=1:length(variances_train)
features_train(tf) = log(variances_train(f));
% features_train(tf) = log(variances_train(f)/sum(variances_train)); %修改后对应公式
end
for f=1:length(variances_test)
features_test(tf) = log(variances_test(f));
%features_test(tf) = log(variances_test(f)/sum(variances_test)); % 修改后对应公式
end
end
CSP_Train_feature = features_train(:1:4);
CSP_Test_feature = features_test(:1:4);
% save(‘CSP_feature.mat‘‘CSP_Train_feature‘‘CSP_Test_feature‘);
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 2672 2020-06-07 20:39 基于运动想象脑电信号的多特征融合解码(Matlab实现代码)\CSP.m
文件 7742184 2002-11-15 16:29 基于运动想象脑电信号的多特征融合解码(Matlab实现代码)\dataset_BCIcomp1.mat
文件 336 2015-04-05 21:45 基于运动想象脑电信号的多特征融合解码(Matlab实现代码)\labels_data_set_iii.mat
文件 801 2020-06-08 14:08 基于运动想象脑电信号的多特征融合解码(Matlab实现代码)\main.m
文件 4740 2020-06-07 21:27 基于运动想象脑电信号的多特征融合解码(Matlab实现代码)\trainClassifier.m
文件 4491 2020-06-07 21:24 基于运动想象脑电信号的多特征融合解码(Matlab实现代码)\trainClassifier1.m
文件 4491 2020-06-07 21:37 基于运动想象脑电信号的多特征融合解码(Matlab实现代码)\trainClassifier2.m
文件 765 2020-06-07 19:39 基于运动想象脑电信号的多特征融合解码(Matlab实现代码)\wavelet_energy_spectrum.m
文件 1558 2020-06-07 19:36 基于运动想象脑电信号的多特征融合解码(Matlab实现代码)\wavelet_packetdecomposition_reconstruct.m
文件 1326 2020-06-07 21:35 基于运动想象脑电信号的多特征融合解码(Matlab实现代码)\XB.m
目录 0 2020-06-24 08:28 基于运动想象脑电信号的多特征融合解码(Matlab实现代码)
----------- --------- ---------- ----- ----
7763364 11
相关资源
- 图像分块BCS稀疏表示与重建
- 小波变换图像融合的matlab实现
- 小波变换法图像融合MATLAB代码
- matlab robotics toolbox
- 贝叶斯压缩感知matlab源代码
- Robotics Modelling Planning and Control
- simmechanics完整版教程
- 使用Matlab7.3开发的使用整数小波变换
- MATLAB Text Analytics Toolbox官方教程
- Computational Statistics Handbook with MATLAB统
- 小波变换及其MATLAB工具的应用.pdf
- matlab statsstatistics工具箱
- 小波变换及其MATLAB工具的应用电子书
- MATLAB小波变换图像拼接技术GUI版.zip
- Robotics工具箱用户手册
- 全桥ZVZCS 软开关变换器仿真及报告
- matlab statistics learning toolbox
- ElasticSearch 技术解析与实战 kindle电子
- Computational Fourier Optics _ a MATLAB tutori
- matlab 实现一维和二维离散小波变换,
- MechanicsOfCompositeMaterialsWithMatlab.pdf 英文
- matlab开发-CSF批次模拟过滤器
- 超分辨率matlab源码pocs-superresolution_v
- Matlab高阶统计量工具箱(高阶谱)H
- SimMechanics教程
- 图片二维小波变换的分解与重构_mat
- matlab robotics toolboox_10.2教程
- 用MATLAB实现基于小波变换的图像融合
- 基于MATLAB&CCS;实现代码生成及
- MATLAB小波变换图像处理总结
评论
共有 条评论