Ultralytics YOLO27: Вступи в список ожидания.
Лицензия YOLO
Назад к глоссарию Ultralytics

Facial Recognition

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

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

Как работает распознавание лиц#

Система распознавания выполняет для каждого изображения четыре этапа:

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

Детекция лиц — задача детекции объектов; модель Ultralytics YOLO26, дообученная на наборе данных лиц, например WIDER FACE, может выполнять её в реальном времени на периферийных камерах и передавать рамки лиц на следующие этапы. До глубокого обучения системы полагались на созданные вручную признаки — от расстояний между ориентирами лица до собственных лиц и локальных бинарных шаблонов. Их заменили обучаемые эмбеддинги, поскольку они намного устойчивее к освещению, выражению лица и возрасту. В 2015 году FaceNet напрямую обучала компактные 128-мерные эмбеддинги с помощью триплетной функции потерь, а функции потерь на основе отступа, например ArcFace, теперь сильнее раздвигают эмбеддинги разных людей. Этап сопоставления решает две разные задачи:

Верификация (1:1) определяет, принадлежит ли лицо заявленной личности, например когда телефон распознаёт владельца. Идентификация (1:N) выполняет поиск по всей галерее, например когда система контроля доступа сопоставляет лицо со всеми зарегистрированными сотрудниками. Модели из OpenCV Zoo выполняют весь конвейер всего в несколько строк кода. Этот код регистрирует лица на изображении, а затем идентифицирует лица на его зеркально отражённой копии по этой галерее.

import urllib.request

import cv2

# Download OpenCV Zoo's face detector (YuNet), face recognizer (SFace), and a test image
zoo = "https://github.com/opencv/opencv_zoo/raw/main/models"
urllib.request.urlretrieve(f"{zoo}/face_detection_yunet/face_detection_yunet_2023mar.onnx", "yunet.onnx")
urllib.request.urlretrieve(f"{zoo}/face_recognition_sface/face_recognition_sface_2021dec.onnx", "sface.onnx")
urllib.request.urlretrieve("https://ultralytics.com/images/bus.jpg", "bus.jpg")
img = cv2.imread("bus.jpg")
detector = cv2.FaceDetectorYN.create("yunet.onnx", "", (img.shape[1], img.shape[0]))
recognizer = cv2.FaceRecognizerSF.create("sface.onnx", "")

# Enroll each detected face as an aligned 128-D embedding
gallery = [recognizer.feature(recognizer.alignCrop(img, face)) for face in detector.detect(img)[1]]

# Identify the faces of a mirrored copy against the gallery (SFace match: cosine >= 0.363)
mirror = cv2.flip(img, 1)
for face in detector.detect(mirror)[1]:
    probe = recognizer.feature(recognizer.alignCrop(mirror, face))
    print([round(recognizer.match(probe, g, cv2.FaceRecognizerSF_FR_COSINE), 2) for g in gallery])

Код выводит [0.87, 0.06] и [0.09, 0.89]: сходство каждого отражённого лица со своим зарегистрированным эмбеддингом намного выше порога 0,363, а с эмбеддингом другого человека — намного ниже.

  • Обнаружение лиц: определяет положение лиц на изображении, но не устанавливает, кому они принадлежат; это первый этап распознавания, а также основа автофокусировки камеры и размытия лиц.
  • Анализ лиц и аффективные вычисления: Оценивают такие атрибуты, как выражение лица, положение головы или возраст, не устанавливая личность человека.
  • Повторная идентификация объектов (Re-ID): Сопоставляет людей по всему телу, например по одежде, между камерами. Метод работает при съёмке со спины и низком разрешении, но только на коротких промежутках времени.

Примеры применения в реальных условиях#

  • Разблокировка устройства: Телефоны распознают владельца за доли секунды; Face ID от Apple проецирует более 30 000 инфракрасных точек, чтобы построить карту глубины, которую нельзя имитировать распечатанной фотографией.
  • Путешествия и пограничный контроль: Автоматические электронные турникеты сравнивают фотографию путешественника в реальном времени со снимком, хранящимся на чипе его электронного паспорта.
  • Верификация личности: Банки и онлайн-сервисы при открытии счёта сравнивают селфи с фотографией в государственном удостоверении личности, дополняя проверку тестами на живое присутствие.
  • Организация фотографий: Приложения для фотографий группируют лица в личной библиотеке, чтобы пользователи могли найти все снимки члена семьи.

