1 Introduction

Feature extraction is an important and active research topic of Computer Vision. Also, many multimedia applications such as face recognition, texture image classification, image indexing and retrieval employees Gabor wavelet for feature extraction [13, 21]. Some of these applications need a disparity map which can be obtained from stereo correspondence [1, 11, 14]. The disparity map gives an additional information for these applications.

Again, feature extraction may be local or a global process. Global features extract a prominent information of an image, whereas local features extract a detailed information. Depending on the applications, either local or global features may be employed.

Gabor filter was first proposed by Daugman, and it is extended for 2D domain to extract the information of image textures [3, 4]. This is done by convolving an image with the Gabor wavelet kernel. Some of the applications which use a Gabor wavelet for feature extraction, and subsequent pattern classification are discussed in this context. In general, the feature vector is the concatenation of features extracted by a Gabor filter for different orientations and scales [23]. Another way of extracting Gabor features is by applying gray level co-occurrence matrix over the Gabor wavelet convolved images. In another approach, covariance matrix is calculated for all the Gabor filtered images [30, 31]. Finally, non-duplicated values of the covariance matrix are used as features. The simplicity and success of local binary pattern (LBP) in many applications motivates the researchers to use LBP on Gabor filtered images [20]. Another recent approach is the adaptation of fractal signature of magnitude coefficients for efficient texture feature extraction [35].

Zhang et al used histogram of Gabor phase pattern (HGPP) as a feature for face recognition [36]. Xu et al extracted Gabor features from depth and intensity images, and subsequently used this feature for face recognition [32]. Jahanbin et al obtained Gabor features separately from co-registered range and portrait image pairs at fiducial points [8]. These two features are merged to use for face recognition.

Yang et al also used Gabor wavelet for face classification [34]. This method takes care the cases of occlusion by constructing a compact occlusion dictionary from Gabor features. In [33], facial expression representation model is proposed using the statistical characteristics of training images. Texture and shape information are used to measure the similarity between the testing images and the facial expression models. Zhang et al proposed a FER system with a capability of handling occlusion [37]. A set of face templates are extracted from the Gabor filtered images using Monte Carlo algorithm. Extracted features are robust to occlusion.

Gabor wavelet is also used for image indexing and retrieval [17]. Input image is decomposed by Gabor wavelet at different scales and orientations. The obtained coefficients contain certain redundant information.

Edge detection using simplified Gabor wavelet is presented in [9]. In this method, initially input image is convolved with quantized imaginary Gabor filter by considering two orientations and one scale.

Shen and Jia proposed a 3D Gabor wavelet for hyperspectral image classification [24]. This 3D Gabor wavelet is convolved with an input image to obtain the feature vector. 2D Gabor wavelet-based automatic retinal vessel segmentation is proposed in [25]. In this method, image is filtered by a 2D Gabor wavelet with different orientations and scales. At a particular scale, maximum value of the coefficients for all the possible orientations is taken for each pixel. This procedure is repeated for all the scales to form the feature vector.

It has to be noted that the above mentioned methods use magnitude information of Gabor wavelet, which require both real and imaginary coefficients. In this paper, an extensive analysis of Gabor filter properties is presented. It has been established that the real coefficients of a Gabor filter alone can be more effectively used to extract necessary information of an image in place of magnitude information. To validate our claim, local Gabor wavelet features are extracted for all the image pixels from the overlapping neighboring regions. The performance of this local Gabor wavelet feature is compared with the global Gabor features. Additionally, the performance of the above local feature is also compared with the local features extracted from non-overlapping regions.

Jones and Palmer mentioned that an optimal performance of 2D Gabor filter can be obtained by using real part of the filter in [10]. Further, Daugman proposed a new feature extraction method by considering elementary 2D Gabor functions [5]. In this paper, neural network is employed to achieve this task. In these two papers, authors simply mentioned “real part of the complex Gabor function is a good fit to the receptive field weight functions found in simple cells in a cat’s striate cortex”. They did not establish their claim either experimentally and/or analytically. But in our paper, extensive experimental evaluations are done to validate the effectiveness of the real coefficients of the Gabor features. It is also observed from our experimental analysis that real coefficients can give almost similar performance as that given by the magnitude information for the applications like stereo correspondence. Additionally, extensive experimental investigations are done for analyzing the characteristics of Gabor features for synthetic illumination changes and real radiometric variations.

