Real-time Face Liveness Detection¶
The liveness detector is much slower on CPU than on GPU.
To spot fake faces and prevent photo attacks, use the integrated 2D anti-spoofing system that distinguishes a live face from a face image. Due to the analysis of not one, but a number of frames, the algorithm captures any changes in a facial expression and skin texture. This ensures that it is a live person in front of a camera and eliminates the possibility of fraud using images on paper or mobile device screens.
The liveness detector estimates a face liveness with a certain level of confidence and returns the confidence score along with a binary result
real/fake, depending on the pre-defined liveness threshold.
In this section:
Enable Face Liveness Detector¶
To enable the face liveness detector, do the following:
/etc/findface-video-worker-cpu.ini) configuration file. In the
fnkparameter, specify the path to the face liveness detector model as shown below.
sudo vi /etc/findface-video-worker-gpu.ini [liveness] #------------------------------ ## path to liveness fnk fnk = /usr/share/findface-data/models/faceattr/liveness.v3.gpu.fnk
sudo vi /etc/findface-video-worker-cpu.ini [liveness] #------------------------------ ## path to liveness fnk fnk = /usr/share/findface-data/models/faceattr/liveness.v3.cpu.fnk
sudo systemctl restart findface-video-worker-gpu sudo systemctl restart findface-video-worker-cpu
Configure Liveness Threshold¶
If necessary, you can adjust the liveness
threshold in the
/etc/ffsecurity/config.py configuration file. The liveness detector will estimate a face liveness with a certain level of confidence. Depending on the threshold value, it will return a binary result
The default value is optimal. Before changing the threshold, we recommend you to seek advice from our experts by firstname.lastname@example.org.
sudo vi /etc/ffsecurity/config.py ‘LIVENESS_THRESHOLD’: 0.75,
Face Liveness in Web Interface¶
Once the face liveness detector configured, you will see liveness estimation for each event.
The liveness score is
null when the liveness detector is unable to estimate the face liveness in the provided image.
Use the Liveness filter to display only real or only fake faces in the event list.