Специфіка створення системи розпізнавання об’єктів
Аналіз процесу розробки додатку для розпізнавання об’єктів, передусім жестів рук. Огляд використання JavaScript, TensorFlow, React, WebAssembly, HTML Canvas, iTerm2 та IntelliJ IDEA, історія створення, взаємодії з різними бібліотеками та фреймворками.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | статья |
Язык | украинский |
Дата добавления | 21.05.2024 |
Размер файла | 17,8 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
Специфіка створення системи розпізнавання об'єктів
Валерія Качарова, викладачка
Київський інститут бізнесу та технологій
Антон Лихацький, студент
Київського інституту бізнесу та технологій м. Київ, Україна
У статті простудійовано аналіз процесу розробки додатку для розпізнавання об'єктів, передусім жестів рук. Зокрема, ретельно висвітлюється використання JavaScript, TensorFlow, React, WebAssembly, HTML Canvas, iTerm2 та IntelliJ IDEA, розкрито історію створення і впровадження, з'ясовано взаємодію з різними бібліотеками та фреймворками, окреслено головні функції та переваги для користувача і можливості для розробника. Крім того, презентовано технічні аспекти використаних методів, інструментів і алгоритмів для розробки високоефективних додатків, що можуть забезпечити високу точність і ефективність. Розглядаються сфери застосування цієї технології від ігор до допомоги особам з обмеженими можливостями та перспективи подальших винаходів у царині розпізнавання об'єктів.
Ключові слова: нейромережа, обробка зображень, розпізнавання об'єктів, JavaScript, TensorFlow, WebAssembly, HTML Canvas, IntelliJ IDEA.
Valeriya KACHAROVA, Lecturer Kyiv Institute of Business and Technology
Anton LYKHATSKYI, Student
Kyiv Institute of Business and Technology
Kyiv, Ukraine
SPECIFICATIONS OF SYSTEM CREATION OBJECT RECOGNITION
The article analyzes the process of developing an application for recognition of hand gestures. From startups to international organizations, vendors and service providers are aware of the challenge of complex data processing. The digitization of various manual processes of data collection, analysis and other components has enabled businesses to achieve higher levels of productivity and make everyday life easier. One technology that has played a key role in this revolution is image recognition, a key subtask of computer vision that allows computers to interpret visual data - images and videos.
The study thoroughly covers the use of such tools as JavaScript, TensorFlow, React, WebAssembly, HTML Canvas, iTerm2 andIntelliJIDEA, in particular, provides a brief tour of the history of creation, implementation, interaction with various libraries and frameworks, highlights the main features and benefits for the user and developer opportunities. In addition, the technical aspects of the used methods, tools and algorithms for the development of high-performance applications that can ensure high accuracy and efficiency are presented. Currently, the most important tool is IntelliJ IDEA - an integrated development environment (IDE) implemented by JetBrains for various programming languages (Java, Kotlin, Python, JavaScript), which provides extensive opportunities for high-performance software development and performs a number of important functions (refactoring, intelligent analysis and automatic code completion, a version control system, tools for building and testing projects), includes plugins that allow developers to use other programming languages, expand the IDE's capabilities and increase work productivity.
Soon, the development of neural networks and image recognition systems will lead to the creation of new applications, which will have the following implementations: autonomous vehicles, systems for medical diagnostics and risk prediction, reducing human labor and improving the efficiency of production processes. However, there are certain challenges associated with this, namely: the problem of data security, ethical issues and insufficient regulatory and legal regulation. At the same time, the opening of many opportunities for improving people's quality of life and production efficiency is inevitable.
Keywords: neural network, image processing, object recognition, JavaScript, TensorFlow, WebAssembly, HTML Canvas, IntelliJ IDEA.
Вступ
додаток для розпізнавання об'єктів
Від стартапів до міжнародних організацій продавці та постачальники послуг усвідомлюють проблему складної обробки даних. Оцифровка різноманітних ручних процесів збору даних, аналізу та інших складників дозволила підприємствам досягти вищого рівня продуктивності й полегшила, повсякденне життя.
Однією з технологій, яка зіграла ключову роль у цій революції, є розпізнавання зображень, ключове підзавдання комп'ютерного зору, що дозволяє комп'ютерам інтерпретувати візуальні дані - зображення та відео.
Від відповіді на прості запитання («Це броколі?») до виконання складних аналітичних процесів у великих галузях промисловості людство стало свідком дивовижних темпів розширення можливостей розпізнавання зображень, пов'язаних із завданнями комп'ютерного зору. Вдосконалення у галузі штучного інтелекту зробили роботу алгоритмів розпізнавання зображень AI значно кращою та швидшою.
Пошук предметів або інформації в Інтернеті - це не лише текст, оскільки відтепер кожен може мати зображення чи його частину і знайти все, пов'язане з ним. Розпізнавання зображень є здатністю системи або програмного забезпечення ідентифікувати об'єкти, людей, місця та дії на зображеннях, що корисно для багатьох аспектів життєдіяльності (навчання, роботи, шопінгу). Крім того, деякі програми дозволяють бачити й розпізнавати об'єкти людям, які мають проблеми із зором. Завдяки розвитку програмного забезпечення для розпізнавання зображень можна шукати не тільки за нерухомою фотографією, але й за графікою, відео чи невеликим елементом. Цікаво, що комп'ютер точно визначає деталі, використовуючи алгоритми обробки зображень, які розпізнають окремі складники та групу компонентів, адже кожне зображення має матрицю з численних елементів, які представляють дані, пов'язані з ним.
Функція розпізнавання зображень стає дедалі популярнішою та затребуваною для онлайн-купівель, кількість яких постійно зростає, розширюється пропозиція, асортимент, розваг і навіть у бізнесі. Доречно виокремити чільні царини застосування, а саме:
1. Навчання. Додаток для розпізнавання зображень може допомогти, наприклад, студентам біологічного факультету визначити види рослин.
2. Виробництво. Контроль за обличчям або розташуванням працівників підвищить рівень продуктивності.
3. Автономні транспортні засоби. Водієм таксі буде міні-робот із функцією розпізнавання обличчя клієнтів.
4. Медицина. Штучний інтелект допоможе передбачити багато захворювань за допомогою алгоритмів, ставши універсальним помічником, який ніколи не спить і нагадує про прийом медикаментів.
Звідси, варто проаналізувати процес розробки програмного забезпечення (новітнього й актуального як в Україні, так і у світі), спрямованого на розпізнавання жестів рук, аби розкрити ключові технічні аспекти інноваційної технології (методи розпізнавання жестів, алгоритми обробки зображень) та потенційні сфери використання: від відеоігор до практичних додатків для осіб із фізичними обмеженнями, що править за мету статті.
Методи та матеріали
JavaScript - це мова програмування високого рівня, що здебільшого використовується для розробки динамічних веб-сайтів і веб-додатків, створена 1995 р. Бренданом Айхом, коли він працював у Netscape Communications Corporation; універсальна мова, яку можна використовувати для різних цілей (розробка програм на боці сервера, створення інтерактивних інтерфейсів користувача і програм для мобільних пристроїв). Це мова на боці клієнта, тобто працює у веб-браузері користувача, а не на веб-сервері, дозволяючи веб- розробникам створювати динамічні й адаптивні веб-сторінки, здатні реагувати на взаємодії користувача та оновлювати вміст без перезавантаження сторінки. JavaScript набуває популярності завдяки поширенню веб-додатків і розширенню фреймворків (Angular, React і Vue.js), які полегшують розробникам створення складних програм і покращують продуктивність її коду.
JavaScript забезпечує об'єктно-орієнтоване програмування, функціональне програмування і асинхронне програмування, має чималий набір вбудованих функцій та бібліотек, які спрощують маніпулювання елементами веб-сторінки, роботу з даними, виконання стандартних завдань (перевірка форм і обробка даних); часто використовується у поєднанні з іншими веб-технологіями (HTML, CSS) для створення інтерактивних і візуально привабливих веб-сторінок або серверними технологіями (Node.js) для створення повноцінних веб-додатків, які працюють як на боці клієнта, так і сервера.
Отже, JavaScript виступає універсальною та однією з найпоширеніших мов програмування, котра є важливим інструментом для веб -розробників завдяки здатності створювати динамічні й адаптивні веб-сторінки разом із великою спільнотою та бібліотекою ресурсів.
TensorFlow - це бібліотека програмного забезпечення з відкритим кодом, впроваджена Google для чисельних обчислень із використанням графіків потоку даних, яка від появи у листопаді 2015 р. залишається однією з найпопулярніших для машинного і глибокого навчання, моделі якого презентують розробники для широкого спектру програм (розпізнавання зображень, обробка природної мови, робототехніка) завдяки гнучкій та масштабованій платформі для створення, навчання і розгортання моделей машинного навчання та підтримці різноманітних мов програмування (Python, C++ і Java; Simon, J. Get started with HTML canvas). TensorFlow є високомодульним, що дозволяє розробникам вибирати із широкого спектру готових моделей та інструментів або створювати власні моделі й алгоритми, забезпечувати підтримку розподілених обчислень, навчаючи моделі на кількох машинах і графічних процесорах.
React - популярна бібліотека JavaScript із відкритим кодом для створення інтерфейсів користувача (UI), запропонована Facebook, що підтримується спільнотою розробників, дозволяє створювати повторно застосовувати компоненти інтерфейсу користувача й ефективно керувати станом своїх програм; визначати компоненти, які представляють різні частини інтерфейсу користувача, а потім рендерити їх на основі змін у стані програми; надає віртуальну DOM (об'єктну модель документа), здатну ефективно оновлювати фактичну DOM, що призводить до появи швидших і чутливіших веб-додатків (TensorFlow basics).
React часто поєднують з іншими бібліотеками та фреймворками, як-от: Redux - для керування станом, React Router - для маршрутизації, Nextjs - для відтворення на боці сервера, що застосовують багато компаній, зокрема Facebook, Airbnb, Netflix та Instagram.
Результати
HTML canvas - веб-технологія, яка дозволяє розробникам малювати й керувати графікою і анімацією на веб-сторінці за допомогою JavaScript. Елемент canvas є частиною специфікації HTML5 і забезпечує прямокутну область на веб - сторінці, де можна використовувати JavaScript для малювання графіки, створення анімації та відображення зображень. За допомогою полотна HTML можна малювати форми (прямокутники, кола, лінії та криві), додавати текст, зображення і візерунки, вдаватись до перетворень (масштабування, обертання, переклад до графіки).
HTML canvas використовують як інструмент для створення інтерактивних і динамічних веб-додатків (ігри, візуалізація даних та інтерфейси користувача), підтримується всіма сучасними веб-браузерами (Chrome, Firefox, Safari та Edge; What is IntelliJ IDEA?).
Mac OS, розроблена компанією Apple Inc. для своїх комп'ютерів Macintosh (Mac), є однією з найпопулярніших операційних систем для персональних комп'ютерів, оскільки відома надійністю, безпекою і зручністю використання, поєднуючи низку інноваційних функцій та інструментів, які полегшують роботу з комп'ютером та забезпечують підвищену продуктивність, а саме: система сповіщень, Siri - голосовий помічник, вбудовані програми для редагування фото та відео, функція Continuity, що дозволяє працювати зі своїми даними на різних пристроях тощо.
iTerm2 - термінальний додаток для операційної системи MacOS, який надає такі розширені можливості для роботи з командним рядком: зберігати та відновлювати сесії, користуватися вкладками для зручності роботи з кількома вікнами терміналу одночасно, що є зручним способом виконання протягом всього процесу, настроювати кольори, зокрема повноцінний спектр, який дозволяє варіювати світло і тінь, та інші параметри відображення, налаштовувати шрифти, послуговуватись швидкими клавішами для доступу до часто використовуваних команд; є популярним інструментом серед розробників і адміністраторів систем, які працюють із командним рядком на MacOS, оскільки дозволяє зручно та ефективно виконувати різні завдання в командному рядку та допомагає забезпечити більш продуктивну роботу з терміналом на MacOS (Bandyopadhyay H. Image Classification Explained).
Та, певно, зараз найважливішим інструментом виступає IntelliJ IDEA - впроваджене компанією JetBrains інтегроване середовище розробки (IDE) для різноманітних мов програмування (Java, Kotlin, Python, JavaScript), що надає широкі можливості для розробки програмного забезпечення з високим рівнем продуктивності й виконує низку важливих функцій (рефакторинг, інтелектуальний аналіз і автоматичне завершення коду, система контролю версій, засоби для побудови та тестування проєктів), долучає плагіни, які дозволяють розробникам використовувати інші мови програмування, розширювати можливості IDE та підвищувати продуктивність роботи.
Висновки
Розробка додатку для розпізнавання жестів рук є важливим та складним завданням у царині комп'ютерного зору та інтерфейсування людей з комп'ютером, оскільки може використовуватись із розмаїтими цілями - від розважальних чи змагальних в ігровій індустрії до необхідної допомоги особам з особливими потребами у контролі комп'ютера. У процесі розробки були застосовані різноманітні технології, передусім обробка зображень і розпізнавання образів, адже важливо підібрати оптимальні алгоритми й підходи до розпізнавання жестів, що дозволило досягти високої точності та швидкості роботи додатку, який виконує певні функції (розпізнавання жестів для управління відеопрогравачем, робота з додатками чату або навігація в Інтернеті), що забезпечують ефективнішу і зручнішу взаємодію з комп'ютером.
Отже, впровадження таких технологій, як TensorFlow, у поєднанні з React, дозволяє швидко створювати додатки для розпізнавання жестів рук із високою точністю. TensorFlow надає розробникам зручні інструменти для навчання та оптимізації нейромереж, а React забезпечує зручний інтерфейс користувача і зв'язок з нейромережами.
Перспективним є використання WebAssembly для оптимізації виконання нейромереж на боці клієнта, що дозволяє послуговуватись веб-додатками з використанням низькорівневої мови програмування, гарантуючи високу продуктивність і швидкість роботи.
Веб-технології забезпечують зручну інтеграцію зі стандартними протоколами (HTTP та WebSocket), уможливлюючи зручний доступ до нейромереж і обмін даними з ними. Інтеграція нейромереж і машинного навчання з веб-технологіями, нейромережі та системи розпізнавання зображень залишаються перспективними напрямками розвитку штучного інтелекту й розмаїтих додатків, що можна застосовувати в медицині, рекламі, фінансах, транспорті, розвагах і бізнесі. Чільною перевагою нейромереж і систем розпізнавання зображень є здатність до автоматичного навчання та покращення, високої точності й ефективності роботи завдяки виявленню складних залежностей у великих наборах даних.
Незабаром розвиток нейромереж і систем розпізнавання зображень зумовить створення нових застосувань, що матиме такі втілення: автономні транспортні засоби, системи медичної діагностики, прогнозування ризиків, зменшення людської праці та покращення ефективності виробничих процесів. Однак із цим пов'язані певні виклики, а саме: проблема безпеки даних, етичні питання і недостатність нормативно-правового регулювання. Водночас неминуче відкриття безлічі можливостей для покращення якості життя людей та ефективності виробництва.
Список використаних джерел
1. Andres, M. Computer vision, a technology that looks into the future. Universidad Autonoma de Sinaloa. URL: https://innovacion.uas.edu.mx/computer-vision-a-technology-that-looks-into-the-future/?lang=en
2. Bandyopadhyay, H. Image Classification Explained. V7 company blog. URL: https://www.v7labs.com/blog/image-classification-guide
3. iTerm project. URL: https://iterm2.com/documentation.html
4. Mehul, M. How React works under the hood. Free Code Camp project. URL: https://www.freecodecamp.org/news/react-under-the-hood/
5. Neural Rendering: A Gentle Introduction. Datagen company. URL: https://datagen.tech/guides/synthetic-data/neural-rendering/
6. Redmon, J., Divvala, S., Girshick, R., Farhadi, A. (2015). You Only Look Once: Unified, Real-Time Object Detection. University of Washington.
7. Simon, J. Get started with HTML canvas. Creative Bloq. URL: https://www.creativebloq.com/how-to/get-started-with-html-canvas
8. TensorFlow basics. TensorFlow Core documentation. URL: https://www.tensorflow.org/guide/basics
9. What is IntelliJ IDEA? JetBrains company. URL: https://www.jetbrains .com/idea/features/
REFERENCES
1. Andres, M. Computer vision, a technology that looks into the future. Universidad Autonoma de Sinaloa. URL: https://innovacion.uas.edu.mx/computer-vision-a-technology-that-looks-into-the-future/?lang=en
2. Bandyopadhyay, H. Image Classification Explained. V7 company blog. URL: https://www.v7labs.com/blog/image-classification-guide
3. iTerm project. URL: https://iterm2.com/documentation.html
4. Mehul, M. How React works under the hood. Free Code Camp project. URL: https://www.freecodecamp.org/news/react-under-the-hood/
5. Neural Rendering: A Gentle Introduction. Datagen company. URL: https://datagen.tech/guides/synthetic-data/neural-rendering/
6. Redmon, J., Divvala, S., Girshick, R., Farhadi, A. (2015). You Only Look Once: Unified, Real-Time Object Detection. University of Washington.
7. Simon, J. Get started with HTML canvas. Creative Bloq. URL: https://www.creativebloq.com/how-to/get-started-with-html-canvas
8. TensorFlow basics. TensorFlow https://www.tensorflow.org/guide/basics Core documentation. URL
9. What is IntelliJ IDEA?https://www.jetbrains .com/idea/features/JetBrains company. URL
Размещено на Allbest.ru
...Подобные документы
Історія досліджень, пов’язаних з розпізнаванням образів, його практичне використання. Методи розпізнавання образів: метод перебору, глибокий аналіз характеристик образу, використання штучних нейронних мереж. Характерні риси й типи завдань розпізнавання.
реферат [61,7 K], добавлен 23.12.2013Огляд інтелектуальних принципів організації процесу розпізнавання символів. Розробка системи безклавіатурного введення документів у комп’ютер. Опис і обґрунтування проектних рішень; розрахунки і експериментальні дані; впровадження системи в експлуатацію.
дипломная работа [182,5 K], добавлен 07.05.2012Огляд методів розпізнавання образів. Основні ідеї інформаційно-екстремального методу розпізнавання рукописних символів. Критерій оптимізації параметрів функціонування даної системи. Інформаційне та програмне забезпечення обробки рукописних символів.
дипломная работа [291,0 K], добавлен 14.10.2010Специфіка застосування нейронних мереж. Огляд програмних засобів, що використовують нейронні мережі. Побудова загальної моделі згорткової нейронної мережі. Реалізація нейромережного модулю розпізнавання символів на прикладі номерних знаків автомобілів.
дипломная работа [3,4 M], добавлен 15.03.2022Переваги і проблеми дистанційної освіти на прикладі корпорації Microsoft. Створення власного web-додатку. Розробка технічних умов програмної системи, модуля пошуку та бронювання авіаквитків. Інтеграція модуля з сайтом. Використання javascript фреймворків.
курсовая работа [1,0 M], добавлен 31.08.2014Дослідження набору інтерфейсів, які дозволяють клієнту та серверу обмінюватися даними. Аналіз особливостей структурованого сховища для зберігання об’єктів в контейнерах прикладних програм. Вивчення процесу створення об’єкту та його розміщення в таблиці.
лабораторная работа [11,1 K], добавлен 09.06.2012Сегментація і нормалізація зображень. Основні функціональні можливості та режими роботи комплексу розпізнавання письмового тексту. Розробка комплексу оптичного розпізнавання символів. Шрифтові та безшрифтові алгоритми розпізнавання друкованого тексту.
курсовая работа [1,7 M], добавлен 19.05.2014Комп’ютерне моделювання системи сегментації та розпізнавання облич на зображеннях. Підвищення швидкодії моделювання за кольором шкіри та покращення якості розпізнавання при застосуванні робастних boosting-методів. Розробка алгоритмів функціонування.
дипломная работа [1,6 M], добавлен 02.07.2014Алгоритм оптичного розпізнавання образів. Універсальність таких алгоритмів. Технологічність, зручність у процесі використання програми. Два класи алгоритмів розпізнавання друкованих символів: шрифтовий та безшрифтовий. технологія підготовки бази даних.
реферат [24,5 K], добавлен 19.11.2008Проектування бази даних: визначення об’єктів, структура таблиць, побудова схеми даних, забезпечення цілісності даних, створення певних відношень між таблицями, створення запитів, побудова форм, оформлення об’єктів. Розробка інструкції користувача.
курсовая работа [1,9 M], добавлен 19.09.2014Ознайомлення із загальною структурою системи автоматичного розпізнавання мовлення. Визначення особливостей нейронних мереж. Дослідження та характеристика процесу побудови системи розпізнавання мовлення. Вивчення специфіки прихованої моделі Маркова.
дипломная работа [1,1 M], добавлен 25.07.2022Розробка, дослідження та реалізація методів вирішення завдань аналізу, розпізнавання і оцінювання зображень як один із провідних напрямків інформатики. Класифікація та аналіз існуючих методів розпізнавання образів, переваги та недоліки їх застосування.
статья [525,8 K], добавлен 19.09.2017Огляд існуючих типів додатків, їх переваг та недоліків, принципів створення. HTML — стандартна мова розмітки документів для Web. Загальнi вiдомостi про Ajax. Мова JavaScript, проблема з налагодженням сценаріїв. Динамічне створення Flash-анімації.
дипломная работа [868,8 K], добавлен 23.04.2011Серверна мова програмування PHP. База даних MySQL. Мова та стандарти XML. Рівні та способи взаємодії засобів розробки. Засоби трансформації XML. Розробка інтернет-додатку з використанням PHP, MYSQL, XML. Розрахунок трудомісткості створення системи.
дипломная работа [1,8 M], добавлен 19.08.2012Структура і функції інформаційної системи. Ситуаційний аналіз процесу оцінки проектів. Аналіз процесу розробки та створення технічного завдання. Створення протоколу якості системи. Структура та принцип роботи програмного продукту, опис прецендентів.
курсовая работа [980,0 K], добавлен 22.09.2014Системи розпізнавання обличчя. Призначення та область застосування програми "Пошук обличчя люди у відеопотоках стандарту MPEG-4". Штучна нейронна мережа, локалізація та розпізнавання обличчя. Методи, засновані на геометричних характеристиках обличчя.
курсовая работа [1,8 M], добавлен 27.03.2010Актуальність сучасної системи оптичного розпізнавання символів. Призначення даних систем для автоматичного введення друкованих документів в комп'ютер. Послідовність стадій процесу введення документу в комп'ютер. Нові можливості програми FineReader 5.0.
курсовая работа [4,5 M], добавлен 29.09.2010Проект створення тестової системи, визначення професійної придатності програмістів на основі розробки специфічної тематики у вигляді питань: інформаційна система і потік, модулі її функціонування і їх забезпечення. Аналіз виводів професійної придатності.
дипломная работа [994,3 K], добавлен 05.10.2010Основи Web-програмування. Використання мови HTML. Базові елементи HTML. Форматування тексту. Вирівнювання тексту та горизонтальна лінія. Значення RGB- коду. Таблиці та списки, посилання та робота з ними. Створення посилань на документи і файли.
курсовая работа [40,9 K], добавлен 12.02.2009Принципи створення WEB-сторінок. Правила і програми для створення електронних публікацій. Гіперпосилання. Використання JAVA-скриптів при створенні HTML документу. Графіка у HTML-документах. Утворення та відправлення повідомлень електронної пошти.
реферат [177,1 K], добавлен 19.10.2007