Accepted Manuscript
Multi-resolution local Gabor wavelets binay patterns for gray-scale texture description Hadi Hadizadeh PII: DOI: Reference:
S0167-8655(15)00247-0 10.1016/j.patrec.2015.07.038 PATREC 6307
To appear in:
Pattern Recognition Letters
Received date: Accepted date:
23 April 2015 25 July 2015
Please cite this article as: Hadi Hadizadeh, Multi-resolution local Gabor wavelets binay patterns for gray-scale texture description, Pattern Recognition Letters (2015), doi: 10.1016/j.patrec.2015.07.038
This is a PDF file of an unedited manuscript that has been accepted for publication. As a service to our customers we are providing this early version of the manuscript. The manuscript will undergo copyediting, typesetting, and review of the resulting proof before it is published in its final form. Please note that during the production process errors may be discovered which could affect the content, and all legal disclaimers that apply to the journal pertain.
ACCEPTED MANUSCRIPT
CR IP T
1
AN US
Research Highlights
• In this letter, we present a rotation-invariant texture descriptor in a multi-resolution framework.
M
• The proposed method is robust to Gaussian noise, and it can be used for both noise-free and noisy texture classification.
AC
CE
PT
ED
• Experimental results on three well-known texture datasets indicate that the proposed method achieves high texture classification accuracy, especially in the presence of various levels of Gaussian noise.
ACCEPTED MANUSCRIPT 2
Pattern Recognition Letters journal homepage: www.elsevier.com
Multi-resolution local Gabor wavelets binay patterns for gray-scale texture description Hadi Hadizadeha,∗∗ of Engineering Science, Simon Fraser University
CR IP T
a School
ABSTRACT
M
AN US
In this letter an effective multi-resolution and rotation-invariant texture description approach is presented, which can be utilized in various computer vision and image processing tasks such as texture classification and texture segmentation. In the proposed method, a given gray-scale texture image is first processed by a bank of Gabor wavelets (filters) at different scales and orientations. The obtained filters’ responses are then further processed, and a set of local binary patterns called “Local Gabor Wavelets Binary Patterns” (LGWBPs) are computed by comparing the local filters’ outputs at different orientations with the global mean of filters’ outputs at the same orientations. The obtained patterns are then converted to a number of decimal rotation-invariant codes, and a histogram of the resultant codes at different scales is finally used as a texture feature vector. Experimental results on three popular texture datasets (Outex TC10, CUReT, and Brodatz) indicate that the proposed method achieves high texture classification accuracy, especially in the presense of various levels of Gaussian noise. c 2015 Elsevier Ltd. All rights reserved.
ED
1. Introduction
AC
CE
PT
Texture is ubiquitous in many natural images and plays an important role as a principle visual cue for a wide variety of image analysis applications such as image segmentation and image retrieval. Texture representation and classification is a fundamental task in computer vision, image processing, and pattern recognition, and it is widely used in many applications including medical image analysis, remote sensing, object recognition, content-based image retrieval, automatic visual inspection, and many more. Due to its importance, texture description and classification has been an active research field over several decades (Manjunath and Ma (1996); Ojala et al. (2002); Han and Ma (2007); Liao et al. (2009); Ren et al. (2013); Tan and Triggs (2010); Guo et al. (2010); Khellah (2011); Song et al. (2014); Liu et al. (2015); Hafiane et al. (2015); Zhu et al. (2015)). In the literature, several methods have been proposed for texture description and classification. Prominent methods include gray-level cooccurrence histograms (Haralick et al. (1973)), Markov Random Fields (Zhu et al. (1998)), fractal models (Kaplan (1999)), Gabor filter banks or wavelets ∗∗ Corresponding author. Address: School of Engineering Science, Simon Fraser University, Burnaby, BC, V5A 1S6, Canada e-mail:
[email protected] (Hadi Hadizadeh)
(Bovik et al. (1990); Han and Ma (2007)), and local binary patterns (LBP) (Ojala et al. (2002)), among them the Gabor filter banks and LBP have gained a lot of success and popularity. Especially, LBP has been very popular in recent years due to its computational simplicity and efficiency, and many variants of it have been developed by several researchers. In the LBP method, a binary code is computed for each local neighborhood in the image based on the difference between the gray level of pixels in the neighborhood and the gray level of the center pixel in the neighborhood. The occurrance histogram of all computed binary codes in a given image is then used as a texture descriptor. LBP is illumination invariant, and it can easily be extended to become rotation invariant as well. However, it is very sensitive to noise because if even one pixel in the neighborhood is affected by noise, the binary code of the neighborhood may change significantly. Unlike LBP, methods based on Gabor filter banks or Gabor wavelets are less sensitive to noise because the Gabor features are extracted in local regions covered by Gabor filters’ support, and so they can smooth over noise. For the same reason, similar to LBP, they are invariant to illumination. They also possess other desirable properties, which make them very appealing for robust texture description and classification (Kamarainen et al. (2006)). Inspired by the success of LBP and Gabor wavelets for
ACCEPTED MANUSCRIPT 3
2. Related Works
CE
PT
ED
M
As mentioned in Section 1, LBP is very sensitive to noise. Hence, several variants of the LBP method have been proposed to mitigate this problem. For example, in uniform LBP proposed in (Ojala et al. (2002)), the LBP codes are classified to uniform and non-uniform patterns, and all non-uniform patterns are put in a single bin of the LBP histogram. It was observed that noisy patterns are usually non-uniform, and so by histograming them into a single bin, their effect is reduced. However, this is not always the case for textures with irregular and complex patterns (Liao et al. (2009)). In the DLBP method proposed in (Liao et al. (2009)), the most frequently occuring patterns are selected as texture features, and it was shown that this method is robust to noise. In the extended noise-resistant LBP (ENRLBP) (Ren et al. (2013)), noisy non-uniform LBP patterns are corrected back to some possible uniform patterns. In the local ternary pattern (LTP) (Tan and Triggs (2010)), the gray level differences in local neighborhoods are encoded into codes with 3 values using a fixed threshold to make the method robust to noise. In the completed LBP (CLBP) (Guo et al. (2010)) the sign and magnitude components of local gray level differences along with the center pixel are encoded to obtain binary patterns using global thresholds. In the dominant neighborhood structure (DNS) method (Khellah (2011)), the similarity of an image patch is measured with its surrounding neighbors in a global manner, and this method was shown to be very robust to noise. Recently, a local noise-robust texture description method was proposed in (Song et al. (2014)) based on local contrast patterns (LCPs), which uses global measures for computing a set of different binary patterns. This method was shown to be very robust to noise
AC
CR IP T
as compared to several existing similar methods. Also, in a method called LSEP (He et al. (2013)), the local shearlet transform energy features were utilized in conjunction with LBPlike operators for rotation-invariant noisy-texture classification. In (Liu et al. (2015)), a robust rotation-invariant texture classification method was proposed based on fusing sorted random projections. This method represents images as distributions (signatures or histograms) of sorted random projections (SRP) features and learns a support vector machine (SVM) classifier with kernels based on selecting effective measures for comparing distributions, and using multiple kernel learning (MKL) as an effective method for combining the base kernels. The reported results show that this method outperforms 13 recent state-of-the-art methods on 8 popular texture databases. In (Zhu et al. (2015)), a noise-robust adaptive hybrid pattern (AHP) was proposed for noisy-texture analysis. In this method, the global texture spatial structure is encoded with the primitive texture microfeatures using an adaptive quantization algorithm. The reported results indicate that this method achieves state-of-the-art performance in noisy texture analysis and noisy face recognition. In (Hafiane et al. (2015)), an Adaptive Median Binary Pattern (AMBP) was proposed for texture description based on an adaptive analysis window of local patterns. The principal idea of AMBP is to convert a small local image patch to a binary pattern using an adaptive threshold selection method that switches the employed threshold between the central pixel value of the local neighborhood as used in LBP and the median of the local neighborhood, but within a variable-sized analysis window depending on the local microstructure of the texture. The reported results indicate that this method outperforms the best state-of-the-art methods, especially in the presence of impulse noise. In (Ryu et al. (2015)), a sorted consecutive LBP (scLBP) was proposed for texture classification. Unlike conventional LBP that encodes only binary patterns whose spatial transitions are not more than two, scLBP encodes all binary patterns with any number of spatial transition without corrupting rotation invariance. The results show that this method outperforms the conventional methods on three popular texture databases. It should be noted that a somewhat similar method to our method called BGP was proposed in (Zhang et al. (2012)). However, our proposed method differs with (Zhang et al. (2012)) from two main aspects: 1) The method in (Zhang et al. (2012)) uses a fixed threshold to obtain the binary patterns whereas our method uses adaptive and global thresholds. More specifically, in (Zhang et al. (2012)) the magnitude of Gabor filters’ responses are binarized based on their sign whereas in our proposed method the required thresholds are obtained based on the global mean of the relevant features computed from filters’ responses. 2) In (Zhang et al. (2012)) only the magnitude of even and odd Gabor filter responses are separately used to obtain the binary patterns while in our method in addition to the magnitude of Gabor filter responses, some other features such as a measure of local phase are also utilized.
AN US
texture description, in this letter we present a noise-robust and rotation-invariant texture descriptor that implements the concept of LBP within a Gabor wavelets framework. As mentioned earlier, LBP is sensitive to noise as it uses differences between individual pixel pairs. To make LBP less sensitive to noise, one way would be using differences between local regions instead of individual pixels. For this purpose, we propose to compute LBP-like features on the images filtered by Gabor wavelets (filters). More specifically, in the proposed method, we first utilize a Gabor wavelets filter bank to filter the input texture image at different resolutions and different orientations. We then compute several local binary patterns based on the obtained filter responses via global measures. We call the computed patterns, “Local Gabor Wavelets Binary Patterns” (LGWBPs). Experimental results indicate that the histogram of LGWBPs can be used as a proper noise-robust and rotationinvariant texture descriptor. The organization of this letter is as follows. We first review some of the notable related works in Section 2. We then briefly describe the concept of Gabor wavelets and introduce a method for designing Gabor wavelets in Section 3. After that, the proposed method is presented in Section 4. The experimental results are given in Section 5 followed by conclusions in Section 6.
ACCEPTED MANUSCRIPT 4 3. Gabor Wavelets
3.3. Gabor Wavelets Features
A 2-D Gabor function g(x, y) is a 2-D Gaussian function modulated by a complex exponential in the spatial domain, which can be written as (Manjunath and Ma (1996); Riaz et al. (2013); Dey and Samanta (2012)): g(x, y) =
1 x2 y 2 1 exp − + exp(2π jF x), (1) 2πσ x σy 2 σ2x σ2y
where σ x and σy are the spatial spread of the 2-D Gaussian function in the horizontal and vertical directions, respectively, and F is the spatial frequency of the complex exponential. The most appealing feature of the Gabor function is that in the spatial-frequency domain, this function is simply a Gaussian centered on the frequency of interest, i.e. F, as follows:
Since Gabor filters are complex, the response to such filters is also complex. Hence, to extract features from images filtered by Gabor filters, usually the magnitude, phase, or energy of the obtained responses at different scales and orientations is utilized (Manjunath and Ma (1996); Riaz et al. (2013); Dey and Samanta (2012); Han and Ma (2007)). For instance, in (Riaz et al. (2013)) and (Han and Ma (2007)), the mean and variance of Gabor filter responses are employed for scale- and rotation-invariant texture feature extraction. In (Dey and Samanta (2012)), the Gabor energy features at different scales and orientation are used for iris data indexing, in which Gabor energy features are calculated by summing up the square values of the magnitude of Gabor responses.
CR IP T
3.1. Gabor Functions and Wavelets
4. The Proposed Method
1 (u − F)2 v2 G(u, v) = exp − + 2 , 2 σ2u σv
(2)
M
AN US
where G(u, v) is the Fourier transform of g(x, y), σu = 1/2πσ x and σv = 1/2πσy . Gabor functions form a complete but nonorthogonal basis set. Hence, expanding an arbitrary signal using this basis provides a localized frequency description. In fact, a set of selfsimilar Gabor functions can be designed to perform a multiresolution and multidirectional analysis of a given 2-D signal. Such functions are generally referred to as Gabor wavelets, and they can be generated as described in (Kamarainen et al. (2006); Manjunath and Ma (1996); Dey and Samanta (2012)).
The proposed method consists of three steps: 1) filtering the input texture image with all filters in the designed Gabor wavelets, 2) computing the local Gabor wavelets binary patterns, and 3) generating a histogram based on the computed patterns. The details of each step are given as follows. In the sequel, all matrices are denoted by bold capital letters (e.g. G), all vectors are denoted by bold lower letters (e.g., g), and scalars are denoted by lower or capital letters (e.g., g or G). Also, the transpose of a matrix G is denoted by GT .
ED
3.2. Gabor wavelets Design
(a − 1)Fh √ (a + 1) 2 ln 2
AC
σu =
CE
PT
As mentioned earlier, the Gabor wavelets are nonorthogonal. Hence, there is redundant information in the filtered images by them. To reduce this redundancy, the filter design strategy proposed in (Manjunath and Ma (1996); Dey and Samanta (2012)) is used in this letter to ensure that the half-peak magnitude support of the filter responses in the frequency spectrum touch each other with no overlap. This yields the following formulas for computing σu and σv and thus σ x and σy :
σv = tan(
(3)
2σ2 (2 ln 2)2 σ2u − 2 π ) Fh − 2 ln( u ) 2 ln 2 − ,(4) 2K Fh Fh2 1
1
where a = (Fh /Fl ) S −1 , Fh and Fl denote the upper and lower center frequencies of interest, S is the total number of scales in the multiresolution decomposition, and m = 0, 1, · · · , S − 1. Using this strategy, we obtain K × S complex Gabor filters, each of which is composed of a real (even) component and an imaginary (odd) component. The odd components are zero mean but the mean of the even components should be set to zero in order to eliminate sensitivity of the filter response to absolute intensity changes.
4.1. Gabor Wavelets Features
Let I be an input gray scale texture image, and G s,θk be the complex Gabor filter at scale s (s = 1, · · · , S ) and orientation θk = kπ/K (k = 0, · · · , K − 1) in the spatial domain in the Gabor wavelets (filter bank) designed as in Section 3.2. Also, assume that the size of G s,θk is G × G, and the real (even) part and imaginary (odd) part of G s,θk are denoted by Ges,θk and Gos,θk , respectively. In this letter, we set S = 4, K = 8, and G = 11. Also, we set Fh = 0.4 and Fl = 0.05. These values are found experimentally based on measuring the overall texture classification accuracy on two texture datasets (Outex TC10 and CUReT) in several experiments with various parameter settings. In the first step of the proposed method, all possible G × G neighborhoods in I are first extracted. Let N(p, q) be the G × G neighborhood around the pixel at position (p, q) in I. Each Gabor filter in the filter bank is applied to each neighborhhood N(p, q) in I. This is done by multiplying the neighborhood by each Gabor filter in a point-wise manner, and then summing up all the obtained results, and considering the resultant value as the response of that specific filter to that neighborhood. More specifically, this process can be formulated as s,θk ,t r p,q = nTp,q gts,θk ,
(5)
where n p,q = vec(N(p, q)), gts,θk = vec(Gts,θk ), (t ∈ {e, o}), vec(.) is the vectorization operator, which vectorizes its input matrix argument by concatenating all columns of its input matrix, and s,θk ,t r p,q is the obtained response at position (p, q).
ACCEPTED MANUSCRIPT 5
s,θk Note that [r p,q |s = 1, · · · , S ; k = 0, · · · , K − 1] can be considered as a local texture feature vector for pixel at location (p, q), which describes the local texture within a neighborhood around the pixel at location (p, q).
a sj
=
K X
sgn(r sj (k)
k=1
s
− r¯ (k))2
k−1
(7)
,
ED
M
where sgn(x) is a sign function: sgn(x) = 1 if x ≥ 0; sgn(x) = 0 otherwise. Note that r¯ s (k) in (7) acts as a global threshold for the k-th orientation. Also, since in our proposed method K = 8, there are 256 different values for the binary code a sj . If the input texture image is rotated, the computed binary codes may change. In order to achieve rotation invariance, we adopt a similar strategy as used in (Ojala et al. (2002)) to obtain rotationinvariant binary codes a s,ri j as follows:
PT
s a s,ri j = max{ROR(a j , k)| k = 0, · · · , K − 1},
(8)
where ROR(a sj , k) circulary shifts the bits of number a sj , k times to the right, and subscript
AC
CE
the K-bit binary “ri” means rotation invariance. As shown in (Ojala et al. (2002)), there are 36 possible different rotation-invariant binary codes. We refer to the binary codes computed based on (8) as “Type 1 LGWBPs”. Note that the computation of this type of LGWBPs is similar to the way that is used to compute LBP but with two differences: First, in LBP, pixel values are directly used whereas here, Gabor filter magnitudes are used. Second, in LBP, each local neighborhood is compared with the gray level of the center pixel of the neighborhood while in Type 1 LGWBPs, each local neighborhood is compared with a global threshold rather than a local value. Hence, this type of LGWBPs is more robust to noise as compared to LBP. We now define the second type of LGWBPs proposed in this P letter. Let d sj = r sj − r¯ s and d¯ s = N1 Nj=1 d sj . Another binary code for the j-th neighborhood can now be computed as follows: b sj
=
K X k=1
sgn(d sj (k)
¯s
k−1
− d (k))2
.
s b s,ri j = max{ROR(b j , k)| k = 0, · · · , K − 1}.
(9)
(10)
The binary codes computed based on (10) are called “Type 2 LGWBPs” in this letter. This type of LGWBPs, considers the amount of the deviation of Gabor filter magnitudes from the mean magnitude of Gabor responses. Hence, it can revive the portion of the textural information that is lost during the computation of Type 1 LGWBPs. We next define the third type of LGWBPs based on the absolute difference between the real (even) part of Gabor responses and the imaginary (odd) part of Gabor responses as a measure of local phase information. Note that local phase conveys important information about the image structure (Kovesi (2003)). 0 ,e 0 ,o K−1 ,e K−1 ,o Let r s,e = [r s,θ , · · · , r s,θ ] and r s,o = [r s,θ , · · · , r s,θ ]. j j j j j j s,e s,o s Based on these two vectors, we define c j = |r j | − |r j | and P c¯ s = N1 Nj=1 c sj . Now, we compute the following code: c sj =
K X
sgn(c sj (k) − c¯ s (k))2k−1 .
AN US
4.2. Local Gabor wavelets Binary Patterns In the second step of the proposed method, the Gabor filter responses obtained in the first step are processed to obtain the so called “Local Gabor Wavelets Binary Patterns (LGWBP)”. In this letter, we propose to compute three different types of LGWBPs, which are described in this section. These patterns are then used in the third step of the proposed method for histogram representation. Suppose that the total number of G × G neighborhoods in I s,θK−1 0 is denoted by N. Let r sj = [r s,θ ] be the vector of j , · · · , rj the magnitude of Gabor responses for the j-th neighborhood, P and r¯ s = N1 Nj=1 r sj be the mean magnitude of Gabor responses of all neighborhoods in I. Each r sj is then binarized by bitwise comparison with the computed r¯ s . After that similar to the LBP approach (Ojala et al. (2002)), a binary code a sj is computed for the j-th neighborhood as follows:
The rotation-invariant version of (9) can be obtained as:
CR IP T
We now compute the magnitude of the Gabor filter responses as follows q s,θk ,e 2 s,θk ,o 2 s,θk r p,q = (r p,q ) + (r p,q ). (6)
k=1
(11)
The rotation-invariant version of (11) can be computed as: s c s,ri j = max{ROR(c j , k)| k = 0, · · · , K − 1}.
(12)
The binary codes computed based on (12) are called “Type 3 LGWBPs” in this letter. 4.3. Histogram Representation
Based on the rotation-invariant LGWBPs computed by (8), (10), and (12) for the whole input image, we can compute a histogram h, and use this histogram for texture classification and description. Let has be the histogram of all LGWBPs of type 1 at scale s, i.e. the histogram of all a s,ri j for j = 1, · · · , N. Also, let hbs be the histogram of all LGWBPs of type 2 at scale s s, i.e. the histogram of all b s,ri j for j = 1, · · · , N, and hc be the histogram of all LGWBPs of type 3 at scale s, i.e. the histogram of all c s,ri j for j = 1, · · · , N. The histogram h is then computed by concatenating these three histograms at different scales as follows: h = [h1a , · · · , hSa , h1b , · · · , hSb , h1c , · · · , hSc ].
(13)
In our experiments, we found that only the first scale for computing the histogram of the second and third types of LGWBPs is enough, especially in the presence of noise. Note that due to the high-frequency characteristic of noise, the first scale is more robust to noise as compared to other higher scales. Hence, in the proposed method we use the following shorter histogram of LGWBPs, instead: h = [h1a , h2a , · · · , hSa , h1b , h1c ]. We refer to (14) as the “LGWBP histogram” of I.
(14)
ACCEPTED MANUSCRIPT 6
∞ 70.21
30 65.00
15 40.78
10 31.28
5 14.84
77.98
74.27
52.24
35.63
16.33
76.22
71.09
49.14
34.90
18.70
86.01
81.15
59.19
43.15
20.26
88.32
84.79
62.53
45.55
22.63
92.33
87.94
66.95
47.50
20.57
94.54 78.46 99.12 99.37 83.37 82.87 97.58 99.19 99.52 99.57 99.48
90.26 73.21 95.10 96.93 76.77 75.81 88.33 90.52 97.17 97.18 97.30
82.05 64.21 90.49 93.54 74.04 73.59 77.34 75.57 92.76 92.56 94.12
59.75 84.38 90.63 71.04 71.54 68.98 64.82 90.11 89.90 92.65
50.00 48.86 65.42 75.05 60.99 64.69 44.74 52.22 76.62 74.48 81.14
M
5. Experiments
AN US
SNR LBP-riu2 (R = 2, P = 16) LBP-riu2 (R = 3, P = 24) LTP-riu2 (R = 2, P = 16) LTP-riu2 (R = 3, P = 24) CLBP-riu2 (R = 2, P = 16) CLBP-riu2 (R = 3, P = 24) LSEP BGP LCP-re (R = 4) LCP-re (R = 5) LCP-riu2 (R = 4) LCP-riu2 (R = 5) AHP AMBP scLBP SRP LGWBP
AC
CE
PT
ED
Since the main goal of this letter is to design a noiserobust texture descriptor, to evaluate the proposed texture descriptor, it is utilized in a noisy-texture classification experiment, and its performance is compared with the methods introduced in Section 2 on three well-known databases: Outex1 , CUReT2 , and Brodatz3 . More specifically, we compared the proposed method with the following methods: LBP, CLBP, LTP, LSEP, DNS, BGP, ENRLBP, LCP, AHP, AMBP, scLBP, and SRP. Note that to the best of our knowledge, LCP, AHP, AMBP, and SRP are the most recent methods for noisy-texture or robust texture classification. Other older methods such as DNS, LTP, CLBP, ENRLBP, and LSEP are also specifically designed for noisy-texture classification except for LBP, which here we consider it in the comparisons as a baseline conventional approach. Each texture image is converted to gray scale and contaminated with additive white Gaussian noise with zero mean and standard deviation determined by the signal-to-noise ratio (SNR). The nearest-neighborhood (NN) classifier with the chisquare distance χ2 is utilized for the classification task (Song et al. (2014); Hafiane et al. (2015)). For the Outex database, we use test suite Outex TC 00010 (TC10), which is designed for rotation invariance analysis. This 1 http://www.outex.oulu.fi/
2 http://www.robots.ox.ac.uk/svgg/research/texclass/index.html
3 http://www.ux.uis.no/
tranden/brodatz.html
test suite contains 24 texture classes and 20 samples per class at 9 different rotations (0◦ , 5◦ , 10◦ , 15◦ , 30◦ , 45◦ , 60◦ , 75◦ , and 90◦ ). The 24 × 20 images at angle 0◦ are used for training and the rest 24 × 20 × 8 images with other angles are used for testing.The CUReT database has 61 texture classes and 92 images per class. Following (Song et al. (2014)), 46 images per class are randomly selected from the CUReT database for training and the rest for testing. The classification accuracies for this database are averaged over 50 random training/testing splits. The Brodatz database is a collection of 24 texture samples, which each sample is partitioned into 25 subimages. For the Brodatz database, 13 images per class are randomly selected from the album for training and the rest for testing. The classification accuracies for this database are averaged over 50 random training/testing splits. In the experiments, each texture sample is normalized to have a mean intensity of 128 and a standard deviation of 20 (Song et al. (2014)). Each texture image was of size 128 × 128. For LBP, LTP and CLBP, the rotation invariant uniform patterns riu2 and uniform patterns u2 are adopted with two different parameter sets: (R, P) = (2, 16) and (R, P) = (3, 24) (P sampling neighbors on a circle of radius R) (Ojala et al. (2002)). The threshold in LTP is set to 5. For LCP-re and LCP-riu2, we set the radius of the mask window used in LCP to R = 4 or 5, where LCP-re is the reduced riu2 coding proposed in (Song et al. (2014)). For SRP, the number of training samples per class was set to 46 as proposed in (Liu et al. (2015)). For scLBP, 24 samples pixels were used in neighborhoods of radius 2. The parameters of all other methods are set to their proposed values in their corresponding paper to achieve the best possible results out of them. The classification results of various methods for different levels of Gaussian noise are shown in Table 1, 2, and 3 for the Outex, CUReT, and Brodatz databases, respectively. It should be noted that the results for (S NR = 30, 15, 10, 5) for LBP, LTP, CLBP, LSEP, ENRLBP, and LCP in these tables are adopted from the data presented in (Song et al. (2014)). Note that as we are interested in designing a noise-robust texture descriptor in this letter, it is interesting to compare the proposed method with other methods at low SNR values such as 5. As shown from the results in Table 1, on the Outex database, when there is no noise in the image, the SRP method achieves the best result with an accuracy of 99.57%, and the proposed method stands second with an accuracy of 99.48%, which is very close to SRP. However, as the noise level increases, the proposed method outperforms all other methods. For example, at S NR = 5, the top 3 performers are the proposed method, SRP, and scLBP, respectively. At such a high level of noise, the proposed method yields an accuracy of 81.14%, which is about 6% more than the accuracy of SRP, 4.5% more than scLBP, and it is about 65% more than the best accuracy of LBP-riu2, which is 16.33%. At this level of SNR, and on this database, the ranking of the compared methods from the best to the worst is as follows: LGWBP (81.14%), scLBP, LCP, SRP, AMBP, LSEP, BGP, AHP, CLBP, LTP, and LBP-riu2 (16.33%). From Table 2, it is observed that for CUReT, when there
CR IP T
Table 1. Classification accuracies (%) on Outex-TC10. In this table, S NR = ∞ corresponds to no-noise condition.
ACCEPTED MANUSCRIPT
AN US
CR IP T
7
M
Fig. 1. Two sample texture images from Outex TC10, and their corresponding LGWBP histograms: Type 1, Type 2, Type 3.
AC
CE
PT
ED
is no noise in the image, the top 4 performers are: AMBP, SRP, scLBP, and the proposed method, respectively. When S NR = 30, the proposed method ranks third after SRP, and scLBP. However, when SNR is decreased, the proposed method achieves the best results as compared to other methods. For instance, at S NR = 5, the proposed method achieves 90.11% accuracy, which is more than the accuracy of the next best performer (scLBP) by about 3.5%. At such a high level of Gaussian noise, the ranking of the compared methods on CUReT from the best to the worst is as follows: LGWBP (90.11%), scLBP, AHP, SRP, LCP, AMBP, LSEP, DNS, ENRLBP, CLBP, LTP, LBP, BGP (44.60%). From Table 3, it is seen that on the Brodatz database, LCP, scLBP, and the proposed method achieve 100% accuracy for S NR = ∞ (no noise condition). For S NR = 30 and S NR = 15 both LCP and the proposed method results in 100% accuracy. For S NR = 10, the proposed method gives 100% accuracy, and the next best result is 99.99%, which is for LCP. At S NR = 5, the top performer is the proposed method followed by LCP. These results indicate that on Brodatz, the best peforming methods are the proposed method followed by LCP. At S NR = 5, the ranking of the compared methods on Brodatz from the best to the worst is as follows: LGWBP (99.73%), LCP, ENRLBP, LTP, DNS, LSEP, AHP, scLBP, AMBP, SRP, LBP, CLBP, BGP (68.92%). Fig. 1 shows two sample texture images from Outex
TC10, with their corresponding histograms for LGWBP Type 1, Type 2, and Type 3. As seen from this figure, each type of LGWBP histogram helps discriminate between the two textures. It is interesting to see the effect and contribution of each type of the proposed LGWBP histograms on the texture classification accuracy of the proposed method. For this purpose, we repeated the experiments on the three databases for S NR = 5 under two cases. In the first case, only LGWBP Type 1 was employed while in the second case both LGWBP Type 1 and Type 2 were utilized. The resultant accuracy for these cases are shown in Table 4. As seen from these results, the fusion of the three types of the proposed LGWBP histograms yields higher texture classification accuracy as compared to the cases in which less than 3 types of LGWBP histograms are used. Two other visual examples are shown in Fig. 2. In this figure, two shape samples from MPEG-7 shape dataset4 are shown with their related LGWBP histograms for Type 1, 2, and 3. As seen from these examples, using different types of LGWBP histograms is beneficial for distinguishing between these two different shape images. The abovementioned results indicate that the proposed method can be utilized as a robust method for texture clas-
4 http://www.dabi.temple.edu/
shape/MPEG7/dataset.html
ACCEPTED MANUSCRIPT 8
30 66.14
15 58.74
10 53.86
5 42.90
75.73
72.38
65.85
60.71
48.94
81.22
78.99
71.70
66.60
60.84
84.98
81.47
73.91
67.80
54.95
79.33
75.80
68.43
62.50
52.14
84.11
80.31
72.94
67.85
56.33
85.57
82.05
76.20
71.54
60.84
87.64
84.62
77.80
71.76
59.91
89.43
86.34
79.23
73.48
61.24
90.12
87.18
79.23
73.63
61.81
80.13 88.32 88.45 91.23 97.01 97.31 92.72 99.44 98.11 99.37 97.66
78.22 83.03 83.55 87.58 93.35 94.30 90.12 93.34 95.07 95.12 94.51
63.45 80.00 77.67 83.45 90.55 92.22 89.44 90.12 92.06 92.66 92.87
55.12 77.80 73.76 88.13 90.28 87.63 89.61 91.23 91.78 92.07
44.60 71.60 64.90 72.08 81.70 85.00 86.22 81.21 86.57 85.29 90.11
CE
M
ED
sification, especially in the presence of different levels of Gaussian noise. The noise robustness feature of the proposed method is because of three reasons: First, due to the highfrequency characteristic of noise, LGWBPs computed in lower scales are less affected by noise. Hence, the histogram of LGWBPs in lower scales is more robust to noise, and that is the main idea behind using the shorter LGWBP histogram defined in (14). Also, the LGWBPs computed in the first scale occupy more bins in the shorter LGWBP histogram defined in (14) as compared to LGWBPs computed in higher scales. Hence, their contribution and effect in the classification stage is more than the contribution and effect of LGWBPs in higher scales. Second, in the proposed method, all LGWBPs are computed based on global thresholds (i.e. the global mean of filter responses at different orientations), which are less sensitive to noise as compared to local thresholds. Third, due to the spatial extent of Gabor filters, they can smooth over noise as several pixels in a neighborhood are contributed to determine the filter response at the center pixel of the neighborhood.
AC
SNR LBP-riu2 (R = 2, P = 16) LBP-riu2 (R = 3, P = 24) LBP-u2 (R = 2, P = 16) LBP-u2 (R = 3, P = 24) LTP-riu2 (R = 2, P = 16) LTP-riu2 (R = 3, P = 24) LTP-u2 (R = 2,P = 16) LTP-u2 (R = 3,P = 24) CLBP-riu2 (R = 2,P = 16) CLBP-riu2 (R = 3,P = 24) BGP DNS ENRLBP LSEP LCP-riu2 (R = 4) LCP-riu2 (R = 5) AHP AMBP scLBP SRP LGWBP
∞ 99.98
30 99.94
15 99.63
10 99.44
5 96.22
98.01
97.77
97.76
96.35
87.92
99.80
99.75
99.61
99.38
97.26
99.82
99.78
99.63
99.49
93.87
99.45
99.33
99.02
97.88
94.50
99.56
99.45
98.84
98.33
93.33
99.99
99.97
99.97
99.67
99.40
99.90
99.85
99.73
99.74
96.56
99.97
99.94
99.63
99.44
96.22
99.83
99.81
99.22
98.95
96.92
90.11 99.74 99.98 99.86 100 99.99 99.80 99.79 100 99.87 100
89.78 99.62 99.97 99.84 100 99.98 99.77 99.66 99.90 99.79 100
86.45 99.69 99.74 99.81 100 99.85 99.63 99.28 99.78 99.58 100
82.22 99.38 99.70 99.99 99.85 99.14 98.82 98.80 99.01 100
68.92 99.23 99.60 98.95 99.65 99.58 98.56 98.35 98.45 98.10 99.73
AN US
∞ 70.46
PT
SNR LBP-riu2 (R = 2, P = 16) LBP-riu2 (R = 3, P = 24) LBP-u2 (R = 2, P = 16) LBP-u2 (R = 3, P = 24) LTP-riu2 (R = 2, P = 16) LTP-riu2 (R = 3, P = 24) LTP-u2 (R = 2,P = 16) LTP-u2 (R = 3,P = 24) CLBP-riu2 (R = 2,P = 16) CLBP-riu2 (R = 3,P = 24) BGP DNS ENRLBP LSEP LCP-riu2 (R = 4) LCP-riu2 (R = 5) AHP AMBP scLBP SRP LGWBP
Table 3. Classification accuracies (%) on Brodatz. In this table, S NR = ∞ corresponds to no-noise condition.
CR IP T
Table 2. Classification accuracies (%) on CUReT. In this table, S NR = ∞ corresponds to no-noise condition.
6. Conclusions In this letter, a noise-robust and rotation-invariant texture descriptor is presented for texture classification. The proposed method is implemented within a multi-resolution Gabor wavelets framework in which several local patterns called local Gabor wavelets binary patterns (LGWBPs) are computed based on some global thresholds. The histogram of the computed LGWBPs is used as a texture descriptor. Extensive experimental results on three well-known databases (Outex TC10, CUReT, and Brodatz) indicate that the proposed method can be used as an effective texture descriptor, especially in the presence of various levels of Gaussian noise. References Bovik, A.C., Clark, M., Geisler, W.S., 1990. Multichannel texture analysis using localized spatial filters. IEEE Trans. Pattern Anal. Machine Intell. 12, 55–73. Dey, S., Samanta, D., 2012. Iris data indexing method using gabor energy features. IEEE Trans. Infor. Forens. Secur. 7, 1192–1203.
ACCEPTED MANUSCRIPT
AN US
CR IP T
9
M
Fig. 2. Two sample shape images from MPEG-7, and their corresponding LGWBP histograms: Type 1, Type 2, Type 3.
Outex 52.74 71.12 81.14
CUReT 58.43 82.28 90.11
PT
LGWBP Types Type 1 Type 1 + Type 2 Type 1 + Type 2 + Type 3
ED
Table 4. Classification accuracies (%) on Outex-TC10, CUReT, and Brodatz using different types of LGWBP histograms at S NR = 5.
Brodatz 68.64 83.76 99.88
AC
CE
Guo, Z., Zhang, L., Zhang, D., 2010. A completed modeling of local binary pattern operator for texture classification. IEEE Trans. Image Process. 19, 1657–1663. Hafiane, A., Palaniappan, K., Seetharaman, G., 2015. Joint adaptive median binary patterns for texture classification. Pattern Recognition (In Press) . Han, J., Ma, K.K., 2007. Rotation-invariant and scale-invariant gabor features for texture image retrieval. Image and Vision Computing 25, 1474–1481. Haralick, R.M., Shanmugam, K., Dinstein, I., 1973. Textural features for image classification. IEEE Trans. Systems, Man, and Cybernetics 3, 610–621. He, J., Ji, H., Yang, X., 2013. Rotation invariant texture descriptor using local shearlet-based energy histograms. IEEE Signal Process. Letters 20, 905– 908. Kamarainen, J.K., Kyrki, V., Klviinen, H., 2006. Invariance properties of gabor filter-based features-overview and applications. IEEE Trans. Image Process. 15, 1088–1099. Kaplan, L.M., 1999. Extend fractal analysis for texture classification and segmentation. IEEE Trans. Image Processing 8, 1572–1585. Khellah, F., 2011. Texture classification using dominant neighborhood structure. IEEE Trans. Image Process. 20, 3270–3279. Kovesi, P., 2003. Phase congruency detects corners and edges. The Australian Pattern Recognition Society Conference , 309–318. Liao, S., Law, M., Chung, A., 2009. Dominant local binary patterns for texture
classification. IEEE Trans. Image Process. 18, 1107–1118. Liu, L., Fieguth, P.W., Hu, D., Wei, Y., Kuang, G., 2015. Fusing sorted random projections for robust texture and material classification. IEEE Trans. Circuits and Syst. for Video Tech. 25, 905–908. Manjunath, B.S., Ma, W.Y., 1996. Texture features for browsing and retrieval of image data. IEEE Trans. on Pattern Anal. and Machine Intelligence 18, 837–842. Ojala, T., Pietikainen, M., Maenpaa, T., 2002. Multiresolution gray-scale and rotation invariant texture classification with local binary patterns. IEEE Trans. on Pattern Anal. and Machine Intelligence 24, 971–987. Ren, J., Jiang, X., Yuan, J., 2013. Noise-resistant local binary pattern with an embedded error-correction mechanism. IEEE Trans. Image Process. 22, 4049–4060. Riaz, F., Hassan, A., Rehman, S., Qamar, U., 2013. Texture classification using rotation- and scale-invariant gabor texture features. IEEE Signal Process. Letters 20, 607–610. Ryu, J., Hong, S., Yang, H.S., 2015. Sorted consecutive local binary pattern for texture classification. IEEE Trans. Image Process. 24, 2254–2265. Song, T., Meng, F., Wu, Q., Luo, B., Zeng, B., Gabbouj, M., 2014. Noiserobust texture description using local contrast patterns via global measures. IEEE Signal Process. Letters 21, 93–96. Tan, X., Triggs, B., 2010. Enhanced local texture feature sets for face recognition under difficult lighting conditions. IEEE Trans. Image Process. 19, 1635–1650. Zhang, L., Zhou, Z., Li, H., 2012. Binary gabor pattern: An efficient and robust descriptor for texture classification, pp. 81–84. Zhu, S.C., Wu, Y., Mumfors, D., 1998. Filters, random fields and maximum entropy (frame): Towards a unified theory for texture modeling. International Journal of Computer Vision 27, 107–126. Zhu, Z., You, X., Chen, C.L.P., Tao, D., Ou, W., Jiang, X., 2015. An adaptive hybrid pattern for noise-robust texture analysis. Pattern Recognition 48, 2592–2608.