Методы API Lite

Начиная с версии 1.1.0, Oz API Lite может принимать изображения и шаблоны в формате base64, а также возвращать в этом формате шаблоны биометрических проверок. Для включения этой опции необходимо в headers запроса передать Content-Transfer-Encoding = base64.

version – проверка версии компонентов

С помощью этого метода можно узнать, какие версии компонентов используются (начиная с версии 1.1.1).

Call GET /version

Входные параметры

-

Пример запроса

GET localhost/version

Успешный ответ метода

В случае успешного ответа метод возвращает сообщение со следующими параметрами.

Тип контента HTTP-ответа: “application/json”.

Выходные параметры

Наименование параметра

Тип

Описание

core

String

Версия API Lite.

tfss

String

Версия TFSS.

models

[String]

Массив версий моделей, где каждая запись содержит информацию о названии модели и ее версии.

Пример ответа

Биометрия

health – проверка состояния биометрического процессора biometry

С помощью этого метода можно проверить, корректно ли работает процессор.

Вызов метода: GET /v1/face/pattern/health

Входные параметры

-

Пример запроса

GET localhost/v1/face/pattern/health

Успешный ответ метода

В случае успешного ответа метод возвращает сообщение со следующими параметрами.

Тип контента HTTP-ответа: “application/json”.

Выходные параметры

Наименование параметра

Тип

Описание

status

Int

0 – биометрический процессор работает корректно.

3 – биометрический процессор неработоспособен.

message

String

Сообщение.

Пример ответа

extract – извлечение биометрического шаблона

Метод предназначен для извлечения биометрического шаблона из изображения. Тип контента HTTP-запроса: “image/jpeg” или “image/png”

Вызов метода: POST /v1/face/pattern/extract

Входные параметры

Наименование параметра

Тип

Описание

Не указывается*

Stream

Обязательный параметр. Изображение для извлечения биометрического шаблона. В заголовочном поле “Content-Type” должен быть указан тип контента.

*

Для параметров типа Stream имя указывать не нужно.

Для передачи данных в base64 необходимо в headers запроса передать Content-Transfer-Encoding = base64.

Пример запроса

Успешный ответ метода

В случае успешного ответа метод возвращает биометрический шаблон.

Тип контента HTTP-ответа: “application/octet-stream”.

Если в headers запроса передавалось поле Content-Transfer-Encoding со значением base64, то шаблон тоже вернется в base64.

Выходные параметры

Наименование параметра

Тип

Описание

Не указывается*

Stream

Биометрический шаблон, полученный из изображения

*

Для параметров типа Stream имя указывать не нужно.

Пример ответа

compare – сравнение биометрических шаблонов

Метод предназначен для сравнения двух биометрических шаблонов.

Тип контента HTTP-запроса: “multipart/form-data”.

Вызов метода: POST /v1/face/pattern/compare

Входные параметры

Наименование параметра

Тип

Описание

bio_feature

Stream

Обязательный параметр. Первый биометрический шаблон.

bio_template

Stream

Обязательный параметр. Второй биометрический шаблон.

Для передачи данных в base64 необходимо в headers запроса передать Content-Transfer-Encoding = base64.

Пример запроса

Успешный ответ метода

В случае успешного ответа метод возвращает результат сравнения двух шаблонов.

Тип контента HTTP-ответа: “application/json”.

Выходные параметры

Наименование параметра

Тип

Описание

score

Float

Результат сравнения двух шаблонов

decision

String

Рекомендуемое решение по полученному score.

approved – положительный результат. Лица совпадают.

operator_required – требуется дополнительная проверка оператора.

declined – негативный результат. Лица не совпадают.

Пример ответа

verify – биометрическая верификация

Метод объединяет два описанных выше метода extract и compare – извлекает биометрический шаблон из изображения и сравнивает его с другим биометрическим шаблоном, который также передается в запросе.

Тип контента HTTP-запроса: “multipart/form-data”.

Вызов метода: POST /v1/face/pattern/verify

Входные параметры

Наименование параметра

Тип

Описание

sample

Stream

Обязательный параметр. Изображение для извлечения биометрического шаблона.

bio_template

Stream

Обязательный параметр. Биометрический шаблон, с которым производится сравнение.

Для передачи данных в base64 необходимо в headers запроса передать Content-Transfer-Encoding = base64.

Пример запроса

Успешный ответ метода

В случае успешного ответа метод возвращает результат сравнения двух биометрических шаблонов.

Тип контента HTTP-ответа: “application/json”.

Выходные параметры

Наименование параметра

Тип

Описание

score

Float

Результат сравнения двух шаблонов

decision

String

Рекомендуемое решение по полученному score.

approved – положительный результат. Лица совпадают.

operator_required – требуется дополнительная проверка оператора.

