Overslaan naar inhoud

Ultralytics YOLOv8 Modi

Ultralytics YOLO ecosysteem en integraties

Inleiding

Ultralytics YOLOv8 is niet zomaar een model voor objectdetectie; het is een veelzijdig framework dat is ontworpen om de hele levenscyclus van modellen voor machinaal leren te bestrijken, van gegevensinvoer en modeltraining tot validatie, implementatie en tracking in de praktijk. Elke modus dient een specifiek doel en is ontworpen om je de flexibiliteit en efficiƫntie te bieden die nodig is voor verschillende taken en gebruikssituaties.



Kijken: Ultralytics Modi Tutorial: Trainen, Valideren, Voorspellen, Exporteren & Benchmarken.

Modi in een oogopslag

Inzicht in de verschillende modi die Ultralytics YOLOv8 ondersteunt is essentieel om het maximale uit je modellen te halen:

  • Train modus: Verfijn je model op aangepaste of vooraf geladen datasets.
  • Valmodus: Een controlepunt na de training om de prestaties van het model te valideren.
  • Voorspelmodus: Gebruik de voorspellende kracht van je model op echte gegevens.
  • Exportmodus: Maak je model gebruiksklaar in verschillende formaten.
  • Volgmodus: Breid je objectdetectiemodel uit naar realtime trackingtoepassingen.
  • Benchmarkmodus: Analyseer de snelheid en nauwkeurigheid van je model in verschillende inzetomgevingen.

Deze uitgebreide gids geeft je een overzicht en praktische inzichten in elke modus, zodat je het volledige potentieel van YOLOv8 kunt benutten.

Trein

De modus Trainen wordt gebruikt voor het trainen van een YOLOv8 model op een aangepaste dataset. In deze modus wordt het model getraind met behulp van de gespecificeerde dataset en hyperparameters. Tijdens het trainingsproces worden de parameters van het model geoptimaliseerd zodat het nauwkeurig de klassen en locaties van objecten in een afbeelding kan voorspellen.

Trein Voorbeelden

Val

De modus Val wordt gebruikt voor het valideren van een YOLOv8 model nadat het is getraind. In deze modus wordt het model geƫvalueerd op een validatieset om de nauwkeurigheid en generalisatieprestaties te meten. Deze modus kan worden gebruikt om de hyperparameters van het model af te stemmen om de prestaties te verbeteren.

Val Voorbeelden

Voorspel

De modus Voorspellen wordt gebruikt om voorspellingen te doen met behulp van een getraind YOLOv8 model op nieuwe afbeeldingen of video's. In deze modus wordt het model geladen vanuit een controlebestand en kan de gebruiker afbeeldingen of video's aanleveren om de inferentie uit te voeren. Het model voorspelt de klassen en locaties van objecten in de ingevoerde afbeeldingen of video's.

Voorbeelden voorspellen

Exporteer

De exportmodus wordt gebruikt om een YOLOv8 model te exporteren naar een formaat dat gebruikt kan worden voor implementatie. In deze modus wordt het model geconverteerd naar een formaat dat kan worden gebruikt door andere softwaretoepassingen of hardwareapparaten. Deze modus is handig bij het uitrollen van het model naar productieomgevingen.

Voorbeelden exporteren

Track

De Trackmodus wordt gebruikt om objecten in real-time te volgen met behulp van een YOLOv8 model. In deze modus wordt het model geladen vanuit een checkpointbestand en kan de gebruiker een live videostream aanleveren om het volgen van objecten in real-time uit te voeren. Deze modus is handig voor toepassingen zoals bewakingssystemen of zelfrijdende auto's.

Spoor Voorbeelden

Benchmark

De benchmarkmodus wordt gebruikt om de snelheid en nauwkeurigheid van verschillende exportformaten voor YOLOv8 te profileren. De benchmarks geven informatie over de grootte van het geƫxporteerde formaat, de mAP50-95 metriek (voor objectdetectie, segmentatie en houding) of accuracy_top5 metriek (voor classificatie) en de inferentietijd in milliseconden per afbeelding in verschillende exportformaten zoals ONNX, OpenVINO, TensorRT en andere. Deze informatie kan gebruikers helpen om het optimale exportformaat te kiezen voor hun specifieke toepassing op basis van hun eisen voor snelheid en nauwkeurigheid.

