Esportazione dei modelli Ultralytics YOLO11 in formato modello NCNN
Esportazione dei modelli Ultralytics YOLO11 nel formato NCNN per eseguire inferenze AI efficienti e a bassa latenza su dispositivi edge con potenza e risorse di calcolo limitate.
Esportazione dei modelli Ultralytics YOLO11 nel formato NCNN per eseguire inferenze AI efficienti e a bassa latenza su dispositivi edge con potenza e risorse di calcolo limitate.
Le soluzioni di IA stanno diventando sempre più comuni, anche in settori ad alto rischio come la gestione dei disastri, la gestione dei rifiuti e la lotta antincendio. Con la continua crescita dell'adozione, i modelli di IA vengono implementati in ambienti più diversi: non solo su server o nel cloud, ma direttamente su dispositivi operativi sul campo.
Ad esempio, i droni e le apparecchiature con componenti edge alimentati da piccoli processori possono svolgere un ruolo cruciale nelle zone disastrate. Dotati di telecamere termiche, questi dispositivi possono raccogliere e analizzare i dati in loco per localizzare le persone intrappolate sotto le macerie. Ciò è reso possibile dalla computer vision, una branca dell'intelligenza artificiale che interpreta le informazioni visive da immagini e video.
Tuttavia, l'implementazione dei modelli Vision AI sui dispositivi edge non è così semplice come potrebbe sembrare. I modelli di intelligenza artificiale devono essere ottimizzati per funzionare in modo efficiente su hardware con potenza di calcolo e memoria limitate. Ecco perché i framework di intelligenza artificiale come NCNN sono essenziali. Aiutano a convertire e ottimizzare i modelli per ottenere prestazioni in tempo reale su dispositivi a basso consumo, senza sacrificare la precisione.
In particolare, i modelli Ultralytics YOLO come Ultralytics YOLO11 possono essere facilmente esportati in formato NCNN utilizzando l'integrazione NCNN supportata da Ultralytics. La conversione di YOLO11 in formato NCNN consente al modello di funzionare più velocemente, di utilizzare meno memoria e di funzionare senza problemi su diversi dispositivi senza perdere in precisione.
In questo articolo esploreremo l'integrazioneNCNN supportata da Ultralytics e vedremo come esportare il modello YOLO11 in formato NCNN . Iniziamo!
NCNN è un framework open source per l'inferenza delle reti neurali sviluppato da Tencent. È stato progettato specificamente per ambienti mobili e periferici, in grado di fornire inferenze ad alte prestazioni con un ingombro minimo. Questo lo rende ideale per l'implementazione su dispositivi con risorse limitate come smartphone, droni e dispositivi IoT (Internet of Things).
Il framework NCNN ha guadagnato popolarità nella comunità dell'intelligenza artificiale e dell'apprendimento profondo grazie alla sua efficienza, portabilità e ottimizzazione per le CPU (unità di elaborazione centrale) mobili. Consente agli sviluppatori di eseguire modelli di reti neurali su dispositivi economici con memoria e potenza di elaborazione limitate. Progettato per essere semplice e flessibile, NCNN supporta un'ampia gamma di modelli di computer vision e funziona su diverse piattaforme, tra cui Android, Linux, iOS e macOS.

Ecco alcune delle caratteristiche principali che rendono NCNN un framework di inferenza per reti neurali di grande impatto e largamente utilizzato:
Ora che abbiamo discusso di cosa sia l'NCNN , vediamo più da vicino come esportare i modelli YOLO11 nel formato NCNN .
Prima di esportare il modello, il primo passo è installare il pacchettoUltralytics Python usando il programma di installazione dei pacchetti, pip. Questo può essere fatto eseguendo "pip install ultralytics" nel terminale o nel prompt dei comandi. Se state lavorando in un Jupyter Notebook o in Google Colab, aggiungete un punto esclamativo prima del comando, in questo modo: "!pip install ultralytics".
Il pacchetto Ultralytics fornisce strumenti per l'addestramento, il test, la messa a punto e l'esportazione di modelli AI di visione per una serie di attività di computer vision. Se si riscontrano problemi durante l'installazione o l'esportazione di un modello, la documentazione ufficiale di Ultralytics e la guida Common Issues sono ottime risorse per la risoluzione dei problemi.
Dopo aver installato il pacchetto Ultralytics , è possibile caricare il modello YOLO11 ed esportarlo in formato NCNN . L'esempio seguente utilizza un modello pre-addestrato ("yolo11n.pt") e lo esporta in formato NCNN , salvando l'output in una cartella denominata "/yolo11n_ncnn_model".
from ultralytics import YOLO
model = YOLO("yolo11n.pt")
model.export(format="ncnn") Il modello YOLO11 esportato può quindi essere distribuito su vari dispositivi leggeri come smartphone, sistemi embedded o piattaforme IoT. Anche il processo di distribuzione è molto snello.
Ad esempio, si consideri il frammento di codice riportato di seguito, che mostra come caricare il modello esportato ed eseguire l'inferenza. L'inferenza si riferisce al processo di utilizzo di un modello addestrato per fare previsioni su dati nuovi e non visti. In questo esempio, il modello viene testato su un'immagine di un uomo che va in bicicletta, prelevata da un URL disponibile pubblicamente.
ncnn_model = YOLO("./yolo11n_ncnn_model")
results = ncnn_model("https://images.pexels.com/photos/19431209/pexels-photo-19431209/free-photo-of-a-man-riding-a-bike-on-a-road.jpeg?auto=compress&cs=tinysrgb&w=1260&h=750&dpr=2.jpg", save=True)Dopo aver eseguito il codice, l'immagine di output si trova nella cartella "detect".

