iPhone: come utilizzare le funzionalità di rilevamento del testo di iOS

Vision in iOS 11 ha tutto il necessario per creare un'app in grado di riconoscere i caratteri di testo con l'implementazione simultanea. Non è necessaria una conoscenza tecnica della codifica: la navigazione nella funzione è abbastanza semplice. Inoltre, l'implementazione è senza soluzione di continuità.

Quadro di visione

Il framework di visione consente di implementare facilmente qualsiasi attività che coinvolga i dettagli del computer. La struttura esegue il rilevamento del volto e del punto di riferimento del volto, il riconoscimento del codice a barre, la registrazione dell'immagine, il rilevamento delle caratteristiche generali e il rilevamento del testo. Vision consente inoltre di utilizzare modelli Core ML personalizzati per attività come la classificazione o il rilevamento di oggetti.

VN DetectTextRectanglesRequest

Il  VN DetectTextRectanglesRequest  è una richiesta di analisi dell'immagine che trova regioni di testo visibile in un'immagine; la funzione restituisce i caratteri di testo come un riquadro di delimitazione rettangolare con origine e dimensione.

Se sei abituato a usare swift e stai programmando da un po', probabilmente ti starai chiedendo quale sia l'uso di Vision quando ci sono altre funzionalità come image e AVFoundation. Bene, Vision è più preciso e più diretto. La funzione è disponibile anche su una varietà di piattaforme. Tuttavia, l'utilizzo di Vision potrebbe richiedere più potenza di elaborazione e tempo di elaborazione.

Per utilizzare Vision per il rilevamento del testo, avrai bisogno di Xcode 9 e di un dispositivo con iOS 11.

Creazione di una fotocamera con Avcapture

Innanzitutto, devi creare una videocamera con  AVCapture ; questo avviene inizializzando un oggetto AVcapturesession per eseguire l'acquisizione in tempo reale o offline. Successivamente, effettua la sessione sulla connessione del dispositivo.

Per risparmiare tempo dalla creazione di un'interfaccia utente della tua app, considera di avere un progetto iniziale, per cominciare, questo ti darà il tempo di concentrarti sull'apprendimento del framework Vision.

Apri il tuo progetto di partenza. Le viste nello storyboard dovrebbero essere tutte pronte e impostate per te.

In  ViewController.swift,  cerca la sezione del codice con funzioni e punti vendita.

Sotto l'outlet- ImageView, dichiara una sessione per  AVcapturesession  : questa viene utilizzata ogni volta che si desidera eseguire azioni in base a un live streaming.

Imposta  AVcapturesession  e  AVmediatype  su video poiché eseguirai le riprese della fotocamera per consentirne l'esecuzione continua

Definire il dispositivo di output e input

L'input è ciò che vedrà la telecamera e l'output è il video in un formato di tipo impostato di KCVPixelFormatType_32GRA.

Infine, aggiungi un  sottolivello  che contenga video a  imageView  e avvia la sessione. La funzione è nota come  inViewdidload.  È inoltre necessario impostare la cornice del livello.

Chiama la funzione nel   metodo viewWillAppear .

Poiché i limiti non sono ancora stati finalizzati, sovrascrivere il  metodo viewDidLayoutSubviews ( )  per aggiornare i livelli associati.

Dopo il rilascio di iOS 10, è necessaria una voce aggiuntiva in Info.plist, che fornisce un motivo per utilizzare la fotocamera. Dovresti anche impostare la descrizione dell'utilizzo della fotocamera per la privacy.

rilevamento del testo; Come funziona Vision Framework

Ci sono tre passaggi per implementare Vision sull'app.

Gestori:  questo è quando vuoi che il framework esegua qualcosa dopo che la richiesta è stata chiamata.

Osservazioni –  questo è quello che vuoi fare con i dati da te forniti a partire da una richiesta

Richieste:  questo è il momento in cui chiedi il framework Detect

Idealmente, crei una richiesta di testo come  VNdetecttextrectanglesrequest . Questo è un tipo di  VNrequest  che circonda il testo. Dopo che il framework ha completato l'applicazione, si procede alla chiamata della   funzione Dettexthandler . Dovrai anche conoscere l'esatto frame che è stato riconosciuto, impostalo su  Reportcharacterboxes =True.

Dopodiché, definisci le osservazioni che contengono tutti i risultati di  VNdetecttextrectanglesrequest , ricordati di aggiungere Vision alla telecamera di output. Poiché Vision espone API di alto livello, lavorare con esso è sicuro.

La funzione controlla se  Cmsamplebuffer  esiste e PutOut  Avcaptureoutput . Dovresti quindi procedere alla creazione di una variabile  Requestoptions  come 1 Dictionary Type  VNimageoption . L'   opzione VNmage è un tipo di struttura che contiene proprietà e dati dalla telecamera. Dovresti quindi creare il  VNimagerequesthandler  ed eseguire la richiesta di testo.

