Object Detection Architectures
Explore les architectures de détection d’objets, des backbones aux têtes de détection. Découvre comment Ultralytics YOLO26 offre une vitesse et une précision d’exception pour la vision par ordinateur en temps réel.
Les architectures de détection d’objets sont les plans structurels des réseaux neuronaux utilisés pour identifier et localiser des éléments dans des données visuelles. Dans le domaine plus vaste de la vision par ordinateur (CV), ces architectures définissent la manière dont une machine « voit » en transformant des données brutes de pixels en informations exploitables. Contrairement aux modèles de classification de base qui se contentent d’étiqueter une image, une architecture de détection d’objets est conçue pour produire une boîte englobante, accompagnée d’une étiquette de classe et d’un score de confiance, pour chaque objet distinct qu’elle détecte. Cette conception structurelle détermine la vitesse, la précision et l’efficacité de calcul du modèle, ce qui en fait le facteur déterminant lors du choix d’un modèle pour l’inférence en temps réel ou une analyse de haute précision.
Composants essentiels d’une architecture#
Bien que les conceptions spécifiques varient, la plupart des architectures modernes partagent trois composants fondamentaux : le backbone, le neck et la tête. Le backbone agit comme extracteur principal de caractéristiques. Il s’agit généralement d’un réseau neuronal convolutif (CNN) pré-entraîné sur un vaste jeu de données comme ImageNet, chargé d’identifier les formes, les contours et les textures de base. Parmi les backbones couramment utilisés figurent ResNet et CSPDarknet.
Le neck relie le backbone aux couches de sortie finales. Son rôle consiste à mélanger et à combiner les caractéristiques issues des différentes étapes du backbone afin que le modèle puisse détecter des objets de tailles variées — un concept appelé fusion de caractéristiques multi-échelle. Les architectures utilisent souvent ici un réseau pyramidal de caractéristiques (FPN) ou un réseau d’agrégation de chemins (PANet) pour enrichir les informations sémantiques transmises aux couches de prédiction. Enfin, la tête de détection traite ces caractéristiques fusionnées afin de prédire la classe spécifique et les coordonnées de chaque objet.
Évolution : architectures en deux étapes ou en une étape#
Historiquement, les architectures étaient divisées en deux grandes catégories. Les détecteurs en deux étapes, comme la famille R-CNN, proposent d’abord des régions d’intérêt (RoIs) où des objets pourraient se trouver, puis classifient ces régions lors d’une seconde étape. Bien qu’ils soient généralement précis, ils sont souvent trop gourmands en ressources de calcul pour les appareils edge.
En revanche, les détecteurs en une étape considèrent la détection comme un simple problème de régression, en mappant directement les pixels de l’image vers les coordonnées des boîtes englobantes et les probabilités de classe en un seul passage. Cette approche, lancée par la famille YOLO (Tu ne regardes qu’une seule fois), a révolutionné le secteur en permettant des performances en temps réel. Les avancées modernes ont abouti à des modèles comme YOLO26, qui offrent non seulement une vitesse supérieure, mais ont également adopté des architectures de bout en bout sans NMS. En supprimant la nécessité du post-traitement par suppression des non-maxima (NMS), ces architectures plus récentes réduisent la variabilité de la latence, ce qui est essentiel pour les systèmes critiques pour la sécurité.
Applications concrètes#
Le choix de l’architecture a un impact direct sur la réussite des solutions d’IA dans tous les secteurs.
- Automatisation du commerce de détail : Dans les supermarchés intelligents, des architectures efficaces en une étape permettent de mettre en place des systèmes de paiement automatisés qui reconnaissent instantanément les produits sur un tapis roulant ou dans un chariot, réduisant ainsi les temps d’attente et les erreurs humaines.
- Diagnostic médical : Des architectures de haute précision sont utilisées pour l’analyse d’images médicales afin de détecter des anomalies telles que des tumeurs sur des radiographies ou des images IRM. Dans ce cas, la capacité de l’architecture à préserver les détails fins est plus importante que la vitesse de traitement brute.
Distinction entre les termes associés#
Il est important de distinguer les architectures de détection des tâches de vision par ordinateur similaires :
- Par rapport à la classification d’images : Une architecture de classification d’images (comme VGG ou EfficientNet) attribue une seule étiquette à une image entière (par exemple, « chat »). Elle ne t’indique pas où se trouve le chat ni s’il y en a plusieurs, ce qui constitue la fonction principale des architectures de détection.
- Par rapport à la segmentation d’instances : Alors que la détection place une boîte autour d’un objet, la segmentation d’instances identifie le contour précis, au niveau du pixel, de chaque objet au moyen d’un masque. Les architectures de segmentation sont souvent des extensions des architectures de détection (par exemple, avec l’ajout d’une branche de masque à la tête de détection).
Implémentation avec Ultralytics#
Les frameworks modernes ont abstrait les complexités de ces architectures, ce qui permet aux développeurs d’exploiter des conceptions de pointe avec un minimum de code. Avec le package ultralytics, tu peux charger un modèle YOLO26 pré-entraîné et lancer immédiatement l’inférence. Pour les équipes qui cherchent à gérer leurs jeux de données et à entraîner des architectures personnalisées dans le cloud, la plateforme Ultralytics simplifie l’ensemble du pipeline MLOps.
from ultralytics import YOLO
# Load the YOLO26n model (nano version for speed)
model = YOLO("yolo26n.pt")
# Run inference on an image source
# This uses the model's architecture to detect objects
results = model("https://ultralytics.com/images/bus.jpg")
# Display the results
results[0].show()








