iPhone: Как да използвате функциите за откриване на текст на iOS

Vision в iOS 11 има всичко необходимо, за да създадете приложение, което може да разпознава текстови знаци, като имплементацията се извършва едновременно. Не се нуждаете от технически познания за кодиране – навигацията в функцията е доста проста. Нещо повече, изпълнението е безпроблемно.

Vision Framework

Визията ви позволява лесно да изпълнявате всяка задача, която включва компютърни детайли. Структурата извършва разпознаване на лице и ориентир, разпознаване на баркод, регистрация на изображения, проследяване на общи характеристики и откриване на текст. Vision също така ви позволява да използвате персонализирани модели на Core ML за задачи като класификация или откриване на обекти.

VN DetectTextRectanglesRequest

В  VN DetectTextRectanglesRequest  е заявка за анализ на изображения, която намира региони видим текст в изображение; функцията връща текстови знаци като правоъгълна ограничаваща кутия с произход и размер.

Ако сте свикнали да използвате swift и сте програмирали от известно време, тогава вероятно се чудите каква е ползата от Vision, когато има други функции като изображение и AVFoundation. Е, Vision е по-точен и по-прост. Функцията е достъпна и на различни платформи. Въпреки това, използването на Vision може да изисква повече процесорна мощност и време за обработка.

За да използвате Vision за откриване на текст, ще ви е необходим Xcode 9 и устройство, което работи с iOS 11.

Създаване на камера с Avcapture

Първо, трябва да създадете камера с  AVCapture ; това е чрез инициализиране на един обект AVcapturesession за извършване на заснемане в реално време или офлайн. След това направете сесията към връзката на устройството.

За да ви спести време от изграждането на потребителски интерфейс на вашето приложение, помислете за стартов проект, като за начало това ще ви даде време да се съсредоточите върху изучаването на рамката Vision.

Отворете своя стартов проект. Изгледите в сценария трябва да са готови и настроени за вас.

В  ViewController.swift  потърсете кодовата секция с функции и изходи.

Под outlet- ImageView декларирайте сесия за  AVcapturesession  – това се използва винаги, когато искате да се извършват действия въз основа на поток на живо.

Задайте  AVcapturesession  и  AVmediatype  на видео, тъй като ще извършите заснемането с камера, за да го активирате да работи непрекъснато

Определете изходното и входното устройство

Входът е това, което камерата ще види, а изходът е видеото в зададен тип формат KCVPixelFormatType_32GRA.

Накрая добавете  подслой,  който съдържа видеоклипове към  imageView  и започнете сесията. Функцията е известна като  inViewdidload.  Също така трябва да зададете рамката на слоя.

Извикайте функцията в метода  viewWillAppear  .

Тъй като границите все още не са финализирани,  заменете метода viewDidLayoutSubviews ( )  , за да актуализирате обвързаните слоеве.

След пускането на iOS 10 е необходим допълнителен запис в Info.plist, това дава причина за използване на камерата. Трябва също да зададете описание на използването на камерата за поверителност.

Разпознаване на текст; Как работи Vision Framework

Има три стъпки за внедряване на Vision в приложението.

Манипулатори –  това е, когато искате рамката да направи нещо, след като заявката бъде извикана.

Наблюдения –  това е, което искате да направите с предоставените от вас данни, започвайки с една заявка

Заявки –  това е, когато поискате фреймворк Detect

В идеалния случай създавате една текстова заявка като  VNdetecttextrectanglesrequest . Това е вид  VNrequest,  който граничи около текста. След като рамката завърши приложението, продължавате да извиквате функцията  Dettexthandler  . Вие също ще искате да знаете точния кадър, който е бил разпознат, задайте го на  Reportcharacterboxes =True.

След това дефинирайте наблюденията, които съдържат всички резултати от  VNdetecttextrectanglesrequest , не забравяйте да добавите Vision към изходната камера. Тъй като Vision разкрива API на високо ниво, работата с него е сигурна.

Функцията проверява дали  Cmsamplebuffer  съществува и PutOut  Avcaptureoutput . След това трябва да продължите да създавате една променлива  Requeststoptions  като 1 речник тип  VNimageoption . Опцията  VNmage  е тип структура, която съдържа свойства и данни от камерата. След това трябва да създадете  VNimagerequesthandler  и да изпълните текстовата заявка.

Начертаване на граници около открития текст

Можете да започнете, като имате рамката, за да нарисувате две кутии, една за всяка буква, която открива, а другата за всяка дума. Таблиците са комбинацията от всички полета за знаци, които вашата заявка ще намери.

  • Определете точките във вашия изглед, за да ви помогне да позиционирате кутиите.
  • След това създайте  CALaye r; използвайте  VNrectangleobservation, за  да дефинирате вашите ограничения, което улеснява процеса на очертаване на полето.

