Match Narrator
A computer-vision system that aims to pull events out of football match footage and turn them into commentary.
In development · Graduation project
- Role
- Lead developer
- Context
- Graduation project
- Field
- Computer vision · Sports analytics
- Language
- Python
( Idea )
Drawing boxes around players and the ball is just the start. The real question is how to turn the movement of those boxes into meaningful events like a "pass" or a "shot".
Match Narrator is my research-driven graduation project. It aims to combine detection, tracking and pitch analysis into a timeline of events, and then generate readable match commentary from that timeline.
( System components )
From video to commentary- 01
Detection
- YOLO-based detection
- Players, ball, referee
- Pitch features
- 02
Tracking
- Position across frames
- Keeping identities stable
- Ball movement
- 03
Pitch analysis
- Pitch lines
- Pitch calibration
- Interpreting movement on the pitch
- 04
Event detection
- Pass and shot detection
- Rules based on movement relationships
- Event timeline
- 05
Commentary
- Generating text from events
- Language models
- Qwen-based options
( Technical depth )
Problems I'm working onTracking a small, fast ball
In broadcast footage the ball can be just a few pixels and move fast; in crowded scenes it can disappear behind players.
ApproachYOLO-based detection and tracking of the ball across frames; I'm researching alternative detection models and accuracy improvements.
Keeping player identities apart
When players come close together, trackers can swap identities, which breaks the question of who passed to whom.
ApproachMulti-object tracking focused on keeping identities stable; I'm evaluating BoT-SORT and other tracking approaches.
From camera view to what happens on the pitch
Camera perspective distorts distances and directions, so inferring a "pass" from raw pixels isn't reliable.
ApproachCalibration using the pitch lines, interpreting movement on the pitch, and rule-based event extraction built on top of that.
( Tech stack )
Worked with directly
Researched / evaluated
( What I went deep on )
Computer vision, algorithmic thinking, object tracking, and combining different AI components into one system.