Как настроить смартфоны и ПК. Информационный портал

Что такое OCR. Как это работает: FineReader

Поколения программ OCR

Перед тем как начать рассмотрение OCR-систем, давайте сначала хотя бы минимально приведем их классификацию для удобства рассмотрения. На данный момент выделяют OCR-системы, а также ICR-системы. Несколько упрощая суть отличий между ними, можно считать, что ICR-системы – это следующее поколение в развитии OCR-систем. В ICR гораздо более активно и серьёзно используются возможности искусственного интеллекта, в частности, ICR-системы часто используются для распознавания рукописных текстов, декоративных непостоянных шрифтов, а также, как самый яркий пример, преодолению тех же систем по защите от спам-ботов – каптч (captcha). Третий, пока ещё только теоретический уровень качества распознавания текста, это IWR, в которой считываются и распознаются не отдельные символы/точки, а считываются и распознаются фразы целиком.

Существует несколько систем, причисляющих себя к категории ICR. Это, прежде всего, FineReader, OmniPage Professional, Readiris Corporate, Type Reader Desktop. Давайте сравним их всех и рассмотрим существующие альтернативы.

Известные отечественные продукты

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

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), затем был успешно применён и для обработки.

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

ачем набирать текст, если ранее это уже кто-то сделал? У пользователя такая задача вызывает яростное сопротивление с примесью обиды за то, что приходится дублировать чью-то работу. Помощь компьютера, который уже умел считать, рисовать и делать множество других вещей за человека, стала необходима еще в одной области. Естественно, разработчики программного обеспечения не могли остаться равнодушными к столь вопиющей несправедливости, ликвидация которой к тому же обещала солидные дивиденды. Так были созданы системы искусственного интеллекта, известные в России как системы оптического распознавания текста, а в англоговорящих странах - как Optical Character Recognition (OCR).

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

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

Откуда пришла OCR

опытки автоматического распознавания предпринимались, начиная с 30-х годов XX века, однако первый OCR-аппарат от американской компании Intelligent Machines Research Corporation появился только в 1952 году. Естественно, ни о каком искусственном интеллекте речь тогда не шла. Первые OCR-аппараты не имели ничего общего даже с компьютерной техникой. В них свет, отраженный от подсвеченного участка оригинала, проходил через сложную систему зеркал, причем некоторые из них были расположены на вращающихся дисках. В результате из общего потока поочередно выделялись узкие световые пучки, соответствующие небольшим участкам оригинала - аналогам пикселов электронного изображения. Эти «квазипикселы» поступали на вход фотоэлектронного умножителя - оптико-электронного преобразователя с большим коэффициентом усиления. Полученные сигналы обрабатывались электронной схемой. В ходе обработки устанавливалось, является подсвеченная точка оригинала белой или черной. На основе полученной информации OCR-аппарат воспроизводил образ подсвеченного знака.

Возможности этих машин были ограничены рядом условий. Для сколько-нибудь уверенного распознавания требовались исключительно хорошее качество, высокая контрастность и отсутствие каких-либо повреждений оригиналов. Кроме того, распознавать можно было далеко не все надписи, а только набранные определенными шрифтами. Именно с этой целью в 60-х годах были разработаны и стандартизованы специальные шрифты - OCR-A (в США) и OCR-B (в Европе).

В 70-х годах компания Kurzweil Computer Products предприняла качественно новый шаг в развитии OCR, создав систему, способную учиться распознавать шрифты. Результаты обучения, продолжавшегося обычно несколько часов, записывались на диск, и система приобретала способность распознавать тексты, набранные выученным шрифтом. В то же время в отечественном Научно-исследовательском центре электронной и вычислительной техники (НИЦЭВТ CCCР) группой под руководством Александра Шамиса велись исследования по распознаванию «рукопечатных» (сделанных от руки печатными буквами) надписей. Впоследствии результаты деятельности группы неоднократно находили воплощение в программном коде. Наиболее известной OCR-системой, на практике реализующей методики группы Шамиса, является созданная в России ABBYY FineReader, о которой подробнее будет рассказано далее.

