Skip to main content

Crate edgefirst_decoder_abi

Crate edgefirst_decoder_abi 

Source
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§

EfDetectBox
A detection: a normalized box, a score, and a label index.
EfMergeConfig
How overlapping detections from neighbouring tiles are merged.
EfPreprocessSpec
A model’s input preprocessing as plain values. C ef_preprocess_spec in detect.h, produced by the decoder library and consumed by the image library.
EfSegmentation
One segmentation result, as plain values.
EfTilePlacement
C layout of ef_tile_placement in detect.h.
TilePlacement
One tile’s placement within a frame grid.

Enums§

EfFit
How a source is fit into the model input. C ef_fit in detect.h.
EfInterpolation
A resampling filter. C ef_interpolation in detect.h.
EfLetterboxPlacement
Where a letterboxed image sits. C ef_letterbox_placement in detect.h.
EfPadSpace
The space a letterbox pad is expressed in. C ef_pad_space in detect.h.