Областью исследований в данной работе является теория искусственных нейронных сетей и применение моделей нейросетей в реализации компьютерного зрения. Объектом исследований выступает система распознавания человека по изображению его лица с помощью нейронной сети. Технологии распознавания лиц развиваются уже достаточно давно, но за последние годы произошёл существенный скачок в области разработки и обучения нейронных сетей [1]. В настоящее время большие перспективы в решении задач распознавания связывают с применением глубоких нейронных сетей, которые успешно используются, например, в известных системах распознавания лиц: FaceNet [2], Face ID на iPhone, DeepFace от Facebook, Face++ от китайской компании Megvii [3] и др. Тем не менее, компьютерному зрению ещё далеко до уровня живого человека, однако в настоящее время системы такого класса целесообразно разрабатывать и применять для решения каких-то узких точечных задач.
На наш взгляд такой задачей, которую можно успешно решать современными средствами компьютерного зрения, является задача автоматической видеорегистрации присутствия студентов в аудитории с помощью нейросетевого распознавания лиц [4]. Конечно, подобные системы можно использовать только с учётом действующего законодательства в отношении конфиденциальности и приватности личных данных. При использовании этой системы правовые нормы, связанные с видеорегистрацией учащихся, будут соблюдены путём письменного согласия участников учебного процесса.
Распознавание лиц в этой системе осуществляется с помощью многослойной свёрточной нейронной сетью FGGFace, которая является модификацией более ранней модели VGG16, разработанной в 2013 году специалистами K. Simonyan и A. Zisserman из Оксфордского университета [5]. Так как модель VGGFace является предобученной нейронной сетью, то возникает естественный вопрос - насколько качественно она будет распознавать студентов, лица которых не участвовали в её обучении.
Поэтому предметом исследований в данной работе является оценка качества нейронной сети VGGFace при решении задачи распознавания лиц людей на изображениях, поступающих из видеопотока.
Рассматривается решение конкретной задачи, которая посвящена оперативному визуальному контролю присутствия студентов на учебных занятиях. На рисунке 1 приведена функциональная схема видеорегистрации студентов при входе в аудиторию с помощью компьютерного зрения. Методами машинного обучения решаются задачи локализации лиц на снимках с видеокамеры и их распознавание, а также формирование электронного журнала группы.
В реальном масштабе времени с помощью веб-камеры формируется видеопоток изображений, на которых могут быть расположены лица людей. В кадрах видеопотока выделяются и локализуются лица, входящих в аудиторию людей. Эту функцию выполняет алгоритм детектирования лиц на принятом изображении. В результате формируется изображение локализованного лица и после нормализации подаётся на следующий блок системы. В работе локализация лиц выполняется методом Виола-Джонса. К достоинствам данного метода относят высокую степень правильной локализации лица, малое число ложных срабатываний, высокую скорость работы. Он в меньшей степени чувствителен к освещённости. Точность выделения лиц на снимке по алгоритму Виола-Джонса в идеальных условиях достигает 90-95%, что вполне приемлемо для решения практических задач. Все изображения выделенных лиц нормируются к стандартному размеру 224х224 пикселей, каждый из которых представлен в виде трёх составляющих в формате RGB.
Далее изображение лица передаётся в блок формирования вектора признаков, который реализует распознавательную функцию f: X →Y , где X – множество входных изображений лиц; Y – множество векторов признаков для лиц из X . Таким образом, нейросетевая функция f каждому выделенному лицу ставит в соответствие вектор признаков, которыми характеризуется данное лицо.
При настройке системы необходимо предварительно сформировать базу данных лиц для всех распознаваемых людей, представленных конечным множеством соответствующих фамилий L . С этой целью для x с помощью нейросетевой распознавательной функции f определяется множество правильных пар (см. форм. 1)
где X - множество подготовленных фотографий распознаваемых лиц, т.е. эталоны изображений распознаваемых лиц; y – вектор признаков изображения лица; l – фамилия человека, фотография которого изображена на снимке x . Всё множество пар заносится в базу данных векторов признаков лиц.
В штатном режиме работы системы, т.е. при распознавании, в блоке сравнения вектор признаков распознаваемого лица, полученный с выхода свёрточной нейронной сети, сравнивается со всеми векторами базы данных персон. Процедура сравнения основывается на методе вычисления косинусного сходства вектора распознаваемого лица с каждым вектором-эталоном из базы данных по формуле 2
где y и y̅ – вектора признаков соответственно распознаваемого лица и лица-эталона из базы данных; n = 2622.
Распознаваемое лицо считается соответствующим эталону, если полученный коэффициент сходства выше определённого значения (в работе использовалось значение 0,7).
Многослойная архитектура VGGFace состоит из свёрточных слоёв (convolution layers) и субдискретизирующих слоёв (subsampling layers или pooling layers, слоёв подвыборки), которые чередуются друг с другом (рис. 2).
Последовательная работа слоёв нейросети организована таким образом, чтобы осуществлялся переход от конкретных особенностей изображения к более абстрактным деталям, и далее к ещё более абстрактным. В этом процессе ключевую роль играет операция свёртки (см. форм. 3):
где А – матрица размером (nx x ny ); В – матрица (ядро свёртки) размера (mx x my ); С – результирующая матрица размера [(nx - mx + 1) x (ny - my + 1)]; i=1,2,…, nx -mx +1; j=1,2,…, ny -my +1; f() – функция активации. Подвыборочный слой также как свёрточный имеет карты, но их количество совпадает с предыдущим (свёрточным) слоем. Его задача – уменьшить размерность карт предыдущего слоя.
Для выработки признаков лица свёрточная нейронная сеть предварительно была обучена её создателями на примерах фотографий 2622-х человек (по 1000 фотографий на человека) [4, 5]. Сеть настроена на классификацию распознаваемого лица, используя в качестве классов лица из обучающего множества. Поэтому результатом работы сети является 2622-мерный вектор, каждый элемент которого представляет собой вероятность сходства лица с одним из обучающего множества. Считается, что два изображения лица относятся к одному человеку, если они в одинаковой мере похожи на каждое лицо из обучающего множества. Для этого вектора признаков этих изображений в пространстве лиц из обучающего множества должны образовывать между собой достаточно острый угол.
Оценка качества процесса распознавания, основанного на использовании нейросети VGGFace, проводилась путём проведения ряда экспериментов с последующим анализом результатов. Чтобы обеспечить чистоту экспериментов, они проводились на одной технике, с использованием одной камеры и системы. Технические характеристики веб-камеры:
Технические характеристики компьютерной системы:
Всего было проведено четыре эксперимента. Первый эксперимент связан с распознаванием человека по лицу, удалённому от камеры на некотором расстоянии. Эксперимент проводился в одной комнате при одинаковом освещении. Распознавание образов проводилось на расстоянии от 0,5 м. до 3 м. от камеры. Результаты эксперимента приведены в таблице 1, значение 0 означает что программа не распознала образ, 1 что распознала.
| Расстояние от камеры до объекта распознавания | Примечания | Результат распознавания |
|---|---|---|
| 0,5 метра | Захват и распознавание произошли без проблем | 1 |
| 1 метр | Захват и распознавание произошли без проблем | 1 |
| 1,5 метра | Захват и распознавание произошли без проблем | 1 |
| 2 метра | Захват и распознавание произошли без проблем | 1 |
| 2,5 метра | Захват произошел, распознавания не было | 0 |
| 3 метра | Захват не произошел | 0 |
Второй эксперимент связан с влиянием помех на локализацию лица и результат распознавания. В эксперименте в качестве помех использованы различные элементы одежды и аксессуары. Результаты представлены в таблице 2.
| Элемент одежды/аксессуара | Примечания | Результат распознавания |
|---|---|---|
| Кепка | Захват и распознавание произошли без проблем | 1 |
| Маска | Захват произошел, распознавания не было | 0 |
| Очки | Захват и распознавание произошли без проблем | 1 |
| Наушники | Захват и распознавание произошли без проблем | 1 |
| Кепка и очки | Захват и распознавание произошли без проблем | 1 |
| Маска, кепка, очки | Захват произошел, распознавания не было | 0 |
В третьем эксперимента ставилась задача, как поворот головы влияет на захват лица и его распознавание. Результаты эксперимента представлены в таблице 3.
| Поворот головы | Примечания | Результат распознавания |
|---|---|---|
| 90° влево | Захвата и распознавания не было | 0 |
| 90° вправо | Захвата и распознавания не было | 0 |
| 45° влево | Захват и распознавание произошли без проблем | 1 |
| 45° вправо | Захват и распознавание произошли без проблем | 1 |
| Вверх | Был захват, но не было распознавания | 0 |
| Вниз | Захват и распознавание не было | 0 |
Четвертый эксперимент связан с влиянием освещения на захват лица и качество его распознавания. Эксперимент проводился в одной комнате при разном освещении, от тусклого освещения с окна без включения света, до яркого освещения в комнате и за окном. Результаты эксперимента приведены в таблице 4.
| Освещение комнаты | Примечания | Результат распознавания |
|---|---|---|
| Тусклое естественное освещение | Захват произошел без проблем, распознавание было с задержкой | 1 |
| Темное естественное освещение | Захват и распознавание произошли без проблем | 1 |
| Естественное освещение | Захват и распознавание произошли без проблем | 1 |
| Тусклое естественное освещение, при включенном искусственном | Захват и распознавание произошли без проблем | 1 |
| Темное естественное освещение, при включенном искусственном | Захват и распознавание произошли без проблем | 1 |
| Яркое естественное освещение, при включенном искусственном | Захват и распознавание произошло без проблем | 1 |
Объектом исследований в данной работе является система распознавания человека по изображению его лица с помощью нейронной сети. В частности рассматривается задача автоматической видеорегистрации присутствия студентов в аудитории с помощью нейросетевого распознавания лиц. Предложена схема видеорегистрации студентов при входе в аудиторию с помощью компьютерного зрения. Признаки лица человека формируются предобученной свёрточной нейронной сетью VGGFace. Выполнена оценка качества распознавания людей нейросетью VGGFace путём проведения ряда экспериментов по распознаванию лиц в условиях разного вида помех.