Вече разполагате с всичките си функции.

За да свържете точките си, започнете с асинхронно изпълнение на кода. След това трябва да проверите дали съществува регион във вашите резултати от вашия  VNTextObservation .

Вече можете да извикате вашата функция, която ще начертае кутия в областта. Проверете дали има полета за знаци в региона, след което се обадете на услугата, която въвежда поле около всяка буква.

След това създайте променлива  RequestOptions. Вече можете да създадете  обект VNImageRequestHandler  и да изпълните текстовата заявка, която сте създали.

И накрая, последната стъпка е да стартирате кода на вашата визия с потока на живо. Ще трябва да вземете видео изхода и да го конвертирате в  Cmsamplebuffer.

Допълнителни съвети

Винаги се опитвайте да изрежете изображението и да обработвате само секцията, от която се нуждаете. Това ще намали времето за обработка и отпечатъка на паметта

Включете корекцията на езика, когато работите с нецифрови знаци, след това я изключете, когато работите с цифров знак

Включете валидиране за разпознати числови низове, за да потвърдите точността и да премахнете показването на фалшива стойност на потребителя.

Контролерът на документ камерата е най-добрият спътник за разпознаване на текст, тъй като качеството на изображението играе важна роля при разпознаването на текст.

Помислете за задаване на минимална височина на текста, за да увеличите производителността.

С Vision имате всичко необходимо за разпознаване на текст. Тъй като Vision е лесен за използване и отнема кратко време за изпълнение, използването му е почти еквивалентно на игра с Legos. Опитайте да тествате приложението си върху различни обекти, шрифтове, осветление и размери. Можете също да се впечатлите, като комбинирате Vision с Core ML.


Leave a Comment

Как да възстановите настройките на iPhone и iPad: 7 най-добри метода

Как да възстановите настройките на iPhone и iPad: 7 най-добри метода

Ако обичате да модифицирате настройките на iOS или искате да отстраните проблеми, е полезно да научите как да възстановите настройките на iPhone и iPad. Прочетете сега!

Навигацията на iPhone Maps не работи (забива)

Навигацията на iPhone Maps не работи (забива)

В тази публикация разглеждаме как да решим проблема, при който навигацията на картите и GPS функциите не работят правилно на Apple iPhone.

iPhone или iPad: Екранът изглежда твърде голям или е прекалено увеличен

iPhone или iPad: Екранът изглежда твърде голям или е прекалено увеличен

Решете проблема, при който екранът на Apple iPhone или iPad изглежда увеличен и е твърде голям за използване поради проблема с застоялото увеличение на iPhone.

iPhone: Няма звън на входящите обаждания

iPhone: Няма звън на входящите обаждания

Столкновявате ли се с проблема, при който iPhone не звъни на вашия Apple телефон? Опитайте тези стъпки за отстраняване на проблеми, преди да изпратите телефона за ремонт.

iPad: Как да вмъкнете или извадите SIM карта

iPad: Как да вмъкнете или извадите SIM карта

Научете как да получите достъп до SIM картата на Apple iPad с този урок.

Как да изтриете приложения от iCloud: 4 най-добри метода

Как да изтриете приложения от iCloud: 4 най-добри метода

Изчерпва ли ви мястото в iCloud? Прочетете тази статия, за да научите как да изтривате приложения от iCloud на iPad, iPhone, Mac и Windows PC.

Поправете замразения или заключен екран на iPhone или iPad

Поправете замразения или заключен екран на iPhone или iPad

Искате да поправите проблеми с замразен или заключен екран на iPhone или iPad? Прочетете тази статия, за да откриете лесни методи преди да се обърнете към Поддръжката на Apple.

Какво е файлово разширение AAE и как да го отворите

Какво е файлово разширение AAE и как да го отворите

Научете какви са файловете с разширение AAE и какво можете да правите с тях с този урок.

Кога Apple ще пусне IOS 17.4?

Кога Apple ще пусне IOS 17.4?

Стабилната актуализация на iOS 17.4 е зад ъгъла, включваща няколко значителни промени. Apple тества бета версията на операционната система от няколко седмици с изданието

Microsoft най-накрая пуска Cortana за IOS и Android в Обединеното кралство

Microsoft най-накрая пуска Cortana за IOS и Android в Обединеното кралство

Microsoft най-накрая въвежда своя цифров асистент Cortana за Android и iOS в Обединеното кралство. Изданието, което идва около година след подобно пускане