УДК 004.9312
АЛГОРИТМ ПРИНЯТИЯ РЕШЕНИЯ ОБ ОДИНАКОВОСТИ ЛИЦ НА ДВУМЕРНЫХ СНИМКАХ С ИСПОЛЬЗОВАНИЕМ
НЕЙРОННОЙ СЕТИ
© 2014 А.И. Армер, Н.Б. Кулагин, А.Ю. Прохоров
Ульяновский государственный технический университет
Поступила в редакцию 13.10.2014
В статье рассматривается алгоритм, используемый при решении задачи идентификации лица человека по его двумерному изображению. Для обучения нейронной сети требуется большое количество изображений идентифицируемых лиц, а их обычно имеется немного. В работе [1] предлагается вместе с реальными изображениями для увеличения обучающего материала использовать имитированные, но при этом нужно иметь надежный способ автоматического принятия решения об одинаковости лиц на реальных и имитированных изображениях. Предлагается для принятия решения об одинаковости или неодинаковости лиц подавать на вход нейронной сети не сами изображения, а особые поля, отражающие геометрические различия сравниваемых изображений. При обучении нейронной сети используется поля двух классов: одни получены из пар изображений одинаковых лиц, а другие из пар изображений разных лиц.
Ключевые слова: идентификация лиц, авторегрессионная модель, нейронная сеть, модель вариативности изображений
Для распознавания лица человека по его двумерному изображению с использованием нейронной сети предварительно нейронная сеть должна быть обучена эталонными изображениями лиц, которые в последствии предполагается распознавать. Одно и то же лицо представлено изображениями, отличающимися между собой яркостью, цветом и межкадровыми геометрическими трансформациями [2]. Для получения высокой надежности распознавания для обучения нейронной сети желательно использовать изображения со всевозможными отличиями. Обычно используется большое количество изображений лиц, полученных в различных условиях освещенности, при различном психоэмоциональном состоянии человека и в разное время. В работе [1] предлагается автоматически, с использованием авторегрессионной модели вариативности [3-8], получать большое количество изображений лица человека из нескольких реальных изображений этого же лица. Имитированные изображения отличаются от исходных и друг от друга случайными геометрии-ческими трансформациями различной интенсивности. Часть имитированных изображений имеет межкадровые отличия, близкие к реальным отличиям снимков одного лица. Однако, некоторые
Армер Андрей Игоревич, кандидат технических наук, доцент кафедры «Прикладная математика и информатика». Е-шаИ: [email protected]. Кулагин Никита Борисович, магистрант Прохоров Алексей Юрьевич, аспирант
имитированные изображения могут потерять связь с исходным реальным изображением и, следовательно, перестать быть вариантами изображения одного лица. Для определения связи имитированного изображения с исходным предлагается использовать нейронную сеть, принимающую решение, заключающееся в выборе одной из двух гипотез: Н0 - на паре анализируемых снимков изображено одно лицо или Н1 - на анализируемых снимках изображены разные лица.
Авторегрессионная модель варитив-ности изображений. Рассмотрим авторегрессионную модель вариативности более подробно. Чтобы получить варианты изображения, отличающиеся от исходного случайными геометрии-ческими искажениями, воспользуемся линейной векторной авторегрессионной моделью [9, 10]. Геометрические искажения изображений-вариантов будут задаваться векторным полем смещений пикселей, определенным, как и само изображение, на прямоугольной сетке с размерами М х N. В каждом узле сетки двумерным вектором
X = (4гр{, 4]ргУ задается смещение соответствующего пикселя исходного изображения вдоль строки и вдоль столбца. Для двумерного случая будем использовать модель, заданную уравнением
( = ( а Ь У Л + (г /У Л-( а Ь У г /У Л + ( Ор аЛ
4]
V с d )
V ■'р* )
V 4 р х-1)
и)
V 4 р-1 х)
V с d )
V 5 и )
V )
! А \
\°Ъ а 4 )
£
рг
£
V £ Рг)
(1)
где (,%р( )Т - поле независимых случайных векторов.
В зависимости от вида матриц в (1) и этой модели можно получить широкий класс характера распределения возмущающего поля полей векторов смещений.
1 2 Т
изменений смещений (% ,% ) с помощью
г д е
Рис. 1. а) исходное изображение, б-е) изображения, полученные с помощью модели (1)
Имея одно реальное исходное изображение лица человека (рис. 1а) и имитируя множество полей векторов смещений с помощью модели (1), можно получить множество вариантов изображения этого лица, отличающихся случайными геометрическими искажениями (рис. 1б-е).
Автоматическое определение одинаковости лиц на изображениях. Для автоматического принятия решения о принадлежности полученного изображения лица к зрительному образу лица на исходном изображении предлагается использовать нейронную сеть. Для построения такой сети в первую очередь необходимо выбрать способ описания межкадровых изменений снимков одного лица. Межкадровые геометрические искажения описываются смещениями (Ах/, Ау/)т, которые в авторегрессионной модели (1) однозначно определяются векторами (£рг,£2р1)Т , и наоборот, имея (Дх/, Ау/)т, можно однозначно найти (,%р( )Т .
Имея два реальных изображения лица человека, можно оценить поле (Дхг„ Ду,)т, а применив (1)
найти поле векторов )Т, являющееся
реализацией поля возмущений авторегрессионной модели. Следует ожидать, что если на этих двух изображениях лицо одного человека, то поле ()Т имеет одни характеристики, а если это изображения разных людей, то у поля ()Т другие, отличные характеристики.
Поэтому в качестве обучающего материала для нейронной сети в описываемом алгоритме выбраны реализации поля векторов (,%у )Т изменений смещений пикселей двух типов - для одинаковых и разных лиц.
Таким образом, получаем следующий алгоритм. Для каждой пары реальных изображений сначала оценивается поле (Дх/,Ду/)т векторов смещений пикселей одного изображения относительно другого. Далее с помощью модели (1) получается поле векторов (,%у )Т , которое и поступает на вход нейронной сети, принимающей решение о принадлежности или непринадлежности данных изображений одному лицу. Рассмотрим все этапы алгоритма более подробно.
Получение поля векторов смещений пикселей. Возьмем два двумерных изображения
б
а
в
лица человека. Изображения должны иметь одинаковый нейтральный фон, быть обесцвеченными и иметь одинаковые размеры. Для каждого пикселя одного изображения с координатами (х1 ,у1) на одном изображении мы будем искать соответствующий ему пиксель (х2 ,у2) на другом изображении. Можно предположить, что этот пиксель находится на втором изображении в некоторой окрестности от его положения на первом. Поэтому мы будем его искать как наиболее близкий по яркости пиксель в квадрате
со стороной г от исходной позиции. Как только соответствующий пиксель обнаружен, записы-
ваем
вектор
его
смещения
(дх1,ду1)Т = (х2 - х1 ,у2 - у1 )т . В результате получим поле векторов смещений
(^ц-ёуц) ■•• (сЬщ^Ущ) {¿хт 1''аУш, 1) ■■■ {¿хт п''аУш, п )
Получение поля векторов изменений смещений пикселей. Для нахождения поля векторов ()т изменений смещений воспользуемся авторегрессионной моделью (1), подставляя в неё найденные (Ах,, Ду,)т При этом остальные параметры модели подбираются эмпирически. Решая (М-1)^-1) систем двух линейных уравнений, получим поле векторов изменений смещений пикселей:
Х^У' £и)
(^1 ,п—1 ' £1, п—1 )
(хх .£у ) ■.. (хх .£у )
У=т-1,1' ^т-1,1/ \^т-\,п-\' ^т-1,п-1)
(2)
Из двух снимков лица одного человека получается поле векторов изменений смещений пикселей изображений одного лица, из снимков лиц разных людей получается поле векторов изменений смещений пикселей изображений разных лиц. Следующим этапом работы является обучение нейронной сети относить поданное на вход поле векторов изменений смещений вида (2) к одному из двух указанных классов.
Создание и обучение нейронной сети. Для построения искусственной нейронной сети использовались свободно распространяемые библиотеки http://kernel-zone.ru/algorithms. Сеть представляет собой многослойный персептрон (присутствует один скрытый слой) и имеет структуру прямой передачи сигнала. Функцией активации данной нейронной сети является
сигмоид. В качестве примера была построена нейронная сеть, вход которой имеет 49х69х2 нейронов, по количеству элементов в поле векторов изменений смещений, а на выходе два нейрона. Количество нейронов в скрытом слое подбирается эмпирически и составляет около 7080 % от количества входных нейронов.
Обучение нейронной сети происходит по принципу обучения с учителем. Сначала формируется обучающая выборка. Далее каждому полю сопоставляется его класс и данные поступают на вход нейронной сети. В ходе обучения формируются параметры нейронной сети. Каждая связь входа сети с нейроном приобретает свой вес. В ходе работы импульс, проходя через связь, меняется: импульс = импульс * вес связи. Нейрон на выходе получает импульсы от всех входов и суммирует их. В результате на каждом выходе формируется сумма импульсов, и анализируемое поле признается идентифицированным тому типу, для соответствующего выхода которого сумма импульсов максимальна.
Испытания алгоритма. Для статистического испытания создана нейронная сеть, обученная выборкой из 40 полей векторов изменений смещений (20 полей векторов изменений смещений изображений одного лица и 20 полей векторов изменений смещений изображений разных лиц). В качестве материала для тестирования использовалась тестовая выборка объемом 20 матриц (10 матриц векторов изменений смещений изображений одного лица и 10 матриц векторов изменений смещений изображений разных лиц). Были получены следующие результаты: из 20 тестируемых матриц правильно классифицированы 16, оценка вероятности правильной классификации р=0,8. Доверительный интервал вероятности, при а=0,05: 0,584 <р<0,919. Вероятность правильной классификации можно повысить, если доработать алгоритм поиска подобных пикселей, добавив в него дополнительные критерии сравнения (коррелированность с соседними пикселями, учет близости к особым точкам), что приведет к улучшению качества построения матриц векторов изменений смещений. Так же для получения лучшей оценки р следует увеличить обучающую и тестовую выборки.
Выводы: программная реализация полученного алгоритма при испытаниях показала интервал вероятности от 0,58 до 0,91 правильного выбора одной из двух гипотез: Н0 - на паре анализируемых снимков изображено одно лицо или Н1 - на анализируемых снимках изображены разные лица. Полученный алгоритм в первую очередь будет использован для оценки параметров
1 2 Т
распределения поля (£ ) изменений
межкадровых смещении пикселей моделируемых вариантов изображений модели вариативности изображений (1). Эти параметры будут оценены с помощью статистического анализа тех полей векторов изменений смещений пикселей, для которых нейронная сеть правильно определит класс. Затем построенная нейронная сеть будет использована для подготовки обучающего материала для другой нейронной сети, идентифицирующей изображения лиц. В процесс обучения попадут только те имитированные изображения, для которых построенная нейронная сеть признает одинаковость лиц с исходными изображениями. Это позволит увеличить качество обучающего материала для нейронной сети, идентифицирующей лица, и повысить вероятность правильной идентификации лица.
СПИСОК ЛИТЕРАТУРЫ:
1. Armer, A.I. Method of Additional Target Visual Pattern // Pattern Recognition and Image Analysis. 2011. Vol. 21, №2. P. 223-225.
2. Хорн, Б.К.П. Зрение роботов: пер. с англ. - М.: Мир, 1989. 487 с.
3. Krasheninnikov, V.R. Autoregressive Models of Speech Signal Variability in the Speech Commands Statistical Distinction / V. R. Krasheninnikov, A. I. Armer, N. A. Krasheninnikova et al. // Internetional Conference on Computational Science and it's Applications. SpringerVerlag: Berlin Heidelberg, 2006. P. 974-982.
4. Крашенинников, В.Р. Модели изменчивости речевых команд / В. Р. Крашенинников, А. И. Армер,
И. Н. Синицын // Наукоемкие технологии. - М.: Радиотехника, 2007. С. 56-64.
5. Armer, A.I. The method of addition of set images formimg the visual pattern of observation object // 10th international conference «Pattern recognition and image analysis: new information technologies» PRIA-10-2010 conference proceedings. - SPb.: Politechnika, 2010. P. 173-176.
6. Армер, А.И. Использование моделей речевого сигнала для обучения нейронных сетей / А.И. Армер, В.В. Кузнецов // Труды Российского научно-технического общества радиотехники, электроники и связи им. А.С. Попова. Выпуск LXIV - М., 2009. С. 188-189.
7. Крашенинников, В.Р. Использование моделей вариативности при обучении нейронных сетей в задаче распознавания речевых команд / В.Р. Крашенинников, А.И. Армер, В.В. Кузнецов // Современные проблемы создания и эксплуатации радиотехнических систем: Труды шестой всероссийской научно-практической конференции (с участием стран СНГ) г Ульяновск, 22-23 сентября 2009 г - Ульяновск: УлГТУ 2009. С. 192195.
8. Армер, А.И. Имитация яркостных и цветовых искажений моделью вариативности изображений // Современные проблемы проектирования, производства и эксплуатации радиотехнических систем: сборник научных трудов. Седьмой выпуск. - Ульяновск: УлГТУ 2010. С. 91-97.
9. Habibi, A. Two-dimensional Bayesian Estimate of Images // In Proc. IEEE Vol. 60. July 1972. P. 873-883.
10. Крашенинников, В.Р. Основы теории обработки изображений. - Ульяновск: УлГТУ, 2003. 151 с.
DECISION ON THE IDENTITY OF THE PERSONS ON TWO-DIMENSIONAL IMAGES USING A NEURAL NETWORK APPROACH
© 2014 A.I. Armer, N.B. Kulagin, A.Yu. Prokhorov Ulyanovsk State Technical University
The paper presents an approach used in solving the problem of identification of a person's face in his two-dimensionai image. To train the neural network requires a large number of images of identifiable persons, and they are usually there a little bit. In [1] it is proposed together with an actual images to use simulated training material. But it is necessary to have a reliable way of automatically making a decision about the identity of the persons on actual and simulated images. It is proposed to make a decision about similarity or dissimilarity of persons put to the input of the neural network is not the images themselves, and special fields, reflecting the geometric differences compared images. When training a neural network uses the field of two classes: one estimated from pairs of images of the same person, and the other pair of images of different persons.
Key words: face recognition, autoregression model, neural network, images variation model
Andrey Armer, Candidate of Technical Sciences, Associate Professor at the Department "Applied Mathematics and Computing Science". E-mail: [email protected]. Nikita Kulagin, Undergraduate Student Aleksey Prokhorov, Post-graduate