В 1986 году компания Calera Recognition Systems разработала систему, позволяющую работать с неизвестными ей шрифтами без предварительного многочасового обучения. Это была первая OCR-система, обладавшая искусственным интеллектом. Вместо применявшейся ранее методики посимвольного сравнения с шаблонами она действовала по методу обобщения, ныне более известному как принцип нейронной сети. Разработчики предоставили в распоряжение программы свыше 10 тыс. образцов начертания каждой буквы; обобщая их, система получала представление об основных закономерностях начертания знака, что и позволяло обходиться без длительного обучения. Впрочем, некоторое обучение требуется и современным OCR-программам. Например, иногда приходится проводить «ликбез» при распознавании редких и декоративных шрифтов.

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

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

Понятно, что любой высокоуровневый объект может быть представлен как набор объектов более низкого уровня: буквы образуют слова, слова - строки и т.д. Поэтому анализ всегда начинается в направлении сверху вниз. Программа делит страницу на объекты, их, в свою очередь, на объекты низших уровней и т.д., вплоть до символов. Когда символы выделены и распознаны, начинается обратный процесс - сборка объектов высших уровней, которая завершается формированием целой страницы. Такая процедура называется многоуровневым анализом документа, или MDA (Мultilevel document Analysis).

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

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

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

  • точность распознавания — 95%;
  • точность сохранения оформления в документах для текстовых процессоров (в форматах MS Word, MS Excel, Word Pro, Word Perfect) - 89%;
  • точность сохранения оформления для последующей электронной публикации (в форматах PDF, HTML) - 87%;
  • работа с таблицами и многоколоночными текстами - 87%;
  • простота использования — 85%;
  • надежность работы — 82%;
  • удобный поиск ошибок и сверка с оригиналом - 80%;
  • работа с цветом (сохранение цветных картинок, цвета шрифта и фона) - 63%;
  • прямой экспорт в другие приложения - 61%;
  • скорость — 55%;
  • многоязычное распознавание — 25%.

Обратите внимание, что экспорт в Web-форматы сочли необходимым параметром 87% пользователей. Таким образом, возможность выкладывания результатов распознавания в Интернет становится даже более приоритетной, чем такие важные требования к OCR и вообще к программным продуктам, как удобство и простота интерфейса и надежность работы. Похоже, что сетевой фактор становится все более актуальным даже в областях, непосредственно с Интернетом не связанных. В данном случае привязанность OCR к Сети во многом можно объяснить появлением в Интернете многочисленных библиотек самой разной тематической направленности, содержащих электронные копии документов и изданий. Число таких виртуальных читален растет день ото дня, как и их популярность. Недавно, правда, над ними стали сгущаться тучи, нагоняемые поборниками авторского права, но это уже совсем другая история.

В настоящее время на рынке систем распознавания существует ряд разработок, ориентированных как на различные сферы деятельности пользователя, так и на разные платформы. Отдельная отрасль рынка ориентирована на Mac-платформу. Практически все популярные системы распознавания имеют в настоящее время версии для «яблочного» детища. Абсолютным же лидером продаж OCR-систем в России и одним из лидеров продаж за рубежом в течение нескольких лет остается система ABBYY FineReader.

«Прекрасный чтец» и иже с ним

етище студента четвертого курса МФТИ Давида Яна - компания BIT Software появилась на свет в 1989 году. В 1997-м она получила свое современное название - ABBYY Software House, а еще через год вышла со своим основным продуктом FineReader на мировой рынок. В то время такой шаг казался авантюрным, поскольку на Западе бал правили такие OCR-гиганты, как Caere с системой распознавания OmniPage и ScanSoft с TextBridge, а рынок был насыщен и поделен. Однако начало оказалось для ABBYY весьма успешным. За последние несколько лет ABBYY удалось отвоевать у конкурентов порядка 20% мирового рынка OCR-систем, и с каждым годом все больше пользователей переходят с программ других разработчиков на FineReader, по достоинству оценив преимущества этой системы. ABBYY заключила контракты с такими крупнейшими производителями сканеров, как Mustek, Acer, Compaq, Lexmark, на поставку FineReader в комплекте с их сканерами и МФУ. Дилеры и партнеры ABBYY работают в 80 странах мира, а у самой компании есть офисы в США, Германии, Великобритании, Швеции и на Украине. FineReader успела сменить семь версий, получить более ста наград в тестах различных международных изданий и тестовых лабораторий и по сей день, несмотря на ряд других софтверных решений от ABBYY, остается флагманским продуктом компании, обитая на абсолютном большинстве компьютеров, по крайней мере российских.

