TrabalhosGratuitos.com - Trabalhos, Monografias, Artigos, Exames, Resumos de livros, Dissertações
Pesquisar

Codigo Desfibrilacao

Monografias: Codigo Desfibrilacao. Pesquise 860.000+ trabalhos acadêmicos

Por:   •  11/3/2014  •  454 Palavras (2 Páginas)  •  398 Visualizações

Página 1 de 2

11/03/14 19:19 C:\Users\Yang Medeiros\Desktop\tccorganizado\pa...\ecgfinal.m 1 of 4

%QRS Complex Detection and ECG Signal Processing

% QRS Detection Example

% shows the effect of each filter according to Pan-Tompkins algorithm.

% Note that, the decision algorithm is different then the mentioned algorithm.

% by Faruk UYSAL

clear all

close all

x1 = load('ecg6.txt'); % load the ECG signal from the file

fs = 200; % Sampling rate

N = length (x1); % Signal length

t = [0:N-1]/fs; % time index

figure(1)

subplot(2,1,1)

plot(t,x1)

xlabel('second');ylabel('Volts');title('Input ECG Signal')

subplot(2,1,2)

plot(t(200:600),x1(200:600))

xlabel('second');ylabel('Volts');title('Input ECG Signal 1-3 second')

xlim([1 3])

%CANCELLATION DC DRIFT AND NORMALIZATION

x1 = x1 - mean (x1 ); % cancel DC conponents

x1 = x1/ max( abs(x1 )); % normalize to one

figure(2)

subplot(2,1,1)

plot(t,x1)

xlabel('second');ylabel('Volts');title(' ECG Signal after cancellation DC drift and

normalization')

subplot(2,1,2)

plot(t(200:600),x1(200:600))

xlabel('second');ylabel('Volts');title(' ECG Signal 1-3 second')

xlim([1 3])

%LOW PASS FILTERING

% LPF (1-z^-6)^2/(1-z^-1)^2

b=[1 0 0 0 0 0 -2 0 0 0 0 0 1];

a=[1 -2 1];

h_LP=filter(b,a,[1 zeros(1,12)]); % transfer function of LPF

x2 = conv (x1 ,h_LP);

%x2 = x2 (6+[1: N]); %cancle delay

x2 = x2/ max( abs(x2 )); % normalize , for convenience .

figure(3)

subplot(2,1,1)

11/03/14 19:19 C:\Users\Yang Medeiros\Desktop\tccorganizado\pa...\ecgfinal.m 2 of 4

plot([0:length(x2)-1]/fs,x2)

xlabel('second');ylabel('Volts');title(' ECG Signal after LPF')

xlim([0 max(t)])

subplot(2,1,2)

plot(t(200:600),x2(200:600))

xlabel('second');ylabel('Volts');title(' ECG Signal 1-3 second')

xlim([1 3])

%HIGH PASS FILTERING

% HPF = Allpass-(Lowpass) = z^-16-[(1-z^-32)/(1-z^-1)]

b = [-1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 32 -32 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1];

a = [1 -1];

h_HP=filter(b,a,[1 zeros(1,32)]); % impulse response iof HPF

x3 = conv (x2 ,h_HP);

%x3 = x3 (16+[1: N]); %cancle delay

x3 = x3/ max( abs(x3 ));

figure(4)

subplot(2,1,1)

plot([0:length(x3)-1]/fs,x3)

xlabel('second');ylabel('Volts');title(' ECG Signal after HPF')

xlim([0 max(t)])

subplot(2,1,2)

plot(t(200:600),x3(200:600))

xlabel('second');ylabel('Volts');title(' ECG Signal 1-3 second')

xlim([1 3])

%DERIVATIVE FILTER

% Make impulse response

h = [-1 -2 0 2 1]/8;

% Apply filter

x4 = conv (x3 ,h);

x4 = x4 (2+[1: N]);

x4 = x4/ max( abs(x4 ));

figure(5)

subplot(2,1,1)

plot([0:length(x4)-1]/fs,x4)

xlabel('second');ylabel('Volts');title(' ECG Signal after Derivative')

subplot(2,1,2)

plot(t(200:600),x4(200:600))

xlabel('second');ylabel('Volts');title(' ECG Signal 1-3 second')

xlim([1 3])

%SQUARING

x5 = x4 .^2;

x5 = x5/ max( abs(x5 ));

figure(6)

subplot(2,1,1)

plot([0:length(x5)-1]/fs,x5)

11/03/14 19:19 C:\Users\Yang Medeiros\Desktop\tccorganizado\pa...\ecgfinal.m 3 of 4

xlabel('second');ylabel('Volts');title(' ECG Signal Squarting')

subplot(2,1,2)

plot(t(200:600),x5(200:600))

...

Baixar como (para membros premium)  txt (4.9 Kb)  
Continuar por mais 1 página »
Disponível apenas no TrabalhosGratuitos.com