Class YoloV12DetectionPostprocessorDynNMS
Classe responsable du post-traitement des détections pour le modèle YOLOv12. Cette classe utilise un algorithme de suppression non maximale (NMS) dynamique pour filtrer les boîtes englobantes redondantes.
public class YoloV12DetectionPostprocessorDynNMS : IYoloDetectionPostprocessor, IPostprocessor, IDisposable
- Inheritance
-
YoloV12DetectionPostprocessorDynNMS
- Implements
- Inherited Members
Constructors
YoloV12DetectionPostprocessorDynNMS(int, float)
Initialise une nouvelle instance de la classe YoloV12DetectionPostprocessorDynNMS.
public YoloV12DetectionPostprocessorDynNMS(int classCount = 80, float nmsThreshold = 0.45)
Parameters
classCountintNombre total de classes dans le modèle.
nmsThresholdfloatSeuil de suppression non maximale (NMS).
Methods
Dispose()
Libère les ressources utilisées par l'objet. Cette méthode est implémentée 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 applique un algorithme de suppression non maximale (NMS).
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.