В настоящее время актуальны две последние версии FineReader - 6.0 и 7.0, выпущенные соответственно в 2002-м и 2003 году. Шестая версия произвела в свое время революцию на OCR-рынке. В продукте были использованы новые алгоритмы адаптивной бинаризации и фильтрации текстуры - проще говоря, резко повысилась точность распознавания документов с дизайнерскими изысками, вроде текста на цветном фоне, цветных шрифтов, многоколоночного текста. Значительно улучшилось и сохранение этого благолепия в нетронутом виде, в том числе в HTML. При этом качество распознавания оформительских элементов теперь можно было оценить, не экспортируя результат в текстовый процессор или в браузер, а с помощью собственного многоколоночного WYSIWYG-редактора. К «сырьевым» форматам, пригодным для распознавания, добавился PDF. Помимо редактирования в данном формате стало возможно сохранить и результаты работы. Возможность работы с PDF стала, пожалуй, самым полезным новшеством шестой версии FineReader.

Седьмая версия, на данный момент - венец творения, приобрела ряд новых полезных функций. Были улучшены уже упоминавшиеся алгоритмы бинаризации и фильтрации и разработан новый структурный классификатор. Как утверждают в ABBYY, это повысило точность распознавания на 25%, сложная верстка стала распознаваться лучше на 33%, а с добавлением юридического и медицинского словарей для английского и немецкого языков распознавание специализированных текстов стало более безошибочным на 30-40%. Не забыли и про «конек» прошлой версии - PDF. Точность распознавания PDF-документов возросла на 45%, а PDF-файлы, вышедшие из-под пера FineReader, стали оптимизироваться для онлайн-публикаций 1 . Но результаты, тем более количественные, внутренних корпоративных тестов довольно специфичны, и оценить справедливость указанных процентов самому весьма проблематично. Так что представление о том, насколько быстрее стала работать последняя «инкарнация» FineReader, читатели могут составить сами. Благодаря поддержке формата XML, FineReader теперь интегрируется в Microsoft Office Word 2003. Выражается интеграция в редактировании OCR-результатов средствами Word с одновременным просмотром увеличенного рабочего участка оригинала. Стала возможной работа с другим приложением Office - PowerPoint. Благодаря инструментам для разбиения изображения FineReader легко распознает распечатки презентаций, которые затем можно также легко сохранить в формате PowerPoint.

Традиция разделять софт на несколько вариантов, различающихся по функциональности и цене, появившаяся, видимо, с подачи Microsoft, не обошла стороной и FineReader. Продукт поставляется в двух ипостасях: Professional и Corporate Edition. В седьмую версию Professional перекочевали некоторые функции, ранее доступные только в корпоративной версии. Пользователи FineReader Professional теперь могут использовать инструменты для разбиения изображения, полнотекстовый морфологический поиск и функцию распознавания штрих-кодов. В Corporate Edition к джентльменскому OCR-набору добавлены инструменты для совместной работы в локальной сети: автоматическая сетевая установка, поддержка сетевых многофункциональных устройств (например, сканер + копир + принтер) и средства администрирования.

FineReader выпускается еще в двух разновидностях: Pro for Mac (в настоящее время последняя версия - 5.0) и Sprint. Первая, как понятно из названия, предназначена для использования на компьютерах от Apple. По возможностям и цене Mac-версия аналогична профессиональной и отличается меньшим количеством поддерживаемых для распознавания языков (117 против 177), поддержкой «яблочных» технологий (Quick Time, Drag-n-Drop, Speech, Navigation Services) и интерфейса AppleScript.

