Ultralytics YOLO27:
Get Started

Gestione delle code con Ultralytics YOLO26#

Che cos'è la gestione delle code?#

Open Queue Management In Colab

La gestione delle code con Ultralytics YOLO26 consiste nell'organizzare e controllare le file di persone o veicoli per ridurre i tempi di attesa e migliorare l'efficienza. L'obiettivo è ottimizzare le code per migliorare la soddisfazione dei clienti e le prestazioni del sistema in contesti diversi, come negozi, banche, aeroporti e strutture sanitarie.



Guarda: Come creare un sistema di gestione delle code con Ultralytics YOLO26 | Analisi delle code in tempo reale 🚀

Vantaggi della gestione delle code#

  • Tempi di attesa ridotti: i sistemi di gestione delle code le organizzano in modo efficiente, riducendo al minimo i tempi di attesa dei clienti. Questo aumenta il livello di soddisfazione, perché i clienti trascorrono meno tempo in attesa e più tempo a interagire con prodotti o servizi.
  • Maggiore efficienza: l'implementazione della gestione delle code consente alle aziende di allocare le risorse in modo più efficace. Analizzando i dati sulle code e ottimizzando la distribuzione del personale, le aziende possono semplificare le operazioni, ridurre i costi e migliorare la produttività complessiva.
  • Informazioni in tempo reale: la gestione delle code basata su YOLO26 fornisce dati immediati sulla lunghezza delle code e sui tempi di attesa, consentendo ai responsabili di prendere rapidamente decisioni informate.
  • Esperienza cliente migliore: riducendo la frustrazione legata alle lunghe attese, le aziende possono migliorare notevolmente la soddisfazione e la fidelizzazione dei clienti.

Applicazioni nel mondo reale#

LogisticaCommercio al dettaglio
Gestione delle code allo sportello dei biglietti in aeroporto con Ultralytics YOLO26Monitoraggio delle code tra la folla con Ultralytics YOLO26
Gestione delle code allo sportello dei biglietti in aeroporto con Ultralytics YOLO26Monitoraggio delle code tra la folla con Ultralytics YOLO26

Gestisci le code con YOLO26#

La soluzione QueueManager conta gli oggetti che rimangono all'interno di una regione definita in ogni frame, fornendoti la lunghezza della coda in tempo reale, che puoi scrivere in un video di output. Passa una regione poligonale che copra l'area di attesa, quindi esegui la soluzione sulla sorgente video usando l'API Python o la CLI.

Gestione delle code con Ultralytics YOLO
# Run a queue example
yolo solutions queue show=True

# Pass a source video
yolo solutions queue source="path/to/video.mp4"

# Pass queue coordinates
yolo solutions queue region="[(20, 400), (1080, 400), (1080, 360), (20, 360)]"

Argomenti di QueueManager#

Ecco una tabella con gli argomenti di QueueManager:

ArgomentoTipoPredefinitoDescrizione
modelstrNonePercorso a un file modello Ultralytics YOLO.
regionlist o dictNonePunti che definiscono la regione di interesse: un elenco di tuple (x, y) oppure un dizionario che associa i nomi delle regioni agli elenchi di punti per più regioni (solo RegionCounter). Quando None, le soluzioni che richiedono una regione usano un valore predefinito predefinito.
line_widthint2Spessore delle linee dei riquadri, dei punti chiave e dei conteggi disegnati dalla soluzione.
verboseboolTrueAbilita il log per frame della soluzione, con forma dell'input, conteggi per classe e velocità di elaborazione. La chiamata di tracking è sempre silenziosa.

La soluzione QueueManager supporta anche gli argomenti track:

ArgomentoTipoPredefinitoDescrizione
trackerstr'tracktrack.yaml'Specifica l'algoritmo di tracciamento da usare. Opzioni integrate: botsort.yaml, bytetrack.yaml, ocsort.yaml, deepocsort.yaml, fasttrack.yaml, tracktrack.yaml.
conffloat0.25Imposta la soglia di confidenza per le rilevazioni; valori più bassi consentono di tracciare più oggetti, ma possono includere falsi positivi.
ioufloat0.7Imposta la soglia di Intersezione sull'unione (IoU) per filtrare le rilevazioni sovrapposte.
classeslistNoneFiltra i risultati in base all'indice della classe. Ad esempio, classes=[0, 2, 3] traccia solo le classi specificate.
devicestrNoneSpecifica il dispositivo per l'inferenza (ad es. cpu, cuda:0 o 0). Consente di scegliere tra CPU, una GPU specifica o altri dispositivi di calcolo per l'esecuzione del modello.
imgszint or tuple640Dimensione dell'immagine di destinazione per l'inferenza: un intero per un'immagine quadrata o una coppia (height, width). Le forme vengono adattate allo stride del modello.
max_detint300Numero massimo di rilevazioni da mantenere per fotogramma prima del tracciamento, che limita gli oggetti elaborati da una soluzione nelle scene dense.
quantizeint or strNonePrecisione dell’inferenza: 16 (FP16) oppure 32/unset (FP32) per i modelli PyTorch e TorchScript quando non si usa la CPU; gli altri formati usano la precisione selezionata dal rispettivo artefatto e ambiente di esecuzione. Sostituisce l’argomento deprecato half.

Sono inoltre disponibili i seguenti parametri di visualizzazione:

ArgomentoTipoPredefinitoDescrizione
showboolFalseSe True, mostra le immagini o i video annotati in una finestra. Utile per ottenere un riscontro visivo immediato durante lo sviluppo o i test.
show_confboolTrueMostra il punteggio di confidenza di ogni rilevamento accanto all'etichetta. Fornisce indicazioni sul grado di certezza del modello per ciascun rilevamento.
show_labelsboolTrueMostra le etichette di ogni rilevamento nell'output visivo. Permette di identificare immediatamente gli oggetti rilevati.

Strategie di implementazione#

Quando implementi la gestione delle code con YOLO26, tieni presenti queste best practice:

  1. Posizionamento strategico delle telecamere: posiziona le telecamere in modo da riprendere l'intera area della coda senza ostacoli.
  2. Definisci regioni di coda adeguate: definisci con attenzione i confini della coda in base alla disposizione fisica del tuo spazio.
  3. Regola la soglia di confidenza del rilevamento: regola con precisione la soglia di confidenza in base alle condizioni di illuminazione e alla densità della folla.
  4. Integra i sistemi esistenti: collega la soluzione di gestione delle code ai sistemi di segnaletica digitale o di notifica al personale per automatizzare le risposte.

Domande frequenti#

  • Per usare Ultralytics YOLO26 per gestire le code in tempo reale, puoi seguire questi passaggi:

    1. Acquisisci il flusso video usando cv2.VideoCapture.
    2. Definisci la regione di interesse (ROI) per la gestione delle code.
    3. Inizializza solutions.QueueManager con un modello YOLO26, ad esempio yolo26n.pt, e la regione.
    4. Elabora i frame per rilevare gli oggetti e gestire le code.

    Ecco un esempio essenziale:

    import cv2
    
    from ultralytics import solutions
    
    cap = cv2.VideoCapture("path/to/video.mp4")
    queue_region = [(20, 400), (1080, 400), (1080, 360), (20, 360)]
    
    queuemanager = solutions.QueueManager(
        model="yolo26n.pt",
        region=queue_region,
        line_width=3,
        show=True,
    )
    
    while cap.isOpened():
        success, im0 = cap.read()
        if not success:
            break
        results = queuemanager(im0)
    
    cap.release()
    cv2.destroyAllWindows()

    L'utilizzo di Ultralytics Platform può semplificare questo processo, offrendo una piattaforma intuitiva per addestrare e distribuire i modelli alla base della tua soluzione di gestione delle code.

  • Usare Ultralytics YOLO26 per la gestione delle code offre diversi vantaggi:

    • Tempi di attesa drasticamente ridotti: organizza le code in modo efficiente, riducendo i tempi di attesa dei clienti e aumentando la loro soddisfazione.
    • Maggiore efficienza: analizza i dati sulle code per ottimizzare la distribuzione del personale e le operazioni, riducendo così i costi.
    • Informazioni in tempo reale: fornisce conteggi delle code in tempo reale per ogni frame, consentendo di intervenire rapidamente quando le file si allungano.
    • Scalabilità: si adatta facilmente a diversi contesti, come negozi, aeroporti e strutture sanitarie.

    Per maggiori dettagli, esplora le nostre soluzioni di gestione delle code.

  • Ultralytics YOLO26 offre diversi vantaggi rispetto a TensorFlow e Detectron2 per la gestione delle code:

    • Prestazioni in tempo reale: YOLO26 è noto per le sue capacità di rilevamento in tempo reale e offre velocità di elaborazione superiori.
    • Facilità d'uso: Ultralytics offre un'esperienza intuitiva, dall'addestramento alla distribuzione, tramite Ultralytics Platform.
    • Modelli preaddestrati: puoi accedere a una gamma di modelli preaddestrati, riducendo al minimo il tempo necessario per la configurazione.
    • Supporto della community: la documentazione completa e il supporto di una community attiva semplificano la risoluzione dei problemi.

    Scopri come iniziare con Ultralytics YOLO.

  • Sì, Ultralytics YOLO26 è in grado di gestire diversi tipi di code, comprese quelle negli aeroporti e nei negozi. Configurando QueueManager con regioni e impostazioni specifiche, YOLO26 può adattarsi a diverse disposizioni e densità delle code.

    Esempio per gli aeroporti:

    queue_region_airport = [(50, 600), (1200, 600), (1200, 550), (50, 550)]
    queue_airport = solutions.QueueManager(
        model="yolo26n.pt",
        region=queue_region_airport,
        line_width=3,
    )

    Per maggiori informazioni sulle diverse applicazioni, consulta la sezione Applicazioni reali.

  • Ultralytics YOLO26 viene utilizzato in diverse applicazioni reali per la gestione delle code:

    • Negozi: monitora le file alle casse per ridurre i tempi di attesa e migliorare la soddisfazione dei clienti.
    • Aeroporti: gestisce le code agli sportelli dei biglietti e ai controlli di sicurezza per rendere più agevole l'esperienza dei passeggeri.
    • Settore sanitario: ottimizza il flusso dei pazienti nelle cliniche e negli ospedali.
    • Banche: migliora il servizio clienti gestendo le code in modo efficiente.

    Leggi il nostro articolo del blog sulla gestione delle code nel mondo reale per scoprire come la visione artificiale sta trasformando il monitoraggio delle code in diversi settori.

Commenti