Text Fairy: копируем текст с изображения на Android

Как конвертировать фотографию в текст на Android

Технология оптического распознавания символов (Optical Character Recognition) значительно улучшилась за последние годы. Более того, теперь вам не нужно загружать фотографии на компьютера, после чего конвертировать их в текст. В этом статье мы покажем, как конвертировать фотографию в текст прямо на Android смартфоне.

Конвертировать фотографию в текст на Android

В магазине приложений Google Play Store есть много приложений, которые работают на основе технологии оптического распознавания символов (ОРС). Тем не менее, не все приложения работают так, как нам хотелось бы. После небольшого тестирования мы выбрали действительно рабочее приложение от компании Microsoft под названием Office Lens.

1. Загрузите приложение Office Lens из Play Store и установите его. Для работы приложения вам потребуется подключение к Интернету. Если ваше Android устройство работает под управлением Android 6.0 и выше, вы должны будете предоставить разрешение на доступ к камере.

2. Дальше вам следует сфотографировать документ, которые необходимо преобразовать в текст на смартфоне. Приложение имеет свой собственный интерфейс камеры для съемки фотографий. Он предлагает несколько опций, которые расположены сверху экрана. Также вы можете импортировать ранее сделанные фотографии, чтобы конвертировать их в текст.

Чтобы приложение более точно преобразовало фотографию в текст, вы можете сообщить какого рода текст вы фотографировали, например, документ, простая фотография или визитная карточка.

Как показано на скриншоте выше, мы выбрали параметр «Документ», после чего вокруг текстовой области появилась белая рамка.

Дальше вам предложат редактировать фотографию и обрезать область, которая должна быть отсканирована и конвертирована в текст.

3. Нажмите на кнопку галочки внизу экран. На следующем экране доступны варианты сохранения и название документ. Приложение попросит вас войти в учетную запись Microsoft. Это необходимо сделать, чтобы файл сохранился в учетной записи OneDrive.

4. Выберите приложение, которое вы хотите использовать для дальнейшего редактирования текстового документа. Нажмите галочку в правом верхнем углу, чтобы начать обработку и конвертировать фотографию в текст. Убедитесь, что Android устройство подключено к Интернету.

5. Приложение преобразует фотографию в текст, и готовый файл будет сохранен в формате doc в вашей учетной записи OneDrive. Дальше вы можете редактировать файл на устройстве с помощью Microsoft Word. Кроме того, доступна возможность конвертировать его в PDF.

Другие приложения

Не все пользователи имеют аккаунт Microsoft, а также желание создавать его. В таком случае, вы можете использовать Text Fairy. Это еще одно хорошее приложение на основе технологии ОРС, которое предлагает множество функций для конвертирования фотографий в текст.

В отличие от Office Lens, приложение Text Fairy не имеет встроенного интерфейса камеры, но оно поставляется со встроенным редактором. Текст можно редактировать прямо в приложении, а затем сохранить в любом формате. Приложение распознает текст на более чем пятидесяти языках. Кроме того, переводчик Google Translate интегрирован в Text Fairy. Мы считаем, что это лучшее альтернативное приложение, которое вы можете использовать для конвертирования фотографий в текст на Android.

Вывод

Мы очень рады, что технология оптического распознавания символов стала доступна на мобильных устройствах. Это действительно очень удобно. Однако, вам стоит помнить, что конвертирование фотографий в текст на Android не является 100% точным. Качество и освещение фотографии может кардинально повлиять на точность распознавания текста на фотографиях.

Text Fairy: копируем текст с изображения на Android

Скопировать текст и вставить его в сообщение – что может быть проще? Каждый обладатель смартфона знает, как выполнять эту простую операцию в браузере или документе. Давайте усложним задачу. Допустим, вам нужно переслать другому пользователю отрывок текста из бумажного носителя, например, учебника, путеводителя или журнала. Условия таковы: не печатать текст вручную и не делать кучу скриншотов. Справитесь? Если сомневаетесь в своих силах, то читайте дальше.Переслать текстовую информацию со смартфона на смартфон можно несколькими способами. Например, можно отскриншотить или сфотографировать страницы книги и отправить собеседнику. Но вдруг у него слабое интернет-соединение или закончилась память, и он не сможет оперативно загрузить снимки? Тогда лучше набрать вручную. Но это тоже затея сомнительная: сложно, да и времени много уйдет. В общем, нужно как-то вырвать из картинки текст и отправить только его. Но как это сделать? В Play Store есть специальные приложения, которые могут извлекать текст из печатных носителей. Извлеченным контентом можно легко поделиться в мессенджерах, отправить по почте или конвертировать в PDF.

