Biomedical Research

Journal Banner

A comprehensive age estimation on face images using hybrid filter based feature extraction

Karthikeyan D1* and Balakrishnan G2

1Department of ECE, Srinivasan Engineering College, Perambalur, India

2Department of Computer Science and Engineering, Indra Ganesan College of Engineering, Trichy, India

*Corresponding Author:
Karthikeyan D
Department of ECE
Srinivasan Engineering College, India

Accepted on June 19, 2017

Visit for more related articles at Biomedical Research


Biometric based security applications are drastically growing and it is more essential in various emerging fields such as military, surveillance systems, crime, VISA processing systems etc. One of the human-computer-interaction fields is designing an intelligent application for estimating the age automatically using face images. The main objective is to estimate the human age using facial features and to improve its accuracy. In order to improve the age estimation accuracy, the wrinkles and end point of the wrinkles on the face image are considered. To estimate the age, first the orientation features of face image are extracted using Gabor filter; second the local wrinkle features known as minutiae are extracted using m × m wrinkle patterns on the face image by a hybrid filter. The minutiae points provide accurate information on the frequencies of the facial features. The effectiveness of the proposed approach is experimented on the publicly available FG-NET and MORPH age databases and results are compared with the other existing methods. The obtained results proved that the proposed approach is better than the other approaches in terms of age estimation accuracy.


Age estimation, Feature extraction, Facial features, Hybrid filter, Gabor filter.


KPCA: Kernal Principle Component Analysis; AGES: Ageing Pattern Subspace; AGESLDA: Ageing Pattern Subspace Linear Discriminant Analysis; AAM: Active Appearance Model; DCT: Discrete Coefficient Transformation; LBP: Local Binary Pattern; SVR: Support Vector Regression; SVM: Support Vector Machine; MAE: Mean Absolute Error; CS: Cumulative Score; FG-NET: Face and Gesture recognition research Network.


The face of the human is the window to the soul. It helps in conveying the information regarding individual traits. Among the various personal traits, the age of the human can be inferred by some distinct patterns which emerge from the facial appearance. At the early days people have the ability to determine the age between the people of age group 20 and 60 y and they are able to conceive the age from the face even with a high accuracy. This can also be done in machines. Recent studies have proved by defining the technique of age estimation which labels a face image. This is done by a machine by calculating the exact age or a year range of an individual face. This technique was derived from the advancements such as computer vision and recognition of patterns. The estimation of age via faces is an interesting topic to deal with because of its rapid emergent flow in real world applications.

Related Works

In this paper, it is focused on age estimation, where the objective is to estimate the correct age or age range of a face. Existing researches for age estimation is classified into two main parts as: growth of the child and age of the adult. Many of the very old research studies utilized the coordinates of the facial feature points [1-52]. Ramanathan et al. [1] took the coordinates transformations and deformation of the facial features through landmark point. Some of the researches used face verification using progression [2], component based age estimation KPCA for estimating the age. One of the main models is Anthropometric model [3,4] based age estimation, uses the development theory of the facial skin wrinkle analysis. Aging pattern is defined [5] for a sequence of age based facial images stored in ascending order in terms of age. Some of the algorithms utilized in earlier researches are estimating the age using aging patterns according to the positioning of the images. AGES, AGESLDA [6,7], age and gender classification using the ethnicity feature estimation [8], AAM [9], DCT transformation [10], multiple linear regression analysis [11] are the algorithms which estimates the ages accurately. Regression model using discriminative subspace based age estimation [12-14] where the age is represented by a set of parameters. The contour of the skull is approximated to estimate the age [15,16] in facial image. The ratio of the child face and adult face is computed for estimating the age [17]. Neural network based age estimation [18] is also applied in the earlier studies. Child, young adults and senior adults based ages [19] are classified and matched for age estimation. A hierarchical classifier (combination of Gabor Filter, LBP, SVR, and SVM) [20] is used to estimate the face.

