Utilizzo di Ultralytics YOLO11 per eseguire inferenze batch

15 maggio 2025
Esplora la differenza tra inferenza in tempo reale e inferenza batch quando si utilizza Ultralytics YOLOv11 per varie applicazioni di computer vision.

15 maggio 2025
Esplora la differenza tra inferenza in tempo reale e inferenza batch quando si utilizza Ultralytics YOLOv11 per varie applicazioni di computer vision.
Se hai visto un'auto a guida autonoma in azione, hai assistito all'inferenza AI in tempo reale. Un'auto a guida autonoma utilizza in genere telecamere, sensori e intelligenza artificiale per elaborare l'ambiente circostante e prendere decisioni quasi istantanee. Tuttavia, quando non sono necessarie risposte rapide, l'inferenza in tempo reale può richiedere molte risorse.
Un'opzione migliore in questi casi è l'inferenza batch. Invece di elaborare i dati continuamente in tempo reale, un'inferenza batch può gestire grandi set di dati a intervalli programmati. Questo approccio aiuta a risparmiare risorse, ridurre il consumo di energia e diminuire i costi infrastrutturali.
Ad esempio, nelle applicazioni di computer vision, modelli come Ultralytics YOLO11 possono essere utilizzati per attività in tempo reale come il rilevamento di oggetti e la segmentazione di istanze. Tuttavia, l'elaborazione di grandi volumi di dati visivi in tempo reale può essere impegnativa.

