Class YoloV12DetectionPostprocessor
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
outputDatafloat[]Tableau contenant les données de sortie du modèle.
originalWidthsint[]Largeurs originales des images d'entrée.
originalHeightsint[]Hauteurs originales des images d'entrée.
networkInputWidthintLargeur d'entrée du réseau (après prétraitement).
networkInputHeightintHauteur d'entrée du réseau (après prétraitement).
classConfidenceThresholdsfloat[]Seuils de confiance pour chaque classe.
batchSizeintNombre d'images dans le batch.
normalizeCoordinatesboolIndique si les coordonnées doivent être normalisées entre 0 et 1.
blacklistedClassIdsint[]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
outputDatafloat[]Tableau contenant les données de sortie du modèle.
batchSizeintNombre d'images dans le batch.
classConfidenceThresholdsfloat[]Seuils de confiance pour chaque classe.
blacklistedClassIdsint[]Liste des classes à exclure des résultats.
Returns
- IBatchDetections<float>
Un objet IBatchDetections<T> contenant les détections organisées par image.