Ultralytics YOLO27 : Rejoins la liste d'attente.
Licence YOLO
Retour au glossaire Ultralytics

Non-Maximum Suppression (NMS)

La suppression des non-maxima (NMS) élimine les boîtes qui se chevauchent et font doublon, afin que chaque objet ne conserve qu’une détection. Découvre son fonctionnement, son réglage et les modèles sans NMS.

La suppression non maximale (NMS) est l’étape de post-traitement qui transforme les prédictions brutes et chevauchantes d’un détecteur en une seule boîte par objet. Un modèle dense de détection d’objets attribue un score à des milliers de boîtes englobantes candidates par image ; plusieurs candidates voisines s’activent généralement pour le même objet, avec des positions et des scores légèrement différents. La NMS conserve la boîte ayant la plus grande confiance dans chaque groupe de chevauchement et supprime les autres, en utilisant l’intersection sur l’union (IoU) pour déterminer si le chevauchement entre les boîtes suffit à les considérer comme des doublons.

Fonctionnement de la suppression non maximale#

La NMS gloutonne, la version standard, élimine d’abord les candidates situées sous un seuil de confiance et trie les autres par score. Elle conserve ensuite la boîte en tête du classement, supprime toutes les autres boîtes dont l’IoU avec celle-ci dépasse le seuil IoU, puis répète l’opération avec la meilleure boîte restante jusqu’à épuisement. Les détecteurs l’exécutent normalement une fois par classe : une boîte de personne ne supprime donc jamais une boîte de vélo qui la chevauche.

nms de torchvision implémente la NMS gloutonne pour une seule classe et renvoie, triés par score, les indices des boîtes conservées.

import torch
from torchvision.ops import nms

# Boîtes candidates sous la forme [x1, y1, x2, y2], avec un score de confiance pour chacune
boxes = torch.tensor(
    [
        [100, 100, 200, 200],  # A
        [105, 105, 195, 195],  # B : presque identique à A (IoU 0.81)
        [300, 300, 400, 400],  # C : un objet distinct
    ],
    dtype=torch.float32,
)
scores = torch.tensor([0.90, 0.80, 0.95])

# Supprimer toute boîte dont l’IoU avec une boîte conservée ayant un score supérieur dépasse 0.5
keep = nms(boxes, scores, iou_threshold=0.5)
print(keep.tolist())

La sortie est [2, 0] : la boîte C est conservée en premier, car elle a le score le plus élevé ; la boîte A est conservée, car elle ne chevauche pas C ; et la boîte B est supprimée, car son IoU avec A est de 0.81.

Régler les seuils#

Le seuil de confiance élimine les candidates faibles avant le début de la suppression. Le seuil IoU définit le chevauchement considéré comme un doublon. S’il est trop faible, deux objets réels très proches, comme des personnes dans une foule, fusionnent en une seule détection et le rappel diminue. S’il est trop élevé, les boîtes en double sont conservées et la précision diminue. La NMS indépendante des classes permet à n’importe quelle boîte d’en supprimer une autre, quelle que soit sa classe, ce qui élimine les étiquettes en double lorsqu’un modèle attribue à un objet deux classes similaires, comme « voiture » et « camion ».

Limites de la NMS#

  • Scènes encombrées : un seuil IoU unique et fixe ne peut pas distinguer une boîte en double d’un second objet qui chevauche réellement le premier ; les objets fortement occultés sont donc supprimés.
  • Heuristique fixe : le seuil est choisi manuellement, se situe en dehors du réseau entraîné et n’est pas appris à partir des données.
  • Latence et déploiement : la boucle gloutonne s’exécute après le réseau et son coût augmente avec le nombre de candidates, ce qui accroît la latence d’inférence. Les formats d’export qui ne peuvent pas intégrer la NMS au graphe du modèle produisent des candidates brutes ; l’application doit alors exécuter elle-même la NMS.

Variantes de la NMS et détection sans NMS#

Soft-NMS réduit les scores des boîtes qui se chevauchent en fonction de leur chevauchement, au lieu de les supprimer, ce qui permet de récupérer davantage d’objets dans les foules. DIoU-NMS, proposée avec la fonction de perte Distance-IoU, tient également compte de la distance entre les centres des boîtes ; deux boîtes dont les centres sont éloignés ont donc moins de chances d’être supprimées.

