libreyolo predict

Esegue un modello caricato su una sorgente e stampa le predizioni. La sorgente può essere un'immagine, una directory, un video, un URL o uno stream dal vivo; il modello può essere un checkpoint o un artefatto esportato.

Comando
libreyolo predict
Obbligatorio
source
Output
Predizioni su stdout. Con save=true, file annotati in runs/detect/predict

Sinossi

bash
libreyolo predict source=<path|url|index> [model=<name|path>] [key=value ...]

Gli argomenti sono coppie key=value. Lo stesso comando accetta anche la forma POSIX, quindi conf=0.4 e --conf 0.4 sono intercambiabili, e un booleano scritto save=true diventa --save. I nomi con un underscore accettano entrambe le grafie: max_det=50 e --max-det 50 raggiungono la stessa opzione.

libreyolo detect predict ... è accettato e si comporta in modo identico; la parola del task viene rimossa prima del parsing.

Argomenti

ArgomentoPredefinitoSignificato
sourcePercorso di un'immagine, directory o URL. Obbligatorio
modelyolox-sNome o percorso del modello
conf0.25Soglia di confidenza
iou0.45Soglia di IoU per NMS
imgszDimensione dell'immagine di input: 640 (quadrata) o 480x640 (altezza x larghezza). Se non impostata, la dimensione di input propria del modello
classesFiltra per ID di classe, ad es. [0,2,5]. È accettato anche un intero singolo
max_det300Numero massimo di rilevamenti per immagine
agnostic_nmsfalseNMS agnostica rispetto alla classe: tra i box che si sovrappongono oltre iou, tiene solo quello con il punteggio più alto, qualunque sia la classe. Detect, segment, pose e OBB
halffalseInferenza in FP16 (solo CUDA, richiede il supporto del modello)
savefalseSalva le immagini annotate
batch1Immagini per passaggio in avanti per le sorgenti di tipo directory. Sopra 1 esegue una vera inferenza in batch sui modelli che la supportano
streamfalseRestituisce i risultati in modo incrementale. Si attiva automaticamente per webcam e stream dal vivo
stream_bufferfalseMette in buffer ogni frame dal vivo invece di conservare solo il più recente
vid_stride1Elabora un frame video o dal vivo ogni N
showfalseMostra i risultati di video e dal vivo; q interrompe
tilingfalseInferenza a tasselli per immagini grandi
overlap_ratio0.2Rapporto di sovrapposizione tra i tasselli
output_pathPercorso di output esplicito. Altrimenti project/name quando save=true
color_formatautoColore in input: auto, rgb, bgr
output_file_formatFormato di output: jpg, png, webp
deviceautoDispositivo: 0, cpu, mps, auto
face_detectorModello per il rilevamento dei volti (percorso o nome CLI). Obbligatorio per i modelli di gaze
galleryGalleria di volti .npz prodotta da libreyolo enroll con cui identificare i volti. Solo per i modelli di embedding facciali
gallery_threshold0.4Soglia di coseno per una corrispondenza di identità nella galleria
projectruns/detectRadice della directory di output
namepredictNome dell'esperimento
exist_okfalseRiusa la directory di output esistente
jsonfalseOutput JSON su stdout
quietfalseSilenzia stderr
verbosefalseOutput dettagliato su stderr
help_jsonfalseStampa lo schema del comando come JSON ed esce
ArgomentoDefaultSignificato
maskNoneMaschera binaria di inpainting per una singola immagine, per i modelli che la richiedono
trimapNoneTrimap a tre livelli per una singola immagine, per i modelli di matting guidato

Esempi

Base
libreyolo predict model=LibreYOLO9s.pt \  source=https://raw.githubusercontent.com/LibreYOLO/libreyolo/release/libreyolo/assets/parkour.jpg
Salvare le immagini annotate
libreyolo predict model=LibreYOLO9s.pt save=true \  project=runs/detect name=parkour exist_ok=true \  source=https://raw.githubusercontent.com/LibreYOLO/libreyolo/release/libreyolo/assets/parkour.jpg
Classi filtrate, JSON su stdout
# la classe 0 è person nella lista di classi COCO fornita con il checkpoint.libreyolo predict model=LibreYOLO9s.pt classes="[0]" conf=0.4 max_det=50 \  json=true quiet=true \  source=https://raw.githubusercontent.com/LibreYOLO/libreyolo/release/libreyolo/assets/parkour.jpg

Note

Un artefatto esportato si carica esattamente come un checkpoint, quindi model=weights/LibreYOLO9s.onnx e model=weights/LibreYOLO9s.engine sono valori validi per model. Tre opzioni vengono rifiutate su quei runtime invece di essere ignorate: tiling, overlap_ratio e output_file_format escono con config_unsupported quando un backend di runtime non può rispettarle.

half va nella direzione opposta: viene accettato e ignorato. L'inferenza nativa in PyTorch registra che è stato ignorato e prosegue in FP32, e un runtime esportato mantiene la precisione con cui è stato esportato, quindi per l'inferenza in FP16 bisogna esportare con half=true.

I modelli di gaze (stima dello sguardo) sono a due stadi e non hanno un rilevatore proprio, quindi face_detector è obbligatorio per loro. gallery si applica solo ai modelli il cui task è embed; passarlo a qualsiasi altro esce con config_unsupported.

stdout trasporta i risultati e nient'altro; avanzamento, avvisi ed errori vanno su stderr. json=true stampa un oggetto JSON per invocazione, o uno per frame quando è in streaming, ciascuno con il proprio schema_version. quiet=true silenzia stderr. Insieme danno a un lettore automatico uno stream di stdout pulito.

Il codice di uscita è 0 in caso di successo, 2 per un errore di uso o di configurazione, 3 quando la sorgente non viene trovata, 4 quando il modello non può essere caricato e 1 per altri errori a runtime.

help_json=true stampa i parametri, i tipi, i valori predefiniti e i flag del comando come JSON senza eseguire nulla, ed è il modo affidabile per rileggere questa tabella da una versione installata.

Correlati: libreyolo val per metriche misurate su un dataset, libreyolo export per produrre gli artefatti di runtime citati sopra.

Verificato con LibreYOLO v1.6.0.