From the above mentioned literature survey, it is understood and clear that it is necessary to develop a hybrid approach to estimate the age. An age estimator helps in labelling the test faces based on the extracted features of the face images. The age group of same range faces are similar in shape, texture and in appearance. Most of the existing age estimators tries to concentrate on facial textures and shapes which are not static while aging process. In this paper a sequence of image processing steps is concerned to estimate the age accurately than the existing approaches.

Proposed Approach

A sequence of four image processing steps is carried out in the proposed approach. In the first step of our approach the images are pre-processed and enhanced for improving the quality of the images in terms of texture, histogram, contrast and brightness to extract the features accurately. Initially, the face image is applied into a Gaussian filter to de-noise the image where it makes the face image as noise free image, ready for image processing. Second, the orientation and the scaling features are extracted using Gabor filter. The filtered features are reduced in terms of dimension by computing the μ and SD of the feature for easy classification. Third, the wrinkle based minutiae points are extracted using a hybrid filter to compute the facial texture structure. Finally the extracted features are classified separately using multi-SVM classifier and the age of the human is estimated according to a prefixed threshold value and based on the extracted feature values. The complete functionality of the proposed approach is shown in Figure 1.


Figure 1: Proposed model.

Slack of the facial musculi creates the wrinkles in forehead, eye-corner end of the mouth and chin of the facial images. In general Sobel filter is applied to extract the wrinkle features. The average and deflection of the strength of the edges in facial regions is determined as wrinkle features. In this paper, the appropriate age features are selected using hybrid filters. Comparing with the existing age estimation techniques, our approach encounters some unique challenges.

1. The texture and shape variations are high for long periods like 20 y to 50 y, it is hard to describe these variations.

2. Some of the non-facial features considered for age estimation is hair color, boldness, forehead and hair-style.

3. Collecting same person’s face image with different ages is difficult and not available publicly.

There are no quantitative measurements for evaluating age results.

All the above characteristics need a state-of-the-art age estimation method to account rich face details associated to age perception, intrinsic uncertainty in aging process and a criteria for evaluating the aging simulation results. From the above discussion it is clear that the relevant feature values used to estimate the age cannot be obtained using single filter or methods. Thus, a hybrid filter in our proposed approach is used to extract most relevant features for age estimation.

Gabor filter

The Gabor filter is used to extract the features to determine the age from the face images. The Gabor filter feature extraction method converts original image into its various zones at first, second and third level. Finally, the Gabor features are extracted from each sub image of various sub-zones. The mathematical model programmed to extract the Gabor features in 2D images is follows:


x' = xcosθ + ysinθ

−y' = − xsinθ + ycosθ

According to the Equation 1, the Gabor filter

Where f → denotes the central frequency of the filter.

θ → Denotes the rotation angle.

γ → Denotes the sharpness of the major axis.

η →Denotes the sharpness of the minor axis

η/γ → Denotes the aspect ratio of the Gaussian filter

The frequency domain to be analysed is:


From Equation 2 function f uses a single real-valued Gaussian center value. To obtain Equations 1 and 2, the Gabor filter can be simplified as general 2D form of the Gabor’s real single dimensional elementary function.

It can make the simplified scaled and rotated frequency f and the rotation angle θ of the Gabor wavelets. Also the Gabor filter can extract, multi-resolution Gabor features constructed by Equations 1 and 2.

Multi-resolution based frequency fm and rotation angle θm and their relations can be written as:


Where, fm represents the mth frequency, f0=fmax is the maximum frequency needed and k>1 is the scaling factor for frequency.

The orientation filtered can be written as:

θn= n2π/N, n={0,….., N-1} → (4)

Where θn denoted nth orientation, N denotes the total number of orientations. The scaling of the filter is selected from the octave spacing with orientations taken from the linear spacing. The author in [21] discussed and utilized a set of features extracted from FF model from the visual objects. FF model comprises two alternate layer, they are Simple (S) and Complex (C) cells which creates more complexity from the visual cortex to inferior temporal cortex. The simple layer is obtained from the convolution of the input image including Gabor filter within 16 scales. The complex layer is obtained by fetching the maximum values of the spatial neighborhood and across the scales within a band. The benefits of using the maximum operation in the small range position are used to correct the modifications in the small variations. After extracting all the features, a threshold value t1 is assigned to compare the features and it can be written as:


The agei represents the various estimated age of the facial image, and it can be estimated according the threshold value ti. Similarly, the hybrid filter can be applied for age estimation from facial images (Figure 2). The wrinkle feature provides extreme information for estimating the age in this paper given a great dealt of consideration by the researchers [22-25]. In this paper a new method is used to extract the wrinkle features from the biological characteristics of the wrinkles on the face images. Several studies focused on wrinkle features for cosmetic surgery and biological researches [26-28]. The repeated muscular movement and the expression create the facial wrinkles. The directions of the wrinkles on the forehead and the nose side are horizontal and diagonal respectively. The direction, frequency of use and effect of gravity are the special features can be used to extract the wrinkle features.


Figure 2: Iteratively extracting the features in facial image.

Hybrid filter

MATLAB software is used for implementing our proposed approach. A sequence of image processing steps is applied before feature extraction in order to improve the accuracy. The input image is converted into a binary image using morphological filters. It gives more flexibility to do more image processing on the binary images such as structuring the element, dilating and extracting a portion of the image. Converting the binary image from gray level to binary level makes the pixel values as 0 or 1. All the wrinkle points termed as minutiae can be extracted from binary images where the black level pixels represent the edges (wrinkle-lines) and the white pixels representing the valleys. It improves the contrast between the wrinkle lines and valleys in facial image. The number of wrinkle lines and the minutiae points helps to estimate the age of the person. The pixels can be classified by pixels 0 and 1.

The mathematical formula for applying erosion of A by element B is denoted by:


Dilation of the image constitutes a formula which replaces the certain features when it gets corrupted by using the above formula. This process of dialation can be used to extract the features neglecting the corruption and it is written as follows:


When the process of extraction of the features from the image is over, the opened image components get closed due to close operation.

This can be given as,

A ∙ B={A B} B → (8)

The miniature feature for age estimation is extracted from the binary image. At present, the pixel data are represented in the form of 0’s and 1’s. By using Gabor filter, the process of extraction of wrinkle lines is done.

All the wrinkle lines, the sum of the nearest pixels should be 0. If the wrinkle line is terminated, then the sum of the nearest neighbor points is 7 or 5. Now scanning the full image using a 3 × 3 window to find out the center point is black or 0. From this a new image is generated where each wrinkle lines are starting and terminating by a dot of a white pixel. The following Figure 3 illustrates the whole process.

The above pattern can be extracted from:


Each dot in the image Figure 3 represents the minutiae. The age is estimated by setting a threshold value t1 for feature comparison whereas the comparison can be obtained by:


Figure 3: (a) 3 × 3 window for searching minutiae (b) rigid line with Pc=6 (c) bifurcation with Pc=5 (d) termination with Pc=7.


The agei represents the various estimated age of the facial image, and it can be estimated according the threshold value ti. Similarly, the hybrid filter can be applied for age estimation from facial images.

Multi-SVM classification

SVM classifier is a popular machine learning method; it can be applied for classification and regression analysis in domain such as image processing, content retrieval, clustering and classification, data mining and so on. The main objective of SVM classifier is creating a model with a set of training data named as classes. By comparing the whole data group with the training models, it groups the new samples. It is considered that there are n number of training samples are taken where


which is divided into two classes as:

ci={-1, 1}

ci (w ∙ xi-b) ≥ 1 → (12)

The comparison vector is called as support vectors and the overall functionality of the SVM classification can be shown in detail in Figure 4. Where, c denotes class in SVM, b denotes the distance.


Figure 4: Support vector machine based classification.

In this paper all the simulation results are fed into multi-SVM classifier for estimating the age from facial image features.

Multi-SVM classifier is another classifier which classifies the data in high dimensional space by mapping the data nonlinearly. The mapping function maps the kernels with the hyperplane. This feature searching and comparing process is repeated in the feature vector. The searching process is done in row wise, column wise and in orthogonal wise, etc. Original Multi-SVM proposed for more than 2-class problems by extending the SVM into multi-class problems by one-againstone or one-against-all strategies. The entire functionality of the proposed approach is given by the following algorithm.


In this scenario most of the features are taken to classify face images in terms of their ages. Main feature is taken from face surface and remaining features taken from texture. Multi-SVM classifier employed classifies the face images based on the wrinkle and minutiae points. The selected features input into multi-SVM classifier and it classifies the age according to the minutiae pattern. Multi-SVM classifier utilizes Euclidean distance for classifying the image.

Experimental Results and Discussion

To verify the performance of the proposed approach, the execution and computational time is also considered.

There are two dataset used in this paper for implementing and experimenting the algorithm. They are FG-NET [29] and MORPH [8] which are available publicly. Totally 1002 face images (sample images shown in Figure 5) are available in FGNET where 82 images are under the age range from 0 to 69 which has more variations in terms of pose, lighting and expression. Similarly, 1690 images are available in MORPH database, where 515 images are under the age range of 15 to 68 y of men and women. The results shown in this section illustrate the results in each stage of the proposed approach. The performance evaluation of the proposed approach is evaluated using two measurements namely Mean Absolute Error (MAE) and Cumulative Score (CS). MAE is measure of the average absolute error among the estimated age and the database defined age.


Figure 5: An individual’s aging face sequence in FG-NET database.


where equation is the estimated age of the input image k.

Input face image is read from the dataset and it is converted into binary image. Image processing results can meet the successful results only on the color space images other than RGB. The color space of the image reduces the dimensionality of the image from multi-dimensional into single dimension like vectors. In this paper Gaussian filter is applied to remove the noise and the image is enhanced by equalizing the gray histogram value on the image and these images are shown in Figures 6 and 7.


Figure 6: Input Image with preprocessing. (a) Input image; (b) Noise removed image; (c) Enhanced image.


Figure 7: Magnitude, real parts of the Gabor filter obtained from facial image. (a) The magnitude part of the Gabor filter obtained from facial image; (b) The real part of the Gabor filter obtained from facial image.

In order to classify the features, three methodologies are applied such as: group wise classification which classify multiple age into one group, single age classification estimate the appropriate age of the particular facial image and hierarchical age classification classify the ages from lowest age into highest age. These three methods basically utilize the magnitude and the real part of the feature vector obtained from the facial image using Gabor Filter. The combination of feature vector is grouped and fetch the relevant facial image which is the feature based face image and it is shown in Figure 8. The wrinkle features at different frequency and different locations can be obtained as:



Figure 8: Feature vector based facial image obtained from magnitude real part of the Gabor filter. (a) The magnitude part of the Gabor filter obtained from facial image; (b) The real part of the Gabor filter obtained from facial image.l

are the different classes classified by SVM. The binary image conversion helps to get less number of feature vector classes and it is less similar to LBP method. All the N training points equation where equation and yi {-1, 1}, i=1, 2,...., N are linearly separable vectors. The distance among these support vectors can be written as:

w∙x+b=0 → (15)



s is the decision surface, αis the coefficient weight, b is a constant

The (x1, y1) represents feature point (that is minutiae) in the binary image. Wherever two feature points are overlapped on the facial surface that point is taken as the real minutiae points are utilized for estimating the age and these point are shown in Figure 8. According to the binary image, a minutia point the estimated age is 16 is given in the Figure 9.


Figure 9: Wrinkles, minutiae extracted from the binary image. (a): Binary image; (b): Thinned image; (c): Minutiae points; (d): Estimated age.

Performance analysis

For evaluating the performance of the proposed approach the image processing (Figure 1) procedures are applied continuously in a number of images and the performance is evaluated according to the age estimation accuracy. To do this, a set of images under various age groups is taken from two different databases such as MORPH and FG-NET.

The overall age group is from 0 to 79 and it is grouped into 8 classes like age 0 to age 9, age 10 to age 19 and so on, up to age 70 to age 79. MORPH and FG-NET face databases are having all the classes of ages and they are experimented and the age is estimated. The performance can be calculated according to the value MAE and STD compared between the existing and proposed approaches. The calculated MAE and STD are shown in Figure 10 for MORPH database and Figure 11 for FG-NET database.


Figure 10: Calculation of MAE in MORPH database.


Figure 11: Calculation of MAE in FG-NET database.

For our experiment there are totally 1000 images are taken where 800 images belong to FG-NET database and the remaining 200 images belongs to MORPH database.

Our proposed approach estimates the age correctly, for 787 images in FG-NET database over 800 images and 194 images in MORPH database over 200 images. It is shown in Figure 12 which clearly illustrates that the proposed approach performs better than the existing approaches given in the literature review.


Figure 12: Age estimation accuracy by proposed approach.

Figure 13 shows the graphical representation of the performance of the proposed approach over 100 images obtained from FG-NET and MORPH databases. The file can be downloaded from here: [30].

In order to analyse the proposed approach efficiency in terms of age estimation the performance is compared using manual age estimation by seeing the face image and automatic estimation using our proposed approach. The hybrid filter proposed estimates age and gives better results obtained from experiments than the manual estimation is shown in Figure 13.


Figure 13: Comparison of manual estimation and automatic estimation.

The age estimation results are evaluated on two databases having all age variations. The multi-SVM classifier made some erroneous classification due to various age set of face images from two different databases. It is calculated by the MAE value and it is shown in Figure 10 for MORPH database and Figure 11 for FG-NET database. Figures 12 and 13 describes that the incorrect classification is very less by the proposed approach than the existing approach.


We have investigated the inspired features for estimating the age of a human from the above works. It is presented as a new proposed approach to estimate the age in terms of various features obtained from the facial images. All the proposals made here to the bio inspired models are very important in obtaining an age estimator which performs with high accuracy. This method utilizes the advantages of Gaussian filter; Gabor filter and Hybrid filter are the major evaluation on two benchmark databases such as MORPH and FG-NET with minutiae feature points. The experimental results describe the efficiency of the age estimation by computing the correct and incorrect estimation with the MAE results (Figure 14). Figures 15 and 16 predicts the level of error and also the age estimation’s cumulative score obtained in both MORPH and FG-NET databases and depicts that the proposed approach obtained best estimation score than the existing approaches. In this paper, it is concentrated on various features based age estimation on facial images such as local and global features. They are wrinkle, minutiae points with patterns from binary images. In future it will be extended into age estimation with gender and expression on the facial images.


Figure 14: Age estimation accuracy by proposed approach.


Figure 15: Performance evaluation in terms of CS in MORPH database.


Figure 16: Performance evaluation in terms of CS in FG-NET database.

Ethics Approval and Consent to Participate

Not applicable.

Consent for Publication

Not applicable.

Competing Interests

The authors declare that they have no competing interests.


We do not have any funding for this work.

Authors’ Contributions

The authors’ contributions for this work are as follows: Karthikeyan suggests the hybrid filter function idea and participates at the automatization program, carried out the development of age estimation algorithm based on the feature extraction and participated in the design of the study and performed the experimentation of this algorithm in the aging database FG-NET and MORPH. Karthikeyan constructed the main ideas of the research, carried out most of the experiments, and drafted the original manuscript. Balakrishnan took part in the examination of the study and participated in revising the manuscript and offered useful suggestions in conducting experiments and drafting the manuscript. All authors read and approved the final manuscript.


The FG-NET (Face and Gesture recognition Research Network) database has been used for several research projects on human aging. Consequently, all PhD scholars who use this database in their research work always express their thanks to the European Union for the database has been generated & developed in an attempt to assist researchers who investigate the effects of aging on facial appearance. Part A of the database will be made available to researchers upon request. Researchers wishing to obtain the database should complete the registration form. The author of this paper also completed the registration and obtained the database for the research on human age estimation. Researchers who receive Part A of the aging database will automatically become members of the FGNET project. Hence the authors are also becomes the members of the FG-NET project.