Um algoritmo de digitalização de ECG em papel totalmente automático baseado em aprendizagem profunda

2b2cd24fe66aac027c2a8bcec398c088.jpeg


 Produzido por CDA Data Analyst  

Aplicação de Deep Learning em Detectores Médicos

584ad47989d3767e254b5559d835b1ea.png

Há um interesse crescente na aplicação de métodos de aprendizado profundo a eletrocardiogramas (ECGs), e estudos recentes mostraram que redes neurais (NNs) podem prever futura insuficiência cardíaca ou fibrilação atrial apenas a partir de ECGs. No entanto, o treinamento de redes neurais requer um grande número de ECGs, e muitos ECGs são apenas baseados em papel, o que não é adequado para o treinamento de redes neurais. Neste contexto, uma ferramenta online de digitalização de ECG totalmente automatizada foi desenvolvida para converter ECGs de papel escaneados em sinais digitais.

O algoritmo usa detecção automática de ponto de ancoragem horizontal e vertical, segmenta automaticamente a imagem de ECG em imagens individuais de 12 derivações e, em seguida, aplica um algoritmo de morfologia dinâmica para extrair o sinal de interesse. Em seguida, validamos o desempenho do algoritmo em 515 ECGs digitais, 45 dos quais foram impressos, escaneados e redigitalizados. Depois de excluir ECGs com sobreposição de sinal de derivação, a ferramenta de digitalização automatizada alcançou 99,0% de correlação entre sinais digitalizados e ECGs reais (n = 515 padrão 3 × 4 ECGs). Sem exclusão, a correlação média das derivações em todos os ECGs 3 × 4 foi de 90% a 97%. Após excluir ECGs com sobreposição de sinal de derivação, a correlação foi de 97% para os formatos de ECG 12×1 e 3×1. Sem exclusão, a correlação média de algumas derivações no ECG 12×1 foi de 60-70%, enquanto a correlação média atingiu 80-90% no ECG 3 por 1.

Imprimindo, digitalizando e redigitalizando ECGs, nossa ferramenta alcançou 96% de correlação com o sinal original. Desenvolvemos e validamos uma ferramenta online de digitalização de ECG totalmente automatizada e fácil de usar. Ao contrário de outras ferramentas disponíveis, isso não requer nenhuma segmentação manual do sinal de ECG. Nossa ferramenta pode facilitar a digitalização rápida e automatizada de grandes repositórios de ECG em papel, permitindo seu uso em projetos de aprendizado profundo.

Visão geral do método

8c1966c9fd8605c05f3e27679c417e86.png

Figura 1: Algoritmo de digitalização de ECG

A Figura 1 descreve nosso algoritmo automático de digitalização de ECG: as imagens de ECG em papel são primeiro pré-processadas para remover quaisquer regiões e linhas de grade editadas e, em seguida, convertidas em imagens binárias, permitindo a detecção subsequente da linha de base do ECG. Depois que a linha de base do ECG for detectada, use as âncoras verticais para detectar os limites superior e inferior de cada sinal de derivação do ECG. Esta etapa também permite que o algoritmo determine o layout (ou seja, o número de linhas) das derivações de ECG no ECG impresso. Em seguida, usando a detecção do nome da derivação, os pontos de ancoragem horizontais de cada derivação, os limites esquerdo e direito do sinal de ECG a serem digitalizados, representando seu início e fim, respectivamente, são usados ​​para cortar e extrair o sinal para cada derivação das 12 derivações dístico ECG-derivação. Finalmente, o sinal em cada derivação é digitalizado individualmente.

fonte de dados

Nossa ferramenta de digitalização de ECG online foi desenvolvida usando ECGs de 12 derivações registrados em pacientes do Imperial College London NHS Trust. Esses ECGs foram inicialmente impressos em papel e fornecidos à equipe de pesquisa como varreduras anônimas em Portable Document Format (PDF), que foram posteriormente reformatados como arquivos Portable Network Graphics (PNG) de 250 dpi. Esses ECGs geralmente estão em uma configuração tradicional de 3 x 4 derivações com tiras de ritmo da derivação II. O banco de dados contém apenas ECGs em papel, sem dados reais de ECG digital.

