Skip to content

Latest commit

Β 

History

History
145 lines (105 loc) Β· 2.73 KB

File metadata and controls

145 lines (105 loc) Β· 2.73 KB

πŸ‹οΈ RepCoach – AI Exercise Tracker

RepCoach is an AI-powered exercise tracking web application that uses computer vision and machine learning to analyze human posture in real time, count repetitions, and provide feedback for exercises using a webcam.

This project acts as a virtual AI fitness coach, helping users perform exercises with correct form at home.


πŸš€ Features

  • πŸ“· Real-time webcam-based pose detection
  • 🧠 AI-powered exercise recognition
  • πŸ”’ Automatic repetition counting
  • πŸ“Š Live exercise statistics & feedback
  • 🌐 Web-based interface
  • πŸ”„ Real-time updates using Socket.IO

πŸ› οΈ Tech Stack

Frontend

  • HTML
  • CSS
  • JavaScript

Backend

  • Python
  • Flask
  • Flask-SocketIO

AI / ML

  • OpenCV
  • MediaPipe (Pose Estimation)
  • NumPy
  • Scikit-learn (Random Forest)

πŸ“‚ Project Structure

RepCoach/
β”œβ”€β”€ app.py                          # Main Flask application
β”œβ”€β”€ pose_model.py                   # Pose detection & exercise logic
β”œβ”€β”€ pose2.py / pose3.py             # Model training & experiments
β”œβ”€β”€ exercise_feedback_system_fixed.py
β”‚
β”œβ”€β”€ templates/
β”‚   └── index.html                  # Web UI
β”‚
β”œβ”€β”€ static/
β”‚   β”œβ”€β”€ script.js                   # Frontend logic
β”‚   └── style.css                   # Styling
β”‚
β”œβ”€β”€ exercise_data.csv               # Dataset (optional)
β”œβ”€β”€ .gitignore                      # Ignored files
β”œβ”€β”€ README.md                       # Project documentation

⚠️ Note: Generated files like .pkl, .pyc, and __pycache__ are intentionally ignored.


▢️ How to Run the Project

1️⃣ Clone the repository

git clone https://github.com/nocapgaurav/RepCoach.git
cd RepCoach

2️⃣ Create a virtual environment (recommended)

python3 -m venv venv
source venv/bin/activate   # macOS / Linux

3️⃣ Install dependencies

pip install flask flask-socketio opencv-python mediapipe numpy scikit-learn

4️⃣ Run the application

python app.py

5️⃣ Open in browser

http://127.0.0.1:5000

Allow camera access when prompted.


🧠 Supported Exercises

  • πŸ’ͺ Bicep Curls
  • 🦡 Squats
  • 🀸 Lateral Raises

The system tracks:

  • Repetitions
  • Exercise state
  • Live feedback
  • Accuracy metrics

🎯 Use Cases

  • Personal fitness tracking
  • Home workout assistance
  • AI & Computer Vision learning
  • Final-year / portfolio project

πŸ‘¨β€πŸ’» Author

Gaurav Pandit
AI & Software Engineering Enthusiast

GitHub: https://github.com/nocapgaurav


⭐ Acknowledgements

  • MediaPipe by Google
  • OpenCV community
  • Flask & Python open-source ecosystem