Skip to content
Bircan Görür
Open to internships — Spring 2027
← All work

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
#7 · 0.91#9 · 0.88GK · 0.8412:04 PASS #7 → #912:06 SHOT #9rule-based event extraction
Illustration · drawn to show the output the system is aiming for; not real system output.

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
  1. 01

    Detection

    • YOLO-based detection
    • Players, ball, referee
    • Pitch features
    In progress
  2. 02

    Tracking

    • Position across frames
    • Keeping identities stable
    • Ball movement
    In progress
  3. 03

    Pitch analysis

    • Pitch lines
    • Pitch calibration
    • Interpreting movement on the pitch
    In progress
  4. 04

    Event detection

    • Pass and shot detection
    • Rules based on movement relationships
    • Event timeline
    In progress
  5. 05

    Commentary

    • Generating text from events
    • Language models
    • Qwen-based options
    Being researched

Technical depth

Problems I'm working on

Tracking 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

PythonYOLOv8OpenCVVideo processingObject detectionObject trackingPitch calibrationRule-based events

Researched / evaluated

BoT-SORTQwenOther LLMsAlternative detectors

What I went deep on

Computer vision, algorithmic thinking, object tracking, and combining different AI components into one system.

Gallery

Will be added as the project progresses
Images of the system's output will be added here as the project progresses. The pitch drawing on this page is an illustration.