Interfaccia a riga di comando
L'interfaccia a riga di comando (CLI) di Ultralytics offre un modo semplice per utilizzare i modelli YOLO di Ultralytics senza la necessità di un ambiente Python. La CLI supporta l'esecuzione di varie attività direttamente dal terminale utilizzando il yolo comando, che non richiede personalizzazioni o codice Python.
Guarda: Padroneggiare Ultralytics YOLO: CLI
Esempio
Ultralytics yolo i comandi utilizzano la seguente sintassi:
yolo TASK MODE ARGS
Dove:
- TASK (opzionale) è uno tra [detect, segment, classify, pose, obb]
- MODE (obbligatorio) è uno tra [train, val, predict, export, track, benchmark]
- ARGS (opzionali) sono un numero qualsiasi di personalizzazioni arg=value coppie come imgsz=320 che sovrascrivono le impostazioni predefinite.
Vedi tutti gli ARGS nel completo Guida alla Configurazione o con yolo cfg.
Addestra un modello di rilevamento per 10 epoche con un tasso di apprendimento iniziale di 0.01:
yolo train data=coco8.yaml model=yolo26n.pt epochs=10 lr0=0.01
Predict utilizzando un modello di segmentazione pre-addestrato su un video di YouTube con dimensione immagine 320:
yolo predict model=yolo26n-seg.pt source='https://youtu.be/LNwODJXcvt4' imgsz=320
Convalida di un modello di rilevamento pre-addestrato con una dimensione del batch di 1 e una dimensione dell'immagine di 640:
yolo val model=yolo26n.pt data=coco8.yaml batch=1 imgsz=640
Esporta un modello di classificazione YOLO in formato ONNX con dimensione dell'immagine 224x128 (nessuna TASK richiesta):
yolo export model=yolo26n-cls.pt format=onnx imgsz=224,128
Esegui comandi speciali per visualizzare la versione, le impostazioni, eseguire controlli e altro:
yolo help
yolo checks
yolo version
yolo settings
yolo copy-cfg
yolo cfg
Dove:
TASK(facoltativo) è uno tra[detect, segment, classify, pose, obb]. Se non viene passato esplicitamente, YOLO tenterà di dedurre ilTASKdal tipo di modello.MODE(obbligatorio) è uno tra[train, val, predict, export, track, benchmark]ARGS(opzionali) sono un numero qualsiasi di personalizzazioniarg=valuecoppie comeimgsz=320che sovrascrivono le impostazioni predefinite. Per un elenco completo delleARGS, consultare il Configurazione page edefault.yaml.
Attenzione
Gli argomenti devono essere passati come arg=val coppie, separate da un segno di uguale = e delimitate da spazi tra le coppie. Non utilizzare prefissi -- o virgole per gli argomenti , tra gli argomenti.
yolo predict model=yolo26n.pt imgsz=640 conf=0.25✅yolo predict model yolo26n.pt imgsz 640 conf 0.25❌yolo predict --model yolo26n.pt --imgsz 640 --conf 0.25❌
Addestramento
Addestra YOLO sul dataset COCO8 per 100 epoche con una dimensione dell'immagine di 640. Per un elenco completo degli argomenti disponibili, consulta la pagina Configurazione.
Esempio
Avvia l'addestramento di YOLO26n su COCO8 per 100 epoche con dimensione immagine 640:
yolo detect train data=coco8.yaml model=yolo26n.pt epochs=100 imgsz=640
Riprendi una sessione di training interrotta:
yolo detect train resume model=last.pt
Valutazione
Convalida del accuratezza del modello addestrato sul dataset COCO8. Non sono necessari argomenti poiché il model mantiene il suo training data e gli argomenti come attributi del modello.
Esempio
Convalida un modello ufficiale YOLO26n:
yolo detect val model=yolo26n.pt
Convalida di un modello addestrato personalizzato:
yolo detect val model=path/to/best.pt
Predizione
Usa un modello addestrato per eseguire previsioni sulle immagini.
Esempio
Effettua previsioni con un modello ufficiale YOLO26n:
yolo detect predict model=yolo26n.pt source='https://ultralytics.com/images/bus.jpg'
Predict con un modello personalizzato:
yolo detect predict model=path/to/best.pt source='https://ultralytics.com/images/bus.jpg'
Esportazione
Esporta un modello in un formato diverso come ONNX o CoreML.
Esempio
Esporta un modello ufficiale YOLO26n in formato ONNX:
yolo export model=yolo26n.pt format=onnx
Esporta un modello personalizzato addestrato in formato ONNX:
yolo export model=path/to/best.pt format=onnx
I formati di esportazione Ultralytics disponibili sono nella tabella sottostante. Puoi esportare in qualsiasi formato usando il format argomento, cioè, format='onnx' oppure format='engine'.
| Formato | format Argomento | Modello | Metadati | Argomenti |
|---|---|---|---|---|
| PyTorch | - | yolo26n.pt | ✅ | - |
| TorchScript | torchscript | yolo26n.torchscript | ✅ | imgsz, half, dynamic, optimize, nms, batch, device |
| ONNX | onnx | yolo26n.onnx | ✅ | imgsz, half, dynamic, simplify, opset, nms, batch, device |
| OpenVINO | openvino | yolo26n_openvino_model/ | ✅ | imgsz, half, dynamic, int8, nms, batch, data, fraction, device |
| TensorRT | engine | yolo26n.engine | ✅ | imgsz, half, dynamic, simplify, workspace, int8, nms, batch, data, fraction, device |
| CoreML | coreml | yolo26n.mlpackage | ✅ | imgsz, dynamic, half, int8, nms, batch, device |
| TF SavedModel | saved_model | yolo26n_saved_model/ | ✅ | imgsz, keras, int8, nms, batch, device |
| TF GraphDef | pb | yolo26n.pb | ❌ | imgsz, batch, device |
| TF Lite | tflite | yolo26n.tflite | ✅ | imgsz, half, int8, nms, batch, data, fraction, device |
| TF Edge TPU | edgetpu | yolo26n_edgetpu.tflite | ✅ | imgsz, device |
| TF.js | tfjs | yolo26n_web_model/ | ✅ | imgsz, half, int8, nms, batch, device |
| PaddlePaddle | paddle | yolo26n_paddle_model/ | ✅ | imgsz, batch, device |
| MNN | mnn | yolo26n.mnn | ✅ | imgsz, batch, int8, half, device |
| NCNN | ncnn | yolo26n_ncnn_model/ | ✅ | imgsz, half, batch, device |
| IMX500 | imx | yolo26n_imx_model/ | ✅ | imgsz, int8, data, fraction, nms, device |
| RKNN | rknn | yolo26n_rknn_model/ | ✅ | imgsz, batch, name, device |
| ExecuTorch | executorch | yolo26n_executorch_model/ | ✅ | imgsz, batch, device |
| Axelera | axelera | yolo26n_axelera_model/ | ✅ | imgsz, batch, int8, data, fraction, device |
Vedi tutti i export dettagli su Esportazione pagina.
Sovrascrittura degli argomenti predefiniti
Sovrascrivi gli argomenti predefiniti passandoli nella CLI come arg=value pairs.
Suggerimento
Addestra un modello di rilevamento per 10 epoche con un tasso di apprendimento di 0.01:
yolo detect train data=coco8.yaml model=yolo26n.pt epochs=10 lr0=0.01
Predict utilizzando un modello di segmentazione pre-addestrato su un video di YouTube con dimensione immagine 320:
yolo segment predict model=yolo26n-seg.pt source='https://youtu.be/LNwODJXcvt4' imgsz=320
Convalida di un modello di rilevamento pre-addestrato con una dimensione del batch di 1 e una dimensione dell'immagine di 640:
yolo detect val model=yolo26n.pt data=coco8.yaml batch=1 imgsz=640
Sovrascrittura del file di configurazione predefinito
Sovrascrivi il default.yaml file di configurazione passando interamente un nuovo file con il cfg argomento, come cfg=custom.yaml.
Per fare ciò, prima crea una copia di default.yaml nella tua directory di lavoro corrente con il yolo copy-cfg comando, che crea un default_copy.yaml file.
È quindi possibile passare questo file come cfg=default_copy.yaml insieme a qualsiasi argomento aggiuntivo, come imgsz=320 in questo esempio:
Esempio
yolo copy-cfg
yolo cfg=default_copy.yaml imgsz=320
Solutions Commands
Ultralytics soluzioni pronte all'uso per le applicazioni più comuni di visione artificiale tramite l'interfaccia a riga di comando CLI. Il yolo solutions Il comando offre funzionalità quali conteggio degli oggetti, ritaglio, sfocatura, monitoraggio dell'allenamento, mappe di calore, segmentazione delle istanze, VisionEye, stima della velocità, gestione delle code, analisi dei dati, inferenza Streamlit e tracciamento basato su zone — consultare la Soluzioni pagina per il catalogo completo. Esegui yolo solutions help per visualizzare l'elenco di tutte le soluzioni supportate e i relativi argomenti.
Esempio
Conta gli oggetti in un video o in uno streaming live:
yolo solutions count show=True
yolo solutions count source="path/to/video.mp4" # specify video file path
Ritaglia gli oggetti rilevati e salvali su disco:
yolo solutions crop show=True
yolo solutions crop source="path/to/video.mp4" # specify video file path
yolo solutions crop classes="[0, 2]" # crop only selected classes
Sfocare gli oggetti rilevati in un video per motivi di privacy o per mettere in risalto altre aree:
yolo solutions blur show=True
yolo solutions blur source="path/to/video.mp4" # specify video file path
yolo solutions blur classes="[0, 5]" # blur only selected classes
Monitora gli esercizi di allenamento utilizzando un modello di posa:
yolo solutions workout show=True
yolo solutions workout source="path/to/video.mp4" # specify video file path
# Use keypoints for ab-workouts
yolo solutions workout kpts="[5, 11, 13]" # left side
yolo solutions workout kpts="[6, 12, 14]" # right side
Genera una mappa termica che mostri la densità degli oggetti e i modelli di movimento:
yolo solutions heatmap show=True
yolo solutions heatmap source="path/to/video.mp4" # specify video file path
yolo solutions heatmap colormap=cv2.COLORMAP_INFERNO # customize colormap
yolo solutions heatmap region="[(20, 400), (1080, 400), (1080, 360), (20, 360)]" # restrict heatmap to a region
Esegui la segmentazione delle istanze con tracciamento su un video:
yolo solutions isegment show=True
yolo solutions isegment source="path/to/video.mp4" # specify video file path
yolo solutions isegment classes="[0, 5]" # segment only selected classes
Disegna le linee visive tra oggetto e osservatore con VisionEye:
yolo solutions visioneye show=True
yolo solutions visioneye source="path/to/video.mp4" # specify video file path
yolo solutions visioneye classes="[0, 5]" # monitor only selected classes
Stima la velocità degli oggetti in movimento in un video:
yolo solutions speed show=True
yolo solutions speed source="path/to/video.mp4" # specify video file path
yolo solutions speed meter_per_pixel=0.05 # set scale for real-world units
Conta gli oggetti in una coda o regione designata:
yolo solutions queue show=True
yolo solutions queue source="path/to/video.mp4" # specify video file path
yolo solutions queue region="[(20, 400), (1080, 400), (1080, 360), (20, 360)]" # configure queue coordinates
Genera grafici analitici (a linee, a barre, ad area o a torta) dai rilevamenti monitorati:
yolo solutions analytics show=True
yolo solutions analytics source="path/to/video.mp4" # specify video file path
yolo solutions analytics analytics_type="pie" show=True
yolo solutions analytics analytics_type="bar" show=True
yolo solutions analytics analytics_type="area" show=True
Esegui il rilevamento di oggetti, la segmentazione di istanze o la stima della posa in un browser web utilizzando Streamlit:
yolo solutions inference
yolo solutions inference model="path/to/model.pt" # use custom model
Traccia gli oggetti solo all'interno di una zona poligonale specificata:
yolo solutions trackzone show=True
yolo solutions trackzone source="path/to/video.mp4" # specify video file path
yolo solutions trackzone region="[(150, 150), (1130, 150), (1130, 570), (150, 570)]" # configure zone coordinates
Contare gli oggetti all'interno di specifiche aree poligonali:
yolo solutions region show=True
yolo solutions region source="path/to/video.mp4" # specify video file path
yolo solutions region region="[(20, 400), (1080, 400), (1080, 360), (20, 360)]" # configure region coordinates
Eseguire il monitoraggio degli allarmi di sicurezza con il rilevamento degli oggetti:
yolo solutions security show=True
yolo solutions security source="path/to/video.mp4" # specify video file path
Monitorare l'occupazione del parcheggio utilizzando zone predefinite:
yolo solutions parking source="path/to/video.mp4" json_file="bounding_boxes.json" # requires pre-built JSON
yolo solutions parking source="path/to/video.mp4" json_file="bounding_boxes.json" model="yolo26n.pt"
Visualizza le soluzioni disponibili e le relative opzioni:
yolo solutions help
Per maggiori informazioni sulle soluzioni Ultralytics, visitare la pagina Soluzioni.
FAQ
Come posso utilizzare l'interfaccia a riga di comando (CLI) di Ultralytics YOLO per l'addestramento del modello?
Per addestrare un modello utilizzando la CLI, esegui un comando a riga singola nel terminale. Ad esempio, per addestrare un modello di rilevamento per 10 epoche con un tasso di apprendimento di 0.01, esegui:
yolo train data=coco8.yaml model=yolo26n.pt epochs=10 lr0=0.01
Questo comando utilizza il train modalità con argomenti specifici. Per un elenco completo degli argomenti disponibili, fare riferimento alla Guida alla Configurazione.
Quali attività posso eseguire con la CLI di Ultralytics YOLO?
La CLI YOLO di Ultralytics supporta varie attività, tra cui detection, segmentation, classification, pose estimation e oriented bounding box detection. Puoi anche eseguire operazioni come:
- Addestra un modello: Esegui
yolo train data=<data.yaml> model=<model.pt> epochs=<num>. - Esegui previsioni: Usa
yolo predict model=<model.pt> source=<data_source> imgsz=<image_size>. - Esporta un modello: Esegui
yolo export model=<model.pt> format=<export_format>. - Utilizza le soluzioni: Esegui
yolo solutions <solution_name>per applicazioni pronte all'uso.
Personalizza ogni task con vari argomenti. Per la sintassi dettagliata e gli esempi, consulta le rispettive sezioni come Train, Predict ed Export.
Come posso convalidare l'accuratezza di un modello YOLO addestrato utilizzando la CLI?
Per convalidare l'accuratezza di un modello, accuratezza, usa il val mode. Ad esempio, per convalidare un modello di rilevamento pre-addestrato con un dimensione del batch di 1 e una dimensione dell'immagine di 640, esegui:
yolo val model=yolo26n.pt data=coco8.yaml batch=1 imgsz=640
Questo comando valuta il modello sul dataset specificato e fornisce metriche di performance come mAP, precisione e recall. Per maggiori dettagli, consulta la sezione Val.
In quali formati posso esportare i miei modelli YOLO utilizzando la CLI?
È possibile esportare i modelli YOLO in vari formati, tra cui ONNX, TensorRT, CoreML, TensorFlow e altri. Ad esempio, per esportare un modello in formato ONNX, esegui:
yolo export model=yolo26n.pt format=onnx
Il comando export supporta numerose opzioni per ottimizzare il modello per ambienti di distribuzione specifici. Per informazioni complete su tutti i formati di esportazione disponibili e sui relativi parametri specifici, visitare la pagina Esporta.
Come posso utilizzare le soluzioni predefinite nella CLI di Ultralytics?
Ultralytics fornisce soluzioni pronte all'uso tramite la solutions comando. Ad esempio, per contare gli oggetti in un video:
yolo solutions count source="path/to/video.mp4"
Queste soluzioni richiedono una configurazione minima e forniscono funzionalità immediate per attività comuni di computer vision. Per vedere tutte le soluzioni disponibili, eseguire yolo solutions help. Ogni soluzione ha parametri specifici che possono essere personalizzati per adattarsi alle tue esigenze.