В связи с широким кругом задач, которые решают технологии распознавания лица, интерес к этим системам очень велик. На основе этой технологии могут поддерживаться различные сценарии: проверка подлинности пользователей для доступа, подсчет людей в помещении для управления очередями и не только. Больше о сферах применения распознавания лиц вы можете прочитать здесь.

Страница Face ID

Мы подготовили для вас сравнение возможностей Face ID — сервиса распознавания и сравнения лиц по фото от Evergreen — и трех наиболее известных программ для распознавания: Microsoft Azure Face API, Google Cloud Vision API и Amazon Rekognition Image (переходите по ссылкам непосредственно в интересующие вас разделы). 

При проведении анализа мы поставили себе цель протестировать следующие функциональные блоки:

1. Обнаружение лица на фото (Face Detection). 

2. Сравнение лиц (Face Comparison).

3. Определение атрибутов лица (пол, возраст, этническая принадлежность, эмоции).

4. Поиск похожих лиц — может ли система идентифицировать лицо определенного человека среди группы фото (найти лицо, больше всего похожее на целевое лицо).

Ориентировались мы на следующие критерии (относятся к тестированию каждого функционального блока из перечисленных выше):

1. Точность (процент совпадения).

2. Скорость отработки сервиса — время от начала отправки запроса до получения результата.

3. Стоимость распознавания по каждой из функций.

4. Дополнительный функционал и возможности распознавания (в том, что касается распознавания лиц).

Для объективной оценки мы использовали одни и те же фото и по очереди анализировали их в каждом из сервисов. Давайте для удобства сравним возможности Face ID и всех трех систем:

face-recognition-services

Сравнение возможностей Face ID и Azure Face API

Azure Face API — облачный сервис для распознавания лиц от Microsoft, который входит в состав Azure Cognitive Services. Azure Face API использует передовые алгоритмы распознавания и предназначен для выявления, проверки, идентификации и анализа лиц на изображениях и видео.

Обнаружение лица

Сервис Azure Face обнаруживает лица на фото и возвращает координаты прямоугольника, в котором они расположены. Функция распознавания при необходимости извлекает ряд атрибутов, связанных с лицом: положение головы, пол, возраст, эмоции, волосы на лице, очки — с процентом достоверности распознавания для данного лица. Как видим ниже, система определила, что на фото — мужчина 36 лет, который улыбается, а распознанная эмоция — счастье.azure-face-detection

Face ID может определить наличие и расположение лиц на изображении и возвращает точные ограничивающие прямоугольники вокруг них. Система также может определить координаты ключевых точек лица (подбородок, глаза, брови, уголки рта, контур носа) и атрибуты: пол, возраст, интенсивность улыбки, положение головы, размытость изображения, глаза (открыты/закрыты, есть ли очки). Полный отчет будет в формате JSON. faceid-face-detection

Для Face ID средняя скорость определения наличия на фото человеческого лица на большей выборке фотографий составляет 1,4 с.detection-faceid

Сравнение лиц

В Azure Face эта функция называется «проверка лиц». Фактически, система оценивает, принадлежат ли два лица на фото одному и тому же человеку, и возвращает вокруг обнаруженных лиц ограничивающий прямоугольник. Как видим на примере ниже, Azure Face подтверждает, что на фото находятся разные люди. Скорость ответа — приблизительно 394 мс.

azure-face-verification

Face ID также сравнивает два фото и определяет, изображен ли на них один и тот же человек. Вы можете загрузить картинку с компьютера или использовать URL для проверки фото. Дополнительно система оценивает схожесть лиц (59,2% в данном случае — разные люди). Время обработки — 454 мс.

faceid-face-comparison

Выражения и атрибуты лица

