Passer au contenu

YOLOv7 vs. PP-YOLOE+ : Une comparaison technique pour la détection d'objets

Le choix de l'architecture de détection d'objets optimale est une décision cruciale dans le développement de la vision par ordinateur, influençant fortement les performances et l'efficacité des applications en aval. Cette analyse fournit une plongée technique approfondie dans YOLOv7 et PP-YOLOE+, deux modèles illustres qui ont façonné le paysage de la détection en temps réel. Nous examinons leurs innovations architecturales, leurs méthodologies d'entraînement et leurs mesures de performance pour guider les chercheurs et les ingénieurs dans la prise de décisions éclairées.

YOLOv7 : Définir la vitesse et la précision en temps réel

YOLOv7 s’est avéré être une étape importante dans l’évolution de la famille You Only Look Once, conçu pour repousser les limites de la vitesse et de la précision pour les applications en temps réel. Il a introduit des stratégies architecturales qui ont amélioré l’apprentissage des caractéristiques sans augmenter les coûts d’inférence, établissant ainsi une nouvelle référence de pointe lors de sa sortie.

En savoir plus sur YOLOv7

Innovations architecturales

Le cœur de la conception de YOLOv7 est l'Extended Efficient Layer Aggregation Network (E-ELAN). Cette nouvelle architecture de backbone contrôle les chemins de gradient les plus courts et les plus longs pour apprendre efficacement les caractéristiques sans perturber le flux de gradient. En optimisant le chemin de gradient, le réseau atteint des capacités d'apprentissage plus profondes tout en maintenant l'efficacité.

De plus, YOLOv7 emploie une stratégie de "sac de cadeaux" pendant l'apprentissage. Ce sont des méthodes d'optimisation qui améliorent la précision sans ajouter de coût de calcul pendant la phase d'moteur d'inférence. Les techniques comprennent la re-paramétrisation du modèle, qui fusionne des modules séparés en un seul module distinct pour le déploiement, et la perte guidée grossière à fine pour la supervision de la tête auxiliaire.

Points forts et faiblesses

  • Points forts : YOLOv7 offre un rapport vitesse/précision exceptionnel, ce qui le rend très efficace pour l'inférence en temps réel sur les GPU. Son approche basée sur l’ancrage est bien adaptée aux ensembles de données standard comme COCO.
  • Points faibles : En tant que détecteur basé sur des ancres, il nécessite la configuration prédéfinie de boîtes d’ancrage, ce qui peut être sous-optimal pour les ensembles de données personnalisés avec des rapports hauteur/largeur d’objet inhabituels. La mise à l’échelle efficace du modèle sur des contraintes matérielles très différentes peut également être complexe par rapport aux itérations plus récentes.

PP-YOLOE+: Le challenger sans ancres

PP-YOLOE+ est l'évolution de PP-YOLOE, développé par Baidu dans le cadre de la suite PaddleDetection. Il se distingue par une architecture sans ancrage, visant à simplifier le pipeline de détection et à réduire le nombre d'hyperparamètres que les développeurs doivent ajuster.

En savoir plus sur PP-YOLOE+

Innovations architecturales

PP-YOLOE+ adopte un mécanisme de détecteur sans ancrage, éliminant le besoin de clustering de boîtes d'ancrage. Il utilise un backbone CSPRepResNet et une conception de tête simplifiée. La clé de sa performance est l' apprentissage de l'alignement des tâches (TAL), qui attribue dynamiquement des échantillons positifs en fonction de l'alignement de la qualité de la classification et de la localisation.

Le modèle intègre également VariFocal Loss, une fonction de perte spécialisée conçue pour prioriser l'entraînement d'exemples de haute qualité. La version « + » comprend des améliorations aux structures du neck et de la tête, optimisant la pyramide de caractéristiques pour une meilleure détection multi-échelle.

Points forts et faiblesses

  • Points forts : La conception sans ancrage simplifie la configuration de l’entraînement et améliore la généralisation sur diverses formes d’objets. Elle s’adapte bien aux différentes tailles (s, m, l, x) et est fortement optimisée pour le framework PaddlePaddle.
  • Points faibles : Sa dépendance principale à l’écosystème PaddlePaddle peut créer des frictions pour les équipes établies dans les écosystèmes PyTorch ou TensorFlow. Le soutien de la communauté et les outils tiers en dehors de la Chine sont généralement moins importants que ceux de la communauté mondiale YOLO.

Comparaison des performances

Lors de la comparaison de ces modèles, il est crucial d'examiner l'équilibre entre la précision moyenne (mAP) et la latence d'inférence. Le tableau ci-dessous met en évidence les principales métriques sur l'ensemble de données COCO.

