Научная статья на тему 'Информационная технология анализа качества системы обнаружения объектов на изображениях'

Информационная технология анализа качества системы обнаружения объектов на изображениях Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
81
29
i Надоели баннеры? Вы всегда можете отключить рекламу.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Похожие темы научных работ по компьютерным и информационным наукам , автор научной работы — Коломиец Э. И., Сергеев В. В.

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Текст научной работы на тему «Информационная технология анализа качества системы обнаружения объектов на изображениях»

Н.Н.Айзеноерг, //. Н.Айзенберг, Г.А.Кривошеев

НЕЙРОСЕТИ НА МНОГОЗНАЧНЫХ НЕЙРОЭЛЕМЕНТАХ: ОБУЧЕНИЕ ОБРАБОТКА И РАСПОЗНАВАНИЕ ИЗОБРАЖЕНИЙ

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

1.ВВЕДЕНИЕ

Многозначные нейроэлементы, основанные на концепции многозначных пороговых фуш<ций к-значной логики [I] были впервые предложены в [2], а затем различные аспекты их теории были развиты в [3] и [4|. Основной особенностью многозначных нейроэлементов является представление обрабатываемой информации и весов нейроэлементов с помошыо комплексных чисел. На первый взгляд такое представление может показаться неестественным и слишком громоздким в чисто вычислительном аспекте, но как было показано в [1-4] оно позволяет определить выходную (активирующую) функцию нейрона таким образом, что алгоритм обучения для многозначного нейрона сходится в сотни раз быстрее, чем алгоритмы обучения для других типов нейронов, а. кроме того, функциональные возможности многозначных нейронов значительно выше, чем у других типов нейронов.

Применение нейросетей дтя решения задач обработки изображений вошло в широкую практику с конца 80-х годов после публикации работы Чуа-Янга [5], в которой была предтожена концепция клеточной сети, весьма удобная дтя реализации, например различных алгоритмов линейной фильтрации. В [2] нами была предтожена клеточная сеть на многозначных нейронах и се использование в качестве ассоциативной памяти дтя хранения полутоновых изображений. В [3] и [4] мы рассматривали применение такой же клеточной сети (а также клеточной сети из универсальных бинарных нейронов [6], математическая основа которых та же, что и у многозначных, но предназначены они дтя реализации не многозначных пороговых, а произвольных булевых функций) для решения некоторых задач обработки изображений (фильтрация импульсного шума, выделение контуров). Главная цель настоящей работы -дальнейшее развитие теории многозначных нейронов и расширение областей их применения. Мы рассмотрим алгоритм обучения, обоснованный в [I] и [3]. но с существенным усилением, позволяющим более чем в 30 раз ускорить процесс сходимости алгоритма обучения, а также увеличить число входов нейрона и уровней обрабатываемых сигналов с десятков и сотен до 1ысяч. Мы рассмотрим также новый тип сети из многозначных элементов - ссги, со случайными связями, в которой каждый нейроэлемент соединен с фиксированным числом других, по не из ближайшей окрестности, как в случае клеточных сетей, а с элементами, определяемыми некоторой случайной функцией. На базе этой сети будет предложена ассоциативная память, весьма эффективная для хранения и распознавания полутоновых изображений. Будет также рассмотрено использование клеточной сети из многозначных и универсальных бинарных нейронов дтя решения задач выделения контуров на полутоновых и бинарных изображениях, а также для анализа текстур.

2.МАТЕМАТИЧЕСКАЯ МОДЕЛЬ

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

Г (X...... Хп ) путем их представления при помощи п+1 комплексных параметров (весов)

. .. , шп

Г(х,, . . . , хп) = Р(ш0 + + \¥пхп) (1)

где Х1Хп-переменные, ог которых зависит реализуемая функция (входы нейрона) (отметим, что значения функции и ее переменных в многозначном (к-значном) случае кодируются комплексными числами. являющимися корнями к-ой степени из единицы

= ехрО 2л ] / к),] е [0, к - 1 ], ¡- мнимая единица; иначе говоря, значения к-зачной

логики представляются корнями к-ой степени из единицы: СТ^ Б ) , а Р - выходная (активирующая ) функция нейрона, определяемая дтя многозначного нейроэлемента:

?(г) = ехрО * 2л * ] / к),

[Г 2л * (} + 1) / к > а^(г) > 2тс * } / к (2а)