Эти приложения называются текстовые или оптические сканеры. Они работают за счет метода оптического распознавания символов.Оптическое распознавание символов (OCR) – это электронное или механическое преобразование изображений печатного, рукописного или машинописного текста в текстовые данные, пригодные для обработки на компьютере. Метод подходит для преобразования отсканированных документов, фотоснимков надписей, вывесок, субтитров и пр. Часто OCR применяют при создании электронных книг и методичек, когда имеется бумажный оригинал. Подобных приложений для Android много. Среди них Text Scanner, Google Keep, Office Lens, TurboScan, Docufy Scanner и пр. В нашей инструкции мы будем использовать Text Fairy. Оно не очень много весит, работает офлайн и не содержит рекламы. Подробная инструкция по работе с программой1. Установите Text Fairy из Play Store.2. Дайте требуемые разрешения. Без доступа к мультимедиа приложение не сможет получить снимки для обработки. На следующем экране Text Fairy расскажет вам о своих умениях.

Скопировать текст и вставить его в сообщение – что может быть проще? Каждый обладатель смартфона знает, как выполнять эту простую операцию в браузере или документе.

Давайте усложним задачу. Допустим, вам нужно переслать другому пользователю отрывок текста из бумажного носителя, например, учебника, путеводителя или журнала. Условия таковы: не печатать текст вручную и не делать кучу скриншотов.

Справитесь? Если сомневаетесь в своих силах, то читайте дальше.

Переслать текстовую информацию со смартфона на смартфон можно несколькими способами. Например, можно отскриншотить или сфотографировать страницы книги и отправить собеседнику. Но вдруг у него слабое интернет-соединение или закончилась память, и он не сможет оперативно загрузить снимки?

Тогда лучше набрать вручную. Но это тоже затея сомнительная: сложно, да и времени много уйдет.

В общем, нужно как-то вырвать из картинки текст и отправить только его. Но как это сделать? В Play Store есть специальные приложения, которые могут извлекать текст из печатных носителей. Извлеченным контентом можно легко поделиться в мессенджерах, отправить по почте или конвертировать в PDF.

Эти приложения называются текстовые или оптические сканеры. Они работают за счет метода оптического распознавания символов.

Оптическое распознавание символов (OCR) – это электронное или механическое преобразование изображений печатного, рукописного или машинописного текста в текстовые данные, пригодные для обработки на компьютере. Метод подходит для преобразования отсканированных документов, фотоснимков надписей, вывесок, субтитров и пр. Часто OCR применяют при создании электронных книг и методичек, когда имеется бумажный оригинал.

Подобных приложений для Android много. Среди них Text Scanner, Google Keep, Office Lens, TurboScan, Docufy Scanner и пр. В нашей инструкции мы будем использовать Text Fairy. Оно не очень много весит, работает офлайн и не содержит рекламы.

Подробная инструкция по работе с программой

1. Установите Text Fairy из Play Store. 2.

Дайте требуемые разрешения. Без доступа к мультимедиа приложение не сможет получить снимки для обработки.

На следующем экране Text Fairy расскажет вам о своих умениях. Приложение может:

  • извлекать текст из снимков;
  • безошибочно распознавать текст на отчетливых изображениях.
  • работать с рукописным текстом;
  • моментально переводить извлеченный текст на другой язык.

Сразу после установки доступна работа с английским, немецким и русским. Прочие языки загружаются отдельно через кнопку Download your language. Выбор огромен.

3. Кликните на значок камеры в правом верхнем углу, чтобы создать новый снимок для обработки (либо на значок галереи, чтобы выбрать отснятое ранее). 4. Сделайте фотографию. Держите камеру ровно. Чем четче получится снимок, тем точнее будет распознавание текста.

