findface-extraction-api
Компонент findface-extraction-api
с помощью нейронных сетей обнаруживает лицо на изображении, извлекает из лица биометрический образец, а также распознает пол, возраст, эмоции и другие атрибуты лица.
Компонент взаимодействует с сервисом findface-sf-api
следующим образом:
Получает от него фотографию с лицом или нормализованное изображение лица.
Возвращает координаты рамки с лицом, а также вектор признаков, данные о поле, возрасте, эмоциях и других атрибутах лица (если они были запрошены
findface-sf-api
).
Совет
Вы можете использовать HTTP API для прямого доступа к компоненту findface-extraction-api
.
Полный список функций:
детекция (обнаружение) лица на исходном изображении с возвращением координат рамки с лицом,
получение из исходного изображения нормализованного изображения лица,
извлечение из нормализованного изображения лица вектора признаков (биометрического образца),
распознавание пола/возраста/эмоций/страны.
Сервис findface-extraction-api
может работать с ускорением на CPU (устанавливается из пакета findface-extraction-api
) или GPU (устанавливается из пакета findface-extraction-api-gpu
). Как для CPU-, так и для GPU-сервиса, настройка выполняется через файл конфигурации /etc/findface-extraction-api.ini
, однако содержимое данного файла на CPU и GPU отличается.
Файл конфигурации сервиса на CPU:
allow_cors: false
detector_instances: 0
dlib:
model: /usr/share/findface-data/normalizer.dat
options:
adjust_threshold: 0
upsample_times: 1
extractors:
instances: 1
max_batch_size: 16
models:
age: ""
beard: ""
emotions: ""
face: face/grapefruit_480.cpu.fnk
gender: ""
glasses3: ""
liveness: ""
models_root: /usr/share/findface-data/models
fetch:
enabled: true
size_limit: 10485760
license_ntls_server: 127.0.0.1:3133
listen: 127.0.0.1:18666
max_dimension: 6000
nnd:
model: /usr/share/nnd/nnd.dat
options:
max_face_size: .inf
min_face_size: 30
o_net_thresh: 0.9
p_net_max_results: 0
p_net_thresh: 0.5
r_net_thresh: 0.5
scale_factor: 0.79
quality_estimator: true
quality_estimator_model: /usr/share/nnd/quality_estimator_v2.dat
ticker_interval: 5000
Файл конфигурации сервиса на GPU:
listen: 127.0.0.1:18666
dlib:
model: /usr/share/findface-data/normalizer.dat
options:
adjust_threshold: 0
upsample_times: 1
nnd:
model: /usr/share/nnd/nnd.dat
quality_estimator: true
quality_estimator_model: /usr/share/nnd/quality_estimator_v2.dat
options:
min_face_size: 30
max_face_size: .inf
scale_factor: 0.7900000214576721
p_net_thresh: 0.5
r_net_thresh: 0.5
o_net_thresh: 0.8999999761581421
p_net_max_results: 0
detector_instances: 0
extractors:
models_root: /usr/share/findface-data/models
max_batch_size: 3
instances: 2
models:
age: ""
beard: ""
emotions: ""
face: face/grapefruit_480.gpu.fnk
gender: ""
glasses3: ""
liveness: ""
cache_dir:
gpu_device: 0
license_ntls_server: 172.17.46.26:3133
fetch:
enabled: true
size_limit: 10485760
max_dimension: 6000
allow_cors: false
ticker_interval: 5000
Пользовательская настройка findface-extraction-api
(как CPU, так и GPU) выполняется с использованием следующих параметров:
Параметр |
Описание |
---|---|
|
Включает/отключает оценку качества лица. В этом случае компонент |
|
Минимальный размер лица, которое будет гарантированно найдено. Определяется размером рамки с лицом (bbox). Чем больше значение, тем менее ресурсоемок процесс обнаружения лица. |
|
Максимальный размер лица, которое будет гарантированно найдено. Определяется размером рамки с лицом (bbox). |
|
IP-адрес и порт сервера лицензирования |
|
(Только для GPU) Номер GPU-устройства, используемого |
№ экземпляров |
Количество экземпляров нейронных сетей (и, следовательно, одновременно обрабатываемых запросов), загружаемых в RAM компонентом |
|
Включает получение изображение из Интернета. |
|
Максимальный размер получаемого из Интернета изображения. |
В зависимости от нужд вашего бизнеса, вам также может потребоваться включить модели распознавания атрибутов лица, таких как пол, возраст, эмоции, очки и/или борода. Удостоверьтесь, что для каждой модели вы указали правильный тип ускорения CPU или GPU: он должен совпадать с типом ускорения findface-extraction-api
. Обратите внимание, что findface-extraction-api
на CPU может работать только с CPU-моделями, в то время как findface-extraction-api
на GPU поддерживает как GPU-, так и CPU-модели.
models:
age: faceattr/age.v1.cpu.fnk
emotions: faceattr/emotions.v1.cpu.fnk
face: face/grapefruit_480.cpu.fnk
gender: faceattr/gender.v2.cpu.fnk
beard: faceattr/beard.v0.cpu.fnk
glasses3: faceattr/glasses3.v0.cpu.fnk
Доступны следующие модели:
Атрибут лица |
Ускорение |
Параметр в файле конфигурации |
---|---|---|
биометрия лица |
CPU |
|
GPU |
|
|
возраст |
CPU |
|
GPU |
|
|
пол |
CPU |
|
GPU |
|
|
эмоции |
CPU |
|
GPU |
|
|
очки |
CPU |
|
GPU |
|
|
борода |
CPU |
|
GPU |
|
Совет
Для того чтобы отключить модель распознавания, передайте в соответствующий параметр пустое значение. Не удаляйте сам параметр, поскольку в этом случае будет выполняться поиск модели по умолчанию.
models:
gender: ""
age: ""
emotions: ""