где ]=0,1.....к-1 - значения в к-значной логике, 1 - мнимая единица 2 = + '^Х, + лл?'пХп -

взвешенная сумма . а^(/) - аргумент комплексного числа г ; и дтя универсального бинарного нейроэлемента:

Р(г) = (-1 У

1! (2тс (] + 1)/т) > arg(z) > (2л* ^т) (2Ь)

где т - некоторое натуральное число, 0<]<т, 7. = + 4- , аг«(2) -

аргумент комплексного числа г. Переменные (входа нейрона) и реализуемая функция в данном случае булевы и принимают значения в множестве {1,-1}. Идея подобного представления многозначных функций была впервые предложена в [I], а булевых - в [6]. Определение выходных

3.УСОВЕРШЕНСТВОВАННЫЙ АЛГОРИТМ ОБУЧЕНИЯ

Из описанной математической модели очевидно, что обучение для обоих рассматриваемых типов нейронов состоит в "напрравлении" взвешенной суммы входных сигналов в нужный сектор на комплексной плоскости (из к возможных ддя многозначного и из т возможных дтя универсальног бинарного нейрона) (Рис.1). Алгоритм обучения дтя многозначного нейроэлемента был пре;.иожен в [1]. и затем ряд его модификаций был предложен в [2-4]. Многочисленные

эксперименты показали, что скорость сходимости этого алгорит ма существенно выше скорости сходимости алгоритмов обучения доя нейронов Хопфилда. 4va и других подобных классических" нейроэлементов.

Процедура "направления" взвешенной суммы в нужный сектор комплексной плоскости (иначе говоря, процедура коррекции вектора структуры) определяется следующим правилом [i|-

Wm+1 = Wm + 038ч X , (3)

где Wm and Wm+, . текущий и следующий весовые векторы (векторы структуры), W -коэффициент коррекции!, X - вектор входных сигналов нейрона с комплексно-сопряженными

компонентами, Б -значение функции на выходе (выходной сигнал нейрона), таким образом, q -номер нужного сектора (иначе говоря, q - целочисленное значение k-значной функции, реализуемой нейроном). w выбирается так, чтобы значение взвешенной суммы Z = w„ + WjXj + WnXn было как можно ближе к нужному сектору (либо сразу же попадало в него) ( к сектору с номером q ) после шага обучения, определяемого правилом (3). Как правило, достаточно рассмотреть всего два случая для выбора W-|arg(s4) - arg ( Z ) | < я / 2 или I arg( s4 ) - arg(z)| > тс / 2. Если выполняется первое из этих условий, как правило

достаточно одной-двух итераций для попадания в нужный сектор по правилу (3). Для второго случая число итераций, как правило, несколько больше, но более чем на порядок. Под "итерацией" следует понимать последовательную проверку (1) для всех элементов обучающего множества, и в том случае, если (1) не выполняется дтя некоторого элемента из этого множества, для коррекции весов применяется обучающая процедура (3). Этот процесс продолжается до тех пор, пока не будет получен вектор структуры W=( Wf), W, , . . . Wn ), удовлетворяющий (1) для всех элементов обучающего множества. Как показывают экспериментальные данные, процесс обучения, определяемый правилом (3), сходится для большинства частично определенных функций k-значной логики. В [1] доказано, что процесс обучения сходится также для полностью определенных многозначных пороговых функций. Даже в случае несходящегося процесса дтя некоторой функции (в частности, для частично определенной функции) практически всегда можно так изменить значение к, чтобы свести нереализуемую па нейроне функцию k-значной лог ики к

реализуемой функции k-значной логики (к < к или к > к), для которой процесс обучения сходится.

Непосредственное применение арифметики с плавающей запятой к вычислениям с комплексными числами в (3) позволяет реализовать алгоритм обучения, однако с ростом кип (числа переменных) вычисления все более замедляются и, например для обучения ссти из 4096 нейронов (каждый из них имеет 30 входов, к=256, обучающее множество для каждого нейрона состоит из 30 элементов) требуется 70 часов на компьютере класса 4K6-DX2-66 Mhz. Модификация алгоритма обучения, которая сейчас будет рассмотрена, позволяет с одной стороны ускорить процесс обучения примерно в 30 раз, а с другой стороны обучать нейроны с числом входов, равным п= 1000-2000 реализации функций к= 2000-4000 - значной логики.

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

