Программная система обработки и анализа изображенийРефераты >> Программирование и компьютеры >> Программная система обработки и анализа изображений
Содержание
Введение
Технические параметры
Возможности системы.
Аппаратное обеспечение.
Программное обеспечение.
Описание структуры системы и принципа ее работы
Описание метода
Описание программы
Структура базы для хранения эталонных символов
Текст программы
Введение
В настоящее время, с ростом числа персональных компьютеров, огромное количество информации вводится с бумажных носителей на магнитные диски компьютеров. Разумеется это очень утомительная работа. И было бы неплохо иметь в своем распоряжении программное средство, которое было бы способно воспринимать входное изображение документа, которое вообще говоря является картинкой, и преобразовывать его в текст, отбрасывая при этом все лишнии детали изображения
( такие как линии разметки, обрамления и т.п. ).
Этот вопрос волнует многие фирмы по разработке программного обеспечения и сейчас в мире разработано несколько программ для распознавания машинописного текста. Но это только начальный этап на пути решения данной задачи. Данные программные продукты распознают текст с довольно большой вероятностью ошибки при условии некачественного изображения. О том, чтобы распознавать рукописный текст пока даже не приходится и говорить.
Целью разработки данной программной системы является детальное изучение данного вопроса и создание алгоритма, позволяющего преобразовывать графическое изображение в текст. Единственное отличие данной системы от разработанных ранее это то, что распознавать предстоит иероглифы. Эти знаки имеют существенное отличие от привычной нам кириллицы и латинских символов. Уже одно то, что они состоят из множества различных узоров отбрасывает идею строить распознавание на апроксимировании изображения символа с помощью какой либо функции. Хотя здесь можно попробовать использовать фрактальные преобразования, с помощью которых можно описать любое сколь угодно сложное изображение. Но теория, описывающая применение данных преобразований является коммерческой тайной и является недоступной.
Технические параметры
Возможности системы.
Система обеспечивает ввод сканированного изображения текста из графического файла, записанного в одном из форматов: PCX, BMP, WMF, JPEG, GIF. Размер изображения не должен превышать 3000 х 3000 точек. Режим сканирования должен быть выбран так, чтобы размеры отдельного символа (иероглифа) не превышал 30 пикселов и был не менее 5 пикселов. Допускается наклон строк к горизонтали не более чем на 6°. Расстояние между отдельными строками текста не должно быть меньше 1/5 максимальной высоты иероглифа. Система обеспечивает разделение введенного текста на отдельные строки и на отдельные символы. Результатом работы является визуальное разделение текста на строки и символы, а также текстовый файл, содержащий координаты каждого выделенного символа текста в порядке выделения. При разделении символов система использует правило начертания иероглифов, в соответствии с которым отдельный иероглиф вписывается в более или менее правильный квадрат. Следовательно, не гарантируется, что тексты, начертание символов которых не соответствуют данному правилу, будут разбиваться на символы корректно.
Также в качестве дополнения к обработке изображения система способна выделять отдельно вертикальные и горизонтальные линии. Данная возможность может быть использована для анализа изображения по отдельным линиям.
Сделаны пробные эксперименты по афинным преобразованиям. Эти преобразования в будущем обещают дать много полезного в области обработки изображений.
Аппаратное обеспечение.
Для работы системы требуется:
1. IBM - совместимый персональный компьютер с процессором не ниже Intel80486sx33, объемом ОЗУ не менее 4 Мб.
2. Сканер любого типа.
Программное обеспечение.
1. Операционная оболочка Windows 95, либо Windows NT или Windows версии 3.1 или 3.11 в комплекте с MS-DOS версии не ниже 3.30.
2. Программное обеспечение для сканера, обеспечивающее возможность сохранения сканированного изображения в одном из форматов PCX, JPG, BMP, WMF.
Описание структуры системы и принципа ее работы
В качестве среды для разработки данной системы выбрана операционная оболочка Microsoft Windows. Это обусловлено тем, что Windows поддерживает работу с графическими изображениями на уровне разработчика приложений. Тем самым из работы исключается вопрос о кодировании своих средств по работе с графикой. Естественно скорость работы системы со стандартными графическими средствами много ниже, чем непосредственная запись в видеопамять, но на данном этапе работы вопрос упирается не в скорость.
Для разработки системы была выбрана среда программирования Borland Delphi производства фирмы Borland International® USA, California. Delphi представляет собой среду, поддерживающую визуальное проектирование приложений для Windows. При этом интерфейс пользователя создается путем комбинирования и редактирования стандартных компонентов (форм (окон), меню, полей ввода, статических текстов, списков различной формы, экранных кнопок и т.п.), имеющихся в стандартной библиотеке визуального конструктора. Среда визуального программирования выбрана потому, что она обеспечивает возможность максимально простого, быстрого и качественного создания стандартных фрагментов программы[1].
По сравнению с другими системами визуального программирования (Visual FoxPro, DBase for Windows, Microsoft Visual Basic, Microsoft Visual C++, Gupta SQLWindows и пр.) Delphi имеет следующие преимущества.
· Все вышеперечисленные системы являются интерпретаторами, то есть для выполнения созданных в них программ требуется загрузка модуля интерпретатора языка, либо псевдокомпиляторами, которые формируют программу в виде EXE-модуля, содержащего псевдокод программы (определенным образом закодированный текст) и модуль интерпретации, выполняющего этот псевдокод. В Delphi™ результатом генерации проекта является программа на языке Object Pascal™, который компилируется компилятором Borland Pascal 8.0™ в EXE - модуль, либо DLL - библиотеку. EXE - модуль содержит процессорный код и может быть запущен непосредственно из Windows™. DLL-библиотеку может использовать любое Windows™ - приложение, в том числе написанное на другом языке. Действительная компиляция обеспечивает значительно большее быстродействие и дает выигрыш по памяти и дисковому пространству (если учитывать ресурсы, потребляемые модулем интерпретации в интерпретирующих системах).
· В отличие от ряда систем (Visual FoxPro™, DBase for Windows™, Microsoft® Visual Basic™) Delphi™ обеспечивает возможность визуального конструирования не только интерфейса, но и ряда стандартных модулей программы, не отображаемых на экране. Кроме того, Delphi™ имеет стандартные средства создания собственных экранных и невидимых компонентов, что позволяет неограниченно расширять набор объектов, использование которых возможно в любом проекте и ничем не отличается от использования стандартных объектов библиотеки Delphi™.
· В Delphi™ доступны тексты программы, порожденной визуальным конструктором, причем изменения в них не влияют на возможность дальнейшей обработки их конструктором. Это дает возможность производить требуемую коррекцию работы объектов программы, если она не обеспечивается визуальным конструктором.