Fix Sitting Posture
The Problem
In recent years, due to the advent of personal computing and consequently its rapid spread into consumer lives, more and more people spend time on computers. The increasing hours spent in front of computers leads to many developing bad sitting postures. This bad sitting posture leads to many serious negative consequences on one’s health. Therefore it is more important, now more than ever, to create a solution that prevents bad computer posture.
Humans are creatures of habit. On average, it takes many years to develop lasting habits. Therefore, it is virtually impossible to simply stop one that has been recurring for many years. Due to their habit of bad posture, it is nearly impossible for them to stop. In the case of back posture, the issue is not simply a mental one. People who have bad posture for long periods of time have physical changes in their muscles and joints which prevent their bodies from simply straightening out. Therefore, as the user can not stop bad posture alone, it’s important to create alternative solutions.
My Solution
Instead of having any sensors physically touch the user, this research will use the computer’s webcam to monitor the user’s posture. I developed a machine learning model that identifies the user's face and the face's area. If the user leans towards their computer, their face will appear larger in the web camera. Therefore by measuring the change in the face's size, we can determine posture. In addition, by tracking the face's displacement, we can determine if the user is leaning left or right. Again helping determine posture.
If the algorithm deems that the user has bad posture, it sends out a computer notification informing the user about their bad posture, telling them to correct it.
Website
How I built it
Python was my primary programming language. It uses a Cascade Classifier model to identify the user's face and calculate the face's area. I used cv2 to access the user's web camera, then NumPy to help transform that data. To display the computer notification, I used win10toast.
Challenges I ran into
Getting the Classifier Model to work took a while, then once it worked, I had to somehow transform that data into determining their posture. I spent a while brainstorming how I could use that data and ended up using the method explained before.
Accomplishments that I'm proud of
I'm proud I was able to tie in various different technologies, most of which I was new to. Then I'm happy I'm able to find their posture from the webcam alone, without relying on other hardware.
What's next for Fix Sitting Posture
TONS! I plan on creating a simple .exe which contains all the libraries and code, enabling anyone without much programming experience to download it. I also want to make the program communicate to a chair, which would vibrate if the user has bad posture, so I look forward to creating more!





Log in or sign up for Devpost to join the conversation.