Disegnare bordi intorno al testo rilevato

Puoi iniziare avendo il framework per disegnare due caselle, una per ogni lettera rilevata e l'altra per ogni parola. Le tabelle sono la combinazione di tutte le caselle di caratteri che la tua richiesta troverà.

  • Definisci i punti sulla tua vista per aiutarti a posizionare le scatole.
  • Successivamente, crea un  CALaye r; usa  VNrectangleobservation  per definire i tuoi vincoli, semplificando il processo di delineamento della scatola.

Ora hai tutte le tue funzioni disposte.

Per collegare i tuoi punti, inizia con l'esecuzione del codice in modo asincrono. Dovresti quindi verificare se esiste una regione all'interno dei risultati della tua  VNTextObservation .

Ora puoi chiamare la tua funzione, che disegnerà una casella all'interno dell'area. Controlla se ci sono caselle di caratteri all'interno della regione, quindi chiama il servizio che porta una casella attorno a ogni lettera.

Successivamente, crea una variabile  RequestOptions. Ora puoi creare un  oggetto VNImageRequestHandler  ed eseguire la richiesta di testo che hai creato.

Infine, l'ultimo passaggio consiste nell'eseguire il codice di visione con il live streaming. Dovrai prendere l'output video e convertirlo in  Cmsamplebuffer.

Suggerimenti aggiuntivi

Cerca sempre di ritagliare l'immagine ed elaborare solo la sezione di cui hai bisogno. Ciò ridurrà il tempo di elaborazione e l'impronta di memoria

Attiva la correzione della lingua quando si tratta di caratteri non numerici, quindi disattivala quando si tratta di un carattere numerico

Includere la convalida per le stringhe di numeri riconosciute per confermare l'accuratezza ed eliminare la visualizzazione di valori falsi per l'utente.

Il controller della telecamera per documenti è il miglior compagno per il riconoscimento del testo poiché la qualità dell'immagine svolge un ruolo significativo nel riconoscimento del testo.

Considera l'impostazione di un'altezza minima del testo per aumentare le prestazioni.

Con Vision hai tutto il necessario per il riconoscimento del testo. Poiché Vision è facile da usare e richiede poco tempo per l'implementazione, utilizzarlo equivale quasi a giocare con i Lego. Prova a testare la tua app su oggetti, caratteri, illuminazione e dimensioni diversi. Puoi anche stupirti combinando Vision con Core ML.



Leave a Comment

Come ripristinare lhard e il soft reset di iPad Mini

Come ripristinare lhard e il soft reset di iPad Mini

Scopri come eseguire un hard e soft reset dell

iPhone, iPad o iPod Touch: come spegnere la radio

iPhone, iPad o iPod Touch: come spegnere la radio

Ti mostriamo diversi modi per spegnere la radio su Apple iPhone, iPad o iPod Touch. Scopri le soluzioni più efficaci per gestire le tue app musicali.

Forza la versione desktop di YouTube in Safari per iPhone e iPad

Forza la versione desktop di YouTube in Safari per iPhone e iPad

Scopri come visualizzare la versione desktop completa di YouTube in Safari per iOS e accedere a tutte le sue funzionalità.

Come ingrandire la tastiera su iPhone e iPad

Come ingrandire la tastiera su iPhone e iPad

Hai problemi con lutilizzo dei piccoli tasti sulla tastiera del tuo dispositivo? Ecco 8 modi per ingrandire la tastiera sul tuo iPhone e iPad.

Come risolvere la batteria di Apple Watch che si scarica velocemente

Come risolvere la batteria di Apple Watch che si scarica velocemente

Il tuo Apple Watch scarica la batteria più velocemente del normale? Leggi il post per scoprire come risolvere il problema con il consumo della batteria di Apple Watch.

4 modi per eseguire il mirroring dello schermo da iPhone a TV Samsung

4 modi per eseguire il mirroring dello schermo da iPhone a TV Samsung

Scopri quattro modi per eseguire il mirroring dello schermo dell

Quanto è accurato il contatore di calorie di Apple Watch?

Quanto è accurato il contatore di calorie di Apple Watch?

Scopri quanto è accurato il contatore di calorie di Apple Watch e come usarlo per monitorare la tua attività fisica.

Che cosè lestensione del file AAE e come si apre?

Che cosè lestensione del file AAE e come si apre?

Scopri cosa sono i file con estensione AAE e come puoi aprirli con questo tutorial dettagliato.

Come misurare i decibel su iPhone

Come misurare i decibel su iPhone

L’esposizione prolungata a rumori forti può compromettere le capacità uditive. Scopri come misurare i decibel su iPhone per proteggere la tua salute uditiva.

6 modi per trovare e svuotare il cestino su iPhone

6 modi per trovare e svuotare il cestino su iPhone

Scopri come trovare e svuotare il cestino sul tuo iPhone per rimuovere definitivamente file non necessari.