Les détecteurs de bout en bout suppriment entièrement cette étape. DETR est entraîné avec une association hongroise un-à-un entre les prédictions et les annotations, de sorte que chaque objet reçoit exactement une prédiction ; YOLOv10 a introduit une tête un-à-un dans les modèles YOLO temps réel. YOLO26 entraîne les deux types de tête et applique NMS par défaut, car sa tête un-à-plusieurs obtient un score légèrement supérieur : 40,9 contre 40,1 en mAP50-95 sur COCO pour YOLO26n. Passer nms=False sélectionne la tête un-à-un, qui produit au plus 300 boîtes finales par image sans étape NMS, comme le montre le guide de détection de bout en bout pour la prédiction et l’exportation.

Découvre les solutions

La vision par ordinateur dans le sport

La vision par ordinateur dans le sport

Découvre comment Ultralytics YOLO propulse la vision par ordinateur dans le sport grâce au suivi des joueurs et du ballon, aux analyses de performance, aux conseils d’entraînement et à la rééducation des athlètes.
En savoir plus
Vision par ordinateur pour les images aériennes

Vision par ordinateur pour les images aériennes

Transforme les images de drones et les images aériennes en informations exploitables en temps réel pour l’agriculture, l’aquaculture, la conservation et l’analyse géospatiale avec Ultralytics YOLO.
En savoir plus
Vision par ordinateur dans l’aérospatiale

Vision par ordinateur dans l’aérospatiale

Applique la vision par ordinateur dans l’aérospatiale avec Ultralytics YOLO pour l’inspection des aéronefs, la détection des corps étrangers sur les pistes, les opérations au sol des aéroports et la détection des défauts des matériaux composites.
En savoir plus
La vision par ordinateur dans la sécurité

La vision par ordinateur dans la sécurité

Protège chaque site avec les modèles Ultralytics YOLO. L’IA visuelle permet la surveillance des périmètres, la détection des menaces, la reconnaissance des plaques d’immatriculation et la sécurité au travail.
En savoir plus
La vision par ordinateur en robotique

La vision par ordinateur en robotique

Donne plus de capacités à tes machines grâce aux modèles Ultralytics YOLO. Dans la robotique, l’IA visuelle permet la navigation autonome, la perception, le suivi des objets et le contrôle en temps réel.
En savoir plus
La vision par ordinateur dans la logistique

La vision par ordinateur dans la logistique

Optimise la logistique avec les modèles Ultralytics YOLO. La vision par IA permet d’inspecter les colis, de les trier, de suivre les véhicules et de surveiller la sécurité des entrepôts en temps réel.
En savoir plus
La vision par ordinateur dans le commerce de détail

La vision par ordinateur dans le commerce de détail

Réinvente le commerce de détail avec les modèles Ultralytics YOLO. La vision par IA permet de suivre les stocks, de surveiller les rayons, de gérer les files d’attente et de mieux comprendre les clients.
En savoir plus
La vision par ordinateur dans le secteur de la santé

La vision par ordinateur dans le secteur de la santé

Crée des solutions de santé avec les modèles Ultralytics YOLO. La vision par IA dans le secteur de la santé accélère l’imagerie médicale, améliore les diagnostics et facilite la surveillance des patients.
En savoir plus
La vision par ordinateur dans l’industrie manufacturière

La vision par ordinateur dans l’industrie manufacturière

Optimise la fabrication avec les modèles Ultralytics YOLO. La vision par IA améliore le contrôle qualité, la détection des défauts, le respect des règles concernant les EPI et l’automatisation des chaînes de montage.
En savoir plus
La vision par ordinateur dans l’automobile

La vision par ordinateur dans l’automobile

Mets la vision par ordinateur au service de l’automobile avec les modèles Ultralytics YOLO. La vision par IA renforce la sécurité routière, l’aide à la conduite et l’automatisation des véhicules pour des routes plus intelligentes.
En savoir plus
Vision par ordinateur dans l’agriculture

Vision par ordinateur dans l’agriculture

Fais entrer l’IA de vision dans l’agriculture intelligente avec les modèles Ultralytics YOLO. Optimise le suivi des cultures et du bétail ainsi que l’agriculture de précision pour obtenir des rendements plus élevés et plus intelligents.
En savoir plus

Construisons ensemble l’avenir de l’IA !

Commence ton parcours vers l’avenir de l’apprentissage automatique