yolov5: dokumentierte Funktionen und praktische Grenzen
PyTorch-basiertes YOLOv5 von Ultralytics für Objekterkennung, Instanzsegmentierung und Klassifikation, mit Training und Export nach ONNX, TensorRT, TFLite und CoreML.
Auf einen Blick
- Was ist das?
- Ultralytics YOLOv5 in PyTorch for object detection, instance segmentation, classification, training, and export. Eine faktenbasierte Einordnung der Schnittstellen, des Betriebs und der offenen Prüfstellen.
- Für wen ist es gedacht?
- yolov5 passt zu Teams, deren Einsatz zu den im README genannten Eingaben, Plattformen und Schnittstellen passt. Nicht geeignet ist der blinde Einsatz als Produktionszusage.
- Darf ich es kommerziell nutzen?
- Ja, unter strengen Bedingungen. AGPL-3.0 ist eine Lizenz mit Netzwerk-Copyleft: Wenn andere eine veränderte Version über ein Netzwerk nutzen, etwa als gehosteten Dienst, müssen Sie ihnen den Quellcode unter derselben Lizenz anbieten.
- Wird es noch gepflegt?
- Ja. Die letzten Commits kamen vor 1 Tag.
- In welcher Sprache ist es geschrieben?
- Hauptsächlich Python, laut der Sprachstatistik von GitHub.
Die Antworten beruhen auf den GitHub-Daten des Projekts (zuletzt abgeglichen am 15. September 2026) und auf unserer Analyse. Sie sind keine Rechtsberatung.
TIEFGEHENDE OPEN-SOURCE-ANALYSE
yolov5: Der Umfang von YOLOv5: Erkennung, Segmentierung, Klassifikation
yolov5 wird im README als Ultralytics YOLOv5 in PyTorch for object detection, instance segmentation, classification, training, and export. beschrieben. Dieser Text trennt dokumentierte Funktionen von offenen Punkten. Aussagen zu Leistung, Reife und Kompatibilität gelten nur in dem Umfang, in dem das README sie selbst belegt. Ultralytics YOLOv5 ist ein Computer-Vision-Modell, das in PyTorch implementiert ist. Laut der Repository-Beschreibung unterstützt es Objekterkennung, Instanzsegmentierung und Bildklassifikation. Die README besagt, dass es schnell, genau und einfach zu verwenden ist und Erkenntnisse aus Forschung und Entwicklung einbezieht. Das Repository verweist auch auf Dokumentation für Training, Test und Bereitstellung sowie auf ein separates Paket für die neuesten Ultralytics-YOLO-Modelle, die zusätzliche Aufgaben wie Posenschätzung und orientierte Objekterkennung umfassen. YOLOv5 selbst deckt, wie hier beschrieben, die oben genannten drei Aufgaben ab. Für eine Prüfung von yolov5 sollte zuerst der im Projekt genannte Einstieg verwendet werden. Danach sind die konkrete Ausgabe, die angelegten Dateien und die Fehlermeldungen zu prüfen. Bei ultralytics-yolov5-deep-analysis gehören insbesondere der Projektname, die README und die dort genannten Befehle zur Prüfspur; eine allgemeine Demo ersetzt diese Prüfung nicht.
yolov5: Installation und Inferenzpfade
yolov5 wird im README als Ultralytics YOLOv5 in PyTorch for object detection, instance segmentation, classification, training, and export. beschrieben. Dieser Text trennt dokumentierte Funktionen von offenen Punkten. Aussagen zu Leistung, Reife und Kompatibilität gelten nur in dem Umfang, in dem das README sie selbst belegt. Die README bietet zwei Möglichkeiten, Inferenz auszuführen. Die erste ist über ein Skript namens detect.py, das Quellen wie Webcam, Bilddateien, Videodateien, Bildschirmaufnahmen, Verzeichnisse, Textlisten, Glob-Muster, YouTube-URLs und RTSP/RTMP/HTTP-Streams akzeptiert. Die zweite ist über PyTorch Hub, wo ein Modell mit torch.hub.load geladen und dann auf einem Bild aufgerufen werden kann, mit Optionen zum Drucken, Anzeigen, Speichern, Zuschneiden oder Zurückgeben von Ergebnissen als Pandas-Objekt. Vor beiden wird das Repository geklont und Abhängigkeiten mit pip install -r requirements.txt installiert. Die README spezifiziert Python 3.8.0 oder höher und PyTorch 1.8 oder höher, gibt aber keine Installationsbefehle für PyTorch selbst; diese sind extern verlinkt. Für eine Prüfung von yolov5 sollte zuerst der im Projekt genannte Einstieg verwendet werden. Danach sind die konkrete Ausgabe, die angelegten Dateien und die Fehlermeldungen zu prüfen. Bei ultralytics-yolov5-deep-analysis gehören insbesondere der Projektname, die README und die dort genannten Befehle zur Prüfspur; eine allgemeine Demo ersetzt diese Prüfung nicht.
yolov5: Training und Reproduktion
yolov5 wird im README als Ultralytics YOLOv5 in PyTorch for object detection, instance segmentation, classification, training, and export. beschrieben. Dieser Text trennt dokumentierte Funktionen von offenen Punkten. Aussagen zu Leistung, Reife und Kompatibilität gelten nur in dem Umfang, in dem das README sie selbst belegt. Für das Training gibt die README Befehle zum Trainieren von YOLOv5n, s, m, l und x auf COCO für 300 Epochen mit bestimmten Batch-Größen. Sie stellt fest, dass Modelle und Datensätze automatisch von der neuesten Version heruntergeladen werden. Die Trainingszeiten betragen ungefähr 1, 2, 4, 6 und 8 Tage auf einer einzelnen NVIDIA V100 GPU für die fünf Modellgrößen. Die README empfiehlt, die größte Batch-Größe zu verwenden, die die Hardware zulässt, und erwähnt eine AutoBatch-Funktion, die mit --batch-size -1 aufgerufen wird. Multi-GPU-Training wird in einem verlinkten Tutorial behandelt. Die README enthält auch einen Befehl, um Validierungsergebnisse mit val.py zu reproduzieren, macht aber keine Garantie über Trainingsergebnisse über die berichteten Zeiten hinaus. Für eine Prüfung von yolov5 sollte zuerst der im Projekt genannte Einstieg verwendet werden. Danach sind die konkrete Ausgabe, die angelegten Dateien und die Fehlermeldungen zu prüfen. Bei ultralytics-yolov5-deep-analysis gehören insbesondere der Projektname, die README und die dort genannten Befehle zur Prüfspur; eine allgemeine Demo ersetzt diese Prüfung nicht.
yolov5: Vortrainierte Checkpoints und gemessene Leistung
yolov5 wird im README als Ultralytics YOLOv5 in PyTorch for object detection, instance segmentation, classification, training, and export. beschrieben. Dieser Text trennt dokumentierte Funktionen von offenen Punkten. Aussagen zu Leistung, Reife und Kompatibilität gelten nur in dem Umfang, in dem das README sie selbst belegt. Das Repository enthält Tabellen mit vortrainierten Checkpoints für Erkennung, Segmentierung und Klassifikation. Für die Erkennung werden auf COCO bei 640 Pixeln trainierte Modelle mit mAP-Werten, CPU- und V100-Geschwindigkeiten, Parameterzahlen und FLOPs aufgelistet. Eine zweite Modellgruppe verwendet 1280 Pixel. Die README weist darauf hin, dass die 640-Pixel-Links auf ankerfreie YOLOv5u-Nachfolgemodelle auf der Ultralytics-Plattform verweisen, während die 1280-Pixel-Links Legacy-Checkpoints direkt herunterladen. Geschwindigkeitsmetriken werden über COCO-Validierungsbilder auf einer AWS p3.2xlarge V100-Instanz gemittelt, und die Zeit für die Nicht-Maximum-Unterdrückung ist nicht enthalten. Diese Details werden angegeben, damit die Zahlen mit den bereitgestellten val.py-Befehlen reproduziert werden können. Für eine Prüfung von yolov5 sollte zuerst der im Projekt genannte Einstieg verwendet werden. Danach sind die konkrete Ausgabe, die angelegten Dateien und die Fehlermeldungen zu prüfen. Bei ultralytics-yolov5-deep-analysis gehören insbesondere der Projektname, die README und die dort genannten Befehle zur Prüfspur; eine allgemeine Demo ersetzt diese Prüfung nicht.
yolov5: Segmentierungs- und Klassifikationsmodelle
yolov5 wird im README als Ultralytics YOLOv5 in PyTorch for object detection, instance segmentation, classification, training, and export. beschrieben. Dieser Text trennt dokumentierte Funktionen von offenen Punkten. Aussagen zu Leistung, Reife und Kompatibilität gelten nur in dem Umfang, in dem das README sie selbst belegt. Die Segmentierungsunterstützung wurde laut README in Version v7.0 eingeführt, die Klassifikation in Version v6.2. Die Segmentierungsmodelle werden auf COCO bei 640 Pixeln für 300 Epochen trainiert, die Klassifikationsmodelle auf ImageNet bei 224 Pixeln für 90 Epochen. Die README enthält Beispiele für beide, einschließlich Training, Validierung, Vorhersage und Export nach ONNX und TensorRT. Für die Segmentierung enthält ein separates Segment-Verzeichnis train.py, val.py und predict.py. Für die Klassifikation wird ein Klassifizierungsverzeichnis verwendet. Die README listet auch Vergleichsmodelle wie ResNet und EfficientNet für die Klassifikation auf. Für eine Prüfung von yolov5 sollte zuerst der im Projekt genannte Einstieg verwendet werden. Danach sind die konkrete Ausgabe, die angelegten Dateien und die Fehlermeldungen zu prüfen. Bei ultralytics-yolov5-deep-analysis gehören insbesondere der Projektname, die README und die dort genannten Befehle zur Prüfspur; eine allgemeine Demo ersetzt diese Prüfung nicht.
yolov5: Integrationen, Umgebungen und Lizenzierung
yolov5 wird im README als Ultralytics YOLOv5 in PyTorch for object detection, instance segmentation, classification, training, and export. beschrieben. Dieser Text trennt dokumentierte Funktionen von offenen Punkten. Aussagen zu Leistung, Reife und Kompatibilität gelten nur in dem Umfang, in dem das README sie selbst belegt. Die README listet Integrationen mit Plattformen wie Weights & Biases, Comet ML, Roboflow und Intel OpenVINO auf und verlinkt auf eine spezielle Integrationsseite. Sie zeigt auch vorkonfigurierte Umgebungen für Paperspace Gradient, Google Colab, Kaggle, Docker, AWS und GCP. Der Lizenzabschnitt erklärt, dass Ultralytics zwei Optionen anbietet: die AGPL-3.0-Open-Source-Lizenz, die als geeignet für akademische Forschung und persönliche Projekte beschrieben wird, und eine Enterprise-Lizenz für kommerzielle Anwendungen. Der Lizenzauszug besagt, dass AGPL-3.0 eine Copyleft-Lizenz ist, die Netzwerkserverbetreiber verpflichtet, den Benutzern den Quellcode modifizierter Versionen bereitzustellen. Die README erwähnt keine Garantie oder Sicherheitszusicherungen. Für eine Prüfung von yolov5 sollte zuerst der im Projekt genannte Einstieg verwendet werden. Danach sind die konkrete Ausgabe, die angelegten Dateien und die Fehlermeldungen zu prüfen. Bei ultralytics-yolov5-deep-analysis gehören insbesondere der Projektname, die README und die dort genannten Befehle zur Prüfspur; eine allgemeine Demo ersetzt diese Prüfung nicht.
Redaktionelles Fazit
yolov5 passt zu Teams, deren Einsatz zu den im README genannten Eingaben, Plattformen und Schnittstellen passt. Nicht geeignet ist der blinde Einsatz als Produktionszusage. Vor einer Entscheidung sollten der konkrete Installations- oder Startbefehl, die Version, die erzeugten Ausgaben und die projektspezifischen Konfigurationsdateien geprüft werden.
Community-Notizen