Class RFDetrSegmentationPostprocessor

Namespace
NT2I.ONNX.DataHandling.Cpu.RFDetr.Segmentation
Assembly
NT2I.ONNX.DataHandling.Cpu.dll

Post-processeur CPU pour la variante segmentation d'instance de RF-DETR.

Pipeline par détection retenue :

  1. Sigmoid indépendant sur chaque logit de classe → argmax + seuil.
  2. Décodage boîte cxcywh → x1y1wh pixels.
  3. Sigmoid sur la tranche masque [H', W'].
  4. Upsample bilinéaire vers [origH, origW].
  5. Retour d'un IInstanceSegmentation (masque float [0, 1]).
Pour obtenir un masque binaire, seuiller chaque valeur à 0.5.
public sealed class RFDetrSegmentationPostprocessor : IRFDetrSegmentationPostprocessor, IPostprocessor, IDisposable
Inheritance
RFDetrSegmentationPostprocessor
Implements
Inherited Members

Constructors

RFDetrSegmentationPostprocessor()

public RFDetrSegmentationPostprocessor()

Methods

Dispose()

public void Dispose()

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

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

public 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).