Top Banner
Face Recognition Using SURF Interest Points Áron Virginás-Tar * * “Politehnica” University of Timișoara, Timișoara, Romania [email protected] Abstract—Interest point detection and feature extraction is the initial step in many computer vision and object recognition applications. SURF is a fast and robust interest point detector and descriptor first published in 2006 that is rapidly gaining popularity as a better alternative to SIFT. In this paper we propose a method for using interest points extracted with the SURF algorithm in a face recognition system. We rely on a spatially constrained interest point matching scheme to achieve frontal recognition from a database of one facial image per subject. I. INTRODUCTION As our society becomes more and more dependent on automatic information processing, the need for reliable computerized personal identification methods has resulted in an increased interest in biometrics. Biometric methods being investigated include fingerprints, iris, speech, signature dynamics, and face recognition [1]. Iris recognition is extremely accurate, but expensive to implement and intrusive. Fingerprint-based identification is reliable and less intrusive, but it requires the full cooperation of the individuals being identified, hence it becomes impractical in many real-life scenarios. Face recognition seems to be a good compromise between reliability and social acceptance. While it provides a lower security level in unconstrained acquisition conditions, it has the advantage of being able to function in an unobtrusive way. A. Overview The generic face recognition problem can be informally expressed as follows: given static images or a video capture of a scene, identify or verify one or more persons in the scene by comparing with facial images stored in a database [2]. Face recognition systems generally fall into one of the following two categories: (1) verification and (2) identification. Face verification is a 1:1 match that compares a face image against a template face image whose identity is known. On the other hand, face identification is a 1:N problem, in which we compare a query face image against multiple template images from a face database to classify the query face. The method described in this paper belongs to the latter category. The face recognition process can be divided in two major steps: (1) face detection and normalization and (2) face identification. The algorithms that implement both parts are called fully automatic algorithms, while those that consist only of the second part are referred to as partially automatic. Hereupon we only consider the step of face identification, face detection and normalization are beyond the scope of this paper. Depending on the kind of input images, one can distinguish the following three categories of algorithms: (1) frontal, (2) profile, and (3) view-tolerant recognition. The classical approach is frontal recognition, while view- tolerant algorithms are usually more robust and applicable in less ideal scenarios. Stand-alone profile-based recognition techniques have a rather marginal significance, however they are practical as part of hybrid recognition schemes [1]. The face identification method presented in this paper follows the classical approach of frontal recognition, but we also analyze the possibilities of improving view-tolerance. B. Challenges in Face Recognition Current face recognition systems usually work well if the test and training images are captured under similar conditions. Nevertheless, real-world scenarios remain a challenge, because the face acquisition process is subject to different kinds of variation, which can significantly affect the efficiency of the face recognition process [1]: variations in illumination due to different light conditions for image acquisition; orientation (or pose) changes, which introduce projective deformations and even self-occlusion; significant time delay between the acquisition of the training and test images leads to age variation. As the human face changes with age in a nonlinear way, the problem of age variation is often seen as one of the most challenging issues in face recognition; occlusions can also affect the performance of a face recognition system, especially if they are located in the upper side of the face. In general, the approaches proposed for dealing with variation belong to the following three major classes of solutions [2]: invariant features aim to identify and utilize features that are invariant to the changes presented above; canonical forms attempt to normalize away the variation by image transformations or by synthesizing a canonical form from the test image; variation-modeling attempts to identify and model the extent of variation. Though each of the methods from above works well in a given scenario, performance degrades rapidly when other variations are also present. II. FACE RECOGNITION TECHNIQUES There have been proposed numerous different approaches for modeling the idiosyncrasies of the human face and designing face identification systems. In this section we will briefly describe the most significant approaches found in the reviewed literature.
6

Face Recognition Using SURF Interest Points

Feb 09, 2016

Download

Documents

aronvirginas

