#[repr(C)]pub struct EfMergeConfig {
pub metric: u32,
pub threshold: f32,
pub class_agnostic: c_int,
pub max_det: usize,
pub score_threshold: f32,
pub mode: u32,
}Expand description
How overlapping detections from neighbouring tiles are merged.
Fields§
§metric: u32An EF_MATCH_METRIC_* code: IoU, or Intersection-over-Smaller.
IoS is the default for a reason: an object split across a tile seam has low IoU with its own fragment but high IoS, so IoU would keep both halves as separate detections.
threshold: f32§class_agnostic: c_intNon-zero to merge across classes.
max_det: usize§score_threshold: f32§mode: u32An EF_MERGE_MODE_* code. EF_MERGE_MODE_KEEP_BEST (default): the
highest-scoring box of each matched group is kept and the boxes it
matched are dropped. EF_MERGE_MODE_UNION: the group becomes its
enclosing union carrying the max score.
Keep-best is 0, but note that a zero-initialised struct is still
not the library default: metric defaults to EF_MATCH_METRIC_IOS,
so an all-zero struct selects IoU. Fill with ef_merge_config_default.
The union measured about 0.05 AP50 worse on every frame of the Ocean
Cleanup ADIS 4K validation (TOP2-836), which is why it is opt-in.
Occupies what was this struct’s 4-byte tail pad, so adding it left every other field’s offset and the 32-byte size unchanged.