Class NMS

Namespace
NT2I.ONNX.DataHandling.Cpu.Features
Assembly
NT2I.ONNX.DataHandling.Cpu.dll

Fournit des méthodes pour appliquer l'algorithme de Non-Maximum Suppression (NMS) et calculer l'Intersection over Union (IoU) entre des boîtes englobantes.

public static class NMS
Inheritance
NMS
Inherited Members

Methods

BoundingBoxIOU(IBoundingBox, IBoundingBox)

Calcule l'Intersection over Union (IoU) entre deux boîtes englobantes. Cette implémentation accepte directement IBoundingBox.

public static float BoundingBoxIOU(IBoundingBox boxA, IBoundingBox boxB)

Parameters

boxA IBoundingBox

La première boîte.

boxB IBoundingBox

La seconde boîte.

Returns

float

La valeur de l'IoU (entre 0 et 1).

NonMaximumSuppression(List<IBoundingBox>, double, IComparer<IBoundingBox>?, NmsModeEnum)

Applique l'algorithme de Non-Maximum Suppression (NMS) sur une liste de boîtes englobantes.

public static List<IBoundingBox> NonMaximumSuppression(List<IBoundingBox> bbs, double nmsThr = 0.5, IComparer<IBoundingBox>? comparer = null, NmsModeEnum nMSMode = NmsModeEnum.IntraClass)

Parameters

bbs List<IBoundingBox>

Liste complète des boîtes englobantes (toutes classes confondues).

nmsThr double

Seuil d'IoU (Intersection over Union) pour la suppression.

comparer IComparer<IBoundingBox>

Comparateur pour trier les boîtes (typiquement par score de confiance).

nMSMode NmsModeEnum

Mode de NMS : IntraClass (par classe) ou InterClass (toutes classes).

Returns

List<IBoundingBox>

Une nouvelle liste contenant les boîtes filtrées.