9

Я успешно интегрировал tesseract в свое приложение для Android и читал все, что я захватил, но с очень меньшей точностью. Но большую часть времени я не получаю правильный текст после захвата, потому что некоторый текст вокруг интересующей области также захватывается.Обнаружение объекта для Android с tesseract или OpenCV

Все, что я хочу прочитать, это текст из прямоугольной области, точно, без захвата краев прямоугольника. Я провел некоторое исследование и разместил в stackoverflow примерно два раза, но до сих пор не получил счастливого результата!

Ниже приведены 2 должности, которые я сделал:

https://stackoverflow.com/questions/16663504/extract-text-from-a-captured-image?noredirect=1#comment23973954_16663504

Extracting information from captured image in android

Я не уверен в том, чтобы идти вперед с тессеракта или использовать OpenCV

+0

Если ответы были неудовлетворительными, попробуйте поднять щедрость. Если вы идете по маршруту openCV, убедитесь, что вы настроили его для камеры, которую вы будете использовать. – Shark

+0

С tesseract у меня есть своего рода прямоугольная область, поэтому пользователь поместит область, которая будет захвачена внутри этого прямоугольника. Но при захвате изображения, если вы немного двигаетесь, результат, который вы получаете, полностью зависит от мусора. Я думаю, что tesseract не помогает мне. Не могли бы вы предоставить мне пример кода? – TharakaNirmana

+0

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

ответ

11

В том числе много ссылок и ответы от других, я думаю, что это хорошо, чтобы сделать шаг назад и обратите внимание, что есть на самом деле два основных шага для оптического распознавания символов (OCR):

  • Обнаружение текста. Это название и фокус вашего вопроса, и он связан с локализацией регионов в изображении, содержащем текст.
  • Распознавание текста: здесь происходит фактическое распознавание, где локализованные области изображения от обнаружения сегментируются по-характеру и классифицируются. Это также означает, что инструменты, подобные Tesseract, вступают в игру.

Теперь, есть также два общих настроек, в которых применяется OCR:

  • Controlled: Это изображения, полученные со сканера или аналогичный по-природе, где целью является документ, и вещи, как перспективы , масштаб, шрифт, ориентация, согласованность фона и т. д. довольно послушны.
  • Неконтролируемый/Сцена: это более естественные и в-дикие фотографии, например. те, которые взяты с камеры, где вы пытаетесь распознать уличный знак, название магазина и т. д.

Tesseract as-is наиболее применим к «контролируемой» настройке. И вообще, но для сцены OCR особенно «повторная тренировка» Tesseract будет не непосредственно улучшить обнаружение, но может улучшить распознавание.

Если вы хотите улучшить обнаружение текста сцены, см. Это work; и если вы смотрите на улучшение распознавания текста сцены, см. это work. Поскольку вы спрашивали об обнаружении, ссылка на обнаружение использует максимально стабильные экстремальные области (MSER), которые имеют множество ресурсов реализации, например. см. here.

Там также проект обнаружения текста здесь специально для Android тоже:
https://github.com/dreamdragon/text-detection

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

+0

Большое спасибо за то, что вы потратили на ответ на этот вопрос. Вы предоставили столько важной информации. Я думаю, что смогу найти способ. Еще раз спасибо! – TharakaNirmana

5

Решение улучшения распознавания текста выход составляет

  • использовать либо больше данных обучения, чтобы обучить его лучше

  • фильтр это вход, используя некоторый линейный фильтр (grayscaling, высокой контрастной, размытость)

В чате мы разместили несколько ссылок, описывающих методы фильтрации используется в OCRing, но пример кода не был отправлен.

Некоторые ссылки размещены были

Improving input for OCR

How to train Tesseract

< Text enhancement using asymmetric filters - это бумага легко найти на Google, и должны быть полностью прочитать, как это совершенно ясно показывает и демонстрирует необходимые шаги перед OCR-обработкой изображения.

OCR Classification

+0

следующие ссылки, размещенные Shark: http://manuscripttranscription.blogspot.com/2013/02/improving-ocr-inputs-from-ocr- outputs.html http://www.cedricve.me/2013/04/12/how-to-train-tesseract/ http://scholr.ly/paper/1046523/text-enhancement-with-asymmetric -filter-for-video-ocr – TharakaNirmana

+0

Классификация линейного классификатора/OCR. Это то, что я пытался запомнить. – Shark

+0

эй, большое спасибо !!! – TharakaNirmana