Здравоохранение

Оценка позы человека с помощью ИИ в приложениях для фитнеса

mm
Добавьте Unite.AI в избранные источники в Google

Автор: Максим Татарянц, инженер по науке о данных в MobiDev.

Оценка позы человека – это технология, которая относительно нова, но быстро развивается, и она играет значительную роль в приложениях для фитнеса и танцев, позволяя нам накладывать цифровой контент на реальный мир.

Вкратце, концепция оценки позы человека представляет собой технологию, основанную на компьютерном зрении, которая может обнаруживать и обрабатывать позу человека. Самой важной и центральной частью этой технологии является моделирование человеческого тела. В настоящее время в системах оценки позы человека используются три основных типа моделей – скелетная, контурная и объемная.

Скелетная модель

Эта модель состоит из набора суставов (ключевых точек), таких как колени, лодыжки, запястья, локти, плечи и ориентация конечностей. Эта модель примечательна своей гибкостью и поэтому подходит как для трехмерной, так и для двумерной оценки позы человека. При трехмерном моделировании решение использует RGB-изображение и находит координаты X, Y и Z суставов. При двумерном моделировании это тот же анализ RGB-изображения, но с использованием координат X и Y.

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

Эта модель использует контуры туловища и конечностей, а также их приблизительную ширину. Здесь решение принимает силуэт тела и представляет части тела как прямоугольники и границы внутри этого контура.

Объемная модель

Эта модель обычно использует серию трехмерных сканов для захвата формы тела и преобразует ее в набор форм и геометрических сеток. Эти формы создают трехмерную серию поз и представлений тела.

Как работает оценка позы человека в 3D

Приложения для фитнеса обычно полагаются на оценку позы человека в 3D. Для этих приложений чем больше информации о позе человека, тем лучше. С помощью этого метода пользователь приложения записывает себя, выполняя упражнение или тренировочную программу. Приложение затем анализирует движения тела пользователя, предлагая исправления ошибок или неточностей.

Типичный алгоритм работы такого приложения обычно следующий:

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

В настоящее время стандартом в технологии позы человека является топология COCO. Топология COCO состоит из 17 ориентиров на теле, от лица до рук и ног. Обратите внимание, что COCO – не единственная рамка позы человека, а наиболее часто используемая.

Этот процесс обычно использует глубокие технологии машинного обучения для извлечения суставов при оценке позы пользователя. Затем он использует геометрические алгоритмы для анализа относительных положений обнаруженных суставов. При использовании динамического видео в качестве источника данных система может использовать серию кадров, а не один изображение, для захвата ключевых точек. Результатом является более точное представление реальных движений пользователя, поскольку система может использовать информацию из соседних кадров для решения любых неопределенностей относительно положения тела в текущем кадре.

Из текущих методов использования оценки позы человека в 3D в приложениях для фитнеса наиболее точным подходом является применение модели для обнаружения 2D ключевых точек, а затем обработка 2D обнаружения другой моделью для преобразования их в 3D прогнозы ключевых точек.

В исследовании, которое мы опубликовали недавно, использовался один видеоисточник, и были применены свёрточные нейронные сети с расширенными временными свёрточными операциями для выполнения преобразования ключевых точек 2D в 3D.

После анализа существующих моделей мы пришли к выводу, что VideoPose3D – это решение, наиболее подходящее для большинства приложений для фитнеса, основанных на ИИ. Входные данные в этой системе должны позволять обнаруживать 2D ключевые точки, где модель, предварительно обученная на наборе данных COCO 2017, используется в качестве 2D детектора.

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

Чтобы еще больше повысить точность оценки позы человека в 3D, можно использовать более одной камеры для сбора альтернативных точек зрения пользователя, выполняющего одно и то же упражнение или программу. Обратите внимание, однако, что это требует большей вычислительной мощности, а также специальной архитектуры модели для обработки нескольких видеопотоков.

Недавно Google (GOOGL ) представила свою систему BlazePose, модель для оценки позы человека на мобильных устройствах, увеличивающую количество анализируемых ключевых точек до 33, что является надмножеством набора ключевых точек COCO и двух других топологий – BlazePalm и BlazeFace. В результате модель BlazePose может производить результаты оценки позы, согласующиеся с моделями рук и лица, артикулируя семантику тела.

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

Поскольку конвейер BlazePose (который включает компоненты оценки и отслеживания позы) должен работать на различных мобильных устройствах в реальном времени, каждая часть конвейера спроектирована так, чтобы быть очень вычислительно эффективной и работать на скорости 200-1000 кадров в секунду.

Оценка и отслеживание позы в видео, когда неизвестно, присутствует ли человек и где он находится, обычно выполняется в два этапа.

На первом этапе запускается модель обнаружения объектов для определения присутствия человека или его отсутствия. После обнаружения человека модуль оценки позы может обработать локализированную область, содержащую человека, и предсказать положение ключевых точек.

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

Идея заключается в том, что модель обнаружения объектов (детектор лица в случае BlazePose) может использоваться только для запуска отслеживания позы в первом кадре, а последующее отслеживание человека может выполняться исключительно с помощью прогнозов позы после некоторого выравнивания, параметры которого предсказываются с помощью модели оценки позы.

Лицо производит самый сильный сигнал о положении туловища для нейронной сети, благодаря относительно небольшому разнообразию внешнего вида и высокому контрасту его особенностей. Следовательно, можно создать быструю, низкозатратную систему обнаружения позы через ряд оправданных предположений, основанных на идее, что человеческая голова будет локализуема в каждом случае личного использования.

Преодоление проблем оценки позы человека

Использование оценки позы человека в приложениях для фитнеса сталкивается с проблемой огромного количества поз человека, например, сотен асан в большинстве программ йоги.

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

При использовании любых предварительно обученных моделей обратите внимание, что необычные движения тела или необычные углы камеры могут привести к ошибкам в оценке позы человека. Мы можем смягчить эту проблему, используя синтетические данные из 3D модели человеческого тела или путем тонкой настройки с данными, специфичными для рассматриваемой области.

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

Заключение

Оценка позы человека имеет ряд потенциальных будущих применений за пределами области приложений для фитнеса и отслеживания движений человека, от игр до анимации, дополненной реальности и робототехники. Это не полный список возможностей, но подчеркивает некоторые из наиболее вероятных областей, где оценка позы человека будет вносить свой вклад в наш цифровой ландшафт.

Maksym стремится получить новые знания и опыт в области Data Science и Machine Learning. Он особенно интересуется технологиями на основе Deep Learning и их применением в бизнес-кейсах.