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

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

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

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

Для этого я попытался реализовать все вычисления и обучение модели машинного обучения в Интернете, а не на локальной машине. Для этого существует n библиотек сценариев Java. В этой статье я буду обсуждать 2 ключевые библиотеки сценариев Java,

P5.js - библиотека javascript, которая значительно упрощает код сценария java, предоставляя более простые функции, а также хорошо интегрируется с

Ml5.js - библиотека сценариев Java, которая упрощает машинное обучение в Интернете.

PoseNet - это модель компьютерного зрения и машинного обучения, которая помогает отслеживать позы человека в натуральную величину с 17 ключевыми точками на выходе.

Примечание. Ключевые точки - это не что иное, как основные суставы человеческого скелета на теле, которые при соединении напоминают структуру человеческого скелета.

Модель была представлена ​​сообществом TensorFlow и была обучена с использованием полноразмерных человеческих изображений (от глаз до лодыжек), поэтому модель хорошо работает, когда пользователь вводит полноразмерные человеческие данные.

Ссылка на то, как работает posenet, была упомянута в конце этой статьи :)

Внедрение переноса обучения в модель PoseNet помогает в обучении модели определенной позе. Трансферное обучение - это метод, с помощью которого обученная модель машинного обучения повторно обучается для определенных условий. скажем, есть обученная модель PoseNet, которая при реализации предоставляет скелетные выходные данные, ссылающиеся на ключевые точки в ней. Теперь при переносе обучения выходные данные модели PoseNet (то есть ключевые точки) вводятся в качестве входных данных для другой модели, и эта модель обучается для требуемых поз, которые пользователь хочет оценить. Функции модели PoseNet позволяют вам «переобучать» или «повторно использовать» модель для новой пользовательской задачи.

С помощью Ml5.js решаются следующие задачи

Сбор данных - где создаются файлы json, в зависимости от того, сколько типов данных (позы) должно быть классифицировано.

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

Развертывание модели. Нейронная сеть обучена, и теперь она получает ввод от пользователей и обеспечивает требуемый вывод в соответствии с данными (позой), обученными.

РАСЧЕТ УГЛА ДЛЯ ТОЧНОСТИ

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

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

ИСПОЛЬЗОВАННАЯ ЛИТЕРАТУРА:

  1. Моя статья на Medium в PoseNet- https://medium.com/happiestneurons/extensive-oughtts-on-machine-learning-in-javascript-878802398459
  2. Моя ссылка на Github: https://github.com/Anjanapradeep/POSE_ESTIMATION-YOGA-POSES
  3. p5.js (руководство) - https://p5js.org/get-started/
  4. Онлайн-редактор P5.js (предоставляет живые результаты и с ним легко работать) - https://editor.p5js.org/
  5. Ml5.js (учебник) - https://learn.ml5js.org/#/
  6. Ml5.js для PoseNet- https://ml5js.org/reference/api-PoseNet/
  7. Модель PoseNet работает- https://blog.tensorflow.org/2018/05/real-time-human-pose-estimation-in.html