PitchAnalyzer_AI is a sports analytics framework designed to turn raw football match video into actionable insights. At its core, the system:
- Detects players and the ball in each frame.
- Assigns each player to their team.
- Tracks players and ball trajectories over time.
- Maps camera views to a bird’s‑eye perspective.
- Aggregates events into game statistics.
If you are insterested how we created this project, what challenges we faced, and how we solved them, check out our Technical Documentation.
Here’s a quick demo of PitchAnalyzer_AI in action:
Explore the project in action with interactive Jupyter Notebooks!
The notebooks are designed to run online on Kaggle or Google Colab as well locally on your machine.
-
Raw Data & Events
- 30 s match clips + manually logged events as inputs.
-
Auto‑Labeling (Label Studio)
- Semi‑automated generation of player/ball bounding boxes and pitch keypoints, with model‑assisted corrections.
-
Model Training
- YOLOv11 for player/ball detection
- Keypoint detector + homography for field mapping
- Play‑recognition module combining detections and geometry
-
Post‑Processing & Analytics
- Derive ball possession, player heatmaps, bird’s‑eye view, distances covered, and other stats from model outputs.
When we have more time, we plan to:
- Develop a model for detecting specific plays and game strategies.
- Improve the accuracy and robustness of our current models for player and ball detection.
- Expand the range of statistics generated, such as advanced metrics for player performance and team dynamics.
- Implement a more sophisticated method for recognizing teams, potentially replacing KNN with a deep learning-based approach for better accuracy and scalability.

