Yolo Vision Shenzhen
Shenzhen
Rejoindre maintenant
Glossaire

Réseau de pyramides de caractéristiques (FPN)

Découvrez comment les réseaux pyramidaux à caractéristiques (FPN) améliorent la détection d'objets à plusieurs échelles. Découvrez comment Ultralytics utilise des FPN avancés pour detect et les grands objets.

Un réseau pyramidal (FPN) est un composant architectural spécialisé utilisé dans la systèmes de vision par ordinateur (CV) afin d' améliorer la détection d'objets à différentes échelles. Il résout efficacement un défi de longue date dans l'analyse d'images : la reconnaissance à la fois des structures importantes et proéminentes et des détails minuscules et distants au sein d'une même image. En générant une représentation multi-échelle de l'entrée, conceptuellement similaire à une pyramide, les FPN permettent aux réseaux neuronaux d'extraire des informations sémantiques riches à tous les niveaux de résolution. Cette architecture se situe généralement entre le backbone, qui extrait les caractéristiques brutes, et la tête de détection, qui prédit les classes d'objets et les cadres de sélection.

Comment fonctionnent les réseaux pyramidaux à fonctionnalités

L'innovation principale du FPN réside dans la manière dont il traite les informations. Les réseaux neuronaux convolutifs (CNN) créent naturellement une hiérarchie de caractéristiques où l'image d'entrée est progressivement sous-échantillonnée. Bien que cela approfondisse la compréhension sémantique (savoir ce qui se trouve dans l'image), cela dégrade souvent la résolution spatiale (savoir exactement cela se trouve), faisant disparaître les petits objets.

Les FPN abordent cette question à travers un processus en trois étapes :

  1. Voie ascendante: il s'agit du passage standard en avant du réseau, tel qu'un réseau résiduel (ResNet). Au fur et à mesure que le réseau traite l'image, il crée des cartes de caractéristiques dont la taille diminue mais dont la valeur sémantique augmente.
  2. Voie descendante: le réseau construit une pyramide à plus haute résolution en suréchantillonnant les caractéristiques sémantiquement riches des couches plus profondes. Cette étape « hallucine » un contexte fort dans des cartes spatiales plus grandes .
  3. Connexions latérales: Afin de récupérer les détails nets perdus lors du sous-échantillonnage, les FPN fusionnent les caractéristiques suréchantillonnées avec les cartes originales à haute résolution provenant de la voie ascendante via des connexions latérales.

Cette combinaison donne lieu à une pyramide où chaque niveau possède une sémantique forte et une bonne localisation, ce qui améliore considérablement la précision et le le rappel pour toutes les tailles d'objets.

Importance dans les architectures de détection d'objets

Les FPN sont la pierre angulaire des architectures modernes de détection d'objets. Avant leur introduction, les modèles devaient choisir entre la vitesse (en utilisant uniquement la couche finale) ou la précision (en traitant une pyramide d'images, ce qui est très lent). Les FPN offrent une solution qui combine le meilleur des deux mondes, permettant une inférence en temps réel sans sacrifier les capacités de détection des petits objets.

Cette efficacité est cruciale pour les modèles avancés tels que YOLO26, qui utilise des réseaux d'agrégation sophistiqués inspirés des principes FPN (comme PANet) pour atteindre des performances de pointe. L'architecture garantit que, que le modèle soit déployé sur des appareils périphériques ou sur des serveurs puissants via la Ultralytics , il maintienne une grande précision sur divers ensembles de données.

Applications concrètes

La capacité multi-échelle des FPN les rend indispensables dans les industries où la sécurité et la précision sont primordiales.

  • L'IA dans l'automobile: les véhicules autonomes doivent track simultanément les track camions à proximité et les petits feux de signalisation ou les piétons au loin . Les FPN permettent à la pile de perception de traiter ces échelles disparates en un seul passage, garantissant ainsi une prise de décision rapide . Des ensembles de données tels que nuScenes sont souvent utilisés pour évaluer ces capacités
  • Analyse d'images médicales: en imagerie diagnostique, la détection des pathologies nécessite de repérer des anomalies dont la taille varie considérablement. Un modèle équipé d'un FPN peut identifier à la fois les grandes structures organiques et les tumeurs minuscules à un stade précoce dans les IRM, aidant ainsi les radiologues à établir des diagnostics précis.
  • L'IA dans l'agriculture: L'agriculture de précision repose sur la détection des cultures et des parasites à partir d'images prises par des drones. Comme l'altitude du drone peut varier, la taille des plantes sur l'image change. Les FPN aident les modèles à bien généraliser, en effectuant un comptage précis des objets le comptage d'objets quelle que soit la hauteur de la caméra.

FPN par rapport à d'autres agrégateurs de fonctionnalités

Il est utile de distinguer le FPN standard de ses variantes évoluées que l'on trouve dans les architectures plus récentes.

  • FPN vs PANet: alors que le FPN ajoute un chemin descendant pour enrichir les fonctionnalités, le réseau d'agrégation de chemins (PANet) ajoute un chemin ascendant supplémentaire au FPN. Cela raccourcit le chemin d'information pour les fonctionnalités de bas niveau, améliorant ainsi la localisation, une technique souvent adaptée dans YOLO .
  • FPN vs BiFPN: présent dans EfficientDet, le réseau pyramidal bidirectionnel (BiFPN) introduit des poids apprenables pour différentes caractéristiques et supprime les nœuds ne comportant qu'une seule entrée, optimisant ainsi le réseau pour une meilleure efficacité.

Exemple pratique

Bibliothèques avancées telles que ultralytics gérer en interne la complexité de la construction du FPN. Lorsque vous chargez un modèle tel que YOLO26, l'architecture inclut automatiquement ces couches d'agrégation de caractéristiques afin d'optimiser les performances.

from ultralytics import YOLO

# Load the YOLO26 model, which uses advanced feature pyramid principles internally
# The 'n' suffix indicates the nano version, optimized for speed
model = YOLO("yolo26n.pt")

# Perform inference on an image containing objects of various sizes
# The model's neck (FPN-based) aggregates features to detect small and large items
results = model("https://ultralytics.com/images/bus.jpg")

# Display results to see bounding boxes around buses (large) and people (small)
results[0].show()

Rejoindre la communauté Ultralytics

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

Rejoindre maintenant