весов будем представлять в виде 32-битовых целых чисел, а взвешенную сумму - 64-битовым

целым числом. Для ускорения вычисления выходного значения нейроэлемента, т.е., дтя ускорения

вычислений в (2а) необходимо наложить несущественное ограничение на возможные значения k, а

именно, к должно бьпгь кратно 8. Несущественность этого ограничения очевидна, т.к. при

необходимости значение к всегда можно увеличить до необходимого Зато благодаря этому

ограничению мы можем вычислить j (целочисленное значение функции на выходе нейрона,

соответствующее комплексному г ). прибс1 ая к существенно меньшим вычислительным затратам.

Пусть z = (Re(z), lm(z)) - комплекерое число, представляющее взвешенную сумму и

fûZw(ReU) / tffa(lmU)), если abs{ Re( z) ) > abs(im[z) < (4) |fl/)j(Im(z) / abs(Re{z)), если abs(lm(z)) < abs(Re(z)

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

(/) = /g(2я/ / к), где/ = 0,1,..., (Ar / 8) - 1 (5)

Из (4). (5) и Рис. 2 очевидно, что очень легко может быть найдено такое значение I. что ( 1) < ф < Т( 1!_".' . Принимая во внимание знак и значение отношения 1ш(2)/Яе(г) , легко найти номер в "подсектора", в который попадает г. Теперь очевидно, что

у = б(А / 8) + /, Б = 0, 1.....(А / 8) - 1, (6)

где] - значение на выходе нейрона.

Рис.2

Теперь вернемся к примеру с сетью, содержащей 4096 30-входовых нейронов, для которой решается задача обучения на обучающем множестве, содержащем 30 элементов (мы еще раз вернемся ниже к применению этой сети). Использование того же правила обучения (3), но с учетом (4)-(6) позволяют решить задачу обучения за 2 часа 25 минут на том же компьютере класса 4К6 DX2-66 Mhz (без использования модификации (4)-(6) та же задача решается за 70 часов).

Следует сделать ряд замечаний по поводу обучения универсатъного бинарного нейрона.Очевидны два плдхода к решению этой задачи. Первый основывается на

q

непосредственном использовании процедуры (3). £ в этом случае соответствует правой границе того сектора на комплексной плоскости, в который должна попасть взвешенная сумма z = W0+W1X1 +Wnxn (Рис. la). Если Z попадает "не в тог" сектор, веса должны быть скорректированы в соответствии с (3). чтобы направить Z в соседний сектор. Исходя из этих соображений, значения коэффициента коррекции СО в (3) определяются следующим образом ( i-мнимая единица):

{1. if Z должно "переместиться" в правый сектор ( 1 \

i, if Z должно " переместиться" в левый сектор V ' /

Экспериментально показано, что подобный процесс обучения довольно быстро сходится прежде всего дтя достаточно малых m (см. (2Ь) ) (например, при т=4 дчя функций, допускающих представление (1) достаточно как правило не более 100 итераций дтя сходимости алгоритма обучения). Другой подход к обучению универсального бинарною нейрона сводится к преобразованию булевой функции в m-значную (каждая "1" преобразуется в некоторое четное значение, каждая '-Г - в некоторое нечетное) и затем к применению алгоритма обучения (3)-(6) к полученной многозначной функции. Однако, подробное обсуждение этой проблемы выходит за рамки данной работы. Один из подходов к ее решению предложен в [4].

4. СЕТИ ИЗ МНОГОЗНАЧНЫХ И УНИВЕРСАЛЬНЫХ ЭЛЕМЕНТОВ И ИХ ПРИМЕНЕНИЕ ДЛЯ ОБРАБОТКИ И РАСПОЗНАВАНИЯ ИЗОБРАЖЕНИЙ

Обе разновидности рассматриваемого нейроэлемента очень удобны дтя создания сетей, предназначенных в первую очередь дтя обработки и распознавания изображений. Мы предлагаем использовать два типа сетей Первая из них клеточная, в которой каждый нейрон соединен только с нейронами из своей ближайшей прямоугольной (квадратной) окрестности Хотим, однако, обратить внимание, что это не клеточная сеть Чуа [5], т.к. базисные нейроны нашей сели и сети Чуа совершенно различны. Второй тип ссти, который мы хотим предложить, это есть со случайными связями (каждый нейрон в такой ссти соединен, как и в клеточной ссти, с офаниченным числом других нейронов, но их координаты определяются некоторой случайной

1S2

функцией). На Рис. За показан пример клеточной сети с локальной окрестностью 3*3, а на Рис. ЗЬ

]

(1 11

Рис.За

Рис.ЗЬ

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

ВЫДЕЛЕНИЕ КОНТУРОВ

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

Выделение контуров на бинарном изображении исчерпывающим образом описывается следующей булевой функцией :

х. х2 хз

Y Х4 Х5 х6 =

X* х9

{

если х5 =-1 или х, =... = х5 = ... = х9 = I

1, если х, =! и хотя бы один из х.

4 х6,...х9*1

(8)

другими словами, контур регистрируется в данной точке, если он проходит через центральную точку окна 3*3 , окружающего данную точку. Пусть ш=4 в (2Ь). Применение алгоритма обучения (7) к функции (8) дает сходимость после 51 итерации (на которые затрачивается всего несколько секунд на компьютере класса 486 DX2-66 Mhz. Получив в результате обучения необходимый набор весов, мы можем решать задачу выделения контуров на нейроссти. Отметим, что при аппаратной реализации сети можно сделать ее восьмиуровневой, чтобы обрабатывать каждую битовую плоскость парадпельно в режиме реального времени. На рисунках 4а и 5а показаны оригинальные изображения, на которых проводилось выделение контуров описываемым методом. На рисунках 4Ь и 5Ь показан результат обработки, а на рисунках 4с и 5с - результат выделния контуров на тех же изображениях при помощи оператора Лапласа. Преимущества описанного здесь подхода очевидны хотя бы из того, что он позволяет выделить как малейшие пе-

гис.эь Рис.5с

рспады яркостей, так и даже контуры "смазанных", нерезких деталей.

СЕГМЕНТАЦИЯ И АНАЛИЗ ТЕКСТУР

На такой же клеточной сети, но построенной из многозначных нейронов, можно эффективно решать задачу анализа текстур. Для этого, очевидно, следует в процессе обучения добиться того, чтобы многозначный нейроэлемент различал необходимые текстуры. Естественно, результат будет тем лучше, чем большие по площади участки эталонных текстур будут присутствовать в обучающей выборке. При этом естественно следует учесть, что время, затрачиваемое на обучение, будет увеличиваться. Так что. следует искать "золотую середину" между мощностью обучающего множества и временем обучения. Проблема существенно упрощасгся при использовании высокопроизводительной вычислительной техники типа рабочих станций. На рис. 6 представлены два текстурных изображения размера 64*64, составивших обучающее множество. Первое из этих изображений представляет собой поле из случайных чисел с равномерным, а второе - с гауссовским распределением. Обучение многозначного нейроэлемента с 91-м входом (нейрон соединен со всеми нейронами из своей локальной окрестности 9*9) по алгоритму (З)-(^) на компьютере класса 486-ОХ2-66МН/ потребовало около 60 часов. Для проверки обученной сети было предложено проанализировать изображение на рис.7, где на равномерное поле "наложен" участок гауссовского. Результат анализа представлен изображением на рис.«

Рис.6а Рис.бЬ Рис.7 Рис.8

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

' РА СПОЗНА ВА НИЕ И ХРА НЕНИЕ ИЗОБРАЖЕНИЙ В А ССОЦИА ТИВНОЙ ПА МЯТИ Ассоциативная память, т.е.. память, адресуемая по содержанию, является эффективным средством не только для хранения данных, но и для их распознавания, точнее - узнавания в условиях зашумленности, частичного искажения и т.д. Создание подобных систем памяти, базирующихся па нейроподобных сетях, дтя полутоновых изображений впервые было предложено Т.Кохонспом [7|. В [2] нами была предложена модель ассоциативной памяти для полутоновых изображений, базирующейся на клеточной сети из многозначных нейронов. Недостатком такого подхода является невозможность узнавания изображения в случае полного разрушения какого-то ею фрагмента . поскольку ограниченность связей в клеточной сети не позволяет восстановить полностью утраченный фрагмент. Этот недостаток преодолевается, если в качестве базовой сети для ассоциат ивной памяти избрать сеть со случайными связями , описанную выше.

Для проверки работы подобной ассоциативной памяти была разработана программная модель сети, содержащей 4096 многозначных (в данном случае - 256-значных) нейроэлементов с 30

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

Рис.9

думать, что на размеры наложено какое-то ограничение, поскольку в данном случае выбор размера определялся исключительно желанием ускорить обучение в условиях моделирования сети на обычном компьютере класса 486 0X2-66. Обучение всех нейронов сети, построенное по алгоритму (3)-(6), занимает 3 часа 20 минут при наличии у каждого нейрона обра тной связи (один вход соединен с собственным выходом) и 5 часов 15 минут без обратной связи. Отметим, что наличие или отсутствие обратной связи, как показывают эксперименты, не оказывает в данном случае решающего влияния на свойства ассоциативной памяти. Отличные же возможности памяти демонстрируют эксперименты, иллюстрируемые на рис. 10 и II. На рис.10а представлено одно из изображений обучающей выборки . в котором 75% информации заменено равномерным шумом. На рис.ЮЬ - результат восстановления (узнавания) изображения после 20-ти итераций

ШШШжШ : шшшш кханшшнш., ттжт к кявшашшшшш. Рис. 10а Рис.ЮЬ Рис. 10с

восстановления изображения после 40 итераций работы сети. Очевидно, что уже качества изображения после 20-ти итераций достаточно дтя его распознавания, по после 40 итераций полученное изображение вообще практически не отличается от оригинала (среднеквадрагическос отклонение - 0.87). На рис.11а показано то же изображение из обучающей выборки, "испорченное" импульсным шумом с вероятностью искажения отсчетов 0.3. На рис. 11Ь -

Рис.11а Рис.11Ь Рис.11с

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

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

5. ЗАКЛЮЧЕНИЕ

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

ЛИТЕРАТУРА

1 .Айзенберг Н.Н., Иваськив Ю.Л. Многозначная пороговая логика. Киев: Наукова Думка. 1977.

2 Aizenberg N.N.. Aizenberg I.N."CNN Based on Multi-Valued Neuron as a Model of Associative Memory for Gray-Scale Images". Proc. of the 2-d International IEEE Workshop on Cellular Neural Networks and their Applications, Munich, Germany, October 14-16, 1992, IEEE 92TH049X-6, ISBN 0-7803-875-1, pp.36-41 .

3 Aizenberg N.N.. Aizenberg I.N. "Fast Convergenced Learning Algorithms lor Multi-Level and Universal Binary Neurons and Solving of the some Image Processing Problems", Lecture Notes in Computer Science, Ed.-J.Mira, J.Cabestany, A.Prieto, v.686, Shpringer-Verlag, Berlin-Heidelberg (1993) pp. 230-236.

4. Aizenberg N.N., Aizenberg l.N. "CNN-like Networks Based on Multi-Valued and Universal Binary Neurons: Learning and Application to linage Processing", Proc. of the Third IEEE International Workshop on Cellular Neural Networks and their Applications, Roma, Italy, December 18-21, 1994,

IEEE 94TH0693-2, pp.153-158.

5. L.O. Chua and L. Yang, "Cellular neural networks: Theorv", IEEE Trans.Circuits Syst.vol. 35, pp. 1257-1290, Oct. 1988

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

6.Айзенберг И.Н. Универсальный логический элемент над полем комплексных чисел//Кнбернстика, №3, 1991, С. 116-121.

7. T.Kohonen "Content-Addressable Memories" Springer-Verlag, Berlin - Heidelberg - New-York, 1980. X.U.Ramaher, W.Raab, J.Anlauf, U.Hachmann, J.Beichter, N.Bruls, M.Weseling, E.Sichender,

R.Manner, J.Glass. A.Wur/ "Multiprocessor and Memory Architecture of the Neurocomputer Svnapse-1" Proceedings of the 3-d International Conference on Microelectronics for Neural Networks. April 6-8, 1993, Edinburgh, UK, pp. 227-231.

КОМПЬЮТЕРНАЯ ОПТИКА Выпуск м-15 Часть i Oiktl-tmiihuc u выпуск Данилов BA. Кириллина В 1 Подписано » печать 100*95. Обмм 28.5 нМ.л. Тир» «X, .к-, »сил дойная. 3a.cn 44

Международный цагтг научной и тешичечеой информации 125252. Москва. ул.Куусинсна.216

i Надоели баннеры? Вы всегда можете отключить рекламу.