YOLOv9 vs. YOLOv5: Ein technischer Vergleich
In der sich schnell entwickelnden Landschaft der Computer Vision ist die Auswahl des richtigen Objekterkennungsmodells entscheidend für den Projekterfolg. Diese Analyse bietet einen detaillierten technischen Vergleich zwischen YOLOv9einer auf die Forschung ausgerichteten Architektur, die die Grenzen der Genauigkeit auslotet, und Ultralytics YOLOv5dem Industriestandardmodell, das für seine Zuverlässigkeit, Geschwindigkeit und Vielseitigkeit bekannt ist. Wir untersuchen die architektonischen Unterschiede, Leistungsbenchmarks und idealen Anwendungsfälle, damit Sie eine fundierte Entscheidung treffen können.
YOLOv9: Architektonische Innovation für maximale Genauigkeit
YOLOv9 wird Anfang 2024 veröffentlicht und zielt auf die theoretischen Grenzen der Objekterkennung ab, indem es grundlegende Probleme des Informationsflusses beim Deep Learning angeht. Es wurde für Szenarien entwickelt, in denen es auf Präzision ankommt.
Authors: Chien-Yao Wang, Hong-Yuan Mark Liao
Organisation:Institute of Information Science, Academia Sinica, Taiwan
Datum: 2024-02-21
Arxiv:arXiv:2402.13616
GitHub:WongKinYiu/yolov9
Docs:YOLOv9 Dokumentation
Zentrale Architektur
YOLOv9 führt zwei bahnbrechende Konzepte ein: Programmable Gradient Information (PGI) und das Generalized Efficient Layer Aggregation Network (GELAN). PGI bekämpft das Informationsengpassproblem, das tiefen neuronalen Netzen innewohnt, indem es sicherstellt, dass vollständige Eingabeinformationen für die Verlustfunktion beibehalten werden, was die Zuverlässigkeit des Gradienten verbessert. GELAN optimiert die Parametereffizienz, so dass das Modell im Vergleich zu früheren Architekturen, die eine Faltung in der Tiefe verwenden, eine höhere Genauigkeit mit weniger Rechenressourcen erreichen kann.
Stärken und Schwächen
Die größte Stärke von YOLOv9 ist seine hohe Genauigkeit bei Benchmarks wie dem COCO . Es zeichnet sich durch die Erkennung kleiner oder verdeckter Objekte aus, bei denen andere Modelle versagen könnten. Die Fokussierung auf die Erkennungsgenauigkeit ist jedoch mit Abstrichen verbunden. Der Trainingsprozess kann ressourcenintensiver sein, und obwohl es in das Ultralytics integriert ist, sind die breitere Community-Unterstützung und die Tools von Drittanbietern im Vergleich zu bereits länger etablierten Modellen noch nicht ausgereift. Außerdem liegt der Schwerpunkt nach wie vor auf der Erkennung, während andere Modelle eine breitere native Multitasking-Unterstützung bieten.
Ultralytics YOLOv5: Der vielseitige Industriestandard
Seit seiner Veröffentlichung im Jahr 2020 hat Ultralytics YOLOv5 den Standard für den praktischen, realen Einsatz von KI definiert. Es schafft ein präzises Gleichgewicht zwischen Leistung und Benutzerfreundlichkeit, was es zu einem der meistgenutzten Modelle der Geschichte macht.
Autor: Glenn Jocher
Organisation:Ultralytics
Datum: 26.06.2020
GitHub:yolov5
Docs:YOLOv5 Dokumentation
Zentrale Architektur
YOLOv5 verwendet eine verfeinerte ankerbasierte Architektur mit einem CSPDarknet53-Backbone und einem PANet-Hals für eine robuste Feature-Aggregation. Sein Design legt den Schwerpunkt auf schnelle Schlussfolgerungen und technische Optimierung. Das Modell ist in verschiedenen Maßstäben erhältlich (Nano bis Extra Large), so dass Entwickler das Modell perfekt an ihre Hardwarebeschränkungen anpassen können, von eingebetteten Edge-Geräten bis hin zu Cloud-GPUs.
Der Ultralytics
Während YOLOv9 die akademischen Grenzen überschreitet, zeichnet sich YOLOv5 durch seine technische Praktikabilität aus.
- Benutzerfreundlichkeit YOLOv5 ist berühmt für sein "Installieren und Ausführen"-Erlebnis. Die optimierte Python und die umfassende Dokumentation reduzieren die Entwicklungszeit erheblich.
- Gut gepflegtes Ökosystem: YOLOv5 wird von Ultralytics unterstützt und genießt aktive Wartung, eine große Community auf GitHub und nahtlose Integration mit MLOps-Tools.
- Vielseitigkeit: Über die Erkennung hinaus unterstützt YOLOv5 nativ die Segmentierung von Instanzen und die Klassifizierung von Bildern und bietet damit eine einheitliche Lösung für verschiedene Bildverarbeitungsaufgaben.
- Speichereffizienz: Ultralytics sind sowohl beim Training als auch bei der Inferenz für einen geringeren Speicherbedarf optimiert, im Gegensatz zu den hohen Anforderungen von transformatorbasierten Alternativen.
Leistungsmetriken: Geschwindigkeit vs. Genauigkeit
Der nachstehende Vergleich verdeutlicht die unterschiedlichen Rollen dieser Modelle. YOLOv9 erreicht im Allgemeinen eine höhere mAP (mittlere durchschnittliche Genauigkeit), insbesondere bei den größeren Modellen (c und e). Dies macht es für Aufgaben, die eine hohe Detailgenauigkeit erfordern, überlegen.
Umgekehrt bietet YOLOv5 unschlagbare Inferenzgeschwindigkeiten, insbesondere mit seinen Nano (n) und Small (s) Varianten. Für Echtzeitanwendungen auf Edge-Hardware wie dem NVIDIA Jetson oder dem Raspberry Pi bleibt YOLOv5 aufgrund seines geringen Gewichts und der ausgereiften TensorRT ein Top-Anwärter.
| Modell | Größe (Pixel) | mAPval 50-95 | Geschwindigkeit CPU ONNX (ms) | Geschwindigkeit T4 TensorRT10 (ms) | Parameter (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| YOLOv9t | 640 | 38.3 | - | 2.3 | 2.0 | 7.7 |
| YOLOv9s | 640 | 46.8 | - | 3.54 | 7.1 | 26.4 |
| YOLOv9m | 640 | 51.4 | - | 6.43 | 20.0 | 76.3 |
| YOLOv9c | 640 | 53.0 | - | 7.16 | 25.3 | 102.1 |
| YOLOv9e | 640 | 55.6 | - | 16.77 | 57.3 | 189.0 |
| YOLOv5n | 640 | 28.0 | 73.6 | 1.12 | 2.6 | 7.7 |
| YOLOv5s | 640 | 37.4 | 120.7 | 1.92 | 9.1 | 24.0 |
| YOLOv5m | 640 | 45.4 | 233.9 | 4.03 | 25.1 | 64.2 |
| YOLOv5l | 640 | 49.0 | 408.4 | 6.61 | 53.2 | 135.0 |
| YOLOv5x | 640 | 50.7 | 763.2 | 11.89 | 97.2 | 246.4 |
Tipp für den Einsatz
Für maximale Flexibilität beim Einsatz können beide Modelle in Formate wie ONNX, TensorRT und CoreML unter Verwendung des Ultralytics exportiert werden. Dadurch wird sichergestellt, dass Ihre Modelle auf jeder Zielhardware effizient laufen.
Schulung und Benutzerfreundlichkeit
Schulungsmethoden unterscheiden sich erheblich in der Benutzererfahrung. Ultralytics YOLOv5 ist auf Trainingseffizienz ausgelegt und bietet robuste Voreinstellungen, die für benutzerdefinierte Datensätze sofort einsatzbereit sind. Es bietet automatische Ankerberechnung, Hyperparameterentwicklung und umfangreiche Protokollierungsintegrationen.
YOLOv9 ist zwar leistungsstark, erfordert aber möglicherweise eine sorgfältigere Abstimmung der Hyperparameter, um Stabilität und Konvergenz zu erreichen, insbesondere bei kleineren Datensätzen. Dank seiner Integration in die ultralytics Python können Entwickler nun YOLOv9 mit der gleichen einfachen Syntax wie YOLOv5 trainieren und so die Lücke in der Benutzerfreundlichkeit schließen.
Code-Beispiel
Mit der Ultralytics ist der Wechsel zwischen diesen Architekturen so einfach wie das Ändern des Modellnamens. Dieser Ausschnitt zeigt, wie man mit beiden Modellen Inferenzen lädt und ausführt:
from ultralytics import YOLO
# Load the established industry standard YOLOv5 (nano version)
model_v5 = YOLO("yolov5nu.pt")
# Run inference on an image
results_v5 = model_v5("path/to/image.jpg")
# Load the high-accuracy YOLOv9 (compact version)
model_v9 = YOLO("yolov9c.pt")
# Run inference on the same image for comparison
results_v9 = model_v9("path/to/image.jpg")
Ideale Anwendungsfälle
Wann sollte man YOLOv9 wählen YOLOv9
- Hochpräzise Inspektion: Erkennung kleinster Defekte in Fertigungsstraßen, wo jedes Pixel zählt.
- Fortgeschrittene Forschung: Projekte zur Erforschung neuer Deep-Learning-Architekturen wie Programmable Gradient Information.
- Komplexe Umgebungen: Szenarien mit starker Verdeckung oder Unübersichtlichkeit, in denen die fortschrittliche Merkmalsaggregation von GELAN einen entscheidenden Vorteil bietet.
Wann sollten Sie YOLOv5 wählen YOLOv5
- Edge-Einsatz: Ausführung auf batteriebetriebenen Geräten oder Mikrocontrollern, bei denen Stromverbrauch und Speicherplatzbedarf kritisch sind.
- Schnelles Prototyping: Wenn Sie von der Datenerfassung bis zu einer funktionsfähigen Demo nicht Tage, sondern Stunden benötigen, nutzen Sie die umfangreichen Tutorials und Community-Ressourcen.
- Multi-Task-Systeme: Anwendungen, die neben der Erkennung auch eine Posenschätzung oder Klassifizierung innerhalb einer einzigen Codebasis erfordern.
- Produktionsstabilität: Unternehmensumgebungen, die eine kampferprobte Lösung mit jahrelang bewährter Zuverlässigkeit erfordern.
Fazit
Die Entscheidung zwischen YOLOv9 und YOLOv5 hängt von Ihren spezifischen Anforderungen ab. YOLOv9 ist die beste Wahl zur Maximierung der Genauigkeit und bietet innovative architektonische Verbesserungen. YOLOv5 bleibt der Meister der Vielseitigkeit und Benutzerfreundlichkeit und bietet ein robustes, gut unterstütztes Ökosystem, das den gesamten AI-Lebenszyklus vereinfacht.
Für Entwickler, die das Beste aus beiden Welten suchen - die Kombination der Benutzerfreundlichkeit von YOLOv5 mit der Leistung von YOLOv9empfehlen wir, sich mit YOLO11. Als die neueste Iteration von Ultralytics bietet YOLO11 modernste Geschwindigkeit und Genauigkeit für alle Bildverarbeitungsaufgaben und stellt die Zukunft der YOLO dar.
Andere Modelle entdecken
- YOLO11: Das neueste und leistungsfähigste Modell von Ultralytics für Erkennung, Segmentierung und Pose.
- YOLOv8: Ein leistungsfähiger Vorgänger von YOLO11 mit einem ausgewogenen Funktionsumfang.
- RT-DETR: Ein transformatorbasierter Detektor, der für die Echtzeitleistung optimiert ist.