Découvrez le rôle essentiel des têtes de détection dans la détection d'objets, en affinant les cartes de caractéristiques pour identifier avec précision les emplacements et les classes d'objets.
La tête de détection est le dernier élément, et peut-être le plus important, d'un modèle de détection d'objets ; elle constitue la couche décisionnelle qui traduit les caractéristiques de l'image encodée en prédictions exploitables. de décision qui traduit les caractéristiques de l'image encodée en prédictions exploitables. Située à la toute fin d'un réseau neuronal réseau neuronal d'apprentissage profond, plus précisément après la colonne vertébrale et le cou, la tête de détection traite des cartes de caractéristiques de haut niveau afin de produire le résultat final : la tête de détection. de haut niveau pour produire le résultat final : la classe de l'objet et son l'objet et son emplacement précis dans l'image. Alors que les premières couches du réseau se concentrent sur l'extraction de caractéristiques l'extraction des caractéristiques (identification des bords, des textures et des motifs complexes), la tête de détection interprète ces données pour répondre aux questions "qu'est-ce que c'est ? "Qu'est-ce que c'est ?" et "Où est-ce ?"
La responsabilité première d'une tête de détection est d'effectuer deux tâches distinctes mais simultanées : la classification et la régression. régression. Dans les architectures architectures modernes de détection d'objets, ces tâches sont souvent traitées par des branches distinctes au sein de la tête, un choix de conception qui permet au modèle de se spécialiser dans différents aspects de la prédiction. de se spécialiser dans différents aspects de la prédiction.
La sortie de la tête de détection est généralement un ensemble dense de détections candidates. Pour finaliser les résultats, des étapes de post-traitement telles que suppression non maximale (NMS) sont appliquées pour filtrer les boîtes qui se chevauchent et ne conserver que les prédictions les plus sûres.
La conception de la tête de détection dicte la manière dont un modèle aborde le problème de la localisation des objets.
L'efficacité et la précision de la tête de détection sont essentielles pour déployer l'intelligence artificielle (IA) dans des environnements complexes. l'intelligence artificielle (IA) dans des environnements complexes.
Il est utile de distinguer la tête de détection des autres composants principaux d'un réseau de neurones. réseau neuronal convolutif (CNN):
L'extrait de code Python suivant montre comment inspecter la tête de détection d'un modèle YOLO11 pré-entraîné à l'aide de la fonction
l'outil ultralytics (en français dans le texte). Cela aide les utilisateurs à comprendre la structure de la couche finale responsable de l'inférence.
l'inférence.
from ultralytics import YOLO
# Load a pre-trained YOLO11 model
model = YOLO("yolo11n.pt")
# Inspect the final detection head layer
# This typically reveals the number of classes (nc) and anchors/outputs
print(model.model.model[-1])
# Run inference to see the head's output in action
results = model("https://ultralytics.com/images/bus.jpg")
La compréhension de la tête de détection est essentielle pour toute personne cherchant à optimiser les performances du modèle ou à effectuer des tâches avancées. performance du modèle ou effectuer des tâches avancées comme l'apprentissage par transfert, où la tête est souvent remplacée pour former le modèle sur un nouvel ensemble de données personnalisé. nouveau jeu de données personnalisé. Les chercheurs expérimentent en permanence de nouvelles de nouveaux modèles de têtes pour améliorer des paramètres tels que la la précision moyenne (mAP), repoussant ainsi les les limites de ce que la vision par ordinateur peut réaliser.