Welcome to the world of fitness tech! With the growing recognition of the importance of healthy living and routine workouts, we present to you the AI Workout Assistant. This web application allows users to workout anytime, anywhere, leveraging a pose detection feature that not only analyzes every pose but also automatically counts the number of repetitions made. In this blog, we will walk you through running the app locally, generating your own workout, and troubleshooting common issues.
How It Works
Imagine your body as an advanced motion-sensing device. The AI Workout Assistant utilizes the MoveNet model to detect keypoints from images or videos of your movements. These keypoints serve as the backbone for determining whether you’re successfully completing your workout routines and distinguishing between various types of workouts.
Getting Started: Run the App Locally
Follow these steps to set up the AI Workout Assistant on your local machine:
- Prerequisites: Ensure you have Git, Node, and NPM installed and running.
- Open your terminal (PowerShell or command prompt) and clone the repository:
git clone https://github.com/reeval/dai-workout-assistant.git
cd ai-workout-assistant
npm install
npm run start-dev
Generate Your Own Workout
Creating your workout routine is as simple as pie! Follow these steps:
- Open the app locally or visit aiworkout.live.
- Collect your dataset (keypoints):
- Using webcam: Activate Developer Mode, click on “Record Keypoints”, and click again to finish recording. The app records in CSV format.
- Via Upload Video: Activate Developer Mode and click “Upload Video”. The keypoints’ values depend on the video resolution.
- Generate and train your model.
- Collect positive classes using your workout videos.
- For negative classes, use the provided video link.
- After gathering positive and negative data, use this Google Colab for model creation.
- Insert your model into the app.
- Create a new folder:
.public/tfjs-model/your-workoutand move the tfjs model and binary file into it.
- Create a new folder:
- Create new configurations in the respective JSON files according to your workout needs.
- Run the app for testing.
- Open http://localhost:8080 and enjoy your personalized workout!
npm run start-dev
Troubleshooting
In case you encounter any issues while setting up or using the AI Workout Assistant, here are some troubleshooting tips:
- Ensure that you have all prerequisites installed. Sometimes, an outdated version can cause issues.
- Check if there are any errors displayed in the terminal. They often provide clues to pinpoint the problem.
- Review your dataset and make sure it matches the format expected by the application.
- If you experience slow performance with high-resolution videos, try using lower resolutions to see if it improves the frames per second (fps).
- If the application does not launch properly, ensure there are no other applications running on the same port.
For more insights, updates, or to collaborate on AI development projects, stay connected with fxis.ai.
Limitations and Future Enhancements
Like any innovative system, the AI Workout Assistant has its limitations:
- Currently unable to cover 3D angles. Future plans include researching lightweight models capable of generating 3D keypoints.
- Higher resolutions can slow the fps; using standard resolutions can mitigate this problem.
At fxis.ai, we believe that such advancements are crucial for the future of AI, as they enable more comprehensive and effective solutions. Our team is continually exploring new methodologies to push the envelope in artificial intelligence, ensuring that our clients benefit from the latest technological innovations.
References
- Pose Detection with TFJS
- MoveNet Documentation
- MoveNet in TFHub
- Pose Classification
- For videos demonstrating workouts refer to the following:

