Электронная библиотека диссертаций и авторефератов России
dslib.net
Библиотека диссертаций
Навигация
Каталог диссертаций России
Англоязычные диссертации
Диссертации бесплатно
Предстоящие защиты
Рецензии на автореферат
Отчисления авторам
Мой кабинет
Заказы: забрать, оплатить
Мой личный счет
Мой профиль
Мой авторский профиль
Подписки на рассылки



расширенный поиск

Модели и алгоритмы распознавания графических образов на основе нечетких нейронных сетей Мищенко, Вадим Анатольевич

Модели и алгоритмы распознавания графических образов на основе нечетких нейронных сетей
<
Модели и алгоритмы распознавания графических образов на основе нечетких нейронных сетей Модели и алгоритмы распознавания графических образов на основе нечетких нейронных сетей Модели и алгоритмы распознавания графических образов на основе нечетких нейронных сетей Модели и алгоритмы распознавания графических образов на основе нечетких нейронных сетей Модели и алгоритмы распознавания графических образов на основе нечетких нейронных сетей Модели и алгоритмы распознавания графических образов на основе нечетких нейронных сетей Модели и алгоритмы распознавания графических образов на основе нечетких нейронных сетей Модели и алгоритмы распознавания графических образов на основе нечетких нейронных сетей Модели и алгоритмы распознавания графических образов на основе нечетких нейронных сетей Модели и алгоритмы распознавания графических образов на основе нечетких нейронных сетей Модели и алгоритмы распознавания графических образов на основе нечетких нейронных сетей Модели и алгоритмы распознавания графических образов на основе нечетких нейронных сетей
>

Диссертация - 480 руб., доставка 10 минут, круглосуточно, без выходных и праздников

Автореферат - бесплатно, доставка 10 минут, круглосуточно, без выходных и праздников

Мищенко, Вадим Анатольевич. Модели и алгоритмы распознавания графических образов на основе нечетких нейронных сетей : диссертация ... кандидата технических наук : 05.13.17 / Мищенко Вадим Анатольевич; [Место защиты: Воронеж. гос. ун-т].- Воронеж, 2013.- 136 с.: ил. РГБ ОД, 61 13-5/1404

Содержание к диссертации

Введение

Глава I. Современные модели, методы и алгоритмы распознавания образов ..4

1.1 Интеллектуальные системы распознавания образов 9

1.2. Обзор существующих моделей, методов и алгоритмов компьютерного зрения 10

1.3 Нейронные сети - как инструмент в задачах распознавания 11

1.4 Обзор существующих методов распознавания образов 12

1.5 Эволюционное моделирование для настройки нейронной нечеткой сети в задачах распознавания образов 19

Выводы 21

Глава II. Распознавание символов с помощью нейронных сетей 23

2.1 Алгоритм предварительной обработки изображения 23

2.2 Бинаризация 24

2.3 Сегментация изображения 30

2.4 Нейросетевые технологии 34

2.4.1 Многослойный персептрон 34

2.4.2 СетьКохонена 37

2.4.3 СетьХемминга 41

2.4.4 Нечеткие нейронные сети. Сеть Ванга-Менделя 44

2.4.5 Оценка эффективности работы нейронных сетей 51

Выводы 52

Глава III. Настройка весовых коэффициентов, с помощью модифицированного генетического алгоритма 53

3.1 Понятие генетического алгоритма 53

3.2 Адаптация алгоритма к решаемой задаче 54

Выводы 70

Глава IV. Описание программного продукта 71

4.1 Интерфейс пользователя 71

4.2 Взаимодействие функциональных блоков 79

4.3 Технологический процесе 89

Выводы 90

Заключение 91

Список используемой литературы 92

Введение к работе

Актуальность темы. Актуальность темы исследования определяется внедрением компьютерных технологий и систем искусственного интеллекта в различные сферы деятельности человека. Эти исследования опираются на фундаментальные основы, такие как распознавание образов, нейронные сети, генетические алгоритмы.

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

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

