Face Betrays Your Age
Xin Wang, Yongfu Lou, Yanan Li

 

Task
 

Even though relatively very limited efforts have been made towards it, age estimation has a large variety of applications ranging from access control, human machine interaction, person identification and data mining and organization. 

Human face is the most essential reflection of age. During the process of aging, changes of face shape and texture will take place. People can easily tell one's age seeing his or her face. However, it is rather difficult for computers to do the same job.

In this project, we try to determine human ages using face images. Firstly, a binary classifier is used to divide all the subjects into youths and adults. In the second phase, two more specific classifiers will be established respectively for each group to make more precise estimation on the age range of the subjects. We also plan to evaluate the predictive capability of the learned model on unseen examples.

 

 

Dataset
 

The database we are going to use is FG-NET(Face and Gesture Recognition Research Network), which is built by the group of European Union project FG-NET. It contains 1002 images of 82 subjects whose ages varying from 0 to 69. Each image was manually annotated with 68 landmark points located on the face. And for each image the corresponding landmark file is available. The figures below show some sample images and the landmarks in a face image.

(a)

(b)

Figure 1. Samples from FG-NET and Landmarks

 
  Method  
 

1. Preprocessing:

Face angle adjustment (including adjustment in plane and within the 3D space).

Size normalization.

Grayscale equalization, which can enhance the robustness to light and skin color.

2. ASM and AAM have been widely applied to facial feature localization and matching. In this project, we will use these two methods for facial age estimation. ASM is used to extract shape feature vectors, while AAM is for extraction of texture feature vectors. By using PCA (Principal Component Analysis), main features from ASM and AAM are extracted.

3. We plan to use a classification method to divide photoes into age ranges. At last, SVC is chosen because of its generalization ability, and the capability to process small set of samples. The classification process will be divided into two phases. The first one tells whether the face belongs to a youth or an adult. The second phase, the system will use SVC with different parameters to determine the specific age range.

4. Since age estimation is not just a plain classification but a cost-sensitive one. We plan to add cost factor to SVC method.

5. If time permits, we will use Matlab to make an application GUI. Expected results: telling the age range of a person from a face picture. The age ranges are 0-10, 10-20, 20-30, ... ,60-70, subjected to the age ranges of the data.

 
  Timeline  
 

By milestone, all work should be done or almost done. They mainly include pre-processing data files, feature vector extraction, implementing all the classifiers and performance evaluation.

1/25-1/29 pre-processing data file
1/30-2/5 feature vector extraction
2/6-2/14 classifier implementation
2/15-milestone model performance evaluation
 
  Reference  
 

1. Xin Geng, Zhi-Hua Zhou, Kate Smith-Miles (2007). Automatic Age Estimation Based on Facial Aging Patterns. Pattern Analysis Machine Intelligence, 29(12), 2234-2240.

2. Unsang Park, Yiying Tong, Anil K.Jain (2010). Age-Ivariant Face Recognition. Pattern Analysis and Machine Intelligence, 32(5), 947-954.

3. Ramanathan, N., Chellappa, R., & Biswas, S. (2009). Age progression in human faces: A survey. Visual Languages and Computing.

4. Steiner, M. Facial Image-based Age Estimation.

5. Xing Gao. Research on Facial Image Age Estimation.

6. Hsu, C. W., Chang, C. C., & Lin, C. J. (2009). A practical guide to support vector classification, 2003. Paper available at http://www. csie. ntu. edu. tw/∼ cjlin/papers/guide/guide. pdf.