AI-powered badminton performance analysis using computer vision, LangGraph orchestration, and Gemini AI
🎥 Click above to watch: Revolutionizing Badminton Training with AI: A Deep Dive into LangGraph-Powered Analysis
Transform your badminton videos into comprehensive performance insights with cutting-edge AI technology:
- 🧠 Real-time pose detection - Track 33 body keypoints with MediaPipe precision
- ⚡ LangGraph orchestration - Seamless linear pipeline processing
- 📊 AI-generated reports - Customized insights for coaches, players & parents
- 🌍 Multi-language support - Available in English, Hindi, Tamil, Telugu, Kannada
- 🎥 Video annotations - Professional pose tracking visualization
- 📈 Performance metrics - Advanced analysis including elbow angles and wrist distances
- 📄 PDF report generation - Professional formatting with multilingual support
The system follows a sophisticated pipeline:
- Video Input → MediaPipe pose detection
- Data Processing → Performance metrics calculation
- AI Analysis → Gemini-powered insights generation
- Report Generation → Multi-format output (PDF, TXT, Annotated Video)
Before getting started, ensure you have:
| Requirement | Version | Purpose |
|---|---|---|
| Python | 3.8+ | Core runtime |
| OpenCV | Latest | Video processing |
| MediaPipe | Latest | Pose detection |
| Gemini API Key | - | AI analysis |
| CUDA GPU | Optional | Faster processing |
# 1. Clone the repository
git clone https://github.com/Shree2604/Badminton-AI-LangGraph-Analysis.git
cd Badminton-AI-LangGraph-Analysis
# 2. Create virtual environment
python -m venv venv
# 3. Activate virtual environment
# Linux/Mac:
source venv/bin/activate
# Windows:
.\venv\Scripts\activate
# 4. Install dependencies
pip install -r requirements.txtCreate a .env file in the project root:
GEMINI_API_KEY=your_gemini_api_key_here# Basic usage
python main.py --video_path your_match.mp4
# Advanced usage with all options
python main.py \
--video_path your_match.mp4 \
--roles coach,student,parent \
--language en \
--output_dir ./analysis_resultsDeploy the web interface for easy access:
# Navigate to web app
cd web_app
# Install web dependencies
pip install -r requirements.txt
# Launch Flask application
python app.py🌟 Access at: http://localhost:5000
| 🎥 Video Processing | 📊 Analytics | 📝 Reporting |
|---|---|---|
| MediaPipe pose detection | Performance metrics | Role-based insights |
| Frame extraction | Elbow angle analysis | Multi-language support |
| RGB conversion | Wrist distance tracking | PDF generation |
| Pose visualization | Movement patterns | Professional formatting |
| 🎯 Pose Analysis | 📈 Performance Metrics | 🗣️ Multi-Modal Analysis |
|---|---|---|
| 33-point body keypoint tracking | Joint angle calculations | Video pose detection |
| Real-time pose estimation | Distance measurements | Audio transcription (Google Web Speech API) |
| Movement pattern recognition | Movement velocity analysis | Combined insights generation |
| Biomechanical analysis | Form assessment | Speech-to-text processing |
We welcome contributions! Here's how to get involved:
- Fork the repository
- Create feature branch:
git checkout -b feature/amazing-feature - Commit changes:
git commit -m 'Add amazing feature' - Push to branch:
git push origin feature/amazing-feature - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
Need help or have questions?
Built with ❤️ by ShreeRaj Mummidivarapu
Elevating badminton training through artificial intelligence
