Newer
Older
masterarbeit / readme.m
[signal, states, params] = load_bcidat('/home/jph/Uni/Masterarbeit/Block1_ReachingMovements/AO/AO_B1001/AO_B1S001R01.dat');
params.SamplingRate.NumericValue
plot(states.StimulusCode)

% digitale Filter
help butter
help cheby1
help cheby2

[A,B]= butter(2,[48 52]/1250,'stop');

filteredSig = filter(A,B,signal(:,14));

% Frequenzspektrum
pwelch(signal(:,14),[],[],[],2500)
pburg

%-----------
% 1. EEG schneiden: Trials, Labels (Ruhe und Bewegung)
% (optinal) Filter (50 Hz, highpass (0.1Hz?)
% 2. Frequenzspektrum
% 3. Mittelwerte Spektrum �ber Trials: Ruhe gegen Bewegung
% auf C3, C4 konzentrieren (10-20 elektroden system nachschauen)

%PSDC3=pwelch(filteredSig(:,:,1),[],[],[],2500);
%pwelch(filteredSig(:,13,16),[],[],[],2500);
%xlim([0 0.100])

% % plot all
% for i=1:size(filteredSig,3)
%     if mod(i,4)==0
%         figure
%     end
%     subplot(2,2,mod(i,4)+1);
%     pwelch(filteredSig(:,13,i),[],[],[],2500);
%     xlim([0 0.100]);
% end

%TODO
%1. filtern in zwei for-Schleifen um sicher zu gehen
%2. anschauen, evtl Window (1s)
%3. Differenz (bzw. prozentualer Unterschied) Trial vs. Ruhe

%Tipps
% find, diff, xlim([0 0.1])

%imagesc

%libsvm
% - svmTrain
%trial x ch x power (1-50) | bewegung / ruhe
% cross validation (selber impelmentieren)

% Aufteilung EMG xor EEG (done)
% danach dann Bewegungen aufteilenC
% EMG ganze Bewegung


% von einer Person und einem Tag zusammen (done)
% nur die ersten zwei Sekunden der Bewegung (done [generateTrainingData])
% für WL keine Fenster sondern ganze Bewegung (done s.o.)
% äußere Crossvalidation (done)
% Confusion (done)
% Ruhe / Bewegung aufteilen EEG EMG
%  -> testen ob mit EMG besser
% Bewegungen mit EEG: 30.59%
% Bewegungen mit EMG: 26.4112%
% Move/Rest EMG: 53.7683%
% Move/Rest EEG: 53.2012%


% libsvm vorne in den path (done)
% besser erst fft bzw. WL, dann aneinanderhängen (done, MEMORY!))
% schneiden anhand von EMG (mean oder max)
% zum Trainieren Pause vor Bewegung(= EMG-Aktivität)
% threshold anhand von historgam/plot (bimodal?)

% für confusion: caxis, normierung für predicted


% Balancing bis nur noch n pro Klasse übrig sind