On the problem of object recognition on devices with limited resources
The problem of implementing object recognition on microcontrollers with limited resources, particularly the challenges related to their computational power, memory capacity, and energy consumption is addressesed. The use of the compact MobileNet neural network architecture is proposed, which is base...
Збережено в:
Дата: | 2025 |
---|---|
Автори: | , |
Формат: | Стаття |
Мова: | Ukrainian |
Опубліковано: |
Інститут програмних систем НАН України
2025
|
Теми: | |
Онлайн доступ: | https://pp.isofts.kiev.ua/index.php/ojs1/article/view/670 |
Теги: |
Додати тег
Немає тегів, Будьте першим, хто поставить тег для цього запису!
|
Назва журналу: | Problems in programming |
Репозитарії
Problems in programmingid |
pp_isofts_kiev_ua-article-670 |
---|---|
record_format |
ojs |
resource_txt_mv |
ppisoftskievua/7c/d7485801123d179edb9ee9bd0c03577c.pdf |
spelling |
pp_isofts_kiev_ua-article-6702025-04-16T13:57:48Z On the problem of object recognition on devices with limited resources До проблеми розпізнавання об’єктів на пристроях з обмеженими ресурсами Berdnyk, Y.M. Skotarenko, A.O. object recognition; classification; neural network; MobileNet architecture; microcontroller UDC 004.93 розпізнавання об’єктів; класифікація; нейронна мережа; архітектура MobileNet; мікроконтролер УДК 004.93 The problem of implementing object recognition on microcontrollers with limited resources, particularly the challenges related to their computational power, memory capacity, and energy consumption is addressesed. The use of the compact MobileNet neural network architecture is proposed, which is based on an algorithm with reduced computational load and ensures sufficient performance in resource-constrained environments. This approach enables image classification tasks to be performed on low-cost microcontrollers. Although the technologies discussed are well-known individually, their comprehensive application for specific classification tasks on microcontrollers, such as object recognition, remains underexplored. The article provides a detailed description of all development stages, including data preparation, model parameter tuning, and the use of specialized image scaling methods to reduce computational load. The practical part of the article is devoted to developing a strawberry recognition system to determine their ripeness level using the ESP32 microcontroller. The research results demonstrate the effectiveness of the approach for different applied tasks and confirm the feasibility of integrating computer vision technologies into resource-limited devices. Overall, the work proves that modern machine learning technologies are becoming accessible even to the least powerful hardware platforms, expanding their capabilities and areas of application..Problems in programming 2024; 4: 14-22 Розглянуто проблему реалізації розпізнавання об’єктів на мікроконтролерах з обмеженими ресурсами. Зокрема, виклики, пов’язані з їхньою обчислювальною потужністю, обсягом пам’яті та енергоспоживанням. Запропоновано використання компактної архітектури нейронної мережі MobileNet, яка базується на алгоритмі зі зниженим обчислювальним навантаженням і забезпечує достатню продуктивність у середовищах із обмеженими ресурсами. Такий підхід дає змогу виконувати задачі класифікації зображень на недорогих мікроконтролерах. Хоча технології, які розглядаються, є відомими самостійно, їхнє комплексне застосування для конкретних задач класифікації на мікроконтролерах, таких як розпізнавання об’єктів, залишається мало дослідженим. У статті наведено детальний опис усіх етапів розробки: підготовки даних, налаштування параметрів моделі, а також застосування спеціалізованих методів масштабування зображень для зменшення обчислювального навантаження. Практичну частину статті присвячено вирішенню прикладної задачі розроблення системи розпізнавання полуниць із визначенням ступеня їхньої стиглості на основі мікроконтролера ESP32. Результати дослідження демонструють ефективність підходу для різних прикладних задач і підтверджують можливість інтеграції технологій комп’ютерного зору у пристрої з обмеженими ресурсами. Загалом робота доводить, що сучасні технології машинного навчання стають доступними навіть для найменш потужних апаратних платформ, розширюючи їхні можливості та сфери використання.Problems in programming 2024; 4: 14-22 Інститут програмних систем НАН України 2025-04-16 Article Article application/pdf https://pp.isofts.kiev.ua/index.php/ojs1/article/view/670 10.15407/pp2024.04.014 PROBLEMS IN PROGRAMMING; No 4 (2024); 14-22 ПРОБЛЕМЫ ПРОГРАММИРОВАНИЯ; No 4 (2024); 14-22 ПРОБЛЕМИ ПРОГРАМУВАННЯ; No 4 (2024); 14-22 1727-4907 10.15407/pp2024.04 uk https://pp.isofts.kiev.ua/index.php/ojs1/article/view/670/722 Copyright (c) 2025 PROBLEMS IN PROGRAMMING |
institution |
Problems in programming |
baseUrl_str |
https://pp.isofts.kiev.ua/index.php/ojs1/oai |
datestamp_date |
2025-04-16T13:57:48Z |
collection |
OJS |
language |
Ukrainian |
topic |
object recognition classification neural network MobileNet architecture microcontroller UDC 004.93 |
spellingShingle |
object recognition classification neural network MobileNet architecture microcontroller UDC 004.93 Berdnyk, Y.M. Skotarenko, A.O. On the problem of object recognition on devices with limited resources |
topic_facet |
object recognition classification neural network MobileNet architecture microcontroller UDC 004.93 розпізнавання об’єктів класифікація нейронна мережа архітектура MobileNet мікроконтролер УДК 004.93 |
format |
Article |
author |
Berdnyk, Y.M. Skotarenko, A.O. |
author_facet |
Berdnyk, Y.M. Skotarenko, A.O. |
author_sort |
Berdnyk, Y.M. |
title |
On the problem of object recognition on devices with limited resources |
title_short |
On the problem of object recognition on devices with limited resources |
title_full |
On the problem of object recognition on devices with limited resources |
title_fullStr |
On the problem of object recognition on devices with limited resources |
title_full_unstemmed |
On the problem of object recognition on devices with limited resources |
title_sort |
on the problem of object recognition on devices with limited resources |
title_alt |
До проблеми розпізнавання об’єктів на пристроях з обмеженими ресурсами |
description |
The problem of implementing object recognition on microcontrollers with limited resources, particularly the challenges related to their computational power, memory capacity, and energy consumption is addressesed. The use of the compact MobileNet neural network architecture is proposed, which is based on an algorithm with reduced computational load and ensures sufficient performance in resource-constrained environments. This approach enables image classification tasks to be performed on low-cost microcontrollers. Although the technologies discussed are well-known individually, their comprehensive application for specific classification tasks on microcontrollers, such as object recognition, remains underexplored. The article provides a detailed description of all development stages, including data preparation, model parameter tuning, and the use of specialized image scaling methods to reduce computational load. The practical part of the article is devoted to developing a strawberry recognition system to determine their ripeness level using the ESP32 microcontroller. The research results demonstrate the effectiveness of the approach for different applied tasks and confirm the feasibility of integrating computer vision technologies into resource-limited devices. Overall, the work proves that modern machine learning technologies are becoming accessible even to the least powerful hardware platforms, expanding their capabilities and areas of application..Problems in programming 2024; 4: 14-22 |
publisher |
Інститут програмних систем НАН України |
publishDate |
2025 |
url |
https://pp.isofts.kiev.ua/index.php/ojs1/article/view/670 |
work_keys_str_mv |
AT berdnykym ontheproblemofobjectrecognitionondeviceswithlimitedresources AT skotarenkoao ontheproblemofobjectrecognitionondeviceswithlimitedresources AT berdnykym doproblemirozpíznavannâobêktívnapristroâhzobmeženimiresursami AT skotarenkoao doproblemirozpíznavannâobêktívnapristroâhzobmeženimiresursami |
first_indexed |
2025-07-17T09:42:29Z |
last_indexed |
2025-07-17T09:42:29Z |
_version_ |
1838409176814977024 |
fulltext |
Штучний інтелект
14
© Ю.М. Бердник, А.О. Скотаренко, 2024
ISSN 1727-4907. Проблеми програмування. 2024. №4
УДК 004.93 http://doi.org/10.15407/pp2024.04.014
Ю.М. Бердник, А.О. Скотаренко
ДО ПРОБЛЕМИ РОЗПІЗНАВАННЯ ОБ’ЄКТІВ
НА ПРИСТРОЯХ З ОБМЕЖЕНИМИ РЕСУРСАМИ
Розглянуто проблему реалізації розпізнавання об’єктів на мікроконтролерах з обмеженими ресурсами .
Зокрема, виклики, пов’язані з їхньою обчислювальною потужністю, обсягом пам’яті та енергоспожи-
ванням. Запропоновано використання компактної архітектури нейронної мережі MobileNet, яка базу-
ється на алгоритмі зі зниженим обчислювальним навантаженням і забезпечує достатню продуктив-
ність у середовищах із обмеженими ресурсами. Такий підхід дає змогу виконувати задачі класифікації
зображень на недорогих мікроконтролерах. Хоча технології, які розглядаються, є відомими само-
стійно, їхнє комплексне застосування для конкретних задач класифікації на мікроконтролерах, таких
як розпізнавання об’єктів, залишається мало дослідженим. У статті наведено детальний опис усіх ета-
пів розробки: підготовки даних, налаштування параметрів моделі, а також застосування спеціалізова-
них методів масштабування зображень для зменшення обчислювального навантаження. Практичну ча-
стину статті присвячено вирішенню прикладної задачі розроблення системи розпізнавання полуниць
із визначенням ступеня їхньої стиглості на основі мікроконтролера ESP32. Результати дослідження
демонструють ефективність підходу для різних прикладних задач і підтверджують можливість інте-
грації технологій комп’ютерного зору у пристрої з обмеженими ресурсами. Загалом робота доводить,
що сучасні технології машинного навчання стають доступними навіть для найменш потужних апарат-
них платформ, розширюючи їхні можливості та сфери використання.
Ключові слова: розпізнавання об’єктів, класифікація, нейронна мережа, архітектура MobileNet, мікро-
контролер.
Y.M. Berdnyk, A.O. Skotarenko
ON THE PROBLEM OF OBJECT RECOGNITION
ON DEVICES WITH LIMITED RESOURCES
The problem of implementing object recognition on microcontrollers with limited resources, particular ly the
challenges related to their computational power, memory capacity, and energy consumption is addressesed.
The use of the compact MobileNet neural network architecture is proposed, which is based on an algorithm
with reduced computational load and ensures sufficient performance in resource-constrained environments.
This approach enables image classification tasks to be performed on low-cost microcontrollers. Although the
technologies discussed are well-known individually, their comprehensive application for specific classifica-
tion tasks on microcontrollers, such as object recognition, remains underexplored. The article provides a de-
tailed description of all development stages, including data preparation, model parameter tuning, and the use
of specialized image scaling methods to reduce computational load. The practical part of the article is devoted
to developing a strawberry recognition system to determine their ripeness level using the ESP32 microcon-
troller. The research results demonstrate the effectiveness of the approach for different applied tasks and con-
firm the feasibility of integrating computer vision technologies into resource-limited devices. Overall, the
work proves that modern machine learning technologies are becoming accessible even to the least powerful
hardware platforms, expanding their capabilities and areas of application..
Key words: object recognition, classification, neural network, MobileNet architecture, microcontroller .
Вступ
У сучасних реаліях нейронні мережі
відіграють ключову роль у розвитку техно-
логій. Розпізнавання об'єктів є важливою
функцією у сучасних IoT-застосунках, ав-
тономних системах і робототехніці. Успі-
шна інтеграція цієї технології дозволяє ав-
томатизувати виявлення, класифікацію та
відстеження об'єктів у реальному часі. Од-
нак інтеграція моделей нейронних мереж
на пристроях із обмеженим обсягом пам'яті
та обчислювальними ресурсами може сти-
катися з певними труднощами.
Існує два основні підходи до розпі-
знавання об’єктів залежно від використову-
ваних типів датчиків: системи з візуаліза-
цією навколишнього середовища (каме-
Штучний інтелект
15
ри/відео) та системи без візуалізації навко-
лишнього середовища (ІЧ-датчики, лазерні,
ультразвукові, Bluetooth або GPS) [1]. У цій
статті розглянуто візуальне розпізнавання
об’єктів на мікроконтролерах з обмеже-
ними ресурсами.
Дана стаття пропонує підхід до вирі-
шення проблеми реалізації розпізнавання
об'єктів на пристроях із обмеженими ресу-
рсами за допомогою технології MobileNet
— компактної архітектури нейронної ме-
режі, оптимізованої для роботи на прист-
роях із низькою продуктивністю. Для спро-
щення розробки використовується платфо-
рма Edge Impulse, яка дозволяє автоматизу-
вати тренування, оптимізацію та розгор-
тання моделей на мікроконтролерах. Обра-
ний підхід демонструє, як можна подолати
основні обмеження апаратного забезпе-
чення, зберігши прийнятну точність і шви-
дкість обробки.
Попри те, що кожна з цих технологій
є самостійно відомою, їхнє поєднання для
вирішення конкретної задачі класифікації
зображень на пристроях із обмеженим апа-
ратним потенціалом, таких як IoT-системи,
є рідкісним у літературі.
Стаття може бути корисною для ін-
женерів і розробників, оскільки включає
детальний опис процесу підготовки даних,
налаштування параметрів моделей і вико-
ристання конкретних методів масштабу-
вання зображень.
Описаний підхід також підкріплю-
ється прикладом вирішення прикладної за-
дачі. Такий приклад не лише ілюструє ефе-
ктивність підходу, а й демонструє його при-
кладну цінність для вузькоспеціалізованих
завдань.
Основна мета — продемонструвати,
що навіть у середовищах з обмеженими ре-
сурсами можна реалізувати ефективні рі-
шення для розпізнавання об'єктів.
1. Вибір способу реалізації
розпізнавання об’єктів на
мікроконтролері
Обмежені ресурси мікроконтролерів
створюють багато технічних викликів, які
змушують розробників шукати компроміс
між продуктивністю та точністю. Насампе-
ред мікроконтролери, які мають дуже обме-
жений обсяг оперативної та постійної
пам’яті. Типовий обсяг оперативної пам’яті
у найпродуктивніших чіпах становить
лише кілька мегабайтів [2], тоді як сучасні
моделі для розпізнавання об’єктів, такі як
MobileNet або YOLO, вимагають десятків
чи навіть сотень мегабайтів для зберігання
ваги та виконання обчислень. Через це на-
віть компактні моделі важко завантажити
чи виконувати на таких пристроях, не ка-
жучи вже про обробку зображень у реаль-
ному часі. Додатково низька тактова час-
тота мікроконтролерів (зазвичай до 240
МГц) та відсутність спеціалізованих обчис-
лювальних блоків, таких як GPU або TPU,
призводять до тривалого часу виконання
завдань навіть для невеликих моделей [2].
Це особливо критично для завдань у реаль-
ному часі, де навіть затримка в кілька се-
кунд може бути неприйнятною.
Ще одним обмеженням є низьке ене-
ргоспоживання, яке є ключовим для авто-
номних пристроїв. Розпізнавання об’єктів є
завданням з високою обчислювальною
складністю, що може значно зменшити три-
валість роботи від батареї. Використання
навіть оптимізованих моделей може шви-
дко розрядити пристрій, особливо якщо за-
дачі виконуються постійно. Крім того, об-
межена пропускна здатність введення/ви-
ведення, характерна для мікроконтролерів,
уповільнює передачу даних із сенсорів, та-
ких як камери, до процесора, додаючи за-
тримки до загального процесу розпізна-
вання.
Існує кілька підходів до вирішення
цього завдання, кожен з яких має свої пере-
ваги і недоліки.
Одним із популярних підходів є сер-
верна обробка, за якої мікроконтролер ви-
користовується лише для збору даних, та-
ких як зображення, а всі обчислення вико-
нуються на потужному сервері або в хмар-
ному середовищі. Це дозволяє застосову-
вати складні моделі глибокого навчання,
які забезпечують високу точність і можли-
вість обробки великих обсягів даних. Од-
нак серверна обробка має серйозні обме-
ження. По-перше, вона вимагає стабільного
підключення до мережі, що не завжди мож-
ливо в автономних системах, як-от, у відда-
Штучний інтелект
16
лених регіонах або в пристроях, які працю-
ють у польових умовах. По-друге, передача
даних на сервер і назад може викликати
значні затримки, що робить цей підхід не-
придатним для завдань реального часу, та-
ких як виявлення небезпечних ситуацій у
системах безпеки чи управління робототех-
нікою [3]. Нарешті підтримка серверної ін-
фраструктури чи оплата хмарних послуг
може значно збільшити витрати, що не зав-
жди виправдано у випадку компактних і не-
дорогих пристроїв.
Іншим підходом є використання до-
даткових апаратних рішень, таких як спеці-
алізовані модулі для прискорення обчис-
лень. Ці пристрої дозволяють виконувати
складні нейронні мережі на периферійних
пристроях, забезпечуючи високу швидкість
і точність обробки даних. Вони особливо
ефективні для роботи у реальному часі та
автономних системах. Проте цей підхід та-
кож має недоліки. Використання додатко-
вого обладнання збільшує загальну вар-
тість системи, що може бути неприйнятним
для недорогих пристроїв або масового ви-
робництва. Крім того, інтеграція таких рі-
шень вимагає додаткових ресурсів для на-
лаштування, розробки та тестування. Апа-
ратні модулі також збільшують струм спо-
живання та розміри пристрою, що може
бути критичним для компактних пристроїв,
таких як дрони чи переносні пристрої. Ене-
ргоспоживання цих рішень, хоча й оптимі-
зоване, все одно часто перевищує можливо-
сті стандартних акумуляторів, примушу-
ючи шукати компроміс між розмірами ба-
тареї і часом автономної роботи.
Третій підхід — використання опти-
мізованих моделей глибокого навчання, та-
ких як MobileNet, Tiny-YOLO чи
SqueezeNet. Ці архітектури спеціально роз-
роблені для пристроїв із невеликими ресур-
сами для виявлення об'єктів з хорошою
продуктивністю в реальному часі та висо-
кою точністю [4, 5, 6]. Основними перева-
гами цього підходу є можливість обробки
даних безпосередньо на пристрої, що усу-
ває залежність від підключення до мережі
та наявності затримки.
MobileNet — це спрощена архітек-
тура, яка використовує згортки, що розділя-
ються по глибині, для побудови легких гли-
боких згорткових нейронних мереж і забез-
печує ефективну модель для мобільних і
вбудованих систем [7].
Структура MobileNet базується на
фільтрах, що розділяються по глибині, як
показано на рис. 1.
Рис. 1. Структура нейронної мережі MobileNet [8]
MobileNetV2 є значним удоскона-
ленням у порівнянні з MobileNetV1 і впро-
ваджує найсучасніші технології мобільного
візуального розпізнавання, включаючи кла-
сифікацію, виявлення об’єктів і семантичну
сегментацію. Архітектура MobileNetV2 за-
снована на перевернутій залишковій струк-
турі, де вхід і вихід залишкового блоку є то-
нкими вузькими шарами, протилежними
традиційним моделям залишків, які вико-
ристовують розширені представлення у вхі-
дних даних, а MobileNetV2 використовує
легкі глибокі згортки для фільтрації функ-
цій у проміжному шарі розширення. Зага-
лом архітектура MobileNetV2 містить поча-
тковий повністю згорнутий рівень із 32 фі-
Штучний інтелект
17
льтрами, за якими слідують 19 залишкових
рівнів вузьких місць [9]. У роботі далі вико-
ристовуватиметься зсув на 2 (stride=2),
адже його основна ідея використання — це
зменшення розмірів зображення (змен-
шення ширини та висоти), що допомагає
зменшити обчислювальні витрати.
Проте навіть оптимізовані моделі
вимагають спеціалізованих фреймворків і
ретельного налаштування для ефективної
роботи на мікроконтролерах.
Саме тому ще один підхід, який ак-
тивно використовується в поєднанні з опти-
мізованими моделями, — це фреймворки
для обробки на мікроконтролерах. Сучасні
фреймворки, такі як TensorFlow Lite for
Microcontrollers, CMSIS-NN і Edge Impulse,
забезпечують інструменти для створення,
оптимізації та розгортання моделей машин-
ного навчання (ML) на пристроях із обме-
женими ресурсами. Їхня мета — забезпе-
чити ефективне виконання моделей машин-
ного навчання на пристроях із малою
пам’яттю та низькою обчислювальною по-
тужністю.
Edge Impulse — це платформа пов-
ного циклу розробки, яка робить процес
створення, розгортання та масштабування
вбудованих програм з підтримкою машин-
ного навчання простішим і швидшим, нада-
ючи можливість розробникам створювати
та оптимізувати рішення з реальними да-
ними [10].
У статті запропоновано реаліза-
цію третього і четвертого підходів — ви-
користаня оптимізованих моделей глибо-
кого навчання та фреймворку Edge
Impulse. Такий вибір пояснюється низкою
факторів. MobileNet забезпечує високу то-
чність і компактність, що робить її прида-
тною для мікроконтролерів із обмеже-
ними ресурсами. Edge Impulse, у свою
чергу, автоматизує складні етапи оптимі-
зації та розгортання моделі, що значно
прискорює процес розробки та мінімізує
ризик помилок. Крім того, обробка даних
на пристрої дозволяє забезпечити автоно-
мність, низькі затримки та підвищену без-
пеку, оскільки дані не потрібно переда-
вати в мережу. Тож, запропоноване рі-
шення поєднує в собі ефективність, прос-
тоту впровадження та відповідність вимо-
гам до компактних пристроїв із низьким
енергоспоживанням.
2. Розгортання моделі
розпізнавання об’єктів на
мікроконтролері ESP32
Для одного з можливих рішень про-
блеми розпізнавання об’єктів за мікроконт-
ролер було обрано обчислювальний модуль
ESP32-CAM на основі мікроконтролера
ESP32.
ESP32-CAM — це доступний і ком-
пактний модуль із можливостями Wi-Fi та
Bluetooth, який також має вбудовану ка-
меру [2]. Однак його апаратні обмеження
ставлять значні виклики для виконання
нейронних мереж. Основні обмеження мо-
жна виділити такі: незначний обсяг опера-
тивної пам’яті, малий обсяг flash-пам’яті та
невеликі обчислювальні потужності.
ESP32-CAM оснащений 520 KB вну-
трішньої оперативної пам'яті та додатко-
вими 8 MB зовнішньої PSRAM [2]. Хоча
PSRAM може використовуватися для збері-
гання більших обсягів даних, вона повіль-
ніша за внутрішню RAM і не завжди підхо-
дить для обчислювально-інтенсивних за-
вдань. Цей обсяг пам'яті є дуже обмеженим
для завантаження та виконання більшості
моделей нейронних мереж, які часто потре-
бують десятків або сотень мегабайтів для
обробки великих масивів даних.
За замовчуванням ESP32-CAM має
32 Мбіт (4 МБ) флеш-пам'яті, де зберіга-
ються машинні коди програми [2]. Це ство-
рює обмеження для завантаження моделей
нейронних мереж, особливо великих.
Флеш-пам'ять не придатна для виконання
динамічних обчислень, тому обмеження її
обсягу є критичним, якщо потрібно збері-
гати модель нейронної мережі на самому
пристрої.
ESP32-CAM використовує процесор
із двома ARM-ядрами і тактовою частотою
до 240 МГц, який не призначений для інте-
нсивних обчислень, таких як виконання ве-
ликих нейронних мереж [2].
Відсутність спеціалізованих обчис-
лювальних блоків, таких як GPU чи TPU,
обмежує можливість виконання обчислень
із плаваючою точкою, які часто використо-
вуються в нейронних мережах.
Штучний інтелект
18
Тим не менше, такий модуль дуже
зручний для простого розпізнавання
об’єктів. Він має вбудовану камеруOV2640
та підтримує стиснений формат вихідного
зображення JPEG [2].
На платформі розробки Edge Impule
можна одразу обрати під яку апаратну пла-
тформу буде виконуватися розробка. Серед
запропонованих варіантів є і популярний
ESP32-CAM. Далі було обрано версію ме-
режі MobileNet, а саме MobileNetV2 0.35 на
базі алгоритму зі зниженим обчислюваль-
ним навантаженням FOMO. Edge Impulse
FOMO (швидші об’єкти, більше
об’єктів) — це новий алгоритм машинного
навчання, який забезпечує виявлення
об’єктів на пристроях із жорсткими обме-
женнями, що дозволяє підраховувати кі-
лька об’єктів і знаходити їхнє розташу-
вання на зображенні в режимі реального
часу, використовуючи до 30 разів менше
процесорної потужності та пам’яті, ніж
MobileNet SSD або YOLOv5 [11].
Для прикладу було виконано розпі-
знавання ягоди полуниці (рис. 2) та її кла-
сифікація на стиглу та недозрілу, що може
бути використано для створення недорогих
агророботів для збору полуниць. Для ство-
рення навчального набору даних було вико-
ристано існуючі зображення ягоди полу-
ниці з відкритих джерел. Загалом для ство-
рення наборів було використано 120 зобра-
жень, які були поділені на 90 і 30
(75%/25%) на тренувальні та тестові набори
відповідно. Всі вони були вручну проіндек-
совані та промарковані відповідно до стиг-
лості ягід на зображеннях.
Рис. 2. Робота алгоритму класифікації по-
луниць
У процесі обробки зображень, вони
були приведені до розміру 96 х 96. На ос-
нові отриманих даних було здійснено їх пе-
ретворення у набір спільних атрибутів. Пі-
сля маркування наступним кроком стало
створення та навчання моделі. На цьому
етапі визначається тип даних для обробки,
задаються параметри розміру зображень та
метод їх масштабування. Водночас зберіга-
ється або змінюється співвідношення сто-
рін залежно від потреб проєкту. У Edge
Impulse передбачено три способи досяг-
нення необхідних розмірів: Squash, Fit
shortest axis і Fit longest axis. Для розробки
цієї моделі було обрано останній метод Fit
longest axis, який додає чорні смуги (так
званий "letterbox") вздовж коротшої осі зо-
браження для досягнення потрібного спів-
відношення сторін. Потім зображення мас-
штабується до визначеного розміру шля-
хом інтерполяції, забезпечуючи збере-
ження пропорцій. На основі цих налашту-
вань модель виконує розпізнавання об'єктів
і класифікує їх у дві категорії: «стиглі» та
«нестиглі» [12].
Результати створення характеристик
наведені на рис. 3.
Як можна побачити з рис. 3, немає
двох чітко виокремлених класів із тренува-
льних зображень. Причиною цього є наяв-
ність одночасно і стиглих, і не стиглих по-
луниць на одному зображенні.
Рис. 3. Результати класифікації
Після налаштувань перед навчанням
необхідно ще задати налаштування обро-
бки нейронної мережі. Тут вказується кіль-
кість тренувальних циклів, чи використову-
вати навчений оптимізатор, навчальний
крок (Learning rate ), вид процесора для на-
вчання, чи виконувати випадкове перетво-
рення даних та інші додаткові умови. Для
цієї системи були обрані такі параметри:
Штучний інтелект
19
– number of training cycles: 70;
– use learned optimizer: ні (використову-
ється стандартний оптимізатор);
– learning rate: 0.001;
– training processor: CPU (процес нав-
чання буде здійснюватися на центральному
процесорі);
– data augmentation: так (під час нав-
чання будуть застосовуватися техніки ау-
гментації даних, такі як обертання, зміна
яскравості, масштабування тощо. Це допо-
магає покращити узагальнення моделі, зме-
ншуючи перенавчання на тренувальному
наборі даних) [12].
3. Результати роботи
На рис. 4 наявна інформація про за-
гальну продуктивність моделі на валідацій-
ній вибірці, зокрема, F1 Score дорівнює
74.8%. F1 Score — це середньогармонічне
значення точності (precision) та повноти
(recall), яке показує баланс між цими двома
метриками. Значення 74.8% вказує на хо-
рошу продуктивність моделі [13]. Далі зо-
бражена матриця плутанини (confusion
matrix) на валідаційній вибірці. Вона пока-
зує, як добре модель класифікує зразки в
кожну з категорій. Рядки представляють
фактичні класи, а стовпці — передбачувані
класи [12].
На ній видно 100% зразків, які фак-
тично є «Фоном» і були правильно класифі-
ковані як «Фон».
Для рядка «Нестигла» 40% зразків,
які фактично є «Нестигла», були неправи-
льно класифіковані як «Фон». Однак ці не-
правильні результати є некритичними для
таких систем як, наприклад, робот для
збору полуниць, адже знайшовши нести-
глу полуницю, система не має нічого ро-
бити. 60% зразків, які фактично є «Нести-
гла», були правильно класифіковані як
«Нестигла». І найголовніше для даної сис-
теми — 0% зразків, які фактично є «Нести-
гла», були неправильно класифіковані як
«Стигла».
Рис. 4. Результати навчання моделі
Відповідні позитивні результати ви-
дно і в рядку «Стигла» у матриці плута-
нини: 26.1% зразків, які фактично є «Сти-
гла», були неправильно класифіковані як
«Фон»; 0% зразків, які фактично є «Сти-
гла», були неправильно класифіковані як
«Нестигла»; 73.9% зразків, які фактично є
«Стигла», були правильно класифіковані як
«Стигла». У цій же матриці вказані F1 Score
для кожного класу: 1, 0.67, 0.81 до «Фон»,
«Стигла» та «Нестигла» відповідно.
Також результати оцінки містять
такі метрики: Precision (non-background)
або точність — відсоток правильних пози-
тивних передбачень серед усіх позитивних
передбачень [13]; Recall (non-background)
або повнота — це відсоток правильних по-
зитивних передбачень серед усіх фактич-
них позитивних зразків [13]; F1 Score (non-
background) — це середньогармонічне зна-
чення точності та повноти для зразків, які
не є фоном.
На рис. 5 наведені результати тесту-
вання моделі виявлення об'єктів. Там вка-
зана загальна точність тестування 80%, то-
чність Precision 94%, повнота Recall 87%,
F1 Score 90%. Модель демонструє високу
точність та повноту, що вказує на її здат-
ність коректно виявляти більшість об'єктів
і рідко видавати хибнопозитивні резуль-
тати. У цілому, F1 оцінка 0.9 показує, що
модель добре збалансована між точністю та
повнотою. Проте загальна точність 80%
вказує, що все ще є простір для поліпшення.
Також зображена візуалізація ознак, де на
графіку показано правильні і неправильні
Штучний інтелект
20
передбачення моделі [12]. Приклад перед-
бачення моделі наведено на рис. 6.
Рис. 5. Результати тестування моделі
Створена модель може розпізнавати
полуницю в двох станах: стигла та нести-
гла. Наступним етапом став експорт моделі
та конвертація її у вид, який можна заванта-
жити на мікроконтролер. Для реалізації
цього було конвертовано модель у бібліо-
теку та завантажено. Таким чином підклю-
чивши її, можна дописати потрібний код
для подальшого керування периферійними
пристроями та за потреби легко замінити
модель на іншу [12].
Рис. 6. Наочна демонстрація роботи моделі
Після імпортування моделі в середо-
вище програмування плат Arduino IDE [14],
було розроблено програму, що виводить
поточну інформацію про розпізнавання
об’єктів та їх класів у консоль послідовного
монітору (рис. 7).
Рис. 7. Вигляд роботи системи
Висновки
У статті розглянуто ключові ви-
клики, що виникають під час реалізації роз-
пізнавання об'єктів на мікроконтролерах з
обмеженими ресурсами, а також запропо-
новано ефективне рішення, яке поєднує ви-
користання оптимізованої моделі
MobileNet на основі алгоритму зі зниженим
обчислювальним навантаженням і платфо-
рми Edge Impulse. Це дослідження проде-
монструвало, що навіть у середовищах із
низькою обчислювальною потужністю мо-
жна створювати ефективні ML-рішення, які
відповідають вимогам щодо точності, про-
дуктивності та автономності.
Використання MobileNet на основі
алгоритму зі зниженим обчислювальним
навантаженням дозволило подолати про-
блему обмежених ресурсів завдяки її ком-
пактній архітектурі, що зменшує кількість
обчислень за рахунок глибинних розділе-
них згорток. Такий підхід забезпечив мож-
ливість запускати модель навіть на прист-
роях із мінімальними апаратними характе-
ристиками, водночас зберігаючи прийнят-
ний рівень точності. До того ж інтеграція з
Edge Impulse значно спростила процес роз-
робки. Ця платформа забезпечила інстру-
менти для автоматизації таких складних
етапів, як оптимізація моделі, її квантоване
навчання та інтеграція з мікроконтролером.
Штучний інтелект
21
Завдяки цьому вдалося суттєво скоротити
час розробки та уникнути багатьох потен-
ційних помилок.
Ще однією важливою перевагою
стала можливість локальної обробки даних
безпосередньо на пристрої. Це рішення до-
зволило мінімізувати затримки, знизити за-
лежність від зовнішніх мережевих ресурсів і
забезпечити додаткову безпеку, оскільки
дані не потребували передачі на сервери. Та-
кий підхід особливо важливий для завдань
реального часу, де затримка може суттєво
вплинути на ефективність роботи системи.
Розроблена модель успішно вико-
нала поставлену задачу — класифікацію
об'єктів безпосередньо на мікроконтролері
у дві категорії: «стиглі» та «нестиглі» з то-
чністю 80%. Це підтвердило ефективність
запропонованого підходу, особливо для
прикладних застосувань.
Дане дослідження відкриває нові
перспективи для створення доступних і
енергоефективних IoT-рішень, що здатні
працювати автономно. Запропонований
підхід може знайти широке застосування в
таких галузях, як розумне сільське госпо-
дарство, промислова автоматизація, сис-
теми моніторингу та переносні пристрої.
Загалом робота доводить, що сучасні тех-
нології машинного навчання стають досту-
пними навіть для найменш потужних апа-
ратних платформ, розширюючи їхні мож-
ливості та сфери використання.
Подальші дослідження потрібні
для визначення зв’язку між точністю розпі-
знавання, потрібним обсягом пам’яті та та-
ктовою частотою, необхідною для забезпе-
чення достатньої швидкості обробки зобра-
жень. Також потрібно дослідити способи
реалізації запропонованого підходу на ін-
ших мікроконтролерах, зокрема, STM32.
Література
1. Ashiq, F.; Asif, M.; Bin Ahmad, M.; Zafar, S.;
Masood, K.; Mahmood, T.; Mahmood, M.T.;
Lee, I.H. CNN-Based Object Recognition and
Tracking System to Assist Visually Impaired
People: IEEE Access, 2022. 14819-14821 с.
2. ESP32-CAM: Technical Specification. URL:
https://docs.sunfounder.com/projects/galaxy-
rvr/en/latest/hardware/cpn_esp_32_cam.html
(Дата звернення: 17.11.2024)
3. What are the pros and cons of AI (compared to
traditional computing). URL:
https://www.ibm.com/think/insights/artificial-
intelligence-advantages-disadvantages
(Дата звернення 17.11.2024)
4. Wei Fang, Lin Wang, Peiming Ren. Tinier-
YOLO: A Real-Time Object Detection Method
for Constrained Environments: IEEE Access,
2019. 1935-1938 с.
5. Yahui Nan, Jianguo Ju, Qingyi Hua, Haoming
Zhang, Bo Wang: A-MobileNet: An approach
of facial expression recognition: Alexandria
Engineering Journal, 2021. 4435-4437 с.
6. SqueezeNet: The Key to Unlocking the
Potential of Edge Computing. URL:
https://medium.com/sfu-cspmp/squeezenet-
the-key-to-unlocking-the-potential-of-edge-
computing-c8b224d839ba
(Дата звернення 18.11.2024)
7. Howard A. G., Zhu M., Chen B. et al.
Mobilenets: efficient convolutional neural
networks for mobile vision application:
Cornell University, 2017. 1-5c.
8. Wei Wang, Yutao Li, Ting Zou, Xin Wang,
Jieyu You, Yanhong Luo: A Novel Image
Classification Approach via Dense-MobileNet
Models: Hindawi, 2020 3с.
9. MobileNetV2. URL:
https://paperswithcode.com/method/mobilenet
v2
(Дата звернення 18.11.2024)
10. EDGE IMPULSE. URL:
https://edgeimpulse.com/about
(Дата звернення 18.11.2024)
11. FOMO: Object detection for constrained
devices. URL:
https://docs.edgeimpulse.com/docs/edge-
impulse-studio/learning-blocks/object-
detection/fomo-object-detection-for-
constrained-devices
(Дата звернення 18.11.2024)
12. Скотаренко А.О. Система автоматичного
збору полуниць: бак.р. …бакалавра: Київ,
2024. 40-52 с.
13. f1_score. URL:
https://scikit-
learn.org/1.5/modules/generated/sklearn.metri
cs.f1_score.html
(Дата звернення 19.11.2024)
14. Arduino IDE. URL:
https://www.arduino.cc/en/software
(Дата звернення 18.11.2024)
Одержано: 25.11.2024
Внутрішня рецензія отримана: 30.11.2024
Зовнішня рецензія отримана: 30.11.2024
Штучний інтелект
22
Про авторів:
Бердник Юрій Михайлович,
аспірант, асистент кафедри
інформаційних систем та технологій
https://orcid.org/0000-0002-0008-4748
Скотаренко Анастасія Олександрівна,
студентка магістр
https://orcid.org/0009-0006-1429-5729
Місце роботи авторів:
НТУ України «Київський політехнічний
інститут імені Ігоря Сікорського»
Тел.: +38-044-204-86-10.
E-mail: y.berdnyk@kpi.ua,
skotarenko.anastasiia@lll.kpi.ua
|