Ultralytics YOLO27: Iscriviti alla lista d'attesa.
Licenza YOLO
Ultralytics YOLO

Usare Ultralytics YOLO11 per eseguire inferenze in batch

Scopri quando usare l'inferenza batch invece di quella in tempo reale, come funziona l'argomento batch in Ultralytics YOLO11 e dove il raggruppamento riduce i costi di calcolo.

Abirami VinaAbirami Vina10 min di lettura
Eseguire inferenze in batch con Ultralytics YOLO11

Se hai visto un'auto a guida autonoma in azione, hai assistito all'inferenza AI in tempo reale. Un'auto a guida autonoma usa in genere telecamere, sensori e AI per elaborare ciò che la circonda e prendere decisioni quasi istantanee. Tuttavia, quando non servono risposte rapide, l'inferenza in tempo reale può richiedere molte risorse.

In questi casi, una soluzione migliore è l'inferenza batch. Invece di elaborare i dati continuamente in tempo reale, l'inferenza batch può gestire grandi quantità di dati a intervalli programmati. Questo approccio aiuta a risparmiare risorse, ridurre il consumo energetico e contenere i costi infrastrutturali.

Per esempio, nelle applicazioni di computer vision, modelli come Ultralytics YOLO11 possono essere usati per attività in tempo reale come il rilevamento degli oggetti e la segmentazione di istanze. Tuttavia, elaborare grandi volumi di dati visivi in tempo reale può richiedere molte risorse.

Segmentazione degli oggetti in un'immagine con Ultralytics YOLO11

Fig. 1. Un esempio di segmentazione degli oggetti in un'immagine con Ultralytics YOLO11.

Con l'inferenza in batch, Ultralytics YOLO11 può essere eseguito su dati visivi in gruppi, riducendo il carico sul sistema e migliorando l'efficienza senza sacrificare le prestazioni. Questo facilita la distribuzione su larga scala di soluzioni Vision AI senza sovraccaricare l'hardware o aumentare i costi.

In questo articolo vedremo che cos'è l'inferenza batch, quali sono i suoi vantaggi e come è possibile applicare l'inferenza batch con Ultralytics YOLO11 nelle applicazioni di visione artificiale.

Uno sguardo all'inferenza in batch nella computer vision#

Puoi pensare all'inferenza in batch come all'esecuzione di un'attività complessa tutta in una volta, invece di gestirla un pezzo alla volta man mano che arriva. Invece di elaborare costantemente i dati in tempo reale, l'inferenza in batch consente di elaborare grandi gruppi di dati a intervalli prestabiliti. Questo approccio è molto più efficiente quando non servono risposte immediate e aiuta a risparmiare risorse di calcolo, ridurre il consumo energetico e contenere i costi.

In alcuni ambiti della computer vision, una bassa latenza è fondamentale. Per bassa latenza si intende il ritardo minimo tra la ricezione dell'input, come un'immagine o un fotogramma video, e la risposta del sistema. Per esempio, nel monitoraggio di sicurezza in tempo reale, anche piccoli ritardi possono comportare rischi per la sicurezza.

Tuttavia, in molti altri scenari di visione artificiale la bassa latenza non è altrettanto essenziale. È qui che l'inferenza batch dà il meglio di sé: quando il sistema non deve reagire immediatamente. L'inferenza batch funziona fornendo dati visivi a un modello di visione artificiale in gruppi o batch, così il sistema può elaborare grandi set di dati tutti insieme invece di farlo continuamente in tempo reale.

Capire come funziona l'inferenza in batch#

Ecco una panoramica più dettagliata dei passaggi dell'inferenza in batch:

  • Raccolta dei dati: i dati visivi vengono raccolti per un certo periodo di tempo. A seconda dell'applicazione, possono includere riprese di sicurezza, immagini di prodotti o dati dei clienti.
  • Preparazione dei batch: i dati raccolti vengono quindi raggruppati in batch. In questa fase, i dati vengono formattati secondo i requisiti del modello. Per esempio, le immagini possono essere ridimensionate, normalizzate o convertite nel formato appropriato per l'elaborazione da parte del modello.
  • Predizione: Una volta preparati i dati, l'intero batch viene fornito al modello, ad esempio Ultralytics YOLO11, che lo elabora tutto in una volta. In questo modo, il modello può generare contemporaneamente le predizioni per tutti i dati del batch, rendendo il processo più efficiente rispetto all'elaborazione di ciascun elemento singolarmente.

Quando usare l'inferenza in batch?#

