Сайт о телевидении

Сайт о телевидении

» » Что такое ocr в сканере. Системы распознавания текста и программы-переводчики. Постобработка результатов распознавания

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

Возможно, для кого-то использование OLAP-технологии (On-line Analytic Processing) при построении отчетности покажется какой-то экзотикой, поэтому применение OLAP-КУБа для них вовсе не является одним из важнейших требований при автоматизации бюджетирования и управленческого учета .

На самом деле очень удобно пользоваться многомерным КУБом при работе с управленческой отчетностью. При разработке форматов бюджетов можно столкнуться с проблемой многовариантности форм (подробнее об этом можно прочитать в Книге 8 "Технология постановки бюджетирования в компании" и в книге "Постановка и автоматизация управленческого учета").

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

Естественно, это приводит к тому, что руководители хотят получать отчетность во всех интересующих их аналитических срезах. А это значит, что отчеты нужно как-то заставить «дышать». Иными словами можно сказать, что в данном случае речь идет о том, что по смыслу один и тот же отчет должен предоставлять информацию в различных аналитических разрезах. Поэтому статичные отчеты уже не устраивают многих современных руководителей. Им нужна динамика, которую может дать многомерный КУБ.

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

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

Для подтверждения актуальности использования КУБа при построении управленческой отчетности можно привести простейший пример с бюджетом продаж. В рассматриваемом примере для компании актуальными являются следующие аналитические срезы: продукты, филиалы и каналы сбыта. Если для компании важны эти три аналитики, то бюджет (или отчет) продаж можно выводить в нескольких вариантах.

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

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

Рис. 1. Пример бюджета продаж, построенного на основе одной аналитики "Продукты" в OLAP-КУБе

Этот же бюджет продаж можно составлять с использованием двух аналитик (справочников). Пример бюджета продаж, построенного на основе двух аналитик "Продукты" и "Филиалы" представлен на рисунке 2 .

Рис. 2. Пример бюджета продаж, построенного на основе двух аналитик "Продукты" и "Филиалы" в OLAP-КУБе программного комплекса "ИНТЕГРАЛ"

.

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

Рис. 3. Пример бюджета продаж, построенного на основе трех аналитик "Продукты", "Филиалы" и "Каналы сбыта" в OLAP-КУБе программного комплекса "ИНТЕГРАЛ"

Нужно напомнить о том, что КУБ, используемый для формирования отчетов, позволяет выводить данные в различной последовательности. На рисунке 3 бюджет продаж сначала "разворачивается" по продуктам, затем по филиалам, а потом по каналам сбыта.

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

Рис. 4. Пример бюджета продаж, построенного на основе трех аналитик "Продукты", "Каналы сбыта" и "Филиалы" в OLAP-КУБе программного комплекса "ИНТЕГРАЛ"

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

Рис. 5. Пример бюджета продаж, построенного на основе трех аналитик "Филиалы", "Продукты" и "Каналы сбыта" в OLAP-КУБепрограммного комплекса "ИНТЕГРАЛ"

На самом деле это не все возможные варианты вывода бюджета продаж.

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

С точки зрения пользователя он в данном примере получает несколько управленческих отчетов (см. Рис. 1-5 ), а с точки зрения настроек в программном продукте – это один отчет. Просто с помощью КУБа его можно просматривать несколькими способами.

Естественно, что на практике возможно очень большое количество вариантов вывода различных управленческих отчетов, если их статьи строятся на одной или нескольких аналитиках. А уж сам набор аналитик зависит от потребности пользователей в детализации. Правда, при этом не следует забывать, что, с одной стороны, чем больше аналитик, тем более детализированные отчеты можно строить. Но, с другой стороны, значит, и финансовая модель бюджетирования будет более сложной. В любом случае при наличии КУБа компания будет иметь возможность просмотра необходимой отчетности в различных вариантах, в соответствии с интересующими аналитическими разрезами.

Необходимо упомянуть еще о нескольких возможностях OLAP-КУБа.

В многомерном иерархическом OLAP-КУБе есть несколько измерений: тип строки, дата, строки, справочник 1, справочник 2 и справочник 3 (см. Рис. 6 ). Естественно, в отчет выводится столько кнопок со справочниками, сколько есть в строке бюджета, содержащей максимальное количество справочников. Если ни в одной строке бюджета нет ни одного справочника, то в отчете не будет ни одной кнопки со справочниками.

