iPhone: Kako koristiti značajke otkrivanja teksta iOS-a

Vision u iOS-u 11 ima sve što vam je potrebno za izradu aplikacije koja može prepoznati tekstualne znakove s implementacijom koja se odvija istovremeno. Ne trebate tehničko znanje o kodiranju – navigacija ovom značajkom je prilično jednostavna. Štoviše, implementacija je besprijekorna.

Okvir vizije

Okvir vizije omogućuje vam da jednostavno implementirate bilo koji zadatak koji uključuje računalne detalje. Struktura obavlja detekciju lica i orijentira na licu, prepoznavanje crtičnog koda, registraciju slike, praćenje općih značajki i otkrivanje teksta. Vision vam također omogućuje korištenje prilagođenih Core ML modela za zadatke poput klasifikacije ili otkrivanja objekata.

VN DetectTextRectanglesRequest

VN DetectTextRectanglesRequest  je zahtjev analiza slike koje pronalazi područja vidljivog teksta na slike; značajka vraća tekstualne znakove kao pravokutni granični okvir s ishodištem i veličinom.

Ako ste navikli koristiti swift i već neko vrijeme programirate, onda se vjerojatno pitate koja je korist od Visiona kada postoje druge značajke kao što su slika i AVFoundation. Pa, Vision je točniji i jednostavniji. Značajka je također dostupna na raznim platformama. Međutim, korištenje Visiona može zahtijevati više procesorske snage i vremena obrade.

Da biste koristili Vision za otkrivanje teksta, trebat će vam Xcode 9 i uređaj koji pokreće iOS 11.

Izrada kamere s Avcapture

Prvo, trebate stvoriti kameru s  AVCapture ; to je inicijaliziranjem jednog objekta AVcapturesession za izvođenje snimanja u stvarnom vremenu ili izvanmrežno. Nakon toga uspostavite sesiju s vezom uređaja.

Kako biste uštedjeli vrijeme od izrade korisničkog sučelja vaše aplikacije, razmislite o pokretanju projekta, za početak, to će vam dati vremena da se usredotočite na učenje okvira Vision.

Otvorite svoj početni projekt. Prikazi u storyboardu trebali bi biti spremni i postavljeni za vas.

Na  ViewController.swift  potražite odjeljak koda s funkcijama i utičnicama.

Pod outlet- ImageView, d proglasite sesiju za  AVcapturesession  – ovo se koristi kad god želite da se radnje izvode na temelju streama uživo.

Postavite  AVcapturesession  i  AVmediatype  na video jer ćete izvesti snimanje fotoaparatom kako biste omogućili njegovo neprekidno pokretanje

Definirajte izlazni i ulazni uređaj

Ulaz je ono što će kamera vidjeti, a izlaz je video u formatu postavljenog tipa KCVPixelFormatType_32GRA.

Na kraju dodajte  podsloj  koji sadrži videozapise u  imageView  i započnite sesiju. Funkcija je poznata kao  inViewdidload.  Također morate postaviti okvir sloja.

Pozovite funkciju u   metodi viewWillAppear .

Budući da granice još nisu dovršene,  nadjačajte metodu viewDidLayoutSubviews ( )  da biste ažurirali vezane slojeve.

Nakon izlaska iOS-a 10 potreban je dodatni unos u Info.plist, što daje razlog za korištenje kamere. Također biste trebali postaviti opis korištenja kamere za privatnost.

Prepoznavanje teksta; Kako funkcionira Vision Framework

Postoje tri koraka za implementaciju Visiona u aplikaciji.

Rukovaoci –  ovo je kada želite da okvir učini nešto nakon pozivanja zahtjeva.

Opažanja –  to je ono što želite učiniti s podacima koje ste dostavili počevši s jednim zahtjevom

Zahtjevi –  ovo je kada tražite okvir Detect

U idealnom slučaju, izradite jedan tekstualni zahtjev kao  VNdetecttextrectanglesrequest . Ovo je vrsta  VNrequesta  koji graniči oko teksta. Nakon što okvir dovrši aplikaciju, nastavljate s pozivanjem funkcije  Dettexthandler  . Također ćete htjeti znati točan okvir koji je prepoznat, postavite ga na  Reportcharacterboxes = True.

Nakon toga definirajte opažanja koja sadrže sve rezultate  VNdetecttextrectanglesrequest , ne zaboravite dodati Vision izlaznoj kameri. Budući da Vision izlaže API-je visoke razine, rad s njim je siguran.

Funkcija provjerava  postoji li  Cmsamplebuffer i PutOut  Avcaptureoutput . Zatim biste trebali nastaviti s stvaranjem jedne varijable  Requeststoptions  kao 1 Dictionary Type  VNimageoption . Opcija  VNmage  je vrsta strukture koja sadrži svojstva i podatke iz kamere. Zatim biste trebali kreirati  VNimagerequesthandler  i izvršiti tekstualni zahtjev.

Otkriveno crtanje granica oko teksta

Možete započeti tako da imate okvir za crtanje dva okvira, jedan za svako slovo koje detektuje, a drugi za svaku riječ. Tablice su kombinacija svih okvira znakova koje će pronaći vaš zahtjev.

  • Definirajte točke na svom pogledu kako biste lakše pozicionirali okvire.
  • Nakon toga kreirajte  CALaye r; koristite  VNrectangleobservation  da definirate svoja ograničenja, što olakšava proces ocrtavanja okvira.

Sada imate sve svoje funkcije.