Based on the above literatures and observations, major contributions of this paper can be summarized as follows:

  • Real coefficients of Gabor wavelet alone are sufficient enough to represent an image. Our claim is validated by considering three different cases: (i) Global Gabor features, (ii) Local Gabor features extracted from overlapping regions, and (iii) Local Gabor features extracted from non-overlapping regions. In all these cases, it is observed that real coefficients alone can represent an image more efficiently as compared to the Gabor imaginary coefficients. Also, the real coefficients can represent an image almost in the similar manner as compared to the magnitude information.

  • Three different features (global Gabor features, local Gabor features for overlapping regions and local Gabor features for non-overlapping regions) are analyzed. It is again observed that local Gabor features for overlapping regions can represent an image more accurately compared to other two counterparts.

  • Robustness of all the three Gabor features are analyzed for radiometric variations in a scene, and we found that the real coefficients of local Gabor features for overlapping regions are more robust as compared to the Gabor features extracted from the imaginary part or magnitude information. Also, this method is significantly better than the local Gabor features for non-overlapping regions and the global features.

This paper is organized as follows: Section 2 describes the basics of Gabor wavelet. Global and local Gabor wavelet feature extraction methods are explained in Sections 3 and 4 respectively. Section 5 is intended for showing extensive experimental results, and finally, we draw our conclusions in Section 6.

2 Basics of Gabor wavelet

2D Gabor functions are Gaussian modulated complex sinusoids, which is given by:

$$ \begin{array}{l} g(x,y) = \frac{1}{{\sqrt {2\pi} } }{e^{- {\textstyle{1 \over 8}}\left( {4{x^{2}} + {y^{2}}} \right)}}\left[ {{e^{i\kappa x}} - {e^{- {\textstyle{{{\kappa^{2}}} \over 2}}}}} \right] \end{array} $$
(1)

The first term in the square bracket in equation (1) determines the oscillatory part of the Gabor kernel, and the second term is used to compensate the DC value [15]. Gabor wavelets are referred as a class of self-similar functions generated by the process of orientation and scaling of the 2D Gabor function, which is given by:

$$ \begin{array}{l} {g_{mn}}(x,y) = {a^{- m}}g({x_{a}},{y_{a}}),{\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} a > 1,{\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} \\ {x_{a}} = {a^{- m}}(x\cos \theta + y\sin \theta ){\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} \text{and} \\ {y_{a}} = {a^{- m}}(- x\sin \theta + y\cos \theta ) \end{array} $$
(2)

Here, \(\theta = \frac {{n\pi } }{K}\), where K is the total number of orientations, and a m is the scale factor [2]. Frequency and orientation representations of a Gabor filter are very similar to those of the human visual system. That is why, Gabor features are quite appropriate for texture representation and discrimination.

3 Global Gabor wavelet feature (GGWF) extraction

Global features can be used to represent the entire image, while local features can represent a particular region of an image. In most of the cases, the dimension of global features are less than the dimension of the input image. So, the global feature extraction methods may be considered as the dimensionality reduction techniques. Global features are fast to compute.

Let us consider an image I of size P×Q. In order to obtain the GGWF, the input image I is convolved with the Gabor function which is tuned to different scales and orientations, and the obtained coefficients represent the global feature F. Mathematically, it is given by:

$$ \begin{array}{l} {F} = I * {g_{pq}},\forall p = 0,1, {\cdots} ,(m - 1), {\kern 1pt} q = 1, {\cdots} ,n \hfill \\ \end{array} $$
(3)

where, “ ∗ ” is the convolution operator. For a Gabor kernel of size N g ×N g with m th scale and n th orientation, the filtered image F m n is given by:

$$ \begin{array}{l} {F_{mn}} = I * {g_{mn}} \hfill \\ {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} = \sum\limits_{k = 1}^{{N_{g}}} {\sum\limits_{l = 1}^{{N_{g}}} {I(x - k,y - l){g_{mn}}(k,l)}}\\ \end{array} $$
(4)

Since Gabor function is a Gaussian modulated complex sinusoid, the above equation can be separated into two parts - real and imaginary parts given by

$$ \begin{array}{l} {F_{pq}^{real}} = (I * real\{ {g_{pq}}\} ),\forall p = 0,1, {\cdots} ,(m - 1),\\ {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt}q = 1, {\cdots} ,n\\ \end{array} $$
(5)
$$ \begin{array}{l} {F_{pq}^{imag}} = (I * imag\{ {g_{pq}}\} ),\forall p = 0,1, {\cdots} ,(m - 1), \hfill \\ {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt}q = 1, {\cdots} ,n \hfill \\ \end{array} $$
(6)

