Inspiration
My partner and I are avid gym-goers, deeply passionate about fitness. Often, we witness numerous people performing exercises incorrectly, a situation we once found ourselves in. It wasn't until someone corrected us that we improved our form. However, not everyone will approach you to point out mistakes. Some gym-goers might recognize poor form but avoid confrontation. Our platform offers a simple solution for checking exercise form correctness. Users can choose an exercise, record themselves performing it, and upload an image or video. Our AI will analyze their form, calculating specific angles to determine correctness. This system is highly accurate, especially for isometric exercises like the plank, which we have rigorously tested.
What it does
Our website allows users to upload an image or video and select an exercise (currently only supporting the plank, with more to be added). The AI model then analyzes the form, determining whether it is correct or incorrect. The output is straightforward, indicating either "Your form is correct" or "Your form is incorrect." In cases where the image or video doesn't meet the guidelines, it may display an error message.
How we built it
We developed our app using:
- Python's OpenCV and MediaPipe: To analyze images and calculate relevant angles.
- Flask: To host the website.
- HTML and CSS: For the front-end design and user interface.
We meticulously tested the model with various images to ensure accuracy, especially for the plank exercise, by simplifying and fine-tuning the angle calculations.
Challenges we ran into
- First Project Complexity: This being our first project, balancing front-end and back-end development and learning new libraries was challenging.
- Technical Issues: OpenCV didn't work on my computer, so my partner had to handle most of the testing.
- Model Fine-tuning: We initially included multiple angles for the plank, but this approach was too stringent. Simplifying the model by focusing on essential angles improved accuracy.
- Website Hosting: Learning Flask from scratch to host our website was confusing and time-consuming.
Accomplishments that we're proud of
- First Hackathon Completion: We're thrilled to have completed our first hackathon submission.
- Leveraging Advanced Technology: We successfully used AI libraries like OpenCV and MediaPipe, creating a model that's simple yet accurate.
- Full-stack Development: We managed both front-end and back-end development, resulting in a functional and visually appealing website.
- Extensive Learning: We gained valuable insights into OpenCV, MediaPipe, and how to apply them for exercise form evaluation.
What we learned
- Website Hosting: We learned how to host a website using a Flask server, even if it's just on a local server.
- Web Development: We gained skills in HTML and CSS, enabling us to create and style web pages effectively.
- AI and Image Processing: We delved into OpenCV and MediaPipe, understanding how to use angles for form evaluation.
- Exercise Form Analysis: We learned about the biomechanics of a proper plank form and how to translate that into angle calculations for our AI model.
What's next for FormCheckAI
- Expand Exercise Library: Add more exercises such as squats, deadlifts, bench press, bicep curls, and various stretches.
- Live Video Analysis: Offer live video analysis with real-time feedback and visual indicators showing how the AI evaluates form.
- Detailed Feedback: Provide specific, actionable feedback on how users can improve their form.
- User Engagement Features: Implement progress tracking, personalized workout suggestions, and integration with fitness tracking devices.
- Community and Support: Create a community platform where users can share their progress and get tips from trainers.
- Enhanced Accuracy: Continuously improve the AI model by incorporating more data and refining the angle calculations for various exercises.
Log in or sign up for Devpost to join the conversation.