Computer Vision
Recorded Match Video to Reviewable Tracks and Event Tags
A batch sports-video pipeline combines player tracking, ball trajectories and event proposals with outputs for human review.

The problem
The client needed recorded single-camera match footage converted into inspectable tracks and proposed events. A small moving ball, player overlap and missed detections meant a detector alone was not enough. Reviewers needed to see uncertainty and correct missed or incorrect tags.
What I built
A configurable Python pipeline for recorded video and selected time ranges.
Player pose detection and persistent near-side player tracking.
Pluggable ball detection with trajectory cleanup and optional short-gap filling.
Shot proposals combining skeleton motion and ball-direction evidence.
Rally grouping, JSON event output and CSV ball-position output.
Debug overlays, optional clips and manual annotation tools for review.
The package includes configuration, a Docker/GPU run path and tests. Stage caching supports retuning later grouping steps without rerunning every earlier stage.
The outcome
The handoff links video analysis to reviewable events and exports. A person still checks the proposed tags before treating them as final. The scope is batch analysis of recorded footage, not real-time broadcasting or autonomous officiating. No public tracking-accuracy, latency or time-saving figure is claimed.
Working on something similar?
Discuss a similar project →