Как работает распознавание лиц в толпе?
Вы знали, что в толпе знакомое лицо вы сможете распознать с точностью в 97%?
Кажется, что это много, но системы для распознавания лиц уже в 2014 году обладали точностью в 99, 7%.
А сейчас многие системы обладают точностью около 100%, даже если человек в защитной маске.
Как работает система распознавания лиц?
Этап 1.
Для обнаружения лица используется очень простой метод виолы - Джонса, разработанный еще в 2001 году.
Этот алгоритм сканирует изображение при помощи прямоугольников, они называются примитивами хаара (смотрите в карусели).
Задача этих объектов - находить более светлые и темные области на изображении, характерных конкретно для человеческих лиц.
Т. е. если усреднить значения яркости область глаз будет темнее щек или лба, а переносица будет светлее бровей.
Этап 2.
Система расставляет на лице антропометрические точки, по которым впоследствии и будут вычисляться индивидуальные характеристики человека: разрез глаз, форма носа, подбородка, расстояние между ними и прочее. Таких признаков может быть много, вплоть до нескольких тысяч. Но минимум 68 (смотрите в карусели).
Этап 3.
Дальше система производит дополнительное преобразование изображения: устранятся поворот и наклон головы. А также проводится 3D-реконструкция лица из 2D-изображения. Таким образом, даже если человек на изображении смотрел вбок, равно можно получить четкий фронтальный снимок, что существенно повышает качество распознавания.
Этап 4.
Ну а дальше в бой вступает нейросеть, которая присваивает каждому лицу вектор признаков. Что это такое?
Это просто какое-то число, которое складывается из суммы характеристик лица: расстояний между опорными точками, текстуры определенных областей на лице и прочее. Таких характеристик может быть множество. Основное правило: они должны описывать лицо независимо от посторонних факторов: макияжа, прически, возрастных изменений.
Этап 5.
Остаётся сравнить полученный вектор с базой других векторов. Готово. Система идентифицировала вас.