Facial Spoof Detection

Hack A BIT
hackabit
Published in
4 min readOct 9, 2019

What is spoofing?

‘Spoofing’ refers to criminally presenting artificial replications of a piece of biometric data like face, fingerprint or iris to the biometric system to try and gain illegal access to a system.

Facial Spoof Attack

Have you ever tried unlocking your friend’s phone using their picture? Did it work? Well, the answer depends on the anti-spoofing algorithm present in your friend’s phone.

So, facial spoof attack refers to the process in which a user tries to break a facial recognition system using images, videos or masks, etc.

Types of face spoofing-

1. 2D spoofing

a. Print attack:

In today’s world of social media obtaining anyone’s picture is a cakewalk. Thus, an attacker might use a printed or a digital image of a person to break a facial recognition system.

b. Eye-cut photo attack:

The attacker cuts the eye regions from the picture and exhibits blinking behavior manually.

c. Warped photo attack:

In this kind of attack, the attacker bends the printed picture in different directions to simulate facial movements.

d. Replay/video attack:

To simulate the owner’s facial expressions (blinking, smiling, head movements, etc.), the attacker uses a short video/GIF of the owner and loops it on a screen.

2. 3D spoofing

a. 3D mask attack:

These are the days of depth-sensing cameras. So, to overcome this, the impostor wears a 3D mask of the actual person and performs all the activities such as blinking, smiling, etc.

Anti-Spoofing techniques-

Anti-spoofing techniques use liveliness detection based on texture, motion, frequency, color, shape or reflectance.

1. Eye Blink Detection

An average human tends to blink once every 3 seconds (which comes out to be 15–30 times per minute). Keeping in mind this aspect of the human eye, the cameras these days take pictures at regular intervals to detect the blinking behavior.

2. Deep Learning and CNN Based Methods

This technique treats anti-spoofing as a binary classification problem. The training dataset consists of two categories- Spoof and Real, and the CNN model is trained accordingly.

The CNN model can discover and detect a number of facial features from the given dataset which are indistinguishable by humans. Thus, these features can be used to differentiate between real and spoof faces.

3. The Challenge-Response Technique

In this technique the user is required to perform certain “challenges” that include- smiling, laughing, raising eyebrows, head movement, etc. A satisfactory response to this challenge proves the fact that these tasks have been performed in real-time by a human.

But, these challenges require some additional input from the user which might irritate some lazy users.

4. 3D Camera

With the advent of 3D based dual and triple cameras (Thanks to Oppo and Vivo) depth sensing techniques are used to detect the curvature of a face thereby differentiating between a flat 2D image and a real face.

5. Active Flash

This method is based on the difference in reflection of light from a flat and a curved surface. This involves using a flash to provide additional light. Thus, the reflection of this light from the target can be used to identify a real face.

References:

  1. https://ievoreader.com/biometric-spoofing-and-liveness-detection/
  2. https://medium.com/datadriveninvestor/face-spoof-detection-e0d08fb246ea
  3. https://www.aware.com/biometric-liveness-detection-spoof-detection/
  4. https://towardsdatascience.com/anti-spoofing-techniques-for-face-recognition-solutions-4257c5b1dfc9

Written by-

Abhilasha Sinha

Birla Institute of Technology, Mesra

--

--