Inspiration

As a team of members who frequently workout and go to the gym, we decided to create a project that could be personally applicable and solve a challenge we faced along our fitness journey. When working out at home, it is easy to create bad habits unknowingly, such as cheat repetitions of an exercise to achieve a goal, decreasing efficiency. We wanted to create this tool to help people be more cognizant of their pushup form, one of the most vital exercises and provide them with feedback for improvement. This way, they could also avoid hiring personal trainers, who are quite expensive.

What it does

The core purpose is to track a pushup and deliver feedback on the form. It tracks the positioning of the legs, back and arms to ensure that a proper pushup is completed. Furthermore, there are additional features such as a workout timer, statistics and information on different progressions.

How we built it

We built the tool using Python primarily, with MediaPipe for pose detection, OpenCV for video processing and Tkinter for the graphical interface. Throughout the hackathon, we learned to use the different libraries, Python and webcam integration.

Challenges we ran into

We had a lot of trouble setting up the webcam to feed information into the backend. It was also difficult to just write code in Python, as the syntax was still unfamiliar.

Accomplishments that we're proud of

In general, we are proud of creating a functional app in the time period, as it was pretty difficult to finish all the work with only 2 people. Something else is our use of posture detection to map out a pushup—we found it pretty cool and enjoyable to utilize.

What we learned

For one of our teammates, this was their first time really using Python, so a lot of the language was learned. We also learned how to use OpenCV and a webcam for video processing and some other pretrained models to help map the body out.

What's next for Pushup Progressor

We have a lot of features we’d still like to implement, to take this from being solely focused on pushups to a fully functional fitness app. We could have a catalogue of different exercises that users could check their form with (bench press, squat, etc.). Furthermore, we would like to allow users to track their statistics, as this app is focused on progression.

Built With

Share this project:

Updates