Читайте также:  Простая подсветка монитора своими руками

5. Растяните рамку, чтобы выделить нужный отрывок. 6. Нажмите стрелку внизу справа.

7. Приложение сделает обрезку и спросит, сколько колонок текста представлено на снимке и на каком языке. Укажите параметры и нажмите Start.

Начнется распознавание. Готовый текст можно быстро отправить в другое приложение, скопировать или конвертировать в PDF.

Все, основная работа сделана. Если вы не спешите, нажмите ОК и вернитесь на предыдущий экран. Там вы сможете оценить качество текста. Возможно, ему потребуются правки.

Внизу есть пять кнопок: выбрать новое изображение, поделиться, скопировать текст, перевести и преобразовать в PDF.

Text Fairy может ошибаться при определении регистра, делать ненужные переносы, ставить лишние знаки препинания и путать некоторые буквы. Многое зависит от шрифта (уникальные дизайнерские распознаются хуже стандартных), освещения и качества съемки. Несмотря на это, Text Fairy имеет важные преимущества перед другими оптическими сканерами: программа бесплатная, не требует регистрации, не содержит рекламы и распознает печатный текст на 50 языках. Это один из самых простых и полезных инструментов для вашего Android.

Download Text Fairy (OCR Text Scanner) for PC/Laptop/Windows 7,8,10

Our site helps you to install any apps/games available on Google Play Store. You can download apps/games to desktop of your PC with Windows 7,8,10 OS, Mac OS, Chrome OS or even Ubuntu OS. If you want to download apk files for your phones and tablets (Samsung, Sony, HTC, LG, Blackberry, Nokia, Windows Phone and other brands such as Oppo, Xiaomi, HKphone, Skye, Huawei…). All you have to do is accessing Our site, typing name of desired app (or URL of that app on Google Play Store) in search box and following instruction steps to download apk files.

Steps to download Android apps/games for phone

To download and install applications or games from our website to your smartphone, please follow these steps: 1. Accept softwares installed from external sources (Settings -> Apps -> Unknown sources selected area) 2. Download the application you need (for example: Text Fairy (OCR Text Scanner)) and save to your phone 3. Open the downloaded apk file and install1.Download and Install XePlayer Android Emulator.Click “Download XePlayer” to download.

2.Run XePlayer Android Emulator and login Google Play Store. 3.Open Google Play Store and search Text Fairy (OCR Text Scanner) and download,or import the apk file from your PC Into XePlayer to install it.

4.Install Text Fairy (OCR Text Scanner) for PC.Now you can play Text Fairy (OCR Text Scanner) on PC.Have fun!

Copy Paste Any Text Instantly. Это не редактор, это простое приложение для распознавания текста с фото и последующего редактирования в специальном текстовом редакторе. Распознавание текста весьма трудоемкий процесс с точки зрения программных решений, но для пользователя все это не к чему, ведь ему главное, чтобы был понятный интерфейс и хорошее распознавание текста. Приложение Copy Paste Any Text Instantly может предложить и первое, и второе, и при этом не только на английском, но и на многих других языках, включая русский и украинский.

При первом запуске приложения вам нужно выбрать и дополнительно загрузить словари для приложения, хотя по умолчанию уже загружены русский и английский. После этого вернутся на главный экран, где выбрать язык распознавания. К сожалению, сделать более удобного процесса выбора перевода разработчики почему-то не удосужились, поэтому, каждый раз придется запускать приложение и менять его вручную.

А как же распознавать текст? Все очень просто! Вы сделали фотографию или скриншот с текстом, затем открываете его в галерее и нажимаете на кнопку “Поделиться”.

После этого выбираете в списке название приложение, выделяете при помощи рамки область с текстом и ожидаете, пока приложение завершит свою работу. Со своей работой приложение справляется на отлично, распознается как русский, так и английский текст, ошибок минимум, хотя это в большинстве случаев будет зависеть от качество картинки, шрифта текста и некоторых других параметров. После распознавания вы на время увидите текст, а затем он исчезнет.

Но переживать не стоит, поскольку, весь текст автоматически скопировался в буфер обмена. Теперь вам нужно запустить любой текстовый редактор и вставить текст. После этого его можно редактировать сколько угодно.

