Esportazione dei modelli Ultralytics YOLO11 in formato modello NCNN

Abirami Vina

5 minuti di lettura

18 giugno 2025

Esportazione dei modelli Ultralytics YOLO11 nel formato dei modelli 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 agli incendi. Con l'aumento dell'adozione, i modelli di IA vengono implementati in ambienti sempre più diversi, non solo sui server o nel cloud, ma anche direttamente sui dispositivi che operano sul campo.

Ad esempio, i droni e le apparecchiature con componenti periferici alimentati da piccoli processori possono svolgere un ruolo cruciale nelle zone disastrate. Dotati di telecamere termiche, questi dispositivi possono raccogliere e analizzare i dati sul posto per individuare le persone intrappolate sotto le macerie. Ciò è possibile grazie alla 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 YOLO di Ultralytics 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'integrazione NCNN supportata da Ultralytics e spiegheremo come esportare il modello YOLO11 in formato NCNN. Iniziamo!

Una panoramica di NCNN: Un framework per reti neurali leggere

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.

Figura 1. I modelli in formato NCNN possono essere distribuiti su molte piattaforme.

Caratteristiche principali dell'ottimizzazione delle prestazioni NCNN

Ecco alcune delle caratteristiche principali che rendono NCNN un framework di inferenza per reti neurali di grande impatto e largamente utilizzato:

  • Runtime leggero e indipendente dall'hardware: Il framework NCNN è ottimizzato per l'esecuzione di modelli su CPU standard e non richiede hardware specializzato come GPU (Graphics Processing Unit) o NPU (Neural Processing Unit).
  • Quantizzazione del modello: Per le applicazioni in cui memoria e velocità sono fondamentali, NCNN supporta metodi di quantizzazione che riducono le dimensioni del modello e migliorano i tempi di inferenza. Ciò consente di eseguire i modelli di intelligenza artificiale senza problemi su dispositivi mobili ed embedded.
  • Open source e accessibile: In quanto framework open-source, NCNN è liberamente disponibile per l'uso, la modifica e il miglioramento da parte di chiunque. Questo incoraggia l'innovazione e l'ampia adozione in una varietà di casi d'uso.
  • Sviluppo attivo e comunità: NCNN viene mantenuto attivamente su GitHub da Tencent e da una comunità di sviluppatori in crescita, con aggiornamenti regolari e miglioramenti della compatibilità dei modelli.

Esportazione di YOLO11 in formato modello NCNN: Una guida rapida

Ora che abbiamo discusso di cosa sia l'NCNN, vediamo più da vicino come esportare i modelli YOLO11 nel formato NCNN.

Passo 1: Installare il pacchetto Ultralytics Python

Prima di esportare il modello, il primo passo è installare il pacchetto Ultralytics 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.

Passo 2: Esportazione di Ultralytics YOLO11

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 lo snippet di codice seguente, 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 nuovi dati non visti. In questo esempio, il modello viene testato su un'immagine di un uomo che va in bicicletta, recuperata 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 "runs/detect/predict".

Figura 2. Rilevamento di oggetti utilizzando un modello YOLO11 esportato in formato NCNN. Immagine dell'autore.

Perché scegliere il rilevamento in tempo reale con NCNN

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:

  • Distribuzione mobile: Il formato NCNN è ottimizzato per Android e iOS, il che semplifica l'integrazione dei modelli nelle app mobili per un'inferenza veloce e sul dispositivo con una latenza minima.
  • Sistemi embedded e dispositivi IoT: Se si sta distribuendo su dispositivi come Raspberry Pi o NVIDIA Jetson, l'esportazione in NCNN può contribuire ad aumentare le prestazioni e la reattività.
  • Distribuzione su desktop e server: NCNN è ideale per i dispositivi a basso consumo, ma supporta anche Linux, Windows e macOS per ambienti desktop e server. Questo offre agli sviluppatori opzioni flessibili per la distribuzione.
Figura 3. Opzioni per la distribuzione del modello YOLO11 con NCNN. Immagine dell'autore.

Casi d'uso dell'implementazione del modello YOLO11 con NCNN

Vediamo quindi alcuni casi d'uso pratici in cui l'esportazione dei modelli YOLO11 in NCNN può fare la differenza.

Elmetti Vision AI per la lotta agli incendi

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 rilevare vari tipi di oggetti e attrezzature. Ad esempio, questi caschi possono aiutare i vigili del fuoco a rilevare 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. 

Classificazione dei rifiuti e cassonetti intelligenti

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 rilevare 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.

Figura 4. Rilevamento dei rifiuti plastici con YOLO11.

Monitoraggio del bestiame tramite droni e computer vision

A volte, le aree agricole in luoghi remoti non hanno accesso a connessioni Internet stabili o addirittura a un'alimentazione costante, il che limita la loro capacità di eseguire applicazioni di intelligenza artificiale online. In questi casi, i dispositivi edge e i droni possono essere utilizzati per gestire una serie di compiti. 

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 tracciare i movimenti degli animali, rilevare 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 off-grid.

Figura 5. Uno sguardo all'utilizzo di YOLO11 per il monitoraggio del bestiame.

Punti di forza

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.

Volete saperne di più sull'intelligenza artificiale? Esplorate il nostro repository GitHub, entrate in contatto con la nostra comunità e controllate le nostre opzioni di licenza per avviare il vostro progetto di computer vision. Scoprite come innovazioni come l'IA nel settore della vendita al dettaglio e la computer vision nella sanità stiano plasmando il futuro sulle nostre pagine dedicate alle soluzioni.

Costruiamo insieme il futuro
dell'IA!

Iniziate il vostro viaggio nel futuro dell'apprendimento automatico

Iniziare gratuitamente
Link copiato negli appunti