An AI-powered web application that tracks exercises using computer vision and provides real-time feedback.
- Real-time pose estimation using MediaPipe
- Multiple exercise types: Squats, Push-ups, and Hammer Curls
- Customizable sets and repetitions
- Exercise form feedback
- Progress tracking
- Web interface for easy access
-
Clone the repository:
git clone https://github.com/yourusername/fitness-trainer-pose-estimation.git cd fitness-trainer-pose-estimation
-
Install dependencies:
pip install -r requirements.txt
-
Set up the static folder structure:
mkdir -p static/images
-
Add exercise images to the static/images folder:
- squat.png
- push_up.png
- hammer_curl.png
-
Start the Flask server:
python app.py
-
Open a web browser and navigate to:
http://127.0.0.1:5000
-
Select an exercise type, set your desired number of repetitions and sets, then click "Start Workout"
-
Position yourself in front of your camera so that your full body is visible
-
Follow the on-screen guidance to perform the exercise correctly
app.py
- Main Flask applicationtemplates/
- HTML templatesstatic/
- CSS, JavaScript, and imagespose_estimation/
- Pose estimation modulesexercises/
- Exercise tracking classesfeedback/
- User feedback modulesutils/
- Helper functions and utilities
- Flask - Web framework
- OpenCV - Computer vision
- MediaPipe - Pose estimation
- HTML/CSS/JavaScript - Frontend
Contributions are welcome! Please feel free to submit a Pull Request.
This project is licensed under the MIT License - see the LICENSE file for details.