Изначально OLAP-КУБ строится по всем измерениям. По умолчанию при первоначальном построении отчета измерения расположены именно в тех областях, как показано на рисунке 6 . То есть такое измерение, как «Дата», располагается в области вертикальных измерений (измерения в области столбцов), измерения «Строки», «Справочник 1», «Справочник 2» и «Справочник 3» – в области горизонтальных измерений (измерения в области строк), а измерение «Тип строки» – в области «нераскрываемых» измерений (измерения в страничной области). Если измерение находится в последней области, то данные в отчете не будут «раскрываться» по этому измерению.

Каждое из этих измерений можно поместить в любую из трех областей. После переноса измерений отчет мгновенно перестраивается в соответствии с новой конфигурацией измерений. Например, можно поменять местами дату и строки со справочниками. Или можно в вертикальную область измерений перенести один из справочников (см. Рис. 7 ). Иными словами, отчет в OLAP-КУБе можно «крутить» и выбирать тот вариант вывода отчета, который является наиболее удобным для пользователя.

Рис. 7. Пример перестройки отчета после изменения конфигурации измерений программного комплекса "ИНТЕГРАЛ"

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

Кроме того, в этой же форме можно настраивать некоторые параметры измерений. По каждому измерению можно настраивать расположение итогов, порядок сортировки элементов и названия элементов (см. Рис. 8 ). Также можно задавать, какое название элементов выводить в отчет: сокращенное (Name) или полное (FullName).

Рис. 8. Редактор карты измерений программного комплекса "ИНТЕГРАЛ"

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

Рис. 9. Пример редактирования справочника 1 Продукты и услуги в

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

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

Рис. 10. Пример вывода в отчете только одной продуктовой группы (папки) в программном комплексе "ИНТЕГРАЛ"

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


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

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

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

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

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

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

Если вам все же необходимо анализировать OLAP-данные после отключения от сети, создайте автономный куб данных. Автономный куб данных - это отдельный файл, который представляет собой кеш сводной таблицы и хранит OLAP-данные, просматриваемые после отключения от локальной сети. OLAP-данные, скопированные в сводную таблицу, можно распечатать, на сайте http://everest.ua подробно об этом рассказано.

Чтобы создать автономный куб данных, сначала создайте сводную таблицу OLAP. Поместите курсор в пределах сводной таблицы и щелкните на кнопке Средства OLAP (OLAP Tools) контекстной вкладки Параметры (Tools), входящей в группу контекстных вкладок Работа со сводными таблицами (PivotTable Tools). Выберите команду Автономный режим OLAP (Offline OLAP) (рис. 9.8).

На экране появится диалоговое окно настроек автономного куба данных OLAP. Щелкните в нем на кнопке Создать автономный файл данных (Create Offline Data File). Вы запустили мастер создания файла куба данных. Щелкните на кнопке Далее (Next), чтобы продолжить процедуру.

Cначала необходимо указать размерности и уровни, которые будут включаться в куб данных. В диалоговом окне необходимо выбрать данные, которые будут импортироваться из базы данных OLAP. Идея состоит в том, чтобы указать только те размерности, которые понадобятся после отключения компьютера от локальной сети. Чем больше размерностей укажете, тем больший размер будет иметь автономный куб данных.

Щелкните на кнопке Далее для перехода к следующему диалоговому окну мастера. В нем вы получаете возможность указать члены или элементы данных, которые не будут включаться в куб. В частности, вам не потребуется мера Internet Sales-Extended Amount, поэтому флажок для нее будет сброшен в списке. Сброшенный флажок указывает на то, что указанный элемент не будет импортироваться и занимать лишнее место на локальном жестком диске.

На последнем этапе укажите расположение и имя куба данных. В нашем случае файл куба будет назван MyOfflineCube.cub и будет располагаться в папке Work.

Файлы кубов данных имеют расширение .cub

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

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

