iPhone: Az iOS szövegészlelési funkcióinak használata

iPhone: Az iOS szövegészlelési funkcióinak használata

A Vision az iOS 11 rendszerben mindent tartalmaz, ami egy olyan alkalmazás létrehozásához szükséges, amely képes felismerni a szöveges karaktereket, miközben a megvalósítás egyidejűleg történik. Nincs szükség technikai kódolási ismeretekre – a funkcióban való navigálás meglehetősen egyszerű. Ráadásul a megvalósítás zökkenőmentes.

Vision Framework

A vision keretrendszer lehetővé teszi bármilyen számítógépes részleteket igénylő feladat egyszerű végrehajtását. A szerkezet arc- és tereptárgy-felismerést, vonalkód-felismerést, képregisztrációt, általános jellemzőkövetést és szövegészlelést végez. A Vision lehetővé teszi egyéni Core ML modellek használatát olyan feladatokhoz, mint az osztályozás vagy az objektumészlelés.

VN DetectTextRectanglesRequest

VN DetectTextRectanglesRequest  egy képelemzési kérés, amely megkeresi a képen látható szöveg régióit; a szolgáltatás a szöveges karaktereket téglalap alakú határolókeretként adja vissza eredetével és méretével.

Ha már hozzászokott a swift használatához, és már egy ideje programoz, akkor valószínűleg azon töpreng, mi a haszna a Visionnak, amikor más funkciók is vannak, mint például a kép és az AVFoundation. Nos, a Vision pontosabb és egyértelműbb. A funkció számos platformon is elérhető. A Vision használata azonban több feldolgozási teljesítményt és feldolgozási időt igényelhet.

A Vision szövegészleléshez való használatához Xcode 9-re és egy iOS 11-et futtató eszközre lesz szüksége.

Kamera létrehozása Avcapture segítségével

Először is létre kell hoznia egy kamerát az  AVCapture segítségével ; ez egy objektum AVcapturesession inicializálásával valós idejű vagy offline rögzítést hajt végre. Ezt követően hozza létre a munkamenetet az eszközkapcsolattal.

Annak érdekében, hogy időt takarítson meg az alkalmazás felhasználói felületének elkészítésével kapcsolatban, fontolja meg egy kezdő projekt létrehozását, amely lehetővé teszi, hogy a Vision keretrendszer megtanulására összpontosítson.

Nyissa meg a kezdő projektet. A storyboard nézeteinek készen kell állniuk és be kell állítaniuk az Ön számára.

ViewController.swift oldalon keresse meg a funkciókat és kimeneteket tartalmazó kódrészt  .

Az ImageView aljzatban jelöljön ki egy munkamenetet az  AVcapturesession számára  – ez akkor használatos, amikor élő közvetítés alapján szeretne műveleteket végrehajtani.

Állítsa az  AVcapturesession-t  és az  AVmediatype-  t videóra, mivel a kamera felvételét úgy fogja végrehajtani, hogy az folyamatosan működjön.

Határozza meg a kimeneti és bemeneti eszközt

A bemenetet a kamera fogja látni, a kimenet pedig a videó a KCVPixelFormatType_32GRA beállított típusú formátumban.

Végül adjon hozzá egy   videókat tartalmazó alréteget az  imageView-hoz,  és indítsa el a munkamenetet. A függvény inViewdidload néven ismert  .  A réteg keretét is be kell állítani.

Hívja meg a függvényt a  viewWillAppear  metódusban.

Mivel a határok még nincsenek véglegesítve, felülírja a  viewDidLayoutSubviews ( )  metódust a fóliák kötöttségének frissítéséhez.

Az iOS 10 megjelenése után egy további bejegyzés szükséges az Info.plist-ben, ez indokolja a kamera használatát. Ezenkívül be kell állítania az Adatvédelem-Kamera használati leírását.

Szövegészlelés; Hogyan működik a Vision Framework

