Google представила MediaPipe – модульний фреймворк машинного навчання для браузера
Google представила MediaPipe - модульний фреймворк машинного навчання для браузера
Google створила браузерну версію фреймворку MediaPipe, що дозволяє створювати та виконувати модульні алгоритми машинного навчання, повідомляється в блозі Google Developers
https://developers.googleblog.com/2020/01/mediapipe-on-web.html
Розробники MediaPipe створили сайт https://viz.mediapipe.dev/, на якому можна випробувати кілька базових алгоритмів комп'ютерного зору. Фреймворк MediaPipe простим чином об'єднує базові алгоритми комп'ютерного зору конвеєр, який розгортається на всі основні платформи, без необхідності в адаптації під кожну з них окремо. У GitHub фреймворку є приклади для: моделі руки в реальному часі, сегментації волосся; виявлення та відстеження об'єктів; виявлення осіб та деякі інші.
За останнє десятиліття дослідники в області машинного навчання досягли величезного прогресу в цій галузі та їх алгоритми стали все частіше застосовуватися на практиці. Однак досі поширення алгоритмів машинного навчання багато в чому стримується технічними проблемами, пов'язаними з їх застосуванням. Одна з ключових проблем полягає в тому, що багато алгоритмів, у тому числі алгоритми комп'ютерного зору, вимагають занадто великих ресурсів для роботи в реальному часі на смартфонах і звичайних комп'ютерах. Крім того, як в інших областях програмування, перед розробниками постає питання переносимості їх програм, повторного використання відкритого коду і швидкого розгортання.
Розробники з Google створили фреймворк MediaPipe, який багато в чому вирішує ці проблеми. У ньому розробник може брати вже написані іншими програмістами базові алгоритми комп'ютерного зору і простим чином об'єднувати їх у потрібний йому конвеєр. Крім того, фреймворк спочатку створювався з розрахунком на те, що програми повинні без проблем розгортатися на всі основні платформи, без необхідності в адаптації під кожну з них.
Автори постаралися оптимізувати код для роботи на звичайних пристроях користувача. Як приклад вони раніше показали демо-версію програми для смартфонів, яка в реальному часі створює модель руки, що може стати в нагоді для якісного розпізнавання жестів пальцями за допомогою камери.
Тепер розробники MediaPipe створили браузерну версію фреймворку, що дозволяє запускати майже на будь-якій платформі без необхідності в установці програми. Ця версія заснована на WebAssembly, який дозволяє компілювати вихідний код на C++ в низькорівневий код, що виконується у віртуальній машині в браузері. Це дозволяє зробити код платформонезалежним, а також виконувати його набагато швидше, ніж JavaScript.
Розробники також створили веб-візуалізатор, який дозволяє в реальному часі правити код і виконувати його прямо в браузері. Як приклад у ньому міститься кілька готових алгоритмів, які досить швидко працюють на смартфоні і комп'ютері середньої потужності. Наприклад, там містяться алгоритми для сегментації волосся, відстеження осіб і інші. Оскільки після завантаження моделей всі обчислення відбуваються локально, дані камери не залишають пристрій.
Окрім подібних «сирих» алгоритмів, існують і цілком практичні алгоритми, які можна використовувати на смартфонах в реальному житті. Наприклад, нещодавно Samsung представила алгоритм, що дозволяє друкувати на плоскій поверхні перед смартфоном, який за допомогою камери розпізнає ці торкання і перетворює на текст. Крім того, різкий прогрес в якості фотографій на смартфон у повному обсязі пов'язаний саме з алгоритмами машинного навчання.