FineReader Sprint — это light-версия продукта, которая поставляется вместе со сканерами и многофункциональными устройствами, ее вполне достаточно для типовой работы. Если же возникает необходимость в дополнительных возможностях, в Sprint предусмотрена возможность апгрейда до полнофункциональной версии.

Цены: Corporate Edition, как и следовало ожидать, самая дорогая - 259 долл., Professional и Pro for Mac стоят в два раза дешевле - 129 долл.

Помимо FineReader, ABBYY представляет на рынке еще ряд продуктов для распознавания: программу для автоматической обработки большого количества форм, заполненных от руки (ICR-технология), ABBYY FormReader (под формами понимаются всевозможные анкеты, опросные листы, заявки клиентов, налоговые декларации и т.д.); продукт для оперативного ввода платежных документов FineReader Банк; инструмент TestReader для обработки результатов экзаменационных тестов, анкет и прочих документов учебных заведений. Кроме распознавания, ABBYY занимается разработкой электронных словарей Lingvo (последняя версия - 9.0), а также созданием решений для разработчиков и системных интеграторов. Последние позволяют встраивать в другие программные продукты технологии распознавания (FineReader SDK), полнотекстового поиска и лингвистического анализа (Retrieval & Morphology Engine) и обработки форм (FormReader Developer Edition и FlexiCapture Studio).

Заканчивая краткий рассказ о FineReader, стоит упомянуть еще об одном достижении ABBYY - от распознавания как такового далеком. Продукты компании обладают одним из наиболее высоких в России уровнем защиты. В них используется комбинированный метод защиты, включающий регистрацию и трудно копируемый носитель. В отдельных случаях (для дорогих продуктов) вместе с продуктом поставляется электронный ключ. Только начиная с седьмой версии FineReader стал поставляться без дискеты активации. Теперь его можно активировать в Интернете, по телефону, факсу или e-mail. При этом защита у продуктов ABBYY многоуровневая. Конечно, программы все равно взламывают, однако довольно часто не до конца, а только первые несколько уровней, в результате чего нелегальная копия работает некорректно или вовсе прекращает свое существование через некоторый промежуток времени. Этим достигается основная цель компании - вызвать у пользователей недоверие к пиратскому софту. Естественно, потратить столько времени и сил на антипиратские разработки ABBYY пришлось не от хорошей жизни. Ощутимые потери компания несет начиная с 1989 года, когда ее электронный словарь Lingvo был распространен по России в десятках тысяч контрафактных копий.

Практические основы

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

При первом запуске программы, а также при всех последующих, если только не отключить эту опцию, взору пользователя представляется welcome-окошко, предлагающее выбрать следующие варианты работы: ввод документа с помощью мастера Scan&Read, обучение на примерах и открытие демо-примера. Если выбрать последний вариант, программа загрузит TIFF-изображение страницы с текстом о местной группе галактик, сдобренным несколькими иллюстрациями и таблицей. Ну а пользователь должен додуматься, как довести дело до ума, то есть картинку до текста. Немного напоминает самый действенный способ научить плавать, когда тренер бросает подопечного подальше от бортика. Впрочем, здесь все гораздо проще. Как и следовало ожидать, от пользователя требуется только разобраться, какие кнопки нажимать, что нетрудно, так как интерфейс достаточно простой, а сама тестовая страница распознается без сучка, без задоринки (рис. 1).

Если выбрать «Обучение на примерах», то откроется обычный раздел справки с тремя основными главами: «Быстрое знакомство», «Примеры» и «Советы». В первой пользователю рекомендуют начать работу с нажатия кнопки Scan&Read, во второй приводится список наиболее часто используемых типов распознаваемых документов, назначение третьей, думается, понятно без слов.

Все варианты работы с FineReader разработчики разделяют по следующим шестнадцати категориям: простое письмо, документ - текст в одну колонку, многоязычный документ, книжный разворот, факс, сложная журнальная страница, газетная страница, PDF-документ, простая таблица, таблица с неполным количеством черных разделителей, сложная таблица, визитная карточка, презентация PowerPoint, программная распечатка, документ с декоративным шрифтом, документ с артикулами. Описание некоторых вариантов сопровождается изложением ситуации и пошаговой инструкцией по решению характерных проблем. Довольно часто рекомендуется сканировать документ в режиме GrayScale, при котором автоматически устанавливается оптимальная контрастность. Декоративным шрифтам, как уже упоминалось, программу нужно научить.

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

