The access control system development based on face recognition
The basis of this work is the developed access control system based on face recognition. The program comprises four independent components: face detection in a video stream, face recognition based on a convolutional neural network, door/turnstile opening control, and a client web service. Each module works in its own process, so during the development of the project, you can transfer each module to a separate server. The agile development methodology (agile approach) ensures high speed and system quality. The key feature of the work is the substantiated application of deep learning technology on the example of the created model of the software tool using the technology of "one-shot" learning or siamese networks, implemented using the PyTorch framework. MobileNetV3 was used as a pre-trained neural network. Siamese networks are convenient for use from the point of view of the absence of the need to form a huge dataset with data, which is especially important for face recognition. The architecture of such networks comprises two identical neural networks with the same weight and structure, and the working results are transferred to one activation function - thus, the similarity of the input data (similarity assessment) is determined based on the comparison of the values of two vectors. The enterprise’s point of entry tested the system, considering the biometric data of employees, on which the neural network was trained. The system showed high accuracy in identifying individuals. The proposed service-oriented architecture allows scaling the authentication and verification system horizontally and vertically. If necessary, system components can be physically placed on different servers, increasing the throughput of the system as a whole.