Проектирование приложения на языке С# в среде Microsoft Visual Studio 2008: составление алгоритмов сегментации текста документа и распознавания слова "Указ" в нем, создание архитектуры и интерфейса программного обеспечения, описание разработанных классов.
Распознавание речи и рукописного текста значительно упрощает взаимодействие человека с компьютером, распознавание печатного текста используется для перевода документов в электронную форму. Реализация методов распознавания необходима в автоматизированных системах, предназначенных для использования в криминалистике, медицине, военном деле. Например, на современных заводах контроль качества производимой продукции зачастую производят с использованием систем распознавания, которые отсеивают брак. Однако, возможности интеллектуального анализа изображений с помощью компьютеров оставляют желать лучшего. Задачей распознавания изображений является применение методов, позволяющих либо получить некоторое описание изображения, поданного на вход системы, либо отнести это изображение к некоторому определенному классу.Согласно заданию к курсовому проекту необходимо спроектировать приложение, реализованное на языке C# в среде разработки Microsoft Visual Studio 2008, реализующее распознавание слова "Указ" на изображении документа. Текст документа должен быть написан на белом фоне, черным шрифтом. Приложение должно выполнять следующие задачи: 1.Процесс сегментации текста состоит из двух этапов: выделение строк текста и выделение слов в строках. При проходе запоминаются вертикальные координаты всех полностью белых полос на изображении (рисунок 2.1). Процесс поиска слов в строке заключается в анализировании вертикальных полос на изображении строки.Персептрон построен по схеме "Несколько сумматоров". А-элементы производят алгебраическое суммирование сигналов, поступивших на их входы, и полученную сумму сравнивают с одинаковой для всех А-элементов величиной ?. Если сумма больше ?, А-элемент возбуждается и выдает на выходе сигнал, равный единице. Если сумма меньше ?, А-элемент остается невозбужденным и выходной его сигнал равен нулю. Таким образом, выходной сигнал j-го ?-элемента: yj = где величина rij принимает значение 1, если i-й рецептор подключен ко входу j-го ?-элемента со знаком плюс; и значение-1, если рецептор подключен со знаком минус, и значение 0, если i-ый рецептор к j-му ?-элементу не подключается (j = 1, 2, …, m, где m - число ?-элементов).Программа написана как проект Windows Forms Application, т.е. windows-приложение, графический интерфейс которого представлен формами и диалоговыми окнами. Структура разработанного проекта представлена на рисунке 3.1.Пользовательский интерфейс представлен главным окном приложения, со всеми элементами управления, необходимыми для отображения и обработки информации.Ниже представлен перечень классов разработанных в приложение с кратким описанием их назначения и описанием основных методов. Form1 - класс, описывающий главную форму приложения, содержит методы обработки событий от элементов управления. Содержит элементы управления для отображения исходного изображения, сегментов изображения и результатов распознавания. Segmentation - описывает процесс сегментации изображения. Методы: public static List GETSTRINGS(Bitmap text) - выделение растров, соответствующих строкам текста;Для демонстрации работоспособности программы необходимо провести ряд испытаний с различными начальными условиями. Тестовые примеры выполнялись в среде операционной системы Windows 7 Ultimate при использовании процессора AMD Athlon 3600 1.9 ГГЦ, 1 Гб RAM и разрешении экрана 1280x1024.Окно приложения после запуска показано на рисунке 3.4 Для начала работы необходимо загрузить исходное изображение, для чего необходимо нажать кнопку "Открыть". Окно программы после открытия исходного изображения представлено на рисунке 3.5 После открытия изображения становится активным кнопка "Сегментация", после нажатия на которую, текст на изображении разбивается на слова. Перед непосредственным распознаванием текста необходимо произвести обучение персептрона, нажав кнопку "обучить", либо загрузить ранее сохраненные параметры, нажав кнопку "загрузить".В результате выполнения данного курсового проекта было разработано приложение, позволяющее распознавать слово "Указ" в тексте на изображении. Качество распознавания изображения зависит от количества предложенных образов для обучения и количество А-элементов.using System.Windows.Forms; {case FORMSTATE.Empty: BUTTONOPEN.Enabled = true; case FORMSTATE.Open: BUTTONOPEN.Enabled = true; case FORMSTATE.Segmented: BUTTONOPEN.
План
СОДЕРЖАНИЕ
ВВЕДЕНИЕ
1. ПОСТАНОВКА ЗАДАЧИ
2. ОПИСАНИЕ ИСПОЛЬЗОВАННЫХ АЛГОРИТМОВ
2.1 Алгоритм сегментации текста
2.2 Алгоритм распознавания слова. Персептрон
3. РАЗРАБОТКА И РЕАЛИЗАЦИЯ ПО
3.1 Архитектура программы
3.2 Интерфейс программы
3.3 Описание разработанных классов
4. ТЕСТИРОВАНИЕ ПО
4.1 Запуск приложения
ВЫВОДЫ
СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ
ПРИЛОЖЕНИЕ A ЛИСТИНГ ПРОГРАММЫ
ОПИСЬ ЛИСТОВ ГРАФИЧЕСКОЙ ЧАСТИ
Вывод
В результате выполнения данного курсового проекта было разработано приложение, позволяющее распознавать слово "Указ" в тексте на изображении. Размеры изображения и шрифта текста может быть практически любым, что дает гибкие возможности для применения приложения.
Для распознавания применяется персептрон. Качество распознавания изображения зависит от количества предложенных образов для обучения и количество А-элементов. Количество поддерживаемых шрифтов зависит от шрифтов, которым написаны слова на изображениях для обучения.
Перед непосредственным распознаванием, как правило, необходимо выполнять сегментацию изображения. Сегментация является неотъемлемой частью при распознавании образов, в общем случае, и непосредственно в данном проекте, так как ее результатом являются изображения, содержащие только необходимые для распознания объекты (слова текста).
Список литературы
1. Microsoft Developer Network (MSDN) [Электрон. ресурс]. ? Режим доступа: http://msdn.ru/
2. Ковалева И.Л., "Алгоритмы обработки изображений", БНТУ, 2007
Вы можете ЗАГРУЗИТЬ и ПОВЫСИТЬ уникальность своей работы