Научная статья на тему 'The algorithm modeling object recognition'

The algorithm modeling object recognition Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
53
21
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
РАСПОЗНАВАНИЕ ЛИЦ / РАСПОЗНАВАНИЕ ОБЪЕКТА / FACE DETECTION / МОДЕЛИРОВАНИЕ / MODELING / OBJECT RECOGNITION

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Usharova Darya, Vershinin Alexander

This paper contains a mathematical description of a pattern recognition algorithm. A comparative analysis of algorithms based on neural networks, Viola-Jones, etc. The results of modeling the face recognition algorithm.

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

АЛГОРИТМ МОДЕЛИРОВАНИЯ РАСПОЗНАВАНИЯ ОБЪЕКТОВ

Эта статья содержит математическое описание алгоритма распознавания образов. Проведен сравнительный анализ алгоритмов на основе нейронных сетей, Viola-Jones и т.д. Результаты моделирования алгоритма распознавания лиц.

Текст научной работы на тему «The algorithm modeling object recognition»

6 Ehlakov YP Functional models of business processes of the company agent in the market of software / YP Ehlakov, AA Efimov // Business Informatics. 2010. № 1 (11). S. 22.

7 Ehlakov YP Functional models of business processes of the company agent in the market of software / YP Ehlakov, AA Efimov // Business Informatics. 2010. № 1 (11). S. 22.

8 OV Katyuhin "Forecasts and trends of cosmetic services market development 2008 - 2012 years. /O.V. Katyuhin 2012

9 academic point of view (the main theme of the International Forum "LINE": ".. Image Reputation Capitalization") // PR-Line 2008. http: // www. pr-line.ru/Archive2008/j ournal/stol .asp

10 KA Aksenova Advertising and promotional activities: Abstract lektsiy.-M .: Pryor, 2014.- 96 p.

11 Akulich IL, Gerchikov IZ Marketing: uchebnik.- 3rd izd.- Mn .: Higher School, 2014.- 463 p.

12 Batra R. Myers DJ Advertising menedzhment.- 5th izd.- M .: Williams, 2014.- 784 p.

13 Belyaevsky IK Marketing Research: Information, analysis, forecast: Proc. allowance. - M .: Finance and Statistics, 2013.- 320C.

14 M. Byrd advertising product placement technology: features and benefits of Medi @ // lmanah. - 2015. - № 4.

15 Berezin Marketing analiz.- M .: Intel synthesis APR, 2013.- 351c.

THE ALGORITHM MODELING OBJECT RECOGNITION

Usharova Darya,

graduate student of Tomsk State University of Control Systems and Radioe-

lectronics,

634050, Russia, Tomsk, Lenina Prospect, 40

Vershinin Alexander

engineer of Tomsk Polytechnic University 634050, Russia, Tomsk, Lenina Prospect, 30

Abstract

This paper contains a mathematical description of a pattern recognition algorithm. A comparative analysis of algorithms based on neural networks, ViolaJones, etc. The results of modeling the face recognition algorithm.

Keywords: object recognition, modeling, face detection.

Face detection is an active area of research in the image processing field and has a lot of applications in monitoring and surveillance [1], human computer interfaces [2] smart rooms [3] and other fields. Numerous face detection algorithms have been recently published. Among them, there are three methods standing out.

Robust Real-Time Objection Detection, by Paul Viola and Michael J. Jones [4]. In 2001 the authors published their first article containing the description of a face detection algorithm proposed by them but the algorithm had its disadvantages as it was suitable for frontal upright faces. However, in 2003 Viola and Jones presented another variation of their algorithm which was able to detect profile and rotated faces. The description of this algorithm is posted below [5].

Neural Network-Based Face Detection by Henry A. Rowley, Shumeet Baluja and Takeo Kanade, 1998 [6]. This algorithm implicates calculation of the pyramid of images in order to detect faces at multiple scales. A sub-window of a particular size goes through each image of the pyramid. The sub-window area being investigated is being amended in case of non-uniform lightning and subjected to histogram equalization. The processed area is fed to a few parallel neural networks which perform the actual face detection. In its first publication, the algorithm could detect frontal upright faces only.

A Statistical Method for 3D Object Detection Applied to Faces and Cars, by Henry Schneiderman and Takeo Kanade, 2000 [7]. The foundations of this algorithm go down to the calculation of an image pyramid and scanning pyramid images via a fixed size sub-window. The content of the sub-window is subjected to a wavelet analysis and histograms are made for different wavelet coefficients. These coefficients are fed to parallel detectors trained in different ways and sensitive to various object orientations. Opposed to the basic Viola-Jones algorithm and the algorithm presented by Rowley et al. this algorithm also detects profile views.

One of the main problems of automated object detection is that the size and position of a given object within an image is unknown. As two of the mentioned algorithms demonstrate the standard way to overcome this obstacle is to calculate an image pyramid and scan the detector through each image in the pyramid. The problem is that the methods are quite time-consuming. Anyhow, Viola and Jones present a new approach to this problem in their paper.

The basic principle of the Viola-Jones algorithm is to scan a sub-window capable of detecting faces across a given input image. The standard image processing approach would be to rescale the input image to different sizes and then run the fixed size detector through these images. This approach turns out to be rather time consuming due to the calculation of the different size images. Contrary to the standard approach Viola-Jones rescale the detector instead of the input image and run the detector many times through the image - each time with a different size. At first one might suspect both approaches to be equally time consuming, but Viola-Jones have devised a scale invariant detector that requires the same number of calculations whatever the size. This detector is constructed using a so-called integral image and some simple rectangular features reminiscent of Haar wavelets. The next section elaborates on this detector.