Interest point detection and feature extraction is
the initial step in many computer vision and object
recognition applications. SURF is a fast and robust interest
point detector and descriptor first published in 2006 that is
rapidly gaining popularity as a better alternative to SIFT.
In this paper we propose a method for using interest points
extracted with the SURF algorithm in a face recognition
system. We rely on a spatially constrained interest point
matching scheme to achieve frontal recognition from a
database of one facial image per subject.
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Face Recognition Using SURF Interest Points

Face Recognition Using SURF Interest Points

Áron Virginás-Tar* * “Politehnica” University of Timișoara, Timișoara, Romania

[email protected]

Abstract—Interest point detection and feature extraction is the initial step in many computer vision and object recognition applications. SURF is a fast and robust interest point detector and descriptor first published in 2006 that is rapidly gaining popularity as a better alternative to SIFT. In this paper we propose a method for using interest points extracted with the SURF algorithm in a face recognition system. We rely on a spatially constrained interest point matching scheme to achieve frontal recognition from a database of one facial image per subject.

I. INTRODUCTION As our society becomes more and more dependent on

automatic information processing, the need for reliable computerized personal identification methods has resulted in an increased interest in biometrics. Biometric methods being investigated include fingerprints, iris, speech, signature dynamics, and face recognition [1]. Iris recognition is extremely accurate, but expensive to implement and intrusive. Fingerprint-based identification is reliable and less intrusive, but it requires the full cooperation of the individuals being identified, hence it becomes impractical in many real-life scenarios. Face recognition seems to be a good compromise between reliability and social acceptance. While it provides a lower security level in unconstrained acquisition conditions, it has the advantage of being able to function in an unobtrusive way.

A. Overview The generic face recognition problem can be

informally expressed as follows: given static images or a video capture of a scene, identify or verify one or more persons in the scene by comparing with facial images stored in a database [2].

Face recognition systems generally fall into one of the following two categories: (1) verification and (2) identification. Face verification is a 1:1 match that compares a face image against a template face image whose identity is known. On the other hand, face identification is a 1:N problem, in which we compare a query face image against multiple template images from a face database to classify the query face. The method described in this paper belongs to the latter category.

The face recognition process can be divided in two major steps: (1) face detection and normalization and (2) face identification. The algorithms that implement both parts are called fully automatic algorithms, while those that consist only of the second part are referred to as partially automatic. Hereupon we only consider the step of face identification, face detection and normalization are beyond the scope of this paper.

Depending on the kind of input images, one can distinguish the following three categories of algorithms: (1) frontal, (2) profile, and (3) view-tolerant recognition. The classical approach is frontal recognition, while view-tolerant algorithms are usually more robust and applicable in less ideal scenarios. Stand-alone profile-based recognition techniques have a rather marginal significance, however they are practical as part of hybrid recognition schemes [1]. The face identification method presented in this paper follows the classical approach of frontal recognition, but we also analyze the possibilities of improving view-tolerance.

B. Challenges in Face Recognition Current face recognition systems usually work well if

the test and training images are captured under similar conditions. Nevertheless, real-world scenarios remain a challenge, because the face acquisition process is subject to different kinds of variation, which can significantly affect the efficiency of the face recognition process [1]: − variations in illumination due to different light

conditions for image acquisition; − orientation (or pose) changes, which introduce

projective deformations and even self-occlusion; − significant time delay between the acquisition of the

training and test images leads to age variation. As the human face changes with age in a nonlinear way, the problem of age variation is often seen as one of the most challenging issues in face recognition;

− occlusions can also affect the performance of a face recognition system, especially if they are located in the upper side of the face. In general, the approaches proposed for dealing with

variation belong to the following three major classes of solutions [2]: − invariant features aim to identify and utilize features

that are invariant to the changes presented above; − canonical forms attempt to normalize away the

variation by image transformations or by synthesizing a canonical form from the test image;

− variation-modeling attempts to identify and model the extent of variation. Though each of the methods from above works well in

a given scenario, performance degrades rapidly when other variations are also present.