Настройки приложения находятся на главном экране приложения и в них вы можете изменить только язык распознавания и загрузить дополнительные словари. Copy Paste Any Text Instantly – это прекрасное приложение для распознавания текста, которое занимает очень мало места и предлагает хорошо работающий функционал.

Скачать приложение Copy Paste Any Text Instantly на Андроид вы можете по ссылке ниже.

Программы распознавания и перевода текста для Andro > Александр Шихов , 29.04.2019

Как быстро внести в телефон новый контакт с бумажной визитной карточки или реквизиты платежа с квитанции без QR-кода? Поможет приложение распознавания текста с камеры, которое можно запустить на любом телефоне под управлением Android.

Что может программа для распознавания текста

  • Распознать текст объявления, чтобы вытащить из него номер телефона.
  • Быстро перевести объявление на иностранном языке или переслать его в виде текста другому человеку.
  • Заплатить по реквизитам, не вбивая БИК и других кодов с квитанции.
  • Сделать из страницы учебника шпаргалку.

TextGrabber от Abbyy

Компания ABBYY известна своим программным обеспечением для распознавания и перевода текстов с листа. Скачать приложение для мобильно телефона можно по ссылке из официального магазина Google.

При старте отображается окно для сканирования с камеры.

Чтобы усложнить задачу приложению, мы предложили ему распознать текст с экрана компьютера. На следующем этапе предлагается выделить фрагмент. Это позволит убрать картинки и поднять тем самым качество распознавания.

Вот полученный фрагмент на русском языке (оригинальный). Желтым шрифтом — слова, распознанные неуверенно. При сканировании с бумаги качество будет лучше.

После нажатия кнопки Перевести получаем английский вариант.

Для профессионального перевода программа TextGrabber вряд ли подойдет, но с меню в европейском ресторане справится. Бесплатная версия поддерживает до трех языков. Платная может переводить оффлайн с 10 языков. Онлайн можно использовать более 100!

Text Fairy

Приложение Text Fairy можно установить из официального магазина Google Play по этой ссылке. Распознаются фотографии текста. Выделяем фрагмент.

Помогаем программе определиться, сколько в тексте колонок, и указываем язык, чтобы улучшить распознавание.

Как видим по качеству распознавания, с русским языком у Text Fairy дела обстоят хуже, чем у TextGrabber. Процесс перевода картинки в буквы занял раз в 10 дольше.

Точно распознался только заголовок. Его мы и попробовали перевести.

Здесь использован переводчик от Google, своего не предусмотрено. Это натолкнуло нас на идею сравнить результат с тем, что позволяют получить мобильные переводчики. Без долгого процесса распознавания вот такую картинку показал Google Translate.

Вот так перевел текст Яндекс.

Перевод текст грабберам лучше не доверять, а воспользоваться для этого специальными приложениями-переводчиками.

Компьютерная программа Text fairy (OSC text scanner) – отзыв

Перевести фото в текстовый документ ЛЕГКО! Если вы заядлый АЙРЕКОММЕНДЕЦ, для вас это приложение станет палочкой-выручалочкой!

Доброго времени всем!

Думала я думала, да так и не выдумала, для чего/кого пригодной станет приложение Text Fairy, как не для пользователей Irecommend в первую очередь . Ведь именно МЫ чаще всех жонглируем своими телефонами и фотоаппаратами вокруг баночек, чтобы преподнести испытуемый продукт во всей красе и предоставить все возможные его характеристики в понятном читателю виде!

Совершенно ясно, что программы, распознающие сканированный текст в компьютере – более удобные и чаще используемые. Хотя, многие серьезной работой могут заниматься не выходя из планшета или на ходу с этим гаджетом.

Читайте также:  Сделай сам помпу для СВО

Но это точно не я! Редко могу решиться на написание отзыва прямо со смартфона или планшета – долго, неудобно, напряжно.

Распознавание текста со сканера (фото) часто используют люди, занимающиеся текстовой редакцией, также очень удобно старые книги переводить в электронные версии. Безумец тот, кто переписывал “Войну и мир” на Коммодоре.