declined – негативный результат. Лица не совпадают.

Пример ответа

extract_and_compare – извлечение из двух изображений и сравнение полученных шаблонов

Метод объединяет два описанных выше метода extract и compare. Он извлекает биометрические шаблоны из двух изображений, сравнивает их и в качестве ответа передает результат сравнения.

Тип контента HTTP-запроса: “multipart/form-data”.

Вызов метода: POST /v1/face/pattern/extract_and_compare

Входные параметры

Наименование параметра

Тип

Описание

sample_1

Stream

Обязательный параметр. Первое изображение.

sample_2

Stream

Обязательный параметр. Второе изображение

Для передачи данных в base64 необходимо в headers запроса передать Content-Transfer-Encoding = base64.

Пример запроса

Успешный ответ метода

В случае успешного ответа метод возвращает результат сравнения двух извлеченных биометрических шаблонов.

Тип контента HTTP-ответа: “application/json”.

Выходные параметры

Наименование параметра

Тип

Описание

score

Float

Результат сравнения двух извлеченных шаблонов

decision

String

Рекомендуемое решение по полученному score.

approved – положительный результат. Лица совпадают.

operator_required – требуется дополнительная проверка оператора.

declined – негативный результат. Лица не совпадают.

Пример ответа

compare_n – сравнение биометрических шаблонов 1:N

Метод предназначен для сравнения биометрических шаблонов в режиме 1:N.

Тип контента HTTP-запроса: “multipart/form-data”.

Вызов метода: POST /v1/face/pattern/compare_n

Входные параметры

Наименование параметра

Тип

Описание

template_1

Stream

Обязательный параметр.

Биометрический шаблон – кандидат(1).

templates_n

Stream

Обязательный параметр.

Список(N) биометрических шаблонов. Каждый биометрический шаблон должен быть передан отдельно, но необходимо чтобы имя параметра было templates_n. Также требуется, чтобы в заголовке был передан filename.

Для передачи данных в base64 необходимо в headers запроса передать Content-Transfer-Encoding = base64.

Пример запроса

Успешный ответ метода

В случае успешного ответа метод возвращает результаты сравнений 1:N .

Тип контента HTTP-ответа: “application/json”.

Выходные параметры

Наименование параметра

Тип

Описание

results

List[JSON]

Список результатов сравнения кандидата со списком(N). Для каждого сравнения из списка(N) результат имеет следующие поля:

*filename

String

Значение filename в заголовке соответствующего шаблона из списка(N).

*score

Float

Результат сравнения кандидата с соответствующим шаблоном из списка(N).

*decision

String

Рекомендуемое решение по полученному score.

approved - положительный результат. Лица совпадают.

operator_required - требуется дополнительная проверка оператора.

declined - негативный результат. Лица не совпадают.

Пример ответа

verify_n – биометрическая верификация 1:N

Метод объединяет два описанных выше метода extract и compare_n. Метод извлекает биометрический шаблон из изображения и сравнивает его cо списком биометрических шаблонов, которые также передаются в запросе.

Тип контента HTTP-запроса: “multipart/form-data”.

Вызов метода: POST /v1/face/pattern/verify_n

Входные параметры

Наименование параметра

Тип

Описание

sample_1

Stream

Обязательный параметр.

Изображение - кандидат(1).

templates_n

Stream

Обязательный параметр.

Список(N) биометрических шаблонов. Каждый биометрический шаблон должен быть передан отдельно, но необходимо чтобы имя параметра было templates_n. Также требуется, чтобы в заголовке был передан filename.

Для передачи данных в base64 необходимо в headers запроса передать Content-Transfer-Encoding = base64.

Пример запроса

Успешный ответ метода

В случае успешного ответа метод возвращает результаты сравнений 1:N .

Тип контента HTTP-ответа: “application/json”.

Выходные параметры

Наименование параметра

Тип

Описание

results

List[JSON]

Список результатов сравнения кандидата со списком(N). Для каждого сравнения из списка(N) результат имеет следующие поля:

*filename

String

Значение filename в заголовке соответствующего шаблона из списка(N).

*score

Float

Результат сравнения кандидата с соответствующим шаблоном из списка(N).

*decision

String

Рекомендуемое решение по полученному score.

approved - положительный результат. Лица совпадают.

operator_required - требуется дополнительная проверка оператора.

declined - негативный результат. Лица не совпадают.

Пример ответа

extract_and_compare_n – извлечение и сравнение полученных шаблонов 1:N

Метод объединяет два описанных выше метода extract и compare_n. Он извлекает биометрические шаблоны из изображения-кандидата и изображений из списка, а затем сравнивает их в режиме 1:N.

Тип контента HTTP-запроса: “multipart/form-data”.

Вызов метода: POST /v1/face/pattern/extract_and_compare_n

