Skip to content
NAMEFRAMECommercial PreviewApply for Pilot
Bounding boxes

A box the engine computed, not a box somebody dragged.

A bounding box is the cheapest useful label in computer vision and the most tedious to produce by hand. Generated from an Unreal scene it costs nothing per instance, which changes what you can afford: the reference capture on this site carries 4,378 boxes across 40 frames, and no one drew any of them.

Boxes
4,378
Frames
40
Truncated at frame edge
168
Minimum box
8 px
Derived bounding boxes drawn over an airbase frame, including partly occluded objects
Derived 2D bounding boxesMap_Airbase_Demo, frame 000004Unreal Engine 5.8, 1920×1080

How the box is computed

Not from the object’s 3D bounds projected into the image, which is the approach that produces boxes floating around objects that are mostly behind a wall. The box comes from the identity buffer: find every pixel painted with this instance’s colour, take the extremes. If two-thirds of a crate is hidden, two-thirds of its pixels are not there, and the box tightens accordingly.

That is what “occlusion-aware” actually means, and it is a property of where the data comes from rather than a feature someone implemented. An object with no visible pixels gets no box, because a box around something you cannot see is a label that teaches a detector to hallucinate.

Truncation is marked, not hidden

An object crossing the edge of the frame is a real case that a detector has to handle, so it is kept and flagged rather than dropped. 168 instances in the reference capture touch an edge. Which ones, and per class, is in the report that ships with the downloadable sample.

Quality rules that run before export

  • Boxes smaller than 8 pixels on a side are rejected as noise rather than exported as tiny unlearnable targets.
  • An aspect ratio beyond 6:1 is treated as suspicious, because it usually means two objects were merged or a mask leaked.
  • Fill ratio, the share of the box its object actually occupies, is measured and reported. The reference capture’s median is 58%.

The size distribution of a real capture

Aerial scenes are mostly small objects. That is not a defect to be smoothed away, it is the problem, and a dataset that hides it will train a detector that cannot do the job.

COCO small

2,263 instances

Under 32×32 pixels of area. More than half of everything in the capture. These are the objects a detector will miss first, so they are the ones worth having in quantity.

COCO medium

1,802 instances

Between 32×32 and 96×96. The comfortable middle of most detectors.

COCO large

313 instances

Over 96×96. Vehicles and containers close to the camera. The rarest category here, which is what an aerial viewpoint does.

Measured by object width rather than COCO bracket, the median instance in this capture is 23.26 pixels across and the largest is 205.94. The quality page plots the full distribution alongside distance, view angle and class balance.

Boxes per class, including the awkward ones

Real scenes are unbalanced. Publishing the balance is more useful than pretending to have fixed it.

ClassBoxesFramesTruncatedFragments merged
barrel1,4714040332
crate1,2164045494
person9964017164
container3613938220
car2544028119
tank8040080