Három lépésből áll a Vision megvalósítása az alkalmazásban.

Kezelők –  ez az, amikor azt szeretné, hogy a keretrendszer tegyen valamit a kérés meghívása után.

Észrevételek –  ezt kívánja tenni az Ön által megadott adatokkal, egy kéréssel kezdve

Kérések –  ekkor kéri a Detect keretrendszert

Ideális esetben egyetlen szöveges kérést hoz létre  VNdetecttextrectanglesrequest néven . Ez egyfajta  VNrequest,  amely a szöveg körül határol . Miután a keretrendszer befejezte az alkalmazást, folytathatja a  Dettexthandler  függvény meghívását . Érdemes tudnia a felismert képkockát is, és állítsa be  Reportcharacterboxes =True értékre .

Ezután határozza meg azokat a megfigyeléseket, amelyek a VNdetecttextrectanglesrequest összes eredményét tartalmazzák , és ne felejtse el hozzáadni a  Visiont a kimeneti kamerához. Mivel a Vision magas szintű API-kat tesz elérhetővé, a vele való munkavégzés biztonságos.

A függvény ellenőrzi, hogy  létezik- e a  Cmsamplebuffer és a PutOut  Avcaptureoutput . Meg kell majd eljárni, hogy hozzon létre egy változót  Requestoptions  mint 1 szótár Type  VNimageoption . A  VNmage  egy olyan típusú struktúra, amely a fényképezőgép tulajdonságait és adatait tartalmazza. Ezután létre kell hoznia a VNimagerequesthandlert,  és végre kell  hajtania a szöveges kérést.

Szegélyek húzása az észlelt szöveg köré

Kezdheti azzal, hogy a keretrendszer két dobozt rajzol, egyet minden észlelt betűhöz, a másikat pedig minden szóhoz. A táblázatok az összes karakterdoboz kombinációi, amelyeket a kérés megtalál.

  • Határozza meg a pontokat a nézetén, hogy segítsen elhelyezni a dobozokat.
  • Ezután hozzon létre egy  CALaye r-t; a  VNrectangleobservation  segítségével határozza meg a kényszereket, megkönnyítve ezzel a doboz körvonalazásának folyamatát.

Mostantól minden funkciója meg van határozva.

A pontok összekapcsolásához először futtassa a kódot aszinkron módon. Ezután ellenőrizze, hogy létezik-e régió a VNTextObservation eredményei között  .

Most behívhatja a funkcióját, amely egy dobozt rajzol a területen. Ellenőrizze, hogy vannak-e karakterdobozok a régióban, majd hívja a szolgáltatást, amely minden betű körül egy dobozt hoz.

Ezután hozzon létre egy RequestOptions változót  Most létrehozhat egy  VNImageRequestHandler  objektumot, és végrehajthatja a létrehozott szöveges kérést.

Végül az utolsó lépés a látáskód futtatása az élő közvetítéssel. Ki kell venni a videokimenetet, és át kell konvertálnia  Cmsamplebufferbe.

További tippek

Mindig próbálja kivágni a képet, és csak azt a részt dolgozza fel, amelyre szüksége van. Ez csökkenti a feldolgozási időt és a memória helyigényét

Kapcsolja be a nyelvi korrekciót, ha nem numerikus karakterekkel dolgozik, majd kapcsolja ki, ha numerikus karakterekkel dolgozik

Tartalmazza a felismert számsorok érvényesítését a pontosság megerősítése és a hamis értékek felhasználó számára történő megjelenítésének elkerülése érdekében.

A dokumentumkamera vezérlő a legjobb társ a szövegfelismeréshez, mivel a képminőség jelentős szerepet játszik a szövegfelismerésben.

A teljesítmény növelése érdekében fontolja meg egy minimális szövegmagasság beállítását.

