Материалы XV Международной научно-технической конференции
Информатика, управляющие системы, математическое и компьютерное моделирование
С. 1069-1074
УДК 004.93

РАСПОЗНАВАНИЕ ЛИЦА ЧЕЛОВЕКА СТАТИСТИЧЕСКИМИ МЕТОДАМИ

Кочетуров В.В.
ФГБОУ ВО Донецкий национальный технический университет
Кафедра программной инженерии им. Фельдмана
E-mail: v.v_kocheturov@mail.ru
Аннотация: Кочетуров В.В. Распознавание лица человека статистическими методами. В статье рассматриваются статистические методы применяемые в алгоритмах распознавания лиц, такие как метод главных компонент и линейный дискриминантный анализ. Представлены математические основы методов и приведены примеры применения методов на реальных данных.
Ключевые слова: распознавание лиц, статистические методы, метод главных компонент, линейный дискриминантный анализ.

Общая постановка проблемы

Распознавание лиц является одной из актуальных задач компьютерного зрения, находящей применение в системах безопасности, идентификации личности, робототехнике и других областях. Среди различных подходов к решению этой задачи отдельное место занимают статистические методы, основанные на извлечении информативных признаков из изображений лиц. Основными статистическими методами, которые используются для распознавания лиц, являются метод главных компонент (PCA, Principal Component Analysis) и метод линейного дискриминантного анализа (LDA, Linear Discriminant Analysis).

Метод главных компонент (PCA) и алгоритм eigenfaces

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

Eigenfaces выполняет 2 основные задачи:

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

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

1. Даны M изображений лиц размером h×w, каждое изображение преобразуется в вектор размером D(= hw) и помещается в набор

S = {Γ1, Γ2, ..., ΓM} (1)

Изображения лиц должны быть соответствующим образом масштабированы и выровнены, а фон (и, возможно, области, не относящиеся к лицу, такие как волосы и шея) должен быть постоянным или удаленным.

2. Каждое лицо отличается от среднего значения вектором Φi = Γi − Ψ, где среднее лицо определяется через выражение

Ψ = (1/M) ∑n=1M Γn (2)

3. Ковариационная матрица определяется как

C = (1/M) ∑n=1M ΦnΦnT = AAT (3)

где A = [Φ1 Φ2 ... ΦM].

4. Определение собственных векторов C является неразрешимой задачей для изображений типичных размеров, когда D >> M. Однако для эффективного вычисления собственных векторов C, можно сначала вычислить собственные векторы гораздо меньших M×M матрицы ATA. Матрицы собственных векторов и значений ATA определяются как

ATA vi = μivi (4)
A AT A vi = μi A vi ⇒ C ui = μi ui (5)

где r - ранг A. Обратите внимание, что собственные векторы, соответствующие собственным значениям нуля, были отброшены.

5. Матрицы собственных значений Λ и собственных векторов C являются

Λ = diag(μ1, μ2, ..., μr), U = A V (6)

где U={ui} - набор собственных лиц.

На рисунке 1 показаны собственные лица, полученные на обучаемом наборе лиц YALE, а на рисунке 2 изображено среднее лицо.

Пример десяти собственных лиц
Рис.1 Пример десяти собственных лиц, полученных на обучаемом наборе лиц
Среднее лицо
Рис. 2. Среднее лицо

Собственные лица охватывают m-мерное подпространство исходного пространства изображений путем выбора подмножества собственных векторов U' = {u1, u2, ..., um}, связанных с m наибольшими собственными значениями. В результате получается так называемое пространство лица [4], начало координат которого – среднее лицо, а оси – собственные лица (рис. 3.).

Визуализация 2D-пространства лица
Рис. 3. Визуализация 2D-пространства лица, с осями, представляющими два собственных лица.

Чтобы выполнить распознавание лиц, можно вычислить расстояние внутри пространства лиц или от него. Новое лица Γ проецируется в пространство лиц с помощью

ωk = ukT (Γ − Ψ) (7)

где k=1,...,m. Вектор ΩT = [ω1, ω2, ..., ωm] - набор значимых собственных векторов. Обратите внимание, что вектор веса Ω является представлением нового лица в пространстве лиц. Один простой способ определить, к какому классу лиц Γ принадлежит - минимизировать евклидово расстояние

εk = || Ω − Ωk ||2 (8)

где Ωk - вектор веса, представляющий k-й класс лиц. Лицо Γ считается принадлежащей классу k, если минимум εk меньше некоторого предопределенного порога θε; в противном случае она классифицируется как неизвестная.

Рисунок 1 иллюстрирует проецирование и распознавание, визуализируя пространство лиц в виде плоскости.

Линейный дискриминантный анализ (LDA) и алгоритм Fisherface

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

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

Наиболее известным DA является линейный дискриминантный анализ (LDA). Когда LDA используется для нахождения представления подпространства набора изображений лиц, результирующие базисные векторы, определяющие это пространство, называются лицами Фишера или пространствами Фишера.

