Inspiration

As a full-time tennis player, I find it frustrating that there isn't a local gym nearby. Many of my athletic friends face the same problem. Therefore, I decided to build an AI trainer that tracks your exercise routine like a real workout buddy. The goal of this program is to provide athletes and non-athletes with an easily accessible platform for effective workouts!

What it does

This GUI program allows users to track their personal workout progress with a real-time object-detection AI trainer. Users can see specific points marked on their joints and receive real-time feedback from the AI trainer to assess their technique. Additionally, the program tracks the time spent and the number of reps completed.

How we built it

We built the model using open-source Python libraries such as MediaPipe and OpenCV (cv2). Then, we designed the user interface with PyQt5.

Challenges we ran into

We faced many challenges along the way, including spending significant time fixing bugs, thinking of cool ideas, and designing the interface. The biggest problem was building an AI model that accurately distinguishes between a properly performed pushup, situp, or squat and a poorly executed one.

Accomplishments that we're proud of

We're proud of the accuracy of our AI model and the design of the GUI interface!

What we learned

We learned how to design large applications with PyQt5 and train object detection models to improve their accuracy. Our most important lesson was the value of planning ahead. We started the project without a clear goal, which delayed our progress and caused frustration. Once we began organizing our thoughts and planning our steps on paper, the process became much more efficient!

What's next for RAFA

Our next step is to expand the functionality of the program by adding models for other workouts, such as curls and bench presses. Our ultimate goal is to design an AI trainer capable of assisting with any workout routine! After refining our project, we will collaborate with local gyms and organizations to make workouts more effective and promote the benefits of exercising.

Built With

Share this project:

Updates