Para validação, usamos ECGs anônimos de 12 derivações do Beth Israel Deaconess Medical Center (BIDMC) em Boston, MA, EUA como arquivos PNG em configurações de derivação 3 × 4, 12 × 1 e 3 × 1 para validar nossa ferramenta digitalizada. O segundo banco de dados contém imagens de ECG e dados reais de ECG digital. Todos os ECGs usados ​​no desenvolvimento e teste de nossas ferramentas digitalizadas foram calibrados para 1 mV = 10 mm e registrados a uma velocidade de papel de 25 mm/s.

Tanto o Imperial College quanto o BIDMC forneceram revisão ética para o projeto. Todos os métodos foram executados de acordo com as diretrizes e regulamentos relevantes. A aprovação ética para a coleta de dados usada neste estudo foi concedida pelo Comitê de Ética em Pesquisa da Diretoria de Pesquisa em Saúde, Londres (Hampstead) (protocolo número 20HH5967, referência REC 20/HRA/2467, patrocinador Imperial College London). Todos os sujeitos e/ou seus responsáveis ​​legais obtiveram consentimento informado. Este estudo está em conformidade com a Declaração de Helsinki.

Etapas do método

pré-processando

No banco de dados usado para desenvolvimento, todos os ECGs continham um cabeçalho que consistia em pixels pretos de informações do paciente editadas, o que poderia afetar adversamente a digitalização do traçado de ECG. Portanto, as áreas editadas de cada ECG foram removidas automaticamente antes que o processo de digitalização fosse implementado. A região editada é preta, resultando em uma intensidade de pixel média de zero para cada linha da região editada, enquanto a intensidade de pixel média torna-se um valor escalar positivo na região de interesse a ser digitalizada. Isso permite que regiões editadas sejam identificadas e removidas de forma confiável antes da digitalização do sinal de ECG.

a3a1bb4e9b7a3fc74534fa75c5f88818.png

A figura acima demonstra uma visão geral do algoritmo de digitalização automática de ECG: Etapa I: Pré-processamento da imagem de ECG de 12 derivações para remover a parte editada do ECG e da grade de ECG. Em seguida, determine a linha de base do ECG com a ajuda dos pontos de ancoragem verticais para obter a configuração do ECG. Passo 2: Depois de determinar os pontos de ancoragem horizontais e verticais e a configuração das derivações, corte o sinal de 12 derivações. Passo 3: Extraia sinais de ECG de imagens de ECG de derivação única. Passo 4: Projete a interface do usuário usando a ferramenta de painel.

Os ECGs geralmente são impressos em papel que inclui linhas de grade que são removidas antes do processo de digitalização. Dado que o ECG contém pixels vermelhos, defina o canal vermelho da imagem para 1 e converta a imagem em tons de cinza. Um limite de 0,94 foi usado para distinguir entre os pixels que compõem o sinal de ECG e as linhas de grade. Pixels > 0,94 foram descartados, aqueles com ≤ 0,94 foram considerados como sinal de ECG ou indicação do nome da derivação. Dessa forma, as informações do ECG e do nome da derivação na imagem binária são extraídas e o plano de fundo e as linhas de grade são removidos. A imagem binária processada é mostrada na Figura 2 A, B.

Detecção de linha de base de ECG e determinação de configuração de ECG

Após o pré-processamento, a primeira etapa no processo de digitalização automatizada exige que o algoritmo detecte a linha de base do sinal e determine o número da linha do sinal de ECG para determinar a configuração do ECG. Consideramos a linha de base do ECG como a linha horizontal com a maior intensidade de sinal de ECG no eixo horizontal.