В тысячу раз быстрее это можно сделать как через сканер, так и планшетом/смартфоном, если нет сканера. Последним даже быстрее. Экономия времени на сканировании.

Приложение, о котором пойдет речь разработано для смартфонов.

Лично для меня необходимость скачать приложение Text Fairy, наступила с постоянным попаданием на составы косметических средств, которых не удостоились написать в интернете. А переписывать эти веселые слова вручную ☞☛☞☟, согласитесь, не иначе как садомазохизмом заниматься. ͡๏̯͡๏

Text Fairy упростило задачу. Теперь злосчастные бутылко-тексты проходят у меня через скан-контроль, чтобы в последствии придавать моим отзывам удобоваримый вид или быть проанализированными экоголиком.

Приложение Text Fairy – примитивно простое, без излишеств, без картинок и заставок, и самое главное БЕЗ РЕКЛАМЫ!

Открывая заглавную вкладку, попадаем сразу на архив уже проработанных текстов. Конечно, если вы только загрузите приложение, то страница эта будет пуста, если мне не изменяет память.

КАК ЭТО РАБОТАЕТ.

В правом верхнем углу, как видно – две главные кнопки ⇨ КАМЕРА и ФОТОАЛЬБОМ.

Единственное, что нужно сделать – это сфотографировать пугающий вас текст.

В загруженном фото программа предлагает выделить тот участок, текст которого нужно распознать. Выделение предусмотрено гибкое на случай, если фото будет перекособочено, например, как у меня:

Далее, нажимается синяя стрелочка в нижнем правом углу и приложение делает свою главную задачу – анализ и перевод фото в текстовый документ:

Распознанный текст подается следующим образом:

Красным цветом выделены слова, суть которых программа не поняла. Как видно, в слове “Metylparaben” приложению показалось, что есть апостроф. Это излишки производства, которые нужно будет подправлять вручную.

После, текст можно спокойно копировать, редактировать, анализировать, в общем делать с ним любые махинации в любом текстовом редакторе.

ЧЕМ БОЛЕЕ ЧЕТКИМ БУДЕТ ФОТО, ТЕМ ЛУЧШЕ ПРОЙДЕТ РАСПОЗНАВАНИЕ.

Если фотография вышла расплывчатой, то Text fairy будет очень сложно понять символы, о чем он сразу предупредит.

Но, если вы настаиваете, то и над таким текстом приложение поработает, вот только чуда ждать не стоит, выдаст оно бог весть что, чего и сам не понял.

Если вы любитель разбора составов, то нужно учитывать и то, что после распознавания текста, его лучше проверить, особенно точки и запятые, которые приложение иногда путает в слишком мелком шрифте. Но тем не менее, исправить эти нюансы куда быстрее, чем переписывать весь текст, используя собственные пальцы

Text Fairy находится в свободном доступе в Play Market.

Его положительные стороны:

➳ занимает мало места в телефоне,

➳ не перегружен графикой,

➳ простой в использовании,

➳ сохраняет все проработанные документы,

➳ работает очень быстро,

➳ при четком фото распознает 100% текста,

Его отрицательные стороны:

➳ иногда путает точки и запятые или не видит их,

➳ может перепутать буквы в нечётком тексте.

Я рекомендую это приложение всем пользователям айрека, которые часто сталкиваются с проблемой отсутствия описания продуктов в интернете. С помощью Text Fairy можно сэкономить время в оформлении отзывов!

Text Fairy: копируем текст с изображения на Android

Скопировать текст и вставить его в сообщение – что может быть проще? Каждый обладатель смартфона знает, как выполнять эту простую операцию в браузере или документе.

Давайте усложним задачу. Допустим, вам нужно переслать другому пользователю отрывок текста из бумажного носителя, например, учебника, путеводителя или журнала. Условия таковы: не печатать текст вручную и не делать кучу скриншотов. Справитесь? Если сомневаетесь в своих силах, то читайте дальше.

Переслать текстовую информацию со смартфона на смартфон можно несколькими способами. Например, можно отскриншотить или сфотографировать страницы книги и отправить собеседнику. Но вдруг у него слабое интернет-соединение или закончилась память, и он не сможет оперативно загрузить снимки? Тогда лучше набрать вручную. Но это тоже затея сомнительная: сложно, да и времени много уйдет.