Ora che abbiamo visto cos'è l'inferenza in batch e in cosa si differenzia dall'inferenza in tempo reale, vediamo più da vicino quando usarla.

L'inferenza in batch è ideale per analizzare dati storici. Immagina di avere le riprese di sorveglianza di una stazione della metropolitana relative all'ultimo mese e di voler individuare schemi specifici, come il numero di persone che entrano ed escono nelle diverse fasce orarie.

Invece di elaborare ogni fotogramma in tempo reale, l'inferenza in batch consente di elaborare in batch le riprese dell'intero mese, individuando eventi o tendenze importanti senza dover ottenere risultati immediati. In questo modo puoi analizzare grandi volumi di dati con maggiore efficienza e ottenere informazioni sugli andamenti a lungo termine, senza sovraccaricare il sistema né richiedere un monitoraggio costante.

L'inferenza in batch è anche una soluzione ottimale quando le risorse di sistema sono limitate. Eseguendo l'inferenza nelle ore non di punta, per esempio durante la notte, puoi risparmiare sui costi di calcolo e assicurarti che il sistema non sia sovraccarico nei momenti di maggiore utilizzo. È quindi un approccio efficiente ed economico per aziende e progetti che devono elaborare grandi dataset, ma non necessitano di analisi in tempo reale.

Inferenza in batch con Ultralytics YOLO11#

Il pacchetto Python di Ultralytics supporta l'inferenza batch per modelli come YOLO11. Con YOLO11 puoi eseguire facilmente l'inferenza batch specificando l'argomento di inferenza batch, che determina quante immagini o fotogrammi video elaborare alla volta.

Durante l'inferenza batch, le predizioni vengono generate simultaneamente per tutte le immagini del batch. Per impostazione predefinita, la dimensione del batch è 1, ma puoi impostarla su qualsiasi valore preferisci. Il batching si applica quando la sorgente è una directory, un file video o un file .txt che elenca le sorgenti.

Ad esempio, se la dimensione del batch è impostata su 5, Ultralytics YOLO11 elaborerà cinque immagini o fotogrammi video alla volta e genererà simultaneamente le predizioni per tutti e cinque. In genere, dimensioni del batch maggiori aumentano il throughput e riducono il tempo totale di elaborazione, perché elaborare più immagini in un batch è più efficiente che gestirle singolarmente.

Applicazioni di computer vision abilitate dall'inferenza in batch#

Vediamo ora alcuni casi d'uso reali dell'inferenza in batch nella computer vision.

Migliorare la diagnostica e la ricerca in ambito sanitario#

Nella ricerca medica, è molto comune lavorare con grandi quantità di dati visivi. In questo ambito, l'inferenza batch può aiutare gli scienziati ad analizzare i dati più facilmente in settori come la chimica, la biologia e la genetica. Invece di analizzare gli elementi uno alla volta, i dati vengono elaborati in batch, con un risparmio di tempo e fatica.

Per esempio, nelle strutture sanitarie l'inferenza in batch può essere particolarmente utile per analizzare grandi raccolte 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 sfruttare meglio hardware e personale, ridurre i costi operativi e assicurare che tutte le scansioni vengano esaminate in modo coerente e uniforme. È utile anche per i grandi progetti di ricerca e gli studi a lungo termine, che richiedono la gestione di enormi quantità di dati.

Rilevamento di un reperto in una scansione medica con Ultralytics YOLO11

Fig. 2. Rilevamento di un reperto in una scansione medica con Ultralytics YOLO11.

Migliorare i veicoli autonomi con le simulazioni#

Le auto a guida autonoma usano tecnologie di AI come la computer vision per elaborare il mondo che le circonda. Grazie a modelli avanzati come Ultralytics YOLO11, i sistemi di bordo possono riconoscere altri veicoli, le linee di corsia, i segnali stradali e le persone in strada. Sebbene l'inferenza in tempo reale sia fondamentale su strada, la tecnologia di guida autonoma si affida molto anche all'inferenza in batch, che opera dietro le quinte.

Ultralytics YOLO11 rileva due pedoni con il volto coperto che attraversano una strada cittadina portando a mano le biciclette

Fig. 3. YOLO11 può rilevare facilmente i pedoni sulla strada.

Dopo un viaggio in auto, i dati raccolti, come ore di riprese delle telecamere, letture dei sensori e scansioni LiDAR, possono essere elaborati successivamente in batch di grandi dimensioni. Questo permette agli ingegneri di aggiornare i modelli di AI dell'auto, migliorare la sicurezza del sistema e potenziare la capacità di affrontare diverse condizioni di guida.

L'inferenza in batch viene usata anche nelle simulazioni di guida autonoma per verificare come reagirebbero le auto a guida autonoma in situazioni diverse, per esempio attraversando incroci trafficati o rispondendo ai movimenti imprevedibili dei pedoni. Questo approccio fa risparmiare tempo, riduce i costi ed evita i rischi associati alla verifica di ogni scenario nella realtà.

Analisi dei dati di vendita al dettaglio basata sull'inferenza in batch#

Allo stesso modo, nei negozi al dettaglio l'inferenza in batch con modelli di computer vision come Ultralytics YOLO11 può migliorare notevolmente l'efficienza operativa. Per esempio, i sistemi di telecamere nei negozi possono acquisire migliaia di immagini nel corso della giornata, che possono poi essere elaborate in batch durante la notte.

Questo consente ai negozi di analizzare ciò che accade al loro interno, per esempio il comportamento dei clienti, i flussi di visitatori e le interazioni con i prodotti, senza ricorrere all'elaborazione in tempo reale, che può essere impegnativa per i negozi più piccoli.

Un altro esempio interessante è l'uso dell'inferenza in batch per generare mappe di calore, che visualizzano le aree del negozio con maggiore o minore attività dei clienti. Analizzando queste mappe di calore, i rivenditori possono individuare le aree che attirano più visitatori e quelle che potrebbero richiedere maggiore attenzione o un posizionamento dei prodotti più efficace. Questi dati possono aiutare i rivenditori a prendere decisioni migliori sulla disposizione del negozio, sul posizionamento dei prodotti e persino sulle strategie promozionali, migliorando l'esperienza dei clienti e le vendite.

Mappe di calore che aiutano i rivenditori a individuare le aree più frequentate nei negozi

Fig. 4. Le mappe di calore possono aiutare i rivenditori a individuare le aree più frequentate nei negozi.

Vantaggi e svantaggi dell'inferenza in batch#

Ecco alcuni dei principali vantaggi che l'inferenza in batch può offrire a diversi settori:

  • Facilità di integrazione: l'inferenza in batch si integra facilmente nei flussi di lavoro esistenti, soprattutto in settori come la vendita al dettaglio, la sicurezza e la sanità, dove occorre elaborare in blocco grandi volumi di dati.
  • Gestione dei dati più semplice: quando si lavora con grandi quantità di dati, l'inferenza in batch può semplificarne la gestione raggruppandoli in blocchi più facili da gestire. Questo facilita il monitoraggio, la revisione e l'organizzazione dei dati nel tempo.
  • Riduzione del carico di rete: Quando i dati vengono elaborati in batch, è possibile ridurre al minimo la quantità di dati trasferiti in un dato momento, alleggerendo il carico sulle risorse di rete nei sistemi basati sul cloud o negli ambienti di calcolo distribuito.

L'inferenza in batch offre molti vantaggi, ma presenta anche alcune limitazioni da considerare. Ecco alcuni aspetti da tenere a mente:

  • Requisiti di archiviazione: conservare grandi dataset per l'elaborazione in batch può aumentare notevolmente i costi di archiviazione, soprattutto nel caso di immagini ad alta risoluzione, video o grandi volumi di dati.
  • Possibile accumulo di arretrati: Se i dati si accumulano rapidamente o i batch di grandi dimensioni non vengono elaborati in tempo, possono formarsi arretrati. Questo può causare ritardi nella produzione di informazioni utili e nell'elaborazione tempestiva dei nuovi dati.
  • Picchi nell'utilizzo delle risorse: I batch di grandi dimensioni, soprattutto quelli che includono immagini ad alta risoluzione, possono causare picchi nell'utilizzo della memoria o delle risorse di calcolo. Se non vengono gestiti correttamente, questi picchi possono sovraccaricare i sistemi, causando rallentamenti o arresti anomali.

Punti chiave#

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 immagini vengono elaborate in batch a orari programmati, ad esempio durante la notte.

Questo metodo è conveniente, riduce il carico computazionale e offre comunque risultati accurati. Dalla gestione delle scorte nei negozi all'analisi delle scansioni mediche per i medici, fino al miglioramento delle tecnologie delle auto a guida autonoma, l'inferenza in batch rende la computer vision più accessibile, conveniente e pratica nelle applicazioni reali.

Vuoi saperne di più sull'AI? 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 visione artificiale. Scopri di più su innovazioni come l'AI nella produzione e la visione artificiale nel settore della logistica nelle pagine dedicate alle nostre soluzioni.

Scritto da

Abirami Vina
Abirami Vina

Creatore di contenuti · Ultralytics

Dopo aver iniziato la sua carriera come ingegnera di visione artificiale, Abirami Vina ha costruito solide basi nell'IA visiva e nel machine learning. È creatrice di contenuti per Ultralytics e fondatrice e autrice principale di Scribe of AI, dove realizza contenuti tecnici di alta qualità per aziende specializzate in IA. Spinta dalla passione di rendere l'IA comprensibile e coinvolgente, con il suo lavoro colma il divario tra tecnologie all'avanguardia e impatto concreto.

Commenti

Fai una domanda, condividi i tuoi risultati o aiuta qualcun altro.

Esplora le soluzioni

La visione artificiale nello sport

La visione artificiale nello sport

Scopri come Ultralytics YOLO alimenta la computer vision nello sport con il tracciamento di giocatori e palloni, l'analisi delle prestazioni, gli approfondimenti per gli allenatori e la riabilitazione degli atleti.
Scopri di più
Computer vision per immagini aeree

Computer vision per immagini aeree

Trasforma immagini aeree e riprese da drone in informazioni utili in tempo reale per agricoltura, acquacoltura, conservazione e analisi geospaziale con Ultralytics YOLO.
Scopri di più
Computer vision nel settore aerospaziale

Computer vision nel settore aerospaziale

Applica la visione artificiale nel settore aerospaziale con Ultralytics YOLO per l'ispezione degli aeromobili, il rilevamento di FOD sulle piste, le operazioni di terra aeroportuali e il rilevamento di difetti nei materiali compositi.
Scopri di più
Visione artificiale nella sicurezza

Visione artificiale nella sicurezza

Proteggi ogni sito con i modelli Ultralytics YOLO. L'IA visiva alimenta il monitoraggio perimetrale, il rilevamento delle minacce, il riconoscimento delle targhe e la sicurezza sul lavoro.
Scopri di più
Visione artificiale nella robotica

Visione artificiale nella robotica

Dai più potenza alle macchine intelligenti con i modelli Ultralytics YOLO. Nell'ambito della robotica, l'IA visiva alimenta la navigazione autonoma, la percezione, il tracciamento degli oggetti e il controllo in tempo reale.
Scopri di più
Visione artificiale nella logistica

Visione artificiale nella logistica

Semplifica la logistica con i modelli Ultralytics YOLO. L'IA per la visione consente l'ispezione dei pacchi, la selezione, il tracciamento dei veicoli e il monitoraggio della sicurezza nei magazzini in tempo reale.
Scopri di più
Visione artificiale nel commercio al dettaglio

Visione artificiale nel commercio al dettaglio

Ripensa il commercio al dettaglio con i modelli Ultralytics YOLO. L'IA per la visione consente di tracciare le scorte, monitorare gli scaffali, gestire le code e ottenere informazioni più approfondite sui clienti.
Scopri di più
Visione artificiale in ambito sanitario

Visione artificiale in ambito sanitario

Crea soluzioni sanitarie con i modelli Ultralytics YOLO. In ambito sanitario, l'IA per la visione consente di elaborare più rapidamente le immagini mediche, migliorare la diagnostica e monitorare i pazienti.
Scopri di più
Computer vision nella produzione

Computer vision nella produzione

Ottimizza la produzione con i modelli Ultralytics YOLO. La visione basata sull'IA migliora il controllo qualità, il rilevamento dei difetti, la conformità ai requisiti sui DPI e l'automazione delle linee di assemblaggio.
Scopri di più
Computer vision nel settore automobilistico

Computer vision nel settore automobilistico

Applica la computer vision al settore automobilistico con i modelli Ultralytics YOLO. La visione basata sull'IA migliora la sicurezza stradale, i sistemi di assistenza alla guida e l'automazione dei veicoli, per strade più intelligenti.
Scopri di più
Visione artificiale in agricoltura

Visione artificiale in agricoltura

Porta l'IA visiva nell'agricoltura intelligente con i modelli Ultralytics YOLO. Gestisci il monitoraggio delle colture, il tracciamento del bestiame e l'agricoltura di precisione per ottenere raccolti più abbondanti e intelligenti.
Scopri di più

Costruiamo insieme il futuro dell'IA!

Inizia il tuo percorso verso il futuro del machine learning