Azure Face API может распознавать выражения лица: нейтральное, радость, гнев, презрение, отвращение, грусть, страх и удивление. Эта функция называется «распознавание эмоций». Azure извлекает атрибуты лица на этапе распознавания (предыдущая функция). В данном режиме программа создает вокруг обнаруженного лица прямоугольник и выдает соответствующие оценки достоверности для каждой эмоции.

azure-emotion-recognition

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

Поиск похожих лиц

У нас не было возможности протестировать демо, но сервис Azure Face может сравнивать целевое лицо и набор лиц, доступных для поиска, чтобы найти очень похожие лица. Программа поддерживает два режима работы: matchPerson возвращает похожие лица после фильтрации того же пользователя, а режим matchFace игнорирует такой фильтр и возвращает список обнаруженных лиц, которые могут или не могут принадлежать искомому человеку.

azure-similarity-search

Источник: https://docs.microsoft.com/en-us/azure/cognitive-services/face/overview

На сегодняшний день мы не включали возможность поиска похожих лиц в состав пакета Face ID. Но мы можем внедрить данную функцию в ваш проект. Получив целевое лицо и коллекцию фото для сравнения, API поиска вернет коллекцию очень похожих лиц и соответствующие коэффициенты сходства. Это будет выглядеть примерно так:

1. Сравнение с группой кандидатов:faceid-similarity-search

2. Результаты поиска и ответ системы в формате JSON:faceid-search-results

В этом примере мы видим, что система распознала того же человека на фото 1 (его мы использовали в качестве запроса на поиск) и фото 2 с наибольшей вероятностью. Для других кандидатов вероятность совпадения низкая. 

Сравнение возможностей Face ID и Google Cloud Vision API

Cloud Vision API — это комплексный продукт по распознаванию от Google, в котором используются предварительно обученные модели. Он определяет объекты и лица на фото, может распознавать текст, автоматически присваивать метаданные и не только. В целях этого обзора мы сосредоточимся на функциях, связанных с распознаванием и сравнением именно лиц.

Обнаружение лица

Функция распознавания лиц в Google Cloud Vision API может обнаружить одно или несколько лиц на фото. Дополнительно программа определяет общие свойства картинки (недоэкспонирование, размытость). А вот распознавание в контексте отдельного человека не поддерживается.cloud-api-face-detection

Cloud Vision просто определяет наличие лиц на изображении — точно так же, как распознает объекты. Система возвращает следующие данные: текстовое описание, уровень достоверности и нормализованные вершины [0, 1] прямоугольника, в котором расположен объект (в JSON).

cloud-api-object-detection

Face ID возвращает точные прямоугольники и определяет координаты ключевых точек лица (подбородок, глаза, брови, уголки рта, контуры носа). Также алгоритм возвращает дополнительные атрибуты: пол, возраст, наличие улыбки, положение головы, размытость, наличие очков, закрытые/открытые глаза — в формате JSON.faceid-face-detection

Сравнение лиц

Cloud Vision API не поддерживает сравнение и верификацию лиц. Система только подтверждает, что на фото есть лицо одного или нескольких людей.

С помощью FaceID вы можете сравнить два изображения и сверить, принадлежат ли распознанные лица одному человеку. При схожести <80% система определит, что на фото изображены разные люди.

Два фото одного человека: сходство 93,1% (лица совпадают), время ответа 1,163 с. 

faceid-same-person

Фото двух разных людей:

faceid-different-face

Несмотря на то, что эти актеры внешне очень похожи, система оценила сходство на уровне 57,6% (лица не совпадают), а время обработки составило 0,459 с.

Выражения и атрибуты лица

Cloud Vision API возвращает прямоугольники вокруг обнаруженных лиц и определяет координаты ключевых точек (глаза, уши, нос, рот и т.д.) с оценкой достоверности. Система также возвращает вероятностные оценки для эмоций (радость, печаль, гнев, удивление) и общие свойства картинки (недоэкспонированная, размытая, наличие головных уборов).

cloud-api-emotions