В общем, нужно как-то вырвать из картинки текст и отправить только его. Но как это сделать? В Play Store есть специальные приложения, которые могут извлекать текст из печатных носителей. Извлеченным контентом можно легко поделиться в мессенджерах, отправить по почте или конвертировать в PDF.

Эти приложения называются текстовые или оптические сканеры. Они работают за счет метода оптического распознавания символов.

Оптическое распознавание символов (OCR) – это электронное или механическое преобразование изображений печатного, рукописного или машинописного текста в текстовые данные, пригодные для обработки на компьютере. Метод подходит для преобразования отсканированных документов, фотоснимков надписей, вывесок, субтитров и пр. Часто OCR применяют при создании электронных книг и методичек, когда имеется бумажный оригинал.

Подобных приложений для Android много. Среди них Text Scanner, Google Keep, Office Lens, TurboScan, Docufy Scanner и пр. В нашей инструкции мы будем использовать Text Fairy. Оно не очень много весит, работает офлайн и не содержит рекламы.

Подробная инструкция по работе с программой

1. Установите Text Fairy из Play Store.

2. Дайте требуемые разрешения. Без доступа к мультимедиа приложение не сможет получить снимки для обработки.

На следующем экране Text Fairy расскажет вам о своих умениях.

  • извлекать текст из снимков;
  • безошибочно распознавать текст на отчетливых изображениях.
  • работать с рукописным текстом;
  • моментально переводить извлеченный текст на другой язык.

Сразу после установки доступна работа с английским, немецким и русским. Прочие языки загружаются отдельно через кнопку Download your language. Выбор огромен.

3. Кликните на значок камеры в правом верхнем углу, чтобы создать новый снимок для обработки (либо на значок галереи, чтобы выбрать отснятое ранее).

4. Сделайте фотографию. Держите камеру ровно. Чем четче получится снимок, тем точнее будет распознавание текста.

5. Растяните рамку, чтобы выделить нужный отрывок.

6. Нажмите стрелку внизу справа.

7. Приложение сделает обрезку и спросит, сколько колонок текста представлено на снимке и на каком языке.

Укажите параметры и нажмите Start. Начнется распознавание. Готовый текст можно быстро отправить в другое приложение, скопировать или конвертировать в PDF.

Все, основная работа сделана.

Если вы не спешите, нажмите ОК и вернитесь на предыдущий экран. Там вы сможете оценить качество текста. Возможно, ему потребуются правки.

Внизу есть пять кнопок: выбрать новое изображение, поделиться, скопировать текст, перевести и преобразовать в PDF.

Text Fairy может ошибаться при определении регистра, делать ненужные переносы, ставить лишние знаки препинания и путать некоторые буквы. Многое зависит от шрифта (уникальные дизайнерские распознаются хуже стандартных), освещения и качества съемки. Несмотря на это, Text Fairy имеет важные преимущества перед другими оптическими сканерами: программа бесплатная, не требует регистрации, не содержит рекламы и распознает печатный текст на 50 языках. Это один из самых простых и полезных инструментов для вашего Android.

Создание Android приложения для распознавания текста за 10 Минут. Mobile Vision CodeLab

Видео версия туториала

Оптическое распознавание символов (англ. Optical Character Recognition, сокр. OCR) дает компьютеру возможность читать текст на изображении, позволяя приложениям понимать знаки, статьи, листовки, страницы текста, меню или что угодно в виде текста. Mobile Vision Text API предоставляет разработчикам Android мощную и надежную возможность OCR , которая поддерживает большинство устройств Android и не увеличивает размер вашего приложения.

В этом туториале вы создадите приложение, в котором в процессе видеосъёмки будет распознаваться и воспроизводиться весь текст, попадающий в кадр.

Также мы публиковали статьи о других функциях Mobile Vision:

Исходный код можно скачать тут.

Или склонировать репозиторий GitHub из командной строки:

Читайте также:  Делаем микроскоп из веб-камеры

