Inspiration

During the covid-19 pandemic, people have been sitting more than ever before in front of their computers. I thought about what I could work on with my physical health, and the first thing that came to my mind was my posture. Not only is posture associated with short-term discomfort and unproductivity with typing, but it has long-term impacts on bone, muscle, and cartilage health.

What it does

In short, Posture Pro measures your posture in real-time and gives you notifications when you sit with poor posture. The tool also gives real-time feedback in the browser about the quality of your posture and displays measurements in the 3 axes that it measures for those who want more detail. It also gives desktop notifications to the user's preference.

Challenges I ran into

I wanted the application to track body points to detect whether the user was slouching. In the beginning, I spend lots of time with a python trying to detect the points with TensorFlow on a backend server. The idea was that I would send the images to the server, process them, and give a return. I scraped this idea mid-way through because it was too complicated, and would not perform as well on the backend. It also compromised user privacy, as the data would leave the device. I settled for a frontend option of using tensorflow.js to track the points in the browser. Calibrating and math for optimal performance was also a challenge.

What I learned

I learned a lot about calculating an object's position and orientation in 3D space with an input of data. I also learned a lot about react.js and handling video streams.

What's next for Posture Pro

I would like to develop a more well-rounded suite of features such as the ability to monitor posture progress over time, hydration breaks, and eye breaks. Those are things that complement the digital wellbeing tools I think would go well with this project.

Built With

Share this project:

Updates