Con l'inferenza batch, YOLO11 può essere eseguito su dati visivi in batch, riducendo il carico sul sistema e migliorando l'efficienza senza sacrificare le prestazioni. Ciò semplifica l'implementazione di soluzioni di Vision AI su larga scala senza sovraccaricare l'hardware o aumentare i costi.
In questo articolo, esploreremo l'inferenza batch, i suoi vantaggi e come l'inferenza batch utilizzando YOLO11 può essere applicata nelle applicazioni di computer vision. Iniziamo!
Puoi pensare all'inferenza batch come affrontare un compito di grandi dimensioni tutto in una volta invece di gestirlo pezzo per pezzo man mano che arriva. Invece di elaborare costantemente i dati in tempo reale, l'inferenza batch ti consente di elaborare grandi gruppi di dati a intervalli prestabiliti. Questo approccio è molto più efficiente quando non sono necessarie risposte immediate, contribuendo a risparmiare risorse di calcolo, ridurre il consumo di energia e tagliare i costi.
Nell'ambito della computer vision, ci sono alcune applicazioni in cui la bassa latenza è fondamentale. La bassa latenza si riferisce al ritardo minimo tra la ricezione dell'input (come un'immagine o un fotogramma video) e la risposta del sistema. Ad esempio, nel monitoraggio della sicurezza in tempo reale, anche piccoli ritardi possono comportare rischi per la sicurezza.
Tuttavia, in molti altri scenari di computer vision, la bassa latenza non è così critica. È qui che l'inferenza batch eccelle: quando il sistema non ha bisogno di reagire istantaneamente. L'inferenza batch funziona alimentando i dati visivi a un modello di computer vision in gruppi o batch, consentendo al sistema di elaborare grandi set di dati contemporaneamente anziché continuamente in tempo reale.
Ecco uno sguardo più da vicino ai passaggi coinvolti nell'inferenza batch:
Ora che abbiamo trattato cos'è l'inferenza batch e come differisce dall'inferenza in tempo reale, esaminiamo più da vicino quando utilizzarla.
L'inferenza batch è ideale per l'analisi di dati storici. Supponiamo di avere filmati di sorveglianza di una stazione della metropolitana dell'ultimo mese e di voler identificare modelli specifici, come il numero di persone che entrano ed escono in diversi momenti della giornata.
Invece di elaborare ogni fotogramma in tempo reale, l'inferenza batch consente di elaborare l'intero filmato del mese in batch, identificando eventi o tendenze chiave senza la necessità di risultati immediati. In questo modo, è possibile analizzare grandi volumi di dati in modo più efficiente e ottenere informazioni sui modelli a lungo termine, senza sovraccaricare il sistema o richiedere un monitoraggio costante.
L'inferenza batch è una soluzione ottimale anche quando le risorse di sistema sono limitate. Eseguendo l'inferenza durante le ore non di punta (ad esempio, durante la notte), è possibile risparmiare sui costi di elaborazione e garantire che il sistema non sia sovraccarico durante i periodi di maggiore utilizzo. Questo la rende un approccio efficiente ed economico per aziende o progetti che devono elaborare grandi dataset ma non richiedono analisi in tempo reale.
Il pacchetto Python di Ultralytics supporta l'inferenza batch per modelli come YOLO11. Con YOLO11, puoi facilmente eseguire l'inferenza batch specificando l'argomento 'batch', che determina quante immagini o fotogrammi video vengono elaborati contemporaneamente.
Durante il processo di inferenza batch, le previsioni vengono generate simultaneamente per tutte le immagini nel batch. Per impostazione predefinita, la dimensione del batch è impostata su 1, ma è possibile regolarla su qualsiasi numero si preferisca.
Ad esempio, se la dimensione del batch è impostata su 5, YOLO11 elaborerà cinque immagini o fotogrammi video alla volta e genererà previsioni per tutti e cinque contemporaneamente. Dimensioni di batch maggiori in genere portano a tempi di inferenza più rapidi, poiché l'elaborazione di più immagini in un batch è più efficiente rispetto alla gestione individuale.
Successivamente, esploriamo alcuni casi d'uso reali della computer vision per l'inferenza batch.
Nella ricerca medica, lavorare con grandi quantità di dati visivi è molto comune. In questo caso, l'inferenza batch può aiutare gli scienziati ad analizzare i dati più facilmente in campi come la chimica, la biologia e la genetica. Invece di analizzare i dati uno alla volta, vengono elaborati in batch, risparmiando tempo e fatica.
Ad esempio, nelle strutture mediche, l'inferenza batch può essere particolarmente utile per l'analisi di ampi set di immagini mediche come risonanze magnetiche o TAC. Gli ospedali possono raccogliere queste scansioni durante il giorno ed elaborarle in batch durante la notte.
Questo approccio consente agli ospedali di utilizzare al meglio il proprio hardware e il proprio personale, ridurre i costi operativi e garantire che tutte le scansioni vengano esaminate in modo coerente e uniforme. È anche vantaggioso per grandi progetti di ricerca e studi a lungo termine, dove è necessario gestire grandi quantità di dati.

Le auto a guida autonoma utilizzano tecnologie di IA come la computer vision per elaborare l'ambiente circostante. Con l'aiuto di modelli avanzati come YOLO11, i sistemi di bordo dell'auto possono riconoscere altri veicoli, le linee di demarcazione delle corsie, i segnali stradali e le persone sulla strada. Sebbene l'inferenza in tempo reale sia fondamentale sulla strada, la tecnologia di guida autonoma si basa anche fortemente sull'inferenza batch in background.

Una volta che un'auto completa un viaggio, i dati raccolti, come ore di riprese video, letture dei sensori e scansioni LIDAR, possono essere elaborati in un secondo momento in grandi batch. Ciò consente agli ingegneri di aggiornare i modelli di IA dell'auto, migliorare la sicurezza del sistema e ottimizzarne la capacità di gestire varie condizioni di guida.
L'inferenza batch viene utilizzata anche nelle simulazioni di guida autonoma per testare come le auto a guida autonoma reagirebbero in diverse situazioni, come la navigazione in incroci trafficati o la risposta a movimenti imprevedibili dei pedoni. Questo approccio consente di risparmiare tempo, ridurre i costi ed evitare i rischi associati alla sperimentazione di ogni scenario nella vita reale.
Allo stesso modo, per i negozi al dettaglio, l'inferenza batch con modelli di computer vision come YOLO11 può migliorare significativamente l'efficienza operativa. Ad esempio, i sistemi di telecamere nei negozi possono acquisire migliaia di immagini durante il giorno, che possono poi essere elaborate in batch durante la notte.
Ciò consente ai negozi di analizzare ciò che accade al loro interno, come il comportamento dei clienti, i modelli di traffico e le interazioni con i prodotti, senza la necessità di un'elaborazione in tempo reale, che può essere impegnativa per i negozi più piccoli.
Un altro esempio interessante è l'utilizzo dell'inferenza batch per generare mappe di calore, che visualizzano le aree di alta e bassa attività dei clienti all'interno del negozio. Analizzando queste mappe di calore, i rivenditori possono identificare quali aree attraggono il maggior numero di clienti e quali parti del negozio potrebbero aver bisogno di maggiore attenzione o di un'ottimizzazione del posizionamento dei prodotti. Questi dati possono aiutare i rivenditori a prendere decisioni migliori sulla disposizione del negozio, sul posizionamento dei prodotti e persino sulle strategie promozionali per migliorare l'esperienza del cliente e le vendite.

Ecco alcuni dei principali vantaggi che l'inferenza batch può apportare a vari settori:
Sebbene ci siano molti vantaggi nell'utilizzo dell'inferenza batch, ci sono anche alcune limitazioni da considerare. Ecco alcuni fattori da tenere a mente:
L'inferenza batch è un modo efficiente per elaborare grandi volumi di dati visivi che non richiedono risultati immediati. Invece di analizzare ogni immagine in tempo reale, le elabora in batch in orari programmati, come durante la notte.
Questo metodo è conveniente, riduce il carico computazionale e fornisce comunque risultati accurati. Dall'aiuto ai negozi nella gestione dell'inventario all'assistenza ai medici nell'analisi delle scansioni mediche e al miglioramento delle tecnologie per auto a guida autonoma, l'inferenza batch rende la computer vision più accessibile, economica e pratica per le applicazioni del mondo reale.
Pronto a tuffarti nel mondo dell'IA? Esplora il nostro repository GitHub, entra in contatto con la nostra community e dai un'occhiata alle nostre opzioni di licenza per iniziare il tuo percorso nella computer vision. Scopri di più sulle innovazioni come l'IA nella produzione e la computer vision nel settore della logistica nelle nostre pagine dedicate alle soluzioni.