A comparative study on face recognition techniques and neural network



Similar documents
AN IMPROVED DOUBLE CODING LOCAL BINARY PATTERN ALGORITHM FOR FACE RECOGNITION

SYMMETRIC EIGENFACES MILI I. SHAH

Adaptive Face Recognition System from Myanmar NRC Card

Statistics in Face Recognition: Analyzing Probability Distributions of PCA, ICA and LDA Performance Results

FACE RECOGNITION BASED ATTENDANCE MARKING SYSTEM

Face Recognition For Remote Database Backup System

Index Terms: Face Recognition, Face Detection, Monitoring, Attendance System, and System Access Control.

Machine Learning for Data Science (CS4786) Lecture 1

Data, Measurements, Features

TIETS34 Seminar: Data Mining on Biometric identification

Volume 2, Issue 9, September 2014 International Journal of Advance Research in Computer Science and Management Studies

Independent Comparative Study of PCA, ICA, and LDA on the FERET Data Set

Fuzzy based Pixel wise Information Extraction for Face Recognition

The Scientific Data Mining Process

EM Clustering Approach for Multi-Dimensional Analysis of Big Data Set

What is the Right Illumination Normalization for Face Recognition?

Principal components analysis

Capacity of an RCE-based Hamming Associative Memory for Human Face Recognition

Comparison of Non-linear Dimensionality Reduction Techniques for Classification with Gene Expression Microarray Data

Supervised Feature Selection & Unsupervised Dimensionality Reduction

Efficient Attendance Management: A Face Recognition Approach

Analecta Vol. 8, No. 2 ISSN

Classifying Manipulation Primitives from Visual Data

Principal Gabor Filters for Face Recognition

Distance Metric Learning in Data Mining (Part I) Fei Wang and Jimeng Sun IBM TJ Watson Research Center

A secure face tracking system

1816 IEEE TRANSACTIONS ON IMAGE PROCESSING, VOL. 15, NO. 7, JULY Principal Components Null Space Analysis for Image and Video Classification

Unsupervised and supervised dimension reduction: Algorithms and connections

Mathematical Model Based Total Security System with Qualitative and Quantitative Data of Human

Subspace Analysis and Optimization for AAM Based Face Alignment

CS Master Level Courses and Areas COURSE DESCRIPTIONS. CSCI 521 Real-Time Systems. CSCI 522 High Performance Computing

Comparison of K-means and Backpropagation Data Mining Algorithms

The Implementation of Face Security for Authentication Implemented on Mobile Phone

Object Recognition and Template Matching

A Mobile-based Face Verification System

Machine Learning Introduction

Visualization by Linear Projections as Information Retrieval

Palmprint Recognition with PCA and ICA

Component Ordering in Independent Component Analysis Based on Data Power

Recognition of Facial Expression Using Eigenvector Based Distributed Features and Euclidean Distance Based Decision Making Technique

Neural Networks and Support Vector Machines

How To Cluster

ARTIFICIAL INTELLIGENCE (CSCU9YE) LECTURE 6: MACHINE LEARNING 2: UNSUPERVISED LEARNING (CLUSTERING)

Novelty Detection in image recognition using IRF Neural Networks properties

Visualization of Large Font Databases

Using Data Mining for Mobile Communication Clustering and Characterization

Access control: adaptation and real time implantation of a face recognition method.

Classification algorithm in Data mining: An Overview

FPGA Implementation of Human Behavior Analysis Using Facial Image

ILLUMINATION NORMALIZATION BASED ON SIMPLIFIED LOCAL BINARY PATTERNS FOR A FACE VERIFICATION SYSTEM. Qian Tao, Raymond Veldhuis

Going Big in Data Dimensionality:

Low-resolution Character Recognition by Video-based Super-resolution

Dimension Reduction. Wei-Ta Chu 2014/10/22. Multimedia Content Analysis, CSIE, CCU

Machine Learning CS Lecture 01. Razvan C. Bunescu School of Electrical Engineering and Computer Science

Assessment. Presenter: Yupu Zhang, Guoliang Jin, Tuo Wang Computer Vision 2008 Fall

Accurate and robust image superresolution by neural processing of local image representations

Face Recognition in Low-resolution Images by Using Local Zernike Moments

CS 2750 Machine Learning. Lecture 1. Machine Learning. CS 2750 Machine Learning.

