Abstract
This paper reveals various constraints in digital way of estimating the age of human facial image. The age estimation involves analyzing the facial features and classifying the age in accordance to the extracted feature values. The biometric features such as the facial parts (eye, mouth, chin, forehead, hair), texture, color and shape provide essential aging details. In the proposed method, the fractal features are extracted using fractal directional code method to retain the significant details present in the input image. The fractal features along with the local features are used to train the system. The deep neural network with three layers is used to train the system. The scaled conjugate gradient back propagation trains the system and the age is classified into seven age groups (0–10, 11–19, 20–29, 30–39, 40–49, 50–59 and 60–69). Higher accuracy is achieved by concocting the biometric features and the fractal features.
Keywords
Introduction
Human age estimation has forged attention in various disciplines such as human computer interaction system, soft computing applications, biometric systems, passport renewal systems, age authenticated systems,1–7 and many more. The exact detection of age from a human facial image is indeed tedious to normal human vision. The human vision discerns the age of the person by considering the facial wrinkles, hair color, texture of skin, body features and relating the face with similar persons of the same age group. When considering digital way of estimating the age, the aspects to be considered are texture details, visibility of fine lines over the forehead, texture details over eye corners and lip corners, shape of the facial features and then the relativity of these features with the values of the images in database. But these values are not standard and do not have a specific threshold due to the quality, illumination, and pose differences in the images. Owing to the huge variations, even human can provide categorization in a broad range. When it comes to digital recognition, the task becomes even more tedious. The extraction of features from the facial image needs auxiliary method to obtain appropriate values. Many successful estimation systems have evaluated the age in a narrow group. But in fact the results are not as amazing as there is no exact value or feature point to provide an accurate age. There are many foibles in processing an image due to the sequel of illumination, pose, makeup effect, gender variations and background effect. In addition, the availability of data is very huge necessitating an efficient and faster algorithm. Hence to cope up with the speed and beneficial extraction of feature values, this paper provides an algorithm which extracts the precise biometric values and the fractal values using fractal directional code method.
Educational benefits
Digital image processing is a predominant course for undergraduates and postgraduate students of the computer science and engineering, Electronics engineering and information technology fields. This subject contains various topics such as image acquisition, image sampling, image compression and feature extraction, filtering, normalization. This course is very interesting and students can learn various challenging as well inferring techniques. They have to utilize their time in order to implement the concepts. This research work will give benefits to the students of engineering graduates experiencing the deepest concept of image processing applications. It renders fine understanding of the different types of image processing techniques such as normalization, feature extraction, pattern matching, classification processing. This work is built in such a manner that it will provide knowledge of image sampling and fractal processing. These concepts are very important for digital image processing applications. In digital era, digital systems are used for processing and implementation in all aspects. This research will pave way to gain expertise in the image processing area and will motivate them in new innovations.
Previous work
There are various methodologies to estimate the age of a person from a given facial image. In active appearance model,8,9 the landmarks in the face is used. The active appearance model uses principal component analysis 9 (PCA) to recognize the age. The active shape model10,11 use the measures of the fiducial points. The fiducial points 12 are detected and the measures are analyzed to estimate the age. The texture analysis classifies the age very clearly. This classification is accurate when classified into child, young adult and adult. But in case of adults and young adult, the results are not trustworthy due to makeup effects. Moreover the female faces appear younger than male faces.
Considering the features used for classification, three different features are used. They are the local feature, global features and the hybrid features. The local features such as wrinkle, skin and hair are used to categorize the age. Here the classifications into three groups such as baby face young adult and adult. The Sobel edge operator 13 has produced good categorization into three groups’ baby, young adult and adult. The global features,14,15 such as the appearance features, wavelet transform and the values of intensity, have provided classification of age. The combination of both local features and global features, 16 has provided better results in estimating the age. Though many researches has provided varying results in estimating the age of a human face, there is a situation which entails betterment in exact prediction of age.
Proposed method
In the proposed method amelioration is done in predicting the age of a human face. In facial age estimation the extraction of facial features from the image provides the basic details from which further accuracy of estimation of age is enhanced. The pixel value obtained from the image renders the facet in a modus operandi that each and every pixel is vital. So the adjacent pixel values cannot be nullified. The fine details which are required of estimation process are obtained from the aggregation of the pixel value. In the facial image, each neighboring pixel possesses a distinct value. So in the analysis of facial image, fiducial values are collected from most the neighboring values and from the resultant details, the age group is classified. In this analysis of pixel values fractal geometry reinforces accuracy in estimation of the age.
There are six different aspects to be considered in assessing the texture of an image. The various aspects are the intensity of the image, the overall contrast of the image, the intensity of flatness in a particular region, the value of skewness, the uniformity and the measure of entropy. From all these measures the roughness of the image can be estimated. The roughness provides the details of fractal dimension. In a facial image, there exist various flaws which are the illumination, contrast, poses and expressions. It is very hectic to extract the facial features from the image. Therefore an algorithm which overcomes the image chronic variations is required. In the proposed method, the fractal directional code method is implemented. In this method, the fractals are subject to normalization and then the directional codes are retrieved. The directional codes are binary codes which provide the intensity transition in each pixel. The image after divided into segments, fractal are retrieved from it. From the fractal values, the directional code values are extracted. The directional code value provides the fine details in each pixel. So the texture details are obtained in an exact manner. When the texture details are obtained, the image analysis is performed in a finer way and the output obtained after classification is also of higher accuracy. By considering these fractals, the texture details can be obtained from the image. Even when the image is subject to fluctuations in contrast and illumination, the texture details can be obtained in an accurate manner. So the estimation of age from the facial image is obtained with higher accuracy.
Fractals in image processing
Fractal cannot be constructed as a normal shape. The fractal differ from normal shape that the extension or enlargement of a fractal cannot be restricted to a specific or defined size. The enlarged fractal remains the same with respect to ratio of the distances between the points but not to the exact distance between the points when considered with respect to a selected line. This scaling phenomenon of the fractal is used in terms of image processing. In image processing, a particular area of an image can be studied in detail by selecting the fractal dimensions. The compression of the image 17 is also analyzed with fractal method. The scaling of the fractals can be studied by use of the fractal dimension. The fractals cannot be differentiated and so the fractal evaluation can be performed with all types of images. The brightness, illumination, contrast of the image is not affected in evaluation or processing of the image. The usual flaws that occur with the pixel size of the image can be solved in an easier way with this fractal dimension of the image. The fractal codes depict the amendments in the image. When fractals are applied in facial image processing, the variations in alignment of the face, the orientation variation can be easily redressed. The fractal codes represent the features extracted from the particular fiducial points in the facial image. This aids in exact identification of the facial features irrespective of the quality of the image.
The fractal dimension of the image increases with the roughness of the image. Fractal dimension is applied in various areas of specialization such as classification of shapes, segmentation of texture, processing and scrutiny of image. In processing an image, there are various amendment parameters to be taken into consideration. The contrast factor, orientation of the image, radiance, key point, shape and color are the vital determinants. The fractals are formations which are indistinguishable in appearance. The fractals are availed in various gamut. The dimension of this gamut varies while the actual texture details are retained. The dimension of the fractal does not remain a perfect whole number.
Local binary pattern
In the proposed method, the local binary pattern codes are utilized. The local binary pattern codes are very efficient in recognizing the texture values. The texture detail is obtained by the rendition of thresholding operation on the image. In the image, the detail of a pixel value is obtained by comparing the pixel value with the neighboring pixels. After the comparison with the neighboring pixels, the output is a binary code from which the equivalent decimal value is obtained and is stored. The steps that are followed in obtaining the binary value are as follows:
The grid is split into various cells. The pixel in every cell is compared with eight of its neighboring cells and the value of the resultant is computed. When the neighbor value is greater than the pixel under consideration, a ‘1' is assigned and when the value is less than the center pixel value, a ‘0' is assigned. The resultant binary number is an eight digit binary number as eight directions are considered. The post histogram process is done over the cell and the 256 dimensional feature vector is obtained. After combining the histograms of the various cells, the feature vector of the grid is obtained.
Considering an image under two different illuminations are shown in Figure 1. The Local binary pattern is computed from a pixel position in the image 1 of Figure 1. The neighboring pixel values are computed and the output is obtained as shown in Figure 2. The binary value is computed as 11100010. The decimal equivalent value is obtained as 226. This is the code value that is stored. Interestingly the pixel value in the second image of Figure 1 is analyzed and the same binary code is obtained (11100010) as shown in Figure 3. It is therefore inferred that the change of illumination does not affect the texture details present in the image. Since each and every pixel provides enthralling effect in providing accuracy in the process of estimation, it is able to retain the details in a meticulous manner.

