Распознавание живых лиц в реальном времени (Liveness)

Примечание

Liveness-детектор на CPU работает гораздо медленнее, чем на GPU.

Для обнаружения фальшивых лиц и предотвращения фото-атак используйте интегрированную антиспуфинговую систему, отличающую живые лица от их изображений. Алгоритм анализирует несколько последовательных кадров, регистрируя изменения в мимике и текстуре кожи, и благодаря этому определяет, является ли лицо перед камерой живым или фальшивым. Это исключает возможность мошенничества с использованием изображения лица на бумаге или экране мобильного устройства.

Liveness-детектор оценивает живость лица с определенным уровнем достоверности и возвращает оценку достоверности вместе с бинарным результатом Живой человек/изображение, в зависимости от предустановленного порога достоверности.

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

Включение Liveness-детектора

Для включения Liveness-детектора выполните следующие действия:

  1. Откройте файл конфигурации /etc/findface-video-worker-gpu.ini (/etc/findface-video-worker-cpu.ini). В разделе liveness укажите путь к модели нейронной сети (fnk) и нормализатору (norm), которые будут использоваться в liveness-детекторе.

    sudo vi /etc/findface-video-worker-gpu.ini
    
    #------------------------------
    [liveness]
    #------------------------------
    ## path to liveness fnk
    ## type:string env:CFG_LIVENESS_FNK longopt:--liveness-fnk
    fnk = /usr/share/findface-data/models/faceattr/liveness.v3.gpu.fnk
    
    ## path to normalization for liveness
    ## type:string env:CFG_LIVENESS_NORM longopt:--liveness-norm
    norm = /usr/share/findface-data/models/facenorm/crop2x.v2_maxsize400.gpu.fnk
    
    sudo vi /etc/findface-video-worker-cpu.ini
    
    #------------------------------
    [liveness]
    #------------------------------
    ## path to liveness fnk
    ## type:string env:CFG_LIVENESS_FNK longopt:--liveness-fnk
    fnk = /usr/share/findface-data/models/faceattr/liveness.v3.cpu.fnk
    
    ## path to normalization for liveness
    ## type:string env:CFG_LIVENESS_NORM longopt:--liveness-norm
    norm = /usr/share/findface-data/models/facenorm/crop2x.v2_maxsize400.cpu.fnk
    
  2. Перезапустите findface-video-worker.

    sudo systemctl restart findface-video-worker-gpu
    sudo systemctl restart findface-video-worker-cpu
    

Настройка порога Liveness

При необходимости вы можете настроить пороговое значение Liveness в файле конфигурации /etc/ffsecurity/config.py. Liveness-детектор оценивает “живость” лица с определенной достоверностью. В зависимости от порогового значения достоверности, он возвращает бинарный результат Живой человек или Изображение.

Примечание

Значение по умолчанию является оптимальным. Перед изменением порога проконсультируйтесь у наших специалистов по адресу support@ntechlab.com.

sudo vi /etc/ffsecurity/config.py

‘LIVENESS_THRESHOLD’: 0.75,

Информация о живом лице в веб-интерфейсе

После настройки Liveness-детектора для каждого события будет отображаться оценка liveness обнаруженного лица.

liveness_en

Примечание

Liveness может принимать значение null, если детектор живых лиц отключен или на предоставленном изображении невозможно достоверно оценить Liveness.

Используйте фильтр Liveness для просмотра событий только с живыми людьми или только c изображениями, если имели место спуфинговые атаки.

liveness_filter_ru