II. FACE RECOGNITION TECHNIQUES There have been proposed numerous different

approaches for modeling the idiosyncrasies of the human face and designing face identification systems. In this section we will briefly describe the most significant approaches found in the reviewed literature.

Page 2: Face Recognition Using SURF Interest Points

Figure 1. Interest points extracted from a grayscale facial image

using the SURF detector

Most face recognition methods are based on 2D image processing and can achieve a recognition rate above 90% under controlled conditions. 3D and hybrid models have also been proposed in recent years, but we chose not to include them here, because the face recognition scheme we present in this paper is based solely on 2D pixel data. Face recognition systems based on infrared photography are also out of scope for this brief survey.

A. Eigenfaces The eigenface method [3][4], also known as Karhunen-

Loève expansion or Principal Component Analysis (PCA), is one of the most thoroughly investigated linear approaches to face recognition. Originally published in the early 90’s, the eigenface approach is the first genuinely successful method for automatic face recognition. It is based on the idea that any face image can be approximately reconstructed starting from a standard face image − a so-called eigenpicture − and a small collection of weights for each face. Eigenfaces are eigenvectors derived from the covariance matrix of a large set of facial pictures by means of statistical analysis. The eigenvectors are ordered to represent different amounts of the variation among the faces. Then each face can be described exactly by a linear combination of the eigenfaces. The accuracy of the eigenface method is around 80% when averaged over lighting, orientation, and size variations [2].

B. Geometrical Feature Matching Geometrical feature matching techniques attempt to

extract and match a set of geometrical features from the face images. Facial features can be extracted using Gabor filters, which are linear filters used for edge detection. They can be applied to specific areas of the face image, corresponding to cells of a rigid grid. The Gabor coefficients are extracted for each cell of the grid and combined into feature points. The cells are linked to form a so-called Dynamic Link Architecture (DLA). Different subjects can then be compared by means of graph matching. An early example of such a system is presented in [5]. The more recent [6] describes an Elastic Bunch Graph Map (EBGM) algorithm that applies 40 different Gabor filters on facial images and then extracts the maximum intensity points. The face recognition technique described in [7] is based on two-dimensional Gabor filtering and supervised classification. Both methods have achieved a recognition rate of about 90%.

Wavelet decomposition [8] represents another approach for feature extraction. Each image is described by a subset of filtered images containing wavelet coefficients. These wavelet coefficients characterize the face texture and form the basis for building a compact set of feature vectors based on statistical methods. Wavelet transforms are effective due to their insensitivity to variation in light direction, face pose, and facial expression.

Edge information is also insensitive to illumination changes to a certain extent. Edge maps are widely used in various pattern recognition fields and have recently found their way into face recognition as well. The Line Edge Map (LEM) method [9] extracts lines as features and it can be considered a combination of template matching and geometrical feature matching. The LEM method yields superior results compared to the eigenface method for faces with slight appearance variations. On the other

hand, it is more sensitive to large facial expression changes.

C. Support Vector Machines (SVMs) SVM is a learning technique that has proved an

effective method for solving general-purpose two-class pattern recognition problems. Given a set of points belonging to two different classes, an SVM finds the hyperplane that keeps the largest possible fraction of points that belong to the same class on the same side, while maximizing the distance from either class to the hyperplane. In computer vision SVMs can be used to aid the process of discriminating between a pair of features after the features have been extracted. As first proposed in [10], SVMs can be adapted to face recognition by modifying the interpretation of the output of the SVM classifier and constructing a representation of facial images that is concordant with a two-class problem. The two classes become: the dissimilarities between faces of the same person, and dissimilarities between faces of different people. The identification rate of this method is around 80% on frontal images after preprocessing.

D. Hidden Markov Models (HMMs) An HMM is a statistical model in which the system

being modeled is assumed to be a Markov process with hidden states. HMMs have been extensively and effectively used in speech recognition, since the one-dimensional nature of the sound signal is well suited to be analyzed by an HMM.