Репозиторий visionSamples содержит много примеров проектов, связанных с Mobile Vision . В этом уроке используется только два:

  • ocr-codelab/ocr-reader-start — начальный код, который вы будете использовать в этом уроке.
  • ocr-codelab/ocr-reader-complete — полный код готового приложения. Вы можете использовать его для устранения неполадок или перейти сразу к рабочему приложению.

Обновление сервисов Google Play

Возможно, вам потребуется обновить установленную версию Google Repository , чтобы использовать Mobile Vision Text API .

Откройте Android Studio и откройте SDK Manager :

Убедитесь, что Google Repository обновлен. Он должен быть не менее 26 версии.

Добавление зависимости Google Play Services и создание приложения для запуска

Теперь можно открывать стартовый проект:

Выберите каталог запуска ocr-reader из загруженного кода (File > Open > ocr-codelab/ocr-reader-start ).

Добавьте зависимость Google Play Services к приложению. Без этой зависимости Text API не будет доступен.

Проект может указать на отсутствие файла integer/google_play_services_version и выдать ошибку. Это нормально, мы исправим это на следующем шаге.

Откройте файл build.gradle в app модуле и измените блок зависимостей, включив туда зависимость play-services-vision . Когда все будет готово, файл должен выглядеть так:

Нажмите кнопку синхронизации Gradle .

Нажмите кнопку запуска.

Через несколько секунд вы увидите экран «Read Text», но это всего лишь черный экран.

Сейчас ничего не происходит, потому что CameraSource не настроен. Давайте сделаем это.

Если у вас что-то не получается, вы можете открыть проект ocr-reader-complete и убедиться, что он работает правильно. Этот проект является готовой версией урока, и если эта версия не работает, вы должны проверить, что всё в порядке с вашим устройством и настройками Android Studio .

Настройте TextRecognizer и CameraSource

Чтобы начать работу, мы создадим наш TextRecognizer . Этот объект-детектор обрабатывает изображения и определяет, какой текст появляется внутри них. После инициализации TextRecognizer может использоваться для обнаружения текста во всех типах изображений. Найдите метод createCameraSource и создайте TextRecognizer :

Теперь TextRecognizer готов к работе. Однако, возможно, он еще не работает. Если на устройстве недостаточно памяти или Google Play Services не может загрузить зависимости OCR , объект TextRecognizer работать не будет. Прежде чем мы начнем использовать его для распознавания текста, мы должны проверить, что он готов. Мы добавим эту проверку в createCameraSource после инициализации TextRecognizer :

Теперь, когда мы проверили, что TextRecognizer готов к работе, мы можем использовать его для распознавания отдельных кадров. Но мы хотим сделать что-то более интересное: читать текст в режиме видеосъёмки. Для этого мы создадим CameraSource , который предварительно настроен для управления камерой. Нам необходимо установить высокое разрешение съёмки и включить автофокусировку, чтобы справиться с задачей распознавания небольшого текста. Если вы уверены, что ваши пользователи будут смотреть на большие блоки текста, например вывески, вы можете использовать более низкое разрешение, и тогда обработка кадров будет происходить быстрее:

Вот как должен выглядеть метод createCameraSource , когда вы закончите:

Если вы запустите приложение, то увидите, что началась видеосъёмка! Но для обработки изображений с камеры нам нужно дописать этот последний TODO в createCameraSource : создать Processor для обработки текста по мере его поступления.

Создание OcrDetectorProcessor

Сейчас ваше приложение может обнаруживать текст на отдельных кадрах, используя метод обнаружения в TextRecognizer . Так можно найти текст, например, на фотографии. Но для того, чтобы читать текст прямо во время видеосъёмки, нужно реализовать Processor , который будет обрабатывать текст, как только он появится на экране.

Перейдите в класс OcrDetectorProcessor реализуйте интерфейс Detector.Processor :

Для реализации этого интерфейса требуется переопределить два метода. Первый, receiveDetections , получает на вход TextBlocks из TextRecognizer по мере их обнаружения. Второй, release , используется для освобождения от ресурсов при уничтожении TextRecognizer . В этом случае нам нужно просто очистить графическое полотно, что приведёт к удалению всех объектов OcrGraphic .

