~/kocheturov/diss/index.html
Кочетуров В.В.

Кочетуров Виталий Владимирович

// Факультет

const faculty = "Факультет интеллектуальных систем и программирования";

// Кафедра

const dept = "Кафедра программной инженерии им. Л.П. Фельдмана";

// Направление

const direction = "09.04.04 «Программная инженерия»";

// Профиль

const profile = "Методы и средства разработки программного обеспечения";


// Тема ВКР:

const thesisTopic = "Сравнительный анализ статистических методов и свёрточных нейронных сетей в компьютерном распознавании лиц";

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

const supervisor = "к.т.н., доцент Федяев Олег Иванович";

Реферат по теме выпускной работы

# Введение

Технологии компьютерного распознавания лиц за последние десятилетия прошли стремительный путь от сугубо академических исследований до повсеместного практического внедрения в системы государственной безопасности, потребительскую электронику и сферу бизнес-аналитики. Этот технологический прогресс обусловлен эволюцией алгоритмических подходов, в которой на смену классическим статистическим методам, таким как метод главных компонент (PCA) и линейный дискриминантный анализ (LDA), пришли сложные архитектуры глубокого обучения [1]. Свёрточные нейронные сети (CNN) продемонстрировали качественный скачок в показателях точности и робастности, эффективно справляясь с вариациями освещения, позы и сложными выражениями лица, что ранее являлось серьезным вызовом для автоматизированных систем [2].

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

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

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

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

# 1. Теоретический анализ методов распознавания лиц

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

## 1.1. Анализ задачи компьютерного распознавания лиц

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

Верификация лица (Face Verification) — это задача сравнения «один к одному» (1:1). Система должна ответить на вопрос: «Является ли этот человек тем, за кого он себя выдает?». Входными данными служат два изображения: одно — проверяемое, другое — эталонное (например, фотография в паспорте или сохраненный профиль пользователя). Результатом является бинарный ответ (да/нет) или оценка уверенности в совпадении.

Идентификация лица (Face Identification) — это задача сравнения «один ко многим» (1:N). Система должна ответить на вопрос: «Кто этот человек?». Входное изображение итеративно сравнивается со всеми изображениями в базе данных, и система либо находит наиболее вероятное совпадение, либо сообщает, что данный человек в базе отсутствует. Идентификация является значительно более сложной задачей, так как с ростом размера базы данных (N) экспоненциально возрастает вероятность ложного срабатывания.

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

## 1.2. Статистические методы распознавания лиц

Ранние подходы к распознаванию лиц основывались на эвристических правилах, описывающих геометрию черт лица. Однако более робастной альтернативой стали статистические методы, которые рассматривают изображение лица не как набор отдельных черт, а как целостный объект — точку в многомерном векторном пространстве, где размерность равна количеству пикселей. Ключевыми представителями этого семейства алгоритмов, основанных на проекционных преобразованиях и анализе текстур, являются метод главных компонент (PCA), линейный дискриминантный анализ (LDA) и методы, использующие локальные бинарные шаблоны (LBP) [4].

Eigenfaces (Собственные лица) — это метод, основанный на анализе главных компонент (Principal Component Analysis, PCA). Принцип работы заключается в том, что сначала собирается набор изображений, который используется для обучения. Каждое изображение нормализуется, вычисляется «среднее лицо» по выборке, и затем для каждого изображения находится разность между ним и средним. Эти разности используются для построения матрицы ковариации [5]. Собственные векторы этой матрицы, соответствующие наибольшим собственным значениям, называются «собственными лицами». Они представляют собой основные направления изменчивости в данных. Любое новое изображение лица может быть представлено как взвешенная линейная комбинация этих eigenfaces. Классификация производится путем вычисления евклидова расстояния между проекциями изображений.

Среднее лицо
Рисунок 1.1 – Среднее лицо
Собственные лица
Рисунок 1.2 – Собственные лица (Eigenfaces)

Преимущества метода включают простоту реализации и малые требования к памяти. Однако Eigenfaces чувствителен к изменениям освещения, масштаба и фона, так как PCA минимизирует общую ошибку реконструкции, а не ошибку классификации.

Fisherfaces (Лица Фишера) — алгоритм, основанный на линейном дискриминантном анализе (Linear Discriminant Analysis, LDA). В отличие от eigenfaces, который минимизирует изменчивость внутри всех данных без учета меток классов, LDA стремится максимизировать разницу между классами (разными людьми) и минимизировать разброс внутри одного класса (снимки одного человека) [6]. Метод вычисляет векторы, максимизирующие отношение межклассовой дисперсии к внутриклассовой. Это делает Fisherfaces более эффективным для задач распознавания при наличии вариаций освещения, однако он требует большего объема размеченных данных для обучения.

Лица Фишера
Рисунок 1.3 – Линейная комбинация дискриминантных векторов ("лица Фишера")

LBP (Local Binary Patterns) — метод извлечения локальных текстурных признаков. LBP вычисляет бинарный код для каждого пикселя изображения путем сравнения его яркости с яркостью соседей (обычно в окрестности 3x3). Если соседний пиксель ярче центрального, записывается 1, иначе 0 [7]. Полученная последовательность бит преобразуется в десятичное число. Гистограмма этих значений по всему изображению (или по регионам) формирует вектор признаков, который устойчив к монотонным изменениям освещения и вычислительно эффективен.

Схема LBP
Рисунок 1.4 – Получение значения LBP

## 1.3. Свёрточные нейронные сети

Революционный прорыв в области компьютерного зрения и, в частности, в распознавании лиц, связан с появлением и развитием архитектур глубокого обучения, среди которых доминирующую роль играют свёрточные нейронные сети (CNN) [8]. В отличие от классических подходов, основанных на вручную спроектированных признаках, CNN реализуют парадигму сквозного обучения (end-to-end learning). Сеть способна автоматически, на основе большого объема данных, выучивать иерархию признаков — от низкоуровневых текстур до высокоуровневых семантических концепций.

В основе любой современной свёрточной нейронной сети лежит комбинация нескольких типов слоёв.

Свёрточный слой (Convolutional Layer) является фундаментальным строительным блоком. Его задача — извлечение локальных признаков. Слой оперирует набором обучаемых фильтров (ядер свёртки) небольшого размера (например, 3x3). Каждый фильтр «скользит» по входному изображению, выполняя операцию поэлементного умножения и суммирования, формируя на выходе карту признаков (feature map). Фильтры нижних слоев обучаются реагировать на примитивы (границы, углы), а более глубокие слои комбинируют их в сложные паттерны (глаза, носы).

Сразу после операции свёртки применяется нелинейная функция активации, чаще всего ReLU (Rectified Linear Unit), определяемая как f(x) = max(0, x). Она позволяет сети моделировать сложные нелинейные зависимости в данных [9].

Пулинговый слой (Pooling Layer), или слой подвыборки, предназначен для снижения пространственной размерности карт признаков и обеспечения инвариантности к небольшим сдвигам и искажениям. Наиболее распространен Max-Pooling, выбирающий максимальное значение в окне (например, 2x2). Это делает представление более компактным и вычислительно эффективным.

Полносвязный слой (Fully Connected Layer) обычно располагается в конце архитектуры. Он принимает на вход «сплющенный» вектор признаков от предыдущих слоев и выполняет финальную классификацию или формирование компактного вектора-эмбеддинга.

В современных системах распознавания лиц стандартная задача классификации (Softmax) уступила место обучению метрики сходства (Metric Learning). Цель состоит в обучении такого преобразования, которое отображает изображение лица в векторном пространстве так, чтобы векторы одного человека находились близко друг к другу (малое внутриклассовое расстояние), а векторы разных людей — максимально далеко. Для этого используются специализированные функции потерь:

  • Triplet Loss (используется в FaceNet): оперирует тройками изображений (якорь, позитивный пример, негативный пример) и минимизирует расстояние до позитивного, максимизируя до негативного [10].
  • Angular Margin Losses (ArcFace, CosFace): современные подходы, которые оптимизируют косинусное расстояние (угол) между векторами на гиперсфере, добавляя угловой зазор (margin) для лучшего разделения классов [11], [12].

Для извлечения признаков используются различные базовые архитектуры:

  • VGGNet: архитектура с очень глубоким стеком свёрточных слоев малого размера (3x3), популярная в ранних системах [13].
  • ResNet (Residual Networks): де-факто стандарт, использующий residual-блоки с пробросом связей (skip connections), что позволяет обучать очень глубокие сети (ResNet-50, ResNet-101) без проблемы затухания градиента [14].
  • Inception (GoogLeNet): использует параллельные ветви сверток разного размера для анализа признаков на разных масштабах [15].
  • MobileNets: легковесные архитектуры с глубинно-разделимыми свёртками, оптимизированные для мобильных устройств [16], [17].
VGG-16
Рисунок 1.5 – Структура VGG-16
ResNet
Рисунок 1.6 – Архитектура свёрточной нейронной сети ResNet50

Каждая из этих архитектур имеет свои преимущества и недостатки, которые были подробно исследованы в ряде сравнительных работ [18].

Inception
Рисунок 1.7 – Архитектура нейронной сети Inception (GoogLeNet)
MobileNet
Рисунок 1.8 – Структура сети MobileNet v2 + SSD

# 2. Методология сравнительного анализа алгоритмов распознавания лиц

Проведенный теоретический анализ выявил два принципиально разных класса методов. Статистические методы (PCA, LDA, LBP) математически прозрачны, относительно просты в реализации и не требовательны к вычислительным ресурсам, но их эффективность сильно зависит от строгости условий съемки [19]. С другой стороны, свёрточные нейронные сети показывают передовые результаты по точности и робастности в сложных условиях («в дикой природе»), но требуют значительных вычислительных мощностей (GPU) и огромных объемов данных для обучения. Основная гипотеза исследования заключается в том, что CNN продемонстрируют значительное количественное превосходство в точности, особенно на сложных наборах данных, в то время как классические методы сохранят преимущество в скорости обучения и инференса.

## 2.1. Построение унифицированного конвейера обработки данных

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

  1. Обнаружение и локализация лица. На этом этапе используется современный нейросетевой детектор MTCNN (Multi-task Cascaded Convolutional Networks) [20]. В отличие от классических каскадов Хаара [21], MTCNN обеспечивает высокую точность даже при сложных ракурсах и одновременно возвращает координаты ключевых точек лица (глаза, нос, уголки рта). Также рассматривались альтернативные детекторы на базе SSD [22] и YOLO [23].
  2. Выравнивание и нормализация геометрии. На основе найденных координат глаз изображение подвергается аффинному преобразованию (повороту и масштабированию) так, чтобы линия глаз стала горизонтальной, а центры глаз находились в фиксированных координатах. Это критически важно для статистических методов, чувствительных к смещениям.
  3. Кадрирование и масштабирование. Выровненное лицо обрезается по стандартному шаблону и масштабируется к единому разрешению (например, 112x112 пикселей), что обеспечивает сопоставимость входных векторов.
  4. Фотометрическая нормализация. Для снижения влияния вариаций освещения применяются методы предобработки, такие как выравнивание гистограммы (Histogram Equalization) или адаптивное выравнивание (CLAHE), а также нормализация пикселей к нулевому среднему значению и единичной дисперсии.

## 2.2. Выбор и описание наборов данных

Выбор репрезентативных наборов данных (датасетов) является фундаментом исследования. Используется многоуровневый подход:

  • ORL (The Olivetti Research Laboratory Database): классический, небольшой датасет (400 изображений 40 человек). Характеризуется контролируемыми условиями, но имеет вариации мимики. Используется для базовой проверки работоспособности алгоритмов.
  • Yale Face Database B (Extended): специализированный набор данных, созданный для оценки робастности к экстремальным изменениям освещения. Содержит тысячи снимков, сделанных при 64 различных позициях источника света. Это «стресс-тест» для алгоритмов.
  • LFW (Labeled Faces in the Wild): эталонный мировой бенчмарк для тестирования систем в неконтролируемых условиях. Содержит более 13 000 фотографий, собранных из интернета, с огромными вариациями в позе, освещении, возрасте и перекрытиях. Стандартный протокол LFW, предложенный в [24], (верификация на 6000 парах) является основной метрикой сравнения.
  • CASIA-WebFace и VGGFace2: крупномасштабные наборы данных (от 0.5 до 3.3 миллиона изображений), необходимые для глубокого обучения современных CNN. Они позволяют сети выучить обобщающие признаки [25].
  • MegaFace: бенчмарк для тестирования масштабируемости идентификации. Проверяет способность алгоритма найти нужное лицо среди миллиона отвлекающих изображений (distractors) [26].

