Неиромережевии додаток розпізнавання знаків дактильного алфавіту
Дактильний алфавіт - це система положень або жестів рук, що відповідають літерам. Процес створення додатку для вирішення проблеми розпізнавання жестів рук - знаків алфавіту глухонімих. Використано штучні нейронні мережі та функції комп’ютерного зору.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | статья |
Язык | украинский |
Дата добавления | 15.07.2022 |
Размер файла | 69,6 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
НЕИРОМЕРЕЖЕВИИ ДОДАТОК РОЗПІЗНАВАННЯ ЗНАКІВ ДАКТИЛЬНОГО АЛФАВІТУ
Балицька Ірина Андріївна
Python джуніор-розробник, Adozi Inc., США, Маямі
Анотація. У статті розглядається процес створення додатку для вирішення проблеми розпізнавання жестів рук - знаків алфавіту глухонімих. Використано штучні нейронні мережі та функції комп'ютерного зору.
Ключові слова: штучна нейронна мережа, згорткова нейронна мережа, дактильний алфавіт, PyTorch.
Annotation. The aspects of developing an application for solving the problem of recognition the hand gestures - deaf-mute alphabet signs - is considered. Artificial neural networks and computer vision are utilized.
Key words: artificial neural network, convolutional neural network, dactyl alphabet, PyTorch.
З розвитком VR-технологій та методів взаємодії «людина-комп'ютер», задача розпізнавання жестів почала набирати популярність, про що свідчить велика кількість робіт в цій області, наприклад [1], [2].
Розпізнавання мови жестів може допомогти людям з вадами слуху або мови вирішити проблеми комунікації. Глухонімі люди використовують два види знакових систем - дактильний алфавіт і жестову мову. Дактильний алфавіт - це система положень або жестів рук, що відповідають літерам. Наприклад, рука, стиснута в кулак, позначає букву «а», а долоня з випрямленими стислими пальцями і відставленим убік великим - «в» [3].
Для розробки додатку була обрана мова програмування Python 3 та фреймворк глибинного навчання PyTorch.
В першу чергу був зібраний набір даних, що складається з 29 класів зображень. В набір не були включені літери «ґ», «ї», «й», «щ», оскільки вони майже нічим не відрізняються від літер «г», «і», «и», «ш» відповідно, окрім руху руки, який неможливо відобразити на одиночному фотознімку. Для того, щоб нейронна мережа змогла ефективно навчатися, необхідна велика кількість тренувальних даних, тому для кожного класу було зібрано по 25 зображень - усього 725.
Далі зібрані дані обробляються: змінюється розмір - бажано, щоб зображення мали однакові виміри; дані нормалізуються - значення входів зводяться до деякого обмеженого діапазону (наприклад, [0 ... 1] або [-1 ... 1]), що дозволяє моделям працювати з ними більш коректно; також зображення були перетворені в чорно-білі (а саме у відтінки сірого) - це потрібно для того, щоб можна було працювати з одним колірним каналом замість трьох.
Наведені вище дії можна виконати за допомогою PyTorch. Окрім них, до зображень були застосовані інші перетворення: випадкове віддзеркалення по вертикалі або горизонталі та поворот на випадковий градус. Це допомагає урізноманітнити маленький набір даних.
Після створення та налагодження тренувальних даних, настає черга розробки нейронної мережі. Для задач, пов'язаних із розпізнаванням зображень, підходять згорткові нейромережі. Мережа буде складатися з трьох згорткових шарів, трьох агрегувальних шарів та двох повноз'єднаних шарів.
Шар згортки - це основний шар згорткової нейронної мережі. Він містить в собі фільтр для кожного каналу, ядро згортки якого обробляє попередній шар за фрагментами (підсумовуючи результати матричного добутку для кожного фрагмента). Вагові коефіцієнти ядра згортки невідомі і встановлюються в процесі навчання. Особливістю згорткового шару є порівняно невелика кількість параметрів, які встановлюються при навчанні [4, с. 43]. В PyTorch на вхід згорткового шару подаються такі параметри: кількість каналів зображення (в цьому випадку 1), кількість виходів із шару та ядро (розмір вікна згортки).
Агрегувальний (або пулінговий) шар - це нелінійне ущільнення карти ознак, при цьому група пікселів (зазвичай розміру 2*2) ущільнюється до одного пікселя, проходячи нелінійне перетворення. Перетворення зачіпають непересічні прямокутники або квадрати, кожен з яких скорочується в один піксель, при цьому вибирається піксель, що має максимальне значення. Пулінг дозволяє істотно зменшити просторовий обсяг зображення. Якщо на попередній операції згортки вже були виявлені деякі ознаки, то для подальшої обробки настільки детальне зображення вже не потрібно, і воно зменшується до менш детального. Фільтрація вже непотрібних деталей допомагає не перенавчатися. Пулінговий шар, як правило, вставляється після шару згортки перед шаром наступної згортки [4, с. 45].
На вхід нейронної мережі надходило зображення розміром 60*60. Для того, щоб визначити, яким буде розмір зображення після проходження згорточного шару, використовується формула:
ДеWoUt - розмір вихідного зображення,
Win- розмір вхідного зображення,
F- розмір ядра,
Р- вирівнювання (за замовчуванням дорівнює 0),
S- крок (за замовчуванням дорівнює 1). [5]
Отже, якщо розмір зображення - 60*60, а ядра - 5, то розмір вихідного зображення:
Після проходження агрегувального шару, зображення ділиться на розмір вікна згортки:
Після проходження згорткових та пулінгових шарів, зображення поступає на вхід повноз'єднаного шару. Для того, щоб визначити кількість вхідних нейронів шару, кількість вихідних нейронів попереднього шару множиться на добуток висоти і ширини зображення. Вихідний шар має містити стільки виходів, скільки класів в наборі даних, тобто 29.
В даній архітектурі використовується функція активації ReLU (Rectified Linear Unit). Функція повертає 0, якщо приймає від'ємний аргумент, в разі ж додатного аргументу, функція повертає саме число. ReLU може бути записана наступним чином [5]:
Функція активації ReLU застосовується до кожного шару, окрім вихідного. Для вихідного шару найкраще підходить функція Softmax. Функція перетворює векторхрозмірності в вектора тієї ж розмірності, де кожна координата^ отриманого вектора представлена дійсним числом в інтервалі [0,1] і сума координат дорівнює 1. Softmax може бути представлена наступним чином [5]:
Після розробки мережі слід перейти до її навчання та тестування.
Для оптимізації обирається функція Adam зі швидкістю навчання 0,001. Функція Cross Entropy Loss (перехресна ентропія) застосовується для підрахунку втрат.
В тренуванні моделі застосовується метод зворотнього поширення помилки - метод обчислення градієнта, який використовується при оновленні ваг багатошарового перцептрона. Після тренування та перевірки модель зберігається.
Тепер на готову модель можна подавати зображення з вебкамери. Для цього використовується модуль OpenCV. Він містить в собі бібліотеки алгоритмів комп'ютерного зору та обробки зображень.
Висновки: у роботі розглянуто додаток, який дозволяє розпізнваати знаки жетової мови глухонімих (дактильного алфавіту). Використання такого додатку дозволить спростити комунікацію з людьми, що мають особливі потреби, зокрема даний додаток може знайти численні застосування в учбовому процесі. Проблема розпізнавання жестів вирішується шляхом створення згорткових нейронних мереж, великої кількості зображень для тренування та комп'ютерного зору.
Питанням подальшого дослідження є розширення та ускладнення роботи додатку. Набір даних може бути доповнений знаками інших мов, наприклад англійської. Також можна реалізувати розпізнавання тих знаків, які містять у собі рух руки, приміром, використовуючи для цього по 2 зображення замість одного.
дактильний алфавіт жест рука додаток комп'ютерний зір
Список використаних джерел
1. Dhawale P., Masoodian M., Rogers B. Bare-hand 3d gesture input to interactive systems //CHINZ'06: 7th ACM SIGCHI New Zealand Chapter's Conference (International) on ComputerHuman Interaction: Design Centered HCI Proceedings. - New York, NY, USA: ACM, 2006. P. 25-32.
2. Aguiar R., Pereira J. M., Braz J. Gadevi - game development integrating tracking and visualization devices into virtools //GRAPP 2009: 4th Conference (International) on Computer Graphics Theory and Applications Proceedings. - INSTICC Press, 2009. P. 313-321.
3. Зайцева Г.Л. Жестовая речь. Дактилология: Учеб. для студ. высш. учеб. заведений. - М.: Гуманит. изд. центр ВЛАДОС, 2000. - 192 с
4. Гафаров Ф.М Искусственные нейронные сети и приложения: учеб. пособие / Ф.М. Гафаров, А.Ф. Галимянов. - Казань: Изд-во Казан. ун-та, 2018. - 121 с.
5. CS231n: Convolutional Neural Networks for Visual Recognition [Електронний ресурс] - Режим доступу: https://cs231n.github.io/convolutional-networks/ - Назва з екрану.
Размещено на Allbest.ru
...Подобные документы
Специфіка застосування нейронних мереж. Огляд програмних засобів, що використовують нейронні мережі. Побудова загальної моделі згорткової нейронної мережі. Реалізація нейромережного модулю розпізнавання символів на прикладі номерних знаків автомобілів.
дипломная работа [3,4 M], добавлен 15.03.2022Комп’ютерне моделювання системи сегментації та розпізнавання облич на зображеннях. Підвищення швидкодії моделювання за кольором шкіри та покращення якості розпізнавання при застосуванні робастних boosting-методів. Розробка алгоритмів функціонування.
дипломная работа [1,6 M], добавлен 02.07.2014Огляд інтелектуальних принципів організації процесу розпізнавання символів. Розробка системи безклавіатурного введення документів у комп’ютер. Опис і обґрунтування проектних рішень; розрахунки і експериментальні дані; впровадження системи в експлуатацію.
дипломная работа [182,5 K], добавлен 07.05.2012Сегментація і нормалізація зображень. Основні функціональні можливості та режими роботи комплексу розпізнавання письмового тексту. Розробка комплексу оптичного розпізнавання символів. Шрифтові та безшрифтові алгоритми розпізнавання друкованого тексту.
курсовая работа [1,7 M], добавлен 19.05.2014Історія досліджень, пов’язаних з розпізнаванням образів, його практичне використання. Методи розпізнавання образів: метод перебору, глибокий аналіз характеристик образу, використання штучних нейронних мереж. Характерні риси й типи завдань розпізнавання.
реферат [61,7 K], добавлен 23.12.2013Розробка, дослідження та реалізація методів вирішення завдань аналізу, розпізнавання і оцінювання зображень як один із провідних напрямків інформатики. Класифікація та аналіз існуючих методів розпізнавання образів, переваги та недоліки їх застосування.
статья [525,8 K], добавлен 19.09.2017Навчання штучних нейронних мереж, особливості їх використання для вирішення практичних завдань. Рецепторна структура сприйняття інформації. Перцептрон як модель розпізнавання. Задача моделювання штучної нейронної мережі з розпаралелюванням процесів.
дипломная работа [2,8 M], добавлен 24.07.2013Огляд методів розпізнавання образів. Основні ідеї інформаційно-екстремального методу розпізнавання рукописних символів. Критерій оптимізації параметрів функціонування даної системи. Інформаційне та програмне забезпечення обробки рукописних символів.
дипломная работа [291,0 K], добавлен 14.10.2010Актуальність сучасної системи оптичного розпізнавання символів. Призначення даних систем для автоматичного введення друкованих документів в комп'ютер. Послідовність стадій процесу введення документу в комп'ютер. Нові можливості програми FineReader 5.0.
курсовая работа [4,5 M], добавлен 29.09.2010Характеристика особливостей побудови біологічних та штучних нейронних мереж. Вивчення їх активіаційних функцій: порогової бінарної, лінійної обмеженої, гіперболічного тангенса. Персептрони і зародження штучних нейромереж. Багатошарові нейронні мережі.
реферат [1,2 M], добавлен 11.06.2010Опис менеджеру умовних знаків, що служить для перегляду, створення і редагування векторних умовних знаків, які потім можна присвоювати різним шарам карти. Цифрова карта місцевості, її призначення, послідовність проектування, реєстрація точок об'єкту.
контрольная работа [38,8 K], добавлен 21.02.2015Алгоритм оптичного розпізнавання образів. Універсальність таких алгоритмів. Технологічність, зручність у процесі використання програми. Два класи алгоритмів розпізнавання друкованих символів: шрифтовий та безшрифтовий. технологія підготовки бази даних.
реферат [24,5 K], добавлен 19.11.2008Розробка методів вирішення завдань аналізу, розпізнавання, оцінювання зображень як одних з провідних напрямків інформатики. Описання методу пошуку співпадіння об’єкту-цілі з міткою-прицілом на заданому відеоряді. Виявлення об’єкта на цифровому зображенні.
статья [138,7 K], добавлен 21.09.2017Системи розпізнавання обличчя. Призначення та область застосування програми "Пошук обличчя люди у відеопотоках стандарту MPEG-4". Штучна нейронна мережа, локалізація та розпізнавання обличчя. Методи, засновані на геометричних характеристиках обличчя.
курсовая работа [1,8 M], добавлен 27.03.2010Структура освіти і функції її органів. Сутність, передумови та переваги розвитку дистанційного навчання. Системи комп’ютерного тестування, що використовуються в навчальному процесі: MyTestX, Testing, TestMaker, EasyQuizzy, Айрен. Процес створення тестів.
курсовая работа [2,9 M], добавлен 03.02.2014Історія розробки та розвитку комп'ютерного редактора, його основні функції. Порядок запуску Adobe Photoshop 7.0 та роботи з ним, опис його інтерфейсу та інструментів малювання. Алгоритм створення графічних зображень у програмі, формати їх збереження.
курсовая работа [1,1 M], добавлен 06.04.2014Ознайомлення із загальною структурою системи автоматичного розпізнавання мовлення. Визначення особливостей нейронних мереж. Дослідження та характеристика процесу побудови системи розпізнавання мовлення. Вивчення специфіки прихованої моделі Маркова.
дипломная работа [1,1 M], добавлен 25.07.2022Створення програмного модуля імітаційного дослідження архітектури комп'ютерних мереж системи "Емулятор мережі" в середовищі Microsoft Visual C # 8.0 Express Edition з використанням технології dotNet. Розробка комплексних лабораторних робіт на її основі.
дипломная работа [2,2 M], добавлен 26.10.2012Вибір архітектури і топології мережі, її оптимальної конфігурації. Налагодження операційної системи сервера. Технічне та програмне обслуговування комп’ютерної мережі. Розрахунок необхідної довжини кабелю та кількості й типів мережного обладнання.
дипломная работа [6,2 M], добавлен 15.06.2014Бібліотека Pcap та її реалізація WinPcap під платформу Windows. Аспекти робот з бібліотекою WinPcap. Штучні нейронні мережі. Застосування бібліотеки Winpcap для захоплення мережевого трафіку. Реалізація нейронної мережі Кохонена для аналізу заголовків.
дипломная работа [2,2 M], добавлен 09.06.2012