2011-12-28 3 views
2

Я работаю над проектом OCR. Моя первая задача - взять изображение с камеры iPhone, а затем найти конкретное слово на изображении.Как я могу выделить фрагмент текста на изображении, снятом камерой?

Ниже приведен образец изображения, сделанного моим устройством. Теперь я хочу найти положение слова «КАНЦЕЛЯР» и выделить его желтым прямоугольником на изображении.

Как я могу это сделать? Нужно ли сначала использовать OCR SDK для этого (например, ABBYY), или я могу сделать это в противном случае?

screenshot of image taken by camera

ответ

3

Если вам нужно получить координаты конкретного слова, конечно, нужно выполнить OCR первым. Имейте в виду, что вы, вероятно, столкнетесь с некоторыми трудностями с этим патикулярным изображением, которое вы приложили из-за его нижней части. OCR хорошо справится с простым аналогичным фоном.

Что касается OCR SDK - попробуйте ABBYY Cloud OCR SDK, это облачный OCR SDK, недавно запущенный ABBYY. Он находится в бета-версии, поэтому на данный момент он полностью свободен в использовании и имеет готовый к использованию iOS code samples.

Он имеет встроенный в координатах функции извлечения в формате XML, я обрезанный нижнюю часть изображений для фона, чтобы быть простыми и послал его в SDK, вот ответ я получил:

<charParams l="35" t="39" r="73" b="83" charConfidence="100">S</charParams> 
<charParams l="77" t="39" r="117" b="83" charConfidence="100">T</charParams> 
<charParams l="120" t="40" r="164" b="83" charConfidence="100">A</charParams> 
<charParams l="165" t="40" r="204" b="83" charConfidence="100">T</charParams> 
<charParams l="211" t="40" r="225" b="83" charConfidence="100">I</charParams> 
<charParams l="231" t="40" r="276" b="84" charConfidence="100">O</charParams> 
<charParams l="285" t="41" r="325" b="84" charConfidence="100">N</charParams> 
<charParams l="334" t="42" r="370" b="84" charConfidence="100">E</charParams> 
<charParams l="377" t="42" r="419" b="85" charConfidence="100">R</charParams> 
<charParams l="428" t="42" r="469" b="84" charConfidence="100">Y</charParams> 

Эти параметры «l», «t», «r», «b» обозначают левый, верхний, правый и нижний, они описывают прямоугольник каждого символа с верхним левым и нижним правом углом. Я верю, что это то, что вы ищете.

+0

Большое спасибо за ваш ответ, который мне определенно помог. Но у меня есть некоторые проблемы, как, например, abbyy также предоставляет статический sdk (а не облачный, чтобы я мог распознавать слова в реальном времени, как вы можете видеть в приложении word lense: http://itunes.apple.com/us/app/word -lens/id383463868? mt = 8)? И могу ли я получить вереницу полного слова? Или Что, если мне нужно выделить все слова, которые сразу распознаются ocrsdk, как показано в «приложении для объектива»? – Rakesh

+0

Николай, я также загрузил пример кода abbyy ocr sdk. но он всегда показывает мне ошибку «Операция не может быть выполнена. NSURLErrorDomain error-1012» – Rakesh

+0

Статический SDK для мобильных платформ можно запросить здесь: http://www.abbyy.com/mobileocr/ Я постараюсь узнайте о своей ошибке, теперь вам нужно убедиться, что вы зарегистрировались на сайте http://www.ocrsdk.com/ и получили свои учетные данные для входа и пароля, которые вам нужно ввести в примерный код. – Nikolay

Смежные вопросы