Link to this sectionYOLOv10 vs DAMO-YOLO#
Lors de la création de pipelines de computer vision modernes, il est essentiel de choisir la bonne architecture de détection d'objets en temps réel. Dans cette analyse technique complète, nous explorons les architectures, les mesures de performance et les cas d'utilisation idéaux pour YOLOv10 et DAMO-YOLO. Bien que les deux modèles représentent des avancées majeures en matière de détection d'objets, ils suivent des voies architecturales différentes pour atteindre leurs objectifs.
Que ton projet nécessite un déploiement sur du matériel d'edge AI contraint ou qu'il exige une précision maximale sur des GPU cloud, comprendre les nuances de ces architectures t'aidera à prendre une décision éclairée.
Link to this sectionExploration de YOLOv10#
Introduit par des chercheurs de l'Université Tsinghua, YOLOv10 a révolutionné la famille YOLO en introduisant une approche native de bout en bout, éliminant efficacement le besoin de Non-Maximum Suppression (NMS) lors du post-traitement.
Détails sur YOLOv10 :
- Auteurs : Ao Wang, Hui Chen, Lihao Liu, et al.
- Organisation : Université Tsinghua
- Date : 23/05/2024
- Arxiv : https://arxiv.org/abs/2405.14458
- GitHub : https://github.com/THU-MIG/yolov10
- Docs : https://docs.ultralytics.com/models/yolov10/
Link to this sectionFonctionnalités architecturales clés#
L'innovation principale de YOLOv10 est sa stratégie de Consistent Dual Assignments pour un entraînement sans NMS. Les détecteurs d'objets traditionnels dépendent fortement du NMS pour filtrer les boîtes englobantes qui se chevauchent, ce qui introduit une latence imprévisible—un goulot d'étranglement important pour les applications en temps réel comme les autonomous vehicles et la robotique à haute vitesse. En prédisant une seule boîte englobante optimale par objet directement, YOLOv10 permet une inférence prévisible à très faible latence.
De plus, le modèle utilise une conception Holistic Efficiency-Accuracy Driven Design. L'architecture optimise divers composants, notamment une tête de classification légère et un sous-échantillonnage découplé spatial-canal, ce qui réduit considérablement la redondance computationnelle. Cela aboutit à une architecture qui affiche un nombre de paramètres inférieur et moins de FLOPs tout en conservant un mean Average Precision (mAP) compétitif.
Link to this sectionExemple d'utilisation#
YOLOv10 est profondément intégré à l'écosystème Ultralytics, ce qui le rend incroyablement facile à utiliser via le Ultralytics Python package.
from ultralytics import YOLO
# Load a pre-trained YOLOv10 nano model
model = YOLO("yolov10n.pt")
# Train the model on the COCO8 dataset
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)
# Run inference on a test image
results = model("https://ultralytics.com/images/bus.jpg")
# Export the model to TensorRT format
model.export(format="engine", quantize=16)Link to this sectionExploration de DAMO-YOLO#
Développé par le groupe Alibaba, DAMO-YOLO se concentre sur la découverte de structures réseau hautement efficaces grâce à la recherche automatisée d'architecture neuronale (NAS), visant à repousser la frontière de Pareto en termes de vitesse et de précision.
Détails de DAMO-YOLO :
- Auteurs : Xianzhe Xu, Yiqi Jiang, Weihua Chen, Yilun Huang, Yuan Zhang, et Xiuyu Sun
- Organisation : Alibaba Group
- Date : 23-11-2022
- Arxiv : https://arxiv.org/abs/2211.15444v2
- GitHub : https://github.com/tinyvision/DAMO-YOLO
Link to this sectionFonctionnalités architecturales clés#
DAMO-YOLO introduit plusieurs nouvelles technologies adaptées aux applications industrielles. La base du modèle est son backbone MAE-NAS, généré via une recherche évolutionnaire multi-objectifs. Ce processus automatisé découvre des structures de backbone qui respectent strictement des budgets computationnels prédéfinis, trouvant un équilibre fin entre précision et latence d'inférence.
De plus, l'architecture utilise un neck Efficient RepGFPN. Ce réseau de pyramide de caractéristiques est conçu pour améliorer la fusion des caractéristiques à différentes échelles, ce qui est essentiel pour des tâches complexes comme l'aerial imagery analysis où la taille des objets varie radicalement. Pour compléter cela, DAMO-YOLO met en œuvre une ZeroHead, une tête de détection minimaliste qui réduit considérablement la complexité des couches de prédiction finales, économisant un temps de calcul précieux lors de l'inférence.
Link to this sectionComparaison des performances#
Lors de l'évaluation des architectures de détection d'objets, il est primordial de trouver le bon compromis entre la vitesse d'inférence, l'efficacité des paramètres et la précision de la détection. Le tableau ci-dessous compare les performances de YOLOv10 et DAMO-YOLO selon leurs tailles de modèles respectives.
| Modèle | taille (pixels) | mAPval 50-95 | Vitesse CPU ONNX (ms) | Vitesse T4 TensorRT10 (ms) | params (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 |
| DAMO-YOLOt | 640 | 42.0 | - | 2.32 | 8.5 | 18.1 |
| DAMO-YOLOs | 640 | 46.0 | - | 3.45 | 16.3 | 37.8 |
| DAMO-YOLOm | 640 | 49.2 | - | 5.09 | 28.2 | 61.8 |
| DAMO-YOLOl | 640 | 50.8 | - | 7.18 | 42.1 | 97,3 |
Comme observé dans les benchmarks, YOLOv10 offre constamment des profils de latence exceptionnels sur TensorRT, en particulier dans sa variante nano, nécessitant beaucoup moins de paramètres et de FLOPs que les modèles comparables de DAMO-YOLO. Bien que DAMO-YOLO offre un mAP solide dans sa variante tiny, l'efficacité des paramètres et la latence d'inférence de la famille YOLOv10 offrent un avantage distinct pour les environnements de déploiement contraints.
Link to this sectionCas d'utilisation et recommandations#
Le choix entre YOLOv10 et DAMO-YOLO dépend des exigences spécifiques de ton projet, des contraintes de déploiement et de tes préférences en matière d'écosystème.
Link to this sectionQuand choisir YOLOv10#
YOLOv10 est un choix solide pour :
- Détection temps réel sans NMS : Applications bénéficiant d'une détection de bout en bout sans NMS (Non-Maximum Suppression), ce qui réduit la complexité du déploiement.
- Compromis vitesse-précision équilibré : Projets nécessitant un bon équilibre entre la vitesse d'inférence et la précision de détection pour différentes tailles de modèles.
- Applications à latence constante : Scénarios de déploiement où des temps d'inférence prévisibles sont essentiels, comme dans la robotique ou les systèmes autonomes.
Link to this sectionQuand choisir DAMO-YOLO#
DAMO-YOLO est recommandé pour :
- Analytique vidéo à haut débit : Traitement de flux vidéo FPS élevés sur une infrastructure GPU NVIDIA fixe où le débit par lot est la mesure principale.
- Lignes de fabrication industrielle : Scénarios avec des contraintes strictes de latence GPU sur du matériel dédié, comme l'inspection qualité en temps réel sur les lignes d'assemblage.
- Recherche sur la recherche d'architecture neuronale : Étude des effets de la recherche d'architecture automatisée (MAE-NAS) et des backbones reparamétrés efficaces sur les performances de détection.
Link to this sectionQuand choisir Ultralytics (YOLO26)#
Pour la plupart des nouveaux projets, Ultralytics YOLO26 offre la meilleure combinaison de performance et d'expérience développeur :
- Déploiement en périphérie sans NMS : Applications nécessitant une inférence cohérente et à faible latence sans la complexité du post-traitement par Non-Maximum Suppression.
- Environnements CPU uniquement : Appareils sans accélération GPU dédiée, où l'inférence CPU jusqu'à 43 % plus rapide de YOLO26 offre un avantage décisif.
- Détection de petits objets : Scénarios difficiles comme l'imagerie par drone aérien ou l'analyse de capteurs IoT où ProgLoss et STAL améliorent considérablement la précision sur les objets minuscules.
Link to this sectionL'avantage Ultralytics#
Bien que les deux modèles soient techniquement impressionnants, choisir une architecture pour la production implique de regarder au-delà des mesures brutes. Construire avec des modèles pris en charge nativement par l'Ultralytics ecosystem offre des avantages inégalés, tant pour les développeurs que pour les chercheurs.
Link to this sectionFacilité d'utilisation et écosystème bien maintenu#
Contrairement aux dépôts académiques autonomes qui sont souvent abandonnés, Ultralytics offre un écosystème robuste et activement maintenu. La mise en place d'environnements complexes pour des modèles s'appuyant fortement sur des pipelines NAS peut être intimidante. En revanche, Ultralytics fournit une API Python standardisée et intuitive ainsi qu'une CLI puissante, soutenues par une documentation complète. Cela réduit radicalement le temps de mise sur le marché pour tes solutions de vision personnalisées.
Link to this sectionEfficacité de l'entraînement et exigences en mémoire#
L'entraînement de grands modèles peut rapidement devenir coûteux en calcul. Les architectures Ultralytics YOLO sont historiquement connues pour leur faible empreinte mémoire CUDA lors de l'entraînement et de l'inférence. Cette efficacité permet aux développeurs d'entraîner des modèles sur du matériel grand public ou des instances cloud rentables sans rencontrer les erreurs de mémoire insuffisante courantes lors du travail avec des modèles basés sur les Transformer comme RT-DETR.
Ultralytics s'intègre nativement aux meilleurs outils MLOps. Tu peux facilement suivre la progression de l'entraînement de ton modèle en utilisant les intégrations avec Weights & Biases, Comet ou ClearML sans aucune ligne de code supplémentaire.
Link to this sectionPolyvalence des tâches#
Une limitation importante de nombreux modèles de détection spécialisés est leur champ d'application étroit. Au sein de l'écosystème Ultralytics, tu ne te limites pas à la simple détection d'objets. Les outils s'étendent de manière transparente à de multiples computer vision tasks, notamment l'instance segmentation, l'image classification, le pose estimation et la oriented bounding box (OBB) detection.
Link to this sectionRegard vers l'avenir : L'évolution de YOLO26#
Alors que YOLOv10 a été le pionnier de l'inférence sans NMS et que DAMO-YOLO a démontré la puissance du NAS, le domaine de la vision par ordinateur évolue rapidement. Pour les développeurs à la recherche de la solution ultime à la pointe de la technologie, nous te recommandons de consulter Ultralytics YOLO26.
Sorti en tant que successeur définitif de YOLO11, YOLO26 s'appuie sur les bases sans NMS établies par YOLOv10, mais va beaucoup plus loin.
Les avancées clés de YOLO26 incluent :
- Inférence CPU jusqu'à 43 % plus rapide : Spécifiquement optimisée pour l'edge computing et les appareils à faible consommation.
- Suppression du DFL : La Distribution Focal Loss a été supprimée, garantissant des exports plus simples et une compatibilité améliorée avec diverses cibles de déploiement.
- Optimiseur MuSGD : Un hybride de SGD et Muon, apportant une stabilité d'entraînement LLM avancée et une convergence plus rapide directement dans la vision par ordinateur.
- ProgLoss + STAL : Des fonctions de perte radicalement améliorées qui offrent des améliorations notables dans la reconnaissance de petits objets, essentielle pour des cas d'utilisation comme l'agriculture et la télédétection.
En utilisant la nouvelle Ultralytics Platform, tu peux facilement annoter, entraîner et déployer des modèles de nouvelle génération comme YOLO26 en quelques clics, garantissant que ton pipeline de vision par ordinateur est à la fois à la pointe et pérenne.