banner

Notícias

Apr 27, 2024

Prêmio Hackaday 2023: EyeBREAK pode ser um avanço

Para aqueles com derrames ou outras condições debilitantes, o controle sobre as pálpebras pode ser uma das últimas funções motoras restantes. Inspirado por [Jeremiah Denton] piscando em código Morse em uma entrevista na televisão, [MBW] projetou um dispositivo baseado em ESP32 para decodificar piscadas em palavras.

Embora um ESP32 ofereça Bluetooth para simular um teclado e tenha um consumo de energia relativamente baixo, é um desafio fazer com que um sistema de detecção de piscar adequado funcione a 20 quadros por segundo em um ambiente restrito. Tentativas anteriores usaram pontos de referência faciais para tentar determinar, com base em proporções, se um olho estava aberto ou fechado. Um detector em cascata combinado com um classificador XGBoost ofereceu excelente desempenho, mas apresentava dificuldades quando o olho não estava centralizado. Em última análise, uma CNN de 4 camadas 50×50 no TensorFlow Lite processa os quadros da câmera, produzindo uma única saída, olho aberto ou fechado. Para fins de depuração, ele transmite quadros de câmera por Wi-Fi com anotações via OpenCV, embora fazer com que o OpenCV compile para ESP32 também não seja trivial.

[MBW] treinou o modelo usando o conjunto de dados MRL e depois quantizou para int8. Fazer com que as pilhas de Bluetooth e Wi-Fi funcionassem simultaneamente foi um pouco trabalhoso, assim como gerenciar a RAM. Depois de esgotar SRAM e IRAM, [MBW] teve que migrar para PRAM. Todo o sistema está integrado em alguns óculos leves e proporciona uma experiência bastante confortável.

Embora o TensorFlow e os microcontroladores possam parecer um casal um tanto estranho, no final do dia, o mecanismo de inferência está apenas fazendo algumas contas em uma série de entradas com alguns pesos. Vimos até o TensorFlow Lite em um Commodore 64. Se você não conhece o [Almirante Jerimiah Denton], podemos esclarecer isso para você.

COMPARTILHAR