Da biste povezali svoje točke, počnite s asinkronim izvođenjem koda. Zatim biste trebali provjeriti postoji li regija unutar vaših rezultata iz vašeg  VNTextObservation .

Sada možete pozvati svoju funkciju, koja će nacrtati okvir unutar područja. Provjerite postoje li okviri za znakove unutar regije, a zatim nazovite uslugu koja donosi okvir oko svakog slova.

Nakon toga stvorite varijablu  RequestOptions. Sada možete stvoriti  VNImageRequestHandler  objekt i izvršiti tekstualni zahtjev koji ste kreirali.

Konačno, posljednji korak je pokretanje vašeg koda vizije uz stream uživo. Morat ćete uzeti video izlaz i pretvoriti ga u  Cmsamplebuffer.

Dodatni savjeti

Uvijek pokušajte izrezati sliku i obraditi samo dio koji vam je potreban. To će smanjiti vrijeme obrade i memorijski otisak

Uključite ispravljanje jezika kada radite s nenumeričkim znakovima, a zatim ga isključite kada radite s brojčanim znakom

Uključite provjeru za prepoznate nizove brojeva kako biste potvrdili točnost i eliminirali pokazivanje lažne vrijednosti korisniku.

Kontroler kamere za dokumente najbolji je suputnik za prepoznavanje teksta budući da kvaliteta slike igra značajnu ulogu u prepoznavanju teksta.

Razmislite o postavljanju minimalne visine teksta kako biste povećali izvedbu.

Uz Vision imate sve što vam je potrebno za prepoznavanje teksta. Budući da je Vision jednostavan za korištenje i potrebno mu je kratko vrijeme za implementaciju, korištenje je gotovo jednako igranju s Legos kockicama. Pokušajte testirati svoju aplikaciju na različitim objektima, fontovima, osvjetljenju i veličinama. Također možete impresionirati sami sebe kombiniranjem Visiona s Core ML-om.


Leave a Comment

Kako uključiti obavijesti o adaptivnom napajanju za usporavanje iPhonea

Kako uključiti obavijesti o adaptivnom napajanju za usporavanje iPhonea

iOS 26 ima postavku obavijesti koja vas obavještava kada Adaptive Power usporava vaš iPhone ako je omogućen. Evo kako uključiti obavijest da Adaptive Power usporava vaš iPhone.

Kako isključiti efekt zamućenja zaključanog zaslona na iPhoneu

Kako isključiti efekt zamućenja zaključanog zaslona na iPhoneu

Od iOS-a 26 nadalje, Apple je dodao novu postavku funkciji Always On Display koja vam omogućuje zamućenje pozadinske slike. Ako ne želite ovaj efekt zamućenja i želite jasno vidjeti pozadinu, isključite ga prema uputama u nastavku.

Upute za isključivanje pozadine poruka na iPhoneu

Upute za isključivanje pozadine poruka na iPhoneu

Mnogi ljudi ne vole koristiti pozadinu s porukama na iPhoneu jer je prilično zbunjujuća. U nastavku su upute za isključivanje pozadine s porukama na iPhoneu.

Kako promijeniti izgled aplikacije Datoteke

Kako promijeniti izgled aplikacije Datoteke

Ugrađena aplikacija Datoteke omogućuje vam pristup datotekama pohranjenim na vašem iPhoneu, kao i kompatibilnim uslugama pohrane u oblaku poput iCloud Drivea.

Kako stvoriti mapu s popisom za reprodukciju na Apple Musicu

Kako stvoriti mapu s popisom za reprodukciju na Apple Musicu

Mapa popisa pjesama na Apple Musicu prikazuje konsolidirani prikaz svih vaših pjesama, što vam omogućuje da ih reproducirate redom ili nasumično.

Kako podijeliti postavke pristupačnosti iPhonea s drugim uređajem

Kako podijeliti postavke pristupačnosti iPhonea s drugim uređajem

iOS 26 donosi novu značajku koja vam omogućuje dijeljenje osobnih postavki pristupačnosti s jednog iPhonea ili iPada na drugi.

6 Offline karata za iPhone

6 Offline karata za iPhone

Ako ste ikada pokušali pronaći put bez signala, znate koliko brzo aplikacija za mapiranje dostupna samo putem interneta postaje beskorisna.

Kako promijeniti lokaciju preuzimanja na Safariju na iPhoneu

Kako promijeniti lokaciju preuzimanja na Safariju na iPhoneu

Ako želite promijeniti lokaciju preuzimanja na Safariju, to je također vrlo jednostavno, pogodno za upravljanje datotekama preuzimanja svake osobe. U nastavku su upute za promjenu lokacije preuzimanja na Safari iPhoneu.

Kako stvoriti i upravljati iMessage grupama za chat na iPhoneu

Kako stvoriti i upravljati iMessage grupama za chat na iPhoneu

Funkcija grupnog chata na iPhoneu iMessage pomaže nam da lakše šaljemo poruke i razgovaramo s više ljudi, umjesto slanja pojedinačnih poruka.

8 najboljih programa za čitanje knjiga na iPhoneu

8 najboljih programa za čitanje knjiga na iPhoneu

Za ljubitelje e-knjiga, imati biblioteku knjiga na dohvat ruke je sjajna stvar. A ako pohranite svoje e-knjige na telefon, možete uživati ​​u njima bilo kada i bilo gdje. Pogledajte najbolje aplikacije za čitanje e-knjiga za iPhone u nastavku.