Neurocomputing ] (]]]]) ]]] ]]] Contents lists available at ScienceDirect. Neurocomputing. journal homepage:

A Partially Supervised Metric Multidimensional Scaling Algorithm for Textual Data Visualization

ADVANCED MACHINE LEARNING. Introduction

International Journal of Advanced Information in Arts, Science & Management Vol.2, No.2, December 2014

Social Media Mining. Data Mining Essentials

Architecture for Mobile based Face Detection / Recognition

A Comparison of Photometric Normalisation Algorithms for Face Verification

Predict Influencers in the Social Network

NAVIGATING SCIENTIFIC LITERATURE A HOLISTIC PERSPECTIVE. Venu Govindaraju

Supporting Online Material for

DRIVER HEAD POSE AND VIEW ESTIMATION WITH SINGLE OMNIDIRECTIONAL VIDEO STREAM

Open-Set Face Recognition-based Visitor Interface System

Tracking and Recognition in Sports Videos

Data quality in Accounting Information Systems

EFFICIENT DATA PRE-PROCESSING FOR DATA MINING

Illumination, Expression and Occlusion Invariant Pose-Adaptive Face Recognition System for Real- Time Applications

Towards usable authentication on mobile phones: An evaluation of speaker and face recognition on off-the-shelf handsets

Similarity-Based Unsupervised Band Selection for Hyperspectral Image Analysis

Artificial Neural Networks and Support Vector Machines. CS 486/686: Introduction to Artificial Intelligence

Biometric Authentication using Online Signatures

A Learning Based Method for Super-Resolution of Low Resolution Images

Journal of Industrial Engineering Research. Adaptive sequence of Key Pose Detection for Human Action Recognition

Information Fusion in Low-Resolution Iris Videos using Principal Components Transform

Feature Selection vs. Extraction

INVESTIGATIONS INTO EFFECTIVENESS OF GAUSSIAN AND NEAREST MEAN CLASSIFIERS FOR SPAM DETECTION

The Role of Size Normalization on the Recognition Rate of Handwritten Numerals

A Nonparametric Statistical Comparison of Principal Component and Linear Discriminant Subspaces for Face Recognition

Online Learning in Biometrics: A Case Study in Face Classifier Update

OUTLIER ANALYSIS. Data Mining 1

An Introduction to Data Mining. Big Data World. Related Fields and Disciplines. What is Data Mining? 2/12/2015

Ensemble Data Mining Methods

Modelling, Extraction and Description of Intrinsic Cues of High Resolution Satellite Images: Independent Component Analysis based approaches

Ethnicity Identification from Face Images

Advances in Face Recognition Research Second End-User Group Meeting - Feb 21, 2008 Dr. Stefan Gehlen, L-1 Identity Solutions AG, Bochum, Germany

Facial Biometric Templates and Aging: Problems and Challenges for Artificial Intelligence

MSCA Introduction to Statistical Concepts

A Content based Spam Filtering Using Optical Back Propagation Technique

APPM4720/5720: Fast algorithms for big data. Gunnar Martinsson The University of Colorado at Boulder

A Survey on Outlier Detection Techniques for Credit Card Fraud Detection

Music Genre Classification

Supervised and unsupervised learning - 1

Comparing the Results of Support Vector Machines with Traditional Data Mining Algorithms

Transcription:

A comparative study on face recognition techniques and neural network 1. Abstract Meftah Ur Rahman Department of Computer Science George Mason University mrahma12@masonlive.gmu.edu In modern times, face recognition has become one of the key aspects of computer vision. There are at least two reasons for this trend; the first is the commercial and law enforcement applications, and the second is the availability of feasible technologies after years of research. Due to the very nature of the problem, computer scientists, neuroscientists and psychologists all share a keen interest in this field. In plain words, it is a computer application for automatically identifying a person from a still image or video frame. One of the ways to accomplish this is by comparing selected features from the image and a facial database. There are hundreds if not thousand factors associated with this. In this paper some of the most common techniques available including applications of neural network in facial recognition are studied and compared with respect to their performance. Keywords:Face Recognition, PCA, MPCA, Neural Network. 2. Introduction Human beings can distinguish a particular face from many depending on a number of factors. One of the main objective of computer vision is to create such a face recognition system that can emulate and eventually surpass this capability of humans. In recent years we can see that researches in face recognition techniques have gained significant momentum. Partly due to the fact that among the available biometric methods, this is the most unobtrusive. Though it is much easier to install face recognintion system in a large setting, the actual implementation is very challenging as it needs to account for all possible appearance variation caused by change in illumination, facial features, variations in pose, image resolution, sensor noise, viewing distance, occlusions, etc. Many face recognition algorithms have been developed and each has its own strengths [1, 2]. We do face recognition almost on a daily basis. Most of the time we look at a face and are able to recognize it instantaneously if we are already familiar with the face. This natural ability if possible imitated by machines can prove to be invaluable and may provide for very important in real life applications such as various access control, national and international security and defese etc. Presently available face detection methods mainly rely on two approaches. The first

one is local face recognition system which uses facial features of a face e.g. nose, mouth, eyes etc. to associate the face with a person. The second approach or global face recognition system use the whole face to identify a person. The above two approaches have been implemented one way or another by various algorithms. The recent development of artificial neural network and its possible applications in face recognition systems have attracted many reasearcher into this field. The intricacy of a face features originate from continuous changes in the facial features that take place over time. Regardless of these changes we are able to recognize a person very easily. Thus the idea of imitating this skill inherent in human beings by machines can be very rewarding. Though the idea of developing an intelligent and self-learning may require supply of sufficient information to the machine. Considering all the above mentioned points and their implications I would like to gain some experience with some of the most commonly available face recognition algorithms and also compare and contrast the use of neural network in this field. 3. Background Throughout the past few decades there have been many face detection techniques proposed and implemented. Some of the common methods described by the researchers of the respective fields are : PCA: In high-dimensional data, this method is designed to model linear variation. Its goal is to find a set of mutually orthogonal basis functions that capture the directions of maximum variance in the data and for which the coefficients are pairwise decorrelated [3]. For linearly embedded manifolds, PCA is guaranteed to discover the dimensionality of the manifold and produces a compact representation. PCA was used to describe face images in terms of a set of basis functions, or eigenfaces. Eigenfaces was introduced early [4] on as powerful use of principal components analysis (PCA) to solve problems in face recognition and detection. PCA is an unsupervised technique, so the method does not rely on class information. In our implementation of eigenfaces, we use the nearest neighbor (NN) approach to classify our test vectors using the Euclidean distance[2]. MPCA: One extension of PCA is that of applying PCA to tensors or multilinear arrays which results in a method known as multilinear principal components analysis (MPCA) [5]. Since a face image is most naturally a multilinear array, meaning that there are two dimensions describing the location of each pixel in a face image, the idea is to determine a mulitlinear projection for the image, instead of forming a one- imensional (1D) vector from the face image and finding a linear projection for the vector. It is thought that the multilinear projection will better capture the

correlation between neighborhood pixels that is otherwise lost in forming a 1D vector from the image [2]. LDA: Fisherfaces is the direct use of (Fisher) linear discriminant analysis (LDA) to face recog nition [6]. LDA searches for the projection axes on which the data points of different classes are far from each other while requiring data points of the same class to be close to each other. Unlike PCA which encodes information in an orthogonal linear space, LDA encodes discriminating information in a linearly separable space using bases that are not necessarily orthogonal. It is generally believed that algorithms based on LDA are superior to those based on PCA. However, other work such as [7] showed that, when the training data set is small, PCA can outperform LDA, and also that PCA is less sensitive to different training data sets. ICA: When applying PCA to a set of face images, we are finding a set of basis vectors using lower order statistics of the relationships between the pixels. Specifically, we maximize the variance between pixels to separate linear dependencies between pixels. ICA is a generalization of PCA in that it tries to identify high-order statistical relationships between pixels to form a better set of basis vectors. In [8], where the pixels are treated as random variables and the face images as outcomes. In a similar fashion to PCA and LDA, once the new basis vectors are found, the training and test data are projected into the subspace and a method such as NN is used for classification. The code for ICA was provided by the authors for use in face recognition research [8]. Neural Network: To model our way of recognizing faces is imitated somewhat by employing neural network. This is accomplished with the aim of developing detection systems that incorporates artificial intelligence for the sake of coming up with a system that is intelligent. The use of neural networks for face recognition has been shown by [9] and [10]. In [11], we can see the suggestion of a semi-supervised learning method that uses support vector machines for face recognition. There have been many efforts in which in addition to the common techniques neural networks were implemented. For example in [12] a system was proposed that uses a combination of eigenfaces and neural network. In [13], first The dimensionality of face image is reduced by the Principal component analysis (PCA) and later the recognition is done by the Backpropagation Neural Network (BPNN). The goal of this study is to gain experience in the above mentioned methods and also implement some of these so that some form of comparison can be done among these.

4. Overview For the commonly available algorithms it is important to gain some theoretical knowledge before their implementation and their pros and cons. Based on the continuous reading of related scientific papers, some of the implementation might not be pragmatic in time permitted. Because there are a lot of issues associated with this. For example, to get an understandable working simulation the tools needed may not be available freely i. e. the tools might be offered by some vendors. In that case their implementations already done by researchers will be needed to take into account. Even in that case I ll try to get a through understanding of how it can be implemented in future, what are the things that are assumed or variables fixed for the implementation etc. There are mainly two approaches face recognition algorithms. One way is general algorithmic (PCA, LDA, ICA etc.) and another one is AI centric (e.g. Supervised and unsupervised learning methods such as SVM, Neural Networks etc.). One way to gain a rough understanding of these two approaches would be to select any two algorithms of these and then run algorithms on some sample data. There are many databases freely available online for these purpose. After going through some of the available methods and tools it became apparent that some of these would be too time consuming to actually go through them in depth. MATLAB seemed to be a good choice in this respect. This is a fourth generation programming language and a numerical computing environment widely used by educational and research organization througout the whole world. Though is a proprietary software released by MathWorks, it has a fairly strong user groups all around the world. The algorithms generally proposed to use for face recognition are many times implemented by experienced researchers and users. Sometimes they share the actual implementation with other users. In order to reduce the implementation time, two of these were chosen to be implemented in this paper. As the implementation tool, the latest release of MATLAB R2011b is chosen. To implement the experiments, there are also two toolboxes that are necessary along with the main environment of matlab: image processing toolbox and neural network toolbox. The first toolbox is needed in order to implement the first part i.e. face recognition based on Eigenfaces and neural network toolbox is needed to test the neural network based implementation of face recognition technique. 5. Results The experiment was started by implementing the Eigenfaces method under matlab. As described earlier, the latest release was installed under windows 7, along with image processing and neural network toolbox. Face Recognition System is a demo code set provided by Luigi Rosa in Matlab central [14]. All parts of the code provided are written in Matlab language (M-files and M-functions) with no P-files (protected executables). The demo code is run on a small subset of AT&T s "The Database of Faces" (formerly "The ORL Data base of Faces") and provided in a directetory along with the source codes [15].

As described in [14], the algorithm that actually uses this eigenfaces method also employs Karhunen-Loeve algorithms in order to improve efficiency. The system functions by projecting face images onto a feature space that spans the significant vairations among known face images. The significant features are known as eigenfaces because they are the eigenvectors (principal components) of the set of faces. Through the UI, face images were collected into sets: every set or class includes a number of images for each person, with some variations in expression and in the lighting. When a new input image is read and added to the training database, the number of class is required. Otherwise, a new input image can be processed and confronted with all classes present in database. The number of eigenvectors chosen is equal to the number of classes. Befor starting the image processing, first we need to select input image. This image can be successively added to database or if a database is alreadey present, matched with known faces. Figure 1: Samples of five classes along with their mean As shown in figure 1, sample images of five different images were added to the database one by one. After that the eigenface algorithm keeps mean of all these classes and continuously updates it as the databse is updated i. e. a new image is added over time. Figure 2 An instance of Matlab command window

When an image is selected and the face recognition function is working, the algorithm tries to calculate the distance of that particular image from the face space and returns the nearest class number to which the image might belong [fig. 2]. The second part of the experiment starts with an implementation of Face Detection using Gabor feature extraction and neural networks provided by Omid Sakhi on [16]. Before the actual implementation of neural network the set of sample image files need to go through gabor feature extraction. This program only detects faces tha tcan fit inside a 27x18 window. Initially it was made sure that neural networks and image processing toolbox both were installed with matlab. First the network was trained and as soon as the network reached its predefined performance goal it stopped [fig.3]. Figure 3 Training of neural network Immediate after that, the backpropagation algorithm was implemented on various images. A set of sample images are provided in with the codes [fig.4].

Figure 4 Training of neural network Interpretation of Results: For a number of input images (8/12 and 14/15 respectively), the correctness of eigenfaces method is approximately 66.67% and for neural network its 93.33%. For larger databases the correctness of eigenfaces may reduce somewhat. Because as the distance from the mean face for each individual becomes more densely distributed it becomes difficult for eigenfaces algorithm to distinguish in between so the result becomes more erroneous. Whereas in the case of neural networks, with more training and more complex neuron structure, its performace does not degrade so rapidly. In some cases we may see performance getting close to perfectness. 6. Conclusion The experiment has been done in a short period of time. Only two algorithms were analyzed in this paper. So from the result we can generalize in a rough scale. As many other issues were ignored to simplify the research scope, this generalization may not be entirely relevant to a real life dataset. Further research is possible to gain insights into the performance measurement and comparisons of other issues and algorithms as described in the earlier portions of the paper. 7. References [1] W. Zhao, R. Chellappa, A. Rosenfeld, P.J. Phillips; Face Recognition: A Literature Survey, ACM Computing Surveys, pp. 399-458, 2003 [2] Harguess, J., Aggarwal, J.K.; A case for the average-half-face in 2D and 3D for face recognition, IEEE Computer Society Conference on Computer Vision and Pattern Recognition Workshops, pp. 7-12, 2009 [3] Xiaofei He; Shuicheng Yan; Yuxiao Hu; Niyogi, P.; Hong-Jiang Zhang;, IEEE Transactions on Pattern Analysis and Machine Intelligence, pp. 328 340, 2005 [4] M. Turk and A. Pentland. Eigenfaces for recognition, Journal of Cognitive Neuroscience, 3(1), pp. 71 86, 1991 [5] H. Lu, K. N. Plataniotis, and A. N. Venetsanopoulos. Mpca: Multilinear principal component analysis of tensor objects. IEEE Trans. on Neural Networks, 19(1):18 39, 2008.

[6] P. N. Belhumeur, J. P. Hespanha, and D. J. Kriegman. Eigenfaces vs. fisherfaces: Recognition using class specific linear projection, In ECCV 96: Proceedings of the 4th European Conference on Computer Vision-Volume I, pages 45 58, London, UK, Springer-Verlag. 1996. [7] Martinez, A.M. ; Kak, A.C. ; IEEE Transactions on Pattern Analysis and Machine Intelligence, Volume : 23, Issue:2, pp. 228 233, Feb 2001, [8] M. S. Bartlett, J. R. Movellan, and T. J. Sejnowski; Face recognition by independent component analysis., IEEE Transactions on Neural Networks, 13:1450 1464, 2002 [9] Fan X. ; Verma, B. ; A comparative experimental analysis of separate and combined facial features for GA-ANN based technique, Sixth International Conference on Computational Intelligence and Multimedia Applications, 2005. [10] Shaoning Pang; Daijin Kim; Sung Yang Bang; Face membership authentication using SVM classification tree generated by membership-based LLE data partition, IEEE Transactions on Neural Networks, Volume: 16, Issue: 2, pp. 436 446, 2005 [11] Ke Lu, Xiaofei He, Jidong Zhao; Semi-supervised Support Vector Learning for Face Recognition, Lecture Notes in Computer Science, pp. 104-109, 2006 [12] Jamil, N. ; Iqbal, S. ; Iqbal, N. ; Face recognition using neural networks, Technology for the 21st Century, pp. 277 281, IEEE INMIC, 2001 [13] P. Latha, Dr. L. Ganesan & Dr. S. Annadurai; Face Recognition using Neural Networks, Signal Processing: An International Journal (SPIJ) Volume (3) : Issue (5). 153, 2009 [14] http://www.mathworks.com/matlabcentral/fileexchange/4408 [15] AT&T Laboratories Cambridge. The ORL face database, Olivetti Research Laboratory available at http://www.uk.research.att.com/pub/data/att_faces.zip [16] http://www.mathworks.com/matlabcentral/fileexchange/11073-face-detection-system Appendices i. MATLAB R2011b Documentation: http://www.mathworks.com/help/techdoc/index.html ii. Image processing toolbar user guide: http://www.mathworks.com/help/toolbox/images/ iii. Neural Networks toolbox user guide: www.mathworks.com/help/pdf_doc/nnet/nnet_ug.pdf