Expand description
Layout-only C ABI contract for the EdgeFirst detection vocabulary.
Decoding model outputs into user-consumable structures — detection boxes,
segmentation masks, tile placements — is what the decoder library is, so
these types belong to it. They lived in edgefirst-tensor because of the
r2 “plain-values-only boundary rule”, whose premise (sibling libraries
never link each other) spec Revision 3 overturned. A plain value that
crosses needs a shared DECLARATION, not a shared LINK.
Emitted into edgefirst/decoder.h by cbindgen’s [parse] include,
exactly as edgefirst-tensor-abi’s types are emitted into tensor.h.
Structs§
- EfDetect
Box - A detection: a normalized box, a score, and a label index.
- EfMerge
Config - How overlapping detections from neighbouring tiles are merged.
- EfSegmentation
- One segmentation result, as plain values.
- EfTile
Placement - C layout of
ef_tile_placementindetect.h. - Tile
Placement - One tile’s placement within a frame grid.