The Weightlifting Technique Analyst (WTA) is a multi-agent application designed to analyze Olympic weightlifting techniques from user-uploaded videos. It provides detailed feedback, identifies areas for improvement.
- Video Analysis:
- Upload and analyze videos of snatch and clean & jerk lifts.
- Uses computer vision:
- Pose estimation to extract key joint movements.
- Object tracking to track barbell movement.
- Generates textual descriptions of movement patterns.
- Multi-Agent System:
- Technique Analyzer Agent:
- Retrieves relevant information from a knowledge base (guidelines, expert advice, biomechanics).
- Generates detailed technique analysis using Retrieval-Augmented Generation (RAG).
- Feedback Generator Agent:
- Translates analysis into actionable feedback and personalized drills.
- Provides feedback in various tones.
- RAGAS Evaluator Agent (Future work):
- Evaluates the quality of feedback using RAGAS metrics (faithfulness, relevancy).
- Provides data to fine tune the embedding model.
- Embedding Model Fine-tuning (Future work):
- Continuously improves retrieval accuracy based on RAGAS feedback.
- Technique Analyzer Agent:
- User Interface:
- User-friendly interface for video uploads and feedback viewing.
- Visualization of bar paths and joint angles.
- Computer Vision: MediaPipe
- Large Language Models (LLMs): GPT-4 through OpenAI
- Multi-agent framework: Agno
- Python, and a web framework such as streamlit.
-
Clone the Repository:
git clone [repository URL] cd weightlifting-technique-analyst -
Install Dependencies:
uv sync
-
Set Up LLM API Keys:
- Obtain API keys for your chosen LLM provider (OpenAI, Google Cloud).
- Configure the API keys in the application's configuration file.
-
Run the Application:
uv run streamlit run app.py
-
Access the Application:
- Open your web browser and navigate to the application's URL.
- Upload a video of your weightlifting attempt.
- The application will process the video and generate an analysis report.
- View the analysis report, which includes feedback and recommendations.
- Use the feedback to improve your technique.
- Download PDF file of feedback and CSV file of the personalized program.
- Include bar path detection
- Train on any coaches available youtube videos and provide feedback based on it.
- Convert the project into a coaching platform.