YOLOv9 vs. YOLOv7: Ein detaillierter technischer Vergleich
Bei der Auswahl eines YOLO-Modells für die Objekterkennung ist es entscheidend, die Unterschiede zwischen den verschiedenen Versionen zu verstehen. Diese Seite bietet einen detaillierten technischen Vergleich zwischen YOLOv7 und YOLOv9, zwei bedeutenden Modellen der YOLO-Serie, die von Forschern am Institute of Information Science, Academia Sinica, Taiwan, entwickelt wurden. Wir werden ihre architektonischen Innovationen, Performance-Benchmarks und Eignung für verschiedene Anwendungen untersuchen, um Sie bei einer fundierten Entscheidung für Ihre Computer Vision-Projekte zu unterstützen.
YOLOv9: Programmierbare Gradienteninformationen für verbessertes Lernen
YOLOv9, das im Februar 2024 vorgestellt wurde, stellt einen bedeutenden Fortschritt dar, da es den Informationsverlust in tiefen neuronalen Netzen angeht, ein häufiges Problem, das die Modellleistung beeinträchtigen kann.
Autoren: Chien-Yao Wang und Hong-Yuan Mark Liao
Organisation: Institute of Information Science, Academia Sinica, Taiwan
Datum: 2024-02-21
Arxiv: https://arxiv.org/abs/2402.13616
GitHub: https://github.com/WongKinYiu/yolov9
Dokumentation: https://docs.ultralytics.com/models/yolov9/
Architektur und Hauptmerkmale
YOLOv9 führt neuartige Konzepte ein, um den Informationsfluss und die Lerneffizienz zu verbessern, was es von seinen Vorgängern abhebt.
- Programmable Gradient Information (PGI): Dies ist die Kerninnovation von YOLOv9. Es behebt das Problem des Informationsengpasses in tiefen Netzwerken, indem es zuverlässige Gradienten durch reversible Hilfszweige erzeugt. Dies stellt sicher, dass wichtige Informationen über alle Schichten hinweg erhalten bleiben, was zu einem effektiveren Modelltraining und einer besseren endgültigen Genauigkeit führt.
- Generalized Efficient Layer Aggregation Network (GELAN): YOLOv9 verfügt über eine neue Netzwerkarchitektur, die die Parameternutzung und die Recheneffizienz optimiert. GELAN ist eine schlanke, auf Gradientenpfadplanung basierende Architektur, die auf den Erfolgen von Designs wie CSPNet aufbaut, das maßgeblich an Modellen wie YOLOv5 beteiligt war.
Stärken
- Erhöhte Genauigkeit: Die Kombination von PGI und GELAN ermöglicht eine überlegene Feature-Extraktion und höhere mittlere durchschnittliche Präzisionswerte (mAP) im Vergleich zu YOLOv7, was besonders bei den größeren Modellvarianten deutlich wird.
- Verbesserte Effizienz: YOLOv9 erzielt eine bessere Genauigkeit mit weniger Parametern und Berechnungen (FLOPs) als YOLOv7. Beispielsweise erzielt YOLOv9-C ein ähnliches mAP wie YOLOv7x mit 66 % weniger Parametern und 46 % weniger FLOPs.
- Modernste Technologie: Repräsentiert die neuesten Innovationen der ursprünglichen YOLO-Autoren und verschiebt die Grenzen des Machbaren im Bereich der Echtzeit-Objekterkennung.
Schwächen
- Rechenaufwand: Obwohl die fortschrittliche Architektur für ihre Genauigkeit effizient ist, können insbesondere größere Varianten wie YOLOv9-E erhebliche Rechenressourcen für das Training und die Bereitstellung benötigen.
- Neueres Modell: Da es sich um eine neuere Version handelt, ist die Unterstützung durch die Community und die leicht verfügbaren Bereitstellungs-Tutorials möglicherweise weniger umfangreich als bei dem etablierten YOLOv7. Die Ultralytics YOLOv9 Implementierung mildert dies jedoch durch die Bereitstellung einer optimierten, gut dokumentierten und unterstützten Umgebung.
Anwendungsfälle
YOLOv9 ist ideal für Anwendungen, die höchste Genauigkeit und Effizienz erfordern, bei denen die präzise Erkennung von Objekten entscheidend ist.
- Komplexe Erkennungsaufgaben in autonomen Fahrzeugen und der Robotik.
- Fortschrittliche Sicherheitssysteme, die eine präzise Erkennung von kleinen oder verdeckten Objekten erfordern.
- Anwendungen in der medizinischen Bildanalyse, bei denen hohe Wiedergabetreue unerlässlich ist.
YOLOv7: Optimiert für Geschwindigkeit und Effizienz
YOLOv7, veröffentlicht im Juli 2022, war ein bahnbrechendes Modell, das darauf abzielte, den Kompromiss zwischen Geschwindigkeit und Genauigkeit für Echtzeit-Inferenz deutlich zu optimieren.
Autoren: Chien-Yao Wang, Alexey Bochkovskiy und Hong-Yuan Mark Liao
Organisation: Institute of Information Science, Academia Sinica, Taiwan
Datum: 2022-07-06
Arxiv: https://arxiv.org/abs/2207.02696
GitHub: https://github.com/WongKinYiu/yolov7
Dokumentation: https://docs.ultralytics.com/models/yolov7/
Architektur und Hauptmerkmale
YOLOv7 konzentrierte sich auf die Optimierung der Architektur und des Trainingsprozesses, um Modelle schneller und genauer zu machen, ohne die Inferenzkosten zu erhöhen.
- Extended Efficient Layer Aggregation Network (E-ELAN): Dieser Architekturblock verbessert die Lernfähigkeit des Netzwerks, indem er es ihm ermöglicht, vielfältigere Merkmale zu lernen, wodurch die Leistung verbessert wird, ohne den ursprünglichen Gradientenpfad zu unterbrechen.
- Modellskalierung: YOLOv7 führte Compound-Skalierungsmethoden für Modelltiefe und -breite ein, wodurch es effektiv für verschiedene Modellgrößen und Rechenbudgets optimiert werden kann.
- Trainable Bag-of-Freebies: Dieses Konzept beinhaltet verschiedene Optimierungstechniken während des Trainings, wie z.B. fortgeschrittene Datenerweiterung und Label-Zuweisungsstrategien. Diese Techniken verbessern die Genauigkeit, ohne den Rechenaufwand während der Inferenz zu erhöhen.
Stärken
- Hohe Inferenzgeschwindigkeit: YOLOv7 ist stark auf Geschwindigkeit optimiert und bleibt einer der schnellsten verfügbaren Objektdetektoren, was es hervorragend für Echtzeitanwendungen auf verschiedener Hardware macht.
- Starke Leistung: Es erzielt wettbewerbsfähige mAP-Werte und ist somit eine zuverlässige und leistungsstarke Wahl für viele Standard-Objekterkennungsaufgaben.
- Eingeführtes Modell: Da YOLOv7 schon länger verfügbar ist, profitiert es von einer breiteren Akzeptanz, umfangreichen Community-Ressourcen und vielen bewährten Bereitstellungsbeispielen in verschiedenen Branchen.
Schwächen
- Geringere Spitzen-Genauigkeit: Obwohl es schnell ist, kann es im Vergleich zum neueren YOLOv9 in komplexen Szenarien mit anspruchsvollen Objekten eine etwas geringere Spitzen-Genauigkeit aufweisen.
- Anchor-basiert: Sie basiert auf vordefinierten Anchor-Boxen, die manchmal weniger flexibel sein können als ankerfreie Ansätze, um Objekte mit ungewöhnlichen Seitenverhältnissen zu erkennen.
Anwendungsfälle
YOLOv7 eignet sich gut für Anwendungen, bei denen die Inferenzgeschwindigkeit der wichtigste Faktor ist.
- Echtzeit-Videoanalyse und -überwachung auf Edge-KI-Geräten.
- Systeme mit hohem Durchsatz, wie z.B. die Qualitätskontrolle an einer sich schnell bewegenden Produktionslinie.
- Schnelles Prototyping von Objekterkennungssystemen, bei denen ein schnelles Deployment entscheidend ist.
Performance und Effizienz: Ein direkter Vergleich
Der Hauptunterschied zwischen YOLOv9 und YOLOv7 liegt im Kompromiss zwischen Genauigkeit, Modellgröße und Rechenkosten. YOLOv9 verschiebt die Effizienzgrenze und liefert eine höhere Genauigkeit mit weniger Parametern und FLOPs. Zum Beispiel erreicht YOLOv9-M den gleichen mAP-Wert von 51,4 % wie YOLOv7l, jedoch mit 46 % weniger Parametern und 27 % weniger FLOPs. Dieser Trend setzt sich bis zur Skala fort, wo YOLOv9-E mit 55,6 % mAP einen neuen Stand der Technik setzt und alle YOLOv7-Varianten übertrifft.
Diese verbesserte Effizienz bedeutet, dass YOLOv9 für ein gegebenes Genauigkeitsziel ein kleineres, schnelleres und energieeffizienteres Modell bietet.
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 |
YOLOv7l | 640 | 51.4 | - | 6.84 | 36.9 | 104.7 |
YOLOv7x | 640 | 53.1 | - | 11.57 | 71.3 | 189.9 |
Fazit: Welches Modell ist das Richtige für Sie?
Sowohl YOLOv7 als auch YOLOv9 sind leistungsstarke Modelle, die jedoch leicht unterschiedliche Schwerpunkte setzen.
-
Wählen Sie YOLOv9, wenn Ihre Anwendung die höchstmögliche Genauigkeit und Effizienz erfordert. Seine architektonischen Fortschritte machen es überlegen für komplexe Szenen und ressourcenbeschränkte Deployments, bei denen Sie die beste Leistung von einem kleineren Modell benötigen.
-
Wählen Sie YOLOv7, wenn Sie ein praxiserprobtes, extrem schnelles Modell für Standard-Echtzeitanwendungen benötigen und es vorziehen, mit einer etablierteren Architektur mit umfangreichen Community-Ressourcen zu arbeiten.
Für Entwickler und Forscher, die die insgesamt beste Erfahrung suchen, empfehlen wir die Verwendung dieser Modelle innerhalb des Ultralytics-Ökosystems. Neuere Modelle wie Ultralytics YOLOv8 und YOLO11 bieten nicht nur eine konkurrenzfähige Leistung, sondern auch erhebliche Vorteile:
- Benutzerfreundlichkeit: Eine optimierte Benutzererfahrung mit einer einfachen Python API und umfassender Dokumentation.
- Gut gepflegtes Ökosystem: Aktive Entwicklung, starker Community-Support und Integration mit Tools wie Ultralytics HUB für No-Code-Training und -Bereitstellung.
- Vielseitigkeit: Unterstützung für mehrere Aufgaben über die Erkennung hinaus, einschließlich Instanzsegmentierung, Pose-Schätzung und Klassifizierung, alles innerhalb eines einzigen Frameworks.
- Trainingseffizienz: Effiziente Trainingsprozesse mit leicht verfügbaren vortrainierten Gewichten und geringerem Speicherbedarf im Vergleich zu vielen anderen Modelltypen.
Andere Modelle entdecken
Für weitere Vergleiche sollten Sie andere hochmoderne Modelle in der Ultralytics-Dokumentation in Betracht ziehen: