4.10.4. Программы распознавания текста Одним из направлений научных исследований и практических разработок является технология понимания и распознавания документов. В последнее время появляется большое число систем этого класса как универсального назначения, так и специализированных. В своей профессиональной деятельности специалисты в различных областях (и особенно в финансовой сфере) наверняка столкнутся с необходимостью их применения. Основные задачи и функции систем понимания документов. Цели и задачи распознавания документов многообразны и разнородны, поскольку многообразны и разнородны сами документы. Их решение строится на основе анализа изображения документа, полученного со сканера, видеокамеры или другого сканирующего устройства. Процесс получения изображения с бумажного или другого носителя и занесения его в память компьютера называется оптическим вводом. После оптического ввода документ представляет собой совокупность чер-ных и белых (либо различных цветов) точек – графическое изображение. Текст в графической форме невозможно отредактировать текстовым редактором, занести в базу данных и т.д. Поэтому общую задачу распознавания документа можно сформулировать как преобразование формы представления информации из графической в другую, воспринимаемую человеком и программой. В большинстве случаев задача распознавания документов может быть разбита на подзадачи, связанные с распознаванием определенных составляющих – компонент документа (текста, цветных или полутоновых и контурных изображений). Цветное (полутоновое) изображение (фотографии, диаграммы и т.п.) в большинстве случаев достаточно сохранить в виде сканированного фрагмента (в графическом формате) для последующей вставки его в электронный документ. Контурное изображение (рамки таблиц, подписи, печати) преобразуется из растрового представления в более удобную для последующего анализа и хранения форму (например, в векторное представление). Распознавание текста (optical character recognition - OCR) является одной из наиболее важных задач в понимании документов и представляет собой преобразование графического изображения текста (печатного либо рукописного) в символьную форму (например, в ASCII - код). При распознавании рукописного текста, помимо определения, что написано, можно выделить задачи определения кем и как написано с целью получить ответы на вопросы: кто является исполнителем текста; каковы свойства его личности (психологический портрет); в каком психофизиологическом состоянии (болезнь, опьянение и т.п.) находился человек в момент написания текста. Решение этих задач имеет важное значение не только в психологии и судебной медицине, но и при определении профессиональной пригодности сотрудников, обеспечении безопасности и т.п. Анализ структуры документа преследует две основные цели: во-первых, точную передачу структуры, что требуется при обработке, например, финансовых документов; во-вторых, знание структуры необходимо для распознавания компонент документа. Анализ реквизитов документа применяется, главным образом для подтверждения подлинности документов, таких как финансы вые и ценные бумаги (для этого анализируются, например, подписи, печатные оттиски, способ печати и т.д.). Цели и задачи распознавания документов существенно зависят от типа документов (табл.4.9). Основными целями в системах понимания документов являются: воспроизведение; преобразование формы представления; понимание; хранение, диспетчеризация, поиск; определение подлинности. Для воспроизведения необходимо создание документа в памяти ЭВМ, копирующего содержание и форму исходного документа. Копирование графического образа нецелесообразно по двум причинам. Во-первых, хранение растровых изображении требует больших затрат памяти, во-вторых, текст документа не может быть обработан типовыми программными средствами, например, текстовым редактором. Поэтому создание электронной формы документа предполагает, как правило, детальный анализ структуры, распознавание текста документа, извлечение из него графических компонент и компоновку в среде текстового процессора или издательской системы. При обработке определенных классов документов, таких как статистические отчеты, платежные поручения и др., информация (как правило, напечатанная на бланке в определенных зонах) должна быть прочитана и распределена по полям базы данных. Структура документа известна, необходимо распознать содержимое определенных зон и передать результат распознавания каждой зоны в строгом соответствии с формой документа. Таблица 4.9
Цели и задачи распознавания некоторых классов документов
Уровень развития технологии понимания документов и вычислительной лингвистики позволяет при определенных условиях извлечь смысл документа, т.е. понять его. Это справедливо для задач, в которых используются ограниченные подмножества естественного языка (например, системы чтения почтовых адресов, карточек и др.). В этом случае распознающая система выдает некоторую последовательность команд или сообщений, сгенерированную по результатам распознавания текста и его смыслового (семантического) анализа. В качестве примера рассмотрим гипотетическую систему ввода и обработки платежных поручений, которая, выполнив при помощи сканера ввод бланка, должна распознать текст, проверить соответствие различных зон (например, суммы платежа в цифровом и текстовом виде), сопоставить данные с информацией из базы данных (номера счетов, коды банка и т.п.) и в конечном счете осуществить платеж. Одной из важнейших задач в делопроизводстве и других сферах, связанных с обработкой документов, является хранение огромного количества документов и организация эффективного поиска нужной информации. Важно отметить, что эта задача должна быть решена даже в том случае, когда по некоторым причинам текст документа не может быть эффективно распознан. Для этих целей применимы комбинированные схемы обработки, в которых сочетаются как распознавание текста, так и управление графическими образами. Определение подлинности документов является одной из важных стадий обработки финансовых документов, ценных бумаг, чеков и т.п. Суть проверки подлинности документа состоит в идентификации его содержания и реквизитов (оттиски штампов и печатей, подписи, фрагменты рукописного текста и др.). Новые возможности в управлении потоками информации открывает технология автоматического аннотирования, или реферирования текстов. Ее суть состоит в том, что на основе синтаксического и семантического анализа текста система автоматически выделяет наиболее важные понятия, ключевые слова, а в наиболее развитом варианте - определяет и формулирует краткое содержание документа - аннотацию или реферат. Приведенный далеко не полный перечень задач и функций систем понимания документов дает представление о том, насколько более производительной и интересной может стать работа секретаря, менеджера, ученого и других специалистов. Широко распространенные коммерческие продукты решают только некоторые из перечисленных задач, прежде всего, распознавание текста, создание электронного документа путем комбинирования текста и графических фрагментов, анализ таблиц. В настоящее время лидерами белорусского и российского рынка систем такого назначения являются - CuneiForm (фирма Cognitive Technologies, Москва) и FineReader (фирма Bit, Москва). Обе системы сходны как по выполняемым функциям, так и по характеристикам. Поскольку пакет CuneiForm интегрирован в описываемые далее системы Евфрат и ME DMS, остановимся более детально на этом продукте. Система распознавания документов CuneiForm 96. Система распознавания документов CuneiForm осуществляет преобразование графического изображения документа в редактируемый текст различных форматов, воспринимаемых текстовыми процессорами, электронными таблицами, системами управления базами данных. Она распознает символы различных языков (русского, английского, французского, немецкого), напечатанные разными шрифтами. Причем, в пределах страницы, абзаца и даже отдельного слова могут быть использованы разнообразные шрифты. CuneiForm позволяет работать со смешанными текстами (русский и английский на одной странице) и сохранять графики с текстом в одном документе формата RTF (Rich Text Format). Важным преимуществом CuneiForm является возможность вводить табличные данные, распознавать их, соблюдая форматы оригинала для каждой ячейки таблицы. Результаты распознавания табличных данных могут записываться в форматах электронных таблиц (Excel, Lotus 1-2-3), экспортироваться в текстовые процессоры (MS Word, Write, WordPad), сохраняться в файле формата Fox pro или помещаться в базу данных через ODBC (Open Database Connectivity). Система сохраняет форматированные тексты оригинала, табуляцию, отступы и выравнивание, а также графику в черно-белом, полутоновом и полноцветных форматах. CuneiForm может распознавать курсивное, полужирное и полужирное курсивное начертание символов и обрабатывать многоколонный текст. В CuneiForm реализована функция проверки орфографии. Для ее реализации используются специальные программы и словари, установленные на компьютере или в сети. Редактирование текста возможно с помощью внутреннего текстового редактора CuneiForm, в окне которого отображается распознанный текст с выделенными ошибочными или неопределенными словами или символами, а также с помощью текстовых процессоров WinWord и Lotus AmiPro. CuneiForm обеспечивает пикетный режим работы, т.е. сканирование и распознавание множества страниц без участия оператора, а также имеется возможность заранее отсканировать некоторое количество страниц и указать системе список файлов, подлежащих распознаванию. Распознавание и запись в текстовые файлы будут выполнены автоматически. Система может обрабатывать файлы следующих графических форматов: BMP, GIF, JPEG, PCX, TIFF и др. Обычно процесс работы с CuneiForm разбивается на следующие шаги: сканирование; запись изображения (может отсутствовать); распознавание; просмотр текста; запись текста. Программы проверки и корректировки текста. Текст, введенный в компьютер с помощью клавиатуры либо программы распознавания, как правило, содержит разного рода ошибки - орфографические, грамматические, стилистические. Например, после ввода с клавиатуры текст может содержать свыше 2-5% ошибок, после оптического ввода, если вводимый документ был низкого качества, число ошибок иногда достигает 10% и более. С одной стороны, наличие ошибок затрудняет восприятие текста и не с лучшей стороны характеризует его автора, с другой, такой текст не может быть качественно переведен системой машинного перевода, правильно обработан в информационно. поисковой системе и т.п. Корректировка текста вручную требует определенной квалификации и больших затрат времени. Не случайно поэтому широкое распространение средств автоматической проверки правописания которые включаются сегодня практически во все текстовые процессоры, системы распознавания текста и другие программы, в которых тем или иным образом обрабатывается текст на естественном языке. Современные средства контроля и корректировки текста позволяют, как правило, обнаруживать и исправлять (автоматически либо полуавтоматически) две категории ошибок - орфографические (опечатки в словах) и грамматические (несогласование слов, неправильная расстановка знаков препинания, прописных и строчных букв и т.д.). Для исправления орфографических ошибок в большинстве программ применяется метод, который можно назвать моделированием ошибок. Выделяется 6 основных типов ошибок: слияние и разбиение слов, замена, пропуск, вставка и перестановка букв в слове. Если в слове произошла ошибка, например, замены (модель - модель), то подстановка вместо ошибочного символа всех символов алфавита приведет в конечном счете к нахождению корректного слова (корректным считается слово, содержащееся в словаре системы). Реализация метода сталкивается с двумя основными трудностями: локализация ошибок; анализ многократных ошибок. При проверке слова зачастую невозможно сделать однозначный вывод о месте, типе и кратности ошибки. Например, выявлено ошибочное слово "модер". Анализируя только однократные ошибки, получим следующее множество кандидатов: моде (ошибка вставки), модерн, (ошибка удаления), моден, модем, кодер, мохер (ошибка замены), все словоформы с началом модерн (ошибка разбиения слова). Как видно, ошибочная цепочка могла быть образована от различных слов, причем позиции ошибки различны. Для того, чтобы найти верный вариант исправления слова, необходимо осуществлять подстановку: а) всех букв алфавита; б) по всем позициям слова и в) по всем типам ошибок. Поскольку слово может содержать несколько ошибок различных типов, подстановка должна осуществляться многократно. Комбинации ошибок порождают резко возрастающее количество вариантов подстановок. К программам контроля и корректировки предъявляются ограничения по времени обработки, поэтому глубина подстановки ограничивается, как правило, кратностью 2-3, что в ряде случаев не позволяет найти верный вариант ошибочного слова. Другой особенностью орфографических ошибок является то, что многие опечатки приводят к корректным словам. Например, фраза "математическая модуль'' содержит ошибку, но слово модуль существует в словаре, и программа проверки правописания не может даже обнаружить такую ошибку: ее нахождения и исправление возможно только на основе сложного анализа всего предложения. Анализ грамматической корректности предложения основывается на применении множества правил языка (подобных изучаемым в средней школе). Программы грамматического контроля содержат сотни таких правил, но обнаружить и исправить все ошибки они не могут. Отметим, что программы проверки правописания (в процессоре Word функция Орфография - Spelling) и грамматической корректировки (функция Грамматика - Grammar) являются весьма полезными инструментами, но они не избавляют полностью от необходимости тщательного вычитывания и корректировки текста документа человеком. Указанные программы и необходимые для них словари поставляются со многими продуктами, такими как текстовые процессоры или программы оптического ввода и распознавания, а также существуют в виде отдельных приложений. Для русского языка это такие продукты, как ОРФО, Пропись, Lingvo Corrector. |