Impara come eseguire le inferenze di YOLO11 all'interno di un'interfaccia Streamlit e costruisci un'interfaccia interattiva di intelligenza artificiale per compiti di computer vision senza avere competenze di codifica.
I modelli di computer vision sono strumenti di intelligenza artificiale di grande impatto che consentono alle macchine di interpretare e analizzare i dati visivi, eseguendo compiti come il rilevamento di oggetti, la classificazione di immagini e la segmentazione di istanze con elevata precisione. Tuttavia, a volte richiedono competenze tecniche aggiuntive, come lo sviluppo web o di applicazioni mobili, per essere implementati e resi accessibili a un pubblico più ampio.
Prendi Ultralytics YOLO11ad esempio. Si tratta di un modello che supporta diversi compiti ed è utile per una serie di applicazioni. Tuttavia, senza alcune conoscenze tecniche di front-end, costruire e distribuire un'interfaccia user-friendly per un'interazione senza interruzioni può risultare un po' difficile per alcuni ingegneri dell'intelligenza artificiale.
Streamlit è un framework open-source che mira a semplificare questo processo. Si tratta di uno strumento Python per la creazione di applicazioni interattive senza un complesso sviluppo front-end. Abbinato a YOLO11, consente agli utenti di caricare immagini, elaborare video e visualizzare i risultati in tempo reale con il minimo sforzo.
Ultralytics fa un ulteriore passo avanti con la sua soluzione Live Inference, rendendo l'integrazione di Streamlit ancora più semplice. Con un solo comando, gli utenti possono lanciare un'applicazione Streamlit precostituita per YOLO11, eliminando la necessità di configurazioni e codifiche manuali.
In questo articolo spiegheremo come configurare ed eseguire YOLO11 utilizzando la soluzione Live Inference di Ultralyticscon Streamlit, rendendo l'implementazione dell'intelligenza artificiale in tempo reale più veloce e accessibile.
Streamlit è un framework Python che semplifica la creazione di applicazioni web interattive. Gli sviluppatori di intelligenza artificiale possono creare applicazioni basate sull'intelligenza artificiale senza dover affrontare le complessità dello sviluppo front-end.
È stato progettato per lavorare senza problemi con i modelli di AI e di apprendimento automatico. Con poche righe di Python, gli sviluppatori possono creare un'interfaccia in cui gli utenti possono caricare immagini, elaborare video e interagire con i modelli di AI.
Una delle sue caratteristiche principali è il rendering dinamico. Quando gli utenti apportano delle modifiche, l'applicazione si aggiorna automaticamente senza richiedere il ricaricamento manuale della pagina.
Inoltre, essendo leggero e facile da usare, Streamlit funziona in modo efficiente sia su macchine locali che su piattaforme cloud. Questo lo rende un'ottima scelta per distribuire applicazioni di intelligenza artificiale, condividere modelli con altri utenti e fornire un'esperienza utente intuitiva e interattiva.
Prima di scoprire come eseguire inferenze live con Ultralytics YOLO11 in un'applicazione Streamlit, diamo un'occhiata più da vicino a ciò che rende YOLO11 così affidabile.
Ultralytics YOLO11 è un modello progettato per attività di computer vision in tempo reale come il rilevamento di oggetti, la segmentazione di istanze e la stima della posa. Offre prestazioni ad alta velocità con una precisione impressionante.
Uno dei maggiori vantaggi di YOLO11è la sua facilità d'uso. Non c'è bisogno di configurazioni complesse; gli sviluppatori possono installare il pacchetto Ultralytics Python e iniziare a fare previsioni con poche righe di codice.
Il pacchetto Ultralytics Python offre una serie di funzioni che consentono agli utenti di perfezionare i modelli e regolare le impostazioni di rilevamento. Inoltre, aiuta a ottimizzare le prestazioni su diversi dispositivi per una distribuzione più fluida.
Oltre alla flessibilità, il pacchetto Ultralytics Python supporta integrazioni su più piattaforme, tra cui dispositivi edge, ambienti cloud e sistemiGPU NVIDIA . Che si tratti di un piccolo dispositivo embedded o di un server cloud su larga scala, YOLO11 si adatta senza problemi, rendendo l'intelligenza artificiale avanzata più accessibile che mai.
Ti starai chiedendo: come faccio a sapere se Streamlit è l'opzione di distribuzione giusta per me? Se stai cercando un modo semplice ed efficiente dal punto di vista del codice per eseguire YOLO11 senza occuparti dello sviluppo front-end, Streamlit è una buona opzione, soprattutto per i progetti di prototipazione, proof-of-concept (PoC) o per le distribuzioni destinate a un numero ridotto di utenti.
Semplifica il processo di lavoro con YOLO11 eliminando inutili complessità e fornendo un'interfaccia intuitiva per l'interazione in tempo reale. Ecco altri vantaggi chiave:
Ora che abbiamo esplorato i vantaggi dell'utilizzo di Streamlit con YOLO11, vediamo come eseguire attività di computer vision in tempo reale in un browser utilizzando Streamlit con YOLO11.
Il primo passo consiste nell'installare il pacchettoUltralytics Python . Questo può essere fatto utilizzando il seguente comando:
1# Install the ultralytics package from PyPI
2pip install ultralytics
Una volta installato, YOLO11 è pronto all'uso senza bisogno di complicate configurazioni. Se dovessi riscontrare dei problemi durante l'installazione dei pacchetti necessari, puoi consultare la nostra Guida ai problemi comuni per trovare suggerimenti e soluzioni.
Normalmente, per eseguire YOLO11 è necessario sviluppare uno script Python utilizzando i componenti Streamlit. Tuttavia, Ultralytics offre un modo semplice per eseguire YOLO11 con Streamlit.
L'esecuzione del seguente script Python avvierà immediatamente l'applicazione Streamlit nel tuo browser web predefinito:
1from ultralytics import solutions
2
3inf = solutions.Inference(
4 model="yolo11n.pt", # you can use any model that Ultralytics support, i.e. YOLO11, or custom trained model
5)
6
7inf.inference()
8
9### Make sure to run the file using command `streamlit run <file-name.py>`
Non è necessaria alcuna configurazione aggiuntiva. L'interfaccia dell'applicazione Streamlit include una sezione di upload per immagini e video, un menu a tendina per selezionare la variante del modello YOLO11 che ti interessa e dei cursori per regolare la sicurezza del rilevamento. Tutto è organizzato in modo ordinato e gli utenti possono eseguire le inferenze senza sforzo e senza dover scrivere altro codice.
Ora che l'applicazione Streamlit è in esecuzione nel tuo browser web, vediamo come utilizzarla per eseguire inferenze con YOLO11.
Ad esempio, supponiamo di voler analizzare un file video per rilevare un oggetto. Ecco i passaggi per caricare un file, selezionare un modello e visualizzare i risultati in tempo reale:
Abbiamo visto come Streamlit sia ideale per creare prototipi, strumenti di ricerca e applicazioni di piccole e medie dimensioni. Offre un modo semplice per distribuire modelli di intelligenza artificiale senza un complesso sviluppo front-end.
Tuttavia, l'esecuzione di YOLO11 con Streamlit non è sempre una soluzione pronta all'uso, a meno che non si utilizzi l'applicazione Ultralytics YOLO Streamlit che abbiamo configurato nei passaggi precedenti. Nella maggior parte dei casi, è necessario un certo lavoro di sviluppo per personalizzare l'applicazione in base alle esigenze specifiche. Anche se Streamlit semplifica la distribuzione, dovrai comunque configurare i componenti necessari per garantire che YOLO11 funzioni senza problemi.
Vediamo due esempi pratici di come Ultralytics YOLO11 può essere efficacemente impiegato con Streamlit in scenari reali.
Tenere traccia dell'inventario nei negozi al dettaglio, nei magazzini o nelle aree dedicate alle forniture per ufficio può richiedere molto tempo ed essere soggetto a errori. Utilizzando YOLO11 con Streamlit, le aziende possono automatizzare il conteggio degli oggetti in modo rapido ed efficiente, rendendolo un'ottima opzione per un proof of concept (PoC) prima di impegnarsi in un'implementazione su larga scala.
Con questa configurazione, gli utenti possono caricare un'immagine o utilizzare una telecamera in diretta e YOLO11 può aiutare a rilevare e contare istantaneamente gli oggetti. Il conteggio in tempo reale può essere visualizzato nell'interfaccia Streamlit, offrendo un modo semplice per monitorare i livelli delle scorte senza alcuno sforzo manuale.
Ad esempio, il proprietario di un negozio può scansionare uno scaffale e vedere immediatamente quante bottiglie, scatole o prodotti confezionati sono presenti senza doverli contare manualmente. Sfruttando YOLO11 e Streamlit, le aziende possono ridurre il lavoro manuale, migliorare la precisione ed esplorare l'automazione con un investimento minimo.
Mantenere la sicurezza delle aree riservate in uffici, magazzini o luoghi di eventi può essere difficile, soprattutto con il monitoraggio manuale. Utilizzando YOLO11 con Streamlit, le aziende possono creare un semplice sistema di sicurezza alimentato dall'intelligenza artificiale per rilevare gli accessi non autorizzati in tempo reale.
Il feed di una telecamera può essere collegato all'interfaccia Streamlit, dove YOLO11 viene utilizzato per identificare e tracciare le persone che entrano nelle zone riservate. Se viene rilevata una persona non autorizzata, il sistema può attivare un allarme o registrare l'evento per la revisione.
Ad esempio, un responsabile di magazzino può monitorare l'accesso alle aree di stoccaggio ad alta sicurezza, oppure un ufficio può monitorare gli spostamenti nelle aree riservate senza bisogno di una supervisione costante.
Questo può essere un progetto che apre gli occhi alle aziende che desiderano esplorare il monitoraggio della sicurezza guidato da Vision AI prima di impegnarsi in un sistema più grande e completamente automatizzato. Integrando YOLO11 con Streamlit, le aziende possono migliorare la sicurezza, ridurre al minimo il monitoraggio manuale e rispondere in modo più efficace agli accessi non autorizzati.
L'utilizzo di strumenti come Streamlit per distribuire modelli di computer vision aiuta a creare un'esperienza interattiva e facile da usare. Tuttavia, dopo aver configurato l'interfaccia live, è importante assicurarsi che il sistema funzioni in modo efficiente e fornisca risultati accurati nel tempo.
Ecco alcuni fattori chiave da considerare dopo la distribuzione:
Ultralytics semplifica l'implementazione di YOLO11 con un'interfaccia Streamlit live pronta all'uso che si esegue con un solo comando, senza bisogno di codifica. In questo modo gli utenti possono iniziare a utilizzare il rilevamento degli oggetti in tempo reale all'istante.
L'interfaccia include anche una personalizzazione integrata che consente agli utenti di cambiare modello, regolare l'accuratezza del rilevamento e filtrare gli oggetti con facilità. Tutto è gestito da un'interfaccia semplice e intuitiva, che elimina la necessità di sviluppare manualmente l'interfaccia utente. Combinando
Grazie alle funzionalità di YOLO11e alla facilità di implementazione di Streamlit, le aziende e gli sviluppatori possono prototipare, testare e perfezionare rapidamente le applicazioni basate sull'intelligenza artificiale.
Entra a far parte della nostra comunità ed esplora il nostro repository GitHub per avere maggiori informazioni sull'IA. Dai un'occhiata alle nostre pagine dedicate alle soluzioni per saperne di più su innovazioni come l'IA nel settore manifatturiero e la computer vision nel settore sanitario. Scopri le nostre opzioni di licenza e inizia oggi stesso!
Inizia il tuo viaggio nel futuro dell'apprendimento automatico