What it does

Yoga Remastered is a free multiplayer yoga game. Each game has a few rounds played in a group call. In every round, everyone tries to perform a yoga pose recommended for postnatal care. The closer you are to striking a pose according to the trained ML model, the more points you receive. The points from each round are totaled at the end in a friendly competition.

After the game ends, participants can chat and connect with one another over shared experiences. They have the option to view a randomized video on postnatal care curated from a trained doctor. Or if only one new mother is in the room, she can talk to a chatbot deployed via Azure to help assess whether they have postpartum depression.

Inspiration

Up to 20% of women experience postpartum depression (PPD). PPD is associated with anxiety and poor health-related quality of life. Studies show that 78% of women who practice yoga in a group experience clinically significant change with a greater rate of improvement in depression, anxiety when compared to those who didn't.*

The pressure to look a certain way is rolled into a larger snowball of expectations for new moms -- both external and sometimes internal. Women have high levels of body image dissatisfaction following pregnancy, says a study published in March in the journal Body Image. The study cited outside pressure to lose weight and “snap back” as a source of sadness, and even depression, in postpartum women. A negative body perception in the postpartum period increases the likelihood that those new moms will encounter other psychological distress, the study states.

Postnatal yoga brings balance to the body, mind, and emotions, bridging the gaps on a metaphysical level and leading us to a place of total understanding and connectivity. Yoga offers a reprieve from the daily routine, especially when practicing it with others. Simply making an effort to move your body can inspire you to improve all areas of your life; taking action breathes new life into the body, mind, and spirit.

*https://www.ncbi.nlm.nih.gov/pmc/articles/PMC5871291/

How I built it

We built the frontend in Node.js, Express, HTML, CSS, and vanilla JavaScript and the peer-to-peer connection through socket.io and PeerJS. We also used posenet and TensorFlow for machine learning.

You can view the wireframes and design for the project here: https://www.figma.com/file/AkODo7yaM3pkmNQlEPEWVv/tts-hackathon-yoga?node-id=0%3A1

Challenges I ran into

We had several big challenges with each part of the stack.

For the front end, we had an issue where we were able to get the room chat feature to work, but we were not able to integrate the peer video stream into the same room. We learned about the different reasons why communications can be rejected including invalid calls and even sending null info, and we learned about the different WebRTC (real-time communication) tools out there including agora.io, simple-peer, budo, swarm-webrtc, etc.

For the ML model, a major challenge was to train the posenet model with a suitable generalized dataset so as to recognize the pose accurately against any kind of background and could satisfy the physical structure of everyone using this.

Another major hurdle was the weights obtained after training the model were really heavy in terms of memory requirements making it difficult to be deployed along with a web app. In addition, since we all working remotely with specific tech stacks, it was necessary for us to integrate those using version control i.e GitHub had to ensure that everything worked seamlessly across each of our devices. We had to be careful of dependency errors.

Accomplishments that we're proud of

We created a way to stay in touch while being socially distant! And we love this idea that we collectively came up with based on our different interests!!!

What we learned

We learned about the challenges of deploying ML models, adding interactivity, integrating separate projects into one cohesive one. For the frontend, we all used socket.io for the first time, and for some of us, we used javascript/node.js for the first time. For the chat-bot, it was our first time deploying one and we used Microsoft Azure for the first time too.

What's next for Yoga Remastered

Deploying it for others to play! And address the peer video web streams and training a model that can provide real-time feedback for the pose estimation for the game. We also want to improve the ML model to run faster on web apps

Share this project:

Updates