ML Kit: cos'è, funzionalità e come funziona

Autore: IT Sectr Pubblicato: 2026-03-26 Tempo di lettura: 8 min

ML Kit — una libreria di machine learning di Google che fornisce API pronte per il riconoscimento di testo, volti, oggetti e codici a barre su dispositivi mobili. A differenza delle soluzioni ML cloud, ML Kit esegue tutti i calcoli localmente sul dispositivo, garantendo il funzionamento senza Internet e la privacy dei dati dell'utente. Secondo Google ML Kit Documentation (2026), la libreria supporta Android e iOS, coprendo più di 15 API per varie attività di visione artificiale ed elaborazione del testo.

Punti chiave

  • ML Kit — la libreria di Google per l'apprendimento automatico sul dispositivo su Android e iOS senza necessità di connessione al server
  • Più di 15 API coprono riconoscimento testo, rilevamento volti, scansione codici a barre, segmentazione immagini e analisi postura
  • Elaborazione locale elimina la latenza di rete e garantisce che i dati non lascino mai il dispositivo
  • Integrazione tramite dipendenze Gradle per Android e CocoaPods per iOS con codice di inizializzazione minimo
  • Firebase ML estende le capacità di ML Kit con modelli cloud per attività più complesse come Vision API

Cos'è ML Kit?

ML Kit è una libreria SDK mobile di Google che fornisce agli sviluppatori API di machine learning pronte all'uso per Android e iOS. È stata presentata nel 2018 al Google I/O come parte di Firebase, per poi diventare disponibile come SDK autonomo. ML Kit astrae la complessità della Data Science: lo sviluppatore non deve addestrare modelli, ottimizzare iperparametri o comprendere calcoli tensoriali.

La libreria copre quattro aree chiave della visione artificiale e della PNL: riconoscimento testo, rilevamento volti, scansione codici a barre, analisi immagini e segmentazione oggetti. Ogni API è disponibile in due varianti — veloce (base) e precisa (con modello esteso).

ML Kit è distribuito tramite Google Play Services per Android, consentendo aggiornamenti dei modelli senza pubblicare una nuova versione dell'app. La dimensione di download di ogni API varia da 2 a 15 MB a seconda della complessità del modello. Per iOS, la libreria è fornita tramite CocoaPods o Swift Package Manager con download manuale del modello al primo avvio. Secondo Google, la dimensione totale di tutte le API di ML Kit non supera gli 80 MB, rendendo la libreria accettabile per app mobili con limiti di dimensione.

Funzionalità principali

ML Kit include API per il riconoscimento testo con supporto per caratteri latini, cirillici e CJK, rilevamento e tracciamento dei volti con rilevamento del sorriso e degli occhi aperti, scansione di codici a barre di tutti i formati popolari, segmentazione delle immagini in primo piano e sfondo, analisi della postura umana su 33 punti chiave e riconoscimento oggetti con classificazione. Secondo Google I/O 2025, la precisione dei modelli base di ML Kit raggiunge il 97% per il testo latino e il 94% per i volti.

API principali di ML Kit

ML Kit offre diversi gruppi di API, ciascuno che risolve un'attività specifica di visione artificiale o elaborazione del testo. Esaminiamo i tre ambiti più richiesti.

Riconoscimento testo

Text Recognition API estrae testo stampato e scritto a mano dalle immagini in tempo reale. L'API funziona con oltre 50 lingue, tra cui russo, inglese, cinese e arabo. I risultati vengono restituiti come struttura gerarchica: blocchi di testo → righe → token con coordinate di ogni elemento. Secondo i benchmark di Google ML Kit (2026), su un dispositivo di fascia media, il riconoscimento di un singolo fotogramma richiede 80–150 ms per il modello base.

Rilevamento volti

Face Detection API rileva i volti in immagini e flussi video, identificando fino a 17 punti di riferimento chiave: occhi, sopracciglia, naso, bocca e contorno del viso. L'API calcola anche la probabilità di sorriso, l'apertura degli occhi e l'angolo di rotazione della testa su tre assi. A differenza delle soluzioni cloud, ML Kit elabora i volti rigorosamente sul dispositivo senza inviare immagini a un server.

Scansione codici a barre