Итак, переходим непосредственно к работе. Распознавание текста можно провести как с использованием мастера Scan&Read, так и без оного. В нижней части панели инструментов находятся пять больших кнопок: Scan&Read и кнопки, запускающие четыре основные операции - «Сканировать», «Распознать», «Проверить» и «Сохранить». Имеет смысл рассмотреть вариант работы с мастером (рис. 2).

Если Scan&Read запущен, то в первую очередь у пользователя спрашивается, хочет он документ отсканировать или же загрузить из файла. В первом случае показываются установленные в настоящее время настройки сканера: разрешение, яркость и тип изображения - и загружается программа управления сканером, а во втором - появляется диалоговое окно, где нужно выбрать «сырье» для распознавания в одном из форматов: BMP, DCX, JPEG, JPEG-2000, PCX, PNG, TIFF или PDF. После завершения сканирования/добавления документа программа интересуется, на каком (каких) языке (языках) написан текст для распознавания. Как уже указывалось, FineReader поддерживает 177 языков, однако на практике автору еще не приходилось менять стоящий по умолчанию «Русский-Английский». Сделав выбор и нажав «Далее», можно съесть бутерброд, сходить покурить, выпить кофе или пообедать (в зависимости от быстродействия компьютера и объема документа), так как начинается наиболее длительный 2 процесс — собственно распознавание. Пользователь может наблюдать за его ходом — распознанные фрагменты подсвечиваются голубым. По завершении предлагается оценить результат: появляются три окна, в одном из которых показывается исходное изображение, во втором — полученный текст, а в третьем — его увеличенный фрагмент. В окне «Изображение» можно посмотреть, как FineReader разбил на пронумерованные блоки текстовую, графическую и табличную составляющие документа. Блоки, определившиеся как текстовые, обведены зеленым контуром, графические — красным, табличные — синим 3 . Штрих-коды по умолчанию не распознаются, для выделения их в отдельные блоки нужно поставить соответствующую галочку в подменю Сервис -> Опции . Для редактирования блоков используется панель инструментов в левой части окна. О назначении каждого инструмента сообщается при наведении на него курсора, так что нет нужды подробно останавливаться на этом. Пример редактирования блоков приведен на рис. 3.

Рис. 3. Текст на фоне фотографии не был распознан и не выделился в отдельный блок.
Для исправления достаточно выделить мышью соответствующую область и в контекстном меню выбрать «Распознать»

2 Конечно, при условии, что результат будет более или менее приличный. В противном случае последующая обработка может растянуться на неопределенный срок.

3 Все цвета, естественно, можно поменять по своему вкусу, выполнив команду: Сервис -> Опции -> Вид .

Мастер Scan&Read дипломатично интересуется: «Как прошло распознавание?» Надо по достоинству оценить тактичность положительного варианта ответа - «В целом успешно». Неужели на полностью успешное распознавание разработчики не рассчитывали?! Отрицательный вариант ответа - «Очень плохо: ошибки в каждой строке». Это вам не стандартное «хорошо/плохо» - сразу чувствуется глубокое понимание психологии пользователя. (Шутка.) Возвращаемся к работе.

Если вдруг качество распознавания не устраивает, пользователю последовательно выводятся возможные причины неудачи и соответствующие советы: изменить параметры сканирования или воспользоваться специальными функциями FineReader для тяжелых случаев. Если качество устраивает, программа предлагает проверить текст перед экспортом в какое-либо приложение (рис. 4).

Рис. 4. Встроенная программа проверки орфографии очень напоминает Word’овскую…

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

Альтернативные OCR

