Grüner Scheck
Link in die Zwischenablage kopiert

Einführung der Instanzsegmentierung in Ultralytics YOLOv5 v7.0

Entdecke YOLOv5 v7.0 mit neuen Instanzsegmentierungsmodellen, die die SOTA-Benchmarks für höchste KI-Genauigkeit und Geschwindigkeit übertreffen. Tritt unserer Community bei.

YOLOv5 v7.0, die neueste Version unserer KI-Architektur, ist da, und wir freuen uns, unsere neuen Instanzsegmentierungsmodelle vorzustellen!

Bei der Arbeit an dieser neuen Version standen zwei Ziele im Vordergrund. Das erste war unsere Mission, KI einfach zu machen, und das zweite war unser Ziel, neu zu definieren, was "modern" wirklich bedeutet.

Und genau das haben wir mit wichtigen Verbesserungen, Korrekturen und Upgrades getan. Unter Beibehaltung der gleichen einfachen Arbeitsabläufe wie bei unseren bestehenden YOLOv5 Objekterkennungsmodellen ist es jetzt einfacher denn je, deine Modelle mit YOLOv5 v7.0 zu trainieren, zu validieren und einzusetzen. Darüber hinaus haben wir alle SOTA-Benchmarks übertroffen und YOLOv5 zum schnellsten und genauesten Modell der Welt gemacht.

Da dies unsere erste Veröffentlichung von Segmentierungsmodellen ist, sind wir unheimlich stolz auf diesen Meilenstein. Wir schulden unserer engagierten Community und den Mitwirkenden, die diese Veröffentlichung möglich gemacht haben, großen Dank.  

Ultralytics YOLOv5 v7.0 SOTA Echtzeit-Instanz Segmentierung

Also, los geht's mit den YOLOv5 v7.0 Release Notes!

Wichtige YOLOv5 Updates

Hier siehst du, was sich seit der letzten Veröffentlichung von YOLOv5 v6 .2 im August 2022 auf YOLOv5 geändert hat.

  • Segmentierungsmodelle ⭐ NEU: SOTA YOLOv5-seg COCO-pretrained segmentation models are now for the first time available(#9052 by @glenn-jocher, @AyushExel, and @Laughing-q)
  • PaddlePaddle Exportieren: Exportiere jedes YOLOv5 Modell (cls, seg, det) in das Paddle-Format mit python export.py --include paddle #9459 von @glenn-jocher)
  • YOLOv5 AutoCache: Mit python train.py --cache ram wird jetzt der verfügbare Speicher gescannt und mit der vorhergesagten RAM-Nutzung des Datensatzes verglichen. Dies verringert das Risiko beim Caching und sollte dazu beitragen, dass die Funktion zum Zwischenspeichern von Datensätzen besser angenommen wird, was das Training erheblich beschleunigen kann.(#10027 von @glenn-jocher)
  • Comet Integration von Logging und Visualisierung: Für immer kostenlos, Comet ermöglicht es dir, YOLOv5 Modelle zu speichern, das Training fortzusetzen und Vorhersagen interaktiv zu visualisieren und zu debuggen.(#9232 by @DN6)

Neue Segmentierungsprüfpunkte

Wir haben YOLOv5 Segmentierungsmodelle auf COCO für 300 Epochen bei Bildgröße 640 mit A100 GPUs trainiert. Wir exportierten alle Modelle in ONNX FP32 für CPU Geschwindigkeitstests und in TensorRT FP16 für GPU Geschwindigkeitstests. Wir haben alle Geschwindigkeitstests auf Google Colab Pro Notebooks durchgeführt, um die Reproduzierbarkeit zu gewährleisten.

  • Alle Checkpoints werden auf 300 Epochen mit dem SGD-Optimierer mit lr0=0.01 und weight_decay=5e-5 bei einer Bildgröße von 640 und allen Standardeinstellungen trainiert. Alle Läufe werden hier protokolliert.
  • Die Genauigkeitsangaben beziehen sich auf ein Modell mit einer Skala auf dem COCO-Datensatz. Reproduzierbar durch python segment/val.py --data coco.yaml --weights yolov5s-seg.pt
  • Geschwindigkeit gemittelt über 100 Inferenzbilder mit einer Colab Pro A100 High-RAM-Instanz. Die Werte geben nur die Inferenzgeschwindigkeit an (NMS fügt etwa 1 ms pro Bild hinzu). Reproduzieren mit python segment/val.py --data coco.yaml --weights yolov5s-seg.pt --batch 1
  • Der Export nach ONNX bei FP32 und TensorRT bei FP16 erfolgt mit export.py. Reproduzierbar mit python export.py --weights yolov5s-seg.pt --include engine --device 0 --half

Beispiele für die Verwendung der neuen Segmentierung

Zug

YOLOv5 Das Segmentierungstraining unterstützt den automatischen Download des COCO128-seg-Segmentierungsdatensatzes mit dem Argument --data coco128-seg.yaml und den manuellen Download des COCO-segments-Datensatzes mit bash data/scripts/get_coco.sh --train --val --segments und dann python train.py --data coco.yaml.

Einzel-GPU

python segment/train.py --model yolov5s-seg.pt --data coco128-seg.yaml --epochs 5 --img 640

Multi-GPU DDP

python -m torch.distributed.run --nproc_per_node 4 --master_port 1 segment/train.py --model yolov5s-seg.pt --data coco128-seg.yaml --epochs 5 --img 640 --device 0,1,2,3

Val

Validiere die Genauigkeit von YOLOv5m-seg auf dem ImageNet-1k-Datensatz:

bash data/scripts/get_coco.sh --val --segments # COCO val segmente split herunterladen (780MB, 5000 Bilder) python segment/val.py --weights yolov5s-seg.pt --data coco.yaml --img 640 # validieren

Vorhersage

Verwende YOLOv5m-seg, um bus.jpg vorherzusagen:

python segment/predict.py --weights yolov5m-seg.pt --data data/images/bus.jpg

model = torch.hub.load('ultralytics/yolov5', 'custom', 'yolov5m-seg.pt') # load from PyTorch Hub (WARNUNG: Inferenz noch nicht unterstützt)

Ultralytics YOLOv5 v7.0 Instanz-Segmentierung


exportieren

Exportiere das YOLOv5s-seg Modell nach ONNX und TensorRT:

python export.py --weights yolov5s-seg.pt --include onnx engine --img 640 --device 0

Ultralytics YOLOv5 v7.0 Instanz-Segmentierung

Hast du noch Fragen? Frag im Ultralytics Forum, melde einen Fehler oder reiche einen PR im Repo ein. Du kannst auch unser YOLOv5 segmentation Colab notebook für Schnellstart-Tutorials nutzen.

Facebook-LogoTwitter-LogoLinkedIn-LogoKopier-Link-Symbol

Lies mehr in dieser Kategorie

Lass uns gemeinsam die Zukunft
der KI gestalten!

Beginne deine Reise in die Zukunft des maschinellen Lernens