Zum Inhalt springen

YOLOv7 YOLOv8: Die Entwicklung der Echtzeit-Objekterkennung

Die Landschaft der Computervision ist geprägt von raschen Iterationen und architektonischen Durchbrüchen. Zwei der bedeutendsten Meilensteine in dieser Geschichte sind YOLOv7, das Mitte 2022 veröffentlicht wurde, und YOLOv8, Ultralytics 2023 von Ultralytics veröffentlicht wurde. Beide Modelle haben bei ihrer Veröffentlichung den Stand der Technik (SOTA) vorangetrieben, vertreten jedoch unterschiedliche Philosophien in Bezug auf Modelldesign und Entwicklererfahrung.

YOLOv7 einen Höhepunkt in der Optimierung des „Bag-of-Freebies”-Ansatzes für ankerbasierte Detektoren, wobei der Schwerpunkt intensiv auf trainierbaren Architekturstrategien lag. Umgekehrt YOLOv8 einen benutzerzentrierten Ökosystemansatz YOLOv8 und stellte auf eine ankerfreie Architektur um, die Benutzerfreundlichkeit, Modellbereitstellung und einheitliche Unterstützung für verschiedene Aufgaben wie Segmentierung und Posenschätzung in den Vordergrund stellte.

Leistungsvergleich

Die folgende Tabelle zeigt die Leistungskennzahlen YOLOv8 YOLOv7 YOLOv8 . YOLOv8 eine überlegene Effizienz YOLOv8 , insbesondere hinsichtlich der Parameteranzahl und der FLOPs, während es die Genauigkeit (mAP) seines Vorgängers beibehält oder sogar übertrifft.

ModellGröße
(Pixel)
mAPval
50-95
Geschwindigkeit
CPU ONNX
(ms)
Geschwindigkeit
T4 TensorRT10
(ms)
Parameter
(M)
FLOPs
(B)
YOLOv7l64051.4-6.8436.9104.7
YOLOv7x64053.1-11.5771.3189.9
YOLOv8n64037.380.41.473.28.7
YOLOv8s64044.9128.42.6611.228.6
YOLOv8m64050.2234.75.8625.978.9
YOLOv8l64052.9375.29.0643.7165.2
YOLOv8x64053.9479.114.3768.2257.8

YOLOv7: Das ankerbasierte Kraftpaket

YOLOv7 im Juli 2022 veröffentlicht und YOLOv7 entwickelt, um die Grenzen der Geschwindigkeit und Genauigkeit der Echtzeit-Objekterkennung zu erweitern. Es führte mehrere architektonische Innovationen ein, die auf die Optimierung des Gradientenausbreitungswegs abzielen.

Wesentliche Architekturmerkmale

YOLOv7 das Extended Efficient Layer Aggregation Network (E-ELAN)YOLOv7 . Diese Architektur ermöglicht es dem Modell, vielfältigere Merkmale zu lernen, indem es die kürzesten und längsten Gradientenpfade steuert und so sicherstellt, dass das Netzwerk effektiv konvergiert, ohne den Gradientenfluss zu zerstören.

Es wurde auch eine auf Verkettung basierende Modellskalierung verwendet, die die Blocktiefe und -breite gleichzeitig anpasst. Diese Architektur ist zwar effektiv, stützt sich jedoch auf Ankerboxen, sodass die Berechnung optimaler Anker für benutzerdefinierte Datensätze erforderlich ist, um eine maximale Leistung zu erzielen. Dies erhöht die Komplexität des Trainingsprozesses im Vergleich zu neueren ankerfreien Ansätzen.

Komplexität der Ausbildung

YOLOv7 erfordert YOLOv7 eine spezifische, forschungsorientierte Repository-Struktur und die manuelle Verwaltung von Hilfsköpfen während des Trainings. Benutzer müssen häufig Hyperparameter für „Bag-of-Freebies” (wie MixUp Mosaic) manuell anpassen, damit diese bei kleineren Datensätzen korrekt funktionieren.

