Add Training Images and Boxes

Box Detect functions learn from annotated images — pictures of your object, with bounding boxes drawn around every visible instance. This page walks through the two-step workflow: importing images, then drawing boxes in the Train tab.

You don’t review individual predictions the way you do with classification. You add representative annotated images and let Nyckel retrain.

1. Import images

Open your function in the console and click Import. You can upload images from your computer or supply URLs.

Bring in a batch of images that represent the conditions your function will see in production — different lighting, angles, backgrounds, scales, and degrees of occlusion. Variety matters more than raw count at this stage.

A few images won’t contain your object at all — that’s fine and often useful. They become negative examples when you leave them un-annotated (more on that below).

2. Draw boxes in the Train tab

Open the Train tab. You’ll see your imported images, and the annotation tool lets you click-and-drag a box around each instance of the object.

Because Box Detect functions are single-class, you don’t need to label boxes — every box you draw represents an instance of the one object the function is trained to find.

A few principles:

How many images do you need?

A few rules of thumb:

What happens after you add training data

Nyckel watches the function’s training set and retrains in the background as you add or change annotations. You don’t trigger this — it happens automatically. The endpoint stays live throughout; new models replace old ones only when they perform better on held-out data.

Improving over time

The improvement loop for Box Detect looks like this:

  1. Import a batch of images and annotate them in the Train tab.
  2. Invoke the function on a representative test set.
  3. Look at where it misses (false negatives) and where it finds things that aren’t there (false positives).
  4. Import more images that target those weaknesses — and annotate them.
  5. Repeat.

The fastest gains come from annotating the hard cases the current model gets wrong, not from adding more easy examples.

Next

Invoke Detection — call the trained function from the console and from the API, and understand the response shape.