This project aims to build a machine learning model that recognizes different barbell exercises (like squats, deadlifts, bench presses, etc.), accurately counts repetitions, and provides real-time form feedback using sensor data from wearable devices.
In the growing intersection of fitness and technology, this research utilizes accelerometer and gyroscope data from wrist-mounted wearables to create an intelligent system that functions as a digital personal trainer.
- Exercise Recognition: Identify and classify barbell movements
- Repetition Counting: Track exercise reps in real time
- Form Evaluation: Provide alerts on incorrect posture/form
- Build supervised ML models for classifying strength exercises using sensor data
- Count exercise repetitions using signal processing techniques
- Evaluate multiple models and feature sets to determine optimal performance
- Create a dataset capturing a variety of barbell workouts
- Address limitations of existing fitness trackers in strength training
- Source: GitHub Repository
- Device: MbientLab wristband (Accelerometer @ 12.5Hz, Gyroscope @ 25Hz)
- Includes: Bench Press, Deadlift, Squat, Overhead Press, Row
- Format: CSV with timestamped sensor readings (x, y, z axes)
- Language: Python 3
- IDE: Visual Studio Code
- Key Libraries:
pandas,numpy— data manipulationmatplotlib,seaborn— visualizationscikit-learn— ML models & evaluationscipy— signal processingpickle— dataset storage
- Outlier detection: IQR, Chauvenet's Criterion, LOF
- Data cleaning and filtering using Butterworth low-pass filter
- Resampling to unify accelerometer and gyroscope frequencies
- Scalar magnitude calculation
- PCA for dimensionality reduction
- Temporal & frequency-domain features
- Clustering (K-Means)
- Algorithms used: Decision Tree, Random Forest, KNN, Neural Networks, Naive Bayes
- Forward feature selection
- Grid search for hyperparameter tuning
- Peaks/minima identified in filtered acceleration data
- Reps counted using domain-specific thresholds
- Achieved high accuracy in classifying exercises and counting repetitions
- Feature set 4 (basic + engineered features) yielded the best model performance
- Random Forest classifier produced strong generalization on test data
- Add more exercises and sensor modalities (e.g., EMG)
- Extend to dumbbell and machine-based workouts
- Include posture correction with computer vision or IMU fusion
- Deploy mobile app for real-time user feedback
- Data privacy and consent from participants
- Avoid bias in models based on participant demographics
- Ensure safety in real-time fitness applications
Revanth Reddy Chitti
MSc Artificial Intelligence
London Metropolitan University
This project is part of an academic submission and is intended for educational and research purposes only.