Portare Ultralytics YOLO11 sui dispositivi Apple tramite CoreML

Abirami Vina

4 minuti di lettura

30 luglio 2025

Scoprite com'è facile portare Ultralytics YOLO11 sui dispositivi Apple con CoreML e abilitare le attività di computer vision offline per le app iOS in tempo reale.

Con l'introduzione da parte di Apple di funzioni come Apple Intelligence, è chiaro che l'intelligenza artificiale sul dispositivo sta diventando una parte centrale del modo in cui utilizziamo i nostri telefoni. Per gli sviluppatori, questo cambiamento significa che gli utenti stanno adottando app iOS che utilizzano funzionalità come la computer vision per offrire esperienze più intelligenti e reattive.

La computer vision è un tipo di intelligenza artificiale (AI) che consente ai computer di comprendere e analizzare le informazioni visive, come immagini o video. Sui dispositivi mobili, può essere utilizzata in tempo reale per rilevare, classificare e interagire con gli oggetti attraverso la fotocamera del telefono. I modelli di AI di visione come Ultralytics YOLO11 possono essere addestrati su misura per riconoscere oggetti specifici, a seconda delle esigenze dell'applicazione. 

Tuttavia, YOLO11 non è predisposto per funzionare su iOS fin dall'inizio. Per distribuire YOLO11 su iPhone o altri dispositivi Apple, in particolare per l'uso offline, è necessario convertirlo in un formato ottimizzato per l'ecosistema Apple. 

Questo è esattamente il tipo di problema che CoreML è stato costruito per risolvere. CoreML è il framework di apprendimento automatico di Apple, costruito per eseguire modelli in locale e integrarsi perfettamente nelle applicazioni iOS e macOS. L'integrazione di CoreML, supportata da Ultralytics, semplifica l'esportazione del modello per la distribuzione locale sugli iPhone.

In questo articolo vedremo da vicino come esportare il modello YOLO11 nel formato CoreML. Esploreremo inoltre casi d'uso in tempo reale che mostrano i vantaggi dell'esecuzione di modelli di computer vision direttamente su dispositivi iOS. Iniziamo!

Che cos'è il CoreML?

CoreML è un framework di machine learning (ML) sviluppato da Apple che consente agli sviluppatori di integrare modelli di ML addestrati direttamente nelle app dell'ecosistema Apple, tra cui iOS (iPhone e iPad), macOS (Mac), watchOS (Apple Watch) e tvOS (Apple TV). È stato progettato per rendere l'apprendimento automatico accessibile ed efficiente sui dispositivi Apple, consentendo l'esecuzione dei modelli direttamente sul dispositivo, senza richiedere una connessione a Internet.

Il cuore di CoreML è un formato di modello unificato che supporta un'ampia gamma di attività di intelligenza artificiale come la classificazione di immagini, il rilevamento di oggetti, il riconoscimento vocale e l'elaborazione del linguaggio naturale. Il framework è ottimizzato per sfruttare al meglio l'hardware di Apple, utilizzando la CPU (unità di elaborazione centrale), la GPU (unità di elaborazione grafica) e l'ANE (Apple Neural Engine) per eseguire i modelli in modo rapido ed efficiente.

CoreML supporta una varietà di tipi di modelli ed è compatibile con le più diffuse librerie di apprendimento automatico, tra cui TensorFlow, PyTorch, scikit-learn, XGBoost e LibSVM. In questo modo è più facile per gli sviluppatori introdurre funzionalità di ML avanzate nelle applicazioni di tutti i giorni, garantendo al tempo stesso un'esecuzione fluida su tutti i dispositivi Apple.

Figura 1. CoreML supporta modelli di altri framework di IA popolari(fonte).

Caratteristiche principali di CoreML

Ecco alcune delle caratteristiche principali che rendono CoreML uno strumento affidabile per l'integrazione dell'intelligenza artificiale nelle app Apple:

  • Ottimizzazione del modello: CoreML supporta tecniche di compressione come la quantizzazione e il pruning per ridurre le dimensioni del modello e migliorare l'efficienza del runtime.
  • Personalizzazione sul dispositivo: Il framework ML di Apple supporta la personalizzazione on-device, consentendo di addestrare e aggiornare localmente i modelli in base alle interazioni degli utenti.
  • Previsioni asincrone: Questo framework consente alla vostra applicazione di eseguire le previsioni in background, mantenendo l'interfaccia utente fluida e reattiva durante la gestione delle attività di intelligenza artificiale.
  • Apprendimento multi-task: CoreML supporta modelli in grado di eseguire più compiti contemporaneamente, come il rilevamento di oggetti e il riconoscimento di testi nella stessa immagine.

