Соответствие фото (селфи) и паспорта

P.0067.IMG.SCN

Решение для сравнения фотографии человека и фотографии из паспорта.

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

Считается, что на фотографиях изображен один и тот же человек, если лица совпадают на 20—100 %. Если совпадение лиц менее 20 %, то считается, что на фото изображены разные люди.

Идентификаторы объекта: фото (скан) паспорта и фото (селфи).

Фотографии можно передать одним из двумя способов: указав ссылку на фото на внешнем ресурсе или используя UID файла в хранилище сервиса (для этого изображение нужно предварительно загрузить в систему. Подробнее в разделе Управление файлами).

Требования к фото: максимальный размер — 30 Мбайт (15 Мбайт при загрузке файла в хранилище сервиса), минимальный размер — 1 Кбайт.

Иcпользуемые источники: check_person/face_match.

Время генерации отчёта:

  • 50-й перцентиль — 2 с;
  • 95-й перцентиль — 30 с.

Параметры запроса

При отправке запроса на генерацию отчёта в теле запроса указываются следующие параметры:

Параметр Тип Обязательность Описание
queryType string Обязательный Тип запроса.
Фиксированное значение: MULTIPART
query string Обязательный Значение простого запроса.
Фиксированное значение:  
data object Обязательный Идентификаторы объекта поиска
Параметры объекта data
passport_url string Обязательный,
если не указан UID файла в системе
URL фото паспорта
photo_url string Обязательный,
если не указан UID файла в системе
URL фото физлица
assets array Обязательный,
если не указаны URL фотографий
Список UID фото для сверки
Содержимое объекта в assets
uid string Обязательный,
если не указан URL фото.
Используется совместно с destination_path
Уникальный идентификатор файла, загруженного в хранилище системы.
Имеет приоритет над URL фото, если они оба заполнены
destination_path string Обязательный,
если не указан URL фото.
Используется совместно с uid
Путь для идентификатора.
Возможные значения: data.passport_url для фото паспорта и data.photo_url для фото физлица

Фото в запросе можно передавать двумя способами:

  1. указать уникальный идентификатор файла в хранилище сервиса в параметре assets[].uid. В параметре assets[].destination_path требуется передать значение data.photo_url для фото физлица или data.passport_url для скана паспорта;
  2. указать ссылки на фото в параметрах passport_url и photo_url.

Если фотография в запросе передана обоими способами, то будет использоваться файл, указанный в параметре assets[].uid.

Пример тела запроса с фото в хранилище сервиса

{
  "queryType": "MULTIPART",
  "query": " ",
  "data": {
    "assets": [
      {
        "uid": "76532174196300087654321@test_domain",
        "destination_path": "data.passport_url"
      },
      {
        "uid": "237e9877e79b12d4a765321741963000@test_domain",
        "destination_path": "data.photo_url"
      }
    ]
  }
}

Пример тела запроса по фото с внешнего ресурса

{
  "queryType": "MULTIPART",
  "query": " ",
  "data": {
    "passport_url": "https://some.domain/passport.png",
    "photo_url": "https://some.domain/photo.png"
  }
}

Структура отчёта

Данные отчёта находятся в объекте data[].content.check_person.face_match тела ответа.

Поле Тип Описание
status string Статус сравнения фото.
Справочник значений
status_desc string Описание статуса сравнения фото
match_percentage number Процент совпадения

Справочник Статус сравнения фото

Значение Описание
FACE_NOT_FOUND В одном из загруженных фото или в обоих отсутствует лицо
MATCH Лица совпадают
DONT_MATCH Лица отличаются
NONE Ошибка

Пример данных отчёта

{
  "data": [
    {
      "report_type_uid": "P.0067.IMG.SCN_test_report@test_domain",
      "progress_ok": 1,
      "progress_wait": 0,
      "progress_error": 0,
      "state": {
        "sources": [
          {
            "_id": "check_person/face_match",
            "state": "OK",
            "data": {}
          }
        ],
        "data": {}
      },
      "content": {
        "check_person": {
          "face_match": {
            "status": "MATCH",
            "status_desc": "Лица совпадают",
            "match_percentage": 90.02
          }
        }
      }
    }
  ]
}

Пример данных отчёта, если на фото отсутствует лицо

{
  "data": [
    {
      "report_type_uid": "P.0067.IMG.SCN_test_report@test_domain",
      "progress_ok": 1,
      "progress_wait": 0,
      "progress_error": 0,
      "state": {
        "sources": [
          {
            "_id": "check_person/face_match",
            "state": "OK",
            "data": {}
          }
        ],
        "data": {}
      },
      "content": {
        "check_person": {
          "face_match": {
            "status": "FACE_NOT_FOUND",
            "status_desc": "В одном из загруженных фото или в обоих отсутствует лицо"
          }
        }
      }
    }
  ]
}