Medvedev A.S.,
Sosnina L.V.
Student identification and problems of face recognition
The problem of recognizing [1] faces is very relevant at the moment. A lot of work is devoted to this topic.
The main difficulty consists in recognizing the person on the image with various changes related to lighting,
foreshortening, age, facial expressions, hairdo, etc. There are various ways to solve the problem of face recognition,
but they are not all ideal.
The neural net [2] is the architecture of artificial neural networks, which is aimed at efficient recognition of
images [1]. It is part of the technology of in-depth training. Uses features of the visual cortex [3], in which cells
were exposed to direct lines at different angles, and complex cells whose reaction is associated with the activation of
a certain set of simple cells. The idea of the CNN is to alternate between the convolution layers and the subsampling
layers. The network structure is multi-layered and does not contain feedbacks. Most often for learning, the method
of back propagation of the error is used [4].
A convolutional neural network is one of the best algorithms for recognizing and classifying images. Its
advantage in convenient parallelization of computations, which makes it possible to implement algorithms for
working and learning the network on graphics processors. Also, the CNN is relatively stable to rotate and shift the
recognized image. The disadvantages include the difficulty of setting up the network, because There are a large
number of configurable parameters.
The above models are quite costly from a computational point of view, since they have a large number of
learning parameters, which makes the choice of the SNA architecture for solving a different class of pattern
recognition problems quite difficult. However, such networks do not require manual preparation of data for further
work, which is an important advantage over classical classification methods.
The method of back propagation of an error is the method of learning a multilayer perceptron. A multilayer
perceptron is a special case of the Rosenblatt perceptron, in which one algorithm for back propagation of error trains
all layers. This is an iterative gradient algorithm that serves to minimize the error in the operation of the multilayer
perceptron and obtain the desired output. The idea of this method is to spread the error signals from the outputs of
the network to its inputs, in the direction opposite to the direct propagation of signals in the usual mode of operation.
Selecting a face in a video stream
The selection of faces in the video stream is realized using the algorithm of the Viola-Jones faces detection.
This algorithm allows you to detect objects on images in real time. The method uses the sliding window technology.
That is, a frame smaller than the original image moves with a certain step in the image and determines whether there
is a face in the window in question. The algorithm has the following advantages:
- it is possible to detect more than one person in the image;
- the use of simple classifiers shows good speed and allows using this method in the video stream.
However, the algorithm is difficult to train, since a lot of test data is required for training and involves a
long learning time, which is measured in days.
The general scheme of the algorithm looks like this: before the recognition begins, the learning algorithm
based on test images trains a database consisting of characteristics, their parity and boundary. Further, the
recognition algorithm searches for objects at different scales of the image using the created database. The algorithm
of Viola-Jones at the output gives all the set of non-unified objects found on different scales. The next task is to
decide which of the found objects are actually present in the frame, and which are duplicates. Figure 1 shows the
result of the algorithm.
Development of a software model of a multilayer network
At the stage of object-oriented analysis and design, the UML modeling language was used to describe
models of the software system. For the software implementation of this system, the C ++ programming language is
chosen because of its connection with the ConvNet library. In addition, it has various libraries for working with
images.
ConvNet is a C ++ library that implements data distribution in convolutional neural networks. ConvNet
provides an efficient and easy-to-use implementation of convolutional neural networks in C ++.
The system consists of several modules: the face extraction module, the recognition module and the
identification module. The first module is responsible for selecting faces in the video stream. In other words, it
creates a training sample for the SNA. The second module is responsible for recognizing faces in the video
stream. The third module is responsible for identification.
Conclusion
Analysis of the convolutional neural network showed a good result in the recognition and classification of
images. The advantage of the CNN is its convenient parallelization of computations, which makes it possible to
implement algorithms for working and learning the network on graphics processors. Also, the CNN is relatively
stable to rotate and shift the recognized image. The disadvantages include the difficulty of setting up the network,
because there are a large number of configurable parameters. A lot of trouble brings a long learning process. In
complex tasks, network training may take days or even weeks. There is a risk that the SNA will not learn at all.
Despite this, the algorithm worked well in the course of experiments, so it will be used in the system of recognition
of human faces.
Literature
1.Identification and recognition of persons [Electronic resource]. - Access
mode:http://wiki.technicalvision.ru/index.php/ Identification and recognition of faces
2.Convolutional neural networks: a view fromwithin. [Electronic resource].
http://en.datasides.com/code/cnn-convolutional-neural-networks
3.Method of back propagation error.[Electronic resource].
https://en.wikipedia.org/wiki/Method_reverse_expandation_of_suspices
4.Evolution of neural networks for image recognition in Google: Inception-ResNet. [Electronicresource].
https://habrahabr.ru/post/303196/
Medvedev A.S., Sosnina L.V. Student identification and problems of face recognition. The article is
devoted to the problem of face recognizing. Different approaches to this problem solving are studied there. It is
necessary to underline that analysis of convolutional neural network showed a good result in images recognition
and classification.
Keywords: recognition, neural, network, face, module, scale, algorithm.
Медведев А.С., Соснина Л.В. Идентификация студентов и проблемы распознавания лиц.
Статья посвящена проблеме распознавания лица. Изучены различные подходы к решению данной проблемы.
Необходимо подчеркнуть, что анализ сверточной нейронной сети показал хороший результат в
распознавании и классификации изображений.
Ключевые слова: распознавание, нейрон, сеть, грань, модуль, масштаб, алгоритм.