3.2 Интерфейс программы
Пользовательский интерфейс представлен главным окном приложения, со всеми элементами управления, необходимыми для отображения и обработки информации. Главная форма в режиме проектирования показана на рисунке 3.4.
Рисунок 3.4 – Главная форма приложения в режиме проектирования
3.3 Описание разработанных классовНиже представлен перечень классов разработанных в приложение с кратким описанием их назначения и описанием основных методов.
Form1 – класс, описывающий главную форму приложения, содержит методы обработки событий от элементов управления. Содержит элементы управления для отображения исходного изображения, сегментов изображения и результатов распознавания.
Segmentation – описывает процесс сегментации изображения.
Методы:
public static List<Bitmap> GetStrings(Bitmap text) – выделение растров, соответствующих строкам текста;
public static List<Bitmap> GetStringWords(Bitmap str) – сегментирование одной строки на слова;
public static List <Bitmap> GetWords(Bitmap text) – выделение слов из всего текста;
public static Bitmap TrimBitmap(Bitmap bmp) – обрезка белых полей вокруг изображения на битмапе.
Recognizer – класс, реализующий персептрон для распознавания образов.
Методы :
public void Teach(Bitmap b, int classindex) – обучение персептрона;
public string Recognize(Bitmap b) – распознавание изображения b;
public void SerializeParams() – сохранение параметров персептрона на диске;
public void DeserializeParams() – чтение параметров персептрона с диска;
public static Bitmap NormalizeBitmap(Bitmap b, Size sz) – подгонка битмапа b по размеру sz. На выходе бинаризованное изображение размера sz;
public static Bitmap InverseBitmap(Bitmap b) – инверсия цвета изображения b.
Требования к установленному ПО:
- .Net Framework 3.5
Целью проведения испытаний является проверка работоспособности (надежности) программы при различных условиях ее функционирования и настройках. Для демонстрации работоспособности программы необходимо провести ряд испытаний с различными начальными условиями.
Тестовые примеры выполнялись в среде операционной системы Windows 7 Ultimate при использовании процессора AMD Athlon 3600+ 1.9 ГГц, 1 Гб RAM и разрешении экрана 1280x1024.
Приложение подверглось критическому и углубленному тестированию.
При проведении критического тестирования не было выявлено ошибок и некорректной работы приложения.
4.1 Запуск приложенияДля запуска приложения необходимо запустить исполняемый файл WordSearcher.exe. Окно приложения после запуска показано на рисунке 3.4
Рисунок 3.4 – Главное окно приложения
Для начала работы необходимо загрузить исходное изображение, для чего необходимо нажать кнопку "Открыть". В диалоге выбора файла необходимо выбрать изображение. Окно программы после открытия исходного изображения представлено на рисунке 3.5
Рисунок 3.5 – Окно программы с открытым изображением
После открытия изображения становится активным кнопка "Сегментация", после нажатия на которую, текст на изображении разбивается на слова.
Результат сегментации представлен на рисунке 3.6.
Рисунок 3.6 – Результат сегментации
Перед непосредственным распознаванием текста необходимо произвести обучение персептрона, нажав кнопку "обучить", либо загрузить ранее сохраненные параметры, нажав кнопку "загрузить". Обучение персептрона осуществляется изображением содержащим слово "Указ", написанное разными шрифтами. После обучения, можно сохранить параметры персептрона в файл, нажав "сохранить", и прочитать их при следующем распознавании.
После обучения, либо загрузки параметров персептрона, можно производить распознавание изображений. Результат распознавания показан на рисунке 3.7.
Рисунок 3.7 – Результат распознавания
При углубленном тестировании также не было найдено ошибок. Интерфейс программы разработан таким образом, что пользователю на каждом этапе обработки изображения может выполнить только определенные действия, что значительно снижает риск появления ошибок выполнения.
Результат работы программы при загрузке не файла изображения представлен на рисунке 3.8.
Рисунок 3.8 – Результат работы приложения при неверно формате файла
В результате выполнения данного курсового проекта было разработано приложение, позволяющее распознавать слово "Указ" в тексте на изображении. Размеры изображения и шрифта текста может быть практически любым, что дает гибкие возможности для применения приложения.
Для распознавания применяется персептрон. Качество распознавания изображения зависит от количества предложенных образов для обучения и количество А-элементов. Количество поддерживаемых шрифтов зависит от шрифтов, которым написаны слова на изображениях для обучения.
Перед непосредственным распознаванием, как правило, необходимо выполнять сегментацию изображения. Сегментация является неотъемлемой частью при распознавании образов, в общем случае, и непосредственно в данном проекте, так как ее результатом являются изображения, содержащие только необходимые для распознания объекты (слова текста).
... 0.98; gotoxy(10,24); writeln('Press any key to continue...'); readkey; graphiki; readkey; closegraph; End. ПРИЛОЖЕНИЕ Б Текст программы распознавания символов Program Final_of_work; uses graph; const BiH=50; {-------высота картинки в пикселях------} BiW=160; {-------ширина картинки в ...
... Правильное понимание таблицы читателем невозможно без учета информации о взаимном расположении строк, колонок и ячеек таблицы. Поэтому при автоматизированном распознавании табличных форм необходимо в выходном документе сохранить то же взаимное расположение этих структурных табличных элементов, что и в исходной таблице. Строки и колонки таблиц могут иметь иерархическую структуру (рис. 3), причем ...
... случае присоединения к компьютерной системе сканера, в окне папки «Панель управления» появляется соответствующий значок, позволяющий производить настройку. Таким образом, в большинстве программ работа со сканером производится при посредстве специального диалогового окна, обеспечивающего непосредственное взаимодействие со сканером. После того как пользователь дает команду на сканирование документа ...
... с приглашением по запросу (в машинной графике)required parameter обязательный параметрrequired space обязательный пробел (в системах подготовки текстов)requirements specification 1. техническое задание 2. описание требований к программному средствуrerun перезапуск, повторный запускreschedule переупорядочивать очередь (о диспетчере операционной системы)reschedule interval период переупорядочения ...
0 комментариев