Benchmark voorbeelden

FAQ

Hoe train ik een aangepast objectdetectiemodel met Ultralytics YOLOv8 ?

Voor het trainen van een aangepast objectdetectiemodel met Ultralytics YOLOv8 moet je de trainmodus gebruiken. Je hebt een dataset nodig die is opgemaakt in het formaat YOLO , met afbeeldingen en bijbehorende annotatiebestanden. Gebruik het volgende commando om het trainingsproces te starten:

Voorbeeld

from ultralytics import YOLO

# Train a custom model
model = YOLO("yolov8n.pt")
model.train(data="path/to/dataset.yaml", epochs=100, imgsz=640)
yolo train data=path/to/dataset.yaml epochs=100 imgsz=640

Voor meer gedetailleerde instructies kun je de Ultralytics treingids raadplegen.

Welke metrieken gebruikt Ultralytics YOLOv8 om de prestaties van het model te valideren?

Ultralytics YOLOv8 gebruikt verschillende meetmethoden tijdens het validatieproces om de prestaties van het model te beoordelen. Deze omvatten:

  • mAP (gemiddelde gemiddelde precisie): Hiermee wordt de nauwkeurigheid van objectdetectie geĆ«valueerd.
  • IOU (Intersection over Union): Meet de overlap tussen voorspelde en ground truth bounding boxes.
  • Precisie en Recall: Precisie meet de verhouding van ware positieve detecties tot het totale aantal gedetecteerde positieven, terwijl recall de verhouding meet van ware positieve detecties tot het totale aantal werkelijke positieven.

Je kunt het volgende commando uitvoeren om de validatie te starten:

Voorbeeld

from ultralytics import YOLO

# Validate the model
model = YOLO("yolov8n.pt")
model.val(data="path/to/validation.yaml")
yolo val data=path/to/validation.yaml

Raadpleeg de Validatiegids voor meer informatie.

Hoe kan ik mijn YOLOv8 model exporteren voor implementatie?

Ultralytics YOLOv8 biedt een exportfunctie om je getrainde model te converteren naar verschillende implementatieformaten zoals ONNX, TensorRT, CoreML, en meer. Gebruik het volgende voorbeeld om je model te exporteren:

Voorbeeld

from ultralytics import YOLO

# Export the model
model = YOLO("yolov8n.pt")
model.export(format="onnx")
yolo export model=yolov8n.pt format=onnx

Gedetailleerde stappen voor elk exportformaat vind je in de Exportgids.

Wat is het doel van de benchmarkmodus in Ultralytics YOLOv8 ?

De benchmarkmodus in Ultralytics YOLOv8 wordt gebruikt om de snelheid en nauwkeurigheid van verschillende exportformaten te analyseren, zoals ONNX, TensorRT en OpenVINO. Het levert statistieken zoals modelgrootte, mAP50-95 voor objectdetectie en inferentietijd voor verschillende hardwareopstellingen, zodat je het meest geschikte formaat kunt kiezen voor je inzet.

Voorbeeld

from ultralytics.utils.benchmarks import benchmark

# Benchmark on GPU
benchmark(model="yolov8n.pt", data="coco8.yaml", imgsz=640, half=False, device=0)
yolo benchmark model=yolov8n.pt data='coco8.yaml' imgsz=640 half=False device=0

Raadpleeg de Benchmarkgids voor meer informatie.

Hoe kan ik objecten in realtime volgen met Ultralytics YOLOv8 ?

Objecten kunnen in realtime worden gevolgd met de trackmodus in Ultralytics YOLOv8 . Deze modus breidt de objectdetectiemogelijkheden uit om objecten in videoframes of live feeds te volgen. Gebruik het volgende voorbeeld om het volgen in te schakelen:

Voorbeeld

from ultralytics import YOLO

# Track objects in a video
model = YOLO("yolov8n.pt")
model.track(source="path/to/video.mp4")
yolo track source=path/to/video.mp4

Ga voor uitgebreide instructies naar de Track Guide.



Gemaakt op 2023-11-12, Bijgewerkt op 2024-07-04
Auteurs: glenn-jocher (6)

Reacties