Inspiration

Began as a team of two but became one before we even started. Despite the challenges, I eventually came to making an application that highlights computer vision and its applications which turned into trying to help my lack of going to the gym. GOAL: Help lifters perfect their form, track their progress, prevent injuries--just like having a personal trainer, but smarter.

What it does

Get Swole uses real-time computer vision and AI-powered motion analysis to track workouts like deadlifts, squats, and bench presses. By leveraging landmark detection and joint angle calculations, it provides instant feedback on form, rep counting (unfinished), and overall workout efficiency.

How I built it

Frontend: Built with React and styled using Tailwind CSS Backend: Developed with Flask and Socket.IO, the main bulk being a MediaPipe implementation for real-time pose detection AI Models: Machine learning models trained to recognize and analyze key workout movemennts, predicting reps and form accuracy. Live Streaming: Uses OpenCV and WebSockets (Socket.IO) to send real-time video data from the backend to the frontend.

Challenges we ran into

Mislabeled ASCII key bindings ~ 1 hour Failed to do frontend and backend ~ 5 hours Slept ~ 8 hours Connecting ports ~ 3 hours Tried to do frontend and backend and wasted lots of time making an NLP algorithm just to realize it had nothing to do with my original concept at all ~ 5 hours Prompt Engineering debugging ~ 10 hours

Accomplishments that we're proud of

  • Successfully implemented MediaPipe and tailored it with logistic regression models to predict bad posture thresholds.
  • Built a fully functional live streaming system
  • Created a user-friendly UI that gives users the option to test out different models (do all models work? no)
  • Overcame major technical obstacles as someone who has never touched frontend, directories, backend, really anything except for Jupyter notebook and AI.

What we learned

  • Learned how to implement MediaPipe
  • Developed stronger directory and data preprocessing skills
  • Learned how to use WebSockets, Flask, React, Node.js, CSS
  • Learned how to integrate frontend and backend applications

What's next for Get Swole

  • More workout models: Get models that can fix your posture on all workout variants
  • Form correction feedback: Original idea was to create a savage gym trainer that would chastise the user and emotionally manipulate them to continue working out
  • Progress tracking: Implement a dashboard of some kind
  • Create a leaderboard
Share this project:

Updates