Video Analytics for Football games
summary
Pipeline ingests HLS via FFmpeg, publishes frames to Pub/Sub, and uses Apache Beam Dataflow with Python SDK to window at 10 fps (3s windows, trigger after 30 frames) for per-frame detection and sequence models. Models run on TF‑Serving on Kubernetes with GPUs; outputs go to Bigtable for a web player. Ball model needs about 700 extra ball labels and start-of-game labeling bootstraps to ~2,000 events. System targets a 10–20 second delay and wrestles with GPU autoscaling and watermark workarounds.
AI-written summary · about
chapters (28)
- 0:00Intro
- 2:29PLAYER AND BALL CAN BE DETECTED PER FRAME
- 3:42EVENT DETECTION REQUIRES SEQUENCE OF FRAMES
- 4:51PROJECT CONTEXT
- 5:33THE PROBLEM LANDSCAPE
- 7:39TWO SOLUTION PARTS
- 9:06THE DATA FACTS
- 9:50LEVERAGE THE MODEL TO SPEED UP THE LABELING
- 10:55THE MODELS
- 11:45PLAYER DETECTION: FIELD TRANSFORM
- 13:36A WALK IN FEATURE SPACE
- 14:16SUBTRACT BACKGROUND TO REMOVE THE NOISE
- 17:13COORDINATES AS UNLOCKED DOWNSTREAM FEATURE
- 19:14START OF GAME MODEL BEATS THE OTHER GOAL MODELS (FOR NOW)
- 20:34SOLUTION ARCHITECTURE
- 22:13ABOUT APACHE BEAM
- 23:09THE SOLUTION LANDSCAPE
- 24:05FROM HLS TO JPEG
- 28:37FULLY LEVERAGE MANAGED SERVICES
- 30:51LEVERAGE THE BEAM MODEL FOR PROCESSING
- 32:49WHERE THE DATA CRUNCHING HAPPENS
- 36:55PIPELINE DEEP DIVE
- 39:30LEVERAGE THE INTERNAL LOAD BALANCER OF GKE TO GET PREDICTIONS
- 40:24DEWARPING THE BOUNDING BOXES TO GET COORDINATES
- 40:59TEAM DETECTION WITHOUT BACKGROUND SUBTRACTION
- 41:53LEVERAGE THE BEAM MODEL TO WINDOW THE DATA
- 43:16RESPECT THE BEAM MODEL TO GET DESIRED PARALLELIZATION
- 48:20TEST IN STREAM MODE
related talks
20mAI-Driven Real-Time Ball Tracking for Live Sports Streaming
35mFootball video analysis using Deep Learning
42mDeep Learning for Automatic Basketball Video Production
36mVideo analytics at scale: Deep Learning, Computer Vision, ML & Spark
36m"Lights, camera, AI!" - Automated sports videography
27mAnalysis of sports scenes using computer vision models
53mVideo Analytics for mere mortals with NVIDIA DeepStream SDK
32mCutting Edge Football Analytics in Python