OCR&ICR Technology White Paper

  1. Введение.
    1.1 OCR и ICR -системы. Критерии оценки систем распознавания.

    Современные системы оптического распознавания символов (optical character recognition , OCR) могут быть условно разделены на две категории. Собственно OCR-системы решают ставшую классической задачу распознавания печатных символов, нанесенных на бумагу при помощи принтера, плоттера или пишущей машинки (при этом подразумевается, что любая система распознавания работает с электронным изображением документа, обычно получаемым при помощи сканера). Кроме того, выделяют класс ICR -систем (intelligent character recognition), в задачи которых входит обработка документов, заполненных печатными буквами и цифрами от руки, или, иначе говоря, распознавание рукопечатных символов.

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

    A REC = 100% * N OK / N 0 ; (1.1)

    где N OK и N 0 есть количество верно распознанных символов и общее количество символов документа соответственно. Вполне естественно, что производители OCR\ICR-систем в первую очередь фокусируют внимание на оптимизации используемых алгоритмов с точки зрения точности распознавания.

    1.2 Технологии ABBYY.

    На протяжении последних шести лет на мировом рынке присутствуют OCR\ICR-системы, построенные на базе технологий компании ABBYY. На сегодняшний день они хорошо известны и пользуются стабильным спросом. В частности, программное ядро (engine) OCR -системы ABBYY FineReader лицензировано и успешно эксплуатируется такими известными компаниями, как Cardiff Software, Inc., Cobra Technologies, Kofax Image Products, Kurzweil Educational Systems, Inc., Legato Systems, Inc., Notable Solutions Inc., ReadSoft AB, Saperion AG, SER Systems AG, Siemens Nixdorf, Toshiba Corporations.

    В рамках данного документа будут описаны базовые принципы технологий ABBYY, и, кроме того, будут подробно рассмотрены процедуры распознавания печатных (OCR) и рукопечатных (ICR) символов, реализованные в продуктах ABBYY .

  2. Базовые принципы технологий распознавания текста ABBYY.
    2.1 Принципы IPA.

    Преобразование документа в электронный вид выполняется OCR-системами поэтапно: сканирование и предварительная обработка изображения, анализ структуры документа, распознавание, проверка результатов, затем производится реконструкция (воссоздание исходного вида) документа, и экспорт. Методы, применяемые при распознавании, весьма разнообразны.

    Но, как известно, лучшие в мире системы оптического распознавания конструирует природа. Устройство участков нервной системы, доставляющих и обрабатывающих сигналы органов зрения, настолько сложно, что задача моделирования живых «распознавателей» в общем виде до сих пор не решена наукой. Однако базовые принципы их функционирования изучены хорошо и могут быть использованы на практике. Их насчитывают три:

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

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

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

    Технологии распознавания, разработанные компанией ABBYY, построены именно на этих принципах. Вместо полных названий принципов часто употребляют аббревиатуру IPA , составленную из первых букв соответствующих английских слов. Очевидно, что система распознавания, работающая в соответствии с принципами IPA , будет функционировать максимально гибко и точно, на грани осмысленного действия.

    Компания ABBYY , опираясь на результаты многолетних исследований, реализовала принципы IPA в рамках своих технологий оптического распознавания символов. ABBYY FineReader – единственная в мире OCR -система, которая действует в соответствии с вышеописанными принципами на всех этапах обработки документа.

    В частности, на этапе распознавания фрагмент изображения, согласно принципу целостности , будет интерпретирован как некий объект (символ), только если на нём присутствуют все структурные части этого объекта, и эти части находятся в соответствующих отношениях. Поэтому ABBYY FineReader не пытается принимать решение, перебирая тысячи эталонов в поисках наиболее подходящего. Вместо этого выдвигается ряд гипотез относительно того, на что похоже обнаруженное изображение, затем каждая гипотеза целенаправленно проверяется. Причём проверять, верна ли выдвинутая гипотеза, система будет, используя принцип адаптивности , опираясь на накопленные ранее сведения о возможных начертаниях символа в распознаваемом документе.

    2.2 Многоуровневый анализ документа. MDA.

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

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

    Рис.1. Иерархическая структура документа

    Большинство современных OCR-систем ведёт анализ документа в соответствии с одним из следующих принципов: top - down («сверху вниз») либо bottom - up («снизу вверх»). Анализ документа по принципу top - down , как следует из названия, ведётся в направлении сверху вниз. Система делит страницу на объекты, их, в свою очередь – на объекты низших уровней, и так далее, вплоть до символов. Системы, в основу которых положен второй принцип, напротив, начинают анализ с поиска одиночных знаков. Затем формируется представление о том, как найденные символы были сложены в слова, и так далее, вплоть до формирования полного электронного аналога страницы.

    Для принятия решений относительно того или иного объекта нередко используется механизм так называемого «голосования», voting. Суть данного метода заключается в параллельной выработке нескольких гипотез относительно объекта и передаче их «эксперту», логическому блоку, выбирающему одну из них.

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

    Разработчики компании ABBYY создали уникальный алгоритм многоуровневого анализа документа – его называют MDA (multilevel document analysis) – позволяющий объединить преимущества обоих вышеописанных принципов. В рамках MDA структура страницы рассматривается подобно тому, как это делается по методу top - down , а воссоздание документа в электронном виде по окончании распознавания ведётся «снизу вверх», аналогично методу bottom - up . При этом в алгоритм добавлен механизм обратной связи, охватывающей все уровни анализа, что позволило резко понизить вероятность грубых ошибок, связанных с неверным распознаванием объектов высоких уровней.

    Возможности нового алгоритма оказались существенно шире, чем у прототипов. Заметим, что объекты любого уровня OCR -системы ABBYY распознают в полном соответствии с принципами IPA : в первую очередь выдвигаются гипотезы относительно типов обнаруженных объектов, затем они целенаправленно проверяются. При этом учитываются найденные ранее особенности данного документа, а также сохраняется вся вновь поступающая информация.

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

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

    Мы кратко рассмотрели основные принципы технологий оптического распознавания символов ABBYY. Как упоминалось, распознавание любого документа производится поэтапно, при помощи усовершенствованной процедуры многоуровневого анализа документа (MDA) . Деление страницы на объекты низших уровней, вплоть до отдельных символов, распознавание символов и «сборку» электронного документа ABBYY FineReader проводит, опираясь на принципы целостности , целенаправленности и адаптивности (IPA) .


    Вышеприведённое описание весьма и весьма общо. Мы рассмотрели базовые принципы, не осветив собственно процесс распознавания. В рамках следующей главы будут подробно описаны все этапы работы с объектами разных уровней документа вплоть до отдельных символов.
  3. Описание OCR-процедуры.
    3.1 Предварительная обработка изображения.

    Обработка документа начинается с получения графического образа (изображения) страницы. Современные OCR-системы поддерживают оба основных способа получения изображений, из файла и от сканера. Взаимодействие со сканером обычно осуществляется средствами универсального протокола TWAIN. Так или иначе, входными данными для OCR-программы служит цветное (глубина цвета 24 бит) либо полутоновое (глубина цвета 8 бит) изображение документа.

    3.2 Распознавание объектов высших уровней. Бинаризация.

    Прежде, чем приступить к структурированию страницы, выделению и идентификации блоков, OCR -система производит бинаризацию , то есть преобразование цветного или полутонового образа в монохромный (глубина цвета 1 бит). Однако современные документы часто содержат такие элементы дизайна, как фоновые текстуры или изображения. После типовой процедуры бинаризации любая текстура оставит большое количество «лишних» точек, расположенных вокруг символов и резко снижающих качество распознавания. Бинаризация фоновых изображений приводит к аналогичным последствиям. Поэтому способность системы правильно отделять текст от «подложенных» текстур и картинок очень важна.


    Рис.2. Обработка процедурой IBF документа с фоновой текстурой.

    Иллюстрацией последнего тезиса может послужить пример, показанный на рис.2. Как показывают многочисленные эксперименты, OCR-система, начинающая обработку этой или похожей страницы с типовой процедуры бинаризации, показывает крайне низкий результат. В среднем точность на страницах подобного вида составляет для разных систем от 31,1% до 62,7%, что фактически равносильно отказу от распознавания .

    Однако ABBYY FineReader вполне корректно обрабатывает подобные документы; как показывают эксперименты, средняя точность распознавания страниц такого вида равна 98,7% . Успешно разрешить вышеописанную проблему позволяет процедура интеллектуальной фильтрации фоновых текстур, (intelligent background filtering , IBF ). Запускаемая при необходимости, в зависимости от результатов предварительного анализа страницы, эта процедура позволяет уверенно отделять текст от сколь угодно сложного фона. Более того, и выделение объектов высших уровней – текстовых блоков, таблиц, и т.п. – на страницах сложной структуры после обработки процедурой IBF выполняется значительно точнее.

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


    Рис.3. Без обработки процедурой адаптивной бинаризации этот документ распознается плохо.

    Технологии, разработанные специалистами ABBYY , позволяют решить и эту проблему. Процедура адаптивной бинаризации (adaptive binarization , AB ) способна гибко выбирать оптимальные для данного участка (фрагмента строки или даже слова) параметры бинаризации. Прибегнув к адаптивной бинаризации, ABBYY FineReader исследует яркость фона и насыщеность черного цвета на протяжении всей строки и подберет оптимальные параметры преобразования для каждого фрагмента по отдельности. В результате, как строки, так и отдельные слова будут выделены правильно, что повысит общую точность распознавания A REC .

    Весьма показательны результаты сравнительного исследования, проведенного на базе изображений, подобных показанному на рис.3. Методика тестирования подробно описана в , результаты представлены в нижеприведённой таблице.

    Таблица 1.
    Повышение качества распознавания
    за счёт применения адаптивной бинаризации.

    Как видно из таблицы, применение адаптивной бинаризации позволяет существенно повысить точность распознавания. С точки зрения технического исполнения, идея AB , являющейся частью усовершенствованного алгоритма MDA , заключается в использовании обратной связи для оценки качества преобразования того или иного участка. Обобщённая блок-схема алгоритма процедуры адаптивной бинаризации приведена на рис. 4.


    Рис.4. Обобщённая блок-схема алгоритма процедуры адаптивной бинаризации.

    3.3 Распознавание символов. Классификаторы.

    Деление строки на слова и слов на буквы в программном ядре ABBYY FineReader выполняется так называемой процедурой линейного деления. Процедура завершается по достижении конца строки и передаёт для дальнейшей обработки список гипотез, выдвинутых относительно возможных вариантов деления. При этом каждой гипотезе приписывается определённый вес; по смыслу эта величина соответствует численному выражению уверенности. Соответствующий каждой из гипотез набор графических объектов уровня «символ» поступает на вход механизма распознавания символов. Последний представляет собой комбинацию ряда элементарных распознавателей, называемых классификаторами .


    Рис.5. Упрощённая схема работы классификатора.

    В общем виде работу классификатора иллюстрирует схема рис.5. Как показано, по окончании обработки классификатор порождает список гипотез относительно принадлежности очередного изображения к тому или иному классу, либо – в том случае, когда входные данные уже представляют собой список – соответствующим образом изменяет веса имеющихся гипотез, подтверждает или опровергает их. Выходной список всегда ранжирован по весу (уверенности).

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

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

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

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

      Этот классификатор прост в реализации, работает быстро, устойчив к случайным дефектам изображения, однако имеет относительно невысокую точность. Широко используется в современных системах распознавания символов. В системе ABBYY FineReader на начальном этапе распознавания для быстрого порождения предварительного списка гипотез задействована одна из разновидностей растрового классификатора. Точность этого распознавателя , оцененная по первым трём позициям списка, составляет 99,29% 97,57% .

      Признаковый классификатор.
      Принцип действия: изображению ставится в соответствие N-мерный вектор признаков. Собственно классификация заключается в сравнении его с набором эталонных векторов той же размерности. Тип и количество признаков в немалой степени определяют качество распознавания. Формирование вектора (вычисление его координат в N -мерном пространстве) производится во время анализа предварительно подготовленного изображения. Данный процесс называют извлечением признаков. Эталон для каждого класса получают путём аналогичной обработки символов обучающей выборки.


      Рис.6. Блок-схема работы признакового классификатора.

      Сравнение каждой пары векторов заключается в вычислении оценки, характеризующей расстояние между точками в N-мерном пространстве (точка – геометрическое представление такого вектора). Пример, иллюстрирующий данный метод, приведён на рис.7; для наглядности в этом примере мы полагаем N=2, то есть вектора находятся в обычном двумерном пространстве. Координаты X0, Y0 вектора-эталона вычислены заранее, при обучении классификатора, тогда как X1, Y1 получены на этапе извлечения признаков. Понятно, что чем меньше оказывается значение оценочной величины |L|, тем точнее анализируемое изображение соответствует данному эталону, следовательно, тем более высокий вес будет присвоен классификатором этой гипотезе. В общем виде зависимость, по которой определяется |L|, записывается таким образом:

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

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

      Этот тип классификаторов весьма популярен у разработчиков OCR -систем. В системе ABBYY FineReader используется признаковый классификатор с числом признаков N=224. Его назначение – то же, что у растрового классификатора – быстрое порождение списка предварительных гипотез. Точность используемой разновидности по первым трём вариантам списка гипотез составляет 99,81% , точность по первому варианту 99,13% .

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

      Этот классификатор предназначен для распознавания текста, набранного декоративными шрифтами (например, стилизованного под готический, старорусский стиль, и т.п.). Работает несколько медленнее обычного признакового классификатора. Точность контурного классификатора по первым трём вариантам 99,30% , точность по первому варианту 95,10% .

      Признаковый дифференциальный классификатор.
      Предназначен для различения похожих друг на друга объектов, таких, например, как буква « m » и сочетание « rn ». Анализирует только те области изображения, где может находиться информация, позволяющая отдать предпочтение одному из вариантов. Так, в случае с « m » и « rn » ключом к ответу служит наличие и ширина разрыва в месте касания предполагаемых букв.

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

      В процессе обучения этого классификатора производится анализ изображений из обучающей базы. Вычисляемые при этом значения признаков интерпретируются как координаты точки в N-мерном пространстве. Соответственно, для двух различных символов получается два «облака» точек, расположенные на некотором удалении друг от друга. Когда накоплена информация о достаточном количестве точек, выполняется вычисление координат гиперплоскости. Она должна разделить пространство таким образом, чтобы «облака» оказались по разные стороны и примерно на одном расстоянии от гиперплоскости.


      Рис.8. Упрощённая геометрическая модель обучения
      дифференциального классификатора.

      Набор величин, соответствующий координатам гиперплоскости, используется при распознавании в качестве эталона для данной пары символов. Для полученных при анализе изображения значений вычисляется оценка, геометрический смысл которой – местонахождение точки относительно гиперплоскости. Следует отметить, что для каждой пары символов необходимо тщательно выбрать область, в которой будут вычисляться признаки (иногда для этих целей берутся похожие на обычные признаки из признакового и контурного классификаторов). Из-за этого построение эталонов для ПДК чрезвычайно трудоёмко, и общее их количество весьма ограничено.

      Входными данными для ПДК служит не только изображение, но и список гипотез, сформированный на ранней стадии распознавания. От того, в каком полупространстве и на каком расстоянии от гиперплоскости окажется точка, зависит, вес какой гипотезы будет увеличен классификатором. Сам ПДК не выдвигает новых гипотез, но изменяет веса уже имеющихся в списке, в том случае, если среди представленных в списке имеются пары гипотез, для которых существуют эталоны. При этом используется алгоритм так называемой пузырьковой сортировки. Гипотезы перебираются с конца списка и последовательно « всплывают » после сравнения с менее вероятными, при этом производится корректировка веса. Такой алгоритм гарантирует, что правильная гипотеза окажется на первом месте тогда и только тогда, когда дифференциальное сравнение со всеми вышестоящими гипотезами даёт положительный результат.

      Точность ПДК не может быть вычислена методом, применявшимся для вышеописанных видов, однако может быть оценена косвенно. На рис.9 представлена схема распознавателя, использующегося в системах ABBYY. Растровый (РК) и признаковый (ПК) классификаторы используются для быстрого порождения предварительного списка гипотез. В том случае, если уверенность гипотезы с наибольшим весом P 1 не превышает заданного порогового значения P порог, контурный классификатор (КК) выдвигает ряд дополнительных гипотез. Список поступает на вход ПДК, который производит сортировку. Столь сложная схема запуска классификаторов позволяет оптимизировать соотношение качества и скорости распознавания. Точность этого распознавателя по первым трём вариантам составляет 99,87% , точность по первому варианту 99,26% .


      Рис.9. Обобщённая блок-схема алгоритма распознавания (первый уровень).

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

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

      Например, для различения C и G классификатор анализирует область изображения, соответствующую нижнему правому углу символа. Одним из индивидуальных для данной пары признаков будет наличие (или отсутствие) двух горизонтальных отрезков, расходящихся от конца обращённой книзу дуги. Сама эта дуга, как несложно видеть, присутствует в обоих символах.

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

      Применяется только в системах распознавания компании ABBYY . Точность распознавателя (рис.9) при добавлении на выходе структурно-дифференциального классификатора увеличивается до 99,88% по первым трём вариантам и до 99,69% по первому варианту .

      Структурный классификатор.
      Одна из революционных разработок компании ABBYY. Первоначально был создан и использовался для распознавания рукопечатного текста (ICR), затем был успешно применён и для обработки.