заглушки Оцінка пози ШІ у програмі для фітнесу - Unite.AI
Зв'язатися з нами

Здоров'я

Оцінка пози ШІ у програмі для фітнесу

mm

опублікований

 on

Максим Татарянц, Data Science Engineer at MobiDev.

Оцінка пози людини відноситься до технології – досить нової, але швидко розвивається – яка відіграє важливу роль у фітнес і танцювальних програмах, дозволяючи нам розміщувати цифровий вміст над реальним світом.

Коротше кажучи, концепція оцінки пози людини — це технологія на основі комп’ютерного зору, здатна виявляти й обробляти поставу людини. Найважливішою і центральною частиною цієї технології є моделювання людського тіла. Три моделі тіла є найбільш помітними в сучасних системах оцінки пози людини – на основі скелета, на основі контурів і на основі об’єму.

Модель на основі скелета

Ця модель складається з набору суглобів (ключових точок), таких як коліна, щиколотки, зап’ястки, лікті, плечі та орієнтація кінцівок тіла. Ця модель відрізняється своєю гнучкістю, і як така підходить як для 3-вимірної, так і для 2-вимірної оцінки пози людини. За допомогою 3-вимірного моделювання рішення використовує RGB-зображення та знаходить координати X, Y та Z суглобів. З 2-вимірним моделюванням це той самий аналіз RGB-зображення, але з використанням координат X і Y.

Контурна модель

У цій моделі використані контури тулуба та кінцівок тіла, а також їх груба ширина. Тут рішення бере силует каркаса тіла та відображає частини тіла у вигляді прямокутників і меж у цьому каркасі.

Модель на основі обсягу

Ця модель зазвичай використовує серію тривимірних сканувань для захоплення форми тіла та перетворює її на каркас із форм і геометричних сіток. Ці фігури створюють тривимірну серію поз і зображень тіла.

Як працює 3D оцінка пози людини

Фітнес-програми зазвичай покладаються на тривимірну оцінку пози людини. Для цих програм чим більше інформації про позу людини, тим краще. За допомогою цієї техніки користувач програми буде записувати свою участь у вправі чи тренуванні. Потім програма аналізуватиме рухи тіла користувача, пропонуючи виправлення помилок або неточностей.

Блок-схема цього типу додатка зазвичай виглядає так:

  • Спочатку зберіть дані про рухи користувача під час виконання вправи.
  • Далі визначте, наскільки правильними чи неправильними були рухи користувача.
  • Нарешті, покажіть користувачеві через інтерфейс, які помилки він міг зробити.

Наразі стандартом у технології людських поз є Топологія COCO. Топологія COCO складається з 17 орієнтирів по всьому тілу, від обличчя до рук і ніг. Зауважте, що COCO — це не єдина структура поз людського тіла, а лише найбільш часто використовувана.

Цей тип процесу зазвичай використовує технологію глибокого машинного навчання для вилучення суглобів під час оцінювання пози користувача. Потім він використовує алгоритми на основі геометрії, щоб зрозуміти, що було знайдено (проаналізувати відносне положення виявлених суглобів). Використовуючи динамічне відео як вихідні дані, система може використовувати серію кадрів, а не лише одне зображення, щоб зафіксувати ключові моменти. Результатом є набагато точніше відтворення реальних рухів користувача, оскільки система може використовувати інформацію з сусідніх кадрів для вирішення будь-яких невизначеностей щодо положення тіла людини в поточному кадрі.

З поточних методів використання 3D оцінки пози у фітнес-додатках найточніший підхід полягає в тому, щоб спочатку застосувати модель для виявлення 2D ключових точок, а потім обробити 2D виявлення за допомогою іншої моделі, щоб перетворити їх на прогнози 3D ключових точок. 

У дослідження ми нещодавно опублікували, було використано єдине джерело відео зі згортковими нейронними мережами з розширеними часовими звивинами, застосованими для виконання перетворення ключових точок 2D -> 3D.

Проаналізувавши наявні на даний момент моделі, ми визначили, що VideoPose3D — це рішення, яке найкраще відповідає потребам більшості фітнес-додатків, керованих штучним інтелектом. Вхідні дані за допомогою цієї системи мають дозволяти виявлення двовимірного набору ключових точок, де модель, попередньо навчена на наборі даних COCO 2017, застосовується як a 2D детектор. 

Для найточнішого передбачення положення поточного суглоба або ключової точки VideoPose3D може використовувати кілька кадрів протягом короткого періоду часу для створення інформації про 2D-позу. 

Щоб ще більше підвищити точність оцінки 3D-пози, кілька камер можуть збирати альтернативні точки зору користувача, який виконує ту саму вправу чи програму. Зауважте, однак, що це вимагає більшої потужності обробки, а також спеціалізованої архітектури моделі для роботи з кількома вхідними відеопотоками.

Останнім часом Google представила їх система BlazePose, орієнтована на мобільний пристрій модель для оцінки пози людини шляхом збільшення кількості проаналізованих ключових точок до 33, надмножина набору ключових точок COCO та дві інші топології – BlazePalm і BlazeFace. Як наслідок, модель BlazePose може давати результати передбачення пози, що відповідають моделям рук і облич, артикулюючи семантику тіла.

Кожен компонент у системі оцінки пози людини на основі машинного навчання має бути швидким, займаючи максимум пару мілісекунд на кадр для моделей визначення пози та відстеження. 

Через те, що конвеєр BlazePose (який включає компоненти оцінки пози та відстеження) має працювати на різних мобільних пристроях у режимі реального часу, кожна окрема частина конвеєра розроблена так, щоб бути дуже ефективною з точки зору обчислення та працювати зі швидкістю 200–1000 кадрів/с. .

Оцінка пози та відстеження на відео, де невідомо, чи присутня людина і де вона, зазвичай виконується в два етапи. 

На першому етапі запускається модель виявлення об’єкта, щоб визначити місцезнаходження людини або визначити її відсутність. Після того, як особу було виявлено, модуль оцінки пози може обробити локалізовану область, що містить особу, і передбачити положення ключових точок.

Недоліком цього налаштування є те, що для кожного кадру потрібні як виявлення об’єктів, так і модулі оцінки пози, що споживає додаткові обчислювальні ресурси. Однак автори BlazePose винайшли розумний спосіб обійти цю проблему та ефективно використовувати її в інших модулях виявлення ключових точок, таких як FaceMesh та MediaPipe Hand.

Ідея полягає в тому, що модуль виявлення об’єктів (детектор обличчя у випадку BlazePose) можна використовувати лише для запуску відстеження пози в першому кадрі, тоді як подальше відстеження людини може здійснюватися виключно за допомогою передбачень пози після деякого вирівнювання пози, параметри, для яких прогнозуються за допомогою моделі оцінки пози.

Обличчя створює для нейронної мережі найсильніший сигнал щодо положення тулуба через відносно невелику дисперсію зовнішнього вигляду та високий контраст його рис. Отже, можна створити швидку систему з низьким накладним навантаженням для визначення пози за допомогою ряду виправданих припущень, заснованих на ідеї, що людську голову можна буде знайти в кожному випадку особистого використання.

Подолання труднощів оцінки пози людини

Використання оцінки пози у фітнес-додатках стикається з проблемою величезного діапазону людських поз, наприклад, сотень асан у більшості режимів йоги. 

Крім того, тіло іноді блокує певні кінцівки, які знімає будь-яка камера, користувачі можуть носити різноманітний одяг, який приховує риси тіла та особистий вигляд.

Використовуючи будь-які попередньо підготовлені моделі, зауважте, що незвичайні рухи тіла або дивні ракурси камери можуть призвести до помилки в оцінці пози людини. Ми можемо певною мірою пом’якшити цю проблему, використовуючи синтетичні дані з візуалізації 3D-моделі людського тіла або точно налаштовуючи дані, специфічні для відповідної області.

Хороша новина полягає в тому, що ми можемо уникнути або пом’якшити більшість недоліків. Ключем до цього є вибір правильних навчальних даних і архітектури моделі. Крім того, тенденція розвитку в області технології оцінки пози людини свідчить про те, що деякі питання, з якими ми зараз стикаємося, будуть менш актуальними в найближчі роки.

Заключне слово

Оцінка пози людини містить різноманітні потенційні майбутні застосування за межами сфери фітнес-додатків і відстеження рухів людини, від ігор до анімації, доповненої реальності та робототехніки. Це не повний перелік можливостей, але висвітлює деякі з найімовірніших областей, де оцінка пози людини сприятиме нашому цифровому ландшафту.

Максим прагне отримати нові знання та досвід у Data Science та Machine Learning. Його особливо цікавлять технології на основі глибокого навчання та їх застосування в бізнес-випадках.