## 2.3. Критерии и метрики для сравнительной оценки

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

1. Метрики точности для задачи верификации (1:1):

  • Accuracy (ACC) — доля правильных решений (верных совпадений и верных несовпадений). Рассчитывается как (TP + TN) / (TP + TN + FP + FN), где TP — истинно положительные, TN — истинно отрицательные срабатывания.
  • False Acceptance Rate (FAR) — уровень ложного допуска (ошибка второго рода). Доля случаев, когда система ошибочно принимает чужого человека за своего. Критична для систем безопасности. FAR = FP / (FP + TN).
  • False Rejection Rate (FRR) — уровень ложного отказа (ошибка первого рода). Доля случаев, когда система не узнает зарегистрированного пользователя. Важна для удобства использования. FRR = FN / (FN + TP).
  • ROC-кривая (Receiver Operating Characteristic) и площадь под ней (AUC) — графики, показывающие зависимость доли верных обнаружений от доли ложных срабатываний при варьировании порога принятия решения.

2. Метрики для задачи идентификации (1:N):

  • Rank-1 Accuracy — вероятность того, что правильная личность будет находиться на первой позиции в списке кандидатов, предложенном системой.
  • CMC-кривая (Cumulative Match Characteristic) — график, показывающий вероятность нахождения правильного ответа в списке из первых K кандидатов (Top-K accuracy).

3. Метрики производительности и ресурсов: оцениваются время обучения модели, время извлечения признаков (Inference Time) для одного изображения (критично для реального времени), объем занимаемой памяти (RAM и VRAM) и физический размер модели на диске. Робастность оценивается не отдельной метрикой, а путем анализа падения точности при переходе от «чистых» данных (ORL) к зашумленным (LFW, Yale B).

# Заключение

В ходе выполнения работы были достигнуты следующие результаты:

  1. Проведен детальный теоретический анализ предметной области. Первая глава посвящена обзору задачи компьютерного распознавания лиц и ключевых вызовов (вариации позы, освещения). Рассмотрены фундаментальные принципы, математический аппарат и ограничения двух поколений алгоритмов: классических статистических методов (Eigenfaces на базе PCA, Fisherfaces на базе LDA, LBP) и современных свёрточных нейронных сетей (CNN) с различными архитектурами и функциями потерь.
  2. Разработана комплексная методология для проведения сравнительного исследования. Во второй главе обоснована необходимость и описана структура унифицированного конвейера предобработки данных, обеспечивающего объективность эксперимента. Выполнен подбор и анализ репрезентативных наборов данных различной сложности (от лабораторных ORL до реалистичных LFW и MegaFace), а также определен исчерпывающий набор метрик для многокритериальной оценки точности, производительности и робастности.

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

