Giter VIP home page Giter VIP logo

stretchingtonirvana's Introduction

StretchingToNirvana

Are you under 35 but your back feels like it's 60? Stretching to Nirvana promises to help make your back and knees feel younger, with a web app that guides you visually to reverse time on the hurtin'.

Click this link to try it out

Live Demonstration

Live Demonstration

What it does

'Stretching to Nirvana' is a smart personal trainer that uses Artificial Intelligence and Machine Learning to help you with your yoga exercises during the lockdown and make them more fun and effective. The project tracks your movements in real-time, which are then fed into a machine learning model that instructs the user whether he or she is doing the movements correctly. The program cycles through a set of Yoga poses (Triangle Pose, Warrior Pose, etc.) and effectively helps you perform these poses, by detecting whether the user is or is not following the provided guideline.

Steps:

  1. The user is presented with a yoga pose for which he must perform for 15 seconds.
  2. The timer counts down once the model detects that the user is performing the pose correctly. If the user breaks out of the pose, the timer count down stops.
  3. The program cycles to the next yoga pose once the 15 seconds have been completed.

How we built it

'Stretching to Nirvana' leverages the mighty powerful Tensorflow.js Machine Learning framework throughout all steps, with different libraries being used for different steps:

  1. Pose-estimation: Pose-estimation or the skeletal tracking that you can see in the interface was implemented using the PoseNet Library. PoseNet conveniently provided us the x-y coordinates of the most prominent joints in the body (elbows, knees, etc.). The coordinates were used to display the skeletal figure you can see on the screen and to track yoga poses made by the user.

  2. Yoga Pose Classification: The users' movements were fed into a Classification Machine Learning Neural Network which was implemented using the ml5.js Library. X-Y coordinates of joints provided by PoseNet were analyzed to see if the user is performing the required Yoga pose.

How We Intend to Upgrade

  • Add more poses
  • Adding visual cues and suggestions to help correct poses and form whenever the user performs a stretch incorrectly
  • Adding a socially interactive aspect to the web app where friends and family can choose to do stretches together, in an effort to further help improve the well-being of users.

stretchingtonirvana's People

Contributors

baselomari avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.