You are on page 1of 7

VOL. 1, NO.

2, Oct 2010 E-ISSN 2218-6301


Journal of Emerging Trends in Computing and Information Sciences

©2009-2010 CIS Journal. All rights reserved.


http://www.cisjournal.org

Age Estimation based on Neural Networks using Face Features


Nabil Hewahi, Aya Olwan, Nebal Tubeel, Salha EL-Asar, Zeinab Abu-Sultan

Corresponding Author: Faculty of Information Technology


Islamic University of Gaza - Palestine
Email: nhewahi@iugaza.edu.ps

ABSTRACT
In this paper we propose a methodology based on Neural networks to estimate human ages using face features. Due to the
difficulty of estimating the exact age, we developed our system to estimate the age to be within certain ranges. In the first
stage, the age is classified into four categories which distinguish the person oldness in terms of age. The four categories are
child, young, youth and old. In the second stage of the process we classify each age category into two more specific ranges.
The uniqueness about our research project is that most of the previous research work do not consider the fine tuning of age
as we are presenting in our research. Our proposed approach has been developed, tested and trained using the EasyNN tool.
Two public data sets were used to test the system, these are FG-NET and MORPH. To evaluate our system’s performance,
we carried out a comparative study between our proposed system, human being and other research trails. The obtained
results were significant.
Keywords: Age estimation, Neural networks, face feature extraction.
age of a person from a digital photography is an intriguing
1. INTRODUCTION problem, It involves understanding of the human aging
Recognition of the most facial variations, such as process. People cannot freely control aging variation, the
identity, expression and gender, have been extensively collection of sufficient data for age estimation is extremely
studied. Automatic age estimation has rarely been laborious. Estimating of exact age is one of the most
explored. In contrast to other face variations, aging difficult problems even for human being. Therefore, most
variations presents several unique characteristics which of the researcher who are working on age estimation are
make age estimation a challenging task. Since human trying to get the results in certain age ranges. The
faces provide a lot of information, many topics have experimented age ranges are still considered to be wide
drawn attention and thus have been studied intensively. and in some cases exceed 10 years while in other cases
The most prominent thing of these is face recognition. reach 15 or 20 years. One of the main problems to reduce
Other research topics include predicting feature faces, the size of the age ranges is how correct and
classifying gender, and expressions from facial images, comprehensive the extracted features from the face are.
and so on. However, very few studies have been done on Some researchers use 20, 22, 35,or 68 features, and the
age classification or age estimation. In this research, we accuracy of the results vary depending on the extracted
try to prove that computer can estimate/classify human features and the used approach for age estimation. There
age according to features extracted from human facial are some open databases used for testing age estimation
image using Artificial Neural Network(ANN or NN). systems such as FG-NET [5][6[7] and Morph [8].These
Facial features were used in many researches datasets contain photos and ages of the people and there
such as recognition, classifying gender, expressions and so are usually ages from 1 year to 70 years.
on. But few of them have been done on age classification
especially on age estimation. Many attempts towards age
estimation are tried and most of them give results for wide 2. RELATED WORK
ranges of ages, or classify the ages in categories such as Human age estimation by face images is an
child, young, youth and old[1][2][3][4]. The problem of interesting yet challenging research topic emerged in
having an appropriate approach for age estimation for recent years. There are some earlier works which aimed at
getting more specific categories of age ranges is still a simulating the aging effects on human faces, which is the
challenging problem. Thus, we focus our research on more inverse procedure of age estimation.
specific age ranges. Actually this problem is also a human Horng, et.al [4] proposed an approach for
problem where many people miss estimate the human classification of age groups based on facial features. The
ages. To achieve our research goal, we have to find a good process of the system was mainly composed of three
database that we can use to test and train our proposed phases: Location, feature extraction and age classification.
approach, also we have to construct a proper ANN to Two backpropagation neural networks were constructed.
model our problem. Developing such kind of systems The first one employs the geometric features to distinguish
might help in many security purposes or in cases of having whether a facial image is a baby or not. If it is not, then the
disabled people (dump and deaf people). Because our second network uses the wrinkles features to classify the
main goal is age estimation and not face recognition, we image into one of three adult groups. This approach is
care only about images of front image, with face free from somewhat efficient as it has 99.1% verification rate for the
classes or beard. first network and 78.49% for the second. Fukai, et.al [1]
proposed an age estimation system on the AIBO (AIBO is
1.1 AGE ESTIMATION autonomic entertainment robot produced by SONY).
Age estimation is the determination of a person's HOIP face image database and images captured using
age based on biometric features. The determination of the

61
VOL. 1, NO. 2, Oct 2010 E-ISSN 2218-6301
Journal of Emerging Trends in Computing and Information Sciences

©2009-2010 CIS Journal. All rights reserved.


http://www.cisjournal.org
AIBO were used, they used Genetic Algorithms (GA) as 3.2 AGE CLASSIFICATION PHASE
optimization approach to select important features, then As mentioned before, most of the researchers
they used Self Organizing Map (SOM) algorithm in categorize the ages into four classes, childhood, young,
training the neural network. Age estimation error of this youth and old. This classification is more or less as our
approach is 7.46% which is considered to be reasonable. classification in the main classification stage shown in
Geng, et.al [2] proposed a subspace approach named Figure 3. In our system we go further by classifying each
AGES (Aging pattern Subspace) for automatic age of the main categories (each class) into two classes which
estimation. The basic idea of AGES is to model the aging we call secondary classification stage. The classification in
pattern, which is defined as a sequence of a particular the secondary stage are not partitioned equally, instead the
individual’s face images sorted in time order, by age partitions are based on some changes in the facial
constructing a representative linear subspace. The proper features. For example the face features for people who are
aging pattern for a previously unseen face image is between 13 to 25 are very close. Also the face features of
determined by the projection in the subspace that can the ages from 36 to 45 are almost negligible. In some
reconstruct the face image with minimum reconstruction cases we make the range a little bit wide because in many
error, while the position of the face image in that aging cases it is really difficult to categorize the age in a smaller
pattern will then indicate its age. The Main Absolute Error range.
of this approach is 6.77% which is better than age
estimation system of the AIBO and the ages in AIBO 3.3 DATA COLLECTION PHASE
system are between 15-64, but in AGES they are between Getting direct photos and collecting the features
0-69. Geng, et.al [3] extended their previous work on from each photo are tiresome. To train and test our system,
facial age estimation (a linear method named AGES). In we used ready datasets organized in FG-NET and
order to match the nonlinear nature of the human aging MORPH. The FG-NET contains 68 features, where each is
progress, a new algorithm named KAGES is proposed a pair of points. The collection of features represent the
based on a nonlinear subspace trained on the aging mouth, nose, eye and the face surroundings. Because the
patterns, which are defined as sequences of individual face number of photos in FG-NET is not enough for our testing
images sorted in time order. In the experimental results, and training, we used also MORPH data set. The problem
the Main Absolute Error is 6.18% that is better than all the with the MORPH data set is that the features are not
compared algorithms but with minor difference with extracted. Therefore, we first extracted the features of the
AGES approach. Luu, et.al [8] introduced a novel age photos according to features in FG-NET and put both the
estimation technique that combines Active Appearance data sets in one file. The used points landmarks are shown
Models (AAMs) and Support Vector Machines (SVMs), to in Figure 4[10]. Table 1 illustrates each point ‘s location
dramatically improve the accuracy of age estimation over on the face. We have chosen 500 images from the FG-
the current state-of-the-art techniques. Characteristics of NET. The image should be in front face ,clear and free
the facial input images are interpreted as feature vectors by from glass ,beard and moustaches. Only those images are
AAMs, which are used to discriminate between childhood chosen because we are concerned with age estimation and
and adulthood, prior to age estimation. Age ranges are not face recognition. We felt that 500 images are not
between 0-69.The Main Absolute Error is 4.37 % that is enough for training and testing, and they do not cover all
better than all previous works. It is worth mentioning that the ages, therefore, we were forced to use also another
in all the used approaches, the age range classifications are database, namely MORPH. MORPH data corpus
not as we are planning to consider in our classifications. comprises facial images of numerous individuals and
We aim at tunnnig the age ranges in more specific includes essential metadata, such as age, sex, ancestry,
domains as we will explain in the next sections. height, and weight. We have chosen 131 image from
MORPH [9]. To locate the face features on the images
3. THE PROPOSED APPROACH obtained from MORPH dataset, we used am_markup tool
The proposed system is mainly using a [11] which is considered to be the appropriate tool to
supervised neural networks with backpropagation locate the necessary points on the face images and extract
algorithm. the image is entered to the system, features are the features. We then combined the two files into one file
extracted, the image is classified in one of the four main to be used for training and testing. After collecting all the
age classes, then a more specific age range class is data in one dataset file (main set), we constitutes four
specified. This process is shown in Figure 1. other data sets out of the main set. Each constituted set is
The main process of our proposed system is used for training and testing one of the secondary stage of
shown in Figure 2. We firstly classify age into four main ages. The number of examples in each of the used data
age categories and each age category is classified into two sets is shown in Table 2.
age ranges. We obtained our data to train and test our
system from two databases, FG-NET [7] and MORPH [9].
The images in FG-NET are ready and their features are
already extracted. MORPH database have only images
with some other related information, but without extracted
features. For this purpose we ought to extract the features
from the images obtained from MORPH database using
am-markup tool. Finally we train the system with Easy-
NN tool based on the two datasets FG-NET and MORPH.

62
VOL. 1, NO. 2, Oct 2010 E-ISSN 2218-6301
Journal of Emerging Trends in Computing and Information Sciences

©2009-2010 CIS Journal. All rights reserved.


http://www.cisjournal.org

Image is entered

Feature Extraction

First stage classification using NN

Second stage classification using NN

Figure 3. Age classification based on the proposed model.


Figure 1. The stages of the proposed system.

Figure 2.The process of the proposed model Figure 4. Points as landmarks according to FG-NET[10]

Table 2. Each used dataset with its corresponding


Table 1. Facial landmarks
number of examples
Face regions Point Id Number of Data Base Number of examples
points
Face edges 0-14 15
Bottom lip 55-59 5 Main DB 631 examples
Top lip 49-53 5 261 examples
Lip Outline 48,54,60-66 9 First
Nose 37-45,67 10 Secondary DB
Left eye 27-30 4 Second 156 examples
Secondary DB
Right eye 32-35 4
Third 138 examples
Left eyebrow 21-26 6 Secondary DB
Right 15-20 6 Fourth 76 examples
eyebrow Secondary DB
Left iris 31 1
Right iris 36 1
Nostrils 46,47 2

63
VOL. 1, NO. 2, Oct 2010 E-ISSN 2218-6301
Journal of Emerging Trends in Computing and Information Sciences

©2009-2010 CIS Journal. All rights reserved.


http://www.cisjournal.org
A sample of the data features in the main data base are and each secondary stage contains two ranges. Many
shown in Table 3. experimentations have been done to get the best results.
This is performed by trying various NN parameters such as
Table 3. Sample of data features. the momentum that can be changed to any value from 0
to 0.9, Learning Rate that can be changed to any value
a1 a2 … a136... Gen- 1- 13- 26- 46- from 0.1 to 1.0 , and the number of hidden layer nodes.
der 12 25 45 63
74.933 200.858 216.782 M T F F F
61.096 251.5 302.419 F F T F F

3.4 NEURAL NETWORK STRUCTURE


To achieve our target, we constructed five NNs.
The first NN is the main neural network. The main NN is
concerned with the main age classification with four
outputs as explained before. The other four NNs are
concerned with secondary age classification. Each neural
network (the five networks) has 68 pairs of inputs
representing the face features in addition to the gender of
the person. It is also to be noted that we have two hidden
layers, one hidden layer is to correlate each pair in one
meaningful unit and the second is considered to be the real
hidden layer after organizing the input data in the first Figure 5. The structure of the main NN used for the main
hidden layer. The gender is connected directly to the four classifications.
second hidden layer. The number of outputs for each NN
related to secondary classification is two representing the
more specific age range in its domain. Table 4 depicts the
number of outputs and ages categories in each of the five
NNs.

Table 4. The number of outputs for each NN and age 9-12


classification
1-8
Neural Network Neural Networks Outputs
Main NN Four output
(1-12 , 13-25, 26-45 , 46-63)
1ST Secondary NN Two outputs( 1-8 , 9-12 )

2nd Secondary NN Two outputs(13-19,20-25) Figure 6. The structure of the 1st secondary NN.

3rd Secondary NN Two outpus( 26-35 , 36-45 )

4th Secondary NN Two outpust(46-53 ,54-63 )

Figure 5 shows the structure of the main NN, whereas


Figure 6 shows the structure of 1st secondary NN as
example for other secondary NNs.
To implement our system , we used Easy-NN as a
tool to build , develop, train and test our framework. Each
data set is partitioned into two parts, a part for training and
another for testing. In general about 2/3 of the data is used
for training where the rest is used for testing.

4. EXPERIMENTAL RESULTS
Ages in both databases are distributed in wide Figure 7. Learning progress for the main NN
ranges: 1-63 for FG-NET and 26-63 for MORPH. The face
features used in the experiments are Sixty-eight landmark
points of each face image as presented and shown before.
Many experiments have been tried to get
acceptable results in the main and secondary age
classification stages, the main stage contains four ranges

64
VOL. 1, NO. 2, Oct 2010 E-ISSN 2218-6301
Journal of Emerging Trends in Computing and Information Sciences

©2009-2010 CIS Journal. All rights reserved.


http://www.cisjournal.org
4.1 EXPERIMNTAL RESULTS FOR THE MAIN NN
IN THE MAIN STAGE Table 6. Details for the 1st NN in the secondary stage
In this experiment we have trained the main NN
with specific parameters. Age range in this stage is (1-63)
.The values of the used parameters and the corresponding Detailed information for the 1st NN
results are shown in Table 5. in the secondary stage
Table 5. Details for the main NN parameters and results
Learning Rate 0.3

Momentum 0.3
Detailed information for the main NN
Training Error 0.051573
Learning Rate 0.3

Momentum 0.3 Validating Error 0.063607

Training Error 0.033980 Target Error 0.01

Validating Error 0.054266 Training Example 171

Target Error 0.01 Validating Example 90


Training Example 421
Validating Result 92.86%
Validating Example 210
2nd Hidden Layer Node 28
Validating Result 85.24%
Cycle 5100
2nd Hidden Layer 36
Node Table 7. Details for the 2ed NN in the secondary stage.

Cycle (Epoch) 775


Detailed information For the 2ed NN
The learning progress graph for the main NN is in the secondary stage
shown in Figure 7. The figure shows the maximum,
average and the minimum training error. The average Learning Rate 0.2
validating error is shown if any validating examples rows
are included. From Figure 7, it is noticed that the Momentum 0.2
minimum validating error is in cycle 197. For sure, if the
results were taken in that stage, the main NN would have Training Error 0.09
been performed much better than what we obtained.
Moreover, it is also expected to get better validating error Validating Error 0.20
if we do more cycles (more than 775).
Target Error 0.01
4.2 EXPERIMENTAL RESULTS FOR THE 1ST NN
IN THE SECONDARY Training Example 101
In this experiment we have trained the first
secondary stage with specific parameters, age range in this Validating Example 55
stage is (1-12). Table 6 shows the used parameters and the
corresponding results. Validating Result 76.92%
ND
4.3 EXPERIMENTAL RESULTS FOR THE 2 NN
2nd Hidden Layer Nodes 28
IN THE SECONDARY STAGE
In this experiment we have trained The second NN in the
secondary stage with specific parameters, age in this stage Cycle 6874
is (13-25) . Table 7 shows details for the used parameters
and the corresponding results. In this experiment the result 4.4 EXPERIMENTAL RESULTS FOR THE 3RD NN
was not so good (about 77%) because the face features IN THE SECONDARY STAGE
were very similar in the age range, and it is difficult to In this experiment we have trained the third secondary
recognize the human age in this stage. stage with specific parameters, age in this range is (26-45).
Table 8. shows the used parameters and the corresponding
results.

65
VOL. 1, NO. 2, Oct 2010 E-ISSN 2218-6301
Journal of Emerging Trends in Computing and Information Sciences

©2009-2010 CIS Journal. All rights reserved.


http://www.cisjournal.org
5. COMPARATIVE STUDY
Table 8. Details for the 3rd NN in the secondary stage This section discusses comparative study between
our proposed system, human observation and previous
work.
Detailed information for the 3rd
NN in the secondary stage
5.1 HUMAN OBSERVATIONS
Learning Rate 0.3 Since one of our research targets is to test our
system and compare it with human being, we took
Momentum 0.3 opinions of fourteen people for 78 images selected from all
ranges randomly. It is interesting to see how much far or
Training Error 0.09 close our system to human being is. Based on human being
decisions, the correct rate for the first range (1-12), second
Validating Error 0.10 range (13-25), third range (26-45) and fourth range (46-63)
are 87.6%, 67%, 86.4% and 70.9% respectively. It is to be
Target Error 0.01 noted that the more specific age ranges (second stage
classification) within each of the first stage age
Training Example 92 classification is considered. The overall correct rate for the
human being is 77.9% which is lower than our rate (i.e,
82.3%). It is to be noted that people have the most
Validating Example 46
confusion in the second and fourth ranges whereas our
system is confused mostly in the second age range. It is
Validating Result 89.13%
generally clear that our proposed system outperforms the
human being.
2nd Hidden Layer 29
Nodes 5.2 OTHER SYSTEMS
Because none of the previous research work is
Cycle 3000 focused on more tuned age ranges as we have done, the
comparative study becomes a little bit difficult. Comparing
4.5 EXPERIMENTAL RESULTS FOR THE 4TH NN our results with the work presented in [6 ] where the
IN THE SECONDARY STAGE authors first classify the input to baby or others and then
In this experiment we have trained the third try to classify others to three age categories. In the first
secondary stage with specific parameters, age in this range stage the accuracy is very high (up to 99%), and this is
is (46-63).Table 9 shows the used parameters and the simple to obtain because the classification is only to
corresponding results. recognize whether the given input is for a baby or others.
In the second stage, the new classifier tries to classify the
Table 9. Details for the 4th NN in the secondary stage others in one of three age ranges and in this case the
performance does not exceed 78.4%. Thus the overall
Detailed information for 4th NN in performance is about 88%, but the error rate for the others
secondary stage is very high and if more ages division are considered as we
have done, the error rate would be absolutely more.
Learning Rate 0.3 Moreover, the baby age range is just in the range of 1-2
years. This means the 88% does not really scale the overall
Momentum 0.3 system performance. If in our case results, we want to
consider the others results neglecting the babies, the
Training Error 0.1994 system performance would be 84% with more correct age
ranges which is higher than 78.4% in [6]. This
demonstrates that our proposed system can better
Validating Error 0.1848
recognize the others than what is proposed in [ 6].
Target Error 0.01
6. CONCLUSION
Training Example 54 We proposed an approach for age estimation
using facial features based on neural networks. We
Validating Example 22 classified the ages firstly into four categories, then each
age range category is also classified into two more specific
age ranges. This had not been done before elsewhere. We
Validating Result 86.36%
used five neural networks to achieve our task. The facial
features rely on 68 landmark points taken from face
2nd Hidden Layer Nodes 26
images. The development process includes age
classfication, data collection ,feature extraction by markup
Cycle 12456
tool and finally training and testing the system by EasyNN.
To train and test our system, we used two datasets, FG-

66
VOL. 1, NO. 2, Oct 2010 E-ISSN 2218-6301
Journal of Emerging Trends in Computing and Information Sciences

©2009-2010 CIS Journal. All rights reserved.


http://www.cisjournal.org
NET and MORPH. A comparative study has been
conducted between the performance of our proposed [4] Horng, W., Lee, C. and Chen, C. "Classification of Age
system and human being. The proposed system Groups Based on Facial Features", Journal of Science
outperforms the human being where the human being and Engineering, Vol. 4, No. 3, pp. 183-192, 2001.
performance is 78% whereas the proposed system
performance is 82.3%. Also the proposed system is [5] Cootes , F., C. J. Taylor, D. H. Copper, and J. Graham,
compared with the work proposed in [6] and again the "Active Shape Models – Their training and
proposed system outperforms the other system where the Application", Computer Vision Graphics And Image
performance of the system in [6] for others (age categories Understanding, Vol. 61, No 1, pp. 38–59, 1995.
except the baby age range) is 78.4% whereas in our
system, it is 84%. The main future directions are 1. Joining [6] Cootes ,F. , Gareth J. Edwards , Christopher J. Taylor,
the work of the two stages neural network classifiers. 2. "Active Appearance Models", Proceedings of the 5th
Capturing a real human face image and estimate its age European Conference on Computer Vision-Volume II,
using our proposed system 3. Optimizing the number of p.484-498, June 02-06, 1998.
face landmark points.
[7] http://www.fgnet.rsunit.com .
REFERENCES
[8] Luu, K., Ricanek Jr., K. and Y. Suen, C. "Age
[1] Fukai, H., Nishie, Y., Abiko , K., Mitsukura, Y., Estimation using Active Appearance Models and
Fukumi, M. and Tanaka, M. "An Age Estimation Support Vector Machine Regression", Proceedings Of
System on the AIBO", International Conference On The IEEE International Conference On Biometrics
Control, Automation And Systems, pp.2551-2554, :Theory Applications And System , pp.314-318 ,2009.
2008.
[9] Ricanek Jr., K and Tesafaye, T., “ MORPH: A
[2] Geng, X., Zhou, Z. and Smith-Miles, K. "Automatic Longitudinal Image Database of Normal Adult Age-
Age Estimation Based on Facial Aging Patterns", Progression", Proceedings of the 7th International
IEEE Transaction On Pattern Analysis And Machine Conference on Automatic Face and Gesture
Intelligence, Vol. 29, No. 12, pp.2234-2240, Recognition, p.341-345, April 10-12, 2006.
December 2007.
[10]http://personalpages.manchester.ac.uk/staff/timothy.
[3] Geng, X., Smith-Miles, K. and Zhou, Z. "Facial Age f.cootes/data/xm2vts/xm2vts_markup.html
Estimation by Nonlinear Aging Pattern Subspace",
Proceedings Of The 16th ACM International 9 [11]http://www.scholarpedia.org/article/Facial_Age_Estimation
Conference on Multimedia , pp. 721-724, 2008.

67

You might also like