Распознавание лица

С помощью API распознавания лиц ML Kit вы можете обнаруживать лица на изображении, определять ключевые черты лица и получать контуры обнаруженных лиц. Обратите внимание, что API обнаруживает лица, но не распознает людей .

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

iOS Android

Основные возможности

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

Пример результатов

Пример 1

Физик Стивен Хокинг в невесомости (НАСА)

Для каждого обнаруженного лица:

Лицо 1 из 3
Ограничивающий многоугольник (884.880004882812, 149.546676635742), (1030.77197265625, 149.546676635742), (1030.77197265625, 329.660278320312), (884.880004882812, 329.660278320312)
Углы поворота Y: -14.054030418395996, Z: -55.007488250732422
Идентификатор отслеживания 2
Ориентиры на лице
Левый глаз (945.869323730469, 211.867126464844)
Правый глаз (971.579467773438, 247.257247924805)
Нижняя часть рта (907.756591796875, 259.714477539062)

и т. д.

Вероятности функций
Улыбка 0,88979166746139526
Левый глаз открыт 0,98635888937860727
Правый глаз открыт 0,99258323386311531

Пример 2 (распознавание контуров лица)

Если включено распознавание контуров лица, вы также получите список точек для каждой распознанной черты лица. Эти точки представляют форму объекта. На изображении ниже показано, как эти точки соотносятся с лицом. Нажмите на изображение, чтобы увеличить его:

Контуры черт лица
Переносица (505.149811, 221.201797), (506.987122, 313.285919)
Левый глаз (404.642029, 232.854431), (408.527283, 231.366623), (413.565796, 229.427856), (421.378296, 226.967682), (432.598755, 225.434143), (442.953064, 226.089508), (453.899811, 228.594818), (461.516418, 232.650467), (465.069580, 235.600845), (462.170410, 236.316147), (456.233643, 236.891602), (446.363922, 237.966888), (435.698914, 238.149323), (424.320740, 237.235168), (416.037720, 236.012115), (409.983459, 234.870300)
Верхняя губа (421.662048, 354.520813), (428.103882, 349.694061), (440.847595, 348.048737), (456.549988, 346.295532), (480.526489, 346.089294), (503.375702, 349.470459), (525.624634, 347.352783), (547.371155, 349.091980), (560.082031, 351.693268), (570.226685, 354.210175), (575.305420, 359.257751)
и т. д.