Общий алгоритм работы алгоритмов распознавания лиц: 1
- Обнаружение лица. 2 Для этого используется метод Виолы — Джонса, который сканирует изображение при помощи чёрно-белых прямоугольников (примитивов Хаара). 24 Они находят более светлые и тёмные области на картинке, характерные для человеческих лиц. 2 Если в одном месте программа находит много таких совпадений, то, скорее всего, это лицо человека. 4
- Анализ лица. 1 Алгоритм оценивает геометрию лица, далее фото сопоставляется с массивом изображений по таким критериям, как глубина глаз, форма скул, рта, ушей, расстояние между лбом и подбородком. 1 В результате формируется модель, которая позволяет отличать лицо в кадре от остальных лиц в толпе. 1
- Трансформация изображения в данные. 1 Полученная модель лица преобразуется в вид математической формулы, которая называется отпечатком лица и содержит основные сведения о чертах внешности. 1
- Поиск совпадения. 1 Отпечаток лица сравнивается с массивом фотографий. 1 Если установлено совпадение, то система определяет, кому принадлежит лицо, с которым совпал исследуемый отпечаток. 1
В основе технологии распознавания лиц лежат две нейросети: 5
- Сеть-«выравниватель». 5 Она берёт картинку, детектирует на ней все лица, которые сможет найти, «вырезает» и «выравнивает» их. 5
- Сеть-«распознаватель». 5 Она принимает на входе выровненное изображение, которое передала первая нейросеть, а на выходе выдаёт вектор лица — то есть, набор чисел фиксированной длины. 5
Чтобы обучить нейросети, используют огромные базы данных с лицами людей. 5 Нейросети на входе сообщают, кому принадлежит это лицо, а затем, в ходе обучения, добиваются, чтобы она выдавала максимально точные результаты. 5 Обучившись на миллионах разных людей, нейросеть начинает распознавать и новые лица — те, которых не было в базе. 5