Diseño y Análisis de Confiabilidad de un Algoritmo para la

Anuncio
UNIVERSIDAD SIMON BOLIVAR
Decanato de Estudios de Postgrado
Maestría en Ingeniería Biomédica
TRABAJO DE GRADO
DISEÑO Y ANÁLISIS DE CONFIABILIDAD DE UN ALGORITMO PARA LA
DETECCIÓN DE FIBRILACIÓN AURICULAR.
Por: Mauricio Enrique Reina Fiore.
Febrero, 2006
1
CAPÍTULO I
INTRODUCCIÓN
La fibrilación auricular (AF) es un trastorno del ritmo cardíaco, que genera ritmo
cardíaco acelerado y desorganizado (arritmia), y las aurículas son estimuladas a contraerse de
una manera tanto desorganizada como anómala. En una fibrilación y flúter auricular (AFL),
las aurículas son estimuladas a contraerse
rápidamente y de forma muy diferente a la
actividad normal que se origina del nódulo sinusal, con la diferencia que en la AF las aurículas
se contraen de forma ineficiente y no coordinada, mientras que en el AFL, las aurículas
presentan un patrón de contracción más coordinado que AF, pero sigue siendo ineficiente. Por
otro lado, durante AF, se presenta también arritmia ventricular, causada por impulsos que son
transmitidos a los ventrículos de forma irregular o por algunos impulsos que no son
transmitidos. Esto hace latir a los ventrículos de manera irregular, lo cual conduce a un ritmo
cardíaco irregular (y por lo general rápido), mientras que en el AFL, los ventrículos laten
rápidamente pero de manera relativamente regular. [1,2]
Dentro de las consecuencias de la AF se tienen, disminución de un 30% de la eficacia
de bombeo ventricular debido a la insuficiencia del llenado de los ventrículos, ocasionando
considerables limitaciones físicas; aumento del ritmo cardíaco debido a la rápida frecuencia
de los impulsos fibrilatorios que inducen a los ventrículos a tener una frecuencia cardiaca alta,
aproximadamente entre 125 a 150 latidos por minuto; taquicardia o irregularidad del ritmo
ventricular, ocasionados por la gran cantidad de impulsos generados en las aurículas, que hace
que muchos de estos impulsos lleguen al nodo A-V, y estos disparan a su vez contracciones
ventriculares arrítmicas, que pueden ocurrir en un periodo indeterminado entre los 0.35 y 0.95
segundos; y por último, infarto del miocardio, causados por la formación de coágulos de
sangre por volúmenes de sangre estancados en las aurículas. [1,3]
Con respecto a la cantidad de personas que afecta esta enfermedad se obtuvieron varias
cifras de diversas fuentes. En la ciudad de Barquisimeto por ejemplo, en el Centro Regional
2
Cardiovascular ASCARDIO, se tenían registros de fibrilación auricular desde el año 1999
hasta el 2004, que suman un total de 168 casos, sin embargo los especialistas de este centro
afirman que la cantidad de casos eran muchos más, pero no han sido registrados porque a
veces esta enfermedad es subdiagnosticada. En el caso de Estados Unidos para el año 2004 se
tenían un aproximado de más de 2 millones de casos registrados [7]. Mientras que entre los
ingresos hospitalarios por urgencias médicas agudas en el Reino Unido, 3% a 6% de los
pacientes presentan fibrilación auricular y cerca de 40% tienen diagnóstico reciente. Entre los
ingresos hospitalarios por causas agudas en Nueva Zelanda, 10% presentaban fibrilación
auricular (9% a 12%) documentada [8]. Otra cifra importante es el rango de edades donde la
fibrilación auricular prevalece, esta puede afectar tanto a hombres como mujeres y su
prevalencia aumenta con la edad variando de 1 caso por cada 200 personas para menores de
60 años hasta casi 9 casos por cada 100 personas para mayores de 80 años [9].
Respecto a los tratamientos más usados, se tiene dos tipos dependiendo de la edad, las
condiciones del paciente, tipo de AF, y su historial de AF; donde a su vez, se tienen las
opciones de restaurar el ritmo sinusal, o mantenerlo en AF en forma indefinida controlando la
frecuencia ventricular. Si se opta por la opción de restaurar el ritmo sinusal, generalmente el
paciente es candidato a una cardioversión eléctrica, bien sea externa o interna, o a una
cardioversión por medicamentos usando propefanona oral o endovenosa, felcainida oral o
endovenosa, o, amiodarona endovenosa.
Cuando se opta por la opción de controlar la
frecuencia cardíaca manteniendo al paciente en AF indefinida, es porque este no tolera
fármacos antiarrítmicos y les resultan peligrosos, y no es capaz de soportar una cardioversión
eléctrica, por lo que se le suministran fármacos solo para la disminución de la frecuencia
cardíaca.
Sin embargo el argumento más importante para la decisión acerca de que
tratamiento tomar viene dado por la estabilidad hemodinámica del paciente, factor decisivo, ya
que la AF puede o no, ocasionar inestabilidad hemodinámica. [6]
Debido a que la AF ocasiona comportamiento anormal tanto a nivel de aurículas como
de ventrículos, las técnicas de detección y predicción usadas se centran en el estudio de la
actividad auricular y ventricular.
3
Respecto al comportamiento de la actividad auricular durante AF, los estudios se han
centralizado tanto en la caracterización morfológica de onda P (para predicción de AF) como
análisis de frecuencia de la actividad auricular (detección de AF). La morfología de la onda P
puede variar tanto en duración, amplitud o inclusive se puede desfasar respecto a una onda P
de un paciente sano. En el caso de la duración de la onda P bajo AF, autores afirman que en
gran parte de los casos, esta supera los 110ms, y para hacer este estudio mucho más preciso
promedian dicha onda unas 100 veces [10,11]. También se presentan intervalos isoeléctricos
de onda P, lo cuales se obtienen a partir de la diferencia de duración que existe entre una onda
P y otra de una derivación distinta durante AF; elevados valores de este intervalo pueden
predecir una posible AF [10]. Existe también el factor de dispersión de onda P que se puede
definir como la diferencia entre en valor mínimo y máximo de la duración de la onda P en las
12 derivaciones estándares del ECG. La variabilidad de la onda P en alguna de las
derivaciones con respecto a las demás es un indicativo de retrasos en la conducción eléctrica
dentro de las aurículas y esto se considera como una predicción de desarrollar algún tipo de
AF [10].
La variabilidad de la onda P que se define como la desviación estándar de
duraciones de ondas P, también es usada por algunos autores como parte de algoritmos que
detectan AF.
Gran cantidad de estudios se han centrado también, en realizar análisis de frecuencia a
la actividad auricular durante AF, ya que durante ésta aparecen componentes de alta
frecuencia (100 – 150 Hz.) que permiten ayudar a detectar la presencia o no de AF [12, 13],
usando ECG de alta resolución. Por otra parte, la extracción de actividad auricular va
acompañada de canceladores QRS o QRST que ayudan a atenuar el gran nivel de potencia que
presentan dichos complejos en el espectro de frecuencia, el cual se solapa con las pequeñas
potencias que poseen la actividad auricular, permitiendo así un mejor análisis frecuencial de la
actividad en las aurículas. [14, 15].
Referente a la actividad ventricular, el análisis de la variabilidad del ritmo cardíaco
durante AF, permite la detección de ésta con bastante precisión, y en los últimos años se ha
convertido en una línea de investigación muy activa ya que a través de dicho análisis de
variabilidad se puede predecir también su terminación espontánea, lo que permite determinar
4
si va a ser necesario el tratamiento de cardioversión a un paciente con AF. [17]. A su vez
también existen estudios donde se analiza el comportamiento caótico o no lineales del ritmo
cardíaco, donde se pueden predecir la terminación espontánea de la AF sin necesidad de
análisis de onda P, solo empleando series temporales de intervalos RR consecutivos [18].
El objetivo de esta investigación esta basado en el diseño y análisis de confiabilidad de
un algoritmo capaz de analizar, en tiempo real, patrones de ritmo cardíaco, que se aprecian en
las series temporales de tramos RR para el estudio y detección de AF. Dichas series se
obtienen a partir de consecutivas diferencias de tiempo, que existe entre una onda R y la
siguiente. Aunque el AFL es un patrón un poco más sencillo de detectar que la AF, las bases
de datos usadas para las pruebas del algoritmo no contaban con episodios de AFL. Para la
detección de AF mediante el análisis de patrones de ritmo cardíaco, lo que se hizo en principio
fue un proceso de observación de gráficas de series temporales de tramos RR generadas a
través de bases de datos de pacientes con y sin AF para luego elaborar un algoritmo que
detectara dichos patrones. Las técnicas usadas para la detección de AF analizando estas series
fueron dos. La primera consistió en determinar la cantidad de diferencias mayores a 0.05
segundos entre un tramo RR y el siguiente dentro de una ventana de 35 latidos, al ser superada
la cantidad de 10 diferencias dentro de esta ventana, la primera condición de AF se cumple. La
segunda técnica consistió en determinar dentro de una ventana de 35 latidos de la misma serie
temporal, la existencia de una dispersión uniforme de todos los tramos RR dentro de la
ventana en estudio. Si se cumple esta segunda condición y la primera también el algoritmo
emite el diagnóstico definitivo de AF.
La comprobación de funcionamiento del algoritmo elaborado en este trabajo, se realizó
a través del uso de 2 bases de datos, una de ellas fue la MIT AF Database la cual es una base
de datos con licencia de libre uso disponible en Internet que consta de 25 registros de ECG
con 10 horas cada uno y cada paciente dentro de las 10 horas, presentan episodios de AF, unos
más que otros, y con la importante característica que se observa cuando comienza la AF y
cuando termina, gracias a los archivos de anotaciones con que esta cuenta; y la otra es la MIT
Arrhytmia Database que es una base de datos con licencia de libre uso también disponible en
Internet que cuenta con 48 registros de ECG con media hora de duración cada registro, de los
cuales se escogieron 10 al azar para nuestro estudio, con la intención de no usar registros
5
seleccionados a mano. Cada paciente dentro de esta hora presenta episodios arrítmicos de
diversos tipos, y en alguno de ellos hay cortos episodios de AF.
Este trabajo de investigación presenta, capítulo a capítulo, todo el desarrollo de este
algoritmo detector de AF, en el capítulo II empezamos explicando que es la AF, sus causas
consecuencias, clasificación, diagnóstico, tratamiento y cifras acerca de cómo afecta la AF a la
comunidad. En el capítulo III se hace un breve repaso acerca de los métodos existentes para la
detección de AF, analizando características morfológicas de la onda P, actividad auricular en
el dominio de la frecuencia y variabilidad del ritmo cardíaco. En el capítulo IV se muestra
cada una de las herramientas que se usaron para poder elaborar el algoritmo como, principios
de filtrado digital, técnicas básicas para detección de QRS y generación de series temporales
de tramos RR junto con su representación gráfica. El capítulo V presenta paso a paso cada
etapa con que cuenta el algoritmo, como adquisición de datos, filtrado digital, detección de
QRS, obtención de las series temporales de tramos RR y detección de AF a partir de estas
series. En el capítulo VI se realiza un análisis de resultados, donde se analizan las cifras
relacionadas con la eficacia del algoritmo, estudiando su exactitud, especificidad y
sensibilidad [26]. Y por ultimo se presenta en el capítulo VII, las respectivas conclusiones y
recomendaciones relacionadas con este trabajo de investigación.
6
CAPÍTULO II
LA FIBRILACIÓN AURICULAR
2.1 INTRODUCCIÓN
A continuación se presenta un resumen del funcionamiento mecánico y eléctrico del
corazón, para poder entender como es que ocurre exactamente la fibrilación auricular, para
luego explicar, más a fondo, que es la AF, sus implicaciones, causas, consecuencias,
diagnóstico, tratamiento y cifras relacionadas con la cantidad de personas que afecta esta
enfermedad.
2.2 GENERALIDADES
En la figura 1 se tiene una representación de un corazón humano. En esta se puede
apreciar la entrada de sangre, por medio de las venas cavas, llegando esta a la aurícula
derecha, para luego pasar al ventrículo derecho por la apertura de la válvula tricúspide. Dicha
válvula al igual que las otras válvulas del corazón, se abren y se cierran por diferencias de
presión y no por estimulación eléctrica. Una vez que la sangre llega a la aurícula derecha, y
ésta se contrae, la sangre llena el ventrículo derecho, donde este luego se contraerá para enviar
la sangre a través de arteria pulmonar, pasando por la válvula pulmonar, hacia los pulmones
para ser oxigenada. Cuando la sangre retorna por la vena pulmonar llena la aurícula izquierda,
luego esta se contrae y por diferencia de presiones se abre la válvula mitral permitiendo el
paso de sangre hacia el ventrículo izquierdo. Una vez ha llegado la sangre en este punto, el
paso final es la contracción del ventrículo izquierdo, que hará que se abra la válvula aórtica,
saliendo ésta por la aorta hacia la circulación periférica. Vale la pena destacar que la
contracción auricular derecha ocurre al mismo tiempo que la izquierda, de igual forma pasa
con los ventrículos derecho e izquierdo.
7
Figura 1. Recorrido de la sangre dentro del corazón.
Como se puede observar el flujo de la sangre dentro del corazón ocurre de forma
coordinada gracias a la contracción controlada de cada una de las masas musculares, debido a
la propagación de impulsos eléctricos dentro de este. En la figura 2 podemos ver como se
propaga un potencial de acción desde que este parte en el nodo sinusal hasta llegar a las
últimas fibras de los ventrículos.
8
Figura 2. Vía de propagación del potencial de acción desde el nodo sinusal hasta las fibras
ventriculares.
Inicialmente, el comienzo de cada ciclo cardíaco, empieza con un potencial de acción
generado en el nodo sinusal, el cual es una pequeña porción de músculo ubicado en la pared
supero lateral de la aurícula derecha, cuya función es la de marcapasos natural y es el que
determina el ritmo cardíaco normal, en un corazón sano. Una vez generado este impulso, este
se propaga a través de un sistema especializado de fibras, conformado por las vías
internodales, provocando así contracción en ambas aurículas, generando la onda P mostrada en
el ECG de la figura 3, hasta llegar al nodo Aurículo-Ventricular (nodo A-V), el cual es un
nodo que genera un retraso en la retransmisión del impulso de aproximadamente unos 0.16
segundos, tiempo necesario para que las aurículas llenen de sangre los ventrículos; este
episodio se aprecia en el ECG en el tramo ubicado entre la onda P y R.
Figura 3. ECG de un ciclo cardíaco completo.
9
Transcurrido estos 0.16 segundos el impulso eléctrico sigue fluyendo a través del haz
Aurículo-ventricular (haz A-V) hasta propagarse por toda la masa ventricular tanto derecha
como izquierda, a través de las llamadas fibras de Purkinje, provocando así la contracción
ventricular, generando en el ECG el complejo QRS, el cual finalizará en el comienzo de la
onda T del ECG, cuya duración total será de unos 0.35 segundos. Por último, ocurre la
repolarización ventricular, representada por la onda T de duración aproximada 0.2 segundos,
donde los ventrículos se relajan, llegando de esta manera al fin del ciclo cardíaco.
2.3 FIBRILACIÓN AURICULAR
La fibrilación auricular, es un fenómeno que ocurre en las masas auriculares, y se debe
a disparos de impulsos cardíacos que ocurren espontáneamente por sí solos dentro de las
aurículas y estimulan sin orden ni coordinación una porción del músculo auricular, que a su
vez generan otros impulsos que estimulan otras zonas de las aurículas, y así sucesivamente,
para finalmente convertirse en un proceso de retroalimentación que estimula al mismo
músculo auricular una y otra vez indefinidamente [1]. Esto se puede ver como una masa de
músculo que en vez de bombear sangre a los ventrículos para cumplir su función de llenado
ventricular, lo que esta haciendo es fibrilar o temblar, provocando entonces que la sangre
tenga que llegar a los ventrículos por la presión proveniente de la circulación periférica en el
caso del ventrículo derecho o por la presión proveniente de la vena pulmonar en el caso del
ventrículo izquierdo [1].
2.4 CLASIFICACIÓN DE LA AF
Como las arritmias se manifiestan de distintas formas, existen diversos esquemas de
clasificación, y las formas de clasificarlas más comúnmente usada en los últimos años, es la
que se hace según el patrón temporal del ritmo que se describe a continuación [2].
1) Fibrilación Auricular Aguda: Se presenta cuando la enfermedad aparece por primera
vez, y tiende a ser pasajera, durando varias horas para luego desparecer.
10
2) Formas Crónicas: Se clasifican como crónicas aquellas AF que aparecen y
desaparecen en intervalos de tiempo determinado, o aquella que incluso nunca
desparecen. Estas a su vez se pueden clasificar como:
a) Paroxística: Ocurre cuando los episodios de AF duran menos de 48 horas y
por lo general terminan espontáneamente. La frecuencia de ocurrencia de los
ataques pueden ser de días o semanas, pero también pueden presentarse varios
episodios en un mismo día. Generalmente el paciente se encuentra muy
incapacitado durante los ataques.
b) Persistente: Es cuando los episodios de AF continúan indefinidamente pero
pueden ser tratados y ser llevados a ritmo sinusal (ritmo normal). En esta
situación el médico debe decidir si aplicar o no desfibrilación sincronizada,
dependiendo de las probabilidades de éxito e historia medica del paciente.
Existe una alta probabilidad de desarrollar AF permanente y se corren riesgos
tromboembolicos, sobre todo después de la desfibrilación.
c) Permanente: Es cuando no se puede llevar al corazón a ritmo sinusal y no
responde a tratamiento médico. En esta situación lo primordial es prevenir
complicaciones. El paciente presenta síntomas de disnea, palpitaciones y
malestar general.
2.5 CAUSAS Y CONSECUENCIAS DE LA AF
La causa más frecuente de la fibrilación auricular es el aumento de la masa del músculo
auricular, consecuencia directa de lesiones valvulares que impiden a las aurículas vaciarse
completamente en los ventrículos, o de una posible insuficiencia ventricular acompañada de
un incremento del remanente de sangre en las aurículas [1].
11
2.5.1 CONSECUENCIAS DE LA AF
Dentro de las consecuencias generadas por la AF tenemos las siguientes:
a) Disminución de un 30% de la eficacia de bombeo ventricular debido a la insuficiencia
del llenado de los ventrículos, haciendo que el corazón del paciente solo pueda llegar
hasta un máximo del 70% de eficacia de bombeo, trayendo como consecuencia
considerables limitaciones físicas, hasta el punto de que un paciente puede vivir con
fibrilación auricular durante meses incluso años.
b) Aumento del ritmo cardíaco ocasionado por la rápida frecuencia de los impulsos
fibrilatorios que inducen a los ventrículos a tener una frecuencia cardiaca alta,
aproximadamente entre 125 a 150 latidos por minuto.
c) Taquicardia o irregularidad del ritmo ventricular, debido a la gran cantidad de
impulsos generados en las aurículas, que hace que muchos de estos impulsos lleguen al
nodo A-V, y estos disparan a su vez contracciones ventriculares arrítmicas, que pueden
ocurrir en un periodo indeterminado entre los 0.35 y 0.95 segundos.
En la figura 4 se puede apreciar un ECG de un paciente que sufre de AF, y se observan 3
características bastante notables.
12
Figura 4. Episodio de AF. MIT AF Database.
La primera es un ritmo cardíaco acelerado, la segunda, contracciones ventriculares
arrítmicas ya que a cada QRS lo separan periodos de tiempo distintos, y por último ausencia
de ondas P, ya que la gran actividad eléctrica de distintas polaridades en las aurículas tienden a
anular esta onda. En algunos casos se puede apreciar en el ECG que en vez de ondas P se
observan pequeñas ondas de alta frecuencia y baja amplitud, que representan la actividad
fibrilatoria dentro de las aurículas [3].
2.5.2 DIAGNÓSTICO AUTOMATIZADO DE LA AF
La importancia de este estudio, se basa en que la AF es una arritmia que produce
disminución en la eficacia de bombeo ventricular, aumento del ritmo cardíaco, taquicardia
ventricular y que además, puede traer efectos fatales si no se trata a tiempo, como fibrilación
ventricular y generación a largo plazo de infarto del miocardio, causados por la formación de
trombos de sangre, estancada en las aurículas.
El desarrollo de un algoritmo para la detección automática y confiable de AF en
señales de EGC, ofrece grandes ventajas en el desarrollo de dispositivos para el diagnóstico o
tratamiento de AF, como desfibriladores para cardioversión de la AF, desfibriladores de AF
implantables, desfibriladores de AF transcutáneos [4,5],
y cualquier otro dispositivo
relacionado con el diagnóstico o tratamiento de dicha patología.
13
2.5.3 TRATAMIENTO DE LA AF
Siendo la terapia ideal contra la AF, la restauración del ritmo sinusal, no todos los
pacientes soportan este tratamiento, bien sea con fármacos o con cardioversión eléctrica, por
lo que se opta entonces, por escoger entre restauración del ritmo sinusal o control de la
frecuencia cardiaca, dependiendo de la estabilidad hemodinámica del paciente [6].
Si el paciente presenta AF e inestabilidad hemodinámica o AF asociada a
condiciones de riesgo vital, se procede el reestablecimiento del ritmo sinusal de forma
inmediata (Cardioversión farmacológica o eléctrica) y se adoptan las medidas necesarias para
su mantenimiento.
Es importante mencionar que el 30% de los episodios de AF,
especialmente en pacientes sin cardiopatía orgánica asociada, revierten de forma espontánea,
es razonable por lo tanto, esperar 24 horas antes de intentar cardiovertir [6].
Si el paciente presenta una AF hemodinámicamente estable sin riesgo vital inmediato,
donde están incluidos la mayoría de los pacientes con AF recurrente y con AF de reciente
diagnóstico; la opción terapéutica debe elegirse de forma individual. Para orientar esta
decisión es útil tener en cuenta los marcadores clínicos de riesgo de fracaso de la
cardioversión a ritmo sinusal o de recidiva precoz de la AF. Siguiendo estos criterios de
estabilidad hemodinámica podemos establecer la siguiente pauta: [6]
 Mejor control del ritmo:
