This repository contains our Foundations of Deep Learning project on reconstructing football game state from broadcast frames using a two-stage pipeline:
- YOLOv8 object detection to localize key entities (players, goalkeepers, referees, ball, other).
- ResNet18 crop-based classification to assign detected players/goalkeepers to Left vs Right teams.
Project page with embedded clips (validation + test):
https://gerry-obrien.github.io/GameStateReconstruction_FootballBroadcasts/
YouTube backups (unlisted):
- Validation clip: https://youtu.be/lexA9WE-dog
- Test clip: https://youtu.be/N37B-oxOJd8
Overlay format:
- YOLO:
<class> <yolo_conf> - Players/goalkeepers additionally:
TEAM {Left/Right} {team_conf}whereteam_confis the ResNet softmax probability for the predicted team.
- YOLOv8: strong detection for large objects (players/referees/goalkeepers); ball detection is the main bottleneck.
- ResNet18 team classifier: moderate validation accuracy; shows an asymmetric error pattern (more
right → leftmistakes), which affects team overlays on test footage.
Full quantitative results and plots are reported in the accompanying write-up.
We use SoccerNetGS (GameState) frames and labels. Please follow the SoccerNet terms of use and dataset download instructions. This repository does not redistribute the dataset.
- G. O'Brien
- A. Le Saux
- H. Boisson
- G. Emmanuel