# Список использованных источников

  1. Minaee, S. Biometric Recognition Using Deep Learning: A Survey / S. Minaee [et al.] // IEEE Transactions on Artificial Intelligence. – 2023. – Vol. 4. – P. 1–20.
  2. Alzubaidi, L. Review of deep learning: concepts, CNN architectures, challenges, applications, future directions / L. Alzubaidi [et al.] // Journal of Big Data. – 2021. – Vol. 8, No. 1. – P. 53.
  3. Shamir, L. Evaluation of face datasets as tools for assessing the performance of face recognition methods / L. Shamir // International Journal of Computer Vision. – 2008. – Vol. 79, No. 3. – P. 225–230.
  4. Ye, F. A comparative study of PCA, LDA and Kernel LDA for image classification / F. Ye, Z. Shi, Z. Shi // 2009 International Symposium on Ubiquitous Virtual Reality. – IEEE, 2009. – P. 51–54.
  5. Turk, M. Eigenfaces for recognition / M. Turk, A. Pentland // Journal of Cognitive Neuroscience. – 1991. – Vol. 3, No. 1. – P. 71–86.
  6. Belhumeur, P. N. Eigenfaces vs. fisherfaces: Recognition using class specific linear projection / P. N. Belhumeur, J. P. Hespanha, D. J. Kriegman // IEEE Transactions on Pattern Analysis and Machine Intelligence. – 1997. – Vol. 19, No. 7. – P. 711–720.
  7. Ahonen, T. Face description with local binary patterns: Application to face recognition / T. Ahonen, A. Hadid, M. Pietikainen // IEEE Transactions on Pattern Analysis and Machine Intelligence. – 2006. – Vol. 28, No. 12. – P. 2037–2041.
  8. Wang, M. Deep face recognition: A survey / M. Wang, W. Deng // Neurocomputing. – 2021. – Vol. 429. – P. 215–244.
  9. Janocha, K. On loss functions for deep neural networks in classification / K. Janocha, W. M. Czarnecki // arXiv preprint arXiv:1702.05659. – 2017.
  10. Schroff, F. FaceNet: A unified embedding for face recognition and clustering / F. Schroff, D. Kalenichenko, J. Philbin // CVPR. – 2015. – P. 815–823.
  11. Deng, J. ArcFace: Additive Angular Margin Loss for Deep Face Recognition / J. Deng [et al.] // CVPR. – 2019. – P. 4690–4699.
  12. Wang, H. CosFace: Large Margin Cosine Loss for Deep Face Recognition / H. Wang [et al.] // CVPR. – 2018. – P. 5265–5274.
  13. Mehdipour Ghazi, M. A comprehensive analysis of deep learning based representation for face recognition / M. Mehdipour Ghazi, H. Kemal Ekenel // Proceedings of the IEEE conference on computer vision and pattern recognition workshops. – 2016. – P. 34–41.
  14. Lu, Z. Deep coupled ResNet for low-resolution face recognition / Z. Lu, X. Jiang, A. Kot // IEEE Signal Processing Letters. – 2018. – Vol. 25, No. 4. – P. 526–530.
  15. Sam, S. M. Offline signature verification using deep learning convolutional neural network (CNN) architectures GoogLeNet inception-v1 and inception-v3 / S. M. Sam [et al.] // Procedia Computer Science. – 2019. – Vol. 161. – P. 475–483.
  16. Zhang, X. ShuffleNet: An extremely efficient convolutional neural network for mobile devices / X. Zhang [et al.] // Proceedings of the IEEE CVPR. – 2018. – P. 6848–6856.
  17. Sandler, M. MobileNetV2: Inverted Residuals and Linear Bottlenecks / M. Sandler [et al.] // CVPR. – 2018. – P. 4510–4520.
  18. Платонов, А. В. Сравнительный анализ архитектур сверточных нейронных сетей для распознавания лиц / А. В. Платонов, Т. А. Широбокова // Вестник ЮУрГУ. Серия «Компьютерные технологии, управление, радиоэлектроника». – 2023. – Т. 23, № 2. – С. 45–56.
  19. Кухарев, Г. А. Биометрические системы: Методы и средства идентификации личности человека / Г. А. Кухарев. – СПб. : Политехника, 2001. – 240 с.
  20. Zhang, K. Joint face detection and alignment using multitask cascaded convolutional networks / K. Zhang [et al.] // IEEE Signal Processing Letters. – 2016. – Vol. 23, No. 10. – P. 1499–1503.
  21. Viola, P. Rapid object detection using a boosted cascade of simple features / P. Viola, M. Jones // CVPR 2001. – 2001. – Vol. 1. – P. I–I.
  22. Liu, W. SSD: Single shot multibox detector / W. Liu [et al.] // ECCV. – Springer, 2016. – P. 21–37.
  23. Redmon, J. You only look once: Unified, real-time object detection / J. Redmon [et al.] // CVPR. – 2016. – P. 779–788.
  24. Taigman, Y. DeepFace: Closing the gap to human-level performance in face verification / Y. Taigman [et al.] // CVPR. – 2014. – P. 1701–1708.
  25. Cao, Q. VGGFace2: A dataset for recognising faces across pose and age / Q. Cao [et al.] // FG 2018. – IEEE, 2018. – P. 67–74.
  26. Kemelmacher-Shlizerman, I. The MegaFace benchmark: 1 million faces for recognition at scale / I. Kemelmacher-Shlizerman [et al.] // CVPR. – 2016. – P. 4873–4882.
  27. Eberz, S. Evaluating behavioral biometrics for continuous authentication: Challenges and metrics / S. Eberz [et al.] // Proceedings of the 2017 ACM on Asia Conference on Computer and Communications Security. – 2017. – P. 386–399.

© Кочетуров В.В., ДонНТУ 2025