1. Pacientes con AF recurrente (paroxística o persistente) que reúnen alguno de
los siguientes criterios:
 Pacientes con edad < 65 años.
 Pacientes que presentan mal control de la frecuencia ventricular con
medicación.
 Pacientes con síntomas relevantes relacionados con la AF, a pesar del
un buen control de la frecuencia cardiaca.
 Pacientes que presentan un deterioro clínico o funcional de una
cardiopatía orgánica.
14
2. Pacientes con AF de reciente descubrimiento, exceptuando los casos en los que
predominen los factores predictores de cardioversión inefectiva y/o riesgo de
recidiva y estén asintomáticos a la AF.
Observaciones: Estos pacientes suelen tener episodios repetidos de AF. El número de
intentos de cardioversión debe ser individualizado, dependiendo de la frecuencia de los
episodios y de los beneficios clínicos conseguidos.
 Mejor control de la frecuencia
1. Pacientes con AF persistente de varios años de evolución, con múltiples
recaídas tras restaurar el ritmo sinusal.
2. Pacientes con AF recurrente en los que los fármacos antiarrítmicos no son
tolerados o son peligrosos.
3. Pacientes de edad avanzada (>65 años) con AF de reciente diagnóstico,
asintomáticos u oligosintomáticos, especialmente si tienen la frecuencia
ventricular controlada y una aurícula izquierda dilatada.
2.5.3.1 TERAPIA
PARA AF POR
CARDIOVERSIÓN
(Restauración
y
mantenimiento del ritmo sinusal)
Una vez seleccionada la cardioversión como la mejor opción para determinado
paciente, se procede a suministrarla de siguiente manera [6]:
1.- Cardioversión urgente: Se realiza de forma programada en las primeras 48 horas
desde el inicio del episodio de AF. Indicada en pacientes con grave deterioro clínico y
hemodinámico atribuible a la AF. Por su urgencia se realiza sin tener en cuenta el riesgo
embolígeno asociado a la misma. El método de elección es la cardioversión eléctrica.
2.- Cardioversión electiva precoz: Se realiza en las primeras 48 horas desde el inicio
del episodio de AF. Recomendada en los pacientes con el primer episodio de AF o con un
episodio de AF recurrente que solicitan atención antes de las primeras 48 horas. No se asocia a
15
riesgo aumentado e embolias por lo que se puede practicar sin profilaxis antitrombótica. Se
puede abordar mediante cardioversión farmacológica o eléctrica. Podemos ver el grado de
eficacia demostrada y los fármacos útiles en la Tabla 1 [6].
Tabla 1. Eficacia de los métodos de cardioversión.
3.- Cardioversión electiva diferida: Se realiza después de las 48 horas del inicio del
episodio de AF. Está recomendada en pacientes con AF persistente y con AF de duración
desconocida que cumplen criterios de restauración del ritmo sinusal.
4.- Cardioversión de la AF asociada a situaciones especiales: (Pacientes con AF de
causa aguda):

