Yolo Vision Shenzhen
Shenzhen
Rejoindre maintenant
Glossaire

Suppression non maximale (NMS)

Découvrez la suppression non maximale (NMS) pour la détection d'objets. Apprenez comment elle affine les résultats, améliore la précision et alimente les applications d'IA comme YOLO.

La suppression non maximale (NMS) est un algorithme de post-traitement fondamental utilisé en vision par ordinateur, en particulier dans les tâches de détection d'objets. Son objectif principal est de nettoyer la sortie d'un modèle de détection en filtrant les boîtes englobantes redondantes et qui se chevauchent afin de s'assurer que chaque objet est identifié une seule fois. Lorsqu'un modèle de détection d'objets, tel que Ultralytics YOLO, effectue des prédictions, il génère souvent plusieurs boîtes candidates autour du même objet, chacune ayant un score de confiance différent. La NMS sélectionne intelligemment la meilleure boîte englobante pour chaque objet et supprime, ou élimine, toutes les autres boîtes qui se chevauchent et qui sont considérées comme non maximales.

Comment fonctionne la suppression non maximale

L'algorithme NMS fonctionne en itérant à travers les boîtes englobantes prédites et en prenant des décisions basées sur deux mesures clés : les scores de confiance et le seuil d'Intersection sur Union (IoU). Le processus peut être résumé dans les étapes suivantes :

  1. Trier par confiance : Toutes les boîtes englobantes prédites sont d'abord triées par ordre décroissant en fonction de leurs scores de confiance. La boîte avec le score le plus élevé est considérée comme la plus susceptible d'être correcte.
  2. Sélectionner la meilleure boîte : La boîte englobante avec le score de confiance le plus élevé est sélectionnée, et toutes les autres boîtes qui ont un IoU élevé avec cette boîte sélectionnée (c'est-à-dire qu'elles se chevauchent de manière significative) sont supprimées de la liste.
  3. Répétition : Le processus est répété avec les boîtes englobantes restantes jusqu'à ce que toutes les boîtes aient été sélectionnées ou supprimées.

Le seuil IoU est un hyperparamètre essentiel défini par l'utilisateur. Un seuil IoU bas entraînera moins de détections, car il supprimera les boîtes qui ont même un petit chevauchement, tandis qu'un seuil élevé pourrait autoriser plusieurs détections pour le même objet. L'ajustement précis de ce seuil fait souvent partie de l'optimisation des performances d'un modèle sur un ensemble de données spécifique.

Applications de la suppression non maximale

La suppression non maximale (NMS) est un élément essentiel dans de nombreuses applications d'IA du monde réel qui reposent sur une détection d'objets précise.

  • Véhicules autonomes : Dans les voitures autonomes, les systèmes de détection d'objets doivent identifier avec précision les piétons, les cyclistes et les autres véhicules à partir de diverses entrées de caméras et de LiDAR. La NMS garantit qu'un seul piéton n'est pas détecté comme plusieurs individus, fournissant une entrée propre pour les systèmes de planification de trajectoire et de prise de décision de la voiture. Cela empêche les comportements erratiques comme le freinage inutile causé par des détections redondantes. Plus de détails peuvent être trouvés dans la recherche sur la détection d'objets 3D pour la conduite autonome.
  • Imagerie médicale : En analyse d'images médicales, la NMS est utilisée pour affiner la détection d'anomalies comme les tumeurs ou les lésions dans les scanners ou les IRM. Par exemple, lors de l'utilisation d'un modèle comme YOLO11 pour détecter les tumeurs, la NMS permet de s'assurer qu'une seule tumeur est localisée avec une seule boîte englobante, améliorant ainsi la précision des diagnostics et de la planification du traitement, comme exploré dans la recherche en imagerie médicale.

Comparaison avec des techniques connexes

La NMS est spécifiquement une étape de post-traitement appliquée après qu'un modèle de détection d'objets a généré son ensemble initial de boîtes englobantes candidates. Il ne faut pas la confondre avec l'architecture de détection elle-même, comme la différence entre les détecteurs basés sur des ancres et les détecteurs sans ancres. Ces architectures définissent comment les boîtes potentielles sont proposées, tandis que la NMS affine ces propositions.

Il est intéressant de noter que le coût de calcul et les goulots d'étranglement potentiels associés à la NMS ont stimulé la recherche sur les détecteurs d'objets sans NMS. Les modèles comme YOLOv10 intègrent des mécanismes pendant l'entraînement pour éviter intrinsèquement de prédire des boîtes redondantes, dans le but de réduire la latence d'inférence et de permettre une détection véritablement de bout en bout. Ceci contraste avec les approches traditionnelles comme Ultralytics YOLOv8 ou YOLOv5, où la NMS reste une partie standard et essentielle du pipeline d'inférence. Vous pouvez explorer des comparaisons techniques, telles que YOLOv10 vs. YOLOv8, dans notre documentation. Les variantes comme Soft-NMS offrent des approches alternatives qui diminuent les scores des boîtes qui se chevauchent au lieu de les éliminer complètement.

Intégration avec les outils Ultralytics

La NMS est intégrée de manière transparente dans l'écosystème Ultralytics. Les modèles Ultralytics YOLO appliquent automatiquement la NMS pendant la prédiction (predict) et validation (val) modes, garantissant aux utilisateurs des sorties de détection propres et précises par défaut. Les paramètres contrôlant le comportement de NMS (comme le seuil IoU et le seuil de confiance) peuvent souvent être ajustés pour des besoins d'application spécifiques.

Des plateformes comme Ultralytics HUB font abstraction de ces détails, permettant aux utilisateurs d'entraîner des modèles et de les déployer là où la NMS est gérée automatiquement dans le cadre du pipeline optimisé. Cette intégration garantit que les utilisateurs, quelle que soit leur expertise technique approfondie en MLOps, peuvent bénéficier de résultats de détection d'objets à la pointe de la technologie pour diverses tâches de vision par ordinateur. Les détails spécifiques de l'implémentation au sein du framework Ultralytics peuvent être explorés dans la référence des utilitaires Ultralytics. Pour plus de définitions, consultez le Glossaire Ultralytics principal.

Rejoignez la communauté Ultralytics

Rejoignez le futur de l'IA. Connectez-vous, collaborez et évoluez avec des innovateurs mondiaux.

Rejoindre maintenant
Lien copié dans le presse-papiers