A Texture Classiﬁcation Approach Based on the Integrated Optimization for Parameters and Features of Gabor Filter via Hybrid Ant Lion Optimizer

: Texture classiﬁcation is an important topic for many applications in machine vision and image analysis, and Gabor ﬁlter is considered one of the most efﬁcient tools for analyzing texture features at multiple orientations and scales. However, the parameter settings of each ﬁlter are crucial for obtaining accurate results, and they may not be adaptable to different kinds of texture features. Moreover, there is redundant information included in the process of texture feature extraction that contributes little to the classiﬁcation. In this paper, a new texture classiﬁcation technique is detailed. The approach is based on the integrated optimization of the parameters and features of Gabor ﬁlter, and obtaining satisfactory parameters and the best feature subset is viewed as a combinatorial optimization problem that can be solved by maximizing the objective function using hybrid ant lion optimizer (HALO). Experimental results, particularly ﬁtness values, demonstrate that HALO is more effective than the other algorithms discussed in this paper, and the optimal parameters and features of Gabor ﬁlter are balanced between efﬁciency and accuracy. The method is feasible, reasonable, and can be utilized for practical applications of texture classiﬁcation.


Introduction
Texture [1,2] is a core property of object appearance in natural scenes, ranging from large-scale samples to microscopic ones. It is also active visual information that is used to describe and recognize objects in the real environment. Texture classification is one of the key problems in texture analysis, and it has been a long-standing research topic because of its importance in understanding the process of texture classification by humans and its extensive applications in computer vision and image analysis [3]. The main applications of texture classification include understanding medical images, extracting visible objects, retrieving content-based images, inspecting industrial faults [4][5][6][7], and so on.
In general, the primary focus of studies on texture classification has been the determination of methods to extract texture features. It is generally believed that the extraction of powerful texture features is more important than that of weak texture features since they do not lead to good classification results, even when using excellent classifiers [8]. However, texture features can be found in various orientations and at different scales, and these cannot be characterized effectively by commonly used methods [9][10][11][12]. Gabor filter has been used for this purpose and performs better in the discrimination of individual texture features, especially those with similar descriptions. However, a single filter is difficult to apply to multi-orientation and multiscale texture features. Thus, a bank of Gabor filters with the ability to extract multi-orientation and multiscale texture features was proposed to address the issue. Gabor filter has been extensively used for texture feature extraction and texture classification [13]. Li [14] captured the dependence of Gabor filter on different channels, and had better performance results than that of state-of-the-art approaches. Younesi [15] proposed a palm print recognition method that used a bank of Gabor filters to extract texture features from images, and the method achieved higher accuracy than texture classification approaches based on single Gabor filter. Huang [16] proposed a new technique of identifying group-housed pigs on the basis of Gabor filter, and the experimental results demonstrate that the accuracy outperformed the compared approach by 91.86%, and PCA parameter drifted in the range of 0.85-0.9. Lu [17] presented a texture classification method for fracture risk estimation based on Gabor filter combined with the total T-score, and the shape texture features could be measured in a wider area compared with other methods. Kim [18] proposed a novel texture classification technique with directional statistical (DS)-Gabor filter and had satisfactory rotation invariance owing to the combination of a number of directional statistics. However, the parameters of the above method need to be set by experience, thus it may not be adaptable to different types of texture features. Furthermore, the parameter settings of each Gabor filter are crucial to classification accuracy.
On the other hand, the process of obtaining the optimal parameters of Gabor filter can be seen as a combinatorial optimization problem that can be tackled by swarm intelligence algorithms. For example, Khan [19,20] presented a technique for the optimization of each filter individually via particle swarm optimization (PSO) and cuckoo search (CS) algorithm, and the approach successfully represents local texture changes at multiple scales and orientations from mammograms with an effective improvement in classification accuracy. Tong [21] proposed a defect detection technique via Gabor filter to inspect flaws in woven fabrics in the fashion industry, and the differential evolution (DE) algorithm was utilized to obtain the optimal parameters of the filter bank. The method achieved high successful detection and low false alarm rates. However, the optimization ability of PSO, DE, and CS algorithms is mainly based on a random search, which cannot ensure convergence toward the optimal solution. Moreover, because of the multi-orientation and multiscale nature of the filter bank, there is redundant information in the process of texture feature extraction, and it contributes little to the classification [22]. Thus, numerous feature selection approaches based on Gabor filter have been proposed to reduce the data dimension [23,24], but the previous works have ignored the relevance of parameter optimization and feature selection. In essence, parameter optimization and feature selection are both considered combinatorial optimization problems, and the integrated optimization of the parameters and features of Gabor filter could be obtained by swarm intelligence algorithms at the same time.
Ant lion optimizer (ALO) [25] is a novel swarm intelligence algorithm. Nowadays, ALO has been applied in various fields, such as power system design, fault detection, schedule planning, path searching and so on [26][27][28][29]. The optimization ability of ALO does not rely on any parameters, and it is more likely to obtain the satisfactory solution. However, feature selection is considered a discrete optimization problem and is difficult to solve using ALO with decimal coding. Mafarja [30] presented a binary coded ALO (BALO) to select the optimal feature subset for some well-known datasets from the UCI repository. BALO obtained superior results by searching for the best feature subset, and the performance was independent of the step-length and classifier. Hence, in this paper, a new texture classification method is proposed that blends the use of Gabor filter and a hybrid binary-decimal coded ALO (HALO) to, respectively, solve the problems of parameter optimization and feature selection.
The rest of this paper is structured as follow. The basic principle of HALO is illustrated in Section 2. In Section 3, the proposed method to obtain the integrated optimization of the parameters and features of Gabor filter is detailed. Section 4 displays the experimental results and discussion. Finally, the paper is concluded in Section 5.

