# Face Spoofing Detection with Stacking Ensembles in Work Time Registration System
## 1 Introduction  
In the context of this article, an authentic face refers to the face of a live person in front of a camera. An inauthentic or spoofed face refers to a face shown on an electronic device screen, in video footage, or printed on paper. This paper introduces a method for verifying the authenticity of faces, intended for use within a work time management system. The specific issue addressed in the paper is the detection of scenarios in which an employee places a photo or video of another employee in front of the camera to falsely record the attendance of someone who is not physically present. Before detailing the proposed method, we will provide a brief overview of the work time management system, explain how our method interacts with other modules of the system, and outline the requirements it must meet. The described work time management system is currently in use by several companies. Based on the requirements received, our new facial authenticity recognition module is to be integrated into the system as illustrated in Figure 1.  
The facial authenticity recognition module will receive photos of employees whose identities (first and last names) have already been confirmed by the employee identification module, along with the coordinates of their faces within those photos. It must then evaluate the likelihood that the face is authentic (i.e., not spoofed) and forward the result to the work time registration module. The technical specifications of the work time management system are as follows: the entire system consists of a client-side and a server-side part. The client-side application is implemented in Android, iOS, and in a web browser, and most often uses simple, front smartphone cameras or, sometimes, USB cameras, without infrared, to take pictures of people who register their work time (Figure 1). The server side is based on a server with two AMD EPYC 7282 16-core processors, 256 GB RAM, Nvidia RTX 3050 GPU, 1 TB FDD, and 8 TB HDD, using the Windows Operating System. The client-side application takes the photos, compresses them, and sends them to the server side, where further processing takes place and where our module, presented in this paper, operates. According to the technical specifications, the authors of this paper were not permitted to modify any system modules other than the one they were developing. They were also not allowed to install infrared-equipped cameras or use Apple's TrueDepth Camera technology [1] for face recognition. This restriction stemmed from the lack of consent from both clients and the original system developers to alter a well-functioning system and incur additional costs. The client-side application is activated each time an employee starts or ends their work shift by scanning a QR code. This mechanism ensures that the system does not capture unnecessary photos of individuals merely passing by the camera or images of empty rooms. Once activated, the camera captures photos of the employee and uses the BlazeFace algorithm [2] to locate the face. Only images in which a face is successfully detected are compressed into the WEBP format (5-6 kB) for fast transmission. These are then sent to the server, where they are stored in a database for potential future analysis. On the server side, the employee identification module processes the incoming photos. It verifies the identity of the person in each image by matching them with the employee associated with the scanned QR code, using the ArcFace algorithm [3]. This module performs with near-perfect accuracy. Due to the constraints of the system, existing modules could not be modified. As a result, alternatives such as the RetinaFace algorithm [4] could not be integrated for face detection. However, given the high accuracy of the current solution, this limitation was not deemed problematic. Per the provided specifications, our method receives photos along with face coordinates from the employee identification module, which is already implemented on the server.