YOLOv5 . YOLOv9: Entwicklung der Echtzeit-Objekterkennung
Die Landschaft der Echtzeit-Objekterkennung hat sich in den letzten Jahren dramatisch verändert. Während YOLOv5 im Jahr 2020 den Standard für Benutzerfreundlichkeit und industrielle Anwendung gesetzt hat, hat YOLOv9 im Jahr 2024 neuartige Architekturkonzepte ein, um die Grenzen der Genauigkeit und Effizienz zu erweitern. Dieser Leitfaden enthält einen detaillierten technischen Vergleich, der Entwicklern dabei helfen soll, das richtige Tool für ihre Computer-Vision-Projekte auszuwählen.
Modellursprünge und technische Spezifikationen
Das Verständnis der Herkunft dieser Modelle hilft dabei, ihre Designphilosophie und die vorgesehenen Anwendungsfälle in einen Kontext zu setzen.
YOLOv5: Der Industriestandard
Im Juni 2020 von Glenn Jocher und UltralyticsYOLOv5 Benutzerfreundlichkeit, Exportierbarkeit und Geschwindigkeit YOLOv5 . Es war das erste YOLO , das nativ in PyTorchimplementierte YOLO-Modell und machte es damit einer großen Community von Python zugänglich.
- Autor: Glenn Jocher
- Organisation:Ultralytics
- Datum: 2020-06-26
- Repo:GitHub
- Schwerpunkte: Benutzerfreundlichkeit, robuste Exportpfade (ONNX, CoreML, TFLite) und schnelles Training.
YOLOv9: Architektonische Innovation
YOLOv9 wurde im Februar 2024 von Chien-Yao Wang und Hong-Yuan Mark Liao von der Academia Sinica veröffentlicht und YOLOv9 auf die Lösung des Problems des „Informationsengpasses” in tiefen Netzwerken.
- Autoren: Chien-Yao Wang, Hong-Yuan Mark Liao
- Organisation: Institute of Information Science, Academia Sinica
- Datum: 2024-02-21
- Repo:GitHub
- Paper:arXiv:2402.13616
- Schwerpunkt: Parametereffizienz und Deep Supervision unter Verwendung von Programmable Gradient Information (PGI).
Architektonische Unterschiede
Der wesentliche Unterschied liegt darin, wie diese Modelle die Merkmalsextraktion und den Gradientenfluss handhaben.
YOLOv5 nutzt ein CSPNet-Backbone (Cross Stage Partial Network). Dieses Design teilt den Gradientenfluss auf, um die Rechenleistung zu reduzieren und gleichzeitig die Genauigkeit zu erhalten, was für die Erstellung kompakter Modelle, die für eingebettete Systeme geeignet sind, revolutionär war. Sein ankerbasierter Erkennungskopf ist für allgemeine Aufgaben hochoptimiert und bietet eine Balance, die für viele ältere Anwendungen wettbewerbsfähig bleibt.
YOLOv9 führt zwei wichtige Innovationen ein: GELAN (Generalized Efficient Layer Aggregation Network) und PGI (Programmable Gradient Information). GELAN optimiert die Parameternutzung, wodurch das Modell schlanker wird und gleichzeitig komplexere Merkmale lernen kann. PGI behebt den Informationsverlust bei der Datenübertragung durch tiefe Schichten, indem es einen zusätzlichen Überwachungszweig bereitstellt, der auch in sehr tiefen Architekturen eine zuverlässige Gradientengenerierung gewährleistet.
Wussten Sie schon?
Während YOLOv9 architektonische Neuerungen YOLOv9 , ist das Ultralytics YOLOv5 Ökosystem nach wie vor unübertroffen. Es unterstützt nativ den Export in Formate wie TensorRT Edge TPU und vereinfacht so den Weg vom Training zur Produktion.
Leistungsanalyse
Beim Vergleich der Metriken erzielt YOLOv9 einen höherenmAPval-Wert für eine bestimmte Parameteranzahl, insbesondere bei den größeren Modellvarianten. Aufgrund seiner einfacheren Architektur YOLOv5 jedoch hinsichtlich der Inferenzgeschwindigkeit auf CPUs und älterer Hardware unglaublich wettbewerbsfähig.
Benchmark-Metriken
Die folgende Tabelle zeigt die Vor- und Nachteile. YOLOv9c erreicht mAP von 53,0 % und übertrifft damit YOLOv5x (50,7 %), während es deutlich weniger Parameter verwendet (25,3 Mio. gegenüber 97,2 Mio.). Dies zeigt die Effizienz der GELAN-Architektur. Umgekehrt bieten die kleineren YOLOv5 (Nano und Small) eine extrem niedrige Latenz, wodurch sie für Geräte mit extrem geringem Stromverbrauch geeignet sind.
| Modell | Größe (Pixel) | mAPval 50-95 | Geschwindigkeit CPU ONNX (ms) | Geschwindigkeit T4 TensorRT10 (ms) | Parameter (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| YOLOv5n | 640 | 28.0 | 73.6 | 1.12 | 1.9 | 4.5 |
| YOLOv5s | 640 | 37.4 | 120.7 | 1.92 | 7.2 | 16.5 |
| YOLOv5m | 640 | 45.4 | 233.9 | 4.03 | 21.2 | 49.0 |
| YOLOv5l | 640 | 49.0 | 408.4 | 6.61 | 46.5 | 109.1 |
| YOLOv5x | 640 | 50.7 | 763.2 | 11.89 | 86.7 | 205.7 |
| 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 |
Hinweis: Die Tabelle spiegelt die COCO wider. Fettgedruckte Werte geben die beste Leistung in der jeweiligen Kategorie an.
Benutzerfreundlichkeit und Ökosystem
Hier wird die Unterscheidung für Entwickler am praktischsten.
Die Ultralytics (YOLOv5)
YOLOv5 für die Entwicklererfahrung entwickelt. Das Ultralytics bietet einen nahtlosen Workflow:
- Einfache API: Laden und trainieren Sie Modelle mit wenigen Zeilen Python-Code.
- Integrierte Tools: Automatische Integration mit Experimentverfolgungstools wie Comet ClearML.
- Bereitstellung: Export mit einem Klick zu ONNX, CoreML, TFLite und OpenVINO.
from ultralytics import YOLO
# Load a pre-trained YOLOv5 model
model = YOLO("yolov5su.pt")
# Train on custom data
model.train(data="coco8.yaml", epochs=100)
# Export to ONNX for deployment
model.export(format="onnx")
YOLOv9
Das ursprüngliche YOLOv9 ist zwar äußerst präzise, jedoch auf die Forschung ausgerichtet. YOLOv9 nun jedoch vollständig im Ultralytics unterstützt, wodurch diese neuere Architektur ebenso benutzerfreundlich ist. Das bedeutet, dass Sie keine Abstriche bei der Benutzerfreundlichkeit machen müssen, um von den neuesten architektonischen Verbesserungen zu profitieren. Sie können einfach die Modellbezeichnung ändern.
Trainingseffizienz und Speicher
Ein entscheidender Vorteil der Ultralytics , darunter YOLOv5 das integrierte YOLOv9, ist ihre Speichereffizienz.
- GPU : Die Ultralytics sind so optimiert, dass sie CUDA minimieren. Dadurch können Benutzer größere Batch-Größen auf handelsüblicher Hardware (wie NVIDIA 3060/4090) trainieren, im Vergleich zu transformatorbasierten Modellen, die oft sehr speicherintensiv sind.
- Konvergenz: YOLOv5 bekannt für seine „Train-out-of-the-Box”-Fähigkeit, die nur minimale Hyperparameter-Anpassungen erfordert. YOLOv9 mit seinem PGI-Hilfszweig zeigt ebenfalls eine stabile Konvergenz, obwohl die Architektur komplexer ist.
Anwendungen in der realen Welt
Die Wahl des richtigen Modells hängt von Ihren Einsatzbedingungen ab.
Ideale Anwendungsfälle für YOLOv5
- Edge-KI auf älterer Hardware: Wenn Sie auf älteren Raspberry Pi-Modellen oder Mobilgeräten arbeiten, bei denen jede Millisekunde der Inferenzlatenz zählt, ist YOLOv5n (Nano) ungeschlagen.
- Rapid Prototyping: Für Hackathons oder Startups, die innerhalb weniger Stunden einen Proof of Concept (PoC) benötigen, YOLOv5 die umfangreiche Dokumentation und die Community-Tutorials für YOLOv5 die Entwicklung.
- Mobile Apps: Die native Unterstützung für iOS CoreML und Android TFLite esTFLite einem unverzichtbaren Werkzeug für mobile Entwickler.
Ideale Anwendungsfälle für YOLOv9
- Hochpräzise Inspektion: Bei der Qualitätskontrolle in der Fertigung, wo die Erkennung kleinster Fehler entscheidend ist, macht die überlegene Merkmalsextraktion von GELAN YOLOv9 besseren Wahl.
- Medizinische Bildgebung: Bei Aufgaben wie der Tumordiagnose, bei denen Genauigkeit wichtiger ist als reine Geschwindigkeit, sorgt YOLOv9e für die erforderliche mAP .
- Komplexe Szenen: Umgebungen mit hoher Okklusion oder Unordnung profitieren von den programmierbaren Gradienten, die dem Modell helfen, wichtige Informationen durch tiefe Schichten hindurch zu behalten.
Die Zukunft: Begegnung mit YOLO26
Während YOLOv5 ein zuverlässiges Arbeitstier YOLOv5 und YOLOv9 eine hohe Genauigkeit YOLOv9 , hat sich das Feld erneut weiterentwickelt. Für neue Projekte, die 2026 starten, stellt Ultralytics den Gipfel der Leistung und Effizienz dar.
Warum auf YOLO26 upgraden?
- Native End-to-End: Im Gegensatz zu YOLOv5 v9, die NMS erfordern, ist YOLO26 NMS, was die Bereitstellungspipelines vereinfacht.
- MuSGD-Optimierer: Inspiriert durch das LLM-Training sorgt dieser Optimierer für ein schnelleres und stabileres Training.
- Vielseitigkeit: Unterstützt sofort nach der Installation Erkennung, Segmentierung, Pose, OBB und Klassifizierung.
Für Benutzer, die derzeit YOLOv5 verwenden, bietet die Migration zu YOLO26 erhebliche Geschwindigkeitssteigerungen (bis zu 43 % schnellere CPU ) und eine verbesserte Erkennung kleiner Objekte über ProgLoss + STAL, was es zum empfohlenen Weg für Edge- und Cloud-Bereitstellungen macht.
Fazit
Beide Architekturen haben ihre Berechtigung. YOLOv5 bleibt der König der Einfachheit und der breiten Gerätekompatibilität und eignet sich perfekt für Entwickler, die eine Lösung benötigen, die einfach „funktioniert”. YOLOv9 bietet mit seinen programmierbaren Gradienten einen Einblick in die Zukunft des effizienten Deep Learning und liefert dabei höchste Genauigkeit.
Durch die Nutzung des Ultralytics sind Sie jedoch nicht an einen bestimmten Anbieter gebunden. Sie können YOLOv5, YOLOv9 und das hochmoderne YOLO26 mit genau derselben API trainieren, sodass Sie sie anhand Ihrer eigenen Daten benchmarken und den für Ihre spezifische Anwendung am besten geeigneten Algorithmus auswählen können.
Vergleichszusammenfassung
| Merkmal | YOLOv5 | YOLOv9 |
|---|---|---|
| Hauptfokus | Geschwindigkeit, Benutzerfreundlichkeit, Bereitstellung | Genauigkeit, Parametereffizienz |
| Architektur | CSPNet-Backbone, ankerbasiert | GELAN Backbone, PGI, ankerbasiert |
| Ökosystem | Native Ultralytics | In Ultralytics integriert |
| Am besten geeignet für | Mobilgeräte, Edge-Systeme, Altsysteme | Hochpräzise Forschung, komplexe Szenen |
| Inferenz | Extrem schnell (GPU) | Hohe Genauigkeit / Langsamer |
Entdecken Sie weitere Modelle der Ultralytics :
- YOLO11 – Der robuste Vorgänger von YOLO26.
- YOLOv8 – Ein einheitliches Framework für Erkennung, Segmentierung und Pose.
- RT-DETR – Echtzeit-Erkennung auf Basis eines Transformators.