The magnitude of the Gabor filtered output is calculated as follows:

$$ \begin{array}{l} {F_{mn}^{mag}} = \sqrt {(F_{mn}^{real})^{2} + (F_{mn}^{imag})^{2}} \end{array} $$
(7)

First row of Fig. 1 shows images represented using global Gabor wavelet features. In this figure, input image, image represented using the real coefficients, image represented using the imaginary coefficients, and the image represented using the magnitude information for m=2,k=2 in equations (3), (5), (6) and (7) are shown from the left to right.

Fig. 1
figure 1

Gabor wavelet filtered images. First row - Global Gabor filtered images (GGWF) and second row - local Gabor filtered images (LGWF) for overlapping regions. Input image, image represented using the real coefficients, image represented using the imaginary coefficients, and the image represented using the magnitude information are shown from the left to right in this figure

When the family of Gabor wavelet forms a frame, they can completely represent an input image, i.e., when a Gabor wavelet family is treated as an orthonormal basis, then an input image can be approximately recovered by the linear superposition of these bases weighted by the wavelet coefficients [15]. The reconstructed image I recon using GGWF vector is found as follows:

$$ \begin{array}{l} I^{recon} = \frac{2} {{A + B}}\sum\limits_{p,q} {\left\langle {g_{_{pq}},{F_{mn}}} \right\rangle} g_{_{pq}}, \forall p = 0,1, {\cdots} ,(m - 1),{\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} q = 1, {\cdots} ,n \hfill \\ \end{array} $$
(8)

where, \(\left ({A + B} \right )/2\) is the frame redundancy measurement, B/A is the frame tightness measurement. When B = A, the frame forms a tight frame, and the reconstruction using the inverse formula is exact.

Teddy image reconstructed using the extracted global features is shown in first row of Fig. 2. From both Figs. 1 and 2, it is observed that the image represented/reconstructed using the real coefficients and the magnitude are almost visually similar to the input image, whereas image represented using the imaginary coefficients significantly visually different as compared to the image represented/reconstructed by both real and magnitude informations.

Fig. 2
figure 2

Reconstruction of original image with GGWF and LGWF. First row shows the reconstructed image using GGWF, and the second row shows the reconstructed image using LGWF for overlapping regions. Input image, image reconstructed using the real coefficients, image reconstructed using the imaginary coefficients, and the image reconstructed using the magnitude information are shown from the left to right in this figure

Image reconstructed using only the real coefficients is similar to the image reconstructed using the magnitude information, but memory requirement is reduced by half when only the real coefficients are used [22]. This is due to the fact that both real and imaginary informations are needed to be stored to extract the magnitude information, which is not the case for storing only the real information.

4 Local Gabor wavelet feature (LGWF) extraction

Local features represent a region of interest of an image. Generally, these local features are obtained by considering the gray-scale value and/or color information of a pixel. A good local feature should uniquely represent a particular point in an image. Local features are generally used for the applications such as stereo matching, object tracking, 3D calibration and 3D reconstruction. In this paper, local features are extracted using both overlapping and non-overlapping regions. The procedure of LGWF extraction, and subsequent reconstruction of the original image by using the extracted features is discussed below.

Figure 3 shows the block diagram of Gabor wavelet-based local feature extraction from overlapping regions, where the square (pink and green color) represents two local image patches. In this figure, the pixel for which the feature is extracted is shown in the form of a small green circle. It is seen that the neighboring regions of the two patches have a common region, and hence the method is termed as feature extraction from overlapping regions. Let us consider an image I of size P×Q. To find the local feature vector for the pixel I(i,j), a certain neighborhood N(i,j) of size u×v is considered. This patch is convolved with the Gabor kernel g m n (refer to equation (2)) for different orientations and scales, which is given by:

$$ \begin{array}{l} {{F_{L}}(i,j)} = {[{\aleph_{0q}}{\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\aleph_{1q}}{\kern 1pt} {\kern 1pt} {\cdots} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\aleph_{(m - 1)q}}]^{T}},\enskip\forall q = 1,...,n \end{array} $$
(9)

where,