A transformada de Hough é uma transformação de coordenadas que converte uma imagem de um eixo de coordenadas cartesianas em um eixo de coordenadas polares e tem sido usada para extração de recursos de visão computacional de imagens digitais. Aqui, aplicamos a transformada de Hough para identificar a linha de base do ECG. Para realizar a transformada de Hough e limitar o número de soluções plausíveis, duas restrições foram implementadas para evitar a identificação imprecisa da linha de base. Primeiro, dado que se espera que a linha de base do ECG esteja próxima da horizontal, apenas a linha entre -2,5 e +2,5 é considerada em torno do eixo x. Em segundo lugar, como se espera que a linha de base se estenda quase por toda a imagem, quaisquer linhas menores que 80% da largura impressa do ECG são descartadas. Onde houver espaço entre as formas de onda das derivações de ECG, mescle as linhas se o espaço entre as derivações não for superior a 15% da largura total da imagem. Isso garante que os sinais de ECG das derivações adjacentes permaneçam independentes e não sejam combinados durante a digitalização. Essa abordagem também ajuda a determinar o valor da linha de base no ECG impresso e, em combinação com a detecção de âncora vertical subjacente, fornece informações sobre a configuração do eletrodo.

0c9b9db8d5b27306c41910daf1bd39ec.png

Figura 2: Imagens de sinal de ECG individuais cortadas para cada derivação: (A) varredura bruta de ECG de 12 derivações com informações de identificação do paciente; (B) detecção de linha de base usada para determinar a distância vertical entre as derivações; (C) detecção do nome da derivação é usada para determinar o distância horizontal entre as derivações; (D) Cortado para obter o sinal de ECG para cada derivação. A largura do corte é a distância do final do nome do líder até o início do nome do líder adjacente e a altura do corte é 1,4 vezes a distância vertical da linha de base detectada no meio.

Detecção automática de ponto de ancoragem

Detecção de âncora vertical

Assim como a detecção de linha de base é usada para determinar pontos de ancoragem verticais para identificar o sinal de ECG no espaço, os pontos de ancoragem verticais são usados ​​para determinar os limites superior e inferior do sinal em cada derivação de ECG para identificar o sinal a ser digitalizado. O comprimento de corte vertical é mostrado na Fig. 2B. Os limites superior e inferior foram definidos como 0,7 vezes a distância entre dois sinais de ECG adjacentes (planos horizontais) acima e abaixo da linha de base do ECG, respectivamente.

Detecção de âncora horizontal

Os pontos de ancoragem horizontais são usados ​​para definir os limites esquerdo e direito dos sinais de ECG a serem digitalizados, indicando seu início e fim, respectivamente. Os nomes das derivações no plano horizontal e os pontos iniciais dos sinais de ECG subsequentes constituem os pontos inicial e final dos sinais de ECG a serem digitalizados. A distância horizontal máxima contendo sinais de ECG de outras derivações no mesmo ECG é usada para definir a borda direita da derivação mais à direita da imagem, que não possui borda direita.

Nosso modelo de reconhecimento de texto falhou em detectar esses nomes quando eles estavam muito próximos da linha de base do ECG. Nesses casos, a linha de base do ECG foi removida para permitir que as ferramentas de digitalização reconheçam os nomes das derivações. Além disso, a dilatação morfológica e a erosão foram aplicadas às imagens para melhorar a distinção entre os nomes dos guias e os sinais circundantes. Assim, fica mais fácil para os modelos de reconhecimento de texto identificar esses casos. A dilatação é um algoritmo iterativo de crescimento de região que engrossa as linhas, e a erosão é um algoritmo iterativo de redução de região que torna as linhas mais finas, tornando qualquer objeto de interesse mais reconhecível para processos automatizados. Filtre todos os objetos de interesse na imagem dessa maneira para excluir aqueles com proporção >5 e aqueles com largura ou altura <5 ou >500 pixels.

Posteriormente, o modelo de aprendizado profundo de reconhecimento de caracteres de texto treinado 32 é usado para detectar especificamente nomes de clientes em potencial entre outros objetos de filtragem. A entrada para o modelo consiste em uma imagem binária de ECG de 12 derivações e 12 strings de texto de nome de derivação de verdade

