Passer au contenu

YOLOv6-3.0 vs EfficientDet : Équilibrer vitesse et précision dans la détection d'objets

Dans le paysage en rapide évolution de la vision par ordinateur, le choix de l'architecture de détection d'objets appropriée est essentiel au succès de votre projet. Cette comparaison se penche sur YOLOv6-3.0 et EfficientDet, deux modèles importants qui abordent le défi de la reconnaissance visuelle sous des angles distincts. Alors que EfficientDet se concentre sur l'efficacité des paramètres et l'évolutivité, YOLOv6-3.0 est conçu spécifiquement pour les applications industrielles où la latence d'inférence et la vitesse en temps réel sont non négociables.

Métriques de performance et analyse technique

La différence fondamentale entre ces deux architectures réside dans leur philosophie de conception. EfficientDet s'appuie sur un mécanisme sophistiqué de fusion de caractéristiques connu sous le nom de BiFPN, qui améliore la précision mais souvent au détriment de la vitesse de calcul sur les GPU. À l'inverse, YOLOv6-3.0 adopte une conception tenant compte du matériel, utilisant la reparamétrisation pour rationaliser les opérations pendant l'inférence, ce qui se traduit par un FPS (images par seconde) considérablement plus élevé.

Le tableau ci-dessous illustre ce compromis. Bien que EfficientDet-d7 atteigne un mAP élevé, sa latence est importante. En revanche, YOLOv6-3.0l offre une précision comparable avec des temps d'inférence considérablement réduits, ce qui le rend beaucoup plus adapté aux scénarios d'inférence en temps réel.

ModèleTaille
(pixels)
mAPval
50-95
Vitesse
CPU ONNX
(ms)
Vitesse
T4 TensorRT10
(ms)
paramètres
(M)
FLOPs
(B)
YOLOv6-3.0n64037.5-1.174.711.4
YOLOv6-3.0s64045.0-2.6618.545.3
YOLOv6-3.0m64050.0-5.2834.985.8
YOLOv6-3.0l64052.8-8.9559.6150.7
EfficientDet-d064034.610.23.923.92.54
EfficientDet-d164040.513.57.316.66.1
EfficientDet-d264043.017.710.928.111.0
EfficientDet-d364047.528.019.5912.024.9
EfficientDet-d464049.742.833.5520.755.2
EfficientDet-d564051.572.567.8633.7130.0
EfficientDet-d664052.692.889.2951.9226.0
EfficientDet-d764053.7122.0128.0751.9325.0

Optimisation des performances

Pour les déploiements industriels, la combinaison de YOLOv6-3.0 avec TensorRT peut entraîner des améliorations massives de la vitesse. La simplicité architecturale de YOLOv6 lui permet de s'adapter très efficacement aux instructions matérielles du GPU par rapport aux réseaux complexes de pyramides de caractéristiques que l'on trouve dans les anciens modèles.

YOLOv6-3.0 : Conçu pour l'industrie

YOLOv6-3.0 est un détecteur d'objets en une seule étape conçu pour combler le fossé entre la recherche académique et les exigences industrielles. Il privilégie la vitesse sans sacrifier la précision nécessaire pour des tâches telles que l'inspection de la qualité.

Auteurs : Chuyi Li, Lulu Li, Yifei Geng, Hongliang Jiang, Meng Cheng, Bo Zhang, Zaidan Ke, Xiaoming Xu et Xiangxiang Chu
Organisation :Meituan
Date : 2023-01-13
Arxiv :YOLOv6 v3.0 : Un rechargement à grande échelle
GitHub :meituan/YOLOv6
Docs :Documentation YOLOv6

Architecture et points forts

Le cœur de YOLOv6-3.0 est son backbone efficace et sa conception "RepOpt". En utilisant la reparamétrisation, le modèle découple les structures multi-branches du temps d'entraînement des structures à branche unique du temps d'inférence. Il en résulte un modèle facile à entraîner avec des gradients riches, mais extrêmement rapide à exécuter.

  • Auto-Distillation : La stratégie d'entraînement utilise l'auto-distillation, où la prédiction du modèle lui-même agit comme une étiquette souple pour guider l'apprentissage, améliorant ainsi la précision sans données supplémentaires.
  • Prise en charge de la quantification : Il a été conçu en tenant compte de la quantification du modèle, ce qui permet de minimiser les pertes de précision lors de la conversion en INT8 pour le déploiement en périphérie.
  • Orientation Industrielle : Idéal pour l'IA dans la fabrication et la robotique où chaque milliseconde compte.

En savoir plus sur YOLOv6-3.0

EfficientDet : Précision évolutive

EfficientDet a révolutionné le domaine en introduisant le concept de scaling composé à la détection d'objets. Il optimise simultanément la profondeur, la largeur et la résolution du réseau pour atteindre d'excellentes performances par paramètre.

Auteurs : Mingxing Tan, Ruoming Pang et Quoc V. Le
Organisation :Google
Date : 2019-11-20
Arxiv :EfficientDet : Détection d’objets évolutive et efficace
GitHub :google/automl/efficientdet

Architecture et points forts

EfficientDet s'appuie sur le backbone EfficientNet et introduit le Bi-directional Feature Pyramid Network (BiFPN). Cette structure de neck complexe permet une fusion de caractéristiques multi-échelle facile et rapide.

  • BiFPN : Contrairement aux FPN traditionnels, BiFPN permet à l’information de circuler de haut en bas et de bas en haut, en appliquant des poids à différentes caractéristiques d’entrée pour souligner leur importance.
  • Mise à l’échelle composite : Un coefficient simple $\phi$ permet aux utilisateurs de mettre à l’échelle le modèle (de d0 à d7) en fonction des ressources disponibles, offrant ainsi une courbe précision-calcul prévisible.
  • Efficacité des paramètres : Les variantes plus petites (d0-d2) sont extrêmement légères en termes de taille de disque et de FLOPs, ce qui les rend utiles pour les environnements à stockage limité.

Complexité architecturale

Bien que le BiFPN soit très efficace pour la précision, ses schémas d'accès mémoire irréguliers peuvent le rendre plus lent sur les GPU par rapport aux blocs de convolution denses et réguliers utilisés dans les architectures YOLO. C'est pourquoi EfficientDet se compare souvent avec une latence d'inférence plus élevée malgré le fait qu'il ait moins de paramètres.

En savoir plus sur EfficientDet

Cas d'utilisation concrets

Le choix entre ces modèles dépend souvent des contraintes spécifiques de l'environnement de déploiement.

Scénarios idéaux pour YOLOv6-3.0

  • Fabrication à haute vitesse : Détection des défauts sur les chaînes de montage rapides où un nombre élevé d’images par seconde est nécessaire pour track chaque article.
  • Navigation autonome : Permettre à la robotique de naviguer dans des environnements dynamiques en traitant les flux vidéo en temps réel.
  • Informatique en périphérie : Déploiement sur des appareils tels que le NVIDIA Jetson où les ressources du GPU doivent être maximisées pour le débit.

Scénarios idéaux pour EfficientDet

  • Analyse médicale : analyse d'images statiques à haute résolution, telles que la détection de tumeurs dans les rayons X, où le temps de traitement est moins critique que la précision.
  • Télédétection : Traitement hors ligne d'imagerie satellite pour identifier les changements environnementaux ou le développement urbain.
  • IoT à faible stockage : Appareils avec une capacité de stockage extrêmement limitée qui nécessitent une petite taille de fichier de modèle (comme EfficientDet-d0).

L'avantage Ultralytics : Pourquoi choisir YOLO11 ?

Bien que YOLOv6-3.0 et EfficientDet soient des modèles performants, Ultralytics YOLO11 représente la pointe de la technologie en matière de vision par ordinateur. YOLO11 affine les meilleurs attributs des générations YOLO précédentes et les intègre dans un écosystème transparent et convivial.

Principaux avantages de YOLO11

  1. Facilité d'utilisation : Ultralytics donne la priorité à l'expérience développeur. Grâce à une API Pythonique, vous pouvez entraîner, valider et déployer des modèles en quelques lignes de code seulement, contrairement aux fichiers de configuration complexes souvent requis pour EfficientDet.
  2. Polyvalence : Contrairement à YOLOv6 et EfficientDet qui sont principalement des modèles de détection d’objets, YOLO11 prend en charge nativement plusieurs tâches, notamment la segmentation d’instance, l’estimation de pose, les boîtes englobantes orientées (obb) et la classification.
  3. Équilibre des performances : YOLO11 atteint un compromis de pointe entre vitesse et précision. Il surpasse constamment les anciennes architectures sur l'ensemble de données COCO tout en maintenant une faible latence.
  4. Écosystème bien maintenu : Les modèles Ultralytics bénéficient d'une communauté active et de mises à jour fréquentes. Vous avez accès à une documentation exhaustive, à des tutoriels et à des intégrations transparentes avec des outils tels que Ultralytics HUB pour l'entraînement dans le cloud et la gestion des ensembles de données.
  5. Efficacité de l'entraînement : YOLO11 est conçu pour être économe en ressources pendant l'entraînement, convergeant souvent plus rapidement et nécessitant moins de mémoire GPU que les modèles complexes basés sur des transformateurs ou les anciennes architectures.
from ultralytics import YOLO

# Load the YOLO11 model (recommended over older versions)
model = YOLO("yolo11n.pt")

# Perform inference on an image
results = model("https://ultralytics.com/images/bus.jpg")

# Display results
results[0].show()

En savoir plus sur YOLO11

Explorer d'autres modèles

Si vous évaluez des options pour votre pipeline de vision par ordinateur, envisagez d'explorer d'autres modèles dans le catalogue Ultralytics. YOLOv8 offre des performances robustes pour un large éventail de tâches, tandis que RT-DETR, basé sur un transformateur, offre une alternative pour les scénarios nécessitant une conscience du contexte global. Pour les applications spécifiques aux appareils mobiles, YOLOv10 vaut également la peine d'être étudié. La comparaison de ces modèles avec EfficientDet peut vous aider à affiner votre sélection en fonction de votre matériel et de vos exigences de précision spécifiques.


Commentaires