Camera Image Processing on ESP32 Microcontroller with Help of Convolutional Neural Network
Loading...
Files
Date
2022-09-26
Journal Title
Journal ISSN
Volume Title
Publisher
National Aviation University
Abstract
This paper analyzes a common ESP32 microcontroller with a built-in camera for image classification tasks using a convolutional neural network. ESP32 is commonly used in IoT devices to read data and control sensors, so its computing power is not significant, which has a positive effect on the cost of the device. The prevalence of ultra-low power embedded devices such as ESP32 will allow the widespread use of artificial intelligence built-in IoT devices. The duration of photographing and photo processing is obtained in the paper, as this can be a bottleneck of the microcontroller, especially together with machine learning algorithms. Deployed convolutional neural network, pre-trained on another device, MobileNet architecture on microcontroller and proved that ESP32 capacity is sufficient for simultaneous operation of both the camera and convolutional neural network.
В работе проанализирован распространенный микроконтроллер ESP32 со встроенной камерой для задач классификации изображений с использованием сверточной нейронной сети. Обычно ESP32 используется в устройствах IoT для считывания данных и управления сенсорами, поэтому его вычислительная мощность не является значительной, что положительно влияет на стоимость устройства. Распространенность встроенных устройств со сверхнизким энергопотреблением, таких как ESP32, позволит массовое распространение встроенных устройств IoT с искусственным интеллектом. В работе получена продолжительность фотографирования и обработки фотографий, поскольку это может быть узким местом микроконтроллера, особенно вместе с алгоритмами машинного обучения. Развернута сверточная нейронная сеть, предварительно обученная на другом устройстве, архитектура MobileNet на микроконтроллере и доказана, что мощностей ESP32 достаточно для одновременной работы как камеры так и сверточной нейронной сети.
В работе проанализирован распространенный микроконтроллер ESP32 со встроенной камерой для задач классификации изображений с использованием сверточной нейронной сети. Обычно ESP32 используется в устройствах IoT для считывания данных и управления сенсорами, поэтому его вычислительная мощность не является значительной, что положительно влияет на стоимость устройства. Распространенность встроенных устройств со сверхнизким энергопотреблением, таких как ESP32, позволит массовое распространение встроенных устройств IoT с искусственным интеллектом. В работе получена продолжительность фотографирования и обработки фотографий, поскольку это может быть узким местом микроконтроллера, особенно вместе с алгоритмами машинного обучения. Развернута сверточная нейронная сеть, предварительно обученная на другом устройстве, архитектура MobileNet на микроконтроллере и доказана, что мощностей ESP32 достаточно для одновременной работы как камеры так и сверточной нейронной сети.
Description
Науковий журнал «Електроніка та системи управління» президією Міністерства освіти і науки України віднесено до наукових фахових видань у галузі технічних наук категорії «Б».
Рекомендовано до друку вченою радою Національного авіаційного університету (протокол № 5 від 21 вересня 2022 р.).
Зареєстровано Міністерством юстиції України.
Свідоцтво про державну реєстрацію друкованого засобу масової інформації.
Серія КВ №16720-5292 ПР від 21 травня 2010 року.
D. Schweizer, M. Zehnder, H. Wache, H. Witschel, D. Zanatta and M. Rodriguez. Using Consumer Behavior Data to Reduce Energy Consumption in Smart Homes: Applying Machine Learning to Save Energy without Lowering Comfort of Inhabitants, 2015. https://doi.org/10.1109/ICMLA.2015.62
[2] Liciotti, Daniele & Bernardini, Michele & Romeo, Luca & Frontoni, Emanuele. A Sequential Deep Learning Application for Recognising Human Activities in Smart Homes, Neurocomputing, 2019, pp. 396. https://doi.org/10.1016/j.neucom.2018.10.104
[3] Keras documentation: MobileNet, MobileNetV2, and MobileNetV3. Keras: the Python deep learning API. https://keras.io/api/applications/mobilenet/
[4] Jian Mao, Qixiao Lin, Jingdong Bian. Application of learning algorithms in smart home IoT system security, 2018. https://doi.org/10.3934/mfc.2018004
[5] L. Y. Pratt, Discriminability-based transfer between neural networks. NIPS Conference: Advances in Neural Information Processing Systems, 1992.
[6] STM32Cube.AI: Convert neural networks into optimized code for STM32. ST life.augmented Blog. https://blog.st.com/stm32cubeai-neural-networks/
[7] L. Lai,, N. Suda, I. V. Chandra, CMSIS-NN: efficient neural network kernels for arm cortex-M CPUs. Comput. https://arxiv.org/abs/1801.06601, 2018
[8] General vision, Presentation of the Curie Neurons on Arduino/Genuino101,https://www.general-vision.com/publications/PR_CurieNeuronsPresentation.pdf
[9] Allan, A. Getting started with the NVIDIA jetson nano developer kit, 2019
[10] M5-docs. https://docs.m5stack.com/en/unit/m5camera
[11] Pseudostatic (random-access) memory (PSRAM) | JEDEC. https://www.jedec.org/standards-documents/dictionary/terms/pseudostatic-random-access-memory-psram, 2019
[12] Micros() – arduino reference. Arduino - Home. https://www.arduino.cc/reference/en/language/functions/time/micros/
[13] Stephen Johnson. Stephen Johnson on Digital Photography. O'Reilly. ISBN 0-596-52370-X , 2006
[14] Contributors to Wikimedia projects. ImageNet - Wikipedia. Wikipedia, the free encyclopedia. https://en.wikipedia.org/wiki/ImageNet
[15] Intro to machine learning with edge impulse - silicon labs. (2020). Silicon Labs. https://www.silabs.com/support/training/intro-machine-learning-with-edge-impulse/intro-machine-learning-with-edge-impulse-presentation
[16] Tensorflow.(2022). models/research/slim/nets/ mobilenet at master tensorflow/models. GitHub.(2022),https://github.com/tensorflow/models/tree/master/research/slim/nets/mobilenet
[17] NetAdapt: Platform-aware neural network adaptation for mobile applications. (2018). arXiv.org. https://arxiv.org/abs/1804.03230
Keywords
machine learning, transfer learning, microcontrollers, image classification, ESP32, машинное обучение, трансферное обучение, микроконтроллеры, классификация изображений, ESP32
Citation
Sineglazov V. M. Camera Image Processing on ESP32 Microcontroller with Help of Convolutional Neural Network / V. M. Sineglazov, V. P. Khotsyanovsky // Electronics and Control Systems. Kyiv: NAU, 2022. – No 2(72). – pp. 26–31.