Для вычисления лиц Фишера мы предполагаем, что данные в каждом классе распределены нормально. Мы обозначаем многомерное нормальное распределение как N(μi, Σi), со средним значением μi и ковариационной матрицей Σi, а его функция плотности вероятности равна

P(x) = (2π)-d/2i|-1/2 exp(-½ (x - μi)T Σi-1 (x - μi)) (9)

В задаче класса C мы имеем сi, i=1,…,C. С учетом этих нормальных распределений и предшествующих вероятностей их класса Pi классификация тестовой выборки x задается путем сравнения логарифмических вероятностей [2]. То есть

di(x) = ln(Pi P(x|ci)) = -½ (x - μi)T Σi-1 (x - μi) - ½ ln|Σi| + ln Pi

где di(x) известны как дискриминантные оценки каждого класса. Определенные таким образом дискриминантные оценки дают оптимальное решение по Байесу.

Дискриминантные оценки обычно приводят к квадратичным границам классификации между классами. Однако для случая, когда все ковариационные матрицы одинаковы, Σi=Σ , ∀i, квадратичные части di отменяют, получая линейные классификаторы. Эти классификаторы называются линейными дискриминантными базисами. Отсюда и название линейного дискриминантного анализа. Случай, когда все ковариации идентичны, известен как гомоскедастические нормальные распределения.

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

Sw = ∑j=1Ci=1nj (xij - μj)(xij - μj)T (10)

где xij - i-я выборка класса j, μj - среднее значение класса j, а nj - количество выборок в классе j.

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

Sb = ∑j=1C njj - μ)(μj - μ)T (11)

где μ представляет среднее значение для всех классов.

Теперь мы хотим найти те базисные векторы V, где Sw минимизировано, а Sb максимизировано, где V - матрица, столбцы которой vi являются базисными векторами, определяющими подпространство [3]. Они задаются,

V = argmax (|VT Sb V| / |VT Sw V|) (12)

Решение этой задачи дается обобщенным разложением по собственным значениям

Sb V = Sw V Λ (13)

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

Собственные векторы V, связанные с ненулевыми собственными значениями, являются лицами Фишера. Существует максимум C-1 лиц Фишера. Это легко увидеть из определения Sb. Sb представляет собой комбинацию C векторов признаков. Любые векторы C определяют подпространство размером C-1 или меньше. Равенство выполняется, когда эти векторы линейно независимы друг от друга. На рисунке 3 показаны первые четыре лица Фишера, полученные при использовании алгоритма на наборе из 100 фронтальных изображений лиц.

Первые 4 лица Фишера
Рис. 3. Первые 4 лица Фишера из набора 100 классов

Выводы

В данной статье рассмотрены два метода понижения размерности и распознавания лиц: Метод главных компонент (PCA) для eigenfaces и Линейный дискриминантный анализ (LDA) для fisherfaces. Оба метода имеют свои особенности и применимость в задачах распознавания лиц, но демонстрируют различную эффективность на разных датасетах, таких как ORL, YALE и LFW.

PCA (Eigenfaces):

LDA (Fisherfaces):

Сравнение эффективности Eigenfaces(PCA) и Fisherfaces(LDA) на различных датасетах показано в таблице 1.

Таблица 1 – Сравнение эффективности Eigenfaces(PCA) и Fisherfaces(LDA)
Датасет PCA (Eigenfaces) LDA (Fisherfaces)
% успешных распознаваний Время распознавания (с.) % успешных распознаваний Время распознавания (с.)
ORL 87 0.12 92 0.18
YALE 78 0.15 85 0.22
LFW 65 0.25 72 0.35
Литература
21. Парпиева А. Ж. МЕТОД ГЛАВНЫХ КОМПОНЕНТОВ РАСПОЗНАВАНИЯ ЛИЦ // Научные горизонты. – 2017. – №. 4. – С. 218-223.
22. Засыпкин Д. С., Белов Ю. С. Обзор алгоритмов распознавания лица человека в библиотеке OpenCV // E-Scio. – 2021. – №. 7 (58). – С. 80-89.
23. Lu J., Plataniotis K. N., Venetsanopoulos A. N. Face recognition using LDA-based algorithms // IEEE Transactions on Neural networks. – 2003. – Т. 14. – №. 1. – С. 195-200.
24. Lata Y. V. et al. Facial recognition using eigenfaces by PCA // International Journal of Recent Trends in Engineering. – 2009. – Т. 1. – №. 1. – С. 587.
Kocheturov V.V. Human face recognition by statistical methods. The article discusses statistical methods used in face recognition algorithms, such as the principal component method and linear discriminant analysis. The mathematical foundations of the methods are presented and examples of the application of the methods on real data are given.
Keywords: face recognition, statistical methods, principal component analysis, linear discriminant analysis.