Con l'API di riconoscimento dell'inchiostro digitale di ML Kit, puoi riconoscere il testo scritto a mano, classificare i gesti su una superficie digitale in centinaia di lingue e classificare gli schizzi. L'API di riconoscimento dell'inchiostro digitale utilizza la stessa tecnologia che supporta il riconoscimento della scrittura in Gboard, Google Traduttore e nel gioco Rapido, Draw!.
Il riconoscimento di inchiostro digitale ti consente di:
- Scrivi sullo schermo anziché digitare su una tastiera virtuale. In questo modo gli utenti possono tracciare caratteri che non sono disponibili sulla tastiera, ad esempio ệ, अ o 森 per le tastiere con caratteri alfabetici latini.
- Eseguire operazioni di base sul testo (navigazione, modifica, selezione e così via) utilizzando i gesti.
- Riconosci forme ed emoji disegnate a mano.
Il riconoscimento dell'inchiostro digitale funziona con i tratti che l'utente disegna sullo schermo. Se devi leggere il testo delle immagini scattate con la fotocamera, utilizza l'API Text Recognition.
Il riconoscimento dell'inchiostro digitale funziona completamente offline ed è supportato su Android e iOS.
Funzionalità principali
- Converte il testo scritto a mano in sequenze di caratteri Unicode
- Funziona sul dispositivo quasi in tempo reale
- La scrittura a mano libera dell'utente rimane sul dispositivo, il riconoscimento viene eseguito senza connessione di rete
- Supporta oltre 300 lingue e oltre 25 sistemi di scrittura. Consulta l'elenco completo delle lingue supportate
- Supporta la classificazione dei gesti per queste lingue tramite le estensioni
-x-gesture
- Supporta la classificazione dei gesti per queste lingue tramite le estensioni
- Riconosce emoji e forme di base
- Lo spazio di archiviazione sul dispositivo è limitato scaricando dinamicamente i language pack in base alle esigenze
Il riconoscimento accetta un oggetto Ink
come input. Ink
è una rappresentazione vettoriale di ciò che l'utente ha scritto sullo schermo: una sequenza di trattini, ognuno dei quali è un elenco di coordinate con informazioni temporali chiamate punti di contatto. Un tratto inizia quando l'utente appoggia lo stilo o un dito verso il basso e termina quando lo solleva. Ink
viene passato a un riconoscimento, che restituisce uno o più possibili risultati di riconoscimento, con livelli di affidabilità.
Esempi
Scrittura a mano libera in inglese
L'immagine a sinistra sotto mostra ciò che l'utente ha disegnato sullo schermo. L'immagine a destra è l'oggetto Ink
corrispondente. Contiene i tratti con punti rossi che rappresentano
i punti di contatto all'interno di ogni tratto.
Ci sono quattro colpi. I primi due tratti nell'oggetto Ink
avranno il seguente aspetto:
Inchiostro | ||
---|---|---|
Tratto 1 | x
|
392, 391, 389, 287, ... |
y
|
52, 60, 76, 97, ... | |
t
|
0, 37, 56, 75, ... | |
Tratto 2 | x
|
497, 494, 493, 490, ... |
y
|
167, 165, 165, 165, ... | |
t
|
694, 742, 751, 770, ... | |
... |
Quando invii questo Ink
a un riconoscimento per la lingua inglese, vengono restituite diverse possibili trascrizioni, contenenti cinque o sei caratteri. Sono ordinati in modo da diminuire l'affidabilità:
RecognitionResult | |
---|---|
Candidato di riconoscimento n. 1 | Mano |
Candidato di riconoscimento n. 2 | Handrw |
Candidato di riconoscimento n. 3 | hardw |
Candidato di riconoscimento n. 4 | Handu |
Candidato di riconoscimento n. 5 | Handwe |
Gesti
I classificatori di gesti classificano un tratto di inchiostro in una delle nove classi di gesti elencate di seguito.
arch:above arch:below |
|
caret:above caret:below |
|
circle |
|
scribble |
|
strike |
|
verticalbar |
|
writing |
Disegni di emoji
L'immagine a sinistra sotto mostra ciò che l'utente ha disegnato sullo schermo. L'immagine a destra è l'oggetto Ink
corrispondente. Contiene i tratti con punti rossi che rappresentano
i punti di contatto all'interno di ogni tratto.
L'oggetto Ink
contiene sei tratti.
Inchiostro | ||
---|---|---|
Tratto 1 | x
|
269, 266, 262, 255, ... |
y
|
40, 40, 40, 41, ... | |
t
|
0, 36, 56, 75, ... | |
Tratto 2 | x
|
179, 182, 183, 185, ... |
y
|
157, 158, 159, 160, ... | |
t
|
2475, 2522, 2531, 2541, ... | |
... |
Quando invii questo Ink
al riconoscimento di emoji, ricevi diverse possibili trascrizioni, ordinate in base a una riduzione dell'affidabilità:
RecognitionResult | |
---|---|
Candidato di riconoscimento n. 1 | 😂 (U+1f62d) |
Candidato di riconoscimento n. 2 | 😅 (U+1f605) |
Candidato di riconoscimento n. 3 | 😹 (U+1f639) |
Candidato di riconoscimento n. 4 | playbook (U+1f604) |
Candidato di riconoscimento n. 5 | 😃 (U+1f606) |