Use este identificador para citar ou linkar para este item: http://repositorio.utfpr.edu.br/jspui/handle/1/36087
Título: Desenvolvimento de um framework Python orientado à contribuição para análise e processamento de biossinais: exemplo de aplicação para eletroencefalogramas
Título(s) alternativo(s): Development of a contribution-oriented Python framework for analysis and processing o biossignals: application on electroencephalograms
Autor(es): Hauer, Arthur
Orientador(es): Mendes Júnior, José Jair Alves
Palavras-chave: Processamento de sinais
Engenharia biomédica
Python (Linguagem de programação de computador)
Eletroencefalografia
Software - Desenvolvimento
Signal processing
Biomedical engineering
Python (Computer program language)
Electroencephalography
Computer software - Development
Data do documento: 20-Dez-2024
Editor: Universidade Tecnológica Federal do Paraná
Câmpus: Curitiba
Citação: HAUER, Arthur. Desenvolvimento de um framework Python orientado à contribuição para análise e processamento de biossinais: exemplo de aplicação para eletroencefalogramas. 2025. Dissertação (Mestrado em Engenharia Elétrica e Informática Industrial) - Universidade Tecnológica Federal do Paraná, Curitiba, 2024.
Resumo: Em aplicações de Engenharia Biomédica, o processamento de biossinais geralmente ocorre atrelado à ferramentas já consolidadas no mercado (normalmente fechadas para contribuição externa), ferramentas open-source com arquitetura complexa, ou ao dispendioso trabalho de programar o pipeline de processamento para o problema em mãos. Este último aumenta a probabilidade de erros, podendo comprometer o experimento executado e seus resultados. No caso de ferramentas open-source de arquitetura complexa, o problema acaba sendo o mesmo do mencionado anteriormente, já que a complexidade compromete a capacidade de contribuição. A tendência observável em pesquisas envolvendo, especialmente, imagética motora usando sinais de eletroencefalografia (EEG) nos últimos anos é o uso das linguagens Python e MATLAB. Python é uma escolha popular por ser uma linguagem interpretada, de alto nível, de fácil uso e extensa seleção de bibliotecas voltadas para processamento de sinais e aprendizado de máquina. Assim, este trabalho propõe um novo framework baseado em Python, para execução de experimentos envolvendo biossinais. O framework foi desenvolvido utilizando práticas consolidadas de engenharia de software, seguindo o fluxo de coleta de requisitos, arquitetura, implementação e teste. Em cada uma das etapas deste fluxo, aplicaram-se métodos que visam facilitar contribuições ao projeto, habilitando sua expansão e uso generalizado. De modo a ser acessível a pesquisadores com conhecimento mínimo em programação, tem arquitetura com abordagem orientada a nós, onde cada nó representa uma transformação no sinal, como filtragem, extração de características ou classificação. A interface do usuário para configuração é única, sendo um arquivo JSON de leitura intuitiva, o que torna o arranjo experimental inerentemente replicável, contribuindo para a reprodutibilidade de pesquisas. Ainda, foi validado através da replicação experimental de um trabalho publicado sob o contexto de classificação de EEG, onde atingiu um desempenho de classificação, medido pela área sob a curva característica de operação do receptor, máximo de 0,847 e médio de 0,698, similar ao trabalho replicado, com (p entre 0,008 e 0,945 obtido através do teste de posto pareado de Wilcoxon agrupado por indivíduos do conjunto de dados, e 𝑝 de 0,339 sem agrupamento, indicando similaridade nos resultados. Ademais, durante a execução do experimento replicado, o framework consumiu em média 3228 MB de memória RAM, 104,48% de uso de CPU, e tempo de execução de 64,55 segundos em um processador AMD Ryzen 5 3600.
Abstract: In Biomedical Engineering applications, biosignal processing is often tied to tools already established in the market (typically closed to external contributions), open-source tools with complex architectures, or the costly effort of programming the processing pipeline for the problem at hand. Furthermore, programming the processing independently increases the likelihood of errors, potentially compromising the experiment and its results. In the case of open-source tools with complex architectures, the issue remains the same as previously mentioned, as complexity hinders the ability to contribute. A noticeable trend in recent years in research involving, particularly, motor imagery using electroencephalography (EEG) signals is the use of Python and MATLAB languages. Python is a popular choice as it is an interpreted, high-level language, easy to use, and offers an extensive range of libraries for signal processing and machine learning. Thus, this work proposes a new Python-based framework for conducting experiments involving biosignals. The framework was developed using established software engineering practices, following the workflow of requirements collection, architecture, implementation, and testing. In each stage of this workflow, methods were applied to facilitate contributions to the project, enabling its expansion and widespread use. To make it accessible to researchers with minimal programming knowledge, the framework employs a node-oriented architecture, where each node represents a signal transformation, such as filtering, feature extraction, or classification. The user interface for configuration is a single, intuitively readable JSON file, making the experimental setup inherently replicable and contributing to research reproducibility. Additionally, the framework was validated through the experimental replication of a published work in the context of EEG classification, achieving a classification performance, measured by the area under the receiver operating characteristic curve, with a maximum of 0.847 and an average of 0.698, similar to the replicated work, with p between 0.008 and 0.945 obtained through the Wilcoxon signed-rank test grouped by individuals in the dataset, and p value of 0.339 without grouping, indicating similarity in results. Furthermore, during the execution of the replicated experiment, the framework consumed an average of 3228 MB of RAM, 104.48% CPU usage, and a runtime of 64.55 seconds on a AMD Ryzen 5 3600 processor.
URI: http://repositorio.utfpr.edu.br/jspui/handle/1/36087
Aparece nas coleções:CT - Programa de Pós-Graduação em Engenharia Elétrica e Informática Industrial

Arquivos associados a este item:
Arquivo Descrição TamanhoFormato 
desenvolvimentoframework.pdf3,92 MBAdobe PDFThumbnail
Visualizar/Abrir


Este item está licenciada sob uma Licença Creative Commons Creative Commons