('I', 'II', 'III', 'avr', 'avl', 'avf', 'v1', 'v2', 'v3', 'v4', 'v5', 'v6')。

A saída constitui qualquer texto detectado pelo modelo, sua caixa delimitadora correspondente e pontuação de confiança. O limite para a pontuação de confiança é configurado para detectar nomes de leads de forma que a identificação de uma das sequências de texto faça com que a pontuação de confiança exceda o limite. Desta forma, os objetos de nome do encadeamento, informações de posição, altura e largura dos objetos de nome do encadeamento são identificados para sua implementação como âncoras horizontais. O processo de obtenção de distâncias horizontais a partir da detecção de nomes de derivações é mostrado na Figura 2C. No caso de detecção malsucedida de alguns nomes de derivações, a âncora horizontal é baseada na distância entre outros nomes de derivações que foram identificados com sucesso no mesmo ECG para ter certeza . Após a identificação bem-sucedida dos pontos de ancoragem horizontal e vertical, os segmentos de ECG de cada derivação foram cortados, conforme mostrado na Figura 2D.

Extração de ECG de derivação única

Extrair o sinal de ECG da imagem recortada requer a remoção de ruído "sal e pimenta", incluindo pixels brancos e pretos esparsos, bem como qualquer sinal de ECG parcial de outras derivações. O último é especialmente verdadeiro para traçados de ECG em grande escala que invadiriam imagens cortadas de derivações adjacentes, conforme mostrado na Figura 3. Para tanto, utilizamos primeiramente a dilatação da imagem para conectar eventuais descontinuidades no sinal de ECG de interesse, o que também evita conexões espúrias a ruídos ou sinais adjacentes. A partir daí, consideramos o maior objeto detectável na imagem como o sinal de ECG de interesse e todos os outros objetos como artefatos. Esse processo é ilustrado na Figura 3. Isso mostra que esse método preserva o sinal de interesse e remove outros objetos contidos na imagem recortada.

A próxima etapa envolve a conversão da imagem de ECG binária extraída em um sinal de ECG digital unidimensional. O sinal de ECG na imagem binária consiste em um conjunto de pixels com coordenadas x (tempo) e y (tensão), calibrados em 25 mm/s e 10 mm/mv. Para qualquer ponto no tempo (eixo x), vários pixels podem compor a magnitude correspondente. Dado que um sinal de ECG digital pode ter apenas uma coordenada y para cada coordenada x, reconstruímos o sinal de ECG digital usando o pixel de magnitude mediana (eixo y) na imagem binária. Isso gera um sinal de ECG digital com coordenadas x e y em pixels. Para atribuir valores de tempo e tensão aos sinais digitais de ECG, utilizamos as tiras de ritmo (ou sinal mais longo) em cada ECG para determinar a resolução de tempo e tensão. Dado que um ECG padrão de 12 derivações tem uma duração de 10 segundos, a resolução temporal é calculada como 10 segundos divididos pelo número de pixels no eixo x. Um valor padrão para resolução de tensão-tempo é 0,1 mV/40 ms = 0,0025 mV/ms, o que permite que a resolução de tensão de um sinal seja determinada pela multiplicação da resolução de tempo pela resolução de tensão-tempo (0,0025 mV/ms). Assim, o tempo do sinal de ECG digital é calculado como o número de pixels no eixo x vezes a resolução do tempo, e a magnitude é o número de pixels no eixo y vezes a resolução da tensão.

78a1ed0ec1bc41998cd222952db18b37.png

Figura 3: Processo de limpeza das imagens cortadas de ECG. Após o recorte da região de interesse, o processo de dilatação conecta possíveis pontos de interrupção horizontalmente para obter o sinal de ECG completo. Posteriormente, o processo de rotulagem identifica os maiores objetos como sinais de interesse. Finalmente, os artefatos na imagem cortada são removidos para preservar o sinal de interesse.