ALO for Parameter Optimization
In 2015, Mirjalili introduced a swarm intelligence algorithm called ALO, which imitates the hunting behavior of antlions and has no parameters to be set [25]. In nature, an antlion larva digs a cone-shaped pit in the sand by moving along a circular path and throwing out sand with its massive jaw, and the larva then hides underneath the bottom of the cone and waits for ants to be trapped in the pit. The exploratory behavior of ALO is similar to an antlion's digging in a circular path. Additionally, the exploitation behavior of ALO is similar to the boundary adjustment of antlions' traps. As each ant in ALO moves randomly in the solution space, its strategy is similar to that of spinning a roulette wheel and is represented below: where X t is the position of ants after a random walk, n is the number of ants in the population, cumsum represents the cumulative sum, t is the iteration number, and r(t) is a stochastic distribution function as defined below: where rand is a random number taken from a uniform distribution in the interval of [0,1].
To maintain the random walk in the scope of the search space, the positions of each ant are normalized by min-max normalization as defined by the following: where a i is the minimum of the random walk of ith variable, b i is the maximum of the random walk of ith variable, c t i is the minimum of ith variable at iteration t, and d t i indicates the maximum of ith variable at iteration t.
Antlions build traps that are proportional to the size of the solution space, and the ants move stochastically. Moreover, antlions shoot sand outward from the center of the pit once they realize that an ant is in the trap to keep the ant trapped as it tries to escape. To mathematically define this behavior, the radius of an ant's random walk on a hypersphere is reduced adaptively, and the process of trapping can be described as follows: where I = 10 ω t T , T is the maximum number of iterations, and ω is a constant variable that is defined based on the current iteration ( ω = 2 when t > 0.1 T, ω = 3 when t > 0.5 T, ω = 4 when t > 0.75 T, ω = 5 when t > 0.9 T, and ω = 6 when t > 0.95 T). Basically, ω is utilized to adjust the optimization level of exploration.

Binary Coding for Feature Selection
In general, feature selection is regarded as a discrete combinatorial optimization problem and is difficult to solve directly by decimal coding. In the binary coding environment, moving through each band means that the position of each individual changes from 0 to 1 or vice versa [31]. To introduce a binary coding form of ALO, the coding process of each ant can be seen as continuous optimization of similarity. The major difference between the decimal and binary coding form is that ants are characterized by a realistic value or by switching to "0" or "1" in the transform function. That is to say, the position of each ant calculated by Equation (3) is set to either 0 or 1 with a certain probability and calculated with a conditional function, as shown in Equation (6): where tanh(·) is the hyperbolic tangent function and R t i is the form of binary coding for the position of each ant that is utilized to solve the problem of feature selection.
To summarize, in this paper, HALO is proposed with the combination of binary and decimal coding to, respectively, solve the problems of parameter optimization and feature selection using an ant, and the aim of this approach is to obtain the optimal classification accuracy for different texture features. The overall operating process of the proposed texture classification method is expressed in the following section.

