AI-based fitness assistant for tracking and analyzing exercise form, specifically focusing on squats and bicep curls. Utilizes OpenCV and MediaPipe for real-time pose estimation and TensorFlow for squat form analysis.
- Real-time pose detection with MediaPipe.
- Angle calculation for joints to determine exercise form.
- Bicep curl and squat counting logic.
- Squat form analysis using a trained CNN model.
- Video processing for both live camera feed and pre-recorded videos.
gym_buddy.py: Main script for real-time exercise tracking and form analysis.gym_buddy_recorded.py: Processes pre-recorded videos for exercise tracking and form analysis.labeling_squats.py: Script for extracting and labeling frames from squat videos, preparing datasets for model training.squat_coach.py: Real-time squat coaching tool, providing feedback on squat form using a trained CNN model.squat_model.py: CNN model training script for squat form analysis.
- Real-Time Pose Estimation: Using MediaPipe to detect body landmarks in real-time.
- Exercise Counting Logic: Algorithm to count bicep curls and squats based on joint angles.
- Form Analysis: Squat form analysis using a CNN model, trained on labeled video data.
- Feedback System: Providing real-time feedback on exercise form to the user.
- Video Processing: Ability to process both live camera feeds and pre-recorded videos.
- Python
- OpenCV for video processing.
- MediaPipe for pose estimation.
- TensorFlow and Keras for CNN model development.
- NumPy for mathematical operations.
- Run
gym_buddy.pyfor real-time exercise tracking with a webcam. - Use
gym_buddy_recorded.pyfor analyzing pre-recorded exercise videos. labeling_squats.pyis used to prepare training data for the CNN model.squat_coach.pyprovides real-time feedback on squat form.- Train the CNN model for squat analysis with
squat_model.py.
This project demonstrates advanced skills in computer vision, machine learning, and real-time data processing, applied to the fitness domain.