Входные параметры

Наименование параметра

Тип

Описание

sample_1

Stream

Обязательный параметр.

Изображение – кандидат(1).

samples_n

Stream

Обязательный параметр.

Список(N) изображений. Каждое изображение должно быть передано отдельно, но необходимо чтобы имя параметра было samples_n. Также требуется, чтобы в заголовке был передан filename.

Для передачи данных в base64 необходимо в headers запроса передать Content-Transfer-Encoding = base64.

Пример запроса

Успешный ответ метода

В случае успешного ответа метод возвращает результаты сравнений 1:N .

Тип контента HTTP-ответа: “application/json”.

Выходные параметры

Наименование параметра

Тип

Описание

results

List[JSON]

Список результатов сравнения кандидата со списком(N). Для каждого сравнения из списка(N) результат имеет следующие поля:

*filename

String

Значение filename в заголовке соответствующего изображения из списка(N).

*score

Float

Результат сравнения кандидата с соответствующим изображением из списка(N).

*decision

String

Рекомендуемое решение по полученному score.

approved – положительный результат. Лица совпадают.

operator_required – требуется дополнительная проверка оператора.

declined – негативный результат. Лица не совпадают.

Пример ответа

Ошибки методов

Тип контента HTTP-ответа: “application/json”.

Коды ответов HTTP

Значение параметра “code”

Описание

400

BPE-002001

Неверный Content-Type HTTP-запроса

400

BPE-002002

Неверный метод HTTP-запроса

400

BPE-002003

Не удалось прочитать *биометрический образец

400

BPE-002004

Не удалось прочитать биометрический шаблон

400

BPE-002005

Неверный Content-Type части multiparted HTTPзапроса

400

BPE-003001

Не удалось извлечь биометрический шаблон

400

BPE-003002

На биометрическом образце* отсутствует лицо

400

BPE-003003

На биометрическом образце* присутствует более одного лица

500

BPE-001001

Внутренняя ошибка биопроцессора

400

BPE-001002

Ошибка TFSS. Необходимо вызвать метод biometry health.

*

Биометрический образец – входное изображение.

Liveness

health – проверка состояния биометрического процессора liveness

Вызов метода: GET /v1/face/liveness/health

Входные параметры отсутствуют.

Пример запроса

GET localhost/v1/face/liveness/health

Успешный ответ метода

В случае успешного ответа метод возвращает сообщение со следующими параметрами.

Тип контента HTTP-ответа: “application/json”.

Выходные параметры

Наименование параметра

Тип

Описание

status

Int

0 - биометрический процессор работает корректно.

3 - биометрический процессор неработоспособен.

message

String

Сообщение.

Пример ответа

detect – обнаружение презентационных атак

Метод detect предназначен для обнаружения презентационных атак. Он ищет лицо на каждом изображении или видео (с версии 1.2.0), отправляет найденные лица на анализ и возвращает результат.

Поддерживаются следующие Content-Type:

  • image/jpeg или image/png для изображения;

  • multipart/form-data для изображений, видео или архивов. Для добавления дополнительных параметров, влияющих на анализ, используйте payload.

Запуск метода:POST /{version}/face/liveness/detect.

Изображение

Принимает изображение в формате JPEG или PNG; без payload.

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

Multipart/form-data

Принимает запрос multipart/form-data.

  • Название каждого медиафайла должно быть уникальным, например, media_key1, media_key2.

  • Параметры payload должны быть в виде JSON, помещенного в поле payload.

Временные идентификаторы будут удалены после выполнения запроса.

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

Multipart/form-data с Best Shot

Для извлечения лучшего кадра укажите в блоке analyses в payload extract_best_shot = true (как в примере запроса ниже). В таком случае API Lite после анализа ваших медиафайлов вернет в ответе лучший кадр – изображение в base64 будет в analysis->output_images->image_b64. Лучший кадр можно извлекать только из видео или архивов.

Также в блоке analyses вы можете изменить порог для прохождения Liveness в параметре threshold_spoofing: если итоговая оценка выше значения этого параметра, результат анализа будет DECLINED, в ином случае проверка Liveness будет считаться пройденной.

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

Ошибки методов

Тип контента HTTP-ответа: “application/json”.

Коды ответов HTTP

Значение параметра “code”

Описание

400

LDE-002001

Неверный Content-type HTTP-запроса

400

LDE-002002

Неверный метод HTTP-запроса

400

LDE-002004

Не удалось прочитать биометрический образец*

400

LDE-002005

Неверный Content-Type части multiparted HTTP-запроса

500

LDE-001001

Внутренняя ошибка БП обнаружения витальности

400

LDE-001002

Ошибка TFSS. Необходимо вызвать метод liveness health.

*

Биометрический образец – входное изображение.

Last updated

Was this helpful?