Распознавание атрибутов лица

FindFace Security позволяет распознавать в реальном времени такие атрибуты лица, как пол, возраст, эмоции, очки, борода и медицинская маска. Данный функционал доступен как на GPU-, так и на CPU-видеодетекторе лиц.

В этом разделе:

Включение распознавания атрибутов лица

Важно

На данном шаге включается распознавание атрибутов лица на уровне HTTP API.

Для того чтобы включить автоматическое распознавание атрибутов лица, откройте файл конфигурации /etc/findface-extraction-api.ini и включите соответствующие модели: пол, возраст, эмоции, очки, борода и медицинская маска. Удостоверьтесь, что для каждой модели вы указали правильный тип ускорения CPU или GPU: он должен совпадать с типом ускорения findface-extraction-api. Обратите внимание, что findface-extraction-api на CPU может работать только с CPU-моделями, в то время как findface-extraction-api на GPU поддерживает как GPU-, так и CPU-модели.

sudo vi /etc/findface-extraction-api.ini

models:
  age: faceattr/age.v1.cpu.fnk
  emotions: faceattr/emotions.v1.cpu.fnk
  face: face/ifruit_320.cpu.fnk
  gender: faceattr/gender.v2.cpu.fnk
  beard: faceattr/beard.v0.cpu.fnk
  glasses3: faceattr/glasses3.v0.cpu.fnk
  medmask3: faceattr/medmask3.v0.cpu.fnk

Доступны следующие модели:

Примечание

Вы можете найти модели для распознавания атрибутов лица в каталоге /usr/share/findface-data/models/faceattr/.

ls /usr/share/findface-data/models/faceattr/
age.v1.cpu.fnk  age.v1.gpu.fnk  beard.v0.cpu.fnk  beard.v0.gpu.fnk  emotions.v1.cpu.fnk  emotions.v1.gpu.fnk  gender.v2.cpu.fnk  gender.v2.gpu.fnk  glasses3.v0.cpu.fnk  glasses3.v0.gpu.fnk medmask3.v0.cpu.fnk medmask3.v0.gpu.fnk liveness.v3.gpu.fnk
Атрибут лица Ускорение Параметр в файле конфигурации
биометрия лица CPU face: face/ifruit_320.cpu.fnk face: face/ifruit_160.cpu.fnk
GPU face: face/ifruit_320.gpu.fnk face: face/ifruit_160.gpu.fnk
возраст CPU age: faceattr/age.v1.cpu.fnk
GPU age: faceattr/age.v1.gpu.fnk
пол CPU gender: faceattr/gender.v2.cpu.fnk
GPU gender: faceattr/gender.v2.gpu.fnk
эмоции CPU emotions: faceattr/emotions.v1.cpu.fnk
GPU emotions: faceattr/emotions.v1.gpu.fnk
очки CPU glasses3: faceattr/glasses3.v0.cpu.fnk
GPU glasses3: faceattr/glasses3.v0.gpu.fnk
борода CPU beard: faceattr/beard.v0.cpu.fnk
GPU beard: faceattr/beard.v0.gpu.fnk
медицинская маска CPU medmask3: faceattr/medmask3.v0.cpu.fnk
GPU medmask3: faceattr/medmask3.v0.gpu.fnk

Совет

Для того чтобы отключить модель распознавания, передайте в соответствующий параметр пустое значение. Не удаляйте сам параметр, поскольку в этом случае будет выполняться поиск модели по умолчанию.

models:
  gender: ""
  age: ""
  emotions: ""

Перезапустите findface-extraction-api.

sudo systemctl restart findface-extraction-api

После включения моделей обязательно настройте отображение атрибутов в веб-интерфейсе.

Отображение результатов распознавания атрибутов в событиях

Для отображения результатов распознавания атрибутов лица в списке событий, добавьте следующую строку в секцию FFSECURITY:`` ‘EVENTS_FEATURES’: [‘gender’, ‘age’, ‘emotions’, ‘beard’, ‘glasses’, ‘medmask’]``, в зависимости от того, какие модели были включены.

Предупреждение

Данная строка должна быть расположена между строками SF_API_ADDRESS и LIVENESS_THRESHOLD, как показано в примере ниже.

sudo vi /etc/ffsecurity/config.py

...
FFSECURITY = {
...
'SF_API_ADDRESS': 'http://127.0.0.1:18411',
'EVENTS_FEATURES': ['gender', 'age', 'emotions', 'beard', 'glasses', 'medmask'],
'LIVENESS_THRESHOLD': 0.75,
'BEARD_THRESHOLD': 0.7,
 }

Перезапустите findface-security.

sudo systemctl restart findface-security

Атрибуты лиц в событиях

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

Атрибут лица Формат результата Пример
Возраст Атрибут: возраст: количество лет возраст: 33
Пол Результат: мужской/женский (атрибут: пол): уверенность алгоритма в результате женский (пол): 0.95
Эмоции Результат: злость/отвращение/страх/счастье/грусть/удивление (атрибут: эмоции): уверенность алгоритма в результате счастье (эмоции): 0.99
Очки Результат: медицинские/солнечные/нет (атрибут: очки): уверенность алгоритма в результате нет (очки): 0.87
Борода Результат: борода/нет (атрибут: борода): уверенность алгоритма в результате нет (борода): 0.91
Медицинская маска Результат: нет/есть (атрибут: медицинская маска): уверенность алгоритма в результате нет (медицинская маска): 0.93

features_ru

При необходимости выполните фильтрацию событий по атрибутам лица.