YOLOv8: Einheitliches Ökosystem und ankerfreies Design

Ultralytics YOLOv8 einen Paradigmenwechsel von einem reinen Forschungswerkzeug zu einem Framework für UnternehmenYOLOv8 . Es optimierte den gesamten Lebenszyklus des maschinellen Lernens, von der Datenannotation bis zur Bereitstellung.

Erfahren Sie mehr über YOLOv8

Architektonische Innovationen

YOLOv8 ein hochmodernes, ankerfreies Modell. Durch den Wegfall vordefinierter Ankerboxen YOLOv8 den Erkennungskopf und verbessert die Generalisierung bei Objekten mit ungewöhnlichen Formen oder Seitenverhältnissen.

  1. C2f-Modul: Das C2f-Modul (inspiriert von ELAN) ersetzt das C3-Modul früherer Generationen und kombiniert hochentwickelte Funktionen mit Kontextinformationen, um den Gradientenfluss zu verbessern und gleichzeitig leichtgewichtig zu bleiben.
  2. Entkoppelter Kopf: YOLOv8 die Aufgaben der Objektidentifizierung, Klassifizierung und Regression in verschiedene Zweige. Durch diese Trennung kann das Modell schneller und genauer konvergieren.
  3. Vielseitigkeit der Aufgaben: Im Gegensatz zu YOLOv7, das in erster Linie ein Erkennungsmodell ist, unterstützt YOLOv8 Bildklassifizierung, Posenschätzung, orientierte Begrenzungsrahmen (OBB) und Instanzsegmentierung.

Detaillierter Vergleich: Warum Entwickler sich für Ultralytics entscheiden

YOLOv7 zwar YOLOv7 ein leistungsfähiges Modell, doch das Ultralytics rund um YOLOv8 und das neuere YOLO26) bietet Entwicklern und Forschern deutliche Vorteile.

1. Benutzerfreundlichkeit und Ökosystem

YOLOv7 in erster Linie als Forschungsrepository verbreitet. Um es zu trainieren, muss oft ein bestimmtes GitHub-Repo geklont, Ordner in einer starren Struktur organisiert und komplexe CLI ausgeführt werden.

Im Gegensatz dazu sind Ultralytics als Python verfügbar (pip install ultralytics). Das Argument Ultralytics Plattform vereinfacht dies zusätzlich durch eine grafische Benutzeroberfläche für die Verwaltung von Datensätzen und die Überwachung des Trainings. Diese „Zero-to-Hero“-Erfahrung senkt die Einstiegshürde für die KI-Entwicklung erheblich.

2. Trainingseffizienz und Speicher

Einer der wichtigsten Faktoren in der modernen KI ist die Ressourcennutzung. Transformer-basierte Modelle benötigen oft enorme Mengen an CUDA und benötigen Tage für das Training.YOLO Ultralytics sind für eine effiziente Trainingsleistung optimiert.

YOLOv8 Mosaik-Augmentation dynamisch und deaktiviert sie in den letzten Epochen, um die Präzision zu erhöhen. In Kombination mit einem optimierten Datenlader können Benutzer damit im Vergleich zu YOLOv7 Transformer-basierten Alternativen wie RT-DETR größere Batch-Größen auf handelsüblichen GPUs ausführen.

3. Bereitstellung und Export

Das Verschieben eines Modells von einem PyTorch auf ein Produktionsgerät ist oft der schwierigste Teil der Pipeline. YOLOv8 dies durch einen einheitlichen Exportmodus.

Mit einer einzigen Codezeile können Entwickler YOLOv8 exportieren YOLOv8 :

  • ONNX für generische plattformübergreifende Kompatibilität.
  • TensorRT für maximale Inferenzgeschwindigkeit auf NVIDIA .
  • CoreML zur Integration in iOS macOS-Apps.
  • TFLite für die mobile und Edge-Bereitstellung auf Android Raspberry Pi.

Exportbeispiel

Das Exportieren eines YOLOv8 erfolgt nahtlos über die Python :

from ultralytics import YOLO