Come esportare YOLO11 in formato CoreML

Ora che abbiamo una migliore comprensione del framework CoreML, vediamo come utilizzare l'integrazione CoreML supportata da Ultralytics per esportare un modello YOLO11 nel formato CoreML.

Passo 1: Impostazione dell'ambiente

Per accedere alle funzioni di integrazione fornite da Ultralytics, è necessario installare il pacchetto Ultralytics Python. Si tratta di una libreria leggera e facile da usare che semplifica attività come l'addestramento, la valutazione, la previsione e l'esportazione dei modelli YOLO di Ultralytics.

È possibile installare il pacchetto Ultralytics Python eseguendo "pip install ultralytics" nel terminale di comando. Se state usando un ambiente come Jupyter Notebook o Google Colab, includete un punto esclamativo (!) prima del comando: "!pip install ultralytics".

Se si riscontrano problemi durante l'installazione o l'esportazione in CoreML, consultare la documentazione ufficiale di Ultralytics o la guida ai problemi comuni.

Passo 2: Esportazione di YOLO11 in CoreML

Una volta installato il pacchetto, si è pronti a caricare un modello YOLO11 e a convertirlo in formato CoreML.

Se non siete sicuri di quale modello YOLO11 pre-addestrato utilizzare, potete esplorare la gamma di modelli supportati da Ultralytics. Ognuno di essi offre un diverso equilibrio tra velocità, dimensioni e accuratezza e si può scegliere quello più adatto al proprio progetto. È anche possibile utilizzare un modello YOLO11 addestrato su misura, se ne è stato addestrato uno sul proprio set di dati.

Nel frammento di codice sottostante, viene utilizzato un file di modello YOLO11 pre-addestrato denominato "yolo11n.pt". Durante il processo di esportazione, viene convertito in un pacchetto CoreML chiamato "yolo11n.mlpackage".

Il modello "yolo11n" è la versione nano, ottimizzata per la velocità e il basso consumo di risorse. A seconda delle esigenze del progetto, è possibile scegliere anche altre dimensioni del modello, come "s" per small, "m" per medium, "l" per large o "x" per extra-large. Ogni versione offre un diverso equilibrio tra prestazioni e precisione.

from ultralytics import YOLO

model = YOLO("yolo11n.pt")

model.export(format="coreml")

Passo 3: esecuzione dell'inferenza utilizzando il modello CoreML esportato

Dopo l'esportazione nel formato CoreML, YOLO11 può essere facilmente integrato nelle applicazioni iOS, consentendo di svolgere attività di computer vision in tempo reale come il rilevamento di oggetti su dispositivi come iPhone, iPad e Mac.

Ad esempio, lo snippet di codice qui sotto mostra come caricare il modello CoreML esportato ed eseguire l'inferenza. L'inferenza è il processo di utilizzo di un modello addestrato per fare previsioni su nuovi dati. In questo caso, il modello analizza l'immagine di una famiglia che gioca con una palla.

coreml_model = YOLO("yolo11n.mlpackage")

results = coreml_model("https://images.pexels.com/photos/4933841/pexels-photo-4933841.jpeg", save=True)

Dopo l'esecuzione del codice, l'immagine di output verrà salvata nella cartella "runs/detect/predict".

Figura 2. Utilizzo di un modello YOLO11 esportato in formato CoreML per rilevare gli oggetti. Immagine dell'autore.

Dove si possono utilizzare i modelli CoreML esportati?

L'esportazione di YOLO11 in CoreML offre la flessibilità necessaria per creare diverse applicazioni di computer vision che possono essere eseguite in modo efficiente su iPhone, iPad e Mac. Vediamo ora alcuni scenari reali in cui questa integrazione può essere particolarmente utile.

Applicazioni di realtà aumentata e di gioco guidate dai modelli CoreML

