Page cover image

Liveness

Оцениваем фотографию на «живость», чтобы убедиться, что перед нами фото человека, а не снимок экрана или другой фотографии

Параметры запроса к сервису

Асинхронный запрос

async — boolean

Поведение по умолчанию: async=false — сервис обрабатывает запросы синхронно. При отправке запроса вы получите ответ только после окончательного завершения обработки запроса сервисом.

Если вам нужен асинхронный режим, укажите в запросе async=true. В ответ на запрос сервис вернёт в response body параметр task_id. Например:

"task_id": "96b8ccc950a70699927036842c624d7c"

Используйте этот task_id, чтобы получить результаты классификации в методе result:

curl -X 'GET' \
  'https://latest.dbrain.io/result/96b8ccc950a70699927036842c624d7c?token=XXX' \
  -H 'accept: application/json'

Не забудьте указать в параметре token ваш ключ лицензии. Рекомендуем запрашивать метод result в цикле с периодом 1-2 секунды.

Возврат найденных областей изображения

Поведение по умолчанию: return_crops=false — cервис не возвращает найденные области изображения.

Если вам нужны найденные сервисом области изображения, укажите return_crops=true. Сервис вернёт в ответе API в параметре crop найденные области изображения с лицами.

Тегирование запроса

Поведение по умолчанию: параметр не используется.

Функция тегирует запросы по вашему усмотрению. Это упрощает отслеживание пакетов документов, связанных с конкретным клиентом-физлицом. Для использования функции, укажите в параметре task_tags удобный вам тег: task_tags=тэг

Тело запроса к API

Изображение

Изображение обязательно для передачи в запросе. Сервис ожидает изображение в двоичном виде.

Перед началом работы с сервисами изучите раздел «Общая информация о сервисах». Там мы рассказываем про допустимые форматы файлов, виды запросов и ответов, набор HTTP-статусов и даём рекомендации по устранению ошибок

В ответе на запрос API:

Иллюстрация к понятиям yaw, pitch и roll

  • task_id — string, идентификатор запроса, формат: 32 символа, 16-ричная строка

  • error — string, текстовое описание ошибки

  • task_tags — array[string], теги, если они переданы в параметре task_tags

  • success — boolean, статус запроса

    • true — запрос выполнен успешно

    • false — запрос не выполнен

  • status_code — integer, HTTP-код статуса запроса

  • result — объект, содержащий смысловую часть ответа сервиса

    • liveness_score — number от 0 до 1, чем больше число, тем выше витальность (живость) лица на изображении

    • input_image — $string, data URL с MIME-типом JPEG в формате base64 — оригинал изображения номер 1, возвращается, если в запросе передать return_crops=true

    • warnings — массив, описывающий предупреждения и ошибки, возможные значения:

      • More than two face detected — найдено более 2 лиц

      • No face detected on image — лицо не найдено

      • Head yaw is too high — поворот головы относительно вертикальной оси превышает ±5 градусов (здесь и далее ISO/IEC 19794-5)

      • Head pitch is too high — наклон головы вверх или вниз относительно горизонтальной оси, проведённой через уши, превышает ±5 градусов

      • Head roll is too high — наклон головы налево или направо относительно горизонтальной оси, проведённой через нос, превышает ±5 градусов

      • Left eye closed — левый глаз закрыт

      • Left eye occluded — левый глаз заслонён более, чем на 5%

      • Right eye closed — правый глаз закрыт

      • Right eye occluded — правый глаз заслонён более, чем на 5%

      • Mouth occluded — рот заслонён более, чем на 5%

    • face — объекты, содержащие информацию о лице человека:

      • confidence — number от 0 до 1, уровень уверенности модели, что на изображении найдено именно лицо, а не что-то другое

      • coords — массив, координаты лица на изображении по четырём точкам: верхний левый угол, верхний правый, нижний левый, нижний правый

      • crop — $string, data URL с MIME-типом JPEG в формате base64, область изображения с найденным лицом, возвращается, если в запросе передать return_crops=true

      • rotation — integer, в котором закодирована ориентация лица

        • 0 — поворот не требуется

        • 1 — требуется поворот на 90 градусов

        • 2 — требуется поворот на 180 градусов

        • 3 — требуется поворот на 270 градусов

      • head — объект, содержащий оценку положения головы в трёх измерениях

        • pitch — number от -180 до 180: оценка наклона головы вверх или вниз относительно горизонтальной оси, проведённой через уши, где 0 — нет наклона.

        • yaw — number от -180 до 180: оценка поворота головы налево или направо относительно вертикальной оси, где 0 — нет поворота.

        • roll — number от -180 до 180: оценка наклона головы налево или направо относительно горизонтальной оси, проведённой через нос, где 0 — нет наклона.

      • left_eye — объект, содержащий оценку левого глаза

        • occluded — number от 0 до 1, где 0 — глаз ничем не заслонён, а 1 — глаз полностью заслонён

        • open — true/false, где true — глаз открыт

      • right_eye — объект, содержащий оценку правого глаза

        • occluded — number от 0 до 1, где 0 — глаз ничем не заслонён, а 1 — глаз полностью заслонён

        • open — true/false, где true — глаз открыт

      • mouth — объект, содержащий оценку рта

        • occluded — number от 0 до 1, где 0 — рот ничем не закрыт, а 1 — рот полностью закрыт

Остальные поля не несут практического смысла. Оставили их для совместимости со старыми версиями