Arquivos
Significant-Preprocessing-M…/Data Processing/Preprocessing/computeSWTPredict.m
T
Muhammad Nadzeri Munawar f7b93d844e Version 1.0
2016-02-15 03:35:56 +07:00

161 linhas
5.1 KiB
Matlab

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%Author : Muhammad Nadzeri Munawar
%
%
%This code is to create absolute_power variable of subject no. 20 such as :
%delta, theta, alpha, beta, gamma with shape 32x5x40. 32 mean total of
%channel, 5 mean total absolute power, 40 mean 40 trial
%
% project_path -> 'D:\TUGAS AKHIR\Progress\24. (08-12-2015)'
% method -> swt;ica_swt
% subject -> [2,4,6,7,8,9,10,13,15,16,21,25,26,28,29,30];
% channel -> [2,3,4,5,6,7,8,14];
% fb -> 1.A5;2.D5;3.D4;4.D3;5.D2
% features -> 1. Min;2.Max;3.Std;4.Avg;5.Pow;6.Energy
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
function data = computeSWTPredict(raw_data,preprocessing_method,channel,fb,features)
%define variable
if strcmp(preprocessing_method,'ica_swt')
raw_data = computeICAPredict(raw_data);
end
counter=1;
data=[];
for j = channel
[swa,swd] = swt(raw_data(j,:),5,'db4');
d2=swd(2,:);
d3=swd(3,:);
d4=swd(4,:);
d5=swd(5,:);
a5=swa(5,:);
if counter==1
set(gcf,'Visible','off');
plot(a5);
print -dpng '../../Web App/img/swt/a5.png';
set(gcf,'Visible','off');
plot(d5);
print -dpng '../../Web App/img/swt/d5.png';
set(gcf,'Visible','off');
plot(d4);
print -dpng '../../Web App/img/swt/d4.png';
set(gcf,'Visible','off');
plot(d3);
print -dpng '../../Web App/img/swt/d3.png';
set(gcf,'Visible','off');
plot(d2);
print -dpng '../../Web App/img/swt/d2.png';
end
counter=2;
data_feature = [];
if ismember(1,fb)
if ismember(1,features)
data_feature = [data_feature,min(a5)];
end
if ismember(2,features)
data_feature = [data_feature,max(a5)];
end
if ismember(3,features)
data_feature = [data_feature,std(a5)];
end
if ismember(4,features)
data_feature = [data_feature,mean(a5)];
end
if ismember(5,features)
data_feature = [data_feature,mean(a5.^2)];
end
if ismember(6,features)
data_feature = [data_feature,sum(a5.^2)];
end
end
if ismember(2,fb)
if ismember(1,features)
data_feature = [data_feature,min(d5)];
end
if ismember(2,features)
data_feature = [data_feature,max(d5)];
end
if ismember(3,features)
data_feature = [data_feature,std(d5)];
end
if ismember(4,features)
data_feature = [data_feature,mean(d5)];
end
if ismember(5,features)
data_feature = [data_feature,mean(d5.^2)];
end
if ismember(6,features)
data_feature = [data_feature,sum(d5.^2)];
end
end
if ismember(3,fb)
if ismember(1,features)
data_feature = [data_feature,min(d4)];
end
if ismember(2,features)
data_feature = [data_feature,max(d4)];
end
if ismember(3,features)
data_feature = [data_feature,std(d4)];
end
if ismember(4,features)
data_feature = [data_feature,mean(d4)];
end
if ismember(5,features)
data_feature = [data_feature,mean(d4.^2)];
end
if ismember(6,features)
data_feature = [data_feature,sum(d4.^2)];
end
end
if ismember(4,fb)
if ismember(1,features)
data_feature = [data_feature,min(d3)];
end
if ismember(2,features)
data_feature = [data_feature,max(d3)];
end
if ismember(3,features)
data_feature = [data_feature,std(d3)];
end
if ismember(4,features)
data_feature = [data_feature,mean(d3)];
end
if ismember(5,features)
data_feature = [data_feature,mean(d3.^2)];
end
if ismember(6,features)
data_feature = [data_feature,sum(d3.^2)];
end
end
if ismember(5,fb)
if ismember(1,features)
data_feature = [data_feature,min(d2)];
end
if ismember(2,features)
data_feature = [data_feature,max(d2)];
end
if ismember(3,features)
data_feature = [data_feature,std(d2)];
end
if ismember(4,features)
data_feature = [data_feature,mean(d2)];
end
if ismember(5,features)
data_feature = [data_feature,mean(d2.^2)];
end
if ismember(6,features)
data_feature = [data_feature,sum(d2.^2)];
end
end
data = horzcat(data,data_feature);
end
end