A Vision segítségével mindent megtalál, ami a szövegfelismeréshez szükséges. Mivel a Vision használata egyszerű, és a megvalósítás rövid időt vesz igénybe, a használata szinte egyenértékű a Legóval való játékkal. Próbálja meg tesztelni az alkalmazást különböző objektumokon, betűtípusokon, világításon és méreteken. A Vision és a Core ML kombinálásával is lenyűgözheti magát.


Mikor adja ki az Apple az IOS 17.4-et?

Mikor adja ki az Apple az IOS 17.4-et?

A stabil iOS 17.4-es frissítés a sarkon van, és számos jelentős változást tartalmaz. Az Apple néhány hete béta teszteli az operációs rendszert, a kiadással

A Microsoft végre bemutatja a Cortanát IOS-re és Androidra az Egyesült Királyságban

A Microsoft végre bemutatja a Cortanát IOS-re és Androidra az Egyesült Királyságban

A Microsoft végre elhozza digitális asszisztensét, a Cortanát Androidra és iOS-re az Egyesült Királyságban. A kiadás, amely körülbelül egy évvel hasonló megjelenés után jelenik meg

A képernyőfelvételt nem sikerült elmenteni az 5823 miatt

A képernyőfelvételt nem sikerült elmenteni az 5823 miatt

Az 5823-as hibakód iPhone és iPad eszközökre vonatkozik. Ez akkor fordul elő, amikor a felhasználók megpróbálják menteni a képernyőfelvételüket.

Google Térkép: Hogyan húzz le egy helymeghatározó pint a térképen

Google Térkép: Hogyan húzz le egy helymeghatározó pint a térképen

Gyorsan dobjon egy gombostűt a Google Térképbe, hogy pontos helyet kapjon, amelyet megoszthat barátaival. Tekintse meg, hogyan dobhat fel egy Google Térkép gombostűt iPadOS 14, Android és Desktop rendszeren.

Javítsa ki, hogy a Signal App nem működik iPhone-on

Javítsa ki, hogy a Signal App nem működik iPhone-on

Ha nem tudja használni a Signalt iOS rendszeren, ellenőrizze az alkalmazás- és iOS-frissítéseket. Ezután szerkessze az alkalmazás engedélyeit, tiltsa le az alacsony fogyasztású módot, és telepítse újra az alkalmazást.

IPhone: Hogyan adhatunk aláírást szöveges üzenetekhez

IPhone: Hogyan adhatunk aláírást szöveges üzenetekhez

Szép megoldás, ha aláírásokat adhat szöveges üzeneteihez Apple iPhone készülékén.

Javítás: A kéretlen leveleket nem lehet törölni az iPhone készüléken

Javítás: A kéretlen leveleket nem lehet törölni az iPhone készüléken

Ha van iPhone-ja, és problémái vannak a kéretlen levelek törlésével, frissítse eszközét. Ezután törölje a Kuka e-maileket a szerverről.

A 9 legjobb időjárási alkalmazás iPadre 2023-ban

A 9 legjobb időjárási alkalmazás iPadre 2023-ban

Szeretnéd a legfrissebb időjárási híreket mobileszközödön látni? Szerezd meg a legjobb időjárási alkalmazást iPadhez ebből a listából. Manapság az időjárás eléggé megfordult

13 legjobb kódoló alkalmazás az iPad számára funkcionális alkalmazásfejlesztéshez és tanuláshoz

13 legjobb kódoló alkalmazás az iPad számára funkcionális alkalmazásfejlesztéshez és tanuláshoz

Kódolnia kell útközben a munka miatt, vagy szeretné felfrissíteni kódolási készségeit? Megtekintheti ezeket a legjobb kódolási alkalmazásokat az iPad számára.

Javítás: A Dropbox nem talál új fotókat iPhone-on

Javítás: A Dropbox nem talál új fotókat iPhone-on

Ha a Dropbox nem talál és nem tölt fel új fényképeket iPhone-járól, győződjön meg arról, hogy az iOS és a Dropbox alkalmazás legújabb verzióját használja.