PROJECT STUDY

Prototype

CVAT Ball Auto-Labelling

Find the small ball. Keep annotations editable.

A custom CVAT adapter combining full-frame and tiled inference for small footballs, producing editable ball and person annotations.

Explore the build
Synthetic football pitch divided into inference tiles, with a ball box enlarged for annotation review.
Original interface illustration · Synthetic demo data.View larger

At a glance

Stage
Prototype
Industry
Sports
Context
Internal product
Capabilities
6
Technologies
10
Year
2026

The challenge

Small objects can be difficult to detect in wide camera views.

When a football occupies only a small part of the original frame, resizing the whole image for inference can remove useful detail.

This prototype explores a more focused pre-labelling workflow. The goal is to supply editable suggestions in an annotator's existing tool, while leaving the final labels to a person.

What we built

The original work is a custom detector adapter and its integration tooling:

Full-frame detection

A pretrained Ultralytics YOLO model supplies person and sports-ball detections

Full-frame detection

A pretrained Ultralytics YOLO model supplies person and sports-ball detections

A ball-focused tiled pass

Overlapping crops let the detector inspect smaller regions before mapping the resulting boxes back to full-frame coordinates

Duplicate suppression

Class-aware non-maximum suppression merges detections from both passes. An optional configuration can limit the number of retained ball suggestions

CVAT-compatible output

The adapter returns rectangles, labels, and confidence scores in the format expected by CVAT's serverless detector integration

Deployment configuration

A Nuclio function definition and PowerShell helpers describe the GPU container and local CVAT serverless setup

Comparison tooling

A bake-off script can compare input sizes and tiling configurations on sampled frames, recording timings and detection overlays for review

The detector proposes annotations. A human annotator can accept, adjust, or delete those boxes.

How it works

  1. CVAT and a Nuclio handler

    CVAT Community supplies the third-party annotation and review platform. The custom Nuclio handler decodes an image request and passes it to the detector with the chosen threshold.

  2. Full-frame and crop passes

    The full-frame pass and ball-only crop passes share the same model handler. Crop detections are translated into the original image coordinate system, combined with the full-frame detections, and reduced to a merged set of boxes before the response is returned.

  3. A pretrained model

    The implementation uses a pretrained model; it does not demonstrate a newly trained football model, player identification, long-term tracking, or ball-action understanding.

Current stage

Prototype

  1. Research
  2. Prototype
  3. Pilot
  4. Production

This is an implemented integration prototype. The Python adapter, function configuration, deployment helpers, and comparison script are present in the source. The source review did not execute the GPU workload, start the CVAT deployment, inspect private video, or verify benchmark results.

Read the full status

No accuracy, recall, speed improvement, or annotation-time reduction is claimed. A next evaluation would use permission-safe footage and review both missed objects and incorrect suggestions before making a deployment decision.

Platform attribution

CVAT Community is an upstream open-source product by the CVAT project. Weaveward's work described here is the custom detection adapter, tiling and merge workflow, and integration tooling. CVAT and the pretrained model are third-party components.

Where this fits

A useful annotation pipeline meets the people and tools already doing the work. We build computer vision workflows around your images, camera conditions, and review process. Talk to our team about a pilot for your own data.

Talk to our team

Let’s connect the dots

Let's put these ideas to work.

Share a process, product, or problem you want to improve. We will work through the possibilities together.

Discuss your project