ModèleTaille
(pixels)
mAPval
50-95
Vitesse
CPU ONNX
(ms)
Vitesse
T4 TensorRT10
(ms)
paramètres
(M)
FLOPs
(B)
YOLOv7l64051.4-6.8436.9104.7
YOLOv7x64053.1-11.5771.3189.9
PP-YOLOE+t64039.9-2.844.8519.15
PP-YOLOE+s64043.7-2.627.9317.36
PP-YOLOE+m64049.8-5.5623.4349.91
PP-YOLOE+l64052.9-8.3652.2110.07
PP-YOLOE+x64054.7-14.398.42206.59

Analyse

Comme on peut l'observer, YOLOv7l démontre une efficacité impressionnante, atteignant 51,4 % mAP avec une vitesse TensorRT de 6,84 ms. En revanche, PP-YOLOE+l atteint une mAP légèrement supérieure de 52,9 %, mais à une vitesse plus lente de 8,36 ms et avec des paramètres significativement plus élevés (52,2M contre 36,9M). Cela met en évidence l'efficacité supérieure de YOLOv7 en termes d'utilisation des paramètres et de vitesse d'inférence pour des niveaux de précision comparables. Bien que PP-YOLOE+x repousse les limites de la précision, il le fait au prix de près du double des paramètres des modèles YOLO comparables.

L'efficacité compte

Pour les déploiements edge AI où la mémoire et le calcul sont limités, le nombre de paramètres et les FLOPs plus faibles des architectures YOLO se traduisent souvent par un fonctionnement plus froid et une consommation d'énergie plus faible par rapport aux alternatives plus lourdes.

L'avantage Ultralytics : pourquoi moderniser ?

Bien que YOLOv7 et PP-YOLOE+ soient des modèles performants, le domaine de la vision par ordinateur évolue rapidement. L'adoption des derniers modèles Ultralytics, tels que YOLO11, offre des avantages distincts qui vont au-delà des simples mesures.

1. Expérience utilisateur simplifiée

Ultralytics privilégie la facilité d'utilisation. Contrairement aux fichiers de configuration complexes et à la gestion des dépendances souvent requis par d'autres frameworks, les modèles Ultralytics peuvent être utilisés avec quelques lignes de Python. Cela réduit la barrière à l'entrée pour les développeurs et accélère le cycle de déploiement des modèles.

2. Écosystème unifié et polyvalence

Les modèles Ultralytics modernes ne se limitent pas à la détection d'objets. Ils prennent en charge nativement un large éventail de tâches dans un seul framework :

Cette polyvalence permet aux équipes de se standardiser sur une seule bibliothèque pour plusieurs tâches de vision par ordinateur, ce qui simplifie la maintenance.

3. Efficacité de l'entraînement et mémoire

Les modèles Ultralytics sont conçus pour l'efficacité de la mémoire. Ils nécessitent généralement moins de VRAM pendant l'entraînement par rapport aux architectures plus anciennes ou aux modèles basés sur des transformateurs comme RT-DETR. Cela permet d'entraîner des tailles de lots plus importantes sur les GPU grand public standard, ce qui rend la création de modèles hautes performances accessible à un plus grand nombre de chercheurs.

4. Exemple de code : La manière moderne

L'exécution de l'inférence avec un modèle Ultralytics moderne est intuitive. Vous trouverez ci-dessous un exemple complet et exécutable utilisant YOLO11, qui montre le peu de lignes de code nécessaires pour charger un modèle pré-entraîné et exécuter la prédiction.

from ultralytics import YOLO

# Load the YOLO11n model (nano version for speed)
model = YOLO("yolo11n.pt")

# Run inference on a local image
# This automatically downloads the model weights if not present
results = model("https://ultralytics.com/images/bus.jpg")

# Process results
for result in results:
    boxes = result.boxes  # Boxes object for bbox outputs
    result.show()  # Display results on screen
    result.save(filename="result.jpg")  # Save results to disk

5. Écosystème bien maintenu

Choisir Ultralytics, c'est rejoindre une communauté dynamique. Grâce à des mises à jour fréquentes, une documentation complète et des intégrations avec des outils MLOps comme Ultralytics HUB, les développeurs sont pris en charge tout au long du cycle de vie de leur projet d'IA.

Conclusion

YOLOv7 et PP-YOLOE+ ont tous deux apporté des contributions significatives au domaine de la détection d'objets. YOLOv7 excelle dans la fourniture d'une inférence à haute vitesse sur le matériel GPU grâce à son architecture E-ELAN efficace. PP-YOLOE+ offre une alternative robuste sans ancrage qui est particulièrement forte au sein de l'écosystème PaddlePaddle.

Cependant, pour les développeurs à la recherche d'une solution à l'épreuve du temps qui équilibre les performances de pointe avec une facilité d'utilisation inégalée, Ultralytics YOLO11 est le choix recommandé. Son intégration dans un écosystème complet, sa prise en charge des tâches multimodales et son efficacité supérieure en font la plateforme idéale pour créer des applications de vision par ordinateur évolutives en 2025 et au-delà.

Explorer d'autres modèles

Élargissez votre compréhension du paysage de la détection d'objets grâce à ces comparaisons :


Commentaires