How to Make Automatic Highlight Reels from Kids' Soccer Games

How to Make Automatic Highlight Reels from Kids' Soccer Games 图片 1
How to Make Automatic Highlight Reels from Kids' Soccer Games 图片 2
How to Make Automatic Highlight Reels from Kids' Soccer Games 图片 3
How to Make Automatic Highlight Reels from Kids' Soccer Games 图片 4

Summary

This tutorial builds a highlight-cutting pipeline for kids' soccer footage: two RF-DETR models trained in the Roboflow UI (a player/ball/goal detector and a jersey digit detector) run inside a Roboflow Workflow with BoT-SORT tracking, and a local Python pipeline turns those detections into jersey numbers, a single tracked kid, detected goals, and a finished highlight reel. A small FastAPI web app wraps the whole thing so a parent can upload a game, click their kid once, and get clips back.

If you've ever stood on the sideline of a soccer game, you've probably seen a few parents film matches and segments of the game on their phone. Somewhere in there are the eleven seconds grandma actually wants to see.

I wanted to fix that with computer vision. The idea is that clips can be uploaded into a web app and the computer vision system would be able to track the ball and every player, read jersey numbers, find the goals, and hand back a highlight reel with every play your kid was part of.

Detection and tracking run in a Roboflow Workflow on two trained models. Everything downstream (jersey-number voting, identity stitching, goal scoring, and clip cutting) is a local Python pipeline.

I'll show you how you can build it too. Follow along with this github repository.

Using Computer Vision to Make Automatic Highlight Reels

The eyes are a Roboflow Workflow. It runs object detection on every sampled frame, tracks the people with BoT-SORT, and emits per-frame observations: players with stable track ids, the ball, and goal boxes.

The memory is the local pipeline. It runs through the sampled frames once, collects those observations into a list, and every later stage just works off that list. Each stage also caches its output, so re-tuning the goal scoring never re-runs detection. Detection is the expensive part, and I re-tuned everything else constantly, so this saved me a lot of time.

The judgment happens in three stages: reading jersey numbers, deciding which trac…

添加评论
点赞收藏
点踩分享查看原文
评论
?
参与讨论