iPhone: Sådan bruges iOS-tekstgenkendelsesfunktioner

Vision i iOS 11 har alt, hvad du behøver for at oprette en app, der kan genkende teksttegn med implementering, der sker samtidigt. Du behøver ikke en teknisk kodningsviden – det er ret simpelt at navigere i funktionen. Desuden er implementeringen problemfri.

Visionsramme

Visionsrammen gør dig i stand til nemt at implementere enhver opgave, der involverer computerdetaljer. Strukturen udfører registrering af ansigter og ansigter, stregkodegenkendelse, billedregistrering, generel funktionssporing og tekstgenkendelse. Vision giver dig også mulighed for at bruge tilpassede Core ML-modeller til opgaver som klassificering eller objektdetektering.

VN DetectTextRectanglesRequest

Den  VN DetectTextRectanglesRequest  er en billedanalyse anmodning, der finder regioner af synlige tekst i et billede; funktionen returnerer teksttegn som en rektangulær afgrænsningsramme med oprindelse og størrelse.

Hvis du er vant til at bruge swift og har programmeret i et stykke tid, så spekulerer du sikkert på, hvad brugen af ​​Vision er, når der er andre funktioner som image og AVFoundation. Nå, Vision er mere præcis og mere ligetil. Funktionen er også tilgængelig på en række forskellige platforme. Brug af Vision kan dog kræve mere processorkraft og behandlingstid.

For at bruge Vision til tekstgenkendelse skal du bruge Xcode 9 og en enhed, der kører iOS 11.

Oprettelse af et kamera med Avcapture

Først skal du oprette et kamera med  AVCapture ; dette er ved at initialisere et objekt AVcapturesession til at udføre real-time eller offline capture. Foretag derefter sessionen til enhedsforbindelsen.

For at spare dig tid fra at bygge en brugergrænseflade af din app, overvej at have et startprojekt, til at begynde med vil dette give dig tid til at fokusere på at lære Vision-rammen.

Åbn dit startprojekt. Visningerne i storyboardet burde være klar og sat op til dig.

På  ViewController.swift skal du se efter kodeafsnittet  med funktioner og udtag.

Under stikkontakten - ImageView, angiv en session for  AVcapturesession  - dette bruges, når du vil have handlinger udført baseret på en livestream.

Indstil  AVcapturesession  og  AVmediatype  til video, da du vil udføre kameraoptagelsen for at få den til at køre kontinuerligt

Definer output- og inputenheden

Inputtet er, hvad kameraet vil se, og output er videoen i et bestemt type format af KCVPixelFormatType_32GRA.

Tilføj endelig et  underlag,  der indeholder videoer, til  imageView  og start sessionen. Funktionen er kendt som  inViewdidload.  Du skal også indstille lagets ramme.

Kald funktionen i  viewWillAppear-  metoden.

Da grænserne endnu ikke er afsluttet, skal du tilsidesætte  metoden viewDidLayoutSubviews ( ) for  at opdatere de bundne lag.

Efter udgivelsen af ​​iOS 10 er der behov for en ekstra post i Info.plist, dette giver en grund til at bruge kameraet. Du bør også indstille Privacy-Camera Usage Description.

Tekstgenkendelse; Hvordan Vision Framework fungerer

Der er tre trin til implementering af Vision på appen.

Handlere –  det er når du vil have rammerne til at gøre noget, efter at anmodningen er kaldt.

Observationer -  det er det, du vil gøre med de data, du har leveret, begyndende med én anmodning

Forespørgsler –  det er, når du beder om Detect framework

Ideelt set opretter du én tekstanmodning som  VNdetecttextrectanglesrequest . Dette er en slags  VNrequest,  der grænser op til teksten. Når rammen har fuldført applikationen, fortsætter du med at kalde  Dettexthandler-  funktionen. Du vil også gerne vide den nøjagtige ramme, der blev genkendt, indstil den til  Reportcharacterboxes =True.

Derefter skal du definere de observationer, der indeholder alle resultaterne af  VNdetecttextrectanglesrequest , husk at tilføje Vision til outputkameraet. Da Vision afslører API'er på højt niveau, er det sikkert at arbejde med det.

Funktionen kontrollerer, om  Cmsamplebufferen  findes og PutOut  Avcaptureoutput . Du skal derefter fortsætte med at oprette en variabel  Requestoptions  som 1  ordbogstype VNimageoption . Indstillingen  VNmage  er en type struktur, der indeholder egenskaber og data fra kameraet. Du skal derefter oprette  VNimagerequesthandler og udføre tekstanmodningen  .

Tegning af grænser omkring den registrerede tekst

Du kan starte med at have rammen til at tegne to felter, en for hvert bogstav, det registrerer, og den anden for hvert ord. Tabeller er kombinationen af ​​alle de tegnbokse, som din anmodning finder.

  • Definer punkterne på din visning for at hjælpe dig med at placere kasserne.
  • Derefter skal du oprette en  CALaye r; brug  VNrectangleobservation  til at definere dine begrænsninger, hvilket gør processen med at skitsere boksen nemmere.