The first step of the Viola-Jones face detection algorithm is to turn the input image into an integral image. This is done by making each pixel equal to the entire sum of all pixels above and to the left of the concerned pixel. This allows

the calculation of the sum of all pixels inside any given rectangle to be done using only four values. These values are the pixels in the integral image that coincide with the corners of the rectangle in the input image [8].

It has now been demonstrated how the sum of pixels within rectangles of arbitrary size can be calculated at a constant time. The Viola-Jones face detector analyzes a given sub-window using features consisting of two or more rectangles. One of a few reasons for using features against pixels is that such a system operates much faster than the one which operates with pixels [9]. The different types of features are shown in Figure 1.

u

Figure 1. Rectangle features

Each feature results in a single value which is calculated by subtracting the sum of the white rectangle(s) from the sum of the black rectangle(s). ViolaJones have empirically found that a detector with a base resolution of 24*24 pixels gives satisfactory results.

Viola and Jones used a modified version of the AdaBoost algorithm developed by Freund and Schapire in 1996 [10]. AdaBoost is a machine learning boosting algorithm capable of constructing a strong classifier through a weighted combination of weak classifiers. (A weak classifier classifies correctly in only a little bit more than half the cases.) To match this terminology to the presented theory each feature is considered to be a potential weak classifier. A weak classifier is mathematically described as:

h(x,f,p,e) = {1 jf P{«>Pe (1)

^ 0 otherwise

where x is a 24*24 pixel sub-window, f is the applied feature, p the polarity and 0 the threshold that decides whether x should be classified as a positive (a face) or a negative (a non-face).

Viola-Jones' modified AdaBoost algorithm takes the form shown below.

- Given examples images (x1,y1),..., (xn,yn) where yt=0,1 for negative and positive examples.

i i

- Initialize weights <u1ti = —,— for yt = 0,1 where m and I are the num-

2 ^^ 2Z

bers of positive and negative examples. For t = 1,...,T:

1) Normalize the weights

to

t,i

2) Select the best weak classifier with respect to the weighted error:

et = £ i 1 h(xi' f> P'e)-yi\.

3) Define

h t(x) = h{x,ft,Pt,Ot), where ft, pt, dt are the minimizers of et..

4) Update the weights:

(3)

(4)

1- et

(5)

where ei = 0 if example xt is classified correctly and et = 1 otherwise, and

Pt-~

1- e

The final strong classifier is:

C(x) = J1 a*ht(.x) - 2^=1Œt

0, otherwise

(6)

where at — I o g —.

pt

The modified AdaBoost algorithm was implemented in Matlab. The training sample consisted of 15 face images and 12 images which did not contain face. All of the images had 640*480 resolution. The program allows concluding whether there is a face in an image. The outputs of the program are a "FACE" or "NO FACE" caption for input images with faces and without them respectively and the false positive rate. The program has undergone tests on various images and results showed that an average value for the false positive rate was about 20 % what is quite promising considering the fact that the training set consisted of a relatively small number of images. The created software successfully passed through testing as it correctly detected face presence or absence on input images.

Some results of the algorithm implementation are shown in the figure below.

Figure 2 - Algorithm implementation results

As it can be seen from Figure 2, the programming code correctly detects faces and decides that the image does not contain a face even for cases when the content of an image can be wrongly regarded as a face.

The work is performed out of the grant funds in the framework of the Program for competitive growth of Tomsk Polytechnic University.

References

1. Guo, Z., Liu, H., Wang, Q., Yang, J. 2006. "A Fast Algorithm of Face Detection for Driver Monitoring". Proceedings of the International Conference on Intelligent Systems Design and Applications, vol.2, pp. 267 - 271, 2006.

2. Yang, M., Ahuja, N. 2001. "Face Detection and Gesture Recognition for Human-Computer Interaction". The International Series in Video Computing, vol.1, Springer, 2001.

3. Zhang, Z., Potamianos G., Liu, M., Huang, T. 2006. "Robust MultiView Multi-Camera Face Detection inside Smart Rooms Using Spation-Temporal Dynamic Programming". Proceedings of International Conference on Automatic Face and Gesture Recognition, pp.407 - 412, 2006.

4. Viola, P., Jones M. 2004. "Robust Real-Time Face Detection". International Journal of Cumputer Vision 57(2).

5. Viola, P., Jones M. 2003. "Fast Multi-view Face Detection". Mitsubishi Electric Research Laboratories, TR2003-096.

6. Rowley, H., Baluja Sh., Kanade T. 1998. "Neural Network-Based Face Detection". IEEE Transactions on Pattern Analysis and Machine Intelligence, Volume 20, Issue 1, Jan 1998.

7. Schneiderman H., Kanade T. 2000. "A Statistical Method for 3D Object Detection Applied To Faces and Cars". IEEE Conference on Computer Vision and Pattern Recognition 2000 proceedings, Volume 1.

8. Jensen O. 2008. "Implementing the Viola-Jones Face Detection Algorithm" Kongens Lyngbyro

9. Viola, P., Jones M. 2001. "Robust Real-Time Object Detection". Second International Workshop on Statistical and Compputational Theories of Vision-Modeling, Learning, Computing and Sampling

10. Bishop Ch. 2006. Pattern Recognition and Machine Learning, first edition, Springer 2006.

i Надоели баннеры? Вы всегда можете отключить рекламу.