$$ \begin{array}{l} {\aleph_{pq}} = [f_{p1}(i,j){\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} f_{p2}(i,j){\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\cdots} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} f_{pn}(i,j)],{\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} p = 0, {\cdots} ,(m - 1) \\ f_{mn}(i,j) = N(i,j) * g_{mn}\\ \end{array} $$
(10)
Fig. 3
figure 3

Block diagram of local Gabor wavelet feature extraction from overlapping regions

This procedure is repeated for all the pixels of an image, and each pixel has a set of Gabor coefficients. The images represented using the real, imaginary and the magnitude informations for Teddy image with m=2,k=2 are shown in second row of Fig. 1.

Reconstruction of the original image using the real coefficients, imaginary coefficients, and both real and imaginary coefficients (magnitude) of local Gabor wavelet are performed by using the equation as given below:

$$ \begin{array}{l} I_{L}^{recon}(i,j) = \frac{1} {{u \times v}}\left\{ {\frac{2} {{A + B}}\sum\limits_{p,q} {\left\langle {{g_{pq}},{F_{L}}} \right\rangle {g_{pq}}}} \right\} \hfill \\ \end{array} $$
(11)

To compare the reconstructed image with the original image, average of the coefficients is computed for each of the pixels. Figure 2 shows the images which are reconstructed using the extracted local features from the overlapping regions. The reconstructed images using the real coefficients, imaginary coefficients and the magnitude information by using equation (11) are shown in second row of Fig. 2.

An input image is partitioned into subregions of size u 1×v 1 to find the LGWF from the non-overlapping regions. In this case, the extracted coefficients characterize the entire region, whereas in the case of overlapping regions, the extracted coefficients characterize a particular pixel. Equations (911) with slight modifications can also be employed to represent and reconstruct the original image for non-overlapping regions.

5 Experimental results

To evaluate the performance of the extracted Gabor features, Middlebury stereo images are used [6, 2629]. Experimental evaluations are performed by considering different window sizes, various orientations and scales. Additionally, performance of these features are evaluated for synthetic illumination changes (gain change, bias change, gamma and vignetting changes). Also, these evaluations are performed for real radiometric changes which include the change in the exposure and light source. Metrics used for these evaluations are mean square error (MSE), correlation coefficient (CC), universal quality index (UQI or QI) and structural similarity index (SSI) [16].

Mathematically, these metrics can be expressed as follows:

$$ MSE = \frac{1} {{M \times N}}\sum\limits_{i = 1}^{M} {\sum\limits_{j = 1}^{N} {\left( {I(i,j) - J(i,j)} \right)^{2}}} $$
(12)

where, I is an input image, J is the reconstructed image.

$$ CC = \frac{{\operatorname{cov} (I,J)}} {{{\sigma_{I}}{\sigma_{J}}}},{\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} 0 < CC < 1 $$
(13)

where, cov(I,J) denotes the covariance between the input and reconstructed images. σ I and σ J are the standard deviation of the input and the reconstructed images respectively.

$$ QI = \frac{{{\sigma_{IJ}}}} {{{\sigma_{I}}{\sigma_{J}}}}\frac{{2\overline {I}\;\overline{J}} } {{{{\left( {\bar I} \right)}^{2}}{+{\left( {\bar J} \right)}^{2}}}}\frac{{2{\sigma_{I}}{\sigma_{J}}}} {{{\sigma_{I}^{2}} + {\sigma_{J}^{2}}}} $$
(14)

where, σ I J represents the standard deviation, \({\overline I}\) and \({\overline J}\) are the mean of I and J respectively.

$$ SSI = \frac{{\left( {2\bar I\bar J + {c_{1}}} \right)\left( {2{\sigma_{IJ}} + {c_{2}}} \right)}} {{\left( {{{\bar I}^{2}} + {{\bar J}^{2}} + {c_{1}}} \right)\left( {{\sigma_{I}^{2}} + {\sigma_{J}^{2}} + {c_{2}}} \right)}},{\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} {\kern 1pt} 0 < SSI < 1 $$
(15)

Lesser values of MSE and larger values of CC, QI and SSI indicate better similarity of the reconstructed image with the original image. For evaluation, images are reconstructed using both the global and local features which are extracted from both overlapping and non-overlapping regions. The reconstructed images are normalized in the range of [0-1]. Figure 4 shows the image represented using the real coefficients, image represented using the imaginary coefficients, and the image represented using the magnitude information extracted from both global and overlapping regions. In the following figures and tables, real, imag and mag denote the real, imaginary and magnitude information of the extracted features, while OL, NO and G correspond to overlapping, non-overlapping and global regions.

