DetectionEngine.box_shapes
DetectionEngine.box_shapes(model_name=None, split='train')The cloud of box shapes in a split, with the anchors in use beside it.
Everything a picture of the anchor fit needs, in one call and in one set of coordinates: both are fractions of the model’s input, computed by the same function that fitted the anchors. The alternative - widths and heights from one place and anchors from another - is how a plot comes to show boxes in different places from where the anchors were fitted, which looks like a bad fit and is a bug.
Worth drawing for a split the anchors were not fitted on, for the same reason as anchor_coverage: it is the only way to see a class the anchors have nothing near.
Parameters
| Name | Type | Description | Default |
|---|---|---|---|
| model_name | str | None | Which detector. Defaults to the first. | None |
| split | str | Which split’s boxes to return. | 'train' |
Returns
| Name | Type | Description |
|---|---|---|
| dict[str, Any] | Every box’s width and height, normalised by the letterboxed input rather | |
| dict[str, Any] | than by the source image - which is the convention the anchors use, and getting | |
| dict[str, Any] | it wrong is how a coverage figure of 0.67 was quoted for two years against a | |
| dict[str, Any] | true 0.65. |