Skip to main content

impl_yolo_split_segdet_quant

Function impl_yolo_split_segdet_quant 

Source
pub fn impl_yolo_split_segdet_quant<B: BBoxTypeTrait, BOX: PrimInt + AsPrimitive<f32> + Send + Sync, SCORE: PrimInt + AsPrimitive<f32> + Send + Sync, MASK: PrimInt + AsPrimitive<i64> + AsPrimitive<i128> + AsPrimitive<f32> + Send + Sync, PROTO: PrimInt + AsPrimitive<i64> + AsPrimitive<i128> + AsPrimitive<f32> + Send + Sync>(
    boxes: (ArrayView2<'_, BOX>, Quantization),
    scores: (ArrayView2<'_, SCORE>, Quantization),
    mask_coeff: (ArrayView2<'_, MASK>, Quantization),
    protos: (ArrayView3<'_, PROTO>, Quantization),
    score_threshold: f32,
    iou_threshold: f32,
    nms: Option<Nms>,
    output_boxes: &mut Vec<DetectBox>,
    output_masks: &mut Vec<Segmentation>,
) -> Result<(), DecoderError>
where f32: AsPrimitive<SCORE>,
Expand description

Internal implementation of YOLO split detection segmentation decoding for quantized tensors.

Expected shapes of inputs:

  • boxes_tensor: (4, num_boxes)
  • scores_tensor: (num_classes, num_boxes)
  • mask_tensor: (num_protos, num_boxes)
  • protos: (proto_height, proto_width, num_protos)

ยงErrors

Returns DecoderError::InvalidShape if bounding boxes are not normalized.