Распознавание рукописного текста: cловари и ICR

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

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

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


Например, данное поле, вырезанное из некоторой формы, представляет собой дату рождения ребенка, который не достиг возраста совершеннолетия. В случае если ребенок старше 18 года, поле в форме остается пустым. Исходя из такого контекста, мы можем смело интерпретировать дату на изображении как: “08.02.98”,— хотя цифра 9 больше похожа на цифру 4.

рукописный текст, рукописная дата, распознавание рукописного текста
Нам удалось найти правильный ответ, но давайте посмотрим, каким бы мог быть результат без использования словарей, либо с использованием статических или динамических словарей.
 
Программа распознавания, которая не использует словари, прочитает данное поле как 08.02.48, что явно неверно.
Программа распознавания, которая работает со статическим словарем (списком допустимых дат), тоже частенько может давать неверные ответы. Это происходит потому, что она может предложить только один вариант ответа (а именно, цифру 4) для первой цифры года.
К счастью, использование динамических словарей позволяет распознавателю непосредственно в процессе работы воспользоваться информацией о том, что в данном конкретном случае не подходят никакие другие цифры, кроме 9, 0, или 1. И даже если распознаваемый символ выглядит как цифра 4, вариант ответа 4 будет исключен как неприемлемый. В результате ответом будет цифра 9.


Давайте рассмотрим другой, более сложный пример. На этот раз вместо чисел будут буквы. На изображении не ясно, является ли первый символ буквой «d» или сочетанием букв «c» и «l». Распознавание без словарей не даст нам достоверный результат.
естественный рукописный текст, распознавание рукописного текста
При использовании статического словаря обе гипотезы приходится хранить до конца процесса распознавания, пока произойдет валидация на основе таблицы соответствия. Если слово длиннее, гипотез будет больше. Все гипотезы нужно держать в памяти и анализировать. Поэтому процесс распознавания будет еще медленнее, а вероятность ошибок вырастет.

При использовании динамических словарей нет необходимости анализировать и хранить все возможные гипотезы сегментации. Если динамический словарь не содержит комбинации букв «с» и «l» в начале слова, единственно возможным результатом будет буква «d».

Очень часто плохое качество распознавания рукописного текста напрямую связано с тем, что не использовались динамические словари. Надеемся, что теперь стало более понятно, почему использование динамических словарей существенно улучшает распознавание.
Теги: ICR

автоматизация ввода документов, распознавание документов, распознавание рукописного текста   услуги распознавания и ввода документов, распознавание рукописного текста


Читати інші новини...