model = YOLO("yolov8n.pt")
model.export(format="onnx", opset=12)

Code-Beispiel: Die einheitliche API

Mit der Ultralytics Python können Sie mühelos zwischen verschiedenen Modellarchitekturen wechseln. Sie können ein YOLOv8 oder ein YOLOv7 (unterstützt aus Gründen der Abwärtskompatibilität) über dieselbe Schnittstelle laden.

from ultralytics import YOLO

# Load the latest YOLOv8 Nano model for efficiency
model = YOLO("yolov8n.pt")

# Train the model on the COCO8 dataset
# The API handles dataset downloading and configuration automatically
results = model.train(data="coco8.yaml", epochs=50, imgsz=640)

# Run inference on a sample image
# Returns a list of Results objects containing boxes, masks, or keypoints
results = model.predict("https://ultralytics.com/images/bus.jpg")

# Display the results
results[0].show()

# NOTE: You can also load YOLOv7 weights using the same API
# model_v7 = YOLO("yolov7.pt")

Ideale Anwendungsfälle

Wann man YOLOv7 verwenden sollte

  • Legacy-Benchmarking: Wenn Sie wissenschaftliche Arbeiten aus den Jahren 2022/2023 reproduzieren, die speziell einen Vergleich mit der E-ELAN-Architektur anstellen.
  • Spezifische hochauflösende Eingänge: Die yolov7-w6 Die Varianten wurden speziell für Eingaben mit einer Auflösung von 1280px optimiert, obwohl moderne Ultralytics nun auch mit höheren Auflösungen umgehen können. P6/1280-Auflösungen nativ.

Wann man YOLOv8 verwenden sollte

  • Edge-Computing: Modelle wie yolov8n sind perfekt für läuft auf Raspberry Pi oder Jetson Nano aufgrund ihrer geringen Parameteranzahl und hohen Geschwindigkeit.
  • Multitasking-Anwendungen: Wenn Ihre Anwendung die Verfolgung von Personen bei gleichzeitiger Identifizierung ihrer Körperhaltung (Skelette) erfordert, ist die native Haltungsabschätzung YOLOv8 die ideale Wahl.
  • Industrielle Automatisierung: Für Fertigungslinien mit hohem Durchsatz, bei denen Latenzzeiten entscheidend sind, ist die einfache Exportierbarkeit in TensorRT macht YOLOv8 .
  • Rapid Prototyping: Mit Ultralytics können Teams schnell Datensätze und Modelle iterieren, ohne komplexe Infrastrukturen verwalten zu müssen.

Ausblick: Die Kraft von YOLO26

Der Vergleich mit YOLOv7 zwar die Stärken von YOLOv8, doch hat sich das Gebiet weiterentwickelt. Für Entwickler, die heute neue Projekte starten, stellt YOLO26 den Höhepunkt dieser Entwicklung dar.

YOLO26 baut auf der Benutzerfreundlichkeit von YOLOv8 auf, führt YOLOv8 ein End-to-End-Design NMS ein. Durch den Wegfall der Nachbearbeitung mit Non-Maximum Suppression (NMS) erreicht YOLO26 eine deutlich einfachere Bereitstellungslogik und geringere Latenz in komplexen Szenen. Es verfügt außerdem über den MuSGD-Optimierer, der von den Trainingstechniken für große Sprachmodelle (LLM) inspiriert ist und eine noch stabilere Konvergenz während des Trainings gewährleistet.

Darüber hinaus ist YOLO26 durch die Entfernung des Distribution Focal Loss (DFL) bei CPU um bis zu 43 % schneller und damit die erste Wahl für Edge-KI-Anwendungen, bei denen keine GPUs verfügbar sind. Für spezielle Aufgaben bietet es aufgabenspezifische Verbesserungen wie Residual Log-Likelihood Estimation (RLE) für Pose und einen speziellen Winkelverlust für OBB.

Für die zukunftssicherste, effizienteste und genaueste Lösung empfehlen wir Ihnen, sich YOLO26 anzusehen.


Kommentare