forked from wonjsohn/multC_tester
-
Notifications
You must be signed in to change notification settings - Fork 0
/
MultC_plotter_simple_overlay.m
107 lines (74 loc) · 2.52 KB
/
MultC_plotter_simple_overlay.m
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
cd /home/eric/nerf_verilog_eric/projects/balance_limb_pymunk
% cursor_info = sprintf('cursor_info_20130920_150701'); % scaler 20130829_114414
% load([cursor_info, '.mat']);
% gain1_rack_emg_20131009_173115_rack_test_20131009_173034
% gain1_rack_emg_20131009_174042_rack_test_20131009_174040
% gain8_rack_emg_20131009_172540_rack_test_20131009_172538
% gain8_rack_emg_20131009_174457_rack_test_20131009_174455
fname1 = sprintf('gain1_rack_emg_20131011_135736_rack_test_20131011_135734');
load([fname1, '.mat']);
t1 = t_cut;
len1 =mixed_input_cut;
emg1 =f_emg_cut;
spkcnt1 = total_spike_count_sync_cut;
fname2 = sprintf('gain8_rack_emg_20131011_140239_rack_test_20131011_140238');
load([fname2, '.mat']);
t2 = t_cut;
len2 =mixed_input_cut;
emg2 =f_emg_cut;
spkcnt2 = total_spike_count_sync_cut;
% fname3 = sprintf('gain8_rack_emg_20131009_172540_rack_test_20131009_172538');
% load([fname3, '.mat']);
% t3 = t_cut;
% len3 =mixed_input_cut;
% emg3 =f_emg_cut;
% fname4 = sprintf('gain8_rack_emg_20131009_174457_rack_test_20131009_174455');
% load([fname4, '.mat']);
% t4 = t_cut;
% len4 =mixed_input_cut;
% emg4 =f_emg_cut;
%% EMG processing
% Fe=33; %Samling frequency
Fe = 145;
Fc_lpf=3.0; % Cut-off frequency
Fc_hpf=1.0;
N=3; % Filter Order
[B, A] = butter(N,Fc_lpf*2/Fe,'low'); %filter's parameters
[D, C] = butter(N,Fc_hpf*2/Fe,'high'); %filter's parameters
% high pass -> rectify -> low pass
EMG_high=filtfilt(D, C, emg1); %in the case of Off-line treatment
rec_emg = abs(EMG_high); % rectify
EMG_1=filtfilt(B, A, rec_emg); %in the case of Off-line treatment
EMG_high2=filtfilt(D, C, emg2); %in the case of Off-line treatment
rec_emg2 = abs(EMG_high2); % rectify
EMG_2=filtfilt(B, A, rec_emg2); %in the case of Off-line treatment
%
hold on
n=3;
subplot(n, 1, 1);
plot(t1, len1, 'LineWidth',2, 'color', 'red');
hold on
plot(t2, len2, 'LineWidth',2, 'color', 'black');
hold on
% plot(t1, len3, 'LineWidth',2, 'color', 'black');
% hold on
% plot(t1, len4, 'LineWidth',2, 'color', 'black');
% [pks, locs] = findpeaks(length_bic_cut);
axis off
subplot(n, 1, 2);
plot(t1, EMG_1, 'LineWidth',2, 'color', 'red');
hold on
plot(t2, EMG_2, 'LineWidth',2, 'color', 'black');
hold on
% plot(t1, emg3, 'LineWidth',2, 'color', 'black');
% hold on
% plot(t1, emg4, 'LineWidth',2, 'color', 'black');
% axis off
% hold on
subplot(n, 1, 3);
plot(t1, spkcnt1, 'LineWidth',2, 'color', 'red');
hold on
plot(t2, spkcnt2, 'LineWidth',2, 'color', 'black');
hold on
title('perturbation response, 100ms rising time red=normal, black=HIGAIN8');
%%