DAMO-YOLO vs. YOLOv10 : Une comparaison technique
Choisir le bon modèle de détection d'objets est une décision cruciale qui équilibre la précision, la vitesse et la complexité du déploiement. Cette comparaison fournit une analyse technique détaillée de DAMO-YOLO, un modèle innovant du groupe Alibaba, et YOLOv10, la dernière évolution de la série YOLO, qui est entièrement intégrée à l'écosystème Ultralytics. Nous explorerons leurs architectures, leurs mesures de performance et leurs cas d'utilisation idéaux pour vous aider à sélectionner le meilleur modèle pour votre projet.
DAMO-YOLO
DAMO-YOLO est un modèle de détection d'objets haute performance développé par Alibaba Group. Il introduit plusieurs nouvelles techniques pour atteindre un bon équilibre entre la vitesse et la précision. Le modèle exploite la recherche d'architecture neuronale (NAS) pour optimiser ses composants, ce qui se traduit par une architecture efficace et puissante.
- Auteurs : Xianzhe Xu, Yiqi Jiang, Weihua Chen, Yilun Huang, Yuan Zhang et Xiuyu Sun
- Organisation : Alibaba Group
- Date : 2022-11-23
- Arxiv : https://arxiv.org/abs/2211.15444
- GitHub : https://github.com/tinyvision/DAMO-YOLO
- Documentation : https://github.com/tinyvision/DAMO-YOLO/blob/master/README.md
Architecture et principales fonctionnalités
L’architecture de DAMO-YOLO se distingue par plusieurs innovations clés conçues pour repousser les limites de la détection d’objets :
- Colonne vertébrale Neural Architecture Search (NAS) : DAMO-YOLO utilise une colonne vertébrale générée par NAS, spécialement conçue pour les tâches de détection d’objets. Ce processus de recherche automatisé permet de découvrir des réseaux d’extraction de caractéristiques plus efficaces et plus puissants que ceux conçus manuellement.
- Neck RepGFPN efficace : Il intègre une structure de neck efficace appelée RepGFPN (Reparameterized Generalized Feature Pyramid Network). Ce composant fusionne efficacement les caractéristiques provenant de différentes échelles du backbone, améliorant ainsi la capacité du modèle à détecter des objets de différentes tailles.
- ZeroHead : Le modèle introduit une conception « ZeroHead », qui simplifie la tête de détection en découplant les tâches de classification et de régression tout en maintenant des performances élevées. Cette approche réduit la surcharge de calcul lors de la phase de détection finale.
- Attribution de label AlignedOTA : DAMO-YOLO utilise AlignedOTA (Aligned Optimal Transport Assignment), une stratégie avancée d'attribution de labels qui améliore l'alignement entre les boîtes englobantes prédites et les objets de vérité terrain pendant l'entraînement, ce qui permet d'obtenir une meilleure précision de localisation.
Points forts et faiblesses
Points forts
- Haute précision : La combinaison d'un backbone alimenté par NAS et de composants avancés comme RepGFPN et AlignedOTA permet à DAMO-YOLO d'atteindre des scores mAP élevés.
- Architecture innovante : Le modèle introduit plusieurs concepts novateurs qui contribuent au domaine plus vaste de la recherche en matière de détection d'objets.
- Bon compromis vitesse-précision : Les modèles DAMO-YOLO offrent un équilibre compétitif entre la vitesse d'inférence et la précision de la détection, ce qui les rend adaptés à diverses applications.
Faiblesses
- Complexité et écosystème : L'architecture, bien que puissante, peut être plus complexe à comprendre et à modifier. Elle est principalement prise en charge dans son propre référentiel GitHub, sans l'écosystème étendu, la documentation et le support communautaire que l'on trouve avec des modèles comme YOLOv10.
- Surcharge d'entraînement : Les composants avancés et les stratégies d'entraînement peuvent nécessiter des connaissances plus spécialisées et des cycles d'entraînement potentiellement plus longs par rapport aux modèles plus rationalisés.
Cas d'utilisation idéaux
DAMO-YOLO est bien adapté aux scénarios où l'obtention d'une précision maximale avec une architecture novatrice est une priorité, et où l'équipe de développement possède l'expertise nécessaire pour gérer sa complexité.
- Recherche et développement : Ses composants innovants en font un excellent modèle pour la recherche universitaire et pour les équipes qui explorent des techniques de détection de pointe.
- Automatisation industrielle : Dans des environnements contrôlés comme la fabrication, où la détection de défauts de haute précision est cruciale, la précision de DAMO-YOLO peut être un atout considérable.
- Imagerie à haute résolution : Les applications impliquant une analyse détaillée d'images à haute résolution, telles que l'analyse d'imagerie satellite, peuvent bénéficier de ses capacités robustes de fusion de caractéristiques.
YOLOv10
Ultralytics YOLOv10 est la dernière génération de la célèbre famille YOLO, développée par des chercheurs de l'université de Tsinghua. Elle marque un progrès significatif en permettant la détection d'objets en temps réel et de bout en bout. Une innovation clé est sa conception sans NMS, qui élimine le goulot d'étranglement du post-traitement et réduit la latence d'inférence. YOLOv10 est intégré de manière transparente dans l'écosystème Ultralytics, offrant une facilité d'utilisation et une efficacité inégalées.
- Auteurs : Ao Wang, Hui Chen, Lihao Liu, et al.
- Organisation : Université de Tsinghua
- Date : 2024-05-23
- Arxiv: https://arxiv.org/abs/2405.14458
- GitHub : https://github.com/THU-MIG/yolov10
- Documentation : https://docs.ultralytics.com/models/yolov10/
Architecture et performance
YOLOv10 introduit une conception holistique axée sur l'efficacité et la précision. Son architecture est optimisée de bout en bout pour réduire la redondance de calcul et améliorer les capacités de détection.
- Formation sans NMS : En utilisant des affectations doubles cohérentes, YOLOv10 élimine le besoin de suppression non maximale (NMS) pendant l’inférence. Cela réduit non seulement la latence d’inférence, mais simplifie également le pipeline de déploiement, le rendant véritablement de bout en bout.
- Tête de classification légère : Le modèle intègre une tête de classification légère, ce qui réduit la surcharge de calcul sans sacrifier la précision.
- Sous-échantillonnage spatial-canal découplé : Cette technique préserve des informations sémantiques plus riches pendant le sous-échantillonnage, améliorant ainsi les performances du modèle, en particulier pour les petits objets.
Les mesures de performance ci-dessous démontrent la supériorité de YOLOv10. Par exemple, YOLOv10s atteint un mAP supérieur à DAMO-YOLOs (46,7 contre 46,0) tout en étant significativement plus rapide et plus efficace, avec moins de la moitié des paramètres et des FLOPs. À toutes les échelles, les modèles YOLOv10 offrent systématiquement une meilleure efficacité des paramètres et du calcul, ce qui se traduit par des vitesses d'inférence plus rapides pour un niveau de précision donné.
Modèle | Taille (pixels) |
mAPval 50-95 |
Vitesse CPU ONNX (ms) |
Vitesse T4 TensorRT10 (ms) |
paramètres (M) |
FLOPs (B) |
---|---|---|---|---|---|---|
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 |
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 |
Points forts et faiblesses
Points forts
- Efficacité à la pointe de la technologie : YOLOv10 établit une nouvelle norme pour le compromis vitesse-précision. Sa conception sans NMS offre un avantage significatif dans les scénarios d'inférence en temps réel.
- Facilité d'utilisation : En tant que partie intégrante de l'écosystème Ultralytics, YOLOv10 bénéficie d'une API Python simple, d'une documentation exhaustive et d'une expérience utilisateur simplifiée.
- Écosystème bien maintenu : Les utilisateurs ont accès à Ultralytics HUB pour l'entraînement sans code, un développement actif, un fort soutien de la communauté et une multitude de ressources.
- Efficacité de l'entraînement : Le modèle offre des processus d'entraînement efficaces avec des poids pré-entraînés facilement disponibles, ce qui réduit considérablement le temps de développement.
- Besoins en mémoire inférieurs : YOLOv10 est conçu pour être efficace sur le plan du calcul, nécessitant moins de mémoire CUDA pendant l’entraînement et l’inférence par rapport aux architectures plus complexes.
Faiblesses
- Modèle plus récent : En tant que modèle très récent, le nombre de tutoriels tiers et de projets communautaires est encore en croissance, bien qu'il soit rapidement adopté en raison de son intégration au sein du framework Ultralytics populaire.
Cas d'utilisation idéaux
La vitesse, l'efficacité et la facilité d'utilisation exceptionnelles de YOLOv10 en font le choix idéal pour un large éventail d'applications réelles, en particulier celles nécessitant des performances en temps réel.
- IA en périphérie (Edge AI) : Les variantes petites et rapides (YOLOv10n, YOLOv10s) sont parfaites pour le déploiement sur des appareils périphériques aux ressources limitées tels que les téléphones mobiles, les drones et NVIDIA Jetson.
- Systèmes autonomes : Sa faible latence est essentielle pour les applications dans la robotique et les voitures autonomes, où des décisions rapides sont essentielles pour la sécurité et la navigation.
- Surveillance en temps réel : Idéal pour les systèmes de sécurité qui doivent détecter instantanément les menaces, comme dans la prévention du vol ou la surveillance des foules.
- Analyse de vente au détail : Peut être utilisé pour la gestion des stocks en temps réel et l’analyse du comportement des clients afin d’optimiser les opérations du magasin.
Conclusion
DAMO-YOLO et YOLOv10 sont tous deux des modèles de détection d'objets puissants qui représentent des avancées significatives dans le domaine. DAMO-YOLO se distingue par ses composants architecturaux innovants et sa grande précision, ce qui en fait un candidat idéal pour les projets axés sur la recherche et les applications industrielles spécialisées.
Cependant, pour la grande majorité des développeurs et des chercheurs, YOLOv10 est le choix supérieur. Il offre non seulement des performances de pointe avec une efficacité exceptionnelle, mais il est également accompagné des immenses avantages de l'écosystème Ultralytics. La combinaison de sa conception sans NMS de bout en bout, de sa facilité d'utilisation, de sa documentation complète, de sa formation efficace et de son support robuste fait de YOLOv10 une solution plus pratique, puissante et accessible pour la construction et le déploiement d'applications de vision par ordinateur performantes.
Pour ceux qui recherchent d'autres modèles très performants, pensez à explorer Ultralytics YOLOv8 pour sa polyvalence éprouvée et sa large adoption, ou le dernier YOLO11 pour des fonctionnalités encore plus avancées.