Многих пользователей уже давно сложилось впечатление, что ABBYY FineReader - единственный в своем роде продукт. Самые продвинутые знают, что в плане распознавания латиницы у него кое-какая конкуренция имеется, но что касается кириллицы - сейчас, наверное, уже нет. Года четыре назад главным конкурентом ABBYY на отечественном рынке была компания Cognitive Technologies со своей системой распознавания CuneiForm. Но OCR для Cognitive теперь не считается приоритетным направлением деятельности: компания в основном занята в проектной интеграции в сферах электронной торговли, документооборота и информационно-аналитических систем. Один из наиболее популярных программных продуктов Cognitive - система электронного документооборота «Евфрат». CuneiForm, когда-то дышавший в затылок FineReader, в отличие от последнего, прекратил эволюционировать на версии 2000 (Professional и Master). Тем не менее CuneiForm также входит в комплект некоторых продаваемых в России сканеров и многофункциональных устройств от Canon, Hewlett-Packard, OKI, Seiko EPSON, Olivetti. Этот «дедушка» хотя и позволяет экспортировать результаты с сохранением форматирования, но так и не научился распознавать PDF, поддерживает всего 15 языков, но при этом неправильно распознает документы, текст которых содержит более одного языка, исключая стандартную пару русский-английский, не производит автоматического ориентирования текстовых строк и т.д. Конечно, при соответствующей цене на эти недостатки можно закрыть глаза. Но в случае с CuneiForm сделать это не получается, так как версия Professional стоит 129 долл., а Master - 249 долл., то есть почти столько же, что и FineReader. Профессиональная версия, в отличие от «мастерской», не может производить пакетного сканирования и распознавания и не имеет персонального электронного архива «Евфрат». Порекомендовать данную программу можно, видимо, только тем, кто использует систему «Евфрат», так как в CuneiForm поддерживается интеграция с этим продуктом.

Из других OCR-разработок можно выделить зарубежные продукты Readiris 9.0 от I.R.I.S. и OmniPage Pro 14.0 от ScanSoft. Readiris отличается прежде всего скромными размерами, что не мешает ему распознавать текст из LZW-сжатых TIFF-изображений, что недоступно его старшим собратьям. Однако если эти аспекты не очень актуальны и продукт не шел в поставке со сканером, то особого смысла приобретать Readiris автор не видит. Вряд ли он покажется лучше, чем, например, «спринтерский» вариант FineReader или OEM-версия другой программы.

OmniPage Pro — гораздо более мощный продукт, близкий по своим возможностям к детищу ABBYY (и, кстати, за рубежом успешно с ним конкурирующий): в нем реализованы те же расширенная работа с PDF-файлами, экспорт в офисные приложения, поддержка XML. К эксклюзиву можно отнести поддержку ODMA-совместимых корпоративных систем управления документами, формата eBook и наличие открытого OLE-интерфейса, позволяющего проводить интеграцию продукта с другими приложениями. Еще одно достоинство OmniPage Pro — звуковое чтение распознанного текста — вряд ли будет по достоинству оценено отечественными пользователями, так как читать программа умеет только по-английски. Кстати, русский интерфейс также отсутствует. И в заключение хотелось бы привести без комментариев стоимость продукта — 634 долл.

Подводя итоги, можно сказать, что сегодня по соотношению «цена/качество» на российском рынке у ABBYY нет достойных конкурентов. Возможно, они появятся после локализации (как в плане языка, так и цены) OmniPage. Жизнь покажет.

Распознавание документа, анализ содержания документа и извлечение данных осуществляются в настоящее время с помощью следующих систем распознавания текстов, отличающихся по стоимости, качеству и скорости работы:

  • OCR (Optical Character Recognition) - технология оптического распознавания печатных символов, т.е. перевода сканированного изображения печатных символов в их текстовое представление;
  • ICR (Intelligent Character Recognition) - распознавание раздельных печатных символов, написанных от руки;
  • OMR (Optical Mark Recognition) - распознавание отметок (обычно перечеркнутые крест-накрест либо галочками квадраты или круги);
  • стилизованные цифры - распознавание рукописных цифр, написанных от руки по шаблону, как на почтовых конвертах.

