B. Tech Major Project - Best Project Template Batch Number-11 IV ECE 2 Title: Age Estimation From Facial Image
B. Tech Major Project - Best Project Template Batch Number-11 IV ECE 2 Title: Age Estimation From Facial Image
1. Abstract
2. Deliverables
Automatic age estimation in human facial images is important because people’s behavioral patterns, lifestyles and
preferences vary along with their age, and preferred modes of human computer interaction are different for people
of different age groups. An approach for automatic age estimation from facial images therefore has the potential for
a number of practical applications. Human beings develop the ability to accurately estimate age early in life, but
automatic age estimation is very sensitive to factors such as race, gender, facial attachments such as glasses, beards,
facial piercings, and other visually perceptive factors like attractiveness, thus making it one of the challenging
problems in computer vision. In this thesis we develop computer vision and machine learning based approaches for
extracting visual features from a human facial image and mapping those to an output label estimating the
approximate age (in years) or age group (range of years) of the individual.
We develop an automatic eye localization algorithm which finds the coordinates of both the eye centers. These co-
ordinates are used to register all the facial images into a common frame of reference. Such a localization algorithm
is very useful in real world applications where information about eye-center is usually not available. We then
extract feature descriptors that represent the facial image in a low dimensional space. In this thesis we have
experimented with three different kinds of age relevant feature descriptors in order to capture the shape and texture
information of facial images: Discrete Cosine Transform (DCT), Local Binary Pattern (LBP) and Gradient
Orientation Pyramids (GOP). We then propose two machine learning pipelines for age estimation. First, we
develop a hierarchical approach to estimate the age of the test image using two steps. In the first step we perform
soft classification by separating the training data into age groups and using a kNN/SVM classifier to compute the
probability of a new test image belonging to each of the age three groups. We then use Gaussian Process (GP)
regression for the final age estimation.
Gaussian process regression is a Bayesian approach that computes the posterior density for the age of a test image
given both the training and test data. GP produces confidence intervals for the age, thereby providing the user with
more information. Second, we develop expectation maximization (EM) framework to jointly address the issues of
categorizing the training data points into groups and learning the hyper parameters of the Gaussian Process
regression model corresponding to each group. Unlike the earlier approaches where we manually categorize the
training data into three groups based on age, this approach automatically groups the data. We test our methods on
the publicly available FGNET aging database, a very popular and challenging database for testing facial aging
based algorithms.
We evaluate our algorithms using the Leave One Person Out (LOPO) evaluation scheme. In LOPO we train the
regressor on images of all the persons in the database except one, and test it on the images of that one person which
have not been used in the training. We repeat this for all the people in our database and compute the error by
averaging across errors from the individual testing rounds. This metric is known as the Mean Absolute Error
(MAE) and has been used as the performance metric to evaluate performance of various features and our estimation
algorithm
Provide a detailed survey in the area of age estimation using facial images. Propose new techniques based on
the ideas already explored and to come up with our own solution to solve the age estimation problem that
leverages recent advances in machine learning.
Now a days we are facing of problem with age and gender estimation at a time for lot of applications. its not a
possible at a time. Taking long time for the detection.
It will not shows certain age based on each and every part on face.
So, we have need with CNN algorithm and haar cascade for better applications.
Most age estimation methods are classified based on the feature extraction and the feature classification techniques
they employ. A review of some prior studies on both of these stages is given in the subsections below.
Feature Extraction
The facial features used in previous works can be divided into three categories: global features, local features and
hybrid features.
Global Features: Global features contain the overall individual characteristics of a person such as identity, expression,
gender and ethnicity along with aging characteristics. They thus offer better information about individual
characteristics such as the appearance and the shape of a face than features like skin and wrinkles. Global features are
generally used to do detailed age estimation. Most approaches that use global features try to generate face aging
models and build aging functions to simulate or compensate for the aging process. The global feature extraction
methods that have been used in the literature along with their descriptions are listed in Table 1.
Local Features: Local features consist of features such as wrinkles, skin, hair, and geometric features like
distance ratios of various facial components. Local features encode age features and are often more specific to
an age-group rather than an individual. They are thus used to classify people into age groups. Local features are
also more robust to factors like illumination due to the sufficiency of local patches to overcome the
shortcomings of sensitivity to illumination variations and image occlusions [Narayanan09].
2. Deliverables:
Kwon and Lobo [Kwon94] classified images into three groups: babies, young adults and senior adults based
on wrinkles and distance ratios. They first extracted the distance ratios using facial anthropometry and used
these distances to distinguish babies from adults. They then used snakelets in pre-designated facial regions to
extract wrinkles which they then subsequently used to differentiate between young and senior adults. Horng
et al [Horng01] used geometric features and wrinkles to classify the facial images into four groups. They
used the Sobel Filter to compute the depth and degree of the wrinkle. Hayashi et al. [Hayashi01] used skin
and wrinkle features to address the age estimation problem. They extracted skin using a skin color and then
extracted the wrinkles using a Digital Template Hough Transform (DTHT). Takimoto et al, [Takimoto08]
used a combination of Sobel filters and Gabor jets to distinguish a deep wrinkle from a fine one. Jun-Da Xia
and Chung-Lin Huang [Txia09] proposed to use wrinkle and hair features for age classification. They also
used the Sobel filter to extract wrinkles, and combined them with the hair color features. The regions for
feature extraction were based on facial landmarks detected by an AAM. Hybrid Features: Hybrid features are
a combination of global and local features. They were proposed by Suo et al. [Suo08] who constructed a set
of sparse features consisting of AAM, wrinkle, skin, hair and face configuration features using a hierarchical
face model. For each facial component four kinds of features are extracted: photometric, geometric,
topological, and configuration features. The feature extraction described here is computationally very
elaborate 8 compared to other methods. Matthew Steiner [Steiner10] in his study on facial age estimation
used a combination of age relevant shape (AAM) and texture (DCT) features to learn a model of the human
aging process. Choi et al. [Choi11] proposed a hierarchical age estimation scheme using a hybrid of AAM,
wrinkle and skin features. They extract the wrinkle features using a set of region specific Gabor filters and
the skin feature is extracted using a Local Binary Pattern. 1.3.2 Feature Classification Age estimation
techniques can be classified into three categories from the point of view of feature classification: age-group
classification, single level age estimation and hierarchical age estimation. Age group classification is used to
classify the images into one of multiple agegroups. In the past, classification algorithms such as LDA
[Gao09], Support Vector Machine (SVM) [Lian05], distance measure [Gunay08], and neural networks
[Horng01] have been used. Single level age estimation and hierarchical age estimation are both used to
estimate the detailed age of the individual image. Regression techniques such as quadratic regression
[Lantis02], Support Vector Regression (SVR) [Guo08], the MLP algorithm - Multi-Layer Perceptron
[Lantis04, Suo08] and the RUN algorithm [Yan07] have been used for single stage age estimation.
Hierarchical age estimation was implemented by Lanitis et al. [Lantis04] who showed that hierarchical age
estimation performs better than single level age estimation. This is so because, since facial aging is perceived
differently for different age-groups, and thus age estimation for a specific age group gives a more accurate
result. Guo et al. [Guo09] proposed a classification scheme based on small groups divided by gender and age
rather than on all ages. Luu et al. [Luu09] proposed hierarchical classification based on SVM for age group
classification 9 followed by SVR for specific age estimation. The best reported hierarchical classifier was a
combination of an age specific and an appearance specific classification [Choi11, Lanitis04]. 1.4 Overview
and Contributions of the Thesis In this section we first give an overview of our proposed method. We briefly
mention the algorithms that we have used along with a flow chart which describes the architecture of our
proposed age estimation system. The detailed descriptions of each of these algorithms and techniques are
given in the subsequent chapters. 1
1 .
2 . .
3 .
3 .
4.Work Plan:
4.1Project steps:
PROJECT PROJECT OBJECTIVE DESCRIPTION
STEPS
STEP 6 In the initial it was observed that 8T SRAM was more robust
compared to 6T SRAM.
1 PYCHARM Programming
5. Expertise:
2 G.SHARANYA
J.PRASHANTH
3
4 K.JANAKI
Applications:
Social media.
Social media platform.
Law application.
Detecting of suspect using face.
Marketing aplications.
For the internet.
7. Conclusions:
we developed algorithms for automatic age estimation from facial images. Following are the major
contributions and the summary of the thesis. We developed a simple eye localization algorithm that can
be useful for finding the eye coordinates in facial images. The eye localization algorithm can be used to
scale and rotate all the images. We have shown later on that eye coordinate location is an important step
in the preprocessing since the performance of the estimation methods depend on the accuracy of the
localization We proposed the use of both local and global features for the estimation by combining the
features after z-score normalization. For the local features, we used the DCT and the LBP. For global
features, we used GOP. The best performance was achieved when a combination of these features were
used together. We proposed a hierarchical age estimation approach in which we first obtain an estimate
of the age group of a new test image, and then estimate the accurate age by using only the training
images belonging to the estimated age group. Further, we showed that instead of hard classifying the test
image into one of the groups, the performance of the estimation can be improved by first computing the
probability that a test image belongs to one of groups, and then combining the estimates obtained using
images from individual groups according to these probabilities. In this work, we used Gaussian Process
regression algorithm. 67 We then proposed an Expectation Maximization framework to categorize the
data into groups based on both age and appearance, and to learn the hyper parameters of the Gaussian
Processes to be used on these groups. This approach, when used with the combination of local and
global features provided the best mean absolute error in age estimation.
8. Future Scope:
The work in this thesis can be extended in several ways. First, as we showed, the
performance of the age estimation algorithms is very sensitive to the preprocessing. Thus,
there is a need to build better eye localization system to implement the image
preprocessing. Second, the MAE obtained was significantly higher in the group with
images of older people. This is because the number of images for training the classifier and
the regressor for this group are low. Therefore, there is a need to collect training data of
such images. Third, the performance of the age estimation for older people can potentially
improve by considering a different set of features such as Gabor wavelet coefficients that
can represent texture information for wrinkles.
10. Bibliography
Ahonen06 Ahonen, Timo, Abdenour Hadid, and Matti Pietikainen. "Face description with local binary patterns:
Application to face recognition." Pattern Analysis and Machine Intelligence, IEEE Transactions on 28.12 (2006):
2037-2041.
Choi11 Choi, Sung Eun, et al. "Age estimation using a hierarchical classifier based on global and local facial
features." Pattern Recognition 44.6 (2011): 1262-1281.
Cortes95 Cortes, Corinna, and Vladimir Vapnik. "Support-vector networks." Machine learning 20.3 (1995): 273-297.
Dalal05 Dalal, Navneet, and Bill Triggs. "Histograms of oriented gradients for human detection." Computer Vision
and Pattern Recognition, 2005. CVPR 2005. IEEE Computer Society Conference on. Vol. 1. IEEE, 2005.
Darcy92 Darcy Thompson. On Growth and Form. Dover Publications, 1992. Fu08 Fu, Yun, and Thomas S. Huang.
"Human age estimation with regression on discriminative aging manifold." Multimedia, IEEE Transactions on 10.4
(2008): 578- 584.
Gao09 Gao, Feng, and Haizhou Ai. "Face age classification on consumer images with gabor feature and fuzzy lda
method." Advances in biometrics. Springer Berlin Heidelberg, 2009. 132-141. Geng06 Geng, Xin, et al. "Learning
from facial aging patterns for automatic age estimation." Proceedings of the 14th annual ACM international
conference on Multimedia. ACM, 2006.
Geng07 Geng, Xin, Zhi-Hua Zhou, and Kate Smith-Miles. "Automatic age estimation based on facial aging patterns."
Pattern Analysis and Machine Intelligence, IEEE Transactions on 29.12 (2007): 2234-2240.
Gunay08 Gunay, Asuman, and Vasif V. Nabiyev. "Automatic age classification with LBP." Computer and
Information Sciences, 2008. ISCIS'08. 23rd International Symposium on. IEEE, 2008.
Guo08 Guo, Guodong, et al. "Image-based human age estimation by manifold learning and locally adjusted robust
regression." Image Processing, IEEE Transactions on 17.7 (2008): 1178-1188.
Guo08 Guo, Guodong, et al. "Image-based human age estimation by manifold learning and locally adjusted robust
regression." Image Processing, IEEE Transactions on 17.7 (2008): 1178-1188. Guo09 Guo, Guodong, et al. "A study
on automatic age estimation using a large database." Computer Vision, 2009 IEEE 12th International Conference on.
IEEE, 2009.
Han13 Han et al, “Age Estimation from Face Images: Human vs. Machine Performance,” In Proc. 6th IAPR
International Conference on Biometrics (ICB), Madrid, Spain, June 4-7, 2013 (Oral). Hayashi01 Hayashi, J., et al.
"Method for estimating and modeling age and gender using facial image processing." Virtual Systems and
Multimedia, 2001. Proceedings. Seventh International Conference on. IEEE, 2001.
Horng01 Horng, Wen-Bing, Cheng-Ping Lee, and Chun-Wen Chen. "Classification of age groups based on facial
features." Tamkang Journal of Science and Engineering, 4.3 (2001): 183-192.
Hsu03 C.-W. Hsu, C.-C. Chang, and C.-J. Lin. A practical guide to support vector classification, Technical report,
National Taiwan University, 2003 Kwon94 Kwon, Young Ho, and Niels da Vitoria Lobo. "Age classification from
facial images." Computer Vision and Pattern Recognition, 1994. Proceedings CVPR'94., 1994 IEEE Computer
Society Conference on. IEEE, 1994:762-767
Lantis04 Lanitis, Andreas, Chrisina Draganova, and Chris Christodoulou. "Comparing different classifiers for
automatic age estimation." Systems, Man, and Cybernetics, Part B: Cybernetics, IEEE Transactions on 34.1 (2004):
621-628. Lantis04 Lanitis, Andreas, Chrisina Draganova, and Chris Christodoulou. "Comparing different classifiers
for automatic age estimation." Systems, Man, and Cybernetics, Part B: Cybernetics, IEEE Transactions on 34.1
(2004): 621-628
. Li11 Li, Zhifeng, Unsang Park, and Anil K. Jain. "A discriminative model for age invariant face recognition."
Information Forensics and Security, IEEE Transactions on 6.3 (2011): 1028-1037. Lian05 Lian, Hui-Cheng, and Bao-
Liang Lu. "Age estimation using a min-max modular support vector machine." Twelfth International Conference on
Neural Information Processing. 2005. Ling10 Ling, Haibin, et al. "Face verification across age progression using
discriminative methods." Information Forensics and Security, IEEE Transactions on 5.1 (2010): 82- 91.
Luu09 Luu, Khoa, et al. "Age estimation using active appearance models and support vector machine regression."
Biometrics: Theory, Applications, and Systems, 2009. BTAS'09. 70 IEEE 3rd International Conference on. IEEE,
2009.