Автоматизация обработки почтовых индексов подразумевает разработку программно-технического комплекса, осуществляющего распознавание индекса и дальнейшую обработку почтового отправления. В основе таких комплексов лежат системы распознавания образов. Одним из наиболее эффективных инструментов для распознавания образов являются системы, построенные на искусственных нейронных сетях. Наиболее эффективным инструментом обучения нейронных сетей является генетический алгоритм, т.к. при такой организации обучения осуществляется одновременный поиск по множеству направлений улучшения решения. В настоящее время известно большое количество нейронных сетей с различными структурами (Хайкин С., Аксенов С.В.). В том числе, реализованы, так называемые, нечеткие нейронные сети (Островский С., Круглов В.В.), что дает разработчикам мощный инструмент для реализации программных комплексов по распознаванию образов, в том числе и для реализации программ по распознаванию почтовых индексов, т.к. такие сети показывают более высокую эффективность по сравнению с обычными искусственной нейронной сетью.

Работа выполнялась на кафедре Информатики и методики преподавания математики Воронежского государственного педагогического университета в рамках Договора № ELSP/B1/C/016/10-06 от 27 апреля 2006 г. «Разработка программ и учебно-методических материалов для подготовки студентов педагогических вузов в области использования цифровых образовательных ресурсов»(2005-2008 гг.).

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

В рамках реализации поставленной цели необходимо решить следующие задачи:

  1. разработка модификации алгоритма формирования бинарного изображения с бумажного носителя с помощью декомпозиции задачи распознавания графической информации;

  2. разработка модификации модели нечеткой нейронной сети для адаптации ее структуры к задаче распознавания образов;

  3. разработка модификации генетического алгоритма для обучения нейронных сетей с целью сокращения затрачиваемого для этого времени;

  4. реализация программного комплекса, включающего в себя описанные выше алгоритмы и методы и проведение вычислительного алгоритма для организации работы почтовой службы.

Методы исследования. Для решения указанных задач использовались методы искусственного интеллекта, методы распознавания образов, искусственных нейронных сетей, модели и методы нечеткой логики, методы обработки цифровых изображений, эволюционное моделирование.

