Esplorare il riconoscimento ottico dei caratteri
Nota: per completare questo lab è necessaria una sottoscrizione di Azure in cui si ha accesso amministrativo.
Il rilevamento e l’interpretazione del testo in un’immagine rappresentano una sfida comune per i sistemi di visione artificiale. Questo tipo di elaborazione viene spesso definito riconoscimento ottico dei caratteri (OCR). L’API Lettura di Microsoft fornisce l’accesso alle funzionalità OCR.
Per testare le funzionalità dell’API Lettura, verrà usata una semplice applicazione da riga di comando eseguita in Cloud Shell. Gli stessi principi e funzionalità sono applicabili a soluzioni reali, ad esempio siti Web o app per smartphone.
Usare il servizio Visione di Azure AI per leggere il testo in un’immagine
Il servizio Visione di Azure AI offre supporto per le attività OCR, tra cui:
- Un’API di lettura ottimizzata per documenti di dimensioni maggiori. Questa API viene usata in modo asincrono e può essere usata sia per il testo stampato che per quello scritto a mano.
Creare una risorsa Servizi di Azure AI
È possibile usare il servizio Visione di Azure AI creando una risorsa Visione artificiale o una risorsa Servizi di Azure AI.
Se non è già stato fatto, creare una risorsa Servizi di Azure AI nella sottoscrizione di Azure.
-
In un’altra scheda del browser, aprire il portale di Azure all’indirizzo https://portal.azure.com, eseguendo l’accesso con l’account Microsoft.
- Fare clic sul pulsante +Crea una risorsa e cercare Servizi di Azure AI. Selezionare Crea un piano di Servizi di Azure AI. Verrà visualizzata una pagina per creare una risorsa Servizi di Azure AI. Eseguire la configurazione con le seguenti impostazioni:
- Sottoscrizione: la sottoscrizione di Azure usata.
- Gruppo di risorse: selezionare o creare un nuovo gruppo di risorse con un nome univoco.
- Area: scegliere una qualsiasi area disponibile.
- Nome: immettere un nome univoco.
- Piano tariffario: Standard S0.
- Selezionando questa casella, confermo di aver letto e compreso tutte le condizioni seguenti: selezionata.
-
Esaminare e creare la risorsa e attendere il completamento della distribuzione. Passare quindi alla risorsa distribuita.
- Visualizzare la pagina Chiavi ed endpoint per la risorsa Servizi di Azure AI. Sarà necessario specificare l’endpoint e le chiavi per la connessione dalle applicazioni client.
Eseguire Cloud Shell
Per testare le funzionalità del servizio Visione personalizzata, verrà usata una semplice applicazione da riga di comando eseguita in Cloud Shell in Azure.
-
Nel portale di Azure, selezionare il pulsante [>_] (Cloud Shell) nella parte superiore della pagina a destra della casella di ricerca. Si aprirà un riquadro di Cloud Shell nella parte inferiore del portale.
-
La prima volta che si apre Cloud Shell, è possibile che venga chiesto di scegliere il tipo di shell da usare (Bash o PowerShell). Selezionare PowerShell. Se questa opzione non viene visualizzata, ignorare il passaggio.
-
Se viene chiesto di creare una risorsa di archiviazione per Cloud Shell, assicurarsi che sia specificata la sottoscrizione corretta e selezionare Crea risorsa di archiviazione. Attendere circa un minuto che la risorsa di archiviazione venga creata.
-
Verificare che nella parte superiore sinistra del riquadro di Cloud Shell sia impostato PowerShell come tipo di shell. Se è Bash, passare a PowerShell usando il menu a discesa.
-
Attendere l’avvio di PowerShell. Nel portale di Azure verrà visualizzata la schermata seguente:
Configurare ed eseguire un’applicazione client
Ora che si dispone di un modello personalizzato, è possibile eseguire una semplice applicazione client che usa il servizio OCR.
-
Nella shell dei comandi immettere il comando seguente per scaricare l’applicazione di esempio e salvarla in una cartella denominata ai-900.
git clone https://github.com/MicrosoftLearning/AI-900-AIFundamentals ai-900
Suggerimento: se questo comando è già stato usato in un altro lab per clonare il repository ai-900, è possibile ignorare questo passaggio.
-
I file vengono scaricati in una cartella denominata ai-900. Ora si vogliono visualizzare tutti i file disponibili nella risorsa di archiviazione di Cloud Shell e usarli. Digitare il comando seguente nella shell:
code .
Si aprirà un editor come quello illustrato nell’immagine seguente:
-
Nel riquadro File a sinistra espandere ai-900 e selezionare ocr.ps1. Questo file contiene codice che usa il servizio Visione artificiale per rilevare e analizzare il testo in un’immagine, come illustrato di seguito:
-
Non preoccuparsi troppo dei dettagli del codice, l’aspetto importante è che sono necessari l’URL dell’endpoint e una delle chiavi per la risorsa Servizi di Azure AI. Copiare questi valori dalla pagina Chiavi ed endpoint per la risorsa dal portale di Azure e incollarli nell’editor di codice, sostituendo rispettivamente i valori segnaposto YOUR_KEY e YOUR_ENDPOINT.
Suggerimento: potrebbe essere necessario usare la barra di separazione per regolare l’area della schermata mentre si usano i riquadri Chiavi ed endpoint ed Editor.
Dopo aver incollato i valori della chiave e dell’endpoint, le prime due righe di codice dovrebbero essere simili a quanto segue:
$key="1a2b3c4d5e6f7g8h9i0j...." $endpoint="https..."
-
In alto a destra nel riquadro dell’editor fare clic sul pulsante … per aprire il menu e selezionare Salva per salvare le modifiche. Aprire di nuovo il menu e selezionare Chiudi Editor. Dopo aver configurato la chiave e l’endpoint, è possibile usare la risorsa Servizi di Azure AI per estrarre testo da un’immagine.
Si userà ora l’API Lettura. In questo caso, si dispone di un’immagine pubblicitaria della società fittizia di vendita al dettaglio Northwind Traders, che include un testo.
L’applicazione client di esempio analizzerà l’immagine seguente:
-
Nel riquadro di PowerShell immettere i comandi seguenti per eseguire il codice per la lettura del testo:
cd ai-900 ./ocr.ps1 advert.jpg
-
Esaminare i dettagli trovati nell’immagine. Il testo trovato nell’immagine è organizzato in una struttura gerarchica di aree, righe e parole che il codice legge per recuperare i risultati.
Si noti che la posizione del testo è indicata dalle coordinate alto-sinistra e la larghezza e l’altezza di un rettangolo delimitatore, come illustrato di seguito:
-
Proviamo ora un’altra immagine:
Per analizzare la seconda immagine, immettere il comando seguente:
./ocr.ps1 letter.jpg
-
Esaminare i risultati dell’analisi per la seconda immagine. Dovrebbe restituire anche il testo e i rettangoli delimitatori del testo.
Altre informazioni
Questa semplice app mostra solo alcune delle funzionalità OCR del servizio Visione artificiale. Per altre informazioni su cosa è possibile fare con questo servizio, vedere la pagina di OCR.