Vai al contenuto

Ultralytics YOLOv8 Modalità

Ultralytics YOLO ecosistema e integrazioni

Introduzione

Ultralytics YOLOv8 non è solo un altro modello di rilevamento di oggetti: è un framework versatile progettato per coprire l'intero ciclo di vita dei modelli di apprendimento automatico, dall'ingestione dei dati e la formazione dei modelli alla convalida, alla distribuzione e al monitoraggio nel mondo reale. Ogni modalità ha uno scopo specifico ed è progettata per offrire la flessibilità e l'efficienza necessarie per diversi compiti e casi d'uso.



Guarda: Ultralytics Tutorial delle modalità: Addestramento, Convalida, Previsione, Esportazione e Benchmark.

Le modalità in sintesi

Conoscere le diverse modalità supportate da Ultralytics YOLOv8 è fondamentale per ottenere il massimo dai tuoi modelli:

  • Modalità di addestramento: Metti a punto il tuo modello su set di dati personalizzati o precaricati.
  • Modalità Val: Un checkpoint post-training per convalidare le prestazioni del modello.
  • Modalità predittiva: Scatena la potenza predittiva del tuo modello su dati reali.
  • Modalità di esportazione: Rendi il tuo modello pronto per la distribuzione in vari formati.
  • Modalità di tracciamento: Estendi il tuo modello di rilevamento degli oggetti alle applicazioni di tracciamento in tempo reale.
  • Modalità Benchmark: Analizza la velocità e la precisione del tuo modello in diversi ambienti di distribuzione.

Questa guida completa ha l'obiettivo di fornirti una panoramica e delle indicazioni pratiche su ciascuna modalità, aiutandoti a sfruttare tutto il potenziale di YOLOv8.

Treno

La modalità Train è utilizzata per addestrare un modello YOLOv8 su un set di dati personalizzato. In questa modalità, il modello viene addestrato utilizzando il set di dati e gli iperparametri specificati. Il processo di addestramento prevede l'ottimizzazione dei parametri del modello in modo che possa prevedere con precisione le classi e le posizioni degli oggetti in un'immagine.

Esempi di treni

Val

La modalità Val è utilizzata per convalidare un modello YOLOv8 dopo che è stato addestrato. In questa modalità, il modello viene valutato su un set di validazione per misurarne l'accuratezza e le prestazioni di generalizzazione. Questa modalità può essere utilizzata per mettere a punto gli iperparametri del modello per migliorarne le prestazioni.

Esempi di val

Prevedere

La modalità Predict è utilizzata per fare previsioni utilizzando un modello YOLOv8 addestrato su nuove immagini o video. In questa modalità, il modello viene caricato da un file di checkpoint e l'utente può fornire immagini o video per eseguire l'inferenza. Il modello predice le classi e le posizioni degli oggetti nelle immagini o nei video in ingresso.

Prevedere gli esempi

Esportazione

La modalità di esportazione è utilizzata per esportare un modello YOLOv8 in un formato utilizzabile per la distribuzione. In questa modalità, il modello viene convertito in un formato che può essere utilizzato da altre applicazioni software o dispositivi hardware. Questa modalità è utile per distribuire il modello in ambienti di produzione.

Esempi di esportazione

Traccia

La modalità Track è utilizzata per tracciare gli oggetti in tempo reale utilizzando un modello YOLOv8 . In questa modalità, il modello viene caricato da un file di checkpoint e l'utente può fornire un flusso video in diretta per eseguire il tracciamento degli oggetti in tempo reale. Questa modalità è utile per applicazioni come i sistemi di sorveglianza o le auto a guida autonoma.

Esempi di tracce

Benchmark

La modalità Benchmark viene utilizzata per tracciare un profilo della velocità e della precisione dei vari formati di esportazione di YOLOv8. I benchmark forniscono informazioni sulle dimensioni del formato esportato, la sua velocità e la sua precisione. mAP50-95 metriche (per il rilevamento degli oggetti, la segmentazione e la posa) o accuracy_top5 metriche (per la classificazione) e il tempo di inferenza in millisecondi per immagine nei vari formati di esportazione come ONNX, OpenVINO, TensorRT e altri. Queste informazioni possono aiutare gli utenti a scegliere il formato di esportazione ottimale per il loro caso d'uso specifico, in base ai loro requisiti di velocità e accuratezza.

Esempi di benchmark

DOMANDE FREQUENTI

Come posso addestrare un modello di rilevamento degli oggetti personalizzato con Ultralytics YOLOv8 ?

L'addestramento di un modello personalizzato di rilevamento degli oggetti con Ultralytics YOLOv8 prevede l'utilizzo della modalità di addestramento. Hai bisogno di un set di dati formattato nel formato YOLO , contenente immagini e file di annotazione corrispondenti. Usa il seguente comando per avviare il processo di addestramento:

Esempio

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

Per istruzioni più dettagliate, puoi consultare la Guida al trenoUltralytics .

Quali metriche utilizza Ultralytics YOLOv8 per convalidare le prestazioni del modello?

Ultralytics YOLOv8 utilizza diverse metriche durante il processo di convalida per valutare le prestazioni del modello. Questi includono:

  • mAP (mean Average Precision): Valuta l'accuratezza del rilevamento degli oggetti.
  • IOU (Intersection over Union): Misura la sovrapposizione tra i riquadri di delimitazione previsti e quelli della verità a terra.
  • Precisione e richiamo: La precisione misura il rapporto tra i veri positivi rilevati e il totale dei positivi rilevati, mentre il richiamo misura il rapporto tra i veri positivi rilevati e il totale dei positivi effettivi.

Puoi eseguire il seguente comando per avviare la convalida:

Esempio

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

Per ulteriori dettagli, consulta la Guida alla convalida.

Come posso esportare il mio modello YOLOv8 per la distribuzione?

Ultralytics YOLOv8 offre una funzionalità di esportazione per convertire il tuo modello addestrato in vari formati di distribuzione come ONNX, TensorRT, CoreML e altri ancora. Usa il seguente esempio per esportare il tuo modello:

Esempio

from ultralytics import YOLO

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

I passaggi dettagliati per ogni formato di esportazione sono riportati nella Guida all'esportazione.

Qual è lo scopo della modalità benchmark in Ultralytics YOLOv8 ?

La modalità Benchmark di Ultralytics YOLOv8 è utilizzata per analizzare la velocità e l'accuratezza di vari formati di esportazione come ONNX, TensorRT e OpenVINO. Fornisce metriche come le dimensioni del modello, mAP50-95 per il rilevamento degli oggetti e il tempo di inferenza tra diverse configurazioni hardware, aiutandoti a scegliere il formato più adatto alle tue esigenze di implementazione.

Esempio

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

Per maggiori dettagli, consulta la Guida ai benchmark.

Come posso eseguire il tracciamento degli oggetti in tempo reale utilizzando Ultralytics YOLOv8 ?

Il tracciamento degli oggetti in tempo reale può essere ottenuto utilizzando la modalità track di Ultralytics YOLOv8 . Questa modalità estende le capacità di rilevamento degli oggetti per tracciarli nei fotogrammi video o nei feed live. Usa il seguente esempio per abilitare il tracciamento:

Esempio

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

Per istruzioni approfondite, visita la Guida ai binari.



Creato 2023-11-12, Aggiornato 2024-07-04
Autori: glenn-jocher (6)

Commenti