Sports brand detectors face rare creatives, venue-specific lighting, and camera packs that change every season. Sponsorlytix used synthetic data and domain adaptation so detectors generalised across football, tennis, combat, and basketball scenes.
Eagle Eye generated labelled arenas, wrapped LED creatives, and weather variants, then adapted models toward real broadcast distributions. The goal is inventory-grade boxes on live feeds — not impressive synthetic demos that fail under compression artefacts.
Problem framing for rights holders and brands
Collecting and labelling every new LED creative by hand does not scale. Novel brands appear mid-season. Venues differ in LED pitch, glare, and camera height. Waiting on exhaustive live labels delays measurement for the exact tournaments partners care about.
Rights holders need detectors that recognise next week's creative on last week's geometry. Brands need confidence that a new kit mark will be measured from match one — not after a fortnight of missed exposures.
- Procedural venues place LED, board, mat, and court logos into sport geometries.
- Motion and blur simulations must match broadcast camera profiles.
- Domain adaptation closes the gap to live compression and lighting.
- Active learning samples hard live frames for sparse HITL labels.
Methodology — synthesise, train, adapt, active HITL
Procedural venue builders place LED ribbons, boards, mats, and court logos into sport-specific geometries. Creative textures map onto those surfaces with motion and blur simulations matched to broadcast camera profiles. Detectors train on those labelled frames for Brand Detection and Placement Detection heads.
Domain-adversarial and self-training stages pull the feature distribution toward real clips. Active learning then samples hard live frames for sparse human labels that close remaining gaps. Failure modes from generic loose boxes are treated as negatives to avoid — the contrast panel below shows what inventory-grade detection refuses to ship.
Placement Detection heads train jointly with brand identity so synthetic scenes teach both where inventory sits and what it is. That joint objective is what keeps loose player-silhouette boxes from looking like a win during training.
Detection panels — target output and failure contrast



Real-world synthetic programme examples
- New football LED creatives synthesised weeks before a tournament window.
- Combat cage wraps generated with fighter occlusion layers.
- Tennis court logos under clay dust and hard-court glare variants.
- Basketball courtside strips with arena reflection profiles.
- Active-learning queues of hard live night-LED frames labelled in HITL.
Results discussion (illustrative)
Synthetic pretraining expands creative coverage. Domain adaptation recovers live texture and compression artefacts. Sponsorlytix monitors live hard examples so the loop stays closed through the season. Training mix chart is schematic volume — not a claim about production dataset sizes.
Code — synthetic clip builder and active sample
def build_synthetic_clip(venue, creative, camera_profile):
scene = venue.spawn()
scene.apply_creative(creative)
scene.simulate_motion(camera_profile)
frames, boxes = scene.render_labelled()
# boxes are inventory-grade: asset_class + brand_id + xyxy
return frames, boxes
def active_sample(live_loader, model, budget):
hard = []
for frame in live_loader:
pred = model.predict(frame)
if pred.entropy > model.threshold or pred.max_iou_to_gt_proxy < 0.5:
hard.append(frame)
if len(hard) >= budget:
break
return hard # enqueue to HITL in KobaTakeaways
Synthetic data and domain adaptation let Sponsorlytix ship detectors for new creatives and venues without waiting on exhaustive live labels. Eagle Eye keeps the adaptation loop tied to real broadcast hard cases.
That is how sports brand detectors stay current across a full competition calendar — and why loose generic boxes stay out of the ledger.