Гуджарати OCR программного обеспечения

Как можно было бы создать программное обеспечение ocr для индийских языков?

Как можно проанализировать характер? Как манипулировать ими в данных шрифта?

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

2 ответа

OCR (оптическое распознавание символов) - это не обычная задача программирования. На самом деле, речь идет не только о ваших навыках программирования и требует хорошего понимания множества научных вопросов.
Здесь я нарисую общую картину шагов, необходимых для выполнения такой задачи, и упомяну необходимые навыки, чтобы вы могли следовать им, если еще настаивали;

  1. Предварительная обработка. Программа OCR почти всегда выполняет предварительную обработку изображения, чтобы улучшить его качество в качестве входных данных для своей части распознавания. (Навык: обработка изображений)
  2. Распознавание символов: после применения требуемых изменений к входному изображению (например, удаление некоторых частей, масштабирование, применение некоторых фильтров,...) программа должна распознавать символ, используя инструмент из огромного числа существующих инструментов (таких как нейронные сети, SVM, KNN ...).(Навык: машинное обучение - по крайней мере достаточно знаний об одном из упомянутых инструментов)
  3. Постобработка. Точность вывода, полученного на предыдущем шаге, может в большинстве случаев улучшаться, особенно если вы вводите в предмет знания предметной области, например, вынуждаете вывод к существующему словарю. (навык: снова ML - KNN, CBR, ...)

Я надеюсь, что это общее объяснение поможет вам хорошо. И поверьте, я старался сделать это как можно проще.

Скрипт гуджарати может быть сложным для многих существующих библиотек OCR. Несколько вопросов:

  • Вы хотите прочитать машинный текст или почерк? Это две отдельные проблемные области.
  • Намереваетесь ли вы разработать / применить алгоритм OCR для определенного набора изображений / текстов? Если да, не могли бы вы опубликовать несколько образцов изображений?
  • Какова ваша конечная цель? Вы хотите сканировать рукописные тексты для машинной обработки, или читать текст для промышленных применений, или сканировать формы?
  • Какая скорость чтения (точность) будет приемлемой?

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

Чтение в мозгу Станислава Дехаина

Системы распознавания персонажей Cheriet et al.

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

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

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

Посмотрите, можете ли вы найти набор образцов изображений для гуджарати. Для ряда языков существуют стандартные наборы изображений или, по крайней мере, общие наборы изображений, используемые для проверки точности алгоритмов распознавания. Если возможно, получите исходные, необработанные, цветные или 8-битные изображения в градациях серого, а не изображения, которые уже были преобразованы в черно-белые изображения (0 и 1).


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

Тессеракт упоминается часто. Бесплатно - хорошая цена, так что вы можете попробовать. https://code.google.com/p/tesseract-ocr/

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

  • FineReader от ABBYY.
  • OmniPage от Nuance.

Компании в области промышленной обработки изображений (также называемые "машинное зрение") предлагают пакеты программного обеспечения, которые реализуют различные алгоритмы оптического распознавания текста. Хотя эти пакеты программного обеспечения обычно предназначены для считывания нескольких строк текста на кремниевых пластинах, упаковке продукта и т. П., Они могут быть вам полезны, поскольку (а) простые пользовательские интерфейсы могут помочь вам быстро проверить идеи, (б) пакеты включают в себя множество дополнительных инструментов для обработки изображений, (c) есть несколько ограничений на символы, символы или функции изображения, которые вы можете обучать, и (d) вы можете загружать пробные версии, которые имеют полнофункциональные инструменты OCR.

  • Cognex
  • Microscan
  • MvTec (продукт: HALCON)
  • National Instruments LabVIEW

Для машинного печатного текста также важен захват изображения. Хорошая оптическая система может помочь улучшить точность считывания: это может означать выбор хорошей камеры + объектив + свет или, возможно, выбор высококачественного планшетного сканера.

Другие вопросы по тегам