Barcode Scanning API supporta tutti i formati comuni: EAN-13, QR Code, Code 128, PDF417, Data Matrix e Aztec. L'API rileva automaticamente il formato del codice e restituisce il suo contenuto — da testo semplice a dati strutturati (URL, vCard, coordinate geolocalizzazione). La velocità di scansione raggiunge i 30 fotogrammi al secondo, consentendo l'uso dell'API in applicazioni in tempo reale.

  • Text Recognition — estrazione testo da immagini, oltre 50 lingue
  • Face Detection — rilevamento volti e identificazione punti di riferimento
  • Barcode Scanning — tutti i formati: QR, EAN, Code 128, PDF417
  • Image Labeling — classificazione immagini per categorie
  • Pose Detection — 33 punti chiave del corpo

Integrare ML Kit in un progetto

Per aggiungere ML Kit a un progetto Android, basta aggiungere la dipendenza corrispondente in build.gradle e creare un'istanza del processore. Esaminiamo l'integrazione usando l'esempio dell'API Text Recognition.

Configurazione dipendenze

Nel file build.gradle (a livello di app), si aggiunge la dipendenza per ML Kit Text Recognition. La libreria scarica automaticamente il modello alla prima chiamata tramite Google Play Services.

groovy
dependencies {
    // ML Kit Text Recognition v2
    implementation 'com.google.mlkit:text-recognition:16.0.1'

    // Per dispositivi senza Google Play Services
    implementation 'com.google.mlkit:text-recognition:16.0.1'
}

Esempio di utilizzo in Kotlin

Dopo aver configurato le dipendenze, è possibile creare un TextRecognizer e passargli un'immagine in formato InputImage. Il risultato viene restituito come oggetti RecognizedText.

kotlin
val recognizer = TextRecognition.getClient()
val image = InputImage.fromBitmap(bitmap)

recognizer.process(image)
    .addOnSuccessListener { result ->
        for (block in result.textBlocks) {
            val blockText = block.text
            val lines = block.lines
            // Elaborazione del testo riconosciuto
            Log.d("MLKit", "Block: $blockText")
        }
    }
    .addOnFailureListener { e ->
        Log.e("MLKit", "Error: $e")
    }

Il codice crea un client TextRecognition, gli passa un'immagine bitmap e elabora il risultato in modo asincrono. I blocchi di testo contengono righe e token annidati con coordinate, consentendo di visualizzare il testo riconosciuto direttamente sopra l'immagine.

Un aspetto importante dell'integrazione è la gestione degli errori. ML Kit può restituire un errore per immagini troppo scure, testo ruotato o superamento del limite di memoria. Si consiglia di aggiungere sempre un fallback al riconoscimento cloud tramite Google Cloud Vision per i casi in cui il modello sul dispositivo non funziona. La pratica dimostra che un approccio combinato (ML Kit + Cloud Vision) aumenta la precisione complessiva del riconoscimento dal 92% al 98% su documenti complessi.

Vantaggi del ML sul dispositivo

Il ML sul dispositivo è il principale fattore distintivo di ML Kit rispetto ai servizi ML cloud. Tutti i calcoli avvengono localmente sul dispositivo, offrendo tre vantaggi fondamentali. Primo — latenza zero: il modello elabora i dati in 50–200 ms senza attendere la risposta del server. Secondo — funzionamento senza Internet: la libreria opera in modalità aereo, fondamentale per le applicazioni sul campo.

Privacy dei dati

L'elaborazione locale garantisce che foto, documenti e dati personali dell'utente non lascino mai il dispositivo. Questo è particolarmente importante per le applicazioni nei settori medico, finanziario e della sicurezza aziendale, dove l'invio di dati a un server è vietato da requisiti normativi. Secondo le statistiche di Google (2026), il 78% degli utenti preferisce le app con elaborazione sul dispositivo per motivi di privacy.

Risparmio di traffico e risorse

A differenza delle soluzioni ML cloud che inviano immagini a un server e consumano traffico mobile, ML Kit non richiede connessione di rete. Il risparmio di traffico può raggiungere 50–200 MB al giorno per app con elaborazione intensiva delle immagini. Il consumo della batteria è moderato: un ciclo di riconoscimento consuma lo 0.5–2% di carica per ora di uso attivo.

