Marwan Mohamed, Mohamed Yasser, Mohamed Gamal, Abdelrahman Ashraf, Dr. Fatma Helmy, Eng Mahmoud ELSahhar

Publishing Date

22th December 2021


The main idea of this project is to study face liveness detection and how can we prevent face spoofing attacks. One of the most widely used biometric approaches is face recognition. Face recognition is used in many Fields. One of these fields is mobile devices authentication. However, face recognition can be easily attacked by a method called face spoofing. That is intended to deceive the face recognition system by facial pictures obtained from images or videos. Other cheaters show the mask of an authorized person to fool the recognition camera into a real person. The proposed system in this document is to use face liveness detection by applying different machine and deep learning algorithms such as CNN, SVM, Naïve bayes and etc. in order to get the best accuracy between them to apply our model. Then, the system will be able to differentiate between live and fake user’s faces.

1.1 Purpose of this document

The main purpose of this Software Requirements Specification document is to illustrate and outline the requirements of face liveness detection that are mainly detecting and differentiating between the real faces and fake faces. Our aim is to develop a full system that will be able to help in detecting the faces and know if this is the real face or not. This document will provide a fulfilled and detailed description of each stage input, output, and algorithms used. Along with a full illustration for each stage interfaces, software requirements, and development process in this stage. what difficulties have we faced during development and how should we interact with it. Moreover, this software requirements specification (SRS) document defines how our stakeholder, team and audience see the product and its functionality.

1.2 Scope of this document

This document targets the Companies that use face recognition in payment transactions, attendance system, security access. They are going to use this application in order to detect whether this is a real face or not, which will help them from getting attacked by using one of the face spoofing types (image, live videos or 3D-masks) in front of the camera to gain unauthorized access.

1.3 System Overview

The main goal of this software is to automatically detect the face spoofing attacks with high accuracy and to prevent an illegal access to the system. Our system workflow is illustrated in the figure below . Starting with the preprocessing phase on the input data from the dataset, the dataset consists of three different types of data (3D-masks, Videos, and printed images). We will split the dataset into 90% for training and 10% for testing. Then we will move to the feature extraction phase using machine learning algorithms such as SVM to extract the important features needed to differentiate between the live and non-live faces. After that, we are going to use different deep learning techniques such as CNN, KNN, and Capsule in order to know which deep learning technique will provide the best results with more accuracy percentage and fewer errors. At the end, we will use about 10% for testing our algorithms then the system will classify the input data into live and non-live faces.

1.4 System Scope

1. The user will verify his/her face using face recognition technique.

2. The face detection process is an essential step as it detects and locates human faces.

3. The face match process checking if the user’s face exists in the database or not.

4. The liveness detection will check automatically if the image is real or fake.