AdaBoost Gabor Feature Selection for Classification LinLin Shen, Li Bai School of CS & IT, University of Nottingham, UK. lls@cs.nott.ac.uk Abstract This paper describes an application of the AdaBoost algorithm for selecting Gabor features for classification. Gabor wavelets are powerful image descriptors but they often result in very high dimensional feature vectors, which rend them impractical for real applications. We have trained a classifier using the AdaBoost algorithm with a set of Gabor features extracted from images. Compared with the huge number of features used by typical classifiers using Gabor features, our classifier selects only about one hundred features. Whilst significant memory and computation cost has been saved, our classifier still achieves very high classification accuracy. Two image datasets have been used to test our system, and only 20 features are required to achieve zero error rates on the car image dataset. Keywords: AdaBoost, Gabor feature, Classification 1 Introduction Image features directly extracted from gray-level images using wavelets have been successfully applied to texture segmentation [1;2], handwritten numerals recognition [3] and fingerprint recognition [4]. The most well-known is Lades et al’s pioneering system Dynamic Link Architecture [5] proposed in the context of face recognition. In this system, a face image is represented as an elastic graph and the recognition process uses Gabor Jets (Gabor wavelet coefficients) extracted from the nodes of the graph. Based on a similar idea, Wiskott et al. [6] extended DLA to an elastic bunch graph model, in which each graph node refers to a specific facial landmark. Gabor features can be obtained by convolving an image with a series of Gabor filters. The number of filters used varies with applications, but usually 40 filters (5 scales and 8 orientations) are used for face recognition applications [5-7]. However, due to the large number of convolution operations, the computation cost is quite high. The dimension of the feature vectors extracted is also incredibly large, e.g. 23,040 for a 24×24 image using 40 filters. To address this issue, a method is described in [8] that performed Gabor feature selection for facial landmark detection by a trial-and-error. More successful examples involve the use of a genetic algorithm to select a subset of Gabor filters to optimize the performance of texture segmentation [9] and vehicle detection [10]. However, in these cases convolution operations still need to be performed at each location in an image. We believe that, instead of applying the same set of Gabor filters at every location of an image, a better approach is to selectively apply Gabor filters of various frequencies and orientations at different locations of the image. The question is how we know what Gabor filters to apply and where. In this paper, we propose to use the AdaBoost algorithm [11] for selecting appropriate Gabor features. Based on their importance to classification accuracy, essential Gabor features with appropriate frequencies and orientations are selected at different image locations and ranked by the AdaBoost algorithm. As can be seen from our experimental results, the classifier trained with AdaBoost achieves a very high accuracy using only about 0.5% of the original Gabor features. 2 Gabor Feature Extraction 2.1 2D Gabor Filters In the space domain, the 2D Gabor filter is a Gaussian kernel modulated by a sinusoidal plane wave [12]: θ θ θ θ π β α cos sin sin cos ) 2 exp( )) ( exp( ) , ( ) , ( ) , ( 2 2 2 2 y x y y x x x f j y x y x s y x w y x g + − = ′ + = ′ ′ × ′ + ′ − = = (1) where f is the central frequency of the sinusoidal plane wave, θ is the anti-clockwise rotation of the Gaussian and the plane wave, α is the sharpness of the Gaussian along the major axis parallel to the wave, and β is the sharpness of the Gaussian minor axis perpendicular to the wave. To keep the ratio between frequency and sharpness constant, α γ f = and β η f = are defined and the Gabor filters can now be rewritten as: