banner

Новости

Apr 27, 2024

Hackaday Prize 2023: EyeBREAK может стать прорывом

Для людей, перенесших инсульт или другие изнурительные состояния, контроль над веком может быть одной из последних оставшихся двигательных функций. Вдохновленный тем, как [Джеремия Дентон] моргал азбукой Морзе в телеинтервью, [MBW] разработал устройство на базе ESP32, позволяющее декодировать моргание в слова.

В то время как ESP32 предлагает Bluetooth для имитации клавиатуры и имеет относительно низкое энергопотребление, заставить правильную систему обнаружения моргания работать со скоростью 20 кадров в секунду в ограниченной среде является сложной задачей. Более ранние попытки использовали ориентиры лица, чтобы попытаться определить на основе соотношений, открыт или закрыт глаз. Каскадный детектор в сочетании с классификатором XGBoost показал отличную производительность, но давал сбои, когда глаз не был центрирован. В конечном итоге 4-слойная CNN 50×50 в TensorFlow Lite обрабатывает кадры камеры, создавая единый выходной сигнал, с открытым или закрытым глазом. В целях отладки он передает кадры с камеры через Wi-Fi с аннотациями через OpenCV, хотя компиляция OpenCV для ESP32 также была нетривиальной.

[MBW] обучил модель, используя набор данных MRL, а затем квантовал ее до int8. Заставить стеки Bluetooth и Wi-Fi работать одновременно было непросто, как и управлять оперативной памятью. После исчерпания SRAM и IRAM, [MBW] пришлось перейти на PRAM. Вся система встроена в легкие очки и обеспечивает довольно комфортную работу.

Хотя TensorFlow и микроконтроллеры могут показаться странной парой, в конце концов механизм вывода просто выполняет некоторые математические вычисления над массивом входных данных с некоторыми весами. Мы даже видели TensorFlow Lite на Commodore 64. Если вы не знаете об [адмирале Джеримайе Дентоне], мы можем пролить на вас некоторый свет.

ДЕЛИТЬСЯ