Распознавание атрибутов лица¶
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.fnkface: face/ifruit_160.cpu.fnk | 
| GPU | face: face/ifruit_320.gpu.fnkface: 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 | 
При необходимости выполните фильтрацию событий по атрибутам лица.
