Interface IRFDetrSegmentationPostprocessor

Namespace
NT2I.ONNX.Abstractions.Interfaces.RFDetr
Assembly
NT2I.ONNX.Abstractions.dll

Contrat pour le post-traitement de la variante segmentation d'instance de RF-DETR.

RF-DETR-Seg produit trois tenseurs de sortie :

  • boxes [B, N, 4] — boîtes normalisées (cx, cy, w, h).
  • logits [B, N, C] — scores bruts de classe.
  • masks [B, N, H', W'] — masques basse résolution, à upsampler.

Le post-processeur :

  1. Filtre les détections valides (sigmoid > seuil, classe non blacklistée).
  2. Pour chaque détection retenue, applique sigmoid aux valeurs du masque correspondant.
  3. Upsample bilinéaire le masque de [H', W'] vers [origH, origW].
  4. Retourne un IInstanceSegmentation (boîte + masque float en [0, 1]).
Le masque est exposé comme float[] conforme à Mask. Pour obtenir un masque binaire, seuiller à 0.5.
public interface IRFDetrSegmentationPostprocessor : IPostprocessor, IDisposable
Inherited Members

Methods

ExtractSegmentations(float[], float[], float[], int[], int[], int, int, int, int, int, float[], bool, int[]?)

Extrait les segmentations d'instance pour chaque image du batch.

IEnumerable<IEnumerable<IInstanceSegmentation>> ExtractSegmentations(float[] boxesData, float[] logitsData, float[] masksData, int[] inputWidths, int[] inputHeights, int batchSize, int numDetections, int numClasses, int maskHeight, int maskWidth, float[] classConfidenceThresholds, bool normalizeCoordinates = false, int[]? blacklistedClassIds = null)

Parameters

boxesData float[]

Tenseur boxes aplati [BN4].

logitsData float[]

Tenseur logits aplati [BNC].

masksData float[]

Tenseur masques aplati [BNH'*W'].

inputWidths int[]

Largeurs originales des images du batch.

inputHeights int[]

Hauteurs originales des images du batch.

batchSize int

Taille du batch (B).

numDetections int

Nombre de queries (N).

numClasses int

Nombre de classes (C).

maskHeight int

Hauteur des masques basse résolution (H').

maskWidth int

Largeur des masques basse résolution (W').

classConfidenceThresholds float[]

Seuils de confiance : un seul seuil global (tableau de taille 1) ou un seuil par classe (taille C).

normalizeCoordinates bool

Si true, les coordonnées de la boîte sont normalisées entre 0 et 1.

blacklistedClassIds int[]

Classes à exclure (null = aucune exclusion).

Returns

IEnumerable<IEnumerable<IInstanceSegmentation>>

Pour chaque image : une collection de IInstanceSegmentation (boîte englobante + masque float [0, 1] à la résolution originale).