Пока что Face ID не поддерживает распознавание эмоций, как мы уже упоминали выше. Но мы можем создать и внедрить индивидуальное решение для вашего проекта в любой момент.

Наш сервис хорошо работает с распознаванием жестов. Его можно установить как дополнительные правила проверки в ваших системах аутентификации. Мы можем настроить распознавание 16 различных жестов. Приведем ниже пример похожего сервиса:faceid-gestures

Сравнение возможностей Face ID и Amazon Rekognition Image

Amazon Rekognition использует передовые технологии распознавания для определения лиц на фото и видео. Это ответ Amazon на Google Cloud Vision API и комплексный продукт для сегментации и классификации визуального контента. В целях данного обзора мы рассмотрим только компоненты для распознавания и анализа лиц.

Обнаружение лица

Мы тестировали эту функцию как часть демо Amazon Rekognition для распознавания объектов и образов. Программа автоматически создает метки для описания объектов, передачи общего смысла картинки и возвращает оценки достоверности. Для распознавания лиц на фото вам нужно настроить свой алгоритм (это описано в инструкции для разработчиков) и запустить операцию DetectFaces.amazon-image-object-detection

Как видим, система на 99,9% уверена, что лицо на фото принадлежит человеку, и что с вероятностью 96,3% это артист. Полный отчет можно получить в формате JSON.

Face ID распознает лицо на тестовом фото как принадлежащее 37-летнему мужчине, определяет расположение лица прямоугольником и также возвращает JSON-ответ, содержащий координаты ключевых точек (подбородок, глаза, брови, уголки губ, контуры носа) и другие атрибуты.faceid-face-detected

Сравнение лиц

Amazon Recognition Image сравнивает лицо на исходном изображении с каждым лицом, которое распознает на целевом фото. Если исходное изображение содержит несколько лиц, то алгоритм определяет лицо наибольшего размера и поочередно сравнивает его с каждым лицом на целевом изображении. В результате вы получаете массив совпадений лиц, информацию об исходном лице, ориентацию исходного и целевого изображения. Для каждого совпадения по лицу система возвращает оценку схожести (насколько лицо похоже на лицо-источник) и метаданные (ограничивающий прямоугольник и ключевые точки).amazon-image-comparison

Face ID сравнивает два фото, чтобы установить, принадлежат ли они одному человеку. Система решит, что это так, если процент сходства >80%. На нашем примере видим, что с вероятностью 93,1% мы распознали того же человека на обоих фото.

faceid-compare-same-person

Кроме этого Face ID автоматически определяет наличие лица на документах, например, фото паспорта. Эта функция может применяться в различных сервисах аутентификации (антифрод). В этом случае среднее время обработки составляет примерно 700 мс.faceid-compare-log

Выражения и атрибуты лица

Для Amazon Rekognition мы тестировали демо анализа лица. Алгоритм возвращает следующую информацию для каждого распознанного лица:

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

amazon-image-face-analysis

 

Face ID также возвращает перечисленные выше атрибуты (кроме эмоций) в формате JSON. Как мы упоминали раньше, ключевые точки лица, пол, возраст и другие характеристики определяются при распознавании лица.

Поиск похожих лиц

Amazon Rekognition позволяет хранить информацию о распознанных лицах в контейнерах на сервере — коллекциях. Вы можете использовать информацию о лицах, чтобы найти их на изображениях и видео, а также использовать индексирование для сохранения информации об обнаруженных чертах лица в коллекции. После создания коллекции и сохранения информации о всех лицах, вы можете выполнять поиск конкретного лица в выборке. Эти коллекции могут быть использованы в различных сценариях.

Текущая версия Face ID позволяет обнаруживать, сравнивать и проверять информацию о лицах на фото и в цифровых документах. Наша команда может разработать и внедрить поиск похожих лиц для вашего проекта.

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

29.07.2020
Используемые в статье картинки взяты из открытых источников и используются как иллюстрации.