Class YoloV12DetectionPostprocessor

Namespace
NT2I.ONNX.DataHandling.Cpu.Yolo.Detection
Assembly
NT2I.ONNX.DataHandling.Cpu.dll

Classe responsable du post-traitement des détections pour le modèle YOLOv12. Cette classe implémente l'interface IYoloDetectionPostprocessor et fournit des méthodes pour extraire et filtrer les boîtes englobantes (bounding boxes) à partir des sorties brutes du modèle.

public class YoloV12DetectionPostprocessor : IYoloDetectionPostprocessor, IPostprocessor, IDisposable
Inheritance
YoloV12DetectionPostprocessor
Implements
Inherited Members

Constructors

YoloV12DetectionPostprocessor()

public YoloV12DetectionPostprocessor()

Methods

Dispose()

Libère les ressources utilisées par l'objet. Cette méthode est implémente pour respecter l'interface IDisposable.

public void Dispose()

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

Extrait les boîtes englobantes (bounding boxes) à partir des données de sortie du modèle. Cette méthode ajuste les coordonnées des boîtes en fonction des dimensions originales des images et applique des seuils de confiance pour filtrer les détections.

public IEnumerable<IEnumerable<IBoundingBox>> ExtractBoundingBoxes(float[] outputData, int[] originalWidths, int[] originalHeights, int networkInputWidth, int networkInputHeight, float[] classConfidenceThresholds, int batchSize, bool normalizeCoordinates, int[]? blacklistedClassIds)

Parameters

outputData float[]

Tableau contenant les données de sortie du modèle.

originalWidths int[]

Largeurs originales des images d'entrée.

originalHeights int[]

Hauteurs originales des images d'entrée.

networkInputWidth int

Largeur d'entrée du réseau (après prétraitement).

networkInputHeight int

Hauteur d'entrée du réseau (après prétraitement).

classConfidenceThresholds float[]

Seuils de confiance pour chaque classe.

batchSize int

Nombre d'images dans le batch.

normalizeCoordinates bool

Indique si les coordonnées doivent être normalisées entre 0 et 1.

blacklistedClassIds int[]

Liste des classes à exclure des résultats.

Returns

IEnumerable<IEnumerable<IBoundingBox>>

Une collection imbriquée de boîtes englobantes pour chaque image.

ProcessOutputForSpans(float[], int, float[], int[]?)

Traite les données de sortie pour générer des détections sous forme de Spans. Cette méthode est optimisée pour les performances et permet un accès efficace aux détections.

public IBatchDetections<float> ProcessOutputForSpans(float[] outputData, int batchSize, float[] classConfidenceThresholds, int[]? blacklistedClassIds)

Parameters

outputData float[]

Tableau contenant les données de sortie du modèle.

batchSize int

Nombre d'images dans le batch.

classConfidenceThresholds float[]

Seuils de confiance pour chaque classe.

blacklistedClassIds int[]

Liste des classes à exclure des résultats.

Returns

IBatchDetections<float>

Un objet IBatchDetections<T> contenant les détections organisées par image.