YOLOv10 EfficientDet : comparaison des architectures de détection d'objets en temps réel
Le choix du réseau neuronal optimal pour la détection d'objets est une décision cruciale qui détermine le succès des systèmes modernes de vision par ordinateur. Deux architectures importantes qui ont considérablement influencé ce domaine sont YOLOv10 et EfficientDet. Bien que les deux visent à maximiser la précision tout en minimisant la charge de calcul, elles adoptent des approches architecturales très différentes pour atteindre ces objectifs.
Ce guide complet explore leurs conceptions uniques, leurs méthodologies d'entraînement et leurs caractéristiques de déploiement, aidant ainsi les développeurs et les ingénieurs en apprentissage automatique à prendre des décisions basées sur les données pour les applications d'IA visuelle. Nous examinerons leurs performances sur différents types de matériel, des appareils embarqués à l'IA de pointe aux puissants GPU cloud.
YOLOv10: le pionnier NMS
Développé pour repousser les limites de la latence en temps réel, YOLOv10 a abordé l'un des goulots d'étranglement les plus persistants de la famille YOLO : la suppression non maximale (NMS). En éliminant cette étape de post-traitement, le modèle atteint une latence hautement prévisible, ce qui est essentiel pour les véhicules autonomes et la robotique à grande vitesse.
Innovations architecturales
YOLOv10 des attributions doubles cohérentes pour un entraînement NMS. Pendant l'entraînement, il exploite à la fois les attributions d'étiquettes un-à-plusieurs et un-à-un, ce qui permet au réseau d'apprendre des représentations riches tout en produisant nativement un seul meilleur cadre de sélection par objet pendant l'inférence. L'architecture intègre également une conception holistique axée sur l'efficacité et la précision, rationalisant la tête de classification et réduisant la redondance computationnelle présente dans les itérations précédentes.
Détails du modèle
- Auteurs : Ao Wang, Hui Chen, Lihao Liu, et al.
- Organisation :Tsinghua University
- Date : 2024-05-23
- Article :YOLOv10 : Détection d'objets en temps réel de bout en bout
- GitHub :THU-MIG/yolov10
- Docs :Documentation YOLOv10
Déploiement Optimisé
Puisque YOLOv10 supprime l'étape NMS, il est intrinsèquement plus facile de l'exporter vers des formats tels que le format ONNX et NVIDIA TensorRT sans dépendre de plugins d'exécution personnalisés pour le filtrage des boîtes englobantes.
Points forts :
- Inférence prévisible: La suppression de la NMS garantit des temps d'inférence constants quel que soit le nombre d'objets dans la scène.
- Consommation de mémoire réduite : Comparé aux modèles basés sur des transformeurs comme RT-DETR, YOLOv10 présente des exigences de mémoire significativement plus faibles pendant l'entraînement et l'inférence.
- Excellent compromis vitesse/précision : Spécialement optimisé pour les scénarios à faible latence sans sacrifier les métriques de performance.
Faiblesses :
- Focalisation sur une seule tâche: Contrairement à l'écosystème Ultralytics plus large, le dépôt original de YOLOv10 est fortement axé sur la detect, manquant de support natif pour la segmentation d'instances ou l'estimation de pose.
EfficientDet : évolutif et équilibré
Présenté par Google , EfficientDet aborde la détection d'objets sous l'angle de la mise à l'échelle systématique des réseaux. Il s'appuie sur la classification d'images EfficientNet et introduit un nouveau mécanisme de fusion des caractéristiques.
Innovations architecturales
Le cœur d'EfficientDet est le réseau pyramidal bidirectionnel (BiFPN), qui permet une fusion facile et rapide des caractéristiques à plusieurs échelles. Contrairement aux FPN traditionnels qui ne font que sommer les caractéristiques de haut en bas, le BiFPN introduit des connexions bidirectionnelles entre les échelles et des poids entraînables pour apprendre l'importance des différentes caractéristiques d'entrée. De plus, EfficientDet utilise une méthode de mise à l'échelle composite qui adapte uniformément la résolution, la profondeur et la largeur pour tous les réseaux dorsaux, les réseaux de caractéristiques et les réseaux de prédiction de boîtes/classes.
Détails du modèle
- Auteurs : Mingxing Tan, Ruoming Pang et Quoc V. Le
- Organisation :Google Brain
- Date : 2019-11-20
- Article :EfficientDet : Détection d’objets évolutive et efficace
- GitHub :Google EfficientDet
Points forts :
- Haute efficacité : Excellent rapport paramètre/précision, rendant le plus petit
-d0à-d2variantes très légères. - Mise à l'échelle structurée: La mise à l'échelle composée permet aux utilisateurs de choisir facilement une taille de modèle qui correspond à leur budget de calcul exact.
Faiblesses :
- Intégration de framework héritée : L'implémentation originale repose fortement sur d'anciennes versions de TensorFlow, ce qui peut compliquer les pipelines de déploiement modernes.
- Entraînement plus lent: L'entraînement d'EfficientDet à partir de zéro est notoirement lent et nécessite un réglage minutieux des hyperparamètres, comparé à la convergence rapide des architectures YOLO.
- Vitesse d'Inférence : Bien qu'efficaces en termes de paramètres, les opérations BiFPN complexes entraînent souvent des vitesses d'inférence réelles plus lentes sur du matériel standard par rapport aux modèles YOLO hautement optimisés.
En savoir plus sur EfficientDet
Performances et analyses comparatives
Le véritable test de ces modèles réside dans leurs performances empiriques sur des benchmarks standard tels que COCO . Le tableau ci-dessous illustre les différences critiques en termes de nombre de paramètres, d'opérations en virgule flottante (FLOP) et de latence d'inférence sur les GPUNVIDIA .
| Modèle | Taille (pixels) | mAPval 50-95 | Vitesse CPU ONNX (ms) | Vitesse T4 TensorRT10 (ms) | paramètres (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| YOLOv10n | 640 | 39.5 | - | 1.56 | 2.3 | 6.7 |
| YOLOv10s | 640 | 46.7 | - | 2.66 | 7.2 | 21.6 |
| YOLOv10m | 640 | 51.3 | - | 5.48 | 15.4 | 59.1 |
| YOLOv10b | 640 | 52.7 | - | 6.54 | 24.4 | 92.0 |
| YOLOv10l | 640 | 53.3 | - | 8.33 | 29.5 | 120.3 |
| YOLOv10x | 640 | 54.4 | - | 12.2 | 56.9 | 160.4 |
| EfficientDet-d0 | 640 | 34.6 | 10.2 | 3.92 | 3.9 | 2.54 |
| EfficientDet-d1 | 640 | 40.5 | 13.5 | 7.31 | 6.6 | 6.1 |
| EfficientDet-d2 | 640 | 43.0 | 17.7 | 10.92 | 8.1 | 11.0 |
| EfficientDet-d3 | 640 | 47.5 | 28.0 | 19.59 | 12.0 | 24.9 |
| EfficientDet-d4 | 640 | 49.7 | 42.8 | 33.55 | 20.7 | 55.2 |
| EfficientDet-d5 | 640 | 51.5 | 72.5 | 67.86 | 33.7 | 130.0 |
| EfficientDet-d6 | 640 | 52.6 | 92.8 | 89.29 | 51.9 | 226.0 |
| EfficientDet-d7 | 640 | 53.7 | 122.0 | 128.07 | 51.9 | 325.0 |
Comme indiqué ci-dessus, YOLOv10 conserve un avantage significatif en termes de vitesse d'inférence brute. Par exemple, YOLOv10-S atteint 46,7 mAP avec une latence TensorRT de seulement 2,66ms, tandis qu'EfficientDet-d3 atteint un mAP similaire de 47,5 mais prend près de 20ms, rendant YOLOv10 largement supérieur pour le streaming vidéo en temps réel ou les chaînes de fabrication rapides.
Cas d'utilisation et recommandations
Le choix entre YOLOv10 et EfficientDet dépend des exigences spécifiques de votre projet, des contraintes de déploiement et des préférences de l'écosystème.
Quand choisir YOLOv10
YOLOv10 un choix judicieux pour :
- Détection en temps réel sans NMS : Applications qui bénéficient d'une détection de bout en bout sans Non-Maximum Suppression, réduisant ainsi la complexité du déploiement.
- Compromis équilibrés vitesse-précision: Projets nécessitant un équilibre solide entre la vitesse d'inférence et la précision de détection sur diverses échelles de modèles.
- Applications à latence constante : Scénarios de déploiement où des temps d'inférence prévisibles sont critiques, tels que la robotique ou les systèmes autonomes.
Quand choisir EfficientDet
EfficientDet est recommandé pour :
- Google et TPU : systèmes profondément intégrés aux API Google Vision ou à TPU , où EfficientDet dispose d'une optimisation native.
- Recherche sur la mise à l'échelle composée : Évaluation comparative académique axée sur l'étude des effets de la mise à l'échelle équilibrée de la profondeur, de la largeur et de la résolution du réseau.
- Déploiement mobile via TFLite : Projets nécessitant spécifiquement l'exportation TensorFlow Lite pour les appareils Android ou Linux embarqués.
Quand choisir Ultralytics YOLO26)
Pour la plupart des nouveaux projets, Ultralytics offre la meilleure combinaison entre performances et expérience développeur :
- Déploiement Edge sans NMS : Applications nécessitant une inférence cohérente et à faible latence, sans la complexité du post-traitement de la Non-Maximum Suppression.
- Environnements uniquement CPU : Les appareils sans accélération GPU dédiée, où l'inférence CPU de YOLO26, jusqu'à 43 % plus rapide, offre un avantage décisif.
- Détection de petits objets: Scénarios difficiles comme l'imagerie aérienne par drone ou l'analyse de capteurs IoT où ProgLoss et STAL augmentent significativement la précision sur les objets minuscules.
La norme moderne : découvrez Ultralytics
Alors que YOLOv10 le paradigme révolutionnaire NMS et qu'EfficientDet a démontré une évolutivité fondée sur des principes, le paysage de la vision par ordinateur a continué d'évoluer. Pour les développeurs qui lancent aujourd'hui de nouveaux projets, Ultralytics représente incontestablement l'état de l'art. Lancé en janvier 2026, il combine le meilleur de tous les mondes dans un package hautement perfectionné et prêt à l'emploi au sein de la Ultralytics .
Pourquoi YOLO26 surpasse la concurrence
- Conception de bout en bout sans NMS : YOLO26 adopte nativement l'architecture de bout en bout sans NMS, initiée par YOLOv10, rationalisant le déploiement et accélérant l'inférence.
- Jusqu'à 43 % plus rapide pour l'inférence CPU : Pour les appareils périphériques dépourvus d'accélérateurs dédiés, YOLO26 est spécifiquement optimisé pour fonctionner efficacement sur les CPU standards.
- Optimiseur MuSGD avancé : Inspiré par les innovations en matière d'entraînement des LLM, YOLO26 utilise un hybride de SGD et de Muon pour un entraînement incroyablement stable et une convergence rapide, améliorant considérablement l'efficacité de l'entraînement par rapport à EfficientDet.
- ProgLoss + STAL: Ces fonctions de perte améliorées apportent des améliorations remarquables dans la reconnaissance des petits objets, un point faible traditionnel pour YOLOv10 et EfficientDet.
- Suppression de la DFL : En supprimant la Distribution Focal Loss, YOLO26 s'exporte de manière transparente vers presque tous les formats matériels, y compris OpenVINO et CoreML.
De plus, YOLO26 offre une polyvalence inégalée. Alors qu'EfficientDet et YOLOv10 strictement des modèles de détection, YOLO26 gère de manière transparente les cadres de sélection orientés, la classification d'images et la segmentation d'instances à l'aide du même Python intuitif Ultralytics .
Écosystème bien entretenu
Les modèles YOLO11 et YOLOv8 restent entièrement pris en charge au sein de l'écosystème Ultralytics. Pour la meilleure combinaison de performances, de stabilité et de support à long terme, nous recommandons d'utiliser les modèles Ultralytics officiellement maintenus.
Facilité d'utilisation avec Ultralytics
L'écosystème bien entretenu fourni par Ultralytics une expérience de développement fluide. La formation d'un modèle, sa validation et son exportation vers TensorRT ne nécessitent que quelques lignes de code.
from ultralytics import YOLO
# Load a pre-trained YOLOv10 model (or upgrade to YOLO26 natively)
model = YOLO("yolov10n.pt")
# Train the model efficiently on a custom dataset
model.train(data="coco8.yaml", epochs=50, imgsz=640)
# Run inference and immediately visualize results
results = model("https://ultralytics.com/images/bus.jpg")
results[0].show()
# Export for rapid deployment
model.export(format="engine", half=True)
Conclusion
Lorsque l'on compare YOLOv10 EfficientDet, le choix dépend fortement de vos préférences en matière de framework et de vos contraintes de vitesse. EfficientDet offre une approche structurée de la mise à l'échelle des modèles au sein de TensorFlow . Cependant, YOLOv10 des performances en temps réel supérieures, une utilisation moindre de la mémoire et un chemin de déploiement plus simple grâce à son architecture NMS.
Pour bénéficier d'un équilibre optimal entre performances, facilité d'utilisation et polyvalence multitâche, il est fortement recommandé de passer à la Ultralytics et d'utiliser YOLO26. Cette solution reprend les innovations NMS de YOLOv10, applique des techniques d'entraînement de pointe telles que l'optimiseur MuSGD, et les intègre dans un cadre open source robuste soutenu par une vaste communauté mondiale.