No se debe realizar la cardioversión hasta que se corrija la causa precipitante
(insuficiencia cardiaca, pericarditis aguda, insuficiencia respiratoria, sepsis, etc.). La
medida terapéutica inicial se debe centrar en el control de la frecuencia ventricular y
anticoagulación (si persiste más 48 horas y no hay contraindicación).

En el caso de AF secundaria a hipertiroidismo no se debe realizar la cardioversión
hasta que transcurran más de 3 meses desde que se alcanza la situación eutiroidea.
En caso de pacientes con una cardiopatía orgánica descompensada: (insuficiencia
cardíaca, crisis hipertensiva, infarto agudo de miocardio), o con una broncopatía
descompensada se recomienda posponer la cardioversión hasta que se normalice la situación
clínica.
16
Cardioversión farmacológica: Los fármacos útiles para la cardioversión farmacológica
son Quinidina, Procainamida, Propafenona, Flecainida, Amiodarona, Ibutilide y Dofetilide.
Ninguno de estos fármacos ha demostrado ser muy superior a los demás, por lo que su
elección se basa en criterios clínicos de seguridad, eficacia y tolerancia. De acuerdo con estos
criterios, las recomendaciones son:

En los pacientes sin cardiopatía: Flecainida o Propafenona.

En los pacientes con cardiopatía: Amiodarona.
2.5.3.2 OTRAS TERAPIAS PARA AF (Control de la respuesta ventricular)
Pacientes candidatos a esta medida terapéutica [6]:
 Pacientes con AF recurrente (paroxística o persistente) sin tratamiento con fármacos
antiarrítmicos para control de la
respuesta ventricular durante los episodios
paroxísticos.
 Pacientes con AF recurrente (paroxística o persistente) recibiendo tratamiento con
fármacos antiarrítmicos profilácticos, del grupo IC para control de la respuesta
ventricular durante los episodios de AF, para evitar la aparición de flutter auricular
con respuesta ventricular 1:1.
 Pacientes con AF de causa aguda mientras se resuelven los factores que actuaron como
condicionantes.
 Pacientes con AF persistente o de reciente diagnóstico con respuesta ventricular rápida
mientras se completa el tiempo de anticoagulación reglada para realizar cardioversión
eléctrica programada.
 Pacientes con AF crónica y respuesta ventricular rápida.
Fármacos recomendados: Digoxina, Betabloqueantes (Atenolol, Propranolol, Metoprolol,
Pindolol) y Antagonistas del Calcio (Diltiazem y Verapamilo). La Amiodarona, aunque tiene
efectos cronotrópico y dromotrópico negativos, no está recomendada en este apartado por no
17
reportar ventajas respecto a estos grupos terapéuticos, y presentar en cambio una alta tasa de
efectos secundarios clínicamente relevantes.
2.5.4 LA AF COMO PROBLEMA DE SALUD PÚBLICA
Con respecto a la cantidad de personas que afecta esta enfermedad se obtuvieron varias
cifras de diversas fuentes. En la ciudad de Barquisimeto por ejemplo, en el Centro Regional
Cardiovascular ASCARDIO, se tenían registros de fibrilación auricular desde el año 1999
hasta el 2004, que suman un total de 168 mostrados en la Tabla 2. Sin embargo los
especialistas de este centro afirman que la cantidad de casos eran muchos más, pero no han
sido registrados porque a veces esta enfermedad es subdiagnosticada.
Año
Cantidad de Casos
1999
24
2000
33
2001
25
2002
18
2003
39
2004
29
Tabla 2. Casos de AF desde 1999 hasta el 2004. ASCARDIO.
En el caso de Estados Unidos para el año 2004, se tenían un aproximado de más de 2
millones de casos registrados [7]. Mientras que entre los ingresos hospitalarios por urgencias
médicas agudas en el Reino Unido, 3% a 6% de los pacientes presentan fibrilación auricular y
cerca de 40% tienen diagnóstico reciente. Entre los ingresos hospitalarios por causas agudas
en Nueva Zelanda, 10% presentaban fibrilación auricular (9% a 12%) documentada [8].
Otra cifra importante es el rango de edades donde la fibrilación auricular prevalece,
esta puede afectar tanto a hombres como mujeres y su prevalencia aumenta con la edad
18
variando de un caso por cada 200 personas para menores de 60 años hasta casi 9 casos por
cada 100 personas para mayores de 80 años [9].
19
CAPÍTULO III
TÉCNICAS DE DETECCIÓN DE AF
3.1 INTRODUCCIÓN
Como se mencionó anteriormente, en presencia de AF, lo que se puede apreciar a
simple vista en un ECG es la ausencia de onda P y arritmia ventricular. Actualmente existen
diversos algoritmos clásicos y no clásicos que permiten la detección de AF, analizando la
ausencia o morfología de onda P y la variabilidad del ritmo cardíaco. A su vez existen
algoritmos para la predicción del comienzo de una AF así como para su terminación
espontánea. Para ambos casos existen algoritmos que analizan el ECG tanto en el dominio del
tiempo como en el dominio de la frecuencia. Comúnmente, la mayoría de los algoritmos
existentes emplean varias técnicas para detección de AF trabajando en conjunto o en forma
secuencial, analizando la morfología de la onda P en el dominio del tiempo, estudiando la
actividad auricular en el dominio de la frecuencia o realizando análisis de variabilidad del
ritmo cardíaco. A continuación se mencionan varias técnicas de detección de AF mediante el
estudio morfológico de la onda P, estudio de la variabilidad del ritmo cardíaco, y ambas
trabajando en conjunto.
3.2. CARACTERIZACIÓN MORFOLÓGICA DE LA ONDA P EN AF
3.2.1. Duración de la Onda P: La duración de la onda P es un parámetro que puede
predecir la aparición de AF de una forma medianamente confiable, el método consiste en fijar
un punto fiducial para el comienzo y terminación de la onda P, en las tres derivaciones
estándares, y la duración de esta onda P no debe ser mayor de 110ms aproximadamente, en
alguna de las tres derivaciones estándares, de lo contrario se podría decir que se aproxima una
AF [10, 11].
20
3.2.2. Duración de onda P promediada: La onda P promediada al menos 100 veces
permite tener una mejor exactitud acerca de su duración, y dependiendo de su duración, se
predice la aparición o no de AF.
Como toda promediación es necesario un punto de
alineamiento, que puede ser tomado de varias formas, una de ellas es ubicando este punto a
300ms hacia la izquierda, desde donde se detecte un QRS [10].
3.2.3. Dispersión de la onda P: Esta dispersión se puede definir como la diferencia
entre un valor mínimo y máximo de la duración de la onda P en las 12 derivaciones estándares
del ECG. La variabilidad de la onda P en alguna de las derivaciones con respecto a las demás
es un indicativo de retrasos en la conducción eléctrica dentro de las aurículas y esto se
considera como una predicción de desarrollar algún tipo de AF [10].
3.2.4. Variabilidad de la Onda P: Se puede definir como la desviación estándar de las
duraciones de las ondas P, donde n es el número de ondas P y xi representa la duración de la
onda P en un momento i. Al igual que la dispersión de la onda P la varianza de la onda P es un
indicador de variabilidad de conducción pero es menos dependiente de la morfología de dicha
onda y es más reproducible [10]. La variabilidad de la onda P es mostrada en (1):
(1)
3.2.5. Fuerza Terminal de la onda y velocidad espacial: La fuerza terminal de la
onda P es un índice electrocardiográfico usado como indicador de anormalidades en la
aurícula izquierda, que han usado diversos autores para el estudio de la posibilidad de
aparición de AF. Esta se puede expresar como la duración en segundos de la parte terminal
negativa de la onda P, en la derivación V1, multiplicada por su amplitud en milímetros. La
velocidad espacial es la velocidad con que cambia el voltaje de la onda P con respecto al
tiempo [10].
21
3.3. CARACTERIZACIÓN DE LA ACTIVIDAD AURICULAR EN EL
DOMINIO DE LA FRECUENCIA.
Como se mencionó en el capítulo anterior, la AF produce anulación de la onda P en el
ECG debido a la gran actividad eléctrica de distintas polaridades dentro de las aurículas. Gran
cantidad de estudios se han centrado en realizar análisis de frecuencia a la actividad auricular
durante AF, ya que durante ésta aparecen componentes de alta frecuencia (100 – 150 Hz) que
permiten ayudar a detectar la presencia de AF [12, 13], usando ECG de alta resolución. Por
otra parte, la extracción de actividad auricular va acompañada de canceladores QRS o QRST
que ayudan a atenuar el gran nivel de potencia que presentan dichos complejos en el espectro
de frecuencia, el cual se solapa con las pequeñas potencias que poseen la actividad auricular,
permitiendo así un mejor análisis frecuencial de la actividad en las aurículas. [14, 15]. A su
vez se han creado varias metodologías para evaluar la eficiencia de algoritmos, que permiten
medir que tan eficientes son en la detección de AF mediante la extracción de actividad
auricular. [16]
3.4. CARACTERIZACIÓN DE LA VARIABILIDAD DEL RITMO
CARDÍACO EN AF.
El análisis de la variabilidad del ritmo cardíaco durante AF, permite la detección de
esta con bastante precisión y en los ultimo años se ha convertido en una línea de investigación
muy activa ya que a través de dicho análisis de variabilidad se puede predecir también su
terminación espontánea, lo que permite determinar si va a ser necesario el tratamiento de
cardioversión a un paciente con AF. [17]
A su vez existen estudios donde se analiza el comportamiento caótico o no lineales del
ritmo cardíaco, donde se puede predecir la terminación espontánea de la AF sin necesidad de
análisis de onda P, solo empleando la serie de los intervalos RR consecutivos [18].
3.4.1. Análisis no lineal de la variabilidad del ritmo cardíaco en AF: Hasta los
momentos no se ha logrado precisar el nivel caótico de la variabilidad del ritmo cardíaco
22
durante AF. Para el caso del flúter auricular varios estudios han revelado un comportamiento
casi lineal ya que como se menciono anteriormente el flúter auricular produce arritmia
ventricular con ciertos patrones que pueden ser predecibles, aunque el ritmo es tan acelerado
en la mayoría de los casos que el bombeo de sangre es ineficiente. Por otra parte, para obtener
resultados más precisos en el análisis no lineal es necesario contar con una cantidad de datos
considerables (tramos RR), que lo hace no aplicable en casos en donde se requiere
procesamiento en tiempo real. [18]
3.4.2. Análisis de las dinámicas de series de tramos RR en la detección de AF:
Este tipo de análisis estudia la dinámica de series de temporales de intervalos RR durante
ritmo sinusal normal y durante episodios de AF, mediante el uso de parámetros extraídos a
través de modelos de identificación autoregresiva variante en el tiempo y mediciones no
lineales. Diferencias significantes de estos parámetros entre episodios de AF y episodios de
ritmo sinusal sugieren este método como fiable para la detección de AF. [17].
3.4.3. Detección de arritmia ventricular como parte de la detección automática de
AF: La detección de arritmia ventricular es comúnmente usada en detectores de AF como
parte de algoritmos más complejos que usan otros métodos adicionales para asegurar la
presencia de AF. Uno de los más usados, consiste en hacer primero una detección de QRS
basado en el valor absoluto de la señal de ECG derivada, y luego verificar cuando este
sobrepasa un umbral variable y detectar así el QRS. Una vez detectado el QRS el criterio de
arritmia comprueba la constancia de los intervalos RR permitiendo una máxima desviación del
10% respecto a un valor medio de los tramos RR pasados en los últimos 8 segundos de ECG.
De sobrepasarse este 10% de desviación se dice que hay arritmia ventricular. [19,20].
3.4.4. Coeficiente de dispersión de tramos RR en la detección de AF: El coeficiente
de dispersión se ha usado en varias oportunidades como parte de algoritmos detectores de AF.
Es una herramienta bastante útil porque en cierto modo mide que tan dispersos están los datos
desde una media, la media que generan los mismos datos analizados en ese momento; y
también mide que tan desiguales son los tramos RR unos con otros. En el caso de la AF, las
series temporales de tramos RR presentan gráficamente una serie de puntos dispersos
23
relativamente de forma uniforme, haciendo que este coeficiente tienda a incrementarse de
forma bastante razonable y se diferencie significativamente de una serie temporal de tramos
RR extraída de un paciente con ritmo sinusal normal [21]. El coeficiente de dispersión se
muestra en (2):
(2)
La desventaja que presenta este coeficiente para detección de AF es que también puede
detectar varios otros tipos de arritmias sin discriminar, ya que la mayoría de las arritmias
incluyendo AF presentan elevados coeficientes de dispersión en las series temporales de
tramos RR, por lo que el uso de este coeficiente en un algoritmo de detección de AF, debe ser
acompañado de algún otro método que discrimine los otros tipos de arritmias o que asegure la
presencia de AF [21].
3.5. MÉTODOS MIXTOS DE DETECCIÓN DE AF
Los métodos antes nombrados, en su mayoría, presentan buenos resultados en la
detección de AF pero no todos discriminan eficientemente otros tipos de arritmias, por lo que
la mayoría de los algoritmos comerciales usan al menos dos métodos de detección
combinados, como por ejemplo:

Un método de detección de AF basado en el análisis de onda P y otro basado en el
análisis de la variabilidad del ritmo cardíaco [19].

Dos métodos de detección de AF basado en el análisis de onda P [19].

Dos métodos de detección de AF basado en el análisis de la variabilidad de ritmo
cardíaco [19].
24
CAPÍTULO IV
TÉCNICAS DE PROCESAMIENTO DE LAS SEÑALES DE ECG
4.1 INTRODUCCIÓN
Procesar señales de
ECG para detectar episodios de AF, requiere un juego de
herramientas que permitan paso a paso ir adecuando dichas señales para su posterior análisis,
que asegure la presencia o no de AF. El objetivo, se centra en acondicionar las señales de
manera tal que se puedan obtener series temporales de tramos RR, obtenidas a partir de la
diferencia de tiempo que existe entre una onda R y la siguiente, en forma consecutiva. Una vez
teniendo estas series temporales, se pueden realizar análisis de comportamiento de éstas, para
detectar la presencia de AF. Pero sin embargo antes de llegar a este punto es necesario, en
primer lugar conocer las herramientas que nos permitirán generar las mencionadas series
temporales, como principios de filtrado digital para la atenuación de señales que no presentan
interés para nuestro estudio y ruido así como técnicas detección de QRS y de onda R.
4.2 SERIES TEMPORALES DE TRAMOS RR.
Las series temporales de tramos RR y su representación gráfica son una herramienta
muy útil en el estudio de la variabilidad del ritmo cardíaco, desde estudio del ritmo sinusal
normal hasta el estudio de patologías cardíacas que produzcan la alteración de este ritmo.
Esta serie esta constituida únicamente por tramos RR consecutivos obtenidos por la diferencia
de tiempo en segundos que existe entre una onda R y la siguiente del ECG, en la figura 5, se
muestra gráficamente como se obtienen dichas diferencias, donde los números del 1 al n,
significan cada una de las diferencias de tiempo que existe entre una onda R y la siguiente
(tramo RR); y en la tabla 3, se muestra numéricamente, la serie temporal de tramos RR.
25
Figura 5. Representación gráfica de la obtención de tramos RR.
TRAMO
RR 1
TRAMO
RR 2
TRAMO
RR 3
TRAMO
RR 4
TRAMO
RR 5
TRAMO
RR 6
TRAMO
RR 7
TRAMO
RR 8
0.932
seg.
0.904
seg.
0.904
seg.
0.986
seg.
0.92
seg.
0.944
seg.
0.936
seg.
0.928
seg.
Tabla 3. Serie temporal de tramos RR en segundos.
La representación gráfica de éstas series temporales, genera una nube de puntos
cuando se llevan a un plano bidimensional de latidos vs. tramos RR (en segundos). A partir de
estas gráficas es que se pueden observar los patrones de ritmo cardíaco, bien sea de un corazón
con ritmo sinusal normal o un corazón que presente algún patrón arrítmico. En la figura 6,
tenemos un ejemplo gráfico de una serie temporal de tramos RR, provenientes de un ECG con
ritmo sinusal normal. En la figura 7, se presenta un ejemplo gráfico de una serie temporal
proveniente de un ECG con un episodio de AF y en la figura 8, se muestra una gráfica similar
pero con varios episodios de AF.
26
Figura 6. Serie temporal de tramos RR de corazón con un ritmo sinusal normal.
MIT AF Database. Paciente 04043.dat.
Figura 7. Serie temporal de tramos RR con un episodio de AF.
MIT AF Database. Paciente 04043.dat.
27
Figura 8. Serie temporal de tramos RR con varios episodios de AF.
MIT AF Database. Paciente 04043.dat.
La AF, como bien se ha comentado en capítulos anteriores, tiene como una de sus
consecuencias directas la arritmia ventricular, y al observar múltiples registros de pacientes
con AF, podemos plantear los siguientes criterios básicos para el desarrollo de nuestro
algoritmo.
Tomando una ventana de N latidos:
1.- Se determina el tramo RR de máxima duración y el de mínima duración. La
diferencia entre el máximo y el mínimo en promedio va a ser de ΔRRmax segundos.
2.- La dispersión de los puntos (tramos RR), se puede considerar bastante uniforme,
de tal modo que se puede decir que no va a existir un espacio vacío mayor a ΔRRmin
segundos.
3. Van a existir al menos M diferencias de tiempo entre un tramo RR y el siguiente
mayores a 0.05 segundos, donde M es aproximadamente un 30% de N.
4. La dispersión uniforme de los puntos (tramos RR), permite detectar AF, y a su vez,
descartar otros tipos de arritmia, como el caso de las arritmias 2:1, 3:1 y 4:1, ya que estas, al
ser llevadas a una gráfica de serie temporal de tramos RR, producen una gráfica con forma de
28
diente de sierra, dejando espacios vacíos en la gráfica mayor que ΔRRmin segundos, cuestión
que no ocurre durante episodios de AF. Esta importante característica nos permitió durante el
desarrollo del software crear una estructura de programación que detecta estos dientes de
sierra y los clasifica como no AF, ayudando a la disminución de falsos positivos.
4.3 FILTRADO DIGITAL DE LOS ECG.
4.3.1 TEORÍA BÁSICA DE FILTROS DIGITALES IIR:
Los filtros de Respuesta Infinita a Impulso, o filtros IIR, de la misma manera que los
filtros FIR (Respuesta Finita a Impulsos), son sistemas LTI (lineales e invariables en el
tiempo) que recrean un amplio rango de diferentes respuestas en frecuencia.
Consideremos un sistema discreto caracterizado por la ecuación de coeficientes
invariantes en el tiempo
N
M
k 1
k 0
y(n)   ak y(n  k )   bk x(n  k )
(3)
Mediante la transformada z se puede obtener la función de transferencia caracterizada
por la ecuación (3):
M
H ( z) 
b Z
k
a Z
k
k 0
N
k 1
k
(4)
k
De esta caracterización se obtienen polos y ceros, los cuales dependen de la elección de
los parámetros del sistema bk y ak, y determinan las características de la respuesta en
frecuencia del sistema.
29
4.3.2 ESTRUCTURAS PARA SISTEMAS IIR.
Como en el caso de sistemas FIR, existen varios tipos de estructuras o realizaciones,
incluyendo estructuras en forma directa, en cascada, en celosía y celosía escalonada, algunas
de ellas con una versión transpuesta. En este caso sólo se verá la estructura en forma de directa
y su forma en cascada por mas sencillo de realizar en el DSP y ser conceptualmente similar a
las demás.
Una forma alternativa de escribir (4) es por medio de 2 funciones de transferencia
individuales en cascada, esto quiere decir:
H ( z )  H1 ( z ) H 2 ( z ) (5)
Donde H1(z) posee los ceros de H(z) y H2(z) los polos.
M
H1 ( z )   bk Z k
(6)
k 0
N
H 2 ( z )   ak Z  k
(7)
k 1
Según sea el orden en que se ubican las funciones de transferencia (6) y (7) se llegará a
uno de 2 tipos de formas directas. La ubicación de H1(z) antes que H2(z) llevará a la llamada
forma directa I, la cual requiere de M+N+1 multiplicaciones y posiciones de memoria, y M+N
sumas.
Si por el contrario se ubica H2 (z) antes que H1(z), la realización obtenida es conocida
como forma directa II. Su principal ventaja es que sólo necesita de max{M,N} posiciones de
memoria, pero el número de multiplicaciones sigue siendo M+N+1 y el número de sumas
M+N.
30
A partir de (6) y (7) se obtienen las ecuaciones de diferencias correspondientes:
N
w(n)  x(n)   ak w(n  k ) (8)
k 1
M
y (n)   bk w(n  k )
(9)
k 0
lo anterior supone que:
H ( z )  H1 ( z ) H 2 ( z ) (10)
H ( z) 
W ( z )Y ( z )
(11)
X ( z )W ( z )
Un ejemplo típico es un filtro de segundo orden. La figura 9, muestra uno en su
estructura de la forma directa II.
Figura 9. Forma Directa II de un filtro de segundo orden IIR.
El nombre de “realización en forma directa” se desprende del hecho de que aparecen
directamente de la función de transferencia (5) sin ningún tipo de reordenamiento.
31
Desafortunadamente, este tipo de estructura, de orden I y II, tienen la principal
desventaja de ser altamente sensibles a la cuantificación de sus coeficientes cuando N es muy
grande.
4.3.3. ESTRUCTURA EN FORMA DE CASCADA.
En los casos de sistemas IIR de orden superior a 2, con la función de transferencia (4),
el sistema puede ser factorizado en la cascada de subsistemas de segundo orden tal que H(z)
puede ser expresado como
k
H ( z)   H k ( z)
(12)
k 1
donde K es la parte entera de (N+1)/2. Hk tiene la forma general
bk 0  bk 1 Z 1  bk 2 Z 2
(13)
H k ( z) 
1  ak 1 Z 1  ak 2 Z 2
Como existen muchas formas de manejar los polos y ceros de (13) en secciones de
segundo orden, habrá muchas realizaciones en cascada y varias maneras de ordenar los
subsistemas resultantes.
La forma general de la estructura en cascada se muestra en la figura 10.
Figura 10. Estructura en cascada de sistemas de segundo orden.
32
4.4 TÉCNICAS BÁSICAS DE DETECCIÓN DE QRS.
El complejo QRS es un conjunto de ondas con mayor amplitud y con pendientes más
inclinadas en el ECG. El método más sencillo para detección de QRS, consiste en la
búsqueda de los puntos máximos del ECG los cuales son más elevados que un cierto umbral.
Este método es muy sensible a los corrimientos de la línea base. Sin embargo, si la línea base
es removida (empleando un filtro pasa altos), el método aún puede presentar otros tipos de
problemas:
-
El máximo de los complejos QRS puede ser alterado por el ruido.
-
El máximo de los complejos QRS no es constante y cambia por cada latido.
-
El máximo de los complejos QRS depende de la derivación.
-
La morfología de los complejos varía a lo largo del tiempo.
Para minimizar estos efectos se pueden emplear detectores de QRS con filtros pasa
banda (que minimizan el efecto del ruido) y un umbral adaptivo. Estos detectores son lo
suficientemente exacto para las aplicaciones ambulatorias.
Si la localización del complejo QRS es muy crítica (como por ejemplo en
promediaciones de señales de ECG) entonces deberán ser empleados métodos más
sofisticados.
Por lo general, en la literatura, se han propuesto un gran número de detectores QRS.
Entre los que se basan en métodos software se pueden enumerar desde los más sencillos, como
se especificó anteriormente, que emplean un umbral fijo que cuando se sobrepasa indica la
presencia de un QRS [22], hasta los más sofisticados que emplean una plantilla o modelo y
buscan el punto en que se maximiza la correlación del ECG con la plantilla [23], pasando por
aquellos que buscan un punto de alta amplitud y derivada [24]. Entre los problemas más
frecuentes que se presentan para detectar QRS podemos mencionar [25]:
33
Interferencia de red.
Ruido del contacto de electrodos.
Artefactos de movimiento.
Interferencia de la actividad eléctrica muscular.
Deriva de línea base.
Modulación de la amplitud del ECG debida a la respiración.
Ruido asociado a la electrónica de medida.
Ruido de aparatos de electrocirugía.
Los algoritmos empleados para la detección de QRS comúnmente, se basan en la
amplitud y la primera derivada del ECG, en la primera derivada únicamente, en la primera y
segunda derivada o en filtros digitales. También vale la pena destacar el uso del valor absoluto
de la primera derivada como herramienta en la detección de QRS, ya que es usada como parte
del detector de QRS del software desarrollado en este trabajo de investigación y que se explica
con mayor detalle en el siguiente capítulo.
Si el detector no ha sensado la presencia del QRS en su verdadera posición se dice que
se ha producido un falso negativo mientras que si ha detectado una onda (o ruido) que no
corresponde a un QRS se dice que se ha producido un falso positivo. A partir de aquí puede
darse cualquier combinación de falsos positivos y negativos que pueden alterar completamente
la información que se desea extraer, cuantificar o analizar procedente del detector de QRS.
34
CAPÍTULO V
MATERIALES Y MÉTODOS
5.1 INTRODUCCIÓN
A continuación explicaremos como se desarrollaron cada uno de los métodos y
procedimientos empleados, que conforman el algoritmo detector de AF tales como: obtención
de la señal de ECG, su respectivo filtrado digital, detección de QRS, obtención de las series
temporales de tramos RR y detección de AF a partir de dichas series. Sin embargo, primero es
necesario explicar las herramientas que permitieron la evaluación de nuestro algoritmo como
lo son las bases de datos MIT AF Database, y MIT Arrhytmia Database, junto con sus
características técnicas.
5.2 BASE DE DATOS “MIT AF DATABASE”
La MIT AF Database es una base de datos con licencia de libre uso disponible en
Internet la cual consta de 25 registros de ECG de 10 horas cada uno [7]. Cada uno de los
pacientes dentro de las 10 horas presentan episodios de AF, unos más que otros, y con la
importante característica de que se observa el inicio de las AF y su final, gracias a un archivo
de anotaciones que indica el instante de estos eventos. Sus características son:

Número de canales: 2, DII y V1.

Frecuencia de muestreo: 250 Hz.

Resolución: 12 bits.

Ancho de banda de grabación: 0.1 a 40Hz aprox.
Además de esto, cada registro de paciente esta conformado por 4 archivos:
35

Un archivo .dat que es donde se encuentra el ECG digitalizado, en formato binario.

Un archivo .hea que es un archivo de cabecera donde se encuentra la frecuencia de
muestreo, resolución, ganancia de los amplificadores del registrador, valores iniciales
de ECG, hora de inicio del registro y número de canales.

Un archivo .atr que consta de una serie de anotaciones acerca de algún evento y a la
hora que ocurrió. Para el caso de esta base de datos hay 3 tipos de anotaciones: ritmo
normal (N), fibrilación auricular (AF), y flúter auricular (AFL).

Un archivo .qrs que indica en que momento ocurrió cada QRS. Todos los registros de
pacientes a excepción de 2, contienen este archivo de forma no auditada, o sea, que los
complejos QRS fueron detectados por un detector automático y no se auditaron
manualmente.
5.3 BASE DE DATOS “MIT ARRHYTMIA DATABASE”
La MIT Arrhytmia Database, es una base de datos con licencia de libre uso, también
disponible en Internet que cuenta con 48 registros de ECG con media hora de duración cada
registro [6]. Cada paciente dentro de esta hora presenta episodios arrítmicos de diversos tipos,
y en algunos de ellos hay episodios de AF. La razón de uso de esta base de datos, es que es
necesaria la comprobación del algoritmo con otros tipos de arritmias distintas a la AF para así
verificar que tan selectivo es. Para este objetivo se escogieron 10 registros al azar de esta base
de datos, entre aquellos que no presentaban episodios de AF, mostrados en la tabla 4. Esta
comprobación se realiza también gracias a un archivo de anotaciones que permite verificar que
tipo de arritmia es la que ocurrió en un determinado momento. Sus características son:

Número de canales: 2, DII y V1.

Frecuencia de muestreo: 360 Hz.

Resolución: 11 bits.

Ancho de banda de grabación: 0.1 a 60Hz aprox.
36
Además de esto, cada registro de paciente está conformado por 3 archivos:

Un archivo .dat que es donde se encuentra el ECG digitalizado, en formato binario.

Un archivo .hea que es un archivo de cabecera donde se encuentra la frecuencia de
muestreo, resolución, ganancia de los amplificadores del registrador, valores iniciales
de ECG, hora de inicio del registro y número de canales.

Un archivo .atr que consta de una serie de anotaciones acerca de algún tipo de arritmia
y a la hora que ocurrieron.
REGISTRO
101
102
107
205
207
208
212
230
232
234
Tabla 4. Registros seleccionados de MIT Arrythmia Database.
5.4 CRITERIOS DE EXCLUSIÓN
Para efectos del estudio de la MIT AF Database se analizaron todos los registros, 25 en
total, pero se excluyeron ciertos bloques, mostrados en tabla 5, bien sea por ruido extremo, por
desconexión de algún electrodo, o por alguna otra causa. Cada bloque de grabación
corresponde a 10.24 segundos de ECG.
37
Registro
00735
03665
04043
04936
05091
06453
08378
08405
08434
08455
Causa
Casi todas las señales no están disponibles.
Casi todas las señales no están disponibles.
Bloque 39 ilegible.
Este fue el único registro cuyas señales estuvieron
previamente disponibles.
Anotaciones de QRS corregidos disponibles (archivo .qrsc)
Registro finaliza cerca de las 9 horas y 15 minutos.
No hay hora de inicio.
No hay hora de inicio y el bloque 1067 es ilegible.
Bloques 648, 857, y 894 están ilegibles.
No hay hora de inicio.
Tabla 5. Listado de Registros con errores. MIT AF Database.
En el caso de la MIT Arrhytmia Database, no está documentado cuales registros o
bloques de registros presentan fallas, pero para nuestros efectos, de los 10 registros que se
escogieron al azar para analizar nuestro algoritmo, ninguno presento problemas.
5.5 SOFTWARE DESARROLLADO
Todo el software fue desarrollado en Matlab versión 6.5. El computador usado para el
estudio fue un AMD Athlon de 2.4Ghz con 512 MB de memoria RAM y 512K de memoria
caché. El software en general esta compuesto por varias etapas:

Obtención de la señal de ECG.

Filtrado digital

Detección de QRS

Obtención de las series temporales de tramos RR.