In order to apply an HMM-based classifier for face recognition, reference [11] uses a sliding window to obtain a 1D observation sequence. Faces are intuitively divided into regions such as the eyes, nose, mouth, etc., which can then be associated with the states of an HMM.

E. Bio-Inspired Techniques Bio-inspired techniques have been proved efficient in

solving a wide range of computationally hard problems, including pattern recognition and data processing. The models proposed for face recognition are mostly based on Neural Networks (NN) used in combination with different preprocessing and feature extraction techniques, including PCA [12][14], Linear Discriminant Analysis (LDA) [14] and Bunch Graph Method (BGM) [13]. Reference [15] presents a hybrid solution based on a NN and a Genetic Algorithm (GA).

F. Face Recognition Using Interest Points Face recognition systems based on interest points are

similar in principle to those presented in subsection B. Such systems use for feature extraction either the SIFT or the SURF detector, which are essentially similar. See the next sections for more details about interest point detectors.

Page 3: Face Recognition Using SURF Interest Points

The main difference between the schemes lies in the manner in which the interest points are matched and the most similar face image is selected. The most basic solution is the SIFT-based technique described in [16]. Matches for a query interest point are searched for in the whole template image. Only those matches are considered which are significantly better than the second best match. In the end the most similar template image is considered the one with the most matching interest points. This scheme has the disadvantage that matches are also searched and sometimes found in image areas where they cannot possibly belong to the same object. Reference [17] introduces a more elaborate matching solution using a non-overlapping grid-based search. This reduces the complexity and the number of false matches by eliminating improbable candidates. In [18] the authors propose a mixed scheme, which compares matches from a rectangular neighborhood of the query interest point with global matches to decide which matches are valid.

III. INTEREST POINT DETECTION Interest point detection refers to the process of

identifying interest points in an image. Interest points or keypoints are points that have a high degree of variation in multiple directions and are rich in terms of local information contents. Corners are generally good interest point candidates, but so are black dots on a white background or any image location with a significant texture [19]. Interest points are expected to be repeatable, robust and scale-independent in order to facilitate reliable matching for object recognition.

The Harris corner detector [20], proposed back in 1988, was among the first interest point detectors [19]. It is based on the eigenvalues of the second moment matrix. Early approaches lacked invariance to scale and were sensitive to projective distortion and illumination change. The more recent Scale-Invariant Feature Transform (SIFT) interest point detector [21] was designed to detect robust keypoints that are invariant to scaling, rotation and illumination. SIFT identifies the interest points by looking for locations that are maxima or minima of a Difference of Gaussian (DoG) function.

Fig. 1 displays the interest points detected in a facial image using the SURF algorithm. See the next subsection for details.

A. Speeded-Up Robust Features (SURF) SURF is a scale and in-plane rotation invariant interest

point detector and descriptor originally described in [22]. It uses the determinant of the approximate Hessian matrix as the core of the detector and detects blob-like structures at locations where the determinant is at maximum.

The algorithm employs integral images in the Hessian matrix approximation, which allow for fast computation of box type convolution filters. The entry of an integral image 𝐼! in point 𝐱   =   (𝑥, 𝑦) is the sum of all pixels in the input image I within a rectangular region formed by the origin and x. Once the integral image is computed, it takes only three additions to calculate the sum of the intensities over any rectangular area.

Given a point 𝐱 = (𝑥, 𝑦) in an image I, the Hessian matrix 𝐻(𝐱,𝜎) in x at scale 𝜎 is defined as follows:

𝐻 𝐱,𝜎 =

𝐿!!(𝐱,𝜎) 𝐿!"(𝐱,𝜎)𝐿!"(𝐱,𝜎) 𝐿!!(𝐱,𝜎)

(1)

where 𝐿!!(𝐱,𝜎), 𝐿!"(𝐱,𝜎) and 𝐿!!(𝐱,𝜎) are the convolutions of the Gaussian second order partial derivatives with the image I in point x.

A set of 9×9 box filters are used as approximations of a Gaussian with 𝜎   =  1.2, as shown in Fig. 2. They are denoted 𝐷!!, 𝐷!" and 𝐷!!. The approximated determinant of the Hessian matrix represents the blob response in the image at location x. It can be calculated using the following formula:

det 𝐻!""#$% = 𝐷!!𝐷!! − (𝜔𝐷!")! (2)

where 𝜔 ≈ 0.9 is a weight for the energy conservation between the Gaussian kernels and the approximated Gaussian kernels. These determinants are stored in a blob response map over different scales, and local maxima are detected. The locations of these local maxima will become the interest points.

SURF uses a scale space representation in order to calculate the blob responses at different scales. The scale space is constructed by up-scaling the filter size. The output of the 9×9 filter will serve as the initial scale layer. The following layers are obtained by filtering the image with gradually bigger masks (15×15, 21×21, 27×27, etc.). The scale space is divided into octaves, where an octave encompasses a scaling factor of 2. Octaves are overlapping in order to seamlessly cover all possible scales.

Each interest point is assigned a feature vector that describes the distribution of the intensity content within the neighborhood of the interest point. SURF uses the sum of the Haar wavelet responses to describe the features of an interest point. Fig. 3 shows the Haar wavelet filters for the x and y direction.

In order to be invariant to image rotation, SURF uses an orientation assignment method to identify a reproducible orientation for the interest points. The first

Figure 2. 9×9 box filters for the Gaussian second order partial derivatives 𝐿!!and 𝐿!" (left), respectively their approximations

𝐷!!and 𝐷!" (right) [22]

Figure 3. Haar wavelet filters used to descript the interest points in the 𝑥 (left) and 𝑦 (right) direction. The dark parts have the weight −1, while the light parts have +1 [22]  

Page 4: Face Recognition Using SURF Interest Points

step of feature extraction consists of constructing a square region centered at the interest point and oriented along the previously decided orientation. The size of this window is 20𝑠, where s is the current scale. The region is then split up equally into 4×4 = 64 sub-regions. For each sub-region, the Haar wavelet responses are computed at 5×5 equally spaced sample points.

Let 𝑑! and 𝑑! denote the Haar wavelet response in the horizontal and vertical direction in relation to the orientation of the interest point. In order to have information about the polarity of the intensity changes, SURF also takes into consideration the sum of the absolute values of the responses, denoted 𝑑! and 𝑑! . Hence, for each sub-region we can construct a feature vector 𝐯 = 𝑑! , 𝑑! , 𝑑! , 𝑑! of 4 dimensions. By concatenating the descriptors of all the sub-regions, we obtain the descriptor of the interest point.

To some extent SURF is similar in concept to SIFT, as both detectors rely on the spatial distribution of gradient information. However, as demonstrated in [22], SURF is superior to SIFT in almost all cases. Hence, we have opted for SURF instead of SIFT as the interest point detector for our face recognition.

B. Interest Point Matching The interest points from two images can be matched

by Nearest Neighbor Search (NNS). This is a fundamental optimization problem in computer vision, which can be formally described as

𝑋∗ = argmin!∈𝒟

𝜌 𝑋,𝑄 (3)

where 𝒟 = 𝑋!,… ,𝑋! ⊂ ℝ! is a dataset, Q is a query and 𝜌 is a distance measure [23]. In our case the dataset and the query are the feature vectors of interest points, while the distance measure is either the Euclidean or the Manhattan distance. k-NNS is a variant of NNS which identifies the top k nearest neighbors of the query.

The naïve solution to NNS is to compute the distance between the query interest point and every single interest point in the dataset and then select the closest match. This approach has a computational complexity of 𝑂(𝑛𝑑), where n is the number of elements in the dataset and d is the dimensionality. This can be expensive for large datasets. On the other hand, it is usually enough to find a good enough approximation of the nearest neighbor. This lead to the development of Approximate Nearest Neighbor Search (ANNS) algorithms, such as the graph-based approach described in [23]. By using an ANNS algorithm, we can achieve interest point matching in logarithmic time.

IV. PROPOSED METHOD The method we propose in this paper handles only the

identification step of the generic face recognition process described in section I. Hence, we consider that both the query image and the template images are normalized and have the exact same pixel ratio. The reasoning behind the proposed solution relies heavily on this presumption.

First the SURF algorithm is applied to the query image to extract interest points and their feature vectors. In the second step these interest points are compared to the interest points previously extracted from the template images in search for possible matches. Since face images are normalized, we can assume that the same regions of the face will occupy approximately the same position within both the test image 𝐼 and template image 𝐽. Thus we can avoid the complexity of searching for matches in the whole template image. Instead, each point 𝐱 =𝑥, 𝑦 ∈ 𝐼 is only matched against those interest points

which lie within a circle of a predefined radius r centered at 𝐱! =   𝑥, 𝑦 ∈ 𝐽. Fig. 4 illustrates this concept.

The matching is performed using k-NNS. For each interest point from the query image we find the two nearest neighbors among the interest points from the neighboring region of the database image. The nearest neighbor becomes a candidate match. We then calculate the ratio of the feature distances that characterize the best and the second best match. The candidate match is kept only if this ratio is below a predefined threshold 𝛼, otherwise it is disregarded. In other words: we only consider those matches, which are significantly better than the second best candidate. Thus we can drastically reduce the number of false matches. The candidate match is also ignored in the special scenario when there is only one interest point in the search area and hence there is no second best match to compare against.

After this step we have obtained a number of n good matches. Each match is characterized by the distance between the descriptors of the two corresponding interest points. The smaller this distance, the more similar features do the points exhibit.

From our initial hypothesis we can deduce that the spatial proximity of the interest points also contributes to the quality of the match. The closer the two interest points are to each other in space, the higher the probability that they belong to the same area of the face. We quantify this using the Euclidean distance between the coordinates of the points.

By combining these two measures, we can define the quality of a match as follows:

𝑄 =1

1 + 𝑑!𝑑! (4)

where 𝑑! represents the spatial distance between the interest points and 𝑑! is the distance between their

Figure 4. Each interest point from the query image is only matched against those interest points from the template image that reside in the same area (marked with a blue circle)

Page 5: Face Recognition Using SURF Interest Points

descriptors. Q takes values from the interval 0,1 , where 1 stands for the quality of the perfect match.

The average quality 𝑄 of the interest point matches between two images will be one of the measures used to determine their grade of similarity. The other component will be a function of n, since more matches indicate a higher number of similar features between the images. For this purpose we have chosen the logarithmic function because its curve has a larger slope for small values of n, and thus log 𝑛 makes a greater difference in the critical scenario when there are only a few matches for all faces.

In consequence, we define the similarity measure between two face images I and J as follows:

𝑆 𝐼, 𝐽 = 𝑄 log 𝑛 𝑛 ≥ 𝑛!"#0 otherwise

(5)

Here 𝑛!"# is a predefined threshold that represents the minimum number of matches needed to consider the similarity measure reliable enough.

Once we have obtained the value of S for all the template images from the database, we choose the most similar image to I as follows:

𝐽!"#$ = argmax!

𝑆(𝐼, 𝐽) (6)

In the particular case when 𝑆 = 0 for all the database images, we consider that there is no good enough match in the database for the query image, therefore 𝐽!"#$ ∈ ∅.

V. IMPLEMENTATION DETAILS AND EXPERIMENTATION METHODOLOGY

We have implemented a proof of concept face recognition system in C++. It is built upon the SURF interest point detector and a fast ANNS implementation from the Open Source Computer Vision Library (OpenCV) [24]. The SURF detector is invoked with the default parameters of 4 octaves and 2 layers per octave, as well as a Hessian threshold that equals 400.

The configurable parameters described in the previous section take the values presented in Table I. These are the values that yielded the best results in our experimental setup and have been fine-tuned empirically. In case of 𝛼 and 𝑛!"# we have started from the reference values suggested in [17] and [18]. Please note that r is dependent on the pixel size of the input images, therefore the values presented here are only applicable for the face database used in our experiments. In general, r should increase linearly with pixel size, but determining an exact relation requires further investigation and was beyond the scope of our current experiments.

For testing purposes we have used the AT&T Cambridge Laboratories Face Database [25], which contains images of 40 subjects and covers different poses and facial expressions. The face images from this database have been sampled identically to 92×112 pixels. For each subject we have manually selected a single frontal image as template and used the rest as query images. Starting from the template images we have first compiled a database of interest point locations and descriptors, which we have saved on the disk. Then we

have matched the interest points extracted in real-time from the query image against these serialized descriptors.

The interest point detector is robust enough to overcome slight variations in illumination. Nevertheless, we have applied histogram equalization as a preprocessing step in order to normalize illumination.

VI. EXPERIMENTAL RESULTS Our experiments conducted on the AT&T Face

Database have shown that the method described in section IV yields good results when the query image is frontal. Recognition rate is around 80-90% in this scenario, which is comparable to the accuracy reported for other face recognition schemes. On the other hand, the spatial constraints that lie at the foundation of the method do not leave much room for view-tolerance. In consequence, face images shot from a significantly different angle than the reference image are rarely identified correctly.

VII. SUMMARY AND FUTURE WORK We have described a method for using SURF interest

points for face identification. This method can be applied when the query image and the database images are normalized and have the same size. We have chosen SURF over SIFT due to its superior qualities. Our contribution lies in the matching procedure, which searches for nearest neighbors only in the circular vicinity of the query interest point. This helps reduce the number of false matches and the complexity of the search procedure. The quality of a match is given by the combination of the feature distance and the spatial distance between the two interest points. Thus we attempt to find the best possible matches.

A. Possible improvements Even though we use fast approximate feature

matching, the execution time required for matching will be a function of the number of template images and the number of interest points detected in each image. We could reduce the execution time by parallelizing this process. Since template images are completely independent, their interest points could be matched in parallel against those of the query image. Furthermore, each interest point within the same image could also be matched in parallel.

The main drawback of our method lies in the fact that the quality measure based on Euclidean distance restricts view-tolerance. Therefore, improving view-tolerance could also be the subject of future research. This could

TABLE I. PARAMETER VALUES THAT YIELD THE BEST RESULTS FOR THE

AT&T FACE DATABASE

r 15−25

𝛼 0.5

𝑛!"# 3−4

Page 6: Face Recognition Using SURF Interest Points

possibly be achieved by using more than one template image per subject, thus we could model different poses.

REFERENCES [1] A. F. Abate, M. Nappi, D. Riccio and G. Sabatino., “2D and 3D

Face Recognition: A Survey”, in Pattern Recognition Letters, vol. 28, 2007, pp. 1885-1906.

[2] A. S. Tolba, A. H. El-Baz and A. A. El-Harby, “Face Recognition: A Literature Review”, in International Journal of Information and Communication Engineering, vol. 2, no. 2, 2006, pp. 88–103.

[3] M. Turk and A. Pentland, “Face Recognition Using Eigenfaces,” in Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, Maui, Hawaii, 1991, pp. 586-591.

[4] M. Turk and A. Pentland, “Eigenfaces for Recognition,” in Journal of Cognitive Neuroscience, vol. 3, no. 1, 1991, pp. 71-86.

[5] R. Nicole, “Distortion Invariant Object Recognition in the Dynamic Link Architecture”, in IEEE Transactions on Computers, vol. 42, no. 3, March 1993, pp. 300-310.

[6] M. Sharif, A. Khalid, M. Raza and S. Moshin, “Face Recognition using Gabor Filters”, in Journal of Applied Computer Science & Mathematics, no. 11, Suceava, 2011, pp. 53-57.

[7] T. Barbu, “Gabor Filter-based Face Recognition Technique”, in Proceedings of the Romanian Academy Series A, vol. 11, no. 3, 2010, pp. 277-283.

[8] S. Kakarwal and R. Deshmukh, “Wavelet Transform based Feature Extraction for Face Recognition”, in International Journal of Computer Science and Application, 2010, pp. 100-104.

[9] Y. Gao and M. K. H. Leung, “Face Recognition Using Line Edge Map”, in IEEE Transactions on Pattern Analysis and Machine Intelligence, vol. 24, no. 6, June 2002, pp. 764-779.

[10] P. Jonathon Phillips, “Support Vector Machines Applied to Face Recognition”, in Advances in Neural Information Processing Systems 11, MIT Press, 1999, pp. 803-809.

[11] F. Samaria and F. Fallside, “Face Identification and Feature Extraction Using Hidden Markov Models”, Image Processing: Theory and Application, G. Vernazza, ed., Elsevier, 1993.

[12] P. Latha, L. Ganesan and S. Annadurai, “Face Recognition Using Neural Networks”, in Signal Processing: An International Journal (SPIJ), vol. 3, no. 5, 2010, pp. 153-160.

[13] D. Aradhana, H. Girish, K. Karibasappa and A. Chennakeshava Reddy, “Face Recognition by Bunch Graph Method Using a Group Based Adaptive Tolerant Neural Network”, in British

Journal of Mathematics & Computer Science, vol. 1, no. 4, 2011, pp. 194-203.

[14] K. Rama Linga Reddy, G. R. Babu and L. Kishore, “Face Recognition Based on Eigen Features of Multi Scaled Face Components and an Artificial Neural Network”, in International Journal of Security and Its Applications, vol. 5, no. 3, July 2011, pp. 23-44.

[15] S. Anam, S. Islam, M. A. Kashem, M. N. Islam, M. R. Islam and M. S. Islam, “Face Recognition Using Genetic Algorithm and Back Propagation Neural Network”, in Proceedings of the International MultiConference of Engineers and Computer Scientists, vol. 1, 2009.

[16] M. Aly, “Face Recognition using SIFT Features”, unpublished, 2006.

[17] P. Dreuw, P. Steingrube , H. Hanselmann and H. Ney, “SURF-Face: Face Recognition Under Viewpoint Consistency Constraints”, in Proceedings of the British Machine Conference, vol. 7, 2009, pp. 1-11.

[18] G. Du, F. Su and A. Cai, “Face Recognition Using SURF Features”, in SPIE Proceedings Vol. 7496 MIPPR 2009: Pattern Recognition and Computer Vision, 2009.

[19] C. Schmid, R. Mohr and C. Bauckhag, “Evaluation of Interest Point Detectors”, in International Journal of Computer Vision, vol. 37, no. 2, 2000, pp. 152-172.

[20] C. Harris and M. Stephens, “A Combined Corner and Edge Detector”, in Proceedings of the Alvey Vision Conference, 1988, pp. 147-151.

[21] D. G. Lowe, “Object Recognition from Local Scale-Invariant Features”, in Proceedings of the Seventh IEEE International Conference on Computer Vision, vol. 2, 1999, pp. 1150-1157.

[22] H. Bay, T. Tuytelaars and L. van Gool, “SURF: Speeded Up Robust Features”, in Proceedings of the 9th European Conference on Computer Vision, 2006, pp. 404-417.

[23] K. Hajebi, Y. Abbasi-Yadkori, H. Shahbazi and H. Zhang, “Fast Approximate Nearest-Neighbor Search with k-Nearest Neighbor Graph”, in Proceedings of the Twenty-Second International Joint Conference on Artificial Intelligence, vol. 2, 2011, pp. 1312-1317.

[24] Open Source Computer Vision Library (OpenCV) http://opencv.org

[25] AT&T Cambridge Laboratories Face Database http://www.cl.cam.ac.uk/research/dtg/attarchive/facedatabase.html