Algoritmo para Detecção do Complexo QRS e Reconhecimento - SBIS
Algoritmo para Detecção do Complexo QRS e Reconhecimento - SBIS
Algoritmo para Detecção do Complexo QRS e Reconhecimento - SBIS
Transforme seus PDFs em revista digital e aumente sua receita!
Otimize suas revistas digitais para SEO, use backlinks fortes e conteúdo multimídia para aumentar sua visibilidade e receita.
<strong>Algoritmo</strong> <strong>para</strong> <strong>Detecção</strong> <strong>do</strong> <strong>Complexo</strong> <strong>QRS</strong> e <strong>Reconhecimento</strong> de<br />
Contração Ventricular Prematura em Eletrocardiograma<br />
João Paulo <strong>do</strong> Vale Madeiro 1 , Paulo César Cortez 2 , Francisco Ivan de Oliveira 3 , Robson<br />
da Silva Siqueira 4<br />
1,2,3,4 Departamento de Engenharia de Teleinformática (DETI),<br />
Universidade Federal <strong>do</strong> Ceará (UFC), Brasil<br />
Resumo - Este trabalho propõe um algoritmo capaz de extrair de um Eletrocardiograma informações que<br />
descrevam a morfologia <strong>do</strong> complexo <strong>QRS</strong>, de forma a determinar a análise <strong>do</strong> ritmo cardíaco e o<br />
reconhecimento de uma contração ventricular prematura. Estas informações são obtidas a partir da<br />
detecção <strong>do</strong>s pontos significativos <strong>do</strong> complexo <strong>QRS</strong>: ondas Q, R e S. A performance <strong>do</strong> algoritmo é<br />
avaliada através de testes com a base de da<strong>do</strong>s Arrhytmia Database <strong>do</strong> MIT-BIH que atestam a viabilidade<br />
<strong>do</strong> emprego <strong>do</strong> algoritmo.<br />
Palavras-chave: Eletrocardiograma (ECG), <strong>Complexo</strong> <strong>QRS</strong>, Transformada Wavelet (WT), Limiar Adaptativo.<br />
Abstract - This paper proposes an algorithm capable of extracting from an Electrocardiogram features<br />
describing <strong>QRS</strong> morphology in order to evaluate cardiac rhythm and recognize a premature ventricular<br />
contraction. These features are obtained from the detection of significant points of the <strong>QRS</strong> Complex: Q, R<br />
and S waves. The performance of the proposed algorithm was tested using the records of the MIT-BIH<br />
Arrhythmia Database.<br />
Key-words: Electrocardiogram (ECG), <strong>QRS</strong> Complex, Wavelet Transform (WT), Adaptive Threshold.<br />
Introdução<br />
Alguns <strong>do</strong>s tipos mais perturba<strong>do</strong>res de<br />
disfunção cardíaca não resultam <strong>do</strong> músculo<br />
cardíaco anormal, mas em virtude <strong>do</strong> ritmo<br />
cardíaco anormal, o que caracteriza as arritmias<br />
cardíacas [1]. Dentre as possíveis causas das<br />
arritmias cardíacas, relacionam-se [1]: ritmicidade<br />
anormal <strong>do</strong> marca-passo, deslocamento <strong>do</strong><br />
marca-passo <strong>do</strong> no<strong>do</strong> sinusal <strong>para</strong> outras áreas<br />
<strong>do</strong> coração e vias anormais <strong>para</strong> transmissão <strong>do</strong><br />
impulso elétrico <strong>do</strong> coração. A contração<br />
prematura é uma contração cardíaca antes <strong>do</strong><br />
momento que deveria ocorrer a contração normal<br />
[1]. Esta condição também é chamada de extrasístole,<br />
batimento prematuro ou batimento<br />
ectópico. Uma extra-sístole ventricular ocorre<br />
quan<strong>do</strong> um foco situa<strong>do</strong> em algum lugar <strong>do</strong>s<br />
ventrículos dis<strong>para</strong> um impulso precocemente e<br />
assume a função de marca-passo por um<br />
batimento [2]. O próximo impulso origina<strong>do</strong> <strong>do</strong><br />
no<strong>do</strong> sinusal irá encontrar os ventrículos em<br />
esta<strong>do</strong> refratário, e causa uma pausa<br />
compensa<strong>do</strong>ra que se segue imediatamente à<br />
contração prematura. A extra-sístole ventricular<br />
causa em geral efeitos específicos no<br />
Eletrocardiograma, que são os seguintes [1]:<br />
complexo <strong>QRS</strong> prolonga<strong>do</strong> e com alta amplitude,<br />
devi<strong>do</strong> à condução lenta e numa única direção <strong>do</strong><br />
impulso elétrico através <strong>do</strong> músculo ventricular,<br />
onda T com potencial elétrico de polaridade<br />
oposta à <strong>do</strong> complexo <strong>QRS</strong> e pausa<br />
compensa<strong>do</strong>ra entre a contração prematura e a<br />
contração seguinte. A Figura 1 ilustra<br />
características de uma contração ventricular<br />
prematura no Eletrocardiograma anteriormente<br />
descritas.<br />
Figura 1 – Contração ventricular prematura em<br />
um ECG.<br />
Algumas extra-sístoles ventriculares são<br />
relativamente benignas em sua origem e resultam<br />
de fatores como cigarros, café, falta de sono,<br />
vários esta<strong>do</strong>s de intoxicação moderada e,<br />
mesmo, irritabilidade emocional [1]. Por outro<br />
la<strong>do</strong>, muitas outras resultam de impulsos fugidios<br />
ou de sinais reentrantes, que se originam em<br />
torno <strong>do</strong>s limites de áreas cardíacas infartadas,<br />
ou isquêmicas [1]. Estatísticas mostram que<br />
pessoas com número significativo de extrasístoles<br />
ventriculares têm probabilidade muito<br />
maior <strong>do</strong> que uma pessoa normal de desenvolver<br />
fibrilação ventricular espontânea letal,<br />
presumivelmente iniciada por uma destas
contrações prematuras [1]. Portanto, a presença<br />
destas extra-sístoles não deve ser ignorada.<br />
Neste trabalho, um algoritmo é<br />
desenvolvi<strong>do</strong> com o uso da técnica <strong>do</strong> limiar<br />
adaptativo e da transformada Wavelet cujo<br />
parâmetro de escala variável. A técnica <strong>do</strong> limiar<br />
adaptativo é comumente utilizada pelos<br />
algoritmos de processamento de sinal ECG no<br />
estágio da detecção <strong>do</strong> complexo <strong>QRS</strong>. Os<br />
diversos mo<strong>do</strong>s de aplicação desta técnica têm<br />
uma característica em comum: préprocessamento<br />
sobre o sinal. As transformadas<br />
Wavelet e de Hilbert, os filtros integra<strong>do</strong>res e<br />
derivativos permitem obter sinais modifica<strong>do</strong>s <strong>do</strong><br />
ECG original, que mantém energia acentuada<br />
<strong>para</strong> o complexo <strong>QRS</strong> [3,4,5]. No algoritmo<br />
proposto neste trabalho, <strong>do</strong>is detetores trabalham<br />
alternadamente. O detetor R-R identifica as<br />
posições das ondas R através de um limiar<br />
adaptativo. Neste estágio, apenas intervalos em<br />
que é detectada discrepância de duração <strong>do</strong><br />
intervalo R-R são filtra<strong>do</strong>s, utilizan<strong>do</strong> a função<br />
“Chapéu de Mexicano” como Wavelet-Mãe. A<br />
operação de convolução aplicada pela<br />
transformada Wavelet visa validar picos em<br />
análise ou procurar picos não detecta<strong>do</strong>s através<br />
da técnica <strong>do</strong> limiar adaptativo. O detector Q-S<br />
identifica as posições <strong>do</strong>s picos Q e S. Neste<br />
estágio, seleciona-se uma janela, de tamanho<br />
variável, em torno de cada pico R e aplica-se a<br />
transformada Wavelet, usan<strong>do</strong> a mesma Wavelet-<br />
Mãe. O parâmetro de escala da transformada é<br />
variável ao longo <strong>do</strong> exame e uma rotina de<br />
treinamento é utilizada <strong>para</strong> se determinar seu<br />
valor inicial. A partir das características extraídas<br />
<strong>do</strong> ECG pelos <strong>do</strong>is detetores, intervalos R-R e<br />
<strong>do</strong>s limites de cada complexo <strong>QRS</strong>, é possível<br />
desenvolver o algoritmo proposto <strong>para</strong> o<br />
reconhecimento das contrações ventriculares<br />
prematuras.<br />
Meto<strong>do</strong>logia<br />
A Transformada Wavelet<br />
A transformada Wavelet é uma operação<br />
linear que decompõe um sinal em componentes<br />
de diferentes escalas ou resoluções [6,7]. Uma<br />
função (t) é chamada Wavelet, poden<strong>do</strong><br />
assumir valores reais e complexos em L²(R), se, e<br />
somente se, sua transformada de Fourier satisfaz:<br />
O que implica que<br />
+∞<br />
−∞<br />
ψ ( t)<br />
dt =<br />
0.<br />
A partir de uma Wavelet mãe (t), deduz-se um<br />
conjunto de funções, chamadas Wavelet filhas,<br />
dadas por:<br />
em que a e são os parâmetros de escala e de<br />
translação, respectivamente.<br />
A transformada de Wavelet de uma função f(t) é<br />
dada por:<br />
Wf ( a,<br />
t)<br />
=<br />
A Wavelet mãe utilizada neste trabalho é a<br />
segunda derivada da função gaussiana, também<br />
conhecida como “Chapéu de Mexicano”<br />
ψ<br />
( t)<br />
=<br />
O <strong>Algoritmo</strong> Proposto<br />
Dois sub-sistemas interdependentes detectam os<br />
pontos significativos <strong>do</strong> complexo <strong>QRS</strong>: o detetor<br />
RR localiza as posições <strong>do</strong>s picos R e o detetor<br />
QS localiza as posições <strong>do</strong>s picos Q e S, usan<strong>do</strong><br />
a informação de posição de cada onda R.<br />
Detetor RR<br />
1<br />
a<br />
+∞<br />
−∞<br />
1 2<br />
( 1−<br />
t ) e<br />
2π<br />
t −τ<br />
f ( t)<br />
ψ<br />
a<br />
2<br />
−t<br />
2<br />
Neste estágio não há pré-processamento, mas<br />
um limiar adaptativo é utiliza<strong>do</strong>, como um<br />
parâmetro de decisão no processo de<br />
com<strong>para</strong>ção. Toma-se uma expressão<br />
ponderada, envolven<strong>do</strong> valores estima<strong>do</strong>s de<br />
amplitude de pico (Re) e valores reais de<br />
amplitude de pico (R) no instante k-1, <strong>para</strong><br />
determinar o limiar th[k]. Este valor de limiar será<br />
usa<strong>do</strong> <strong>para</strong> detectar a posição RR <strong>do</strong> próximo<br />
pico, no instante k. A expressão é dada a seguir<br />
em que X e Y são pesos determina<strong>do</strong>s de acor<strong>do</strong><br />
com a discrepância entre as amplitudes de pico<br />
nos instantes k-2 e k-1 e é um fator de<br />
amplitude. Em cada instante, o valor estima<strong>do</strong> de<br />
pico é da<strong>do</strong> por Re[k]=th[k-1]/ e seu valor inicial<br />
é basea<strong>do</strong> na máxima amplitude de um intervalo<br />
inicial <strong>do</strong> ECG.<br />
Há <strong>do</strong>is tipos de falha que ocorre no<br />
modelo <strong>do</strong> limiar: detecção falso-positiva (picos<br />
não-váli<strong>do</strong>s) e detecção falso-negativa (picos<br />
váli<strong>do</strong>s não identifica<strong>do</strong>s). Ambas as falhas
podem ser corrigidas através da aplicação da<br />
transformada Wavelet. Primeiro, ao detectar-se<br />
um possível pico R, calcula-se o parâmetro t<br />
como segue<br />
em que I[k] é o último intervalo, entre RR[k] (pico<br />
já armazena<strong>do</strong>) e o pico em análise, m(R-R) é a<br />
média <strong>do</strong>s intervalos RR e é o desvio padrão<br />
destes intervalos. Se o parâmetro t exceder um<br />
fator de tolerância 1, então tem-se indicação de<br />
detecção falso-negativa e se t for menor que um<br />
parâmetro 2, tem-se indicação de detecção falso<br />
positiva.<br />
Na ocorrência de indicação de detecção<br />
falso-negativa, se o intervalo entre o último pico<br />
armazena<strong>do</strong> e o pico em teste não exceder um<br />
intervalo de tempo crítico, da<strong>do</strong> por 3 vezes o<br />
último intervalo R-R, então o algoritmo aplica no<br />
intervalo entre R[k] e o pico em teste a<br />
transformada Wavelet. Para o intervalo filtra<strong>do</strong>,<br />
um limiar temporário é calcula<strong>do</strong> com base num<br />
novo fator de amplitude, que é determina<strong>do</strong> de<br />
acor<strong>do</strong> com as discrepâncias entre as amplitudes<br />
R[k-1] e R[k] e entre os intervalos I[k-1],<br />
correspondente aos picos R[k-1] e R[k], e I[k]. A<br />
Tabela a seguir, sintetiza o cálculo <strong>do</strong> limiar<br />
temporário:<br />
R[k-1] < 0.8*R[k] R[k-1] > 0.8*R[k]<br />
I[k]>2*I[k-1] =0.50<br />
=0.30<br />
th[k]= *R[k-1] th[k]= *R[k]<br />
I[k]
transformada Wavelet que é inicialmente usada é<br />
aquela determinada no estágio de treinamento.<br />
Contu<strong>do</strong>, o parâmetro de erro, explica<strong>do</strong> na seção<br />
anterior, é continuamente calcula<strong>do</strong> e monitora<strong>do</strong>.<br />
A discrepância entre intervalos consecutivos,<br />
correspondentes à duração <strong>do</strong> complexo <strong>QRS</strong>,<br />
também é avaliada. A atualização <strong>do</strong> parâmetro<br />
de escala da transformada se dá quan<strong>do</strong>, por <strong>do</strong>is<br />
batimentos consecutivos, o erro obti<strong>do</strong> <strong>para</strong> uma<br />
dada aplicação da transformada excede aquele<br />
erro mínimo médio encontra<strong>do</strong> no estágio de<br />
treinamento de um fator configurável, ou se o<br />
intervalo entre os picos Q e S, varia de um<br />
determina<strong>do</strong> fator também configurável.<br />
<strong>Reconhecimento</strong> <strong>do</strong> Padrão da Contração<br />
Ventricular Prematura<br />
De posse <strong>do</strong>s intervalos R-R, obti<strong>do</strong>s pela<br />
detecção das ondas R, e <strong>do</strong>s limites de cada<br />
complexo <strong>QRS</strong>, obti<strong>do</strong>s pela detecção das ondas<br />
Q e S, elaborou-se um algoritmo simples de<br />
reconhecimento das contrações ventriculares<br />
prematuras. Três condições são testadas <strong>para</strong><br />
que seja detectada a ocorrência de batimentos<br />
que caracterizam a contração ventricular<br />
prematura.<br />
Primeiramente, é verificada a ocorrência<br />
de uma pausa compensa<strong>do</strong>ra seguida de um<br />
batimento precoce. Os intervalos consecutivos<br />
em que se verifica uma relação <strong>do</strong> tipo I[k] > (1+<br />
)*I[k-1], em que é um fator de superação<br />
configurável, são seleciona<strong>do</strong>s. Três batimentos<br />
definem estes <strong>do</strong>is intervalos, sen<strong>do</strong> o batimento<br />
central aquele que provavelmente corresponde a<br />
uma contração prematura. Então, calcula-se a<br />
energia <strong>do</strong> complexo <strong>QRS</strong> <strong>do</strong>s três batimentos de<br />
cada par de intervalos seleciona<strong>do</strong>s. Os grupos<br />
de intervalos que possuírem energia <strong>do</strong> <strong>QRS</strong><br />
central maior <strong>do</strong> que a energia <strong>do</strong>s complexos<br />
<strong>QRS</strong> adjacentes, de um da<strong>do</strong> fator configurável<br />
são seleciona<strong>do</strong>s.<br />
Finalmente, procede-se a determinação <strong>do</strong><br />
pico da onda T correspondente ao batimento<br />
central <strong>do</strong>s grupos seleciona<strong>do</strong>s no teste anterior.<br />
Calcula-se um limiar a partir da máxima amplitude<br />
<strong>do</strong> intervalo entre o <strong>QRS</strong> central e o terceiro <strong>QRS</strong><br />
de cada grupo. Obtém-se o pico mais próximo <strong>do</strong><br />
<strong>QRS</strong> central. Se este pico obti<strong>do</strong> e a onda R <strong>do</strong><br />
<strong>QRS</strong> central apresentarem amplitudes de sinal<br />
contrário, então o <strong>QRS</strong> central <strong>do</strong> par de<br />
intervalos correspondente é reconheci<strong>do</strong> como<br />
uma contração ventricular prematura.<br />
Resulta<strong>do</strong>s<br />
A performance <strong>do</strong> algoritmo na detecção de<br />
complexos <strong>QRS</strong> e de contrações ventriculares<br />
prematuras é avaliada através de testes com a<br />
base de da<strong>do</strong>s Arrhythmia Database <strong>do</strong> MIT-BIH.<br />
Obteve-se <strong>para</strong> detecção <strong>do</strong> complexo <strong>QRS</strong><br />
99.06% de sensitividade (Se%), 99.7% de<br />
preditividade positiva (+P%) e uma taxa de erro<br />
de detecção (DER %) de 1.27%. A Tabela 2<br />
relaciona o desempenho <strong>do</strong> algoritmo, mostran<strong>do</strong><br />
alguns resulta<strong>do</strong>s e a Figura 2 ilustra complexos<br />
<strong>QRS</strong> detecta<strong>do</strong>s <strong>para</strong> o exame 112.<br />
Record DER(%) Se(%) +P(%)<br />
100 0 100 100<br />
101 0 100 100<br />
102 0.68 99.95 99.36<br />
103 0 100 100<br />
104 1.66 99.68 98.65<br />
105 1.94 98.71 99.33<br />
106 5.03 95.92 98.97<br />
107 1.45 98.83 99.72<br />
118 1.92 98.07 100<br />
119 0 100 100<br />
Tabela 2 - Resulta<strong>do</strong>s de <strong>Detecção</strong> <strong>do</strong> <strong>Complexo</strong><br />
<strong>QRS</strong><br />
Figura 2 - <strong>Complexo</strong>s <strong>QRS</strong> detecta<strong>do</strong>s no exame<br />
112<br />
Para reconhecimento de contração ventricular<br />
prematura (CVP), testaram–se os exames 100,<br />
102, 104, 105, 106, 116, 118 e 119. A Tabela 3<br />
ilustra os resulta<strong>do</strong>s de detecção obti<strong>do</strong>s e a<br />
Figura 3 ilustra uma contração ventricular<br />
prematura reconhecida no exame 119 .<br />
Figura 3 - Contração ventricular reconhecida no<br />
exame 119 correspondente ao batimento central
Exame Total CVP CVP<br />
detectadas<br />
100 1 1<br />
102 4 3<br />
104 2 0<br />
106 520 222<br />
116 109 38<br />
118 96 43<br />
119 444 442<br />
Tabela 3 – Resulta<strong>do</strong>s <strong>do</strong> <strong>Reconhecimento</strong> de<br />
Contração Ventricular Prematura<br />
Discussão e Conclusões<br />
O méto<strong>do</strong> mostrou-se muito eficiente na detecção<br />
de complexos <strong>QRS</strong>, inclusive em exames com<br />
forte contaminação de ruí<strong>do</strong>, como 105, e com<br />
expressiva variação da morfologia <strong>do</strong> complexo<br />
<strong>QRS</strong>, como o 106. Com relação ao<br />
reconhecimento das contrações ventriculares<br />
prematuras, obteve-se uma taxa de detecção de<br />
63.7%. Levan<strong>do</strong> em consideração que o méto<strong>do</strong><br />
não utiliza pré-procesamento, mas apenas as<br />
informações obtidas pelo detector <strong>QRS</strong>, que são<br />
os intervalos R-R e os limites de cada complexo<br />
<strong>QRS</strong>, os resulta<strong>do</strong>s são considera<strong>do</strong>s<br />
satisfatórios. No entanto, mais simulações serão<br />
realizadas e novos resulta<strong>do</strong>s serão<br />
<strong>do</strong>cumenta<strong>do</strong>s <strong>para</strong> o méto<strong>do</strong> proposto.<br />
Referências<br />
[1] Guyton, Arthur C.; Hall, John E.; “Textbook of<br />
Medical Physiology”, Guanabara Koogan<br />
S.A., 2002.<br />
[2] Brener,J., 1967. “Heart rate”, on book of P.H<br />
Venables & I. Martin, “Manual of<br />
Psychophysiological methods”, Amsterdam:<br />
North-Holland.<br />
[3] Benitez, D.S.; Gaydecki, P.A.; Zaidi, A.;<br />
Fitzpatrick,A.P.;. A new <strong>QRS</strong> detection<br />
algorithm based on the Hilbert transform.<br />
Computers in Cardiology 2000, 24-27<br />
Sept.2000 Pages:379 – 382.<br />
[4] Tan, K.F.; Chan, K.L.; Choi, K.; Detection of<br />
the <strong>QRS</strong> complex, P wave and T wave in<br />
electrocardiogram. Advances in Medical<br />
Signal and Information Processing, 2000.<br />
First International Conference on (IEE Conf.<br />
Publ. No. 476) , 4-6 Sept. 2000 Pages:41 -<br />
47.<br />
[5] Martinez, J.P.; Olmos, S.; Laguna, P.;<br />
Evaluation of a wavelet-based ECG waveform<br />
detector on the QT database. Computers in<br />
Cardiology 2000 , 24-27. Sept.2000, Pages<br />
181-184.<br />
[6] Kadambe, S.; Murray, R.; Boudreaux-Bartels,<br />
G.F.; Wavelet transform-based <strong>QRS</strong> complex<br />
detector. Biomedical Engineering, IEEE<br />
Transactions on, Volume: 46 , Issue: 7 , July<br />
1999. Pages:838 – 848.<br />
[7] Oliveira, F. Ivan.; Cortez, P.C.; A new<br />
algorithm for determining the cardiac rhythm<br />
in electrocardiogram. 2 nd Brasilian<br />
Symposium of Software Quality – 2003.<br />
Contato<br />
João Paulo <strong>do</strong> Vale Madeiro<br />
Departamento de Engenharia de Teleinformática<br />
– DETI<br />
Universidade Federal <strong>do</strong> Ceará<br />
Fone: 85 2889582<br />
E-mail: joaopaulo@deti.ufc.br