Detección de AF.
En las siguientes secciones se explicaran cada una de las etapas que conforman el software
desarrollado.
38
5.5.1 OBTENCIÓN DE LA SEÑAL DE ECG
Esta etapa consistió en tomar el ECG digitalizado de cada paciente en su formato
original (formato 212), el cual es un formato de 12 bits para ambas bases de datos usadas y
convertirlo a en un arreglo de datos para uso en Matlab. Este arreglo de datos consiste en una
matriz donde cada dato es una muestra del ECG en milivoltios y la longitud de esta, va a
depender de cuantas muestras se vayan a estudiar. Un ejemplo de este arreglo, se puede ver en
la tabla 6. Para nuestro caso, el estudio del algoritmo se realizó en tramos de 2 horas. A su vez,
el número de columnas de este arreglo va a depender del número de canales que posea la base
de datos, para nuestro caso, ambas bases de datos poseen dos canales de ECG. Vale la pena
destacar que aunque una base de datos posee resolución 12 bits y la otra 11 bits, ambas fueron
almacenadas en formato de 12 bits. Para la conversión, no se desarrollo ningún bloque de
programación ya que los mismos proveedores de la base de datos en Internet [6] proveen el
código para leer la base de datos y convertirla a un arreglo de datos de Matlab expresado en
milivoltios. El nombre del archivo es rddata.m.
Una vez obtenida la matriz de datos podemos graficarla en un plano amplitud vs.
tiempo como se muestra en la figura 11, con la amplitud mostrada en milivoltios y el tiempo
en segundos. El vector del tiempo se obtiene al multiplicar el número de muestras por la
frecuencia de muestreo.
39
Tabla 6. Ejemplo de un tramo de ECG digitalizado mostrado en Matlab.
Figura 11. Ejemplo gráfico de un tramo de ECG digitalizado mostrado en Matlab.
40
5.5.2 FILTRADO DIGITAL
El filtrado digital aplicado a ambas bases de datos, se orientó en su medida a un
filtrado que facilitará la detección de los complejos QRS, para luego detectar onda R y por
último proceder a generar las series temporales de tramos RR. El complejo QRS en la mayoría
de los casos es detectado después de un filtrado pasa-banda de 3-30Hz, por lo que se procedió
a usar un filtro Butterworth pasa-banda de 3-30 Hz, y tanto el filtro pasa-bajo como el pasaalto usados fue de orden 4, ya que este orden fue el que presentó la mejor relación filtrado tiempo de procesamiento, factor importante a la hora de desarrollar algoritmos aplicables a
procesamiento en tiempo real. Matlab permite realizar el filtrado con unas pocas líneas de
programación como las que se presentan a continuación:
canal = 1;
Wn = 125;
W1 = 3/Wn;
W2 = 30/Wn;
Ws = [W1 W2];
[B,A] = BUTTER(orden,Ws);
Yf =filter(B,A,M(:,canal));
Donde: M = Matriz con el ECG Digitalizado con sus respectivos canales 1 o 2.
Wn = frecuencia de muestreo divida entre 2.
Orden = Orden del Filtro.
W1 = Frecuencia de corte pasa-alto.
W2 = Frecuencia de corte pasa-bajo.
[Ws] = Frecuencias de corte pasa-banda.
[B,A] = Coeficientes del filtro.
Yf = ECG Filtrado.
BUTTER = Función de matlab para generar los coeficientes de un filtro Butterworth.
Filter = Función de matlab para aplicar un filtro con determinados coeficientes.
41
Una vez que se le dan las instrucciones a matlab para que diseñe un filtro pasa-banda
de 3 a 30 Hz Butterworth de 4to orden, este arroja los siguientes coeficientes, para luego
aplicarle el filtrado a la señal deseada mediante la instrucción filter.
A = [1
-2.9877
B = [0.076718
3.399
0
-1.7943
-0.15344
0
0.38519]
0.076718]
En la figura 12, se muestra un ejemplo gráfico de la señal de ECG mostrada en la
figura 11, después de ser pasada por el filtro antes mencionado.
Figura 12. Ejemplo de un tramo de ECG filtrado.
42
5.5.3 DETECCIÓN DE QRS
La detección de QRS se llevo a cabo en varias etapas. Primero, teniendo la señal ya
filtrada, se le aplicó la 1ra derivada, luego se le sacó el valor absoluto, y luego se compararon
los picos más altos de ésta con un umbral adaptable. [19].
Como bien sabemos, el complejo QRS, es la parte del ECG que presenta las pendientes
más pronunciadas (tramo QR y tramo RS). Esta importante característica nos permite aplicar
el uso de la 1era derivada, ya que nos ayuda a identificar con más exactitud la presencia de
complejos QRS, inclusive en tramos de ECG que posean altos valores de ruido. En la figura
13, se muestra el resultado de aplicar la 1era derivada a la señal de ECG filtrada, mostrada en
la figura 12.
Figura 13. Ejemplo de la 1ra derivada de un tramo de ECG filtrado.
El aplicar valor absoluto a la señal de ECG filtrada y derivada, como se muestra en la
figura 14, permite tomar los picos más pronunciados de la señal de ECG ubicada en el
semiplano negativo y trasladarlos al semiplano positivo. Esto se hace con el objetivo de tomar
43
los picos del semiplano positivo y unirlos con el negativo, para luego compararlos con un
umbral adaptable. Esta técnica presenta muy buen desempeño para casos cuando se tienen
ECG adquiridos con electrodos invertidos. A su vez, presenta excelente desempeño cuando se
desea detectar QRS en cualquiera de las 3 derivaciones estándares y aumentadas.
Figura 14. Ejemplo del valor absoluto de la 1ra derivada de un tramo de ECG filtrado.
Una vez que se tiene el valor absoluto de la señal ya filtrada y derivada, se procede a la
detección del QRS, el cual es logrado de una forma bastante sencilla. Se busca muestra por
muestra cual de estas sobrepasa el umbral variable. Dicho umbral variable, varía mediante la
suma de los últimos dos picos máximos que sobrepasaron el umbral y se divide entre dos.
Una vez que una muestra sobrepasa dicho umbral basado en los 2 picos máximos anteriores se
abre una ventana de 0.2 segundos hacia la derecha y se busca el punto máximo, que para
nuestros efectos va a ser nuestro QRS detectado y onda R, porque en realidad lo que nos
interesa es hallar la onda R para luego generar nuestra serie temporal de tramos RR. Una vez
detectada la onda R, se va anotando en una matriz el momento en que ocurrió la onda R. Por
último, después de que se buscó nuestro punto máximo dentro de la ventana de 0.2 segundos,
el programa va al final de esta ventana, y abre otra ventana de 0.2 segundos hacia la derecha y
44
sigue su búsqueda, muestra a muestra, hasta que nuevamente se encuentra un punto que
sobrepase el umbral. Vale la pena indicar que el umbral adaptable comienza a trabajar con un
valor predeterminado, en el momento del inicio del programa, y como se menciono
anteriormente empieza a variar con la suma de los 2 picos máximos anteriores (las dos ondas
R anteriores) dividido entre dos. La figura 15 muestra como el umbral variable se va
adaptando con respecto a la amplitud de las dos últimas ondas R.
Figura 15. Detección de QRS mediante umbral variable.
5.5.4 SERIE TEMPORAL DE TRAMOS RR
En el momento que se detectan los complejos QRS y las ondas R en un arreglo de
datos, se van almacenando el momento en que ocurre dicha onda R, de manera tal, que
tomando este registro y restando cada valor con su valor anterior vamos a obtener nuestra serie
temporal de tramos RR, para un tramo de señal de ECG determinado. La tabla 7, muestra un
ejemplo de una serie temporal de tramos RR generada a partir del arreglo de datos que
almacena el momento de ocurrencia de las ondas R; y en la figura 16, se puede apreciar como
es la representación gráfica de una serie temporal de tramos RR, donde el eje horizontal
45
representa el número del latido y el eje vertical representa la duración entre un latido y otro
(tiempo RR).
Tabla 7. Serie Temporal de tramos RR.
Figura 16. Representación gráfica de una serie temporal de tramos RR.
MIT AF Database. Paciente 04043.dat.
46
5.5.5 ALGORITMO DE DETECCIÓN DE AF
Una vez obtenidas las series temporales de tramos RR se procedió al estudio gráfico de
estas. Como se mencionó en el capítulo anterior, después de un minucioso proceso de
observación, registro a registro, de la MIT AF Database y de la MIT Arrhytmia Database, se
obtuvieron 4 hipótesis para la elaboración de nuestro algoritmo.
El algoritmo trabaja con una ventana de 35 latidos que se desplaza latido a latido y
realiza las siguientes operaciones:
1. – Cada vez que se desplaza la ventana se realiza una búsqueda entre los 35 tramos
RR en estudio, y se selecciona cual es el que tiene menor duración y el que tiene mayor
duración. Si la diferencia entre este máximo y este mínimo sobrepasa los 0,15 segundos, el
algoritmo sigue al siguiente paso, si no la ventana se desplaza un latido hacia adelante y se
repite el procedimiento.
2.- Teniendo dicha diferencia mayor a 0,15 segundos, se procede a realizar la prueba
de dispersión de puntos, la cual nos permite verificar que tan dispersos están cada uno de los
demás tramos RR en el plano latido – duración tramo RR. Esto se logra haciendo un conteo,
de cuantas diferencias mayores a 0.05 segundos existen entre cada tramo RR y el que le sigue
dentro de la ventana en estudio. Si hay una cantidad mayor o igual a 10 diferencias mayores a
0,05 segundos, el algoritmo sigue al siguiente paso, de lo contrario, la ventana se desplaza
hacia adelante y vuelve al paso 1.
3.- Luego se continua con el test de arritmias, para descartar arritmias del tipo 2:1, 3:1
y 4:1, que como comentamos en el capítulo anterior, son arritmias que producen gráficas en el
plano latido – duración tramo RR, con forma de diente de sierra, y que dejan espaciamientos
en dicho plano mayores a 0,1 segundos cuestión que no ocurre durante AF. Por lo general este
tipo de arritmias tienen comportamiento similar al de la figura 16, donde se muestra el cambio
de un ritmo normal a una arritmia 3:1, y al igual que las arritmias 2:1 y 4:1, forman el diente
de sierra antes mencionado. La técnica que se empleo en este algoritmo para descartar este
47
tipo de arritmias, consistió en crear una pequeña ventana vertical de 0,1 segundos que se
desplaza verticalmente, dentro de otra ventana de 0,2 segundos en pasos 0,01 segundos desde
el punto más inferior de la gráfica, (aprox. desde 0,4 hasta 0,6 segundos en la figura 17). Si
mientras se desplaza esta ventana en sentido vertical se detecta un espacio vacío de 0.1
segundos, se asume que hay un diente de sierra (arritmia 2:1, 3:1 o 4:1), entonces la ventana
horizontal se desplaza hacia adelante un latido y vuelve al paso 1, de lo contrario, significa
que estamos en presencia de un episodio de AF y se emite la alarma definitiva de AF. Todo
esto se realiza dentro de la ventana en estudio de 35 latidos.
Figura 17. Serie temporal de tramos RR con un episodio de arritmia 3:1
MIT AF Database. Paciente 04043.dat.
Vale la pena destacar que fue necesario evaluar todo el proceso de detección de AF
bajo varios esquemas, desplazando la ventana de 35 latidos de 1en 1, de 2 en 2, de 5 en 5 y de
35 en 35 latidos, para analizar cual desplazamiento es el más eficiente, donde el tiempo de
procesamiento juega un papel importante. Por otro lado, la ventana de 35 latidos fue escogida
de este tamaño, ya que ésta medida fue la que brindó el mejor rendimiento del algoritmo con
la menor cantidad de latidos; cantidades inferiores disminuían el rendimiento y usando
cantidades superiores, era poco significativo el incremento del rendimiento. En el siguiente
capítulo se analizan y discuten los resultados del algoritmo usando los 4 tipos de
desplazamiento de ventana.
A continuación mostramos un flujograma en la figura 18, con la descripción resumida
del funcionamiento, en forma gráfica, del algoritmo detector de AF.
48
INICIO
Desplazar
ventana 1, 2, 5 ó
35 latidos
Ventana de 35
Latidos
Alarma AF = OFF
NO
¿ Max RR – Min RR
> = 0.15 segundos ?
SI
Test de dispersión
¿Hay más de 10
diferencias > 0.05
seg. entre RR´s
consecutivos ?
NO
SI
Test de Arritmias
¿Existe un espacio
vacío mayor a 0.1
segs.?
NO
SI
Alarma AF = ON
Figura 18. Flujograma de funcionamiento del algoritmo detector de AF.
49
En el flujograma de funcionamiento se puede ver claramente, de manera gráfica, cada
uno de los pasos explicados anteriormente acerca de cómo se ejecuta el algoritmo detector de
AF. La estructura de programación lo que hace en realidad es tener control de la alarma de
AF, tanto de su activación como su desactivación. Como se mencionó anteriormente, las
pruebas del algoritmo se realizaron desplazando la ventana de 35 latidos de 1 en 1, 2 en 2, 5 en
5 y 35 en 35, razón por la cual en el flujograma se muestra el bloque que dice “Desplazar
ventana 1, 2 ,5 ó 35 latidos”, sin embargo esto es un ajuste inicial del algoritmo que no varia
durante su funcionamiento y cada de una de las pruebas se realizaron con valores
predeterminados de 1, 2, 5 y 35 desplazamientos.
50
CAPÍTULO VI
EVALUACIÓN DEL ALGORITMO
6.1 INTRODUCCIÓN
El grado de confiabilidad de un algoritmo se puede definir como la capacidad que tiene
este de arrojar un resultado o diagnóstico verdadero, con la menor cantidad de errores
posibles, en otras palabras, mientras menos falsos diagnósticos emita el algoritmo, más
confiable es, y la mejor forma de demostrar esta confiabilidad es usando
indicadores
estadísticos de medición que permitan demostrar de forma numérica que tan confiable es el
algoritmo. Para nuestro caso los indicadores usados fueron exactitud, sensibilidad y
especificidad, comúnmente usados en el análisis de algoritmos que detectan patrones de algún
tipo. Además de esto, estos indicadores permiten comparar los resultados de nuestro algoritmo
con los de otros, de una manera justificada y argumentada.
En este capítulo mostraremos los resultados del algoritmo detector de AF. Primero
analizaremos los resultados de los 25 registros de la MIT AF Database y luego los de la MIT
Arrythmia Database. Nuestra técnica de medición esta basada en número de latidos que tienen
o no AF y número de latidos que corresponden a falsas alarmas. Nuestras comparaciones se
hacen a través de los archivos de anotaciones que proporciona la base de datos, los cuales nos
indica el comienzo y el final de un episodio de AF.
6.2 DEFINICIÓN DE PARÁMETROS UTILIZADOS
6.2.1 Verdaderos Positivos (VP): Número de latidos con AF positivo detectados por el
algoritmo como AF positivo. (AF detectada como AF).
51
6.2.2 Verdaderos Negativos (VN): Número de latidos con AF negativo detectados por
el algoritmo como AF negativo. (no AF detectada como no AF).
6.2.3 Falsos Positivos (FP): Número de latidos con AF negativo detectados por el
algoritmo como AF positivo. (no AF detectada como AF).
6.2.4 Falsos Negativos (FN): Número de latidos con AF positivo detectados por el
algoritmo como AF negativo. (AF detectada como no AF).
Para los estudios de la efectividad y confiabilidad de algoritmos de este tipo
generalmente se usan 3 indicadores estadísticos, exactitud, sensibilidad y especificidad que se
explican a continuación. [26]
6.2.5 Exactitud: Se puede definir para nuestro caso como un parámetro de medición
que indica que tan exacto es nuestro algoritmo en la detección de AF expresado en porcentaje
y se calcula dividiendo la suma de los latidos detectados correctamente entre la suma de todos
los latidos, falsos y no falsos. Se expresa como:
(14)
6.2.6 Sensibilidad: Para nuestro caso es la probabilidad de clasificar correctamente la
presencia de AF, es decir, la probabilidad de que para una AF verdadera se detecte AF
verdadera en el algoritmo. La sensibilidad es, por lo tanto, la capacidad del algoritmo para
detectar la presencia de AF expresada en porcentaje. Su formula es:
(15)
52
6.2.7 Especificidad: Es la probabilidad de detectar correctamente la no presencia de
AF para nuestro caso, es decir, es la probabilidad que un episodio de no AF sea detectada por
el algoritmo como no AF. En otras palabras, se puede definir la especificidad como la
capacidad para detectar verdaderos negativos. La podemos expresar como:
(16)
6.3 ANÁLISIS DE RESULTADOS
Como se mencionó anteriormente este análisis de resultados se basa en mostrar el
desempeño del algoritmo haciendo uso de los instrumentos ya explicados como exactitud,
sensibilidad y especificidad. Esta medición se evaluó bajo 4 esquemas en ambas bases de
datos, desplazando la ventana en estudio cada 1, 2, 5 y 35 latidos. A continuación mostramos
la tabulación de los resultados correspondientes a la MIT AF database (Tablas de la 8 la 11)
y luego su discusión.
53
Tabla 8. Resultados de detección de AF usando 1 latido de desplazamiento de
ventana. 25 registros analizados de MIT AF Database.
54
Tabla 9. Resultados de detección de AF usando 2 latidos de desplazamiento de
ventana. 25 registros analizados de MIT AF Database.
55
Tabla 10. Resultados de detección de AF usando 5 latidos de desplazamiento de
ventana. 25 registros analizados de MIT AF Database.
56
Tabla 11. Resultados de detección de AF usando 35 latidos de desplazamiento de
ventana. 25 registros analizados de MIT AF Database.
57
Como se puede observar, el desempeño del algoritmo es aceptable y es casi el mismo
para los casos de desplazamiento de ventana cada 1, 2 y 5 latidos mostrados en las tablas 8, 9
y 10 respectivamente, ya que en promedio arrojó resultados de un 95% de exactitud, 92% de
sensibilidad y 97% de especificidad aproximadamente para los 3 casos, por lo que puede ser
usado bajo estos 3 esquemas, sin comprometer el rendimiento del algoritmo, pero dependiendo
también cuales vayan a ser las aplicaciones de este y de cada cuanto se requiera una alarma de
AF, cada 1, 2 ó 5 latidos. Para el caso de desplazamiento de 35 latidos mostrado en la tabla
11, la exactitud disminuye a un 86%, la sensibilidad a un 83% y la especificidad a un 87%
aproximadamente; haciendo el algoritmo no tan efectivo. La causa de esta disminución de la
eficiencia se debe en gran parte a que cuando una ventana es analizada por el algoritmo, y este
emite un falso diagnóstico, son 35 latidos los que se diagnostican de forma errada, a diferencia
de los métodos de 1, 2 5 latidos de desplazamiento, donde el diagnóstico errado de una
ventana implica solo 1,2 y 5 latidos respectivamente, los que se contabilizan como falsos
positivos y falsos negativos, en otras palabras, la cantidad de latidos diagnosticados de forma
errada será igual a la cantidad de latidos en estudio (tamaño de la ventana), por lo que
incrementar el tamaño de esta ventana hasta valores de 35 latidos, compromete la eficiencia
del algoritmo considerablemente. A continuación se muestran los resultados correspondientes
a la MIT Arrythmia Database (Ver tablas de la 12 a la 15). Vale la pena destacar que estos 10
registros de ECG usados de la MIT Arrythmia Database, presentaban arritmias no causadas
por AF, ya que el objetivo era poner a prueba el algoritmo con otros tipos de arritmias a parte
de las arritmias no causadas por AF también presentes en la MIT AF Database, debido a que
generalmente los pacientes que sufren de AF también sufren pequeños episodios de otros tipos
de arritmias, y que aunque estos 10 registros se escogieron al azar, se sortearon dentro de los
que poseían arritmias no causadas por AF.
58
Tabla 12. Resultados de detección de AF usando 1 latido de desplazamiento de
ventana. 10 registros analizados de MIT Arrythmia Database.
Tabla 13. Resultados de detección de AF usando 2 latidos de desplazamiento de
ventana. 10 registros analizados de MIT Arrythmia Database.
59
Tabla 14. Resultados de detección de AF usando 5 latidos de desplazamiento de
ventana. 10 registros analizados de MIT Arrythmia Database.
Tabla 15. Resultados de detección de AF usando 35 latidos de desplazamiento de
ventana. 10 registros analizados de MIT Arrythmia Database.
60
Al igual que la MIT AF Database, los resultados generados por el algoritmo usando la
MIT Arrythmia database fueron también aceptables para los casos de desplazamiento de
ventana de 1,2 y 5 mostrados en las tablas 12, 13 y 14 respectivamente, inclusive un 2 a 3%
mejores , ya que en promedio arrojó resultados de un 98% tanto de de exactitud como de
especificidad aproximadamente, para los 3 casos, por lo que puede ser usado bajo estos 3
esquemas, sin comprometer el rendimiento del algoritmo, pero sin embargo el
comportamiento del algoritmo siguió siendo menos efectivo para el caso de desplazamiento de
ventana de 35 latidos mostrado en la tabla 15, con un 89% aproximadamente tanto de
exactitud como de especificidad, 3% mejor que con la MIT AF Database. Igualmente como
ocurrió con la MIT AF Database , la causa de esta disminución de la eficiencia son las
mismas, y se deben en gran parte a que cuando una ventana es analizada por el algoritmo, y
este emite un falso diagnóstico, son 35 latidos los que se diagnostican de forma errada, a
diferencia de los métodos de 1, 2 y 5 latidos de desplazamiento, donde el diagnóstico errado
de una ventana implica solo 1, 2 y 5 latidos respectivamente, los que se contabilizan como
falsos positivos y falsos negativos.
En la tabla 16 podemos observar una comparación de los valores de exactitud,
especificidad y sensibilidad de cada una de las modalidades usadas (desplazamiento de
ventana cada 1,2,5 y 35 latidos) en cada base de datos.
MIT AF Database
MIT Arrythmia Database
Desplazamiento de
ventana
Exactitud
Especificidad
Sensibilidad
Exactitud
Especificidad
Sensibilidad
Cada 1 latido
95.22%
92.65%
97.05%
98.22%
no calculable
98.22%
Cada 2 latidos
95.12%
92.55%
96.95%
97.88%
no calculable
97.88%
Cada 5 latidos
94.93%
92.37%
96.76%
97.22%
no calculable
97.22%
Cada 35 latidos
85.71%
83.38%
87.36%
88.57%
no calculable
88.57%
Tabla 16. Comparación de resultados en cada modalidad de desplazamiento de ventana, para
la MIT AF Database y MIT Arrythmia Database.
Respecto al tiempo de procesamiento del algoritmo, se obtuvo que este procesa cada
ventana de 35 latidos en aproximadamente 129ms (usando el computador mencionado en el
capítulo V), lo cual es un tiempo aceptable para ejecutar el algoritmo en cualquiera de sus
61
métodos (1, 2, 5 y 35 latidos), ya que durante nuestro estudio nunca se llegaron a apreciar
tramos RR por debajo de los 129 ms, debido a que eso significa un ritmo cardíaco muy
acelerado (480 latidos por minutos aproximadamente). Un estudio de las bases de datos
utilizadas indica que valor RR mínimo hallado en ambas base de datos, es aproximadamente
de 200ms. El valor RR promedio para la MIT AF Database es de 0.737 segundos y el valor
RR promedio para la MIT Arrythmia Database es de 0.825 segundos. Por lo tanto, al tener una
velocidad de procesamiento de 129ms, comparado con los valores mínimos y promedios RR
de las base de datos podemos categorizar este algoritmo como un algoritmo de detección de
AF implementable en tiempo real.
62
CAPÍTULO VII
CONCLUSIONES
El diagnóstico de AF usando análisis de series temporales de tramos RR demostró ser
un modo efectivo en este trabajo de investigación, así como también otras investigaciones lo
han demostrado. La ventaja de detectar AF usando solo tramos RR es que no se necesita una
señal de ECG de alta resolución, como por ejemplo la de la base de datos usada, que fue de
unos 250 y 360Hz, haciendo que no se requieran un manejo de volumen de datos grandes. Por
otro lado con la técnica desarrollada en éste trabajo, se obtuvo un tiempo de procesamiento de
aproximadamente 129ms, que hace que esté ubicado dentro de la categoría de “Detector de AF
en tiempo real”.
Al ubicar este algoritmo dentro de esta categoría, el número de posibles aplicaciones
aumenta considerablemente en comparación con un algoritmo que no procese en tiempo real,
ya que sería ideal para aplicaciones de cardioversión, bien sea con equipos externos o
implantables, equipos portátiles de detección de AF ofrecido como una solución para aquellos
pacientes que no saben que están atravesando un episodio de AF, así como otro tipo de
aplicaciones clásicas basadas en registros de ECG previamente adquiridos a través de
dispositivos de grabación como los Holters. También cabe mencionar, que debido a la
sencillez del procesamiento, no se requiere un robusto hardware de elevadas prestaciones, ya
que como bien se mostró en el desarrollo del trabajo, el filtrado de ECG, detección de QRS, y
detección de AF, no usaron pesadas estructuras de programación, siendo el filtrado de ECG de
tan solo de 4to orden, la detección de QRS consistió solo en comparar amplitudes del valor
absoluto del ECG con un umbral adaptable, y la detección de AF se basó únicamente en el
análisis básico de patrones de comportamiento de una serie de tramos RR generadas por
apenas 35 latidos.
A parte de esto, cabe también mencionar que todas estas ventajas
mencionadas anteriormente junto con el creciente número de casos de AF a nivel mundial
hace la importancia de este tipo de estudios más relevante, ya que se logró desarrollar un
63
algoritmo eficiente, de baja complejidad, que se ofrece como parte de una solución a la
detección y tratamiento de la AF.
Las cifras promedio de eficiencia del algoritmo, analizando ambas bases de datos,
estuvieron ubicadas alrededor del 96% de exactitud, 93% de sensibilidad y 97% de
especificidad para las técnicas con mejor desempeño, las cuales consistieron en desplazar la
ventana en estudio de 1 en 1, de 2 en 2 y de 5 en 5 latidos, demostrándonos de esta manera que
el número de falsas detecciones fue bastante reducido, y que el índice de confiabilidad es
bastante elevado. Por otro lado la técnica de desplazar la ventana en estudio de 35 en 35
latidos, produjo cifras aproximadas de 87% de exactitud 83% de sensibilidad y 88% de
especificidad, por lo que quedo demostrado que con desplazamientos cortos de ventana (cada
1, 2 o 5 latidos) la eficiencia del algoritmo es mucho mejor y es la que se recomienda. Al
tener entonces índices de confiabilidad semejantes para los 3 tipos de desplazamiento se puede
escoger uno de estos de acuerdo al tipo de aplicación y limitaciones de procesamiento, en otras
palabras si se requiere una detección cada 5 latidos se puede usar un procesador con menos
recursos, inclusive un microprocesador o microcontrolador trabajando en modo dedicado, ya
que se tendrán 5 latidos para poder procesar la ventana en estudio.
Como recomendación para futuros estudios podemos mencionar que sería bastante útil
seguir trabajando en el análisis de AF mediante el uso de series temporales, tratando de
aumentar al máximo sus valores de exactitud, sensibilidad y especificidad, para así hacerlo lo
más confiable posible, así como también seguir experimentando con un número mayor de
bases datos. A su vez, como lo recomiendan otros autores, los investigadores de esta área
deben centrase no solo en la detección, sino en la predicción, como se esta realizando hoy en
día, usando variabilidad de ritmo cardíaco y morfología de onda P,
para estimar la
susceptibilidad de iniciarse o terminarse espontáneamente un episodio de AF, herramienta
muy útil a la hora de ejecutar o no algún tratamiento.
64
REFERENCIAS BIBLIOGRAFICAS
[1] Guyton A. Hall E. “Tratado de Fisiología Médica”. Novena Edición. Mc Graw Hill
Interamericana. México. 1998.
[2] M. Gallagher, J. Camm. “Classification of atrial Fibrillation”, American Journal of
Cardiology, N° 82, 18N-28N. 1998.
[3] JP. Couderc, S. Fischer, A. Costello, JP. Daubert, JA. Konecki, W. Zareba. “ Wavelet
Analysis of Spatial Dispersion of P-wave Morphology in Patients Converted from Atrial
Fibrillation”. Computers in Cardilogy. N° 26. pp 699-702. 1999.
[4] S. Walsh, G. Manoharan, J. Santos, O. Escalona, J. Allen, J. Anderson, A. Adgey. “Atrial
Defibrillation Using Low Energy Rectangular Biphasic Waveform – Asymmetric Pulses
Allow Voltage Reduction”, Irish Journal of Medical Science. Indexada en el SCI, vol. 171,
Supp 1, pp. 46. 2002.
[5] J.Santos, S. Walsh, N. Evans, O. Escalona, G. Manoharan, , J. Anderson, J. Allen, A.
Adgey. “Transdermal Atrial Defibrillator with Bipolar Low Tilt Pulses”. Electronic Letters,
Vol. 39, Nº 25, pp 1789-1790. 2003.
[6] Fibrilación Auricular. Guías Clínicas 2004; 4 (47). http://www.fisterra.com/guias2/fa.asp.
Septiembre 2004.
[7] http://www.physionet.org. Junio 2004.
[8] Tribuna Medica. Volumen 103, número 9. Año 2003.
http://www.medilegis.com/BancoConocimiento/T/TM103N9_contenido/Contenido.htm
[9] Shands Healthcare. Fibrilación y fluter auricular.
http://www.shands.org/health/spanish/esp_ency/article/000184.htm
[10] S. Poli, V. Barbaro, P.Bartolini , G. Calcagnini, F. Censi. Prediction of atrial fibrillation
from surface ECG: review of methods and algorithms. Dipartimento di Informatica e
Sistemistica, Università degli Studi “La Sapienza”, Rome, Italy. Laboratorio di Ingegneria
Biomedica, Istituto Superiore di Sanità, Rome, Italy. Ann Ist Super Sanità 2003;39(2):195203.
[11] Clavier L.,Boucher J.M., Blanc J.J.,"P-wave parameters for atrial fibrillation risk
detection", 18th annual international conference of the IEEE Engineering in Medicine and
Biology society. Vol. 4, pp 1367-1368. 1996.
[12] Rieta, JJ; Zarzoso, V; Millet-Roig, J; Garcia-Civera, R; Granell Ruiz, R; “Atrial activity
extraction base don blind source separation as an alternative to QRST cancellation for atrial
fibrillation analysis”. Computers in cardiology N. 27. pp 69-72. 2000.
65
[13] Langley, P; Bourke JP, Murray A. “Frequency analysis of atrial fibrillation” Computers
in cardiology. Vol. 27. pp 65-68. 2000.
[14] Díaz, M.; Escalona, O.; Hernández, A.; Mora, F. “A Comparative Study of Three
Techniques for QRS Cancellation in the ECG". Technology and Health Care. International
Journal of Health Care Engineering. Vol. 9. pp. 202 - 204. 2001.
[15] Stridh, M; Sornmo, L; “Spatiotemporal QRST Cancellation Techniques for análisis of
atrial fibrillation: Methods and performance”. Computers in cardiology. Vol. 25. pp 633-636.
1998.
[16] Giraldo, BF; Ferre, C; Laguna, P; Jane, R; Martin, M; Caminal, P. “Validation of
algorithm for atrial fibrillation and flutter diagnosis”. Computers in cardiology. Vol 24. pp
485-488. 1997.
[17] Cerutti, S; Mainardi, LT; Porta, A; Bianchi, AM. “Analisys of the dynamics of RR
interval series for the detection of atrial fibrillation episodes”. Computers in cardiology. Vol
24. pp 77-80. 1997.
[18] J. Díaz, C. González, O. Escalona. “Un enfoque no lineal de la variabilidad del ritmo
cardíaco del ECG con fibrilación auricular”. II Congreso Colombiano de Bioingeniería e
Ingeniería Biomédica. Avances en Cardiología N.143. 2005.
[19] I. Christov, G. Bortolan, I. Daskalov. “Sequential Analysis for Automatic Detection of
Atrial Fibrillation and Flutter”. Computers in Cardiology N° 26. pp. 699-702. 2001
[20] CA. Ramirez-Rodriguez, MA Hernandez-Silveira. “ Multi-Thread Implementation of a
Fuzzy Neural Network for Automatic ECG Arriythmia Detection”. Computers in Cardiology.
N° 28. pp 297-300. 2001.
[21] K. Tateno, L. Glass,. “A method for detection of atrial fibrillation using RR intervals”.
Computers in cardiology. N.27, pp 391-394. 2000.
[22] M. Restivo, N. El-Sherif, G.J. Kelen, R. Henkin, W. Craelius, and W.B Gough.
“Correlation of the late potentials on the body surface and ventricular activation maps of
reentrant circuits in the post-infarction dog heart”. Circulation, vol 72, supl. III, pag 11. 1985.
[23] D. Engel, J. Silny, G. Rau, M. Rubart and P. Hanrath. “Diagnosis of ischemia by
continuous ECG Monitoring”. Computers in Cardiology, pp. 275-278. 1990.
[24] W. Craelius, M. Restivo, M.A. Assadi, and N. El Sherif, “Criteria for optimal averaging
of cardiac signals”. IEEE Transactions on Biomedical Engineering. Vol. BME-33, n. 10, pp.
957-966, 1986.
66
[25] G. M. Friesen, T. C. Jannett, N. A. Jadallah, S. L. Yates, S.R. Quint, and H.T. Nagle, “A
comparison of the noise sensitivity of nine QRS detection algorithms”, IEEE Transactions on
Biomedical Engineering, vol. BME-37, n. 1, pags 85-98. 1990.
[26] La sensibilidad y especificidad: entendiendo su Orión y utilidad real. Rincón
Epidemiologico. http://scielo-co.bvs.br/pdf/rcg/v18n3/v18n3a12.pdf.
67
ANEXOS
68
PROGRAMA EN MATLAB DEL ALGORITMO DETECTOR DE AF
PATH= 'd:\Paciente2'; % path, where data are saved
HEADERFILE= '04043.hea'; % header-file in text format
ATRFILE= '04043.atr';
% attributes-file in binary format
DATAFILE='04043.dat';
% data-file
deriv = 1;
% Canal del ECG a leer
comienzo = 0;
%comienzo del bloque a estudiar en segundos
final = 3600;
%final del bloque a estudiar en segundos
%-----------------------------RUTINA DE CARGA DEL ARCHIVO DE CABECERA-----------------------fprintf(1,'\\n$> WORKING ON %s ...\n', HEADERFILE);
signalh= fullfile(PATH, HEADERFILE);
fid1=fopen(signalh,'r');
z= fgetl(fid1);
A= sscanf(z, '%*s %d %d %d',[1,3]);
nosig= A(1); % number of signals
sfreq=A(2); % sample rate of data
clear A;
for k=1:nosig
z= fgetl(fid1);
A= sscanf(z, '%*s %d %d %d %d %d',[1,5]);
dformat(k)= A(1);
% format; here only 212 is allowed
gain(k)= A(2);
% number of integers per mV
bitres(k)= A(3);
% bitresolution
zerovalue(k)= A(4);
% integer value of ECG zero point
firstvalue(k)= A(5);
% first integer value of signal (to test for errors)
end;
fclose(fid1);
clear A;
SAMPLES2READ=(final-comienzo)*sfreq;
start = (comienzo*sfreq);
% number of samples to be read
%--------RUTINA DE CARGA DEL ARCHIVO DE DATOS DEL ECG DIGITALIZADO---------% Esta rutina lee el archivo .dat donde se encuentra almacenado el ECG en
% forma binaria en formato 212 y lo almacena en la matri M
if dformat~= [212,212], error('this script does not apply binary formats different to 212.'); end;
signald= fullfile(PATH, DATAFILE);
% data in format 212
fid2=fopen(signald,'r');
fseek(fid2, 3*(start), 'bof');
A= fread(fid2, [3, SAMPLES2READ], 'uint8')'; % matrix with 3 rows, each 8 bits long, = 2*12bit
fclose(fid2);
M2H= bitshift(A(:,2), -4);
M1H= bitand(A(:,2), 15);
PRL=bitshift(bitand(A(:,2),8),9); % sign-bit
PRR=bitshift(bitand(A(:,2),128),5); % sign-bit
69
M( : , 1)= bitshift(M1H,8)+ A(:,1)-PRL;
M( : , 2)= bitshift(M2H,8)+ A(:,3)-PRR;
M( : , 1)= (M( : , 1)- zerovalue(1))/200; %gain(1);
M( : , 2)= (M( : , 2)- zerovalue(2))/200; %gain(2);
%TIME=(0:(SAMPLES2READ-1))/sfreq;
TIME=(comienzo*sfreq:(final*sfreq)-1);
matriz = A;
clear A M1H M2H PRR PRL;
fprintf(1,'\\n$> LOADING DATA FINISHED \n');
%--------------------- RUTINA DE CARGA DEL ARCHIVO DE ANOTACIONES -------------------atrd= fullfile(PATH, ATRFILE); % attribute file with annotation data
fid3=fopen(atrd,'r');
A= fread(fid3, [2, inf], 'uint8')';
fclose(fid3);
ATRTIME=[];
ANNOT=[];
sa=size(A);
saa=sa(1);
i=1;
while i<=saa
annoth=bitshift(A(i,2),-2);
if annoth==59
ANNOT=[ANNOT;bitshift(A(i+3,2),-2)];
ATRTIME=[ATRTIME;A(i+2,1)+bitshift(A(i+2,2),8)+...
bitshift(A(i+1,1),16)+bitshift(A(i+1,2),24)];
i=i+3;
elseif annoth==60
% nothing to do!
elseif annoth==61
% nothing to do!
elseif annoth==62
% nothing to do!
elseif annoth==63
hilfe=bitshift(bitand(A(i,2),3),8)+A(i,1);
hilfe=hilfe+mod(hilfe,2);
i=i+hilfe/2;
else
ATRTIME=[ATRTIME;bitshift(bitand(A(i,2),3),8)+A(i,1)];
ANNOT=[ANNOT;bitshift(A(i,2),-2)];
end;
i=i+1;
end;
ANNOT(length(ANNOT))=[];
ATRTIME(length(ATRTIME))=[];
clear A;
ATRTIME= (cumsum(ATRTIME))/sfreq;
ind= find(ATRTIME <= TIME(end));
ATRTIMED= ATRTIME(ind)/60;
ANNOT=round(ANNOT);
ANNOTD= ANNOT(ind);
70
%-----------------------------------------FILTRADO DE LA SENAL----------------------------------------------% Rutina que aplica un fitro Butterworth de orden pasabanda 3-30Hz al
% bloque de senal en estudio
tic;
cut_low = 3;
cut_high = 30;
[B,A] = butter(4,cut_low/(sfreq/2),'high');
Y =filter(B,A,M(:,deriv));
[B,A] = butter(4,cut_high/(sfreq/2),'low');
Yf = filter(B,A,Y);
%-------------------------DETECCION DE QRS USANDO UMBRAL ADAPTABLE----------------------%Rutina donde la senal de ECG se le aplica la primera derivada, luego valor
%absoluto y por ultimo se deteca QRS mediante umbral adaptable
umbral = 0.6; %en porcentaje
ventana_qrs = 0.2; %en segundos
ventana_qrs = ventana_qrs * sfreq;
indice = 1;
t1=TIME';
absder = abs(diff(Yf)./diff(t1));
i=100;
th1(1:i-1)= 0.3; %ojo
u=max(absder(1:i)); %examina 100 muestras (0,4 seg) de la señal
u1=u;
c(1:i)=0;
while i<=length(absder);
j=0;
un=(u+u1)/2;
%promedio de los picos de r
if absder(i)>=un*umbral;
j = ventana_qrs;
if i+j<=length(absder);
[u1,donde]=max(absder(i:i+j)); %valor maximo dentro 0,2 seg de mustras (onde r
actual)
u=un;
%guarda el valor del maximo r anterior
prom = un * umbral;
picos(:,indice) = ((donde +i)/sfreq)+comienzo;
indice = indice +1;
end
else
end
i=i+j+1;
end
71
%-----------------RUTINA PARA GENERAR LA SERIE TEMPORAL DE TRAMOS RR----------------
indice = 1;
for i=2:length(picos);
if ((picos(:,i) - picos(:,i-1))<2) & ((picos(:,i) - picos(:,i-1))> 0.1);
RR(:,indice) = picos(:,i) - picos(:,i-1);
tiempo(:,indice) = picos(:,i);
indice = indice +1;
end
end
%--------------------------PLOTEO DE LA SERIE TEMPORAL DE TRAMOR RR--------------------------
figure(1)
scatter(1:length(RR),RR,3,'filled');string=['Tramos RR vs Tiempo ',DATAFILE, ' MIT AF Database'];
ylabel('Intervalo RR en Segundos'); grid on;
%----------------------------------------------DETECCION DE AF---------------------------------------------------ventana_h_primaria = 34; %Tramos RR a analizar (35 Latidos - 1)
ventana_v_primaria = 0.15;
ventana_v_secundaria = 0.1;
paso_ventana_v_secundaria = 0.01;
%----------------------------------- TEST DE DISPERSION DE TRAMOS RR---------------------------------for i = 1:length(RR)-ventana_h_primaria
curva(i)=0;
af1(i)=0;
maximo = max(RR(i:i+ventana_h_primaria));
minimo = min(RR(i:i+ventana_h_primaria));
if maximo - minimo > 0.15
counter = 0;
for j = i:i + ventana_h_primaria - 1
if abs(RR(:,j+1) - RR(:,j)) >= 0.05 counter = counter + 1; end
end
curva(i)=counter;
if counter >= 10 af1(i) = 1; else af1(i) = 0; end
end
end
72
%-------------------------------------------- TEST DE ARRITMIAS----------------------------------------------for i = 1:length(RR)-ventana_h_primaria
maximo = max(RR(i:i+ventana_h_primaria));
minimo = min(RR(i:i+ventana_h_primaria));
if maximo - minimo > 0.15
for k = minimo : paso_ventana_v_secundaria : minimo + ventana_v_primaria - ventana_v_secundaria
vent_v_sec_minimo = k;
vent_v_sec_maximo = k + ventana_v_secundaria;
counter = 0;
for h = i:i+ventana_h_primaria
temp = RR(:,h);
if RR(:,h) >= vent_v_sec_minimo & RR(:,h) < vent_v_sec_maximo; counter = counter + 1; else; end
end
if counter == 0 ; af2(i) = 0 ;break; else; af2(i)=1 ;end;
end
else
af2(i) = 0;
end
end
af = and(af1,af2); %MATRIZ FINAL
fprintf(1,'End...!!!');
73
Descargar