Научная новизна. В рамках исследования получены следующие результаты, характеризующиеся научной новизной:

    1. Модифицированный алгоритм, позволяющий преобразовать графическую информацию с бумажного носителя в бинарное цифровое изображение, отличающийся технологией захвата изображения с использованием web-камеры и позволяющий провести его анализ.

    2. Модифицированная модель нечеткой нейронной сети Ванга - Менделя, отличающаяся организацией десяти выходов из сети и, позволяющая увеличить скорость обучения.

    3. Генетический алгоритм обучения нейронной сети, отличающийся использованием специального оператора мутации в виде аддитивной свертки двух операторов мутации, и, позволяющий сократить время обучения сети.

    4. Структура программного комплекса, обеспечивающего построение нейро-нечетко-генетической системы распознавания образов, позволяющего осуществлять on-line распознавание в реальном времени и проводить анализ полученной информации.

    Теоретическая и практическая ценность работы. На основе исследования были предложены модификации алгоритмов формирования и обучения нечеткой нейронной сети. Была реализована модификация модели нечеткой нейронной сети Ванга - Менделя, обучение которой производилось с помощью измененного генетического алгоритма.

    Практическая ценность результатов работы состоит в разработанном программном комплексе, позволяющем в значительной степени облегчить работу оператора почтовой службы по сортировке письменной корреспонденции. Результаты работы внедрены и используются в Обособленном структурном подразделении Лискинский почтамт Управления Федеральной почтовой связи Воронежской области - филиал Федерального государственного унитарного предприятия «Почта России». Программа «Сортировочный участок» зарегистрирована в Федеральном институте промышленной собственности (ФИПС) (свидетельство №2012610838 от 19.01.12г.).

    Основные результаты, выносимые на защиту. На защиту выносятся следующие результаты, полученные в процессе исследований:

        1. модифицированный алгоритм предварительной обработки изображений;

        2. генетический алгоритм с использованием особого оператора мутации;

        3. модифицированная модель сети Ванга - Менделя;

        4. программный комплекс, реализующий нейро-нечетко-генетическую систему распознавания.

        Апробация работы. Основные результаты, представленные в диссертационной работе, докладывались и обсуждались на Математической конференции молодых преподавателей и студентов Лискинского филиала ВГУ (Воронеж, 2007);на научных сессиях Федерального государственного бюджетного образовательного учреждения высшего профессионального образования «Воронежский государственный педагогический университет» 2008- 2009г.г.; на Международной конференции «Современные проблемы механики и прикладной математики» (Воронеж, 2007); на Всероссийской конференции «Современные методы теории краевых задач» (школа «Понтрягинские чтения», 2010); на XVIII Всероссийской Школе-Коллоквиуме по стохастическим методам и XII Всероссийском симпозиуме по прикладной и промышленной математике (Весенняя сессия) (Казань, 2011).

        Публикации. Результаты диссертации опубликованы в 11 работах. Списку ВАК соответствуют работы [1-4]. Получено одно свидетельство государственной регистрации программы [11].

        Личный вклад автора. Основные результаты исследований по теме диссертации были получены лично автором и опубликованы в соавторстве с научным руководителем. Научным руководителем определены основные направления исследования.

        Структура и объем диссертации. Диссертация состоит из введения, 4 глав, разбитых на пункты, заключения, списка используемой литературы из 107 наименований и приложения. Общий объем диссертации - 134 страницы, приложение на 31 стр. Работа содержит 40 рисунков.

        Обзор существующих моделей, методов и алгоритмов компьютерного зрения

        Разработка систем искусственного интеллекта - одно из самых молодых и перспективных направлений современной информатики. К области искусственного интеллекта относятся такие способы обработки информации, которые не могут быть выполнены с помощью простых алгоритмических методов. Области применения систем искусственного интеллекта с каждым днем расширяются, в данный момент эти системы применяются в идентификации изображений, понимании текстов, распознавании речи, составлении расписаний, постановке медицинских диагнозов и т.д. Интеллектуальной считается система, которая способна моделировать на компьютере мышление человека. В настоящее время искусственный интеллект - это инструмент, позволяющий человеку правильно принимать решения в некоторых слабоструктурированных областях. Способность распознавать считается основным свойством человека, поэтому распознающие системы - это интеллектуальные системы.

        При этом теорию искусственного интеллекта (ИИ) разделяют на сильный и слабый (ИИ) [2]. Теория сильного ИИ предполагает, что компьютеры имеют мыслительный процесс не обязательно подобный человеческому. Предполагается, что мышление - это формализованный процесс, а разумность машины выражается в эквивалентности операций ее и человеческого мозга. Сильный искусственный интеллект основывается на знаниях, разумность компьютера в теории сильного ИИ предполагает прохождение теста Тьюринга [2,3,69]. Теория слабого искусственного интеллекта полагает, что возможности компьютера ограничены решением некоторых задач человеческого мозга. Так, к системам слабого ИИ можно отнести практически весь комплекс средств автоматизации производства (манипуляторы, счетчики, системы контроля качества, системы поддержки принятия решений и др.), безопасности (детекторы движения, датчики объема) [69]. Слабоинтеллектуальные системы тесно связаны с деятельностью человека, поэтому для каждого органа чувств разрабатываются искусственные аналоги (сенсоры, камеры, системы распознавания рукописного ввода и речи). Применительно к слабому ИИ, моделями человеческого зрения можно считать системы, построенные с использованием камер [69]. К интеллектуальной составляющей компьютерного зрения можно отнести алгоритмы, связанные с подготовкой изображения и получающие новую информацию

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

        При построении систем распознавания образов используются следующие принципы: принцип общности свойств и принцип кластеризации. Для реализации основных принципов построения интеллектуальных распознающих систем существуют три основных метода: эвристический, математический и лингвистический (синтаксический). Примеры этих систем подробно описаны в [59].

        В настоящий момент существует много бесплатных программ в области компьютерного зрения, таких как библиотека Zitnick-Kanade [6, 69]. Адаптация подобных библиотек к новым задачам является очень сложной проблемой, иногда просто не решаемой, поэтому разработчики принимают решение о самостоятельной реализации известных и своих алгоритмов. Библиотека OpenCV является сейчас стандартом систем компьютерного зрения. В книгах по компьютерному зрению Д.Форсайт и Ж.Понс, а также Л.Шапиро и Дж.Стокман [1] рассматривают актуальные на настоящий момент модели камер. Искажения характерны для любой оптической системы, к ним относится дисторсия, яркость и другие геометрические искажения. Особенность устройства ПЗС (прибор с зарядовой связью)-матрицы, которая является проекционной поверхностью для снимаемой сцены, приводит к дополнительным искажениям. При моделировании камер ограничиваются моделями оптической системы.

        Попытки формализовать понятие цифрового зрения сделаны в книгах Л.Шапиро и Дж. Стокмана [1, 93]. Разрабатываются модели последовательности изображений, получаемых с камеры. В.Крашенинников последовательность изображений трактует как дискретную размерность случайного поля, у него одно измерение соответствует номеру изображения в последовательности, а два измерения совпадают с измерениями изображения. В качестве модели последовательности изображений можно считать поток событий, который описывает вероятностные характеристики наступления очередного изображения, каждому событию ставится соответствие момент его наступления. Однако, на настоящий момент существуют только попытки включить систему компьютерного зрения в математическую модель решения какой-либо прикладной задачи в качестве модуля.

        Данная диссертационная работа призвана предложить алгоритм и его реализацию для компьютерного зрения и решения с его помощью прикладной задачи.

        Нейронная сеть - это громоздкий распределенный процессор, состоящий из элементарных единиц обработки информации, накапливающих экспериментальные знания и представляющих их для последующей обработки [59]. Искусственные нейронные сети представляют новую технологию, связанную с множеством дисциплин: математика, физика, нейрофизиология, статистика, компьютерные науки и техника. Человеческий мозг способен организовать свои структурные компоненты, называемые нейронами, так, чтобы они могли выполнять конкретные задачи (распознавание образов) во много раз быстрее, чем самые быстродействующие компьютеры. Человеческое зрение выполняет задачу обработки информации, мозг последовательно выполняет ряд задач распознавания, а выполнение аналогичных задач на компьютере может занять несколько дней. В общем случае нейронная сеть представляет собой машину, моделирующую способ обработки мозгом конкретной задачи [59]. При решении задач распознавания проблема состоит в указании принадлежности входного образа, представленного вектором или матрицей признаков, одному или нескольким классам, предварительно определенным. В последнее время рассматриваются нечеткие нейронные сети, в которых соединены возможности нечеткости и нейронных сетей. Однако они сложны в реализации и не существует алгоритмов их компьютерной реализации. Данная диссертационная работа призвана ликвидировать этот пробел, в ней будет представлен достаточно удачный алгоритм реализации нечеткой нейронной сети.

        Сегментация изображения

        Среди множества различных видов искусственных нейронных сетей, существуют такие сети, которые не возможно отнести ни к одной из категорий по типу обучения: ни к сетям, обучающимся без учителя, ни к сетям, обучающимся с учителем. В таких сетях настройка весов производится только один раз- перед началом работы на реальном множестве. Настройка производится на основе анализа данных о входном множестве, а собственно процесс обучения сводится к единовременному расчету весовых коэффициентов. Таким образом, с одной стороны мы получаем заведомо истинную информацию на входе и сеть как бы проходит одну эпоху обучения, с другой стороны, данное изменение весовых коэффициентов не является обучением, т.к. изменив весовые коэффициенты один раз, сеть больше не обращается к обучающему множеству. Примером сети с такой архитектурой является сеть Хемминга [85].

        Пусть т- число образов, которые может запоминать сеть. Сеть Хемминга состоит из двух слоев, в каждом из которых по m нейронов. В сети находится п входов, каждый из которых соединен со всеми нейронами первого слоя. Величины, подаваемые на вход сети, являются биполярными, т.е. принадлежат множеству {-1;1}. Структура второго слоя представляет собой слой нейронов, связанных друг с другом отрицательными обратными связями. Единственной положительной обратной связью каждый нейрон связан с собственным выходом.

        Рассмотрим принцип функционирования данной сети. Для этого ведем понятие расстояния Хемминга, под которым будем понимать число отличающихся битов в двух бинарных векторах. Основная идея работы сети Хемминга состоит в оценке величины, обратной расстоянию Хемминга от тестируемого образа до всех эталонных образцов. При анализе входного образа, сеть должна найти эталонный образец с минимальным расстоянием Хемминга до неизвестного входного сигнала и инициализировать единственный выход сети, соответствующий одному из эталонных образцов.

        На входы сети подается неизвестный вектор X, исходя из которого, рассчитываются состояния (выходы) нейронов первого слоя, которые передаются на вход второго слоя.

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

        Принцип нечеткой логики достаточно давно используется для решения задач, в которых исходные данные являются слабо формализованными или же ненадежными. Основными преимуществами сетей с такой структурой являются: - удобство представления информации: описание постановки задачи и условий производится на языке близком к естественному; универсальность: согласно теореме нечеткой аппроксимации, любая математическая модель может быть аппроксимирована системой, построенной на нечеткой логике; - эффективность: ряд теорем, подобных теоремам о полноте для искусственных нейронных сетей, показывают высокую эффективность работы таких сетей.

        Однако, такой организации нейронных сетей присущ и ряд недостатков: - исходный набор нечетких правил формируется человеком, что не всегда является объективным, а иногда неполным или даже противоречивым; - вид и параметры данных, связывающих вход и выход, также определяются субъективно и не всегда отражают действительность.

        Используемый в различных видах систем, модель на основе нечеткой логики представляет собой базу знаний, построенную специалистами предметной области, как множество нечетких правил вида:

        На этих принципах построено большое количество сетей, рассмотрим подробнее одну из них- сеть Ванга-Менделя [62]. Структура такой сети представляет собой четырехслойную нейронную сеть, в которой первый слой выполняет фазификацию входных переменных, второй - агрегирование значений активации условия, третий (линейный) - агрегирование М правил вывода (первый нейрон) и генерацию нормализующего сигнала (второй нейрон), тогда как состоящий из одного нейрона выходной слой осуществляет нормализацию, формируя выходной сигнал.

        Адаптация алгоритма к решаемой задаче

        Рассмотрим подробнее работы каждого из этих модулей. Модуль работы с web-камерой. В основу устройства для считывания почтовых индексов с конвертов, как оптимальное и наиболее доступное решение, была выбрана обычная web-камера. Для работы с web-камерой по средствам Delphi, было принято решение об использовании пакета DSPack-компонент для работы с мультимедиа объектами по средствам MS Direct Show и DirectX технологий. Возможности MS Direct Show можно разделить на три основных области, которые определяются тремя основными фильтрами MS Direct Show- TFilterGraph, TFilter и TVideoWindows.

        Структара компонентов пакета DSPack. Первый фильтр TFilterGraph служит для сбора данных, т.е. он служит как бы оболочкой менеджера графа MS Direct Show. Таким образом, данный компонент используется для построения и управления графом, для управления синхронизацией, уведомлениями о событиях и других аспектах контроля графа, к которым можно отнести управление сбором данных от микрофона, управление цифровой видеокамерой или видеомагнитофоном, а так же обрабатывать видео- и аудиопоток с web-камер. Так же, технология MS Direct Show позволяет открывать и обрабатывать файлы в режиме эмуляции «оперативного» источника, что дает возможность обрабатывать не только видео потоки с камер, но и видео, предварительно сохраненное в файл. Следующий компонент на котором стоит заострить внимание - это TFilter, который предоставляет методы управления фильтром. В приложении данный компонент используется для запроса информации о фильтре, но не реализует возможность изменения состояния фильтра (каждый фильтр может находится в запущенном, остановленном или приостановленном состоянии). С помощью этих функций, становятся доступными различные операции с видео: конвертирование в другие форматы, преобразование в черно-белое изображение, добавление эффектов к аудио потоку и т.п. Фильтры могут использоваться последовательно один за другим, пока не будет достигнут требуемый эффект. Кроме того, есть возможность объединения нескольких потоков в один, что позволяет скажем накладывать музыку на видео. Третьим крупным компонентом технологии MS Direct Show, является компонент TVideoWindow. Данный компонент используется для отображения видео, которое проходит через граф фильтров, так же существует возможность записи созданного видео потока в файл.

        Таким образом, технология MS Direct Show дает достаточно широкие возможности для обработки видео. В частности, при реализации данного проекта в модуле работы с web-камерой активно использовались возможности MS Direct Show при построения видео потока, обращении через соответствующие интерфейсы к доступным в системе web-камерам, захвате отдельных кадров из видео потока и трансляции на экран самого видео потока. Из схемы взаимодействия функциональных модулей видно, что модуль работы с web-камерой взаимодействует с файлом настроек Config.cam, при чем это связь носит и обратный характер.

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

        Для наиболее быстрой и эффективной работы алгоритма распознавание очень важным моментом является точное позиционирование пользователем конверта относительно камеры. Для решения этой проблемы воспользуемся программой ManyCam Virtual Webcam. Данная программа предоставляет достаточно широкий диапазон настроек камеры, кроме того, с помощью нее на видео можно накладывать различные эффекты. Именно эта особенность программы и будет использована нами. Одним из видов эффектов программа предоставляет возможность наложения на поток видео статических картинок, что как раз требуется нам для решения поставленной задачи. С помощью графического редактора, был создан файл Ramka.gif, представляющий собой несколько прямоугольников, определяющих границы расположения символов. Формат GIF позволяет сохранять графические объекты с произвольной глубиной цвета, что позволяет, в том числе сохранять объекты с прозрачным фоном. Используя эту особенность, был создан графический файл с прозрачным фоном (рис. 4.15).

        Затем, данный файл был импортирован в программу ManyCam Virtual Webcam, как эффект. После настройки программы ManyCam Virtual Webcam (выбора нужной камеры, установки разрешения 640x480 и добавления импортированного эффекта в поток видео), пользователь запускает программный продукт «Сортировочный участок» и, выбрав из списка доступных камер, камеру ManyCam Video Source (это виртуальная камера, которая будет доступна после установки программы ManyCam), получает видео с наложение эффекта границ каждого символа, что значительно упрощает процесс позиционирования изображения индекса на экране (рис. 4.16). После того, как получено видео с изображением конверта, происходит захват одного кадра, конвертирование его в графический формат и передача в модуль распознавания символов. Здесь в первую очередь производится преобразование цветного изображения в оттенки серого (рис. 4.17)

        Взаимодействие функциональных блоков

        Из схемы взаимодействия функциональных модулей видно, что модуль работы с web-камерой взаимодействует с файлом настроек Config.cam, при чем это связь носит и обратный характер.

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

        Для наиболее быстрой и эффективной работы алгоритма распознавание очень важным моментом является точное позиционирование пользователем конверта относительно камеры. Для решения этой проблемы воспользуемся программой ManyCam Virtual Webcam. Данная программа предоставляет достаточно широкий диапазон настроек камеры, кроме того, с помощью нее на видео можно накладывать различные эффекты. Именно эта особенность программы и будет использована нами. Одним из видов эффектов программа предоставляет возможность наложения на поток видео статических картинок, что как раз требуется нам для решения поставленной задачи. С помощью графического редактора, был создан файл Ramka.gif, представляющий собой несколько прямоугольников, определяющих границы расположения символов. Формат GIF позволяет сохранять графические объекты с произвольной глубиной цвета, что позволяет, в том числе сохранять объекты с прозрачным фоном. Используя эту особенность, был создан графический файл с прозрачным фоном (рис. 4.15).

        Затем, данный файл был импортирован в программу ManyCam Virtual Webcam, как эффект. После настройки программы ManyCam Virtual Webcam (выбора нужной камеры, установки разрешения 640x480 и добавления импортированного эффекта в поток видео), пользователь запускает программный продукт «Сортировочный участок» и, выбрав из списка доступных камер, камеру ManyCam Video Source (это виртуальная камера, которая будет доступна после установки программы ManyCam), получает видео с наложение эффекта границ каждого символа, что значительно упрощает процесс позиционирования изображения индекса на экране (рис. 4.16). После того, как получено видео с изображением конверта, происходит захват одного кадра, конвертирование его в графический формат и передача в модуль распознавания символов. Здесь в первую очередь производится преобразование цветного изображения в оттенки серого (рис. 4.17)

        Затем проводится бинаризация изображения, т.е. преобразование изображения таким образом, чтобы оно состояло только из белых и черных точек (рис. 4.18). Промежуточные же оттенки будут относиться к черным или белым исходя из яркости по заранее определенному порогу. Величина этого порога будет указывать на интенсивность черного или белого цвета.

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

        Приведенные матрицы каждого символа выводятся в нижней части панели на соответствующую панель. Затем массив матриц передается в процедуру распознавания, где поочередно происходит анализ каждого символа.

        В процессе работы модуль распознавания тесно взаимодействует с модулем работы с весовой матрицей. Данный программный блок служит для обработки операций над весовой матрицей. Так при первом запуске программы, если не будет обнаружен файл с весовыми коэффициентами Matrix.w, модулем будет сгенерирована весовая матрица со случайными величинами. Кроме того, этот модуль реализует возможность сохранения рабочей матрицы в отдельный файл, что может быть использовано при работе с разными типами почтовых отправлений или при работе со специфическими штифтами.

        После того как индекс был распознан, управление работой программы передается в модуль работы с базой данных. Доступ к данным в этом модуле реализован с помощью технологии Microsoft ActiveX Data Objects (ADO). Эта технология представляет собой универсальный механизм доступа к данным из приложений. Microsoft ActiveX Data Objects оперирует собственной терминологией, так любой источник данных, будь то база данных, файл, электронное письмо или таблица называется хранилищем данных. Приложение взаимодействует с хранилищем данных по средствам так называемых провайдеров, при чем, для каждого типа хранилища данных в ADO существует свой провайдер, который обеспечивает передачу запросов в хранилище данных, интерпретацию служебной информации, поступающей из хранилища и передачу ответов на запросы в приложение.

        Технология ADO и интерфейсы OLE DB обеспечивают для приложений единый способ доступа к источникам данных различных типов. Например, приложение, использующее ADO, может применять одинаково сложные операции и к данным, хранящимся на корпоративном сервере SQL, и к электронным таблицам, и локальным СУБД. Запрос SQL, направленный любому источнику данных через ADO, будет выполнен.Интерфейс OLE DB предназначен для обработки запросов не к БД, а именно к файлам, таблицам и пр. OLE DB представляет собой набор специализированных объектов, инкапсулирующих стандартные функции обработки данных, и специализированные функции конкретных источников данных и интерфейсов, обеспечивающих передачу данных между объектами. В результате приложение обращается не прямо к источнику данных, а к объекту OLE DB, который "умеет" представить данные (например, из файла электронной почты) в виде таблицы БД или результата выполнения запроса SQL. В целом же, технология Microsoft ActiveX Data Objects состоит не только из объектов OLE DB, но и инструментов, обеспечивающих взаимодействие объектов данных с приложениями. На этом уровне важнейшую роль играют провайдеры ADO, координирующие работу приложений с хранилищами данных различных типов. Такая архитектура позволяет сделать набор объектов и интерфейсов открытым и расширяемым. Набор объектов и соответствующий провайдер может быть создан для любого хранилища данных без внесения изменений в исходную структуру ADO. При этом существенно расширяется само понятие данных — ведь можно разработать набор объектов и интерфейсов и для нетрадиционных табличных данных.

        Таким образом, данная технология является оптимальной для хранения и обработки данных с простой структурой и не большим объемом.

        В нашем случае был использован файл баз данных MS Access состоящий из двух таблиц. В первой таблице Tops хранятся сведения об отделениях почтовой связи, а именно, наименование ОПС, почтовый индекс ОПС и номер маршрута для дальнейшего следования почтового отправления.

        Похожие диссертации на Модели и алгоритмы распознавания графических образов на основе нечетких нейронных сетей