• Nenhum resultado encontrado

Diagnóstico não supervisionado de ECG

4.1. Introdução

O eletrocardiograma (ECG) ainda é a técnica mais usada para diagnósticos cardíacos. Apesar da simplicidade do exame, a análise minuciosa de registros longos desse sinal é inviável sem uma técnica automática de classificação de batimentos ou de variação de taxa cardíaca.

Vários métodos foram desenvolvidos nos últimos anos com o objetivo de automatizar o diagnóstico desses sinais com diferentes estratégias de processamento. Um ponto em comum entre elas é o uso massivo de redes neurais artificiais com aprendizado supervisionado (para citar alguns dos mais citados segundo [104]: [105- 112]). Por serem redes supervisionadas, todas elas necessitam de um banco de dados representativo. Além da necessidade de ter um grande banco de dados disponível, esses métodos estão condenados a se especializarem em específicas patologias. A ideia clássica é buscar por características invariantes na morfologia do batimento saudável e em alguma patologia específica nos sinais de vários pacientes. Essa aproximação é grosseira, tendo em vista que há uma variabilidade muito grande na morfologia de batimentos cardíacos que se dá por vários motivos, como a posição dos eletrodos, características corpórea dos pacientes ou do equipamento eletrônico usado. A Figura 4.1 mostra três trechos de sinais de pacientes diferentes; todos os batimentos nesses registros foram rotulados como normais pelo banco de dados Physionet

(www.physionet.org/), o considerado gold standard na área. De fato, essa variabilidade

não acontece somente entre sessões, mas a morfologia desses sinais tende a mudar lentamente durante o tempo mesmo no mesmo paciente.

A dificuldade de uso desses métodos, de obter um banco de dados capaz de representar diferentes patologias, e a impossibilidade de replicá-los são refletidos no desuso desses métodos na grande maioria hospitais e clínicas.

Aqui é proposta uma nova abordagem sem a necessidade de treinamento de redes. Nós propomos uma solução não supervisionada, que compara apenas os batimentos de um mesmo registro, sendo assim aplicável não apenas para uma determinada patologia. Nosso método pode ser dividido em cinco partes: (i) Aquisição de sinais, (ii) Pré-processamento, (iii) Decomposição Wavelet, (iv) Redução de dimensionalidade, e (v) Classificação não supervisionada. A qualidade da classificação é validada com seis registros de ECG com 24 a 72 horas de duração, onde é conseguido 100% de acerto na classificação, corroborada com análise visual de especialistas. As figuras usadas no texto foram extraídas de [10].

Figura 4.1.Variabilidade entre sinais de ECG “saudáveis”.

4.2. Materiais e Métodos

Aquisição de sinais e preprocessamento – Os sinais foram adquiridos por um

amplificador manufaturado (2 pólos; passa-baixa: fc = 110Hz) e digitalizados por um microcontrolador PIC com frequência de amostragem de 225Hz. Os sinais foram posteriormente filtrados com um filtro digital passa-alta Butterworth de segunda ordem (frequência de corte = 0,5Hz). Finalmente, os batimentos foram detectados e armazenados em vetores de batimento (VB) com 120 amostragens cada.

Decomposição Wavelet – Transformada discreta Wavelet foi aplicada para decompor os

VBs. A operação pode ser entendida como um banco de filtros [41] que decompõe o sinal de entrada em vários níveis.

Em cada nível, o sinal é decomposto por um par de funções de transferência, preferencialmente ortogonais, separando o sinal em componentes de alta e baixa frequência não redundantes. Nesse trabalho a transformada Haar (Figura 4.2B) foi usada por sua simplicidade e por apresentar resultados semelhantes a outras wavelets testadas. O primeiro passo da decomposição é convoluir o sinal de entrada com dois filtros. O filtro passa-baixa da Haar pode ser definido como

ab cHd = efgIcHd + efgIcH − 1d+

+

onde n é a n-ésima amostragem do sinal s, e o filtro passa-alta pode ser definido como

+