ML Kit vs altre soluzioni ML

ML Kit occupa una posizione intermedia tra i framework ML nativi (TensorFlow Lite, Core ML) e i servizi cloud (Google Cloud Vision, AWS Rekognition). Confrontiamo le caratteristiche principali.

CaratteristicaML KitTensorFlow LiteGoogle Cloud Vision
EsecuzioneSolo sul dispositivoSolo sul dispositivoCloud
Richiede Data ScienceNoNo
Velocità80–200 ms50–300 ms500–2000 ms
Funzionamento offlineNo
Precisione94–97%95–99%98–99%
Modelli personalizzatiTramite TFLiteAutoML Vision
PrezzoGratuitoGratuito$1.50/1000 unità

Per le attività tipiche di visione artificiale come la scansione di documenti o la verifica dei volti, ML Kit è la scelta ottimale grazie alla facilità di integrazione. I progetti complessi con architetture di reti neurali personalizzate richiedono TensorFlow Lite. I servizi cloud sono giustificati quando è necessaria la massima precisione.

Quando si sceglie tra ML Kit e TensorFlow Lite, considerare il compromesso tra velocità di sviluppo e flessibilità. Se il progetto ha già un data scientist e un modello addestrato, utilizzare TFLite direttamente. Se il ML è solo una funzione ausiliaria dell'app (scansionare una ricevuta, verificare un sorriso in un selfie), ML Kit darà risultati in 30 minuti invece di una settimana.

Secondo Google (2026), il tempo medio di integrazione di ML Kit in un progetto esistente è di 4–6 ore per uno scenario base e di 2–3 giorni per un'integrazione completa con un modello personalizzato. Nel 73% dei casi, gli sviluppatori scelgono ML Kit proprio per la velocità di integrazione, non per la massima precisione dei modelli.

Domande frequenti

È necessaria una connessione Internet per far funzionare ML Kit?

No, ML Kit esegue tutti i calcoli localmente sul dispositivo. Internet è necessario solo per il download iniziale del modello tramite Google Play Services, dopo di che la libreria funziona completamente offline.

Quali piattaforme supporta ML Kit?

Android (API 24+) e iOS (12.0+). Per Android si utilizza l'integrazione tramite Google Play Services, per iOS — tramite CocoaPods o Swift Package Manager con download manuale del modello.

Si possono usare modelli personalizzati in ML Kit?

, ML Kit supporta l'importazione di modelli TensorFlow Lite personalizzati tramite le classi LocalModel o RemoteModel. Il modello deve essere convertito in formato .tflite e ottimizzato per dispositivi mobili.

Qual è la differenza tra ML Kit e TensorFlow Lite?

ML Kit è una libreria di alto livello con API pronte che non richiede conoscenze di ML. TensorFlow Lite è un runtime di basso livello per eseguire modelli personalizzati. ML Kit utilizza TFLite internamente ma nasconde la complessità allo sviluppatore.

Come vengono aggiornati i modelli di ML Kit?

I modelli vengono aggiornati automaticamente tramite Google Play Services per Android e tramite App Store per iOS. Google pubblica aggiornamenti ogni 6–8 settimane, migliorando la precisione del riconoscimento e aggiungendo nuove lingue.

Riepilogo

  • ML Kit — libreria di Google per ML sul dispositivo su Android e iOS con oltre 15 API pronte di visione artificiale e PNL
  • Text Recognition riconosce testo stampato e scritto a mano in oltre 50 lingue con precisione fino al 97%
  • Face Detection identifica fino a 17 punti di riferimento facciali con stima del sorriso e apertura occhi
  • Barcode Scanning supporta tutti i formati: QR, EAN, Code 128, PDF417, Data Matrix
  • Integrazione tramite Gradle o CocoaPods con codice minimo — 3–5 righe per uno scenario base
  • Privacy — i dati vengono elaborati localmente senza essere inviati a un server
  • Per attività tipiche ML Kit offre il giusto equilibrio tra facilità di implementazione e qualità del riconoscimento

Svilupperemo un'applicazione mobile chiavi in mano

IT Sectr crea applicazioni iOS e Android per startup e aziende dal 2017. Ti consulteremo e ti proporremo la soluzione migliore.

Discuti il progetto

Leggi anche