Desenvolvimento de ferramenta online Dashboard

Desenvolvemos uma ferramenta online em Python dash plotly. As etapas abaixo fornecem aos usuários finais instruções passo a passo para usar a ferramenta online. Primeiro, os usuários precisam digitalizar e fazer upload de uma imagem de ECG. Os usuários são lembrados de redigir totalmente e anonimizar todos os dados confidenciais ou de identificação do paciente. As imagens são lidas pelo método Python "cv2.imread", que pode suportar qualquer formato de imagem suportado por "cv2.imread". Depois que a imagem é carregada, ela é exibida com uma altura fixa de 600 pixels (px). Em seguida, uma barra suspensa oferece a opção de visualizar cada sinal de ECG digitalizado, com a opção de alterar a resolução ampliando ou minimizando a imagem. O ECG digitalizado pode ser baixado em uma planilha de 13 colunas, a primeira coluna fornecendo dados do eixo de tempo e as 12 colunas restantes sendo dados de tensão do sinal de ECG.

Análise Estatística

Validamos nossa ferramenta usando a correlação de Pearson e o erro quadrático médio (RMSE) para determinar a correlação entre o sinal de ECG real e o sinal de ECG digitalizado gerado por nossa ferramenta de digitalização. A validação foi realizada em um banco de dados independente obtido do BIDMC. Coeficiente de correlação de Pearson e erro quadrático médio (RMSE) implementados usando Python ("scipy.stat.pearsonr" para coeficiente de correlação de Pearson, "sklearn.metrics.mean_squared_error" para RMSE).

resultado

A primeira etapa no processo de digitalização requer que o algoritmo detecte a configuração da derivação do ECG impresso usando pontos de ancoragem horizontais e verticais para que cada derivação possa ser cortada por vez. Outras ferramentas de digitalização28 desenvolveram uma interface semelhante usando algoritmos de detecção de linha para detecção de ponto de ancoragem horizontal e vertical que funciona com ECGs impressos em uma configuração 6 × 2. Embora nossa ferramenta empregue uma abordagem semelhante à detecção de âncora vertical, também aplicamos um modelo de reconhecimento de texto baseado em aprendizado profundo para detectar o nome do protagonista para detecção de âncora horizontal. Isso tem a vantagem de permitir que o software extraia dados de qualquer configuração de ECG. Embora seja possível identificar pontos de ancoragem horizontais dividindo a imagem de ECG ao meio, essa abordagem pode não ser precisa em configurações de ECG em que as derivações não são equidistantes e estão disponíveis apenas para a configuração de ECG 6 × 2. Outras ferramentas de digitalização também requerem marcação manual de pontos de ancoragem e são limitadas em sua aplicação pela configuração do ECG. Eles também dependem do usuário, exigindo a seleção manual de cada eletrodo antes do processo de digitalização. Por outro lado, nossa ferramenta de digitalização pode ser usada com diferentes configurações de ECGs e não requer entrada manual antes do processo de digitalização. Prevemos que isso facilitará sua aplicação em ambientes clínicos e não clínicos, permitindo que volumes maiores de ECGs impressos sejam digitalizados em menos tempo.

Após a detecção do eletrodo e o corte individual do eletrodo, nossa ferramenta de digitalização fornece um método eficiente para a extração do sinal de ECG. Semelhante a outras interfaces de digitalização, aplicamos algoritmos de conectividade para rotular e excluir pequenos objetos. No entanto, outros métodos de digitalização existentes não podem remover todos os artefatos não ECG ou partes do sinal de ECG de outras derivações, o que requer outros processos, como um processo iterativo de seleção de pixels da esquerda para a direita da imagem. Embora esse método possa extrair um ECG, pode ser um processo complexo e demorado. Em contraste, aproveitamos uma abordagem de morfologia dinâmica para conectar quaisquer descontinuidades no sinal de ECG antes de identificar os maiores objetos rotulados como sinais de ECG de interesse. Isso efetivamente remove o ruído sem processamento computacional adicional.

Tradicionalmente, muitas ferramentas de digitalização de ECG existentes exigiam segmentação manual, remoção da linha de grade e processamento para extrair o sinal digital. Ravi Chandran et ai. e Lobodzinski et al. O reconhecimento óptico de caracteres foi aplicado para digitalizar e referenciar texto impresso com bancos de dados de modelos de caracteres predefinidos ou para armazenar dados demográficos. Além dos métodos tradicionais, outros usaram técnicas de aprendizado profundo de ponta a ponta para digitalização de ECG. No entanto, sua técnica é limitada em generalização para diferentes bancos de dados de imagens de ECG, especialmente em diferentes configurações.

A motivação para desenvolver nossa ferramenta foi permitir que os usuários gerassem rápida e facilmente um grande número de ECGs digitais a partir de papel, imagens ou cópias digitalizadas. Prevemos que isso será particularmente útil para indivíduos que desejam usar ECGs em aplicativos de aprendizado de máquina. Embora isso possa ser obtido sem digitalizar o ECG, por exemplo, usando um ECG em papel ou suas imagens30, qualquer saída desses procedimentos depende inerentemente da qualidade da entrada. Por outro lado, nossa ferramenta digitaliza ECGs de papel com diferentes configurações para gerar entradas padronizadas para algoritmos de aprendizado de máquina.

No geral, nossas ferramentas digitais têm as seguintes vantagens:

1. Totalmente automático, não há necessidade de os usuários inserirem manualmente a segmentação de sinal de derivação única.

2. A detecção de nome de chumbo baseada em reconhecimento de texto permite que nossas ferramentas digitais sejam universais em imagens de ECG de diferentes configurações ou varreduras de ECG em papel.

3. Algoritmo de extração de ECG eficiente para digitalização rápida quando necessário.

4. A correlação de Pearson e o erro quadrático médio do ECG digital verdadeiro e das formas de onda de ECG digitalizadas são métodos poderosos para validar as ferramentas de digitalização de ECG.

referência

Tuncer, T., Dogan, S., Plawiak, P. & Subasi, A. Uma nova árvore de malha concatenada discreta de wavelet e método de reconhecimento de sinal de ECG baseado em padrão de xadrez ternário. Biomed. Processo de sinal. Controle 72, 103331 (2022).

Tuncer, T., Dogan, S., Pławiak, P. & Acharya, UR Detecção automatizada de arritmia usando um novo padrão local hexadecimal e transformação wavelet multinível com sinais de ECG. Knowl. Sist. 186, 104923 (2019).

Baygin, M., Tuncer, T., Dogan, S., Tan, R.-S. & Acharya, UR Detecção automatizada de arritmia com técnica de árvore homeomorficamente irredutível usando mais de 10.000 registros individuais de ECG de indivíduos. Inf. ciência 575, 323–337 (2021).

Kobat, MA, Karaca, O., Barua, PD & Dogan, S. Prismatoidpatnet54: um modelo preciso de classificação de sinal de ECG usando arquitetura de aprendizado baseada em padrão prismatóide. Simetria 13, 1914 (2021).

Attia, ZI et al. Um algoritmo de ECG ativado por inteligência artificial para a identificação de pacientes com fibrilação atrial durante o ritmo sinusal: uma análise retrospectiva da previsão do resultado. Lancet 394, 861–867 (2019).

Raghunath, S. et ai. As redes neurais profundas podem prever a fibrilação atrial de início recente a partir do ECG de 12 derivações e ajudar a identificar aqueles em risco de acidente vascular cerebral relacionado à fibrilação atrial. Circulação 143, 1287–1298 (2021).

e5d835896a7238d394920bc76737f016.gif

88d9751da1b4d30fa99c2f8063816c59.gif

b86fd51b03f7182c2ee676526d1a9cca.jpeg

Acho que você gosta

Origin blog.csdn.net/weixin_38754337/article/details/130397439
Recomendado
Clasificación