Концепции распознавания лиц

Обнаружение лиц находит человеческие лица на визуальных носителях, таких как цифровые изображения или видео. Когда лицо обнаружено, ему присваивается соответствующее положение, размер и ориентация; и его можно искать по таким ориентирам, как глаза и нос.

Вот некоторые термины, которые мы используем в отношении функции обнаружения лиц в ML Kit:

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

  • Ориентир — это достопримечательность внутри лица. Левый глаз, правый глаз и основание носа — все это примеры ориентиров. ML Kit предоставляет возможность находить ориентиры на обнаруженном лице.

  • Контур — это набор точек, повторяющих форму черты лица. ML Kit предоставляет возможность найти контуры лица.

  • Классификация определяет, присутствует ли определенная черта лица. Например, лицо можно классифицировать по тому, открыты или закрыты его глаза, улыбается оно или нет.

Ориентация лица

Следующие термины описывают угол, под которым лицо ориентировано относительно камеры:

  • Эйлер X : грань с положительным углом Эйлера X обращена вверх.
  • Эйлер Y : Лицо с положительным углом Эйлера Y смотрит вправо от камеры или влево, если оно отрицательное.
  • Euler Z : лицо с положительным углом Эйлера Z поворачивается против часовой стрелки относительно камеры.

ML Kit не сообщает угол Эйлера X, Эйлера Y или Эйлера Z обнаруженного лица, если LANDMARK_MODE_NONE , CONTOUR_MODE_ALL , CLASSIFICATION_MODE_NONE и PERFORMANCE_MODE_FAST установлены вместе.

Landmarks

Ориентир — это достопримечательность внутри лица. Левый глаз, правый глаз и основание носа — все это примеры ориентиров.

ML Kit распознает лица, не ища ориентиров. Обнаружение ориентиров — это необязательный шаг, который по умолчанию отключен.

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

Угол Эйлера Y Обнаруживаемые ориентиры
< -36 градусов левый глаз, левый рот, левое ухо, основание носа, левая щека
от -36 градусов до -12 градусов левый рот, основание носа, нижняя часть рта, правый глаз, левый глаз, левая щека, кончик левого уха
-12 градусов до 12 градусов правый глаз, левый глаз, основание носа, левая щека, правая щека, левый рот, правый рот, нижний рот
от 12 градусов до 36 градусов правый рот, основание носа, нижняя часть рта, левый глаз, правый глаз, правая щека, кончик правого уха
> 36 градусов правый глаз, правый рот, правое ухо, основание носа, правая щека

Каждый обнаруженный ориентир включает связанное с ним положение на изображении.

Контуры

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

Каждый контур объекта, который обнаруживает ML Kit, представлен фиксированным количеством точек:

Овал лица 36 очков Верхняя губа (верхняя) 11 очков
Левая бровь (сверху) 5 баллов Верхняя губа (нижняя) 9 баллов
Левая бровь (нижняя) 5 баллов Нижняя губа (верхняя) 9 баллов
Правая бровь (сверху) 5 баллов Нижняя губа (нижняя) 9 баллов
Правая бровь (нижняя) 5 баллов переносица 2 очка
Левый глаз 16 очков Низ носа 3 балла
Правый глаз 16 очков
Левая щека (в центре) 1 балл
Правая щека (в центре) 1 балл

Когда вы получаете все контуры лица одновременно, вы получаете массив из 133 точек, которые соответствуют контурам объектов, как показано ниже:

Индексы контуров объектов
0-35 Овал лица
36-40 Левая бровь (сверху)
41-45 Левая бровь (нижняя)
46-50 Правая бровь (сверху)
51-55 Правая бровь (нижняя)
56-71 Левый глаз
72-87 Правый глаз
88-96 Верхняя губа (нижняя)
97-105 Нижняя губа (верхняя)
106-116 Верхняя губа (верхняя)
117-125 Нижняя губа (нижняя)
126, 127 переносица
128-130 Низ носа (обратите внимание, что центральная точка находится под индексом 128)
131 Левая щека (в центре)
132 Правая щека (в центре)

Классификация

Классификация определяет, присутствует ли определенная черта лица. ML Kit в настоящее время поддерживает две классификации: глаза открыты и улыбаются .

Классификация – это величина достоверности. Это указывает на уверенность в наличии лицевой характеристики. Например, значение 0,7 или более для классификации улыбки указывает на то, что человек, скорее всего, улыбается.

Обе эти классификации основаны на обнаружении ориентиров.

Также обратите внимание, что классификации «глаза открыты» и «улыбается» работают только для фронтальных лиц, т. е. лиц с небольшим углом Эйлера Y (от -18 до 18 градусов).

Минимальный размер лица

Минимальный размер лица — это желаемый размер лица, выраженный как отношение ширины головы к ширине изображения. Например, значение 0,1 означает, что наименьшее лицо для поиска занимает примерно 10 % ширины искомого изображения.

Минимальный размер лица — это компромисс между производительностью и точностью: установка меньшего минимального размера позволяет детектору находить меньшие лица, но обнаружение займет больше времени; установка большего размера может исключить более мелкие лица, но будет работать быстрее.

Минимальный размер лица не является жестким ограничением; детектор может обнаружить лица немного меньшего размера, чем указано.

Следующие шаги

Используйте распознавание лиц в своем приложении для iOS или Android: