Sunteți pe pagina 1din 5

ALGORITMO DE PAN AND TOMPKINS PARA DETECCION DE COMPLEJO QRS

Presenta la implementacin de un algoritmo que permite identificar los intervalos qrs por medio de filtros, integradores y derivadores, que bsica-mente tratan de encontrar los cambios bruscos de pendiente que caracterizan el inicio de las ondas r. Pan y Tompkins (1985) proponen un algoritmo de deteccin de complejos qrs(figura 2) basado en el anlisis de la pendiente, la amplitud, y el ancho de los complejos qrs. El algoritmo involucra una serie de filtros y operadores de tipo paso bajo, paso alto, derivador, cuadratura, integrador, umbralizacin adaptativa y procedimientos de bsqueda (Rangayyan, 2001), los cuales se analizan en los siguientes apartados. En este caso, la deteccin del QRS se basa en el anlisis de amplitud, pendiente y anchura de los complejos QRS.

Las etapas del mismo son: Filtrado pasa-banda: compuesto por un pasa-alto y pasa-bajo en cascada, que atena las bajas frecuencias caractersticas de las ondas P y T, as como de las oscilaciones basales, y tambin atena las frecuencias altas del EMG y la interferencia de red. Derivacin: destaca las pendientes rpidas de la seal, que coinciden en el caso del ECG con el QRS. Transformacin no lineal: eleva al cuadrado la seal, convirtindola en positiva antes de la integracin, y acentuando tambin las frecuencias altas, que corresponden al QRS. Promediacin: puesto que complejos anormales con amplitudes y pendientes iguales o mayores que los QRS, como es el caso de los PVC, pueden ser detectados como QRS normales, se utiliza un promediador de ventana mvil para obtener la duracin del complejo detectado, ya que los PVC suelen presentar duraciones mayores que los QRS normales. La ecuacin del promediador viene dada por: y(n) = [x(n -(N-1)) + x(n -(N2)) +...+ x(n)] / N

Filtro pasa bajo El filtro pasa bajo recursivo, utilizado en el algoritmo de Pan-Tompkins, posee coeficientes enteros con el fin de reducir la complejidad y el consumo computacional. La funcin de transferencia discreta de este filtro est dada por la siguiente ecuacin

En trminos de una ecuacin en diferencias, con el objeto de implementar el filtro pasa bajos discreto en forma computacional, la salida y(n) est relacionada con la entrada de x(n)a travs de la siguiente ecuacin.

Con velocidad de muestreo de 200 Hz, el filtro tiene una frecuencia de corte de fHz=z1, e introduce un retraso de 5 muestras o 25 ms. El filtro suministra una atenuacin superior de 35 dB a 60 Hz, y suprime de manera efectiva interferencias en la lnea elctrica, si es que esta se encuentra presente. Filtro pasa alto El filtro pasa alto utilizado en el algoritmo es implementado como un filtro pasa todo menos un filtro paso bajo. El componente paso bajo tiene la funcin de transferencia dada por la siguiente ecuacin.

En ecuacin en diferencia, la relacin entrada-salida se encuentra especificada por la siguiente ecuacin.

As, la funcin de transferencia H(z) del filtro de paso alto se especifica en la expresin

De manera equivalente, la salida p(n) del filtro de paso alto est dada por la ecuacin de diferencias descrita en la siguiente ecuacin.

Con x(n) y y(n) relacionados en la ecuacin de la funcin de transferencia. El filtro paso alto tiene un lmite de frecuencia de 5 Hz e introduce un retraso de 80 ms. Derivador El operador derivativo usado por Pan y Tompkins est dado por la ecuacin

Esta expresin se aproxima el operador ideal hasta 30 Hz. El procedimiento derivativo elimina las componentes de baja frecuencia de las ondas p y t, y proporciona una gran ganancia para las componentes de alta frecuencia.

Integrador Como se observa en el apartado anterior, la salida de una operacin derivativa exhibe mltiples picos dentro de la duracin de un complejo qrs simple. El algoritmo de PanTompkins suaviza la salida de las operaciones realizadas anteriormente a travs de un movimiento de ventana del filtro integrador dado por la siguiente ecuacin.

GRAFICACION DE LAS SEALES A continuacin se muestra un extracto del cdigo empleado para implementar los distintos filtros del algoritmo. Se observa que la instruccin de ejecucin de un filtro est dada por la funcin FILTER, cuyo parmetro de entrada no es otro que la funcin transferencia, interpretada por MATLAB en el momento de aplicar el filtro. Las imgenes despus del codigo corresponden a la visualizacin grfica de MATLAB, en la que se ilustran las seales obtenidas luego de la aplicacin de cada uno de los filtros implementados.

f=figure(1); set(f,'color',[1 1 1]) subplot(3,2,1), plot(s,'k','linewidth',1.5) % lowpass B=[1 0 0 0 0 0 2 0 0 0 0 0 1]; A=[1 2 1]; s1=filter(B,A,s); figure(1),subplot(3,2,2),plot(s1,'k','linewidth',1.5) % high pass B=zeros(1,33); B(1)=1; B(33)=1; A=[1 1]; C=zeros(1,17); C(17)=1; s2=filter(C,1,s1)filter(B,A,s1)/32; subplot(3,2,3),plot(s2,'k','linewidth',1.5) % derivative B=[0.2 0.1 0 0.1 0.2]; s3=filter(B,A,s2); subplot(3,2,4),plot(s3,'k','linewidth',1.5) % moving integral N=30;delay=30; B=ones(1,N)/N; s4=s3.^2; s4=filter(B,1,s4); subplot(3,2,5),plot(s4,'k','linewidth',1.5) %Title('ECG Filtrado adaptivo) det=s4>(0.125*(max(s4)/2)); det(1:delay)=[]; subplot(3,2,6), plot(s,'k','linewidth',1.5) subplot(3,2,6), hold on,plot(max(s)*det,'k:') plot(s,'k','linewidth',1.5)

S-ar putea să vă placă și