This model leverages the MoveNet model, a lightweight machine learning model for pose estimation, and TensorFlow Lite, a framework for running machine learning models on edge devices. This model showcases how to perform real-time pose estimation and classification, making it suitable for applications such as fitness tracking, gesture recognition, and more. This model can be fed with data from other poses and be used to classify other poses as needed.
Inference Results Using Movenet Thunder

Sit Up Classifier Train Result

Push Up Classifier Train Result

The final accuracy after exporting the models into TFLite are as follows:
- Accuracy of Push Up TFLite model: 1.0
- Accuracy of Sit Up TFLite model: 0.9807692307692307
Here are the dependencies and libraries needed to run the notebook
- Python
- TensorFlow and TensorFlow Hub
- OpenCV
- Numpy
- Pandas
- Matplotlib
- Scikit-learn
Push Up Model: Directory containing the notebook and outputs for Push Up Classification.Sit Up Model: Directory containing the notebook and outputs for Sit Up Classification.Supporting Programs: Directory containing the supporting programs to compress and augment the dataset.
Push Up Model and Sit Up Model directory consists of:
- Notebook for the machine learning model
- Base MoveNet Thunder model for pose estimation
- Output classification model in tflite format
- Labels for the classes
- CSV of preprocessed data
- Saved best weights
The dataset used for the models can be found here