Мы получим TextBlocks и создадим объекты OcrGraphic для каждого текстового блока, обнаруженного процессором. Логику их рисования мы реализуем на следующем шаге.

Теперь, когда процессор готов, мы должны настроить textRecognizer для его использования. Вернитесь к последнему оставшемуся TODO в методе createCameraSource в OcrCaptureActivity :

Теперь запустите приложение. На этом этапе при наведении камеры на текст вы увидите отладочные сообщения «Text detected!» в Android Monitor Logcat ! Но это не очень наглядный способ визуализации того, что видит TextRecognizer , правда?

На следующем шаге мы отрисуем этот текст на экране.

Рисование текста на экране

Давайте реализуем метод draw в OcrGraphic . Нам нужно понять, есть ли на изображении текст, преобразовать координаты его границ в рамки канваса, а затем нарисовать и границы, и текст.

Запустите приложение и протестируйте его на этом образце текста:

Вы должны увидеть, что на экране появляется рамка с текстом в ней! Вы можете поиграть с цветом текста, используя TEXT_COLOR .

Как насчет этого?

Рамка вокруг текста выглядит правильно, но текст находится в нижней её части.

Это связано с тем, что движок передает весь текст, который он распознает в TextBlock в виде одного предложения, даже если он видит предложение, разбитое на несколько строк. Если вам нужно получить целое предложение, то это очень удобно. Но что, если вы хотите знать, где расположена каждая отдельная строка текста?

Вы можете получить Lines из TextBlock , вызвав getComponents , а затем, перебирая каждую строку, запросто получить её местоположение и текст внутри неё. Это позволяет рисовать текст в том месте, где он действительно появляется.

Попробуйте снова этот текст:

Отлично! Вы даже можете разбивать найденный текст на ещё более мелкие составляющие, исходя из ваших потребностей. Можно вызвать getComponents на каждой строке и получить Elements (слова на латинице). Есть возможность настройки textSize , чтобы текст занимал столько места, сколько занимает реальный текст на экране.

Воспроизведение текста при нажатии на нём

Теперь текст с камеры преобразуется в структурированные строки, и эти строки отображаются на экране. Давайте сделаем с ними что-нибудь еще.

Используя TextToSpeech API , встроенный в Android , и метод contains в OcrGraphic , мы можем научить приложение говорить вслух, при нажатии на текст.

Сначала давайте реализуем метод contains в OcrGraphic . Нам просто нужно проверить, находятся ли координаты x и y в пределах рамки отображаемого текста.
OcrGraphic.java

Вы можете заметить, что здесь много общего с методом Draw ! В настоящем проекте вам следовало бы добиться переиспользования кода, но здесь мы оставим всё как есть просто ради примера.

Теперь перейдем к методу onTap в OcrCaptureActivity и обработаем нажатие по тексту, если он есть в этом месте.

Вы можете запустить приложение и через Android Monitor Logcat убедиться, что нажатие на текст действительно обрабатывается.

Давайте же заставим наше приложение говорить! Перейдите в начало Activity и найдите метод onCreate . При запуске приложения мы должны инициализировать движок TextToSpeech для дальнейшего использования.

Несмотря на то, что мы корректно инициализировали TextToSpeech , как правило, всё равно нужно обрабатывать общие ошибки, например, когда движок всё ещё не готов при вашем первом нажатии на текст.

TextToSpeech также зависим от языка распознавания. Вы можете изменить язык на основе языка распознанного текста. Распознавание языка не встроено в Mobile Vision Text API , но оно доступно через Google Translate API . В качестве языка для распознавания текста можно использовать язык устройства пользователя.

Отлично, осталось только добавить код воспроизведения текста в методе onTap .

Теперь, когда вы запустите приложение и нажмёте на обнаруженный текст, ваше устройство воспроизведёт его. Попробуйте!

Завершение

Теперь у вас есть приложение, которое может распознавать текст с камеры и проговаривать его вслух!

Полученные знания по распознаванию текста вы можете применить и в других ваших приложениях. Например, читать адреса и номера телефонов с визитных карточек, производить поиск по тексту с фотографий различных документов. Одним словом, применяйте OCR везде, где вам может потребоваться распознать текст на изображении.

Ссылка на основную публикацию