На протяжении многих лет компании, работающие с технологиями распознавания, пытались создать аббревиатуры, чтобы разграничить понятия OCR, ICR, OMR и технологий для эффективного чтения многих типов и стилей почерка, в том числе рукописного.

Технология оптического распознавания символов (OCR) рассматривает сканированные изображения отпечатанного текста и преобразует их в электронные текстовые данные. Несмотря на то что самые усовершенствованные системы могут распознавать почти все виды шрифта, они работают только с печатными текстами и отклоняют рукописные. Отпечатанные буквы ровно располагаются на странице, позволяя OCR читать один символ за другим. Когда все символы в слове распознаны, слово сравнивается со списком возможных вариантов для окончательного утверждения результата. Любой текст, который не является идеальным, вызовет трудности даже у самой усовершенствованной OCR-системы, что отразится на значительном снижении точности обработки некачественных изображений. Например, когда символы разъединяются вследствие плохого качества изображения либо несколько символов сливаются из-за размытого или темного фона между ними, точность распознавания может уменьшиться на целых 20%.

Технология интеллектуального распознавания рукописного печатного текста (ICR) в основном используется при распознавании текста, написанного от руки печатными буквами. ICR способна распознавать раздельные символы, написанные от руки.

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

ICR является более надежным средством в обработке рукопечатного текста, чем OCR. Словари применяются после процесса распознавания, а не во время него. Поэтому, если правильное предположение не было сделано во время сегментации символов и процесса распознания, проверка со словарем может не улучшить результат и значительно снизить точность.

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

Технология Parascript ICR фокусируется на строении написанного слова. Наподобие того, как люди ищут смысл, чтобы прочитать слова, в которых частично переставлены буквы (yuo спа lkiley raed tihs wthiuot a pborlem), Parascript ICR добивается подобного распознавания на основе контекстного подхода. Обрабатывая результаты во время процесса распознавания, Parascript ICR создает высокоточные ответы, которые в свою очередь приводят к более высокому уровню распознавания, чем те, которые проверяются в конце процесса.

OMR (Optical Mark Recognition) - распознавание отметок. Обычно отметками выступают перечеркнутые крест-накрест либо отмеченные галочками квадраты или круги (checkbox).

В 2007 году компания

Cognitive Technologies представила новое ядро распознавания Cognitive Forms 2007 для IDR- технологии CogniDocs .

Генеральный директор Cognitive Technologies , член-корреспондент РАН Владимир Львович Арлазаров: появление IDR стало естественным шагом на пути развития технологий распознавания образов " от распознавания символов к пониманию документов" .

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

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

На основе синтаксического анализатора Cognitive Technologies создан ряд интеллектуальных программных продуктов, например системы определения авторства и стиля документа.

29.12.2009 Компания Cognitive Technologies показала свое умение решать классическую задачу "отличить кошку от собаки".

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

В ней был "Задачник для узнающей программы" – перечень из сотни задач распознавания ("тесты Бонгарда") которые легко решаются человеком, но не имеют чётких критериев для их описания в виде алгоритма.

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

Если вы захотите поиграться в вопросы-ответы на эту тему, то быстро обнаружите, что любая черта, характерная для кошачьих (или, наоборот, собак), не может служить однозначным и стопроцентным критерием для отличия во всех случаях. Убираемые когти? Кошка может их выпустить в любой момент, но от этого мы её с собакой не перепутаем. Вертикальный зрачок? Кошку с зажмуренными глазами мы также легко отличаем. И так далее.

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

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

Все реально работающие системы поиска и классификации изображений сводятся главным образом к анализу текстового контекста (как в поиске Google по картинкам), а если и пытаются что-то распознавать (Face Search , Exalead и прочие), то по очень ограниченным критериям и с решительно недостаточной релевантностью результатов. Даже системы по элементарному поиску дубликатов одного и того же изображения нередко спотыкаются на простом изменении соотношения сторон при обрезке картинок. А про фиаско, которое потерпели системы выявления разыскиваемых лиц по изображениям, полученным от следящих видеокамер (вроде популярной некогда программы FaceIT ), пресса писала неоднократно .

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

Лучшие статьи по теме