Esplorando le varie integrazioni supportate da Ultralytics , si può notare che sono disponibili diverse opzioni di esportazione. Quando è opportuno scegliere il formato NCNN ?
Il formato di esportazione NCNN è una scelta affidabile quando è necessario distribuire i modelli YOLO11 su dispositivi con risorse limitate. È particolarmente utile per le applicazioni in tempo reale che vengono eseguite direttamente sul dispositivo, come i dispositivi edge, senza bisogno di una connessione al cloud. Ciò significa che il modello può gestire attività come il rilevamento di oggetti direttamente sul posto.
Ecco alcuni scenari comuni in cui NCNN si adatta perfettamente:

Vediamo quindi alcuni casi d'uso pratici in cui l'esportazione dei modelli YOLO11 in NCNN può fare la differenza.
I caschi di sicurezza dotati di telecamere e microcomputer incorporati possono essere utilizzati in settori come l'edilizia e la lotta antincendio per migliorare la sicurezza e la consapevolezza. I modelli Vision AI in tempo reale, come YOLO11, possono essere eseguiti su questi dispositivi per detect vari tipi di oggetti e attrezzature. Ad esempio, questi caschi possono aiutare i vigili del fuoco a detect persone, ostacoli o pericoli in condizioni di scarsa visibilità.
Tuttavia, l'esecuzione di modelli a grandezza naturale direttamente sui dispositivi indossabili può causare prestazioni lente e scaricare rapidamente la batteria. In questo caso, l'utilizzo dell'integrazione NCNN è una scelta intelligente. Permette un'inferenza a bassa latenza ed efficiente dal punto di vista energetico.
Allo stesso modo, i cestini intelligenti possono essere integrati con telecamere e processori di intelligenza artificiale compatti per identificare e differenziare i materiali mentre vengono scartati. I modelli AI di visione come YOLO11 possono essere addestrati su misura per detect diversi tipi di materiali di scarto come carta, plastica, gomma, ecc.
Una volta identificati, i rifiuti possono essere smistati automaticamente in comparti separati in base alla loro riutilizzabilità. Grazie all'utilizzo dell'intelligenza artificiale e dei modelli YOLO11 esportati in formato NCNN , questi cassonetti possono elaborare i dati localmente, senza bisogno di una connessione a Internet. Ciò consente loro di operare in modo autonomo e di prendere decisioni di smistamento in tempo reale con un ritardo minimo.

A volte, le aree agricole in località remote non hanno accesso a connessioni internet stabili o persino a un'alimentazione elettrica costante, il che limita la loro capacità di eseguire applicazioni di intelligenza artificiale online. In questi casi, è possibile utilizzare dispositivi edge e droni per gestire una varietà di attività.
Un buon esempio è il monitoraggio del bestiame, come bovini, ovini e pollame. Questo può essere fatto utilizzando modelli Vision AI come YOLO11, che possono essere utilizzati per track movimenti degli animali, detect segni di lesioni, malattie o comportamenti anomali e avvisare gli allevatori quando gli animali scompaiono. L'integrazione NCNN rende inoltre possibile l'esecuzione e l'elaborazione di questi dati direttamente sui dispositivi edge, rendendoli ideali per l'analisi di immagini e video nelle aziende agricole in aree remote o non collegate alla rete.

L'esportazione di modelli YOLO11 tramite l'integrazione NCNN supportata da Ultralytics è un modo semplice per portare l'IA di visione in ambienti a basso consumo. Che si tratti di droni in zone disastrate, di cassonetti intelligenti per la raccolta dei rifiuti o di monitoraggio del bestiame in aziende agricole remote, YOLO e NCNN consentono di fare inferenze di IA in tempo reale in modo rapido, efficiente e portatile. Questo approccio contribuisce a rendere i sistemi di IA più accessibili e affidabili quando è più importante.
Vuoi saperne di più sull'IA? Esplora il nostro repository GitHub, entra in contatto con la nostra community e dai un'occhiata alle nostre opzioni di licenza per dare il via al tuo progetto di computer vision. Scopri come innovazioni come l'IA nel retail e la computer vision nel settore sanitario stanno plasmando il futuro nelle nostre pagine delle soluzioni.