Точность, предвзятость и подмена личности#

Каждая система представляет собой компромисс между двумя ошибками: ложное совпадение принимает за нужного не того человека, а ложное несовпадение отклоняет нужного человека. Баланс между ними задаёт порог сходства. Оценка технологий распознавания лиц NIST (FRTE), ранее называвшаяся FRVT, сравнивает коммерческие алгоритмы на миллионах изображений. Исследование 2019 года, охватившее 189 алгоритмов от 99 разработчиков, выявило у большинства из них различия между демографическими группами по частоте ложноположительных результатов. Это наглядный пример алгоритмической предвзятости. Распознавание можно обмануть фотографиями, воспроизведением изображения на экране и масками, поэтому в производственных системах применяют обнаружение атак с предъявлением, которое часто называют проверкой живого присутствия. Для этого используют датчики глубины, инфракрасные датчики или анализ малозаметных движений.

Конфиденциальность и регулирование#

Шаблоны лиц относятся к биометрическим данным, поэтому законы считают их крайне чувствительными персональными данными. Согласно GDPR, биометрические данные, используемые для идентификации человека, относятся к особой категории и требуют чёткого правового основания; закон штата Иллинойс о конфиденциальности биометрической информации требует письменного согласия до сбора компанией шаблона лица. Закон ЕС об искусственном интеллекте устанавливает ещё более строгие требования: с 2 февраля 2025 года он запрещает создавать базы данных распознавания лиц посредством неизбирательного сбора изображений из интернета или систем видеонаблюдения, а также использовать удалённую биометрическую идентификацию в реальном времени в общественных местах для правоохранительных целей, за исключением нескольких строго определённых случаев.

Изучи решения

Компьютерное зрение в спорте

Компьютерное зрение в спорте

Узнай, как Ultralytics YOLO обеспечивает компьютерное зрение в спорте: отслеживание игроков и мяча, аналитика результатов, полезные выводы для тренеров и реабилитация спортсменов.
Подробнее
Компьютерное зрение для аэросъёмки

Компьютерное зрение для аэросъёмки

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

Компьютерное зрение в аэрокосмической отрасли

Применяй компьютерное зрение в аэрокосмической отрасли с Ultralytics YOLO: для осмотра самолётов, обнаружения посторонних предметов на взлётно-посадочных полосах, наземного обслуживания аэропортов и выявления дефектов композитных материалов.
Подробнее
Компьютерное зрение в сфере безопасности

Компьютерное зрение в сфере безопасности

Защити любой объект с помощью моделей Ultralytics YOLO. ИИ на базе компьютерного зрения обеспечивает мониторинг периметра, обнаружение угроз, распознавание номерных знаков и безопасность на рабочем месте.
Подробнее
Компьютерное зрение в робототехнике

Компьютерное зрение в робототехнике

Создавай более интеллектуальные машины с моделями Ultralytics YOLO. ИИ на базе компьютерного зрения в робототехнике обеспечивает автономную навигацию, восприятие, отслеживание объектов и управление в реальном времени.
Подробнее
Компьютерное зрение в логистике

Компьютерное зрение в логистике

Оптимизируй логистику с моделями Ultralytics YOLO. Визуальный AI обеспечивает проверку посылок, сортировку, отслеживание транспорта и мониторинг безопасности на складе в реальном времени.
Подробнее
Компьютерное зрение в розничной торговле

Компьютерное зрение в розничной торговле

Переосмысли розничную торговлю с моделями Ultralytics YOLO. Визуальный AI обеспечивает отслеживание запасов, мониторинг полок, управление очередями и более глубокое понимание поведения покупателей.
Подробнее
Компьютерное зрение в здравоохранении

Компьютерное зрение в здравоохранении

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

Компьютерное зрение в производстве

Оптимизируй производство с моделями Ultralytics YOLO. Компьютерное зрение на базе ИИ обеспечивает контроль качества, обнаружение дефектов, контроль использования СИЗ и автоматизацию сборочных линий.
Подробнее
Компьютерное зрение в автомобильной отрасли

Компьютерное зрение в автомобильной отрасли

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

Компьютерное зрение в сельском хозяйстве

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

Давай вместе строить будущее ИИ!

Начни свой путь в будущее машинного обучения