Image of a person under varying illuminations.

LBP value of first image in Figure 1 at a pixel point.

LBP value of second image in Figure 1 at the same pixel point.
Deep neural network
Deep neural network is a bough of machine learning which fine tunes the system to provide results as per the human vision. This result is obtained from occurrences which are stored in the database. The deep learning is vitally used in image processing applications such as automated processing systems, auto identification systems, automobile detection and control system, human computer interaction systems, facial recognition, facial processing and facial age estimation.
Neural network provide set of rules to identify the patterns in the dataset. The data are elucidated into machine perception by labeling the patterns. In real world data processing, the deep neural network is used in all kind of input data such as text, image, sound or time series. Thus it is able to cluster or classify the data. Neural network retrieves the feature values and are provided as input to the clustering or classification algorithms. A wide range of applications such as reinforcement learning, classification, regression make use of machine learning. Face detection, human recognition, object identification, voice detection, gesture identification, text classification are some of the applications of supervised learning. In the proposed method, supervised learning method is used. In supervised learning, the classification depends on labeled datasets and the inference from the analysis of the feature valued is transferred to the dataset to interrelate the labels and data. With the inference from analysis, the network is trained.
The layers of the network are nodes where the computation is done. The nodes combine the data values from one layer and are interconnected to the other layers. In deep neural networks as in Figure 4, several layers are used to obtain accurate classified value. From the fractal features (F) and local feature values (v), the directional fractal codes (FC) are obtained and is used for accurate classification. The neural network classifies the collected data value in a manner in which the training is done. Transfer learning is a methodology to categorize the collected data with the aid of inference obtained from a priory trained set of data. It is necessary to categorize a massive collection of images with an age label. This minimizes the tedious task in extracting the values from an image and then identifying a class label to the test image. When a proper training database is created, the neural network classification provides a better result. The Neural Network Toolbox in MATLAB18 comprise of various commands in interconnecting the different layers in the neural network. Using the collected data, the network is well tuned. The transfer learning process is done to the network. Several images are collected and the images are classified to particular age group. The data values of each age group are stored in each class group. The classification of the groups is based on the evaluated results from the deep network. This transfer process fine tunes the system is achieving higher accuracy.

Neural network with three hidden layers.
In deep learning network, the extraction of feature value is performed in an automated manner. When an unlabeled data are trained, each and every node in the layer of the network gets the values of features automatically and then the reconstruction of the input repeatedly makes them train the dataset. The gap between the guess of the network and the distribution of probability of the input data is reduced. The reconstruction of the network continues in this manner. There are some instances such as the restricted Boltzmann machine which follows the similar working principle. A softmax classifier is used in the proposed method to obtain exact result. The feed forward neural network method is applied to fetch the classified results.
Experiments and results
From the input image, the face is extracted. The input facial image is segmented into 64 grids as shown in Figure 5. From the collected grid values, the feature values are extracted. The extracted feature values here are the fractal features. These fractal feature codes are used to train the neural network. The index value in each domain, the rotation, brightness and contrast values are used for training the deep neural network.

Image segmented into 64 grids.
The fractal features extracted from the image are shown in Table 1. The first column is the grid value. The fractal features are the index value, rotation value, brightness value and contrast value as in second, third, fourth and fifth column of the Table 1 respectively. The first column is the geometrical position of the grid. The second column is the index value which is the value of the position of the domain block. The third column is the rotation value which lies between 0 and 7 indicating the eight directions. The last two column values are the value of brightness and contrast factors. These fractal feature codes are used to train the system. The fractal values and the local feature values are used to estimate the age of the person. The fractal values are extracted using the modification of binary patterns in all the eight directions. Since the image is segmented into 64 grids, the edge detection is eased. The vital texture details are preserved. The normalization is done on the images to standardize the contrast of the image. The histogram normalization is done on each grid and then the fractal values are obtained.
Fractals extracted from the image.
The neural network which is three layered is used to train the system very well and the neural prediction too provides an exact age of the person. The pattern sets are created for each age group and the neural network system is trained. The classification is done using softmax classifier. The softmax function mapping is given by
The conjugate scaled back propagation algorithm 19 regulates the gradient values in descending order. In each iteration, the step size is altered. The conjugate gradient direction is used to find the step size. With the search result of the direction the step size is calculated. The network is trained with the derivatives of the weight, input and the transfer function. The derivatives of performance are calculated with regard of the weight and bias variables. By using quadratic approximation, the neighborhood error is reduced. Using the scaling mechanisms and maintaining critical points, the error is reduced. The trained system is plotted and shown in Figure 6.

Training of the system.
The performance is evaluated using cross entropy and confusion matrices. The confusion in classification was very minimal. The obtained results as implemented in MATLAB 19 are shown in Table 2. The results are consolidated with the number of training image set and the testing image set. Among the trained 1000 images, the classification was more accurate. From the test image set, 87.2% was found to be accurately classified. Hence the total accuracy in estimating the age from the images was found to be of accuracy 89.5%. When comparing the two methods, the proposed method produced better results as shown in Table 3.
Age estimation compared with angular classification method and fractal dimension code method.
Age estimation compared with angular classification method and fractal dimension code method.
Age estimation process carried out by considering only the local features 7 produced nearly approximated actual age. The angle between the mouth tip and the two midpoint of eye were taken into consideration. Using the obtained angle value, the age is predicted. The classification in the first three rows shows almost similar net effect. But the classification in the last three rows shows the vast difference in the estimated age. The age is classified in a better way. The number of age group is increased and more features are considered for classification. This makes the proposed method trustworthy.
Conclusion
The age estimation is exigent and formidable task in the field of image processing. Many interesting results have been obtained in the estimation process with varying classification groups and captivating algorithms. The proposed method estimates the age in a more accurate manner with seven different age groups. The increase in the training set can achieve even better results. The scaled conjugate gradient method of training makes admirable results in training the system and the softmax classification method classifies the age into proper age groups. The fractal codes extracted in all eight directions assists the system in better classification.
Footnotes
Declaration of conflicting interests
The author(s) declared no potential conflicts of interest with respect to the research, authorship, and/or publication of this article.
Funding
The author(s) received no financial support for the research, authorship, and/or publication of this article.
