EdgeballView the repo

How it works

The pipeline as it actually runs. Each stage is a real step in this repository, not a capability claim.

01

Fetch

A script rebuilds the corpus from public broadcast sources by reference. No footage ships with the code, and none is ever hosted.

02

Detect

A borrowed ball detector runs on every frame. It never declines to answer, so a marker is not evidence that a ball was there.

03

Segment

Rally starts and ends are cut from the detection track, then measured against human labels rather than assumed to be right.

04

Reconstruct

Table coordinates through the calibration homography, bounce placement, and a 3D scene shown with its failures intact.

05

Measure

Every rate lands in a row with its denominator and its interval, against thresholds seeded before any result was seen.

Features

Surfaces that exist and are running. Nothing here is planned or partial.

Overlay on footage

The detector's own ball track drawn on the broadcast, rally by rally, with a readout that says when a marker is not evidence.

Rally structure and bounce placement

Rallies cut from the detection track and bounces placed in table coordinates. Bounces off the table are excluded, not clamped onto it.

Evidence, not scores

Every rate carries the denominator it was computed over and the interval around it, or arrives gated with the count of labels standing between it and existing. There is no third way.

The labeling tool

Ground truth is made inside the product, not a notebook. Label sets freeze before the harness runs, so predictions can never anchor the labeler.

The whole thing is public

Clone it, run it, and check the numbers yourself. The measurements, the labeled ground truth they were computed against, and the thresholds that were seeded before any result was seen are all in the repository.

View the repository