ab(cHd = efgIcHd − efgIcH − 1d+

Note que como as funções de transferência são ortogonais, e portanto, não existe redundância entre as saídas dos filtros. O segundo passo é a operação de downsampling,

que descarta todas as amostragens pares (ou ímpares) da saída dos filtros (hi)cHd =

Observe que mesmo depois dessa operação, não existe perda de informação nas saídas, já que o sinal s pode ser totalmente recuperado da seguinte forma:

IcHd = ab cHd + ab(cHd+

IcH − 1d = ab cHd − ab(cHd+

Portanto, as saídas do filtro, depois do downsampling, são não-redundantes e não há perda de informação. Em seguida, o processo é repetido para a saída do filtro passa-baixa, o que representa o segundo nível da decomposição.

Os paineis inferiores da Figura 3.2B mostram a densidade espectral dos filtros usados. Note que, como em qualquer filtro digital, a frequência de corte é dada em função da frequência de amostragem da aquisição do sinal. A frequência de corte nas decomposições Wavelet é a metade da frequência de Nyquist. Portanto, como no nosso caso a frequência de amostragem é de 225Hz, o primeiro nível de filtragem decompõe o sinal em [0 a 56,25 Hz] e [56,25 a 112,5]. Devida a operação de downsampling, a saída do primeiro nível tem frequência de amostragem dividida por dois em relação à original; consequentemente o segundo nível decompõe o sinal em [0 a 28,13 Hz] e [28,13 a 56,25 Hz]. Seguindo esse processo, nesse trabalho usamos seis níveis de decomposição, e consequentemente o sinal é divido nas seguintes seis bandas (em Hz): [0 a 3,52], [3,52 a 7,03], [7,03 a 14,06], [14,06 a 28,13], [28,13 a 56,25] e [56,25 a 112,5]. Note que devido ao filtro aplicado no pré-processamento, a primeira faixa na realidade é [0,5 a 3,52].

Observe que, a cada nível, o sinal é decomposto em dois, e em seguida, metade das amostragens é jogada fora; portanto, o número de amostragens em todas as saídas somadas será igual ao número de amostragens no sinal original. A vantagem desse procedimento é reescrever o sinal como um mesmo vetor de mesmo tamanho, em que cada elemento representa a amplitude do sinal em uma certa faixa de frequência e em uma determinada amostragem: uma decomposição de resolução tempo-frequência.

Alguns desses elementos não terão informação significativa para a classificação dos batimentos. Para não alimentar nosso classificador com eles, antes passamos por uma etapa de redução de dimensionalidade, descrita a seguir.

Redução de dimensionalidade – Até o momento, cada batimento é representado por um

vetor com 120 elementos, definidos aqui como Vetores Tempo-Frequência (VTF). A questão central é definir um critério para que apenas os coeficientes com informação de agrupamento sejam usados. A solução típica na literatura é usar os coeficientes com maior variância, ou os coeficientes com maior informação de Shannon [113]. A propomos um novo critério simples e de fácil implementação. A ideia central é encontrar coeficientes que tenham sua distribuição bimodal ao longo de todo registro, ou mais especificamente, os que têm a distribuição mais distante da distribuição Normal. Para esse fim, duas métricas são usdas: (i) Teste Kolmogorov-Smirnov (KS), e (ii) Curtose.

No primeiro caso, usamos a estatística do teste KS como distância da distribução Normal, ou seja, os coeficientes com maior estatístico serão as menos gaussianas. A

curtose de uma variável X é definida aqui como

j? kcld =mc(l − nqp o)pd− 3+

onde no+e é a média e o desvio padrão de X, respectivamente. A subtração por 3 é

feita para que curtose da distribução Normal seja nula. Assim, por esse critério, escolheremos os coeficientes com maior curtose absoluta.

Classificação e validação – Para determinar que vetores estão no mesmo cluster,

usamos o algoritmo K-means (KM) nos vetores reduzidos. Assumindo que há dois tipos de batimento, o K-means é programado para encontrar 2 clusters. Para validar nossa proposta, usamos seis registros longos (24-72 horas) com algum tipo de patologia reconhecível pela morfologia dos batimentos. Por exemplo, um deles, referenciado aqui como Paciente #6, usa um marca-passo que apenas atua quando o batimento natural não é detectado em um certo intervalo de tempo; nesse caso, o objetivo é detectar todos os batimentos iniciados pelo dispositivo. O resultado da classificação foi comparada com análises de especialistas por inspeção visual.

4.3. Resultados

Apenas o critério KS conseguiu atingir 100% de classificação e quando 40 coeficientes são usados. A Figura 4.3 mostra a comparação dos coeficientes menos (high KS stat) e mais gaussianos (low KS stat). Note como a discriminação dos pontos é melhor quando os coeficientes escolhidos por esse critério são utilizados.

A Figura 4.4 mostra a comparação dos critérios em função do número de coeficientes utilizados. Os resultados mostrados são a classificação média de todos os pacientes. Curiosamente, a classificação começa a cair quando mais de 40 coeficientes são usados no critério KS. O critério da Curtose não é mostrado por nunca atingir 90% de classificação.

Em resumo, os resultados mostram que a utilização de classificação não supervisionada em princípio pode ser usada para diagnóstico de ECG. Note que o método aqui apresentado não julga qual dos agrupamentos é patológico. A ideia é apenas separar dois grupos com morfologias de onda diferente. Em seguida, os grupos são apresentados ao médico, que identifica o grupo patológico e a patologia em questão. Portanto, esse algoritmo não classifica precisamente que patologia aparece no registro, mas evita que o médico tenha que analisar todos os batimentos de um registro para achar formas de onda suspeitas.

Figura 4.3. Comparação dos coeficientes com alto e baixo estatístico no teste KS.

Figura 4.4. Eficiência da classificação dos critérios.

10 20 30 40 50 60 91 92 93 94 95 96 97 98 99 100 Número de coeficientes % de acerto Critério KS Critério Var Critério Inf −4 −3 −2 −1 0 1 2 −2 −1.5 −1 −0.5 0 0.5 Coff 1 Coff 2 −2 −1 0 1 2 −0.8 −0.6 −0.4 −0.2 0 0.2 0.4 0.6 Coff 3 Coff 4 −2 −1 0 1 2 −0.6 −0.4 −0.2 0 0.2 0.4 0.6 0.8 Coff 119 Coff 120 −0.1 0 0.1 0.2 0.3 −0.3 −0.2 −0.1 0 0.1 0.2 Coff 118 Coff 117

HIGH KS STAT WAVELET COEFFICIENT CLUSTERS

Documentos relacionados