Fig. 4
figure 4

Experimental results for some additional images; First row - input image, second, third and fourth rows show features extracted from overlapping regions; Fifth, sixth and seventh rows show features extracted from global regions; Second and fifth rows show the image represented by using real coefficients, third and sixth rows show the image represented by using imaginary coefficients; fourth and seventh rows show the image represented by using magnitude information; Left to right - Aloe, Dolls, Hoops, Livingroom, Motorcycle and Recycle images

5.1 Different window sizes

Tables 1 and 2 show the performance of local features which are extracted from overlapping and non-overlapping regions for different window sizes. Performance of the features for overlapping regions decreases with the increase of window size, whereas the performance of features extracted from non-overlapping regions increases with the increase of window size. For overlapping regions, feature vectors are extracted for each of the pixels of an image. So if the window size is increased, many neighboring pixels influence the feature vector of the center pixel. The extracted features can characterize a pixel more effectively when all the neighboring pixels belong to a homogeneous region. On the other hand, the feature vector cannot effectively represent a pixel for the case when some of the neighboring pixels belong to different regions. So, the reconstruction error increases with the increase in window size. For non-overlapping regions, a feature vector is extracted for each of the image patches. When the window size is increased, it encloses more number of pixels. These pixels in turn provide additional information to the extracted feature of the patch. Hence, the extracted feature vector will be able to effectively represent an image patch.

Table 1 Comparison (by MSE and CC) of the local features (both overlapping and non-overlapping regions) for different window sizes
Table 2 Comparison (by SSI and QI) of the local features (both overlapping and non-overlapping regions) for different window sizes

5.2 Different number of orientations

The performance of GGWF and LGWF (both overlapping and non-overlapping regions) for different number of orientations K=1,2,3,4,5,6,7 and 8 are shown in Table 3, and in Fig. 5. For local features, there is no significant change in the performance for more number of orientations, whereas global feature shows better performance with the increase of number of orientations. The entire image used for global feature extraction has more pixel variations as compared to the pixel variations in the image patches used for local feature extraction. So, global feature is able to represent these variations more efficiently with the increase of number of orientations. In case of the local feature, few number of orientations are sufficient enough to represent the pixel variations present in the image patches. This finding is illustrated for global features in Fig. 6. Figure 6 shows the reconstructed cones image for 2, 4, 6 and 8 number of orientations. An image can be reconstructed more accurately with more number of orientations.

Table 3 Comparison (by CC) of the global and local features (both overlapping and non-overlapping regions) for different number of orientations
Fig. 5
figure 5

Comparison by (a) MSE; (b) SSI; (c) UQI of global and local features (both overlapping and non-overlapping regions) for different numbers of orientations

Fig. 6
figure 6

Image reconstructed using global feature for (a) 2; (b) 4; (c) 6; (d) 8 number of orientations

5.3 Different number of scales

The performance of Gabor features are also evaluated for different scales as shown in Tables 4 and 5. When the number of scale is 1, the performance of LGWF (overlapping regions) is comparable to the global features. On the other hand, LGWF (overlapping regions) performs better as compared to the global features when the number of scales is 2. Few number of scales are able to represent the pixel variations in the image patch used for local feature extraction. Hence, the error value remains almost same for different scales. However for global features, high frequency information is lost with the increase of number of scales. So, the image reconstructed using these low resolution images can produces an approximate original image. Hence, the more number of scales increases the error. This finding is illustrated in Fig. 7.

Table 4 Comparison of the global and local features (both overlapping and non-overlapping regions) for number of scales = 1
Table 5 Comparison of the global and local features (both overlapping and non-overlapping regions) for number of scales = 2
Fig. 7
figure 7

Image reconstructed using global feature for (a) 1; (b) 2; (c) 3 number of scales

5.4 Synthetic illumination changes

The performance of Gabor features are investigated for illumination changes. To incorporate synthetic illumination changes, left image is kept unaltered, while the intensity values of the pixels of the right image are altered. Illumination change may be global or local. Global illumination changes can further be classified as linear or non-linear. To evaluate the performance of these features under varying illumination conditions, the intensity values of the pixels of the right image are varied synthetically using the formula which is given by:

$$ \begin{array}{l} {I_{o}} = u\operatorname{int} 8\left( {255{{\left( {\frac{{{m_{f}}{I_{i}} + {a_{f}}}} {{255}}} \right)}^{{\gamma_{f}}}}} \right),{\kern 1pt} {\kern 1pt} {\kern 1pt} {m_{f}},{\gamma_{f}} >0 \end{array} $$
(16)

where, I i is the input image and I o is the synthetically varied image of I i . m f , a f and γ f are the multiplicative (gain change), additive (bias change) and gamma factors respectively [18]. In the above formula, multiplicative and additive factors represent a linear global change, whereas gamma factor denotes a non-linear global change. Additionally, local change is represented by using a vignetting function. Figure 8 shows different synthetic illumination changes applied to the Venus image. Figure 9, Tables 67 and 8 show the performance of Gabor features for different values of multiplicative, additive and gamma factors. Figure 10 and Table 9 show the results for local illumination variations. The above mentioned figures and tables show that these Gabor features are affected by illumination variations. This effect is because of the inherent properties of convolution operation. To establish our claim, an image is synthetically illuminated for m f =2. Figure 11 shows the comparison of the image reconstructed by using the features extracted from the synthetically varied image with the image reconstructed by using the features extracted from the original image. Figure 11a and d show the original and reconstructed images respectively, whereas Fig. 11b and e show the synthetically illuminated image and its corresponding reconstructed image respectively. Figure 11c shows the difference image between Fig. 11a and b, while Fig. 11f shows the difference image between Fig. 11d and e. These results show that the changes in the intensity values of the original image alter the extracted Gabor features, which finally affects the intensity values of the corresponding reconstructed image. Similar explanations can be given for the cases when an image is synthetically illuminated by considering the vignetting effect, additive and gamma factors (Fig. 10).

Fig. 8
figure 8

(a) input image; synthetically illuminated Venus image by (b) multiplicative factor; (c) additive factor; (d) gamma factor; and (e) vignetting effect

Fig. 9
figure 9

Comparison of features (global, local - both overlapping and non-overlapping regions) by MSE, SSI and UQI of all the features (global, local - both overlapping and non-overlapping regions) for synthetic illumination changes obtained by multiplicative, additive and gamma factors. First row - MSE, second row - SSI, and third row - UQI. First column - multiplicative factor, second column - additive factor, and third column - gamma factor

Fig. 10
figure 10

Comparison of MSE, SSI, and UQI of all the features (global, local - both overlapping and non-overlapping regions) for synthetic illumination change by vignetting effect. MSE, SSI, and UQI metric measures are shown from left to right

Fig. 11
figure 11

Effect of synthetic illumination variations by a multiplicative factor. (a) Original image; (b) original image synthetically illuminated; (c) difference of (a) and (b); (d) image reconstructed using (a); (e) image reconstructed using (b); (f) difference of (d) and (e)

Table 6 Comparison of correlation coefficients of all the features (global, local - both overlapping and non-overlapping regions) for synthetic illumination change by multiplicative factor
Table 7 Comparison of correlation coefficients of all the features (global, local - both overlapping and non-overlapping regions) for synthetic illumination change by additive factor
Table 8 Comparison of correlation coefficients of all the features (global, local - both overlapping and non-overlapping regions) for synthetic illumination change by gamma factor
Table 9 Comparison of correlation coefficients of all the features (global, local - both overlapping and non-overlapping regions) for synthetic radiometric change by vignetting effect
Table 10 Comparison of correlation coefficients for real radiometric change for different camera exposures
Table 11 Comparison of correlation coefficients for real radiometric change for different light sources

5.5 Real radiometric changes

Many multimedia applications need features which are robust to radiometric changes. One such application is finding a stereo correspondence. The images used so far for the performance evaluation of Gabor features are captured under the same lighting condition and the same camera settings. Hence, new dataset which was captured under different lighting conditions and different camera exposures are also used [6, 28]. This dataset is shown in Fig. 12. The change of camera exposure is a global transformation which is similar to the global brightness change. This effect is similar to gain change or multiplicative factor in synthetic illumination variations [7]. Different light sources produce many local radiometric variations in the captured images. The performance of Gabor features for exposure and lighting changes can be seen in Figs. 13 and 14. Quantitative evaluations of these effects are shown in Tables 10 and 11. So, it is observed that Gabor features obtained for real radiometric variations show almost similar characteristics as that of the Gabor features for synthetically illuminated variations. An input image for “Exposure a” which is used to extract the features, while the reference image which is used to evaluate the reconstructed image is taken for “Exposure b”. This is denoted as “a/b” in Fig. 13 and Table 10. The reconstructed image corresponds to the image taken for “Exposure a”. Similarly, an input image for “Lighting a” which is used to extract the features, while the reference image which is used to evaluate the reconstructed image is taken for “Lighting b”. This is denoted as “a/b” in Fig. 14 and Table 11. The reconstructed image corresponds to the image taken for “Lighting a”.

Fig. 12
figure 12

“Books” image for three different exposures and lighting conditions: (a) Exposure 1; (b) Exposure 2; (c) Exposure 3; (d) Lighting 1; (e) Lighting 2; and (f) Lighting 3

Fig. 13
figure 13

Comparison of MSE, SSI, and UQI of all the features (global and local - both overlapping and non-overlapping regions) for real radiometric change for different camera exposures. MSE, SSI, and UQI metric measures are shown from left to right

Fig. 14
figure 14

Comparison of MSE, SSI, and UQI of all the features (global and local - both overlapping and non-overlapping regions) for real radiometric change for different light sources. MSE, SSI, and UQI metric measures are shown from left to right

From all the above experimental results, it is concluded that the real part of the feature extracted from the overlapping regions represents the original image more efficiently than the imaginary part, and the real part of the feature gives almost similar performance as that of the magnitude information. Real Gabor filter extracts texture information, while imaginary Gabor filter extracts the edge information [12]. Hence, real Gabor filter is sufficient to represent an image. Additionally, it is observed that the local features extracted from the overlapping regions can represent an image more efficiently as compared to the features extracted from both global and non-overlapping regions. In the local feature extraction method from overlapping regions, the pixel for which the feature is extracted is given more weight as compared to its neighboring pixels by the Gabor function during the convolution operation. That is why the local features extracted from the overlapping regions perform better than the other two Gabor features.

5.6 Performance evaluation of Gabor features for stereo correspondence

Stereo correspondence is considered as one application to investigate the performance of three Gabor-based extracted features. As explained earlier, the additional information obtained in the form of disparity map from stereo correspondence may be used in many multimedia applications such as face and facial expression recognition. The efficacy of these features are evaluated from the computed disparity map [19]. For this, mean-square error is used for evaluating the estimated disparity map. Table 12 gives a quantitative comparison of all the three Gabor features in stereo correspondence.

Table 12 Gabor features applied for stereo correspondence

6 Conclusion

Gabor wavelet-based extracted features are used for number of computer vision and multimedia applications. Most of the well-established pattern recognition algorithms use magnitude information of Gabor wavelet for feature extraction. For this, information of both real and imaginary coefficients is needed. In this paper, it is validated that the real part of Gabor filter alone can represent an image more efficiently. To compute the real coefficients, only the real part of the Gabor filter bank needs to be stored in the memory. On the other hand, both the real and imaginary parts of Gabor filter bank need to be stored separately to compute the magnitude information. Additionally, the outputs obtained by the convolution operation with both real and imaginary parts of Gabor filter bank need to be stored separately to compute the magnitude information. But for computing the real coefficients, the outputs obtained by the convolution operation with the real part of the Gabor filter bank only need to be stored. That is why, memory requirement is reduced by half when only the real coefficients are used.

In earlier literatures, it is mentioned that an optimal performance of 2D Gabor filter can be obtained by using real part of the filter. But, there is no concrete experimental validations in this regard. But in our paper, an experimental evaluation using 2D Gabor wavelet suggests that the real coefficients of Gabor function is sufficient to represent an image in an efficient manner as compared to the imaginary kernel of a Gabor function and magnitude informations. The importance of real coefficients is also observed when three different Gabor features (GGWF and LGWF) are employed for stereo correspondence.

In this paper, the performances of three Gabor wavelet features namely GGWF, LGWF -for both overlapping and non-overlapping regions are evaluated. These comparisons are done by considering different window sizes, different number of orientations and different scales. Also, performance of these features is analyzed for radiometric changes. The metrics used for performance comparisons are MSE, CC, QI, and SSI. Experimental results show LGWF (overlapping regions) performs better as compared to the other two features. Additionally, it is shown that the real coefficients of a Gabor filter represent an image more accurately as compared to the imaginary coefficients.