La realtà aumentata (AR) fonde i contenuti digitali con il mondo reale, sovrapponendo elementi virtuali alle visioni live delle telecamere. Sta diventando una parte fondamentale dei giochi mobili, creando esperienze più interattive e coinvolgenti.

Con YOLO11 esportato nel formato CoreML, gli sviluppatori iOS possono creare giochi AR che riconoscono oggetti del mondo reale come panchine, alberi o cartelli utilizzando la fotocamera del telefono. Il gioco può poi sovrapporre a questi oggetti elementi virtuali, come monete, indizi o creature, per migliorare l'ambiente circostante al giocatore.

Dietro le quinte, questo funziona grazie al rilevamento e al tracciamento degli oggetti. YOLO11 rileva e identifica gli oggetti in tempo reale, mentre il tracking li mantiene in vista mentre la telecamera si muove, assicurandosi che gli elementi virtuali rimangano allineati con il mondo reale.

I giocatori possono puntare il telefono, esplorare l'ambiente e interagire con ciò che vedono per raccogliere oggetti o completare rapide sfide. Tutto questo può essere eseguito direttamente sul dispositivo senza bisogno di una connessione a Internet, rendendo l'esperienza fluida e coinvolgente.

App iOS integrate con i modelli CoreML per l'ANPR in tempo reale

Il riconoscimento automatico delle targhe (ANPR) è un'applicazione di computer vision utilizzata per rilevare e leggere le targhe dei veicoli. È comunemente utilizzata nei sistemi di sicurezza, di monitoraggio del traffico e di controllo degli accessi. Grazie a CoreML e a modelli come YOLO11, l'ANPR può ora funzionare in modo efficiente sui dispositivi iOS. 

Avere un'app ANPR sul proprio iPhone può essere particolarmente utile negli ambienti incentrati sulla sicurezza. Ad esempio, può aiutare i team a determinare rapidamente se un veicolo che entra in un'area riservata è autorizzato o meno.

Un'applicazione di questo tipo può utilizzare un modello Vision AI come YOLO11, integrato attraverso CoreML, per rilevare i veicoli e individuare le targhe in tempo reale utilizzando la fotocamera del dispositivo. Una volta rilevata una targa, la tecnologia di riconoscimento ottico dei caratteri (OCR) può leggere il numero di targa. L'applicazione può quindi confrontare questo numero con un database locale o basato su cloud per verificare l'accesso o segnalare i veicoli non autorizzati.

Figura 3. L'intelligenza artificiale può essere utilizzata per rilevare e leggere i numeri di targa.(Fonte).

Le applicazioni incentrate sull'accessibilità possono sfruttare i modelli CoreML

L'intelligenza artificiale ha avuto un enorme impatto sull'accessibilità, contribuendo ad abbattere le barriere per le persone con disabilità visive. Grazie a strumenti come CoreML e a modelli di visione artificiale come YOLO11, gli sviluppatori possono creare app iOS che descrivono il mondo che circonda gli utenti in tempo reale, rendendo le attività quotidiane più semplici e indipendenti.

Ad esempio, una persona ipovedente può puntare la fotocamera dell'iPhone verso l'ambiente circostante. L'applicazione utilizza il rilevamento degli oggetti per riconoscere gli elementi chiave, come veicoli, persone o segnali stradali, e racconta ciò che vede. Questo può essere utilizzato in situazioni come la navigazione in una strada trafficata o la comprensione di un'emergenza.

Figura 4. Un esempio di utilizzo di YOLO11 per rilevare le persone

Punti di forza

L'esportazione di YOLO11 nel formato CoreML crea nuove opportunità per le applicazioni in tempo reale, compreso il rilevamento di oggetti offline sui dispositivi iOS. Dall'agricoltura, alla sicurezza, all'accessibilità, questa combinazione consente agli sviluppatori di creare applicazioni intelligenti, efficienti e attente alla privacy che vengono eseguite interamente sul dispositivo.

Con pochi semplici passaggi, è possibile convertire il modello YOLO11 e aggiungere funzioni affidabili di computer vision agli iPhone. E soprattutto, funziona senza bisogno di una connessione a Internet. Nel complesso, l'integrazione di CoreML porta la potenza dell'intelligenza artificiale avanzata nelle applicazioni mobili di tutti i giorni, rendendole più veloci, reattive e pronte per essere eseguite ovunque.

Siete curiosi di 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 logistica stanno 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