The Proposed Method
An efficient texture classification method that applies the integrated optimization of the parameters and features of Gabor filter using HALO is presented in this section. The main goal of texture classification is to precisely classify several texture features in each sample.

Fundamental of Gabor Filter
Gabor filter is calculated by a convolutional kernel function, which has been utilized in image processing applications, especially for texture classification. To represent multiscale and multi-orientation texture features, a filter bank is structured with a number of parameters in different orientations and scales. The essential variable g(x, y) of a 2-D Gabor filter is expressed by a Gaussian kernel and adjusted by a complex sinusoidal wave: [32]: where σ x and σ y are the parameters that describe the spread of the current pixel in the neighborhood in which weighted summation occurs, W is the central frequency of the complex sinusoid, and θ ∈ [0, π) is the orientation of the horizontal to vertical stripes in the equation above. A bank of Gabor filters includes multiple individuals and can be adjusted for different orientations and frequencies. Gabor filter considered here is GS5O8 (including 40 filters: 5 scales S × 8 orientations O with an initial max frequency equal to 0.2 and an initial orientation set to 0. The parameter settings of the orientations and frequencies for a bank are tuned by the following formulas [33]: where O and S are, respectively, the orientations and scales in total, and f max is the maximum value of the frequency and is set to f max = 0.2.

Encoding Schema of Parameter Optimization and Feature Selection
The key objective of the proposed texture classification method is to achieve satisfactory parameters and features of Gabor filter and create a reasonable mapping between the solution and HALO. The parameter optimization process needs O + S bits to apply coding to the parameters, which are the orientations θ and frequencies W in Equations (9) and (10). The former O bits represent each orientation, the latter S is each scale, and the ranges of the parameters are, respectively, set to (0, 1) and (0, 0.2] with decimal coding. For feature selection, the length of coding is equal to the total number of features in the database, and here it is set to O × S. For binary coding, every bit is expressed by the fixed value "0" or "1" by Equation (6), where "1" illustrates that the current feature will be chosen for classification, and "0" illustrates that the current feature will be abandoned. Thus, the total coding length of an ant is equal to O × S + O + S. The encoding form of an ant for Gabor filter with O orientations and S scales is shown in Figure 1. The entire code simultaneously indicates the solution of the parameter settings and the feature subset of Gabor filter.

Definition of Objective Function
To evaluate the optimization ability of HALO and other evolutionary algorithms, it is necessary to choose a suitable objective function. Because the process of training can be considered prior knowledge, each texture feature is a category. The Fisher criterion has good performance in the calculation of heuristic knowledge. The Fisher criterion aims to maximize the inter-class difference and minimize the intra-class difference, and it is usually applied to assess binary classification problems [34]. For multi-classification problems, the objective function should be improved to synthetically weight the differences between each category. Therefore, it is defined as shown in Equation (11): where µ i and σ i are, respectively, the average and the standard deviation of the eigenvalues for ith category of texture features, and l is the number of classes. A larger value resulting from the above equation demonstrates better-quality parameters and features for Gabor filter.

Implementation of the Proposed Technique
The overall scheme of the proposed texture classification technique is shown below. First, it performs encoding for each ant of HALO, and the process of parameter optimization and feature selection is then constructed by binary and decimal encoding. The result constitutes a feature vector that is input into a classifier and yields a final label for each sample.
The value of the feature vector is composed of different orientations and frequencies of Gabor filter, and each feature vector is normalized to a uniform magnitude in the range of [0,1]. In general, the process of texture classification has two stages: training and testing. The former stage provides a certain extent of prior knowledge for classification, and the latter stage verifies the availability of the current model [35].
Training samples with different scales and rotations are utilized to avoid overfitting for fair performance evaluation. However, at the same time, the volume of the training dataset is increased by the 40 filters. As a result, interval sampling [36] with a length of 8 pixels and max-pooling with a 4 × 4 window is utilized for each sample to decrease the data volume in the process of convolution.

•
Step 1: Extract the training and testing samples from each database.

•
Step 2: For each ant, generate the decimal coding for parameter optimization, and the binary coding for feature selection.

•
Step 3: Perform convolution between each training sample and the filter bank.

•
Step 4: Reduce the data dimension via interval sampling and max-polling, and compute the fitness value by using Equation (11).
Step 5-3: Change the encoding of feature selection to the binary form by Equation (6);

•
Step 6: Perform convolution between each training sample and the filter bank and build the feature subset according to the binary encoding.

•
Step 7: Reduce the data dimension via interval sampling and max-polling, and compute the fitness value by using Equation (11).

•
Step 8: If the solution is better, replace the position of the current ant; otherwise, do not change the position and find the current global best solution.

•
Step 9: Judge whether the terminal criterion is satisfied: if it is, go to Step 10; otherwise, go to Step 5.

•
Step 10: Output the optimal feature subset, and conduct classification for testing samples.

Experimental Results and Discussion
The proposed method was implemented in the language of MATLAB 2014b on a personal computer with a 2.30 GHz CPU and 8.00 GB RAM on a Windows 8 operating system. To assess the quality of the proposed technique, public databases were utilized to extract features based on Gabor filter with several orientations and frequencies, as described in this section.

Databases Description
To evaluate the performance of the proposed texture classification method optimized by HALO, three public texture databases were used in the experiment. The first database CGT [37] offers digital pictures of all sorts of materials with the pictures of fabric, wood, metal, bricks, plastic, and these texture images can be used for graphic design and visual effects. In the experiments, 18 homogeneous texture images from the database were as shown in Figure 2, all chosen texture images without any rotation and 10 images for each class were utilized as training samples, while the other 50 images were used as testing samples. The second database Kylberg [38] was imaged under only one light setting from one direction on the same distance. Textured surfaces are arranged, such as oatmeals, linseeds, lentils, the texture samples with the same category have 12 different angles of rotation with 30 degrees increment.
In the experiments, 20 homogeneous texture images from the database were as shown in Figure 3, and images without any rotation were utilized as training samples with the number per category set as 15, and 60 images with other angles of rotation per category were used as testing samples. The third database is Brodatz [39] with different background intensities, and the figure below gives an example of 40 different texture features organized into 5 columns. For example, D6 has a black background, whereas D10 has gray and white backgrounds, and D101 is a regular texture, whereas the texture type of D111 is irregular. In the experiments, 30 homogeneous texture images from the database were as shown in Figure 4, all of the images were rotated with a 20 • step, images with 20 • rotation were utilized as training samples with the number set as 6 for each class. The rest of the 48 images were utilized as testing samples.

Parameters Setting for Different Algorithms
As detailed in Section 2, the optimization ability does not rely on any parameter settings in HALO, thus it is prevented from becoming trapped in the local optimal solution to a great extent. In addition, some commonly used swarm intelligence algorithms, such as PSO algorithm [40], DE algorithm [41], CS algorithm [42] and gray wolf optimizer (GWO) [43], were used for an intuition comparison between the optimization abilities. All of these algorithms are based on hybrid decimal and binary coding. Moreover, other types of Gabor filter were used for further comparison. For a relatively fair comparison, the number of function evaluations was used as the terminal criterion; that is, all algorithms stopped when the iteration number reached 20 combined with part of experimental results as the fitness value did not improve, and all algorithms performed 30 independent operations. Our primary interest was the integrated optimization of parameters and features of Gabor filter, and this was shown by the fitness value of the objective function and the classification accuracy for the testing samples in each database. Table 1 shows the parameter settings of the above algorithms.

Experiments for Different Swarm Intelligence Algorithms
A preliminary test of the proposed texture classification approach on three public texture databases, namely CGT, Kylberg, and Brodatz, was conducted, as described here. The size of the training samples was extracted as 128 × 128 with different angles of rotation. In Table 2, Fiv is the average fitness value calculated by Equation (11) using the integrated optimization for each filter bank handled by different swarm intelligence algorithms, and Fn and Time, respectively, indicate the selected number of features and CPU time, on average, for each training process. As shown in Table 2, the average fitness value using the proposed method was the highest for all databases, proving that the optimization ability of HALO was superior to that of PSO, DE, CS, and GWO. The discrimination ability of each category was enhanced since the fitness value exceeded 16. More importantly, the process of ALO is based on the hunting behavior of antlions and has no parameters to be set. Hybrid decimal and binary encoding qA utilized to conduct integrated optimization of the parameters and features of Gabor filter; this strategy improved the exploitation ability compared with the use of only one ant encoding. Moreover, the selected number of features was the lowest among all of the algorithms involved: the number was higher than 20 for the CGT and Kylberg databases using PSO and DE algorithms, and HALO abandoned more than 50% of the redundant features from Gabor filter. From the aspect of operating efficiency, HALO had a faster convergence rate because it had fewer multiplications compared with the other algorithms. The difference in CPU time reached 0.7 s for the Kylberg and Brodatz databases, and HALO only needed 10.6732 s to select the best feature subset by obvious distinction for the CGT database. Overall, it can be deduced that the optimization ability and operating efficiency are improved by using HALO, which has the desired adaptability to obtain suitable parameters and features of Gabor filter.

Application for Texture Classification
Next, each texture sample was classified by using the optimal parameters and features of Gabor filter. Figures 5-7 indicate the difference in the average eigenvalues between the training and testing samples for the categories with the highest classification accuracy using the selected parameters and features of Gabor filter. Tables 3-5 show the classification accuracy using the newly proposed Log-Gabor filter [44], DS-Gabor filter [18], the only parameter optimization-based Gabor (OP-Gabor) filter, and the proposed method. In the tables, OA and Kappa are the overall classification accuracy and Kappa coefficient, respectively, obtained by using different texture classification methods. The Kappa coefficient is defined below: where P o is the relative observed agreement, and P e is the hypothetical probability of chance agreement.     Tables 3-5 reveal that the classification accuracy was increased, with a difference of more than 2%, by removing some redundant features of Gabor filter. In addition, more than 40 samples were misclassified for the Kylberg database. Although the classification accuracy for the Leather, Road, and Wood classes in the CGT database was relatively high, misclassification still had a certain influence on the overall process. Moreover, the Kappa coefficient was more than 0.93 for all databases, illustrating that the precision could adapt to a number of application demands. The difference in the average eigenvalues between the training and testing samples was lower than 0.03, and the change trend was similar to that shown in Figures 5-7, thus proving the discriminability and identity of each Gabor filter. The overall classification accuracy of the Log-Gabor filter and DS-Gabor filter was unsatisfactory: it was lower than 85% for the CGT database and only 86.56% and 82.58%, respectively, for the Kylberg database. With these two methods, very few samples were correctly classified for the Wheel, Brick, Sand, and Stone slab categories, thus it was difficult for them to extract texture features from the whole database. In brief, the proposed approach is a reliable, efficient, and reasonable method for texture classification.

Conclusions
This paper details a texture classification method based on the integrated optimization of the parameters and features of Gabor filter using HALO. Three public texture databases with different types of texture features were utilized for its evaluation. The experimental results were firstly compared with those of some commonly used swarm intelligence algorithms, such as PSO, DE, CS, and GWO. In general, it was demonstrated that swarm intelligence algorithms are well coded to solve parameter optimization and feature selection problems at the same time. Among them, HALO with hybrid binary-decimal coding has great optimization ability, and its fitness value is distinctly higher than that of the other algorithms. Thus, the proposed method is more appropriate for texture classification, and it is fast enough to meet real-time application needs. Moreover, for a more comprehensive comparison, Log-Gabor, DS-Gabor filter, and the only parameter optimization-based Gabor filter were also utilized. It was observed that the proposed texture classification method is robust, and the classification accuracy is satisfactory for multi-classification problems, especially those based on texture features. In sum, the multi-orientation and multiscale nature of Gabor filter can enhance the discrimination of texture features. Further, the disadvantage of high time complexity can be overcome to a great extent with HALO. The proposed texture classification method has an excellent balance between efficiency and accuracy, making it a good candidate to deal with practical applications. In the future, we will collect some geological texture samples and use them for the classification of more texture features.