Du har nu alle dine funktioner lagt ud.

For at forbinde dine prikker skal du begynde med at lade din kode køre asynkront. Du bør derefter kontrollere, om der findes en region i dine resultater fra din  VNTextObservation .

Du kan nu kalde din funktion ind, som vil tegne en boks indenfor området. Tjek, om der er tegnfelter i regionen, og ring derefter til tjenesten, der bringer en boks ind omkring hvert bogstav.

Derefter skal du oprette en variabel  RequestOptions. Du kan nu oprette et  VNImageRequestHandler- objekt og udføre den tekstanmodning,  du oprettede.

Til sidst er det sidste trin at køre din vision-kode med livestreamen. Du skal tage videooutputtet og konvertere det til  Cmsamplebuffer.

Yderligere tips

Prøv altid at beskære billedet og bearbejd kun det afsnit, du har brug for. Dette vil reducere behandlingstiden og hukommelsesfodaftrykket

Slå sprogkorrektion til, når du håndterer ikke-numeriske tegn, og deaktiver den, når du håndterer et numerisk tegn

Inkluder validering for genkendte talstrenge for at bekræfte nøjagtigheden og eliminere visning af falsk værdi til brugeren.

Dokumentkamera-controlleren er den bedste ledsager til tekstgenkendelse, da billedkvalitet spiller en væsentlig rolle i tekstgenkendelse.

Overvej at indstille en minimumsteksthøjde for at øge ydeevnen.

Med Vision har du alt, hvad du behøver til tekstgenkendelse. Da Vision er nem at bruge og tager kort tid at implementere, svarer det næsten til leg med lego at bruge det. Prøv at teste din app på forskellige objekter, skrifttyper, belysning og størrelser. Du kan også imponere dig selv ved at kombinere Vision med Core ML.


Leave a Comment

IPhone: Ingen ringetone ved indgående opkald

IPhone: Ingen ringetone ved indgående opkald

Har du problemer med, at iPhone ikke ringer på din Apple-telefon? Prøv disse fejlfindingstrin først, før du sender telefonen til reparation.

IPhone kortnavigation fungerer ikke (hænger)

IPhone kortnavigation fungerer ikke (hænger)

I dette indlæg gennemgår vi, hvordan man løser et problem, hvor kortnavigation og GPS-funktioner ikke fungerer korrekt på Apple iPhone.

Sådan Nulstiller du iPhone & iPad Indstillinger: 7 Bedste Metoder

Sådan Nulstiller du iPhone & iPad Indstillinger: 7 Bedste Metoder

Hvis du elsker at ændre iOS-indstillinger eller vil fejlsøge det, hjælper det, hvis du lærer at nulstille iPhone & iPad indstillinger. Læs nu!

Fix iPhone eller iPad Frosne eller Låste Skærme

Fix iPhone eller iPad Frosne eller Låste Skærme

Vil du fixe frosne eller låste skærmproblemer på iPhone eller iPad? Læs denne artikel for at finde nogle lette metoder, inden du kontakter Apple Support.

iPad: Sådan indsætter eller fjerner du SIM-kort

iPad: Sådan indsætter eller fjerner du SIM-kort

Lær hvordan du får adgang til SIM-kortet på Apple iPad med denne vejledning.

ITunes: Hvordan Download Tidligere Kjøbt Musik, Film og Lydbøger

ITunes: Hvordan Download Tidligere Kjøbt Musik, Film og Lydbøger

Find her hvordan du kan downloade tidligere købte musik, film, apps eller bøger til din Apple iOS-enhed fra iTunes ved hjælp af iTunes købshistorik.

IPhone eller iPad: Skærmen ser for stor eller for zoomet ud

IPhone eller iPad: Skærmen ser for stor eller for zoomet ud

Løs et problem hvor Apple iPhone eller iPad-skærmen virker zoomet ind og er for stor til at bruge på grund af iPhone, der er stuck på zoom.

Hvornår udgiver Apple IOS 17.4?

Hvornår udgiver Apple IOS 17.4?

Den stabile iOS 17.4-opdatering er lige om hjørnet og byder på flere væsentlige ændringer. Apple har betatestet operativsystemet i et par uger med udgivelsen

Microsoft ruller endelig Cortana ud til IOS og Android i Storbritannien

Microsoft ruller endelig Cortana ud til IOS og Android i Storbritannien

Microsoft bringer endelig sin digitale assistent Cortana til Android og iOS i Storbritannien. Udgivelsen, der kommer omkring et år efter en lignende udrulning

Ret skærmoptagelsen kunne ikke gemmes på grund af 5823

Ret skærmoptagelsen kunne ikke gemmes på grund af 5823

Fejlkode 5823 er specifik for iPhone- og iPad-enheder. Det opstår, når brugere forsøger at gemme deres skærmoptagelse.