Аналіз та розробка системи ідентифікації об’єктів
Автор: Гриник Володимир Андрійович
Кваліфікаційний рівень: магістр
Спеціальність: Комп'ютерні системи управління рухомими об'єктами (автомобільний транспорт)
Інститут: Інститут комп'ютерних технологій, автоматики та метрології
Форма навчання: денна
Навчальний рік: 2022-2023 н.р.
Мова захисту: українська
Анотація: У магістерській кваліфікаційній роботі розроблено систему ідентифікації об’єктів на основні мікроконтролера Raspberry Pi 3 B+ та мови програмування Python, з викорситанням бібліотек з відкритим кодом «OpenCV», «deepface», а також зазделегідь натренового класифікаторів Хаара, що відповідає за розпізнавання об’єктів. «OpenCV» розроблена компанією Intel та написана мовою С++. Нею можна користуватись як для академічних цілей так і для комерційних.[2] Фреймоворк «deepface» він містить в собі вже натреновані моделі штучного інтелекту для розпізнавання облич і автоматично виконує всі процедури для розпізнавання у фоновому режимі. Моделі, що містить в собі обраний фреймоврк побудовані на різних алгоритмах, що збільшує точність його роботи майже до 100%. [3] Raspberry Pi 3 B+ являє собою одноплатний комп’ютер, з лінуксоїдною операційною системою. Оснащений портами USB 2.0 і USB 3.0, HDMI, UART та іншою периферією, WIFI модулем, Bluetooth, цифровими та аналоговими портами. Дана «начинка» контролера дозволяє легко створювати невеличкі системи, для різних задач. Також завдяки своїм характеристикам він обходить інші контролери такі як Arduino, PSOC, тощо.[1] Реалізація: відео камера збирає інформацію у вигляді фото чи відео, яку передає на контролер. В контролері буде запущена програма, яка буде обробляти отримані дані та виводити їх на дисплей. Система складається з наступних елементів: • USB камери A4Tech PK-910H для захоплення зображення об’єктів, які слід індентифікувати; • USB дисплею USB TFT Display Touch для виводу інформації; • мікроконтролера Raspberry Pi 3 B+, який збирає та обробляє отримані зображення. Було наведено основні алгоритми. Загалом в системі є 3 основних алгоритма. Перший алгоритм відповідає за знаходження та розпізнавання об’єкта, а саме котів чи людей. Для початку вмикається камера, що записує відео. Дане відео розбивається на кадри, тобто на зображення. Дане зображення за допомогою попередньої обробки, таке як переведення його в сіру гаму, для покращення його якості. Пропускається через класифікатор Хаара, що якраз і визначає, що за об’єкт було знайдено. Після того, як об’єкт знайдено, дістаються координати даного об’єкту на фото. По даним координатам малюється чотирикутник, в краю якого з’являється напис, що характеризує даний об’єкт. Другий алгоритм відповідає за аналіз обличчя. Під час аналізу, алгоритм визначає стать, вік, расу та емоцію людини, що зображено. Дану реалізацію було розроблено за допомогою бібліотеки «deepface». Для початку алгоритм зберігає певний кадр. Після його збереження, отриманий кадр обробляється обраною бібліотекою. Вона, в свою чергу, перевіряє чи на даному зображенні є обличчя людини та аналізує його. Після чого проводиться обробка отриманих результатів аналізу. Якщо обличчя не знайдено, аналіз не проводиться і результату не буде. Третій алгоритм призначений для знаходження людини по зображенню. Реалізацію так само було зроблено за допомогою бібліотеки «deepface». Також для роботи даного алгоритму потрібне попереднє приготування, а саме збір фотографій людей в, так звану, «бібліотеку знань» та побудова json файлу з даними. Ці дані містять ім’я людини, та посилання на фото на якому вона зображена. Даний алгоритм, знаходить всі обличчя на зображені. Для знаходженні обличь використовується перший алгоритм системи. Після виявлених обличь проводить пошук в «бібілотеці знань» по кожному з них. Результатом роботи є виділення обличчь та виведення ім’я знайдених людей. Для реалізації даних алгоритмів, попередньо, розроблені їхні блок-схеми. Блок-схеми наведені в роботі. Було проведено економічні обчислення для визначення показника якості, лімітної ціни, економічної ефективності та терміну служби пристрою. Дослідження показало, що розроблена система здатна конкурувати на ринку з вже існуючими аналогами. Аргументуючи тим, що дана розробка відрізняється зручністю, компактністю та гнучкістю. Які досягаються завдяки простій системі, що побудована на мікроконтролері Raspberry Pi 3 B+. Перелік використаних літературних джерел: 1. Raspberry Pi: https://uk.wikipedia.org/wiki/Raspberry_Pi 2. OpenCV: https://uk.wikipedia.org/wiki/OpenCV 3. Deepface: https://pypi.org/project/deepface