Face Recognition Technology


Face recognition

Face Recognition Based on PCA

DCT-ANN Face Identification

Wavelet-ANN Face Recognition

Face Recognition Based on Polar Frequency Features

Face Recognition Based on FisherFaces

Face Recognition Based on Local Features

Face Recognition in Fourier Space

WebCam Face Identification

Face Recognition Based on Overlapping DCT

Face Recognition Based on Statistical Moments

Face Recognition Based on Nonlinear PCA

Face Recognition Based on Hierarchical Dimensionality Reduction

Fusion of Low-Computational Global and Local Features For Face Recognition

SVD-Based Face Recognition

Correlation Filters Face Verification

ICA Face Recognition

3D Face Recognition

Infrared Face Recognition

Octave Face Recognition

PHP Face Recognition

JAVA Face Recognition

LBP Face Recognition System

HMM Face Recognition System

NMF Face Recognition System

Face matching

Face Identification Based on CPD

GA MACE Face Verification

External resources

Advanced Source Code .Com

Neural Networks .It

Genetic Algorithms .It

Iris Recognition .It

Fast and Accurate Face Identification Using Overlapping DCT

Download now Matlab source code
Requirements: Matlab, Matlab Image Processing Toolbox, Matlab Neural Network Toolbox, Matlab Wavelet Toolbox.

In the JPEG image compression algorithm, the input image is divided into 8-by-8 or 16-by-16 blocks, and the two-dimensional DCT is computed for each block. The DCT coefficients are then quantized, coded, and transmitted. The JPEG receiver (or JPEG file reader) decodes the quantized DCT coefficients, computes the inverse two-dimensional DCT of each block, and then puts the blocks back together into a single image. For typical images, many of the DCT coefficients have values close to zero; these coefficients can be discarded without seriously affecting the quality of the reconstructed image. Such algorithm results particularly robust also for face identification. Moreover the 2D DCT operator can be applied to overlapping data.

The extracted feature vectors are used as input to a simple nearest neighbor algorithm. The k-nearest neighbor algorithm is amongst the simplest of all machine learning algorithms. An object is classified by a majority vote of its neighbors, with the object being assigned to the class most common amongst its k nearest neighbors. k is a positive integer, typically small. If k = 1, then the object is simply assigned to the class of its nearest neighbor. In binary (two class) classification problems, it is helpful to choose k to be an odd number as this avoids difficulties with tied votes. The same method can be used for regression, by simply assigning the property value for the object to be the average of the values of its k nearest neighbors. It can be useful to weight the contributions of the neighbors, so that the nearer neighbors contribute more to the average than the more distant ones. The neighbors are taken from a set of objects for which the correct classification (or, in the case of regression, the value of the property) is known. This can be thought of as the training set for the algorithm, though no explicit training step is required. In order to identify neighbors, the objects are represented by position vectors in a multidimensional feature space. It is usual to use the Euclidean distance, though other distance measures, such as the Manhattan distance could in principle be used instead. The k-nearest neighbor algorithm is sensitive to the local structure of the data.

The code has been tested with AT&T database achieving an excellent recognition rate of 99.20% (40 classes, 5 training images and 5 test images for each class, hence there are 200 training images and 200 test images in total randomly selected and no overlap exists between the training and test images).

Index Terms: Matlab, source, code, face recognition, face matching, face verification, dct, k-nearest neighbor algorithm, knn, discrete cosine transform.

Release 1.0 Date 2007.10.20
Major features:

Face Recognition . It Luigi Rosa mobile +39 3207214179 luigi.rosa@tiscali.it