Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Мой бакалаврский опус.pdf
Скачиваний:
10
Добавлен:
27.03.2015
Размер:
1.29 Mб
Скачать

Государственное образовательное учреждение высшего профессионального образования «Нижегородский государственный университет

им. Н.И. Лобачевского»

Факультет вычислительной математики и кибернетики

Кафедра математического обеспечения ЭВМ

Направление «Информационные технологии»

ВЫПУСКНАЯ КВАЛИФИКАЦИОННАЯ РАБОТА БАКАЛАВРА

Тема:

«Классификация рукописных символов многослойными персептронами»

Допущена к защите:_______________

Заведующий кафедрой:

профессор, д.ф.-м.н. Стронгин Р. Г. «___»__________20___года

Выполнил: студент группы 8409 Решетников Александр Николаевич

Подпись

Научный руководитель:

профессор, д.т.н. Турлапов В. Е. Подпись

Нижний Новгород

2010

СОДЕРЖАНИЕ

 

Введение.............................................................................................................................................

3

1. Обзор основных подходов............................................................................................................

5

1.1. Искусственные нейронные сети............................................................................................

6

1.2. Обучающееся векторное квантование..................................................................................

7

1.3. Метод опорных векторов.......................................................................................................

8

2. Модели, методы и алгоритмы, положенные в основу разработки программной системы..

10

2.1. Формальная постановка задачи...........................................................................................

10

2.2. Основные этапы решения поставленной задачи................................................................

11

2.3. Предварительная обработка изображения .........................................................................

12

2.4. Признаковое описание рукописного символа....................................................................

14

2.5. Обучение регулярного многослойного персептрона ........................................................

16

2.6. Применение решающего правила.......................................................................................

25

3. Описание реализации программной системы...........................................................................

26

3.1. Структура программной системы.......................................................................................

26

3.2. Описание основных классов................................................................................................

27

3.3. Организация пользовательского интерфейса.....................................................................

30

3.3.1. Вспомогательное приложение......................................................................................

30

3.3.2. Основное приложение...................................................................................................

35

Примеры решения задачи...............................................................................................................

42

Заключение.......................................................................................................................................

44

Список литературы..........................................................................................................................

45

Приложение А. Исходные коды базовых компонентов программной системы.......................

46

А.1. Классы для поддержки работы с растровыми изображениями.......................................

46

А.2. Классы для поддержки функционирования многослойного персептрона.....................

60

2

Введение

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

Несмотря на то, что исследованием проблемы распознавания рукописного текста начали заниматься сравнительно давно (с 70-х годов XX века), до сих пор разработчики программного обеспечения в этой области сталкиваются с огромным количеством трудностей. Эти трудности связаны как с многообразием почерков разных людей, так и с множеством вариантов начертания одного и того же символа в рамках почерка конкретного человека.

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

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

Если системы, распознающие рукописные символы интерактивно (PenReader, CalliGrapher и др.), достаточно эффективно справляются со своей задачей, то системы, решающие задачу в рамках второго подхода, имеют невысокую точность распознавания (в среднем 70-75%), их намного меньше по сравнению с системами первой группы и они очень дорогие (из них наиболее распространёнными на сегодняшний день являются FineReader и OmniPage). Поэтому разработка алгоритмов и методов распознавания ранее написанного текста или отдельных символов (то есть в пассивном режиме) имеет широкую практическую

3

значимость и является актуальной задачей при совершенствовании систем электронного документооборота.

Целью данной работы является разработка и апробация программной системы, способной к распознаванию рукописных символов на изображениях, представленных файлами в определённом графическом формате. Основная часть работы состоит из 3 разделов. В первом разделе приводится краткий обзор основных подходов и методов, применяемых для решения задачи распознавания рукописных символов, и аргументация в пользу выбора подхода, используемого в данной работе. Во втором разделе излагаются конкретные модели, методы и алгоритмы, которые были применены для разработки программной системы. В третьем разделе приводится описание разработанных приложений.

4

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]