Completed Local Ternary Pattern for Rotation Invariant Texture Classification

Despite the fact that the two texture descriptors, the completed modeling of Local Binary Pattern (CLBP) and the Completed Local Binary Count (CLBC), have achieved a remarkable accuracy for invariant rotation texture classification, they inherit some Local Binary Pattern (LBP) drawbacks. The LBP is sensitive to noise, and different patterns of LBP may be classified into the same class that reduces its discriminating property. Although, the Local Ternary Pattern (LTP) is proposed to be more robust to noise than LBP, however, the latter's weakness may appear with the LTP as well as with LBP. In this paper, a novel completed modeling of the Local Ternary Pattern (LTP) operator is proposed to overcome both LBP drawbacks, and an associated completed Local Ternary Pattern (CLTP) scheme is developed for rotation invariant texture classification. The experimental results using four different texture databases show that the proposed CLTP achieved an impressive classification accuracy as compared to the CLBP and CLBC descriptors.


Introduction
Nowadays, texture analysis and classification have become one of the important areas of computer vision and image processing. They play a vital role in many applications such as visual object recognition and detection [1,2], human detector [3], object tracking [4], pedestrian classification [5], image retrieval [6,7], and face recognition [8,9].
Currently, many textures feature extraction algorithms that have been proposed to achieve a good texture classification. Most of these algorithms are focusing on how to extract distinctive texture features that are robust to noise, rotation, and illumination variance. These algorithms can be classified into three categories [10]. The first category is the statistical methods such as polar plots and polarograms [11], texture edge statistics on polar plots [12], moment invariants [13], and feature distribution method [14]. The second category is the model based methods such as simultaneous autoregressive model (SAR) [15], Markov model [16], and steerable pyramid [17]. The third category is the structural methods such as topological texture descriptors [18], invariant histogram [19], and morphological decomposition [20]. All of these algorithms as well as many other algorithms are reviewed briefly in many review papers [10,21,22].
Local Binary Pattern (LBP) operator was proposed by Ojala et al. [23] for rotation invariant texture classification. It has been modified and adapted for several applications such as face recognition [8,9] and image retrieval [7]. The LBP extraction algorithm contains two main steps, that is, the thresholding step and the encoding step. This is shown in Figure 1. In the thresholding step, all the neighboring pixel values in each pattern are compared with the value of their central pixel of the pattern to convert their values to binary values (0 or 1). This step helps to get the information about the local binary differences. Then in the encoding step, the binary numbers obtained from the thresholding step are encoded and converted into a decimal number to characterize a structural pattern. In the beginning, Ojala et al. [24] represented the texture image using textons histogram by calculating the absolute difference between the gray level of the center pixel of a specific local pattern and its neighbors. Then the authors proposed the LBP operator by using the sign of the differences between the gray level of the center pixel and its neighbors of the local pattern instead of magnitude [23]. LBP proposed by Ojala et al. [23] has become the research direction for many computer vision researchers. This is because it is able to distinguish the microstructures such as edges, lines, and spots. The researchers aim to increase the discriminating property of the texture feature extraction to achieve impressive rotation invariant texture classification. So, many of the variants of the LBP have been suggested and proposed for rotation invariant texture classification. The center-symmetric Local Binary Pattern (CS-LBP) proposed by Heikkil et al. [25] is an example for that. Unlike the LBP, they compared center-symmetric pairs of pixels to get the encoded binary values. Liao et al. [26] proposed Dominant LBP (DLBP) by selecting the dominant patterns from all rotation invariant patterns. Tan and Triggs [27] presented a new texture operator which is more robust to noise. They encoded the neighbor pixel values into 3-valued codes (−1, 0, 1) instead of 2-valued codes (0, 1) by adding a user threshold. This operator is known as a Local Ternary Pattern (LTP). Guo et al. [28] combined the sign and magnitude differences of each pattern with all central gray level values of all patterns to propose a completed modeling of LBP, called completed LBP (CLBP). Khellah [29] proposed a new method for texture classification, which combines Dominant Neighborhood Structure (DNS) and traditional LBP. Zhao et al. [30] proposed a novel texture descriptor, called Local Binary Count (CLBC). They used the thresholding step such as in LBP. Then they discarded the structural information from the LBP operator by counting the number of value 1's in the binary neighbor sets instead of encoding them. Although, some LBP variant descriptors such as CLBP and CLBC have achieved remarkable classification accuracy, they inherit the LBP weaknesses. The LBP suffers from two main weaknesses. It is sensitive to noise and sometimes may classify two or more different patterns falsely to the same class as shown in Figures 2 and 3. The LTP descriptor is more robust to noise than LBP. However, the latter weakness may appear with the LTP as well as with LBP.
In this paper, we are enhancing the LTP texture descriptor to increase its discriminating property by presenting a completed modeling for LTP operator and proposing an associated completed Local Ternary Pattern (CLTP). The experimental results illustrate that CLTP is more robust to noise, rotation, and illumination variance, and it achieves higher texture classification rates than CLBP and CLBC. The rest of this paper is organized as follows. Section 2 briefly reviews the LBP, LTP, CLBP, and CLBC. Section 3 presents the new CLTP scheme. Then, in Section 4, the experimental results of different texture databases are reported and discussed. Finally, Section 5 concludes the paper.

Related Work
In this section, a brief review of the LBP, LTP, CLBP, and CLBC is provided.

Brief Review of LBP.
As shown in Figure 1, the LBP operator is computed for the center pixel by comparing the intensity value of it with the intensity values of its neighbors. This process can be expressed mathematically as follows: where and ( = 0, . . . , − 1) denote the gray value of the center pixel and gray value of the neighbor pixel on a circle of radius , respectively, and is the number of the neighbors. Bilinear interpolation estimation method is used to estimate the neighbors that do not lie exactly in the center of the pixels. LBP ri , and LBP riu2 , are rotation invariant of LBP and uniform rotation invariant of LBP, respectively. These two enhanced LBP operators are proposed by Ojala et al. [23].
After completing the encoding step for any LBP operators, that is, LBP ri , and LBP riu2 , , the histogram can be created based on the following equation: where is the maximal LBP pattern value. [27] presented a new texture operator which is more robust to noise. The LBP is extended to 3-valued codes (−1, 0, 1). Figure 4 shows an example of LTP operator. The mathematical expression of the LTP can be described as follows:

Brief Review of LTP. Tan and Triggs
The Scientific World Journal where , , , and are defined before in (1) and denotes the user threshold. After thresholding step, the upper pattern and lower pattern are constructed and coded as shown in Figure 4. The LTP operator is the concatenation of the code of the upper pattern and the lower pattern.

Brief Review of Completed LBP (CLBP).
The completed LBP (CLBP) descriptor was proposed by Guo et al. [28] in order to improve the performance of LBP descriptor. As shown in Figure 5, the image local difference is decomposed into two complementary components: the sign component and the magnitude component . Consider the following: Then, the is used to build the CLBP-Sign (CLBP S), whereas the is used to build CLBP-magnitude (CLBP M). The CLBP S and CLBP M are described mathematically as follows: where , , , and are defined before in (1) and in (6) denotes the mean value of in the whole image. The CLBP S is equal to LBP, whereas the CLBP M measures the local variance of magnitude. Furthermore, Guo et al. used the value of the gray level of each pattern to construct a new operator, called CLBP-Center (CLBP C). The CLBP C can be described mathematically as follows: where denotes the gray value of the center pixel and the is the average gray level of the whole image. Guo et al. combined their operators into joint or hybrid distributions and achieved a remarkable texture classification accuracy [28].

Brief Review of Completed LBC (CLBC). The Local
Binary Count (LBC) was proposed by Zhao et al. [30].
Unlike the LBP and all its variants, the authors just counted the number of value 1's of the thresholding step instead of encoding them. The LBC can be described mathematically as follows: Similar to CLBP, the authors [30] extended the LBC to completed LBC (CLBC). The CLBC S, CLBC M, and CLBC C were also combined into joint or hybrid distributions and they were used for rotation invariant texture classification. The CLBC M and CLBC C can be described mathematically as follows: where , , , and are defined in (1), (6), and (7). An example of LBC is shown in Figure 6. In [28], the rotation invariant LBP (LBP riu2 , ) is used to construct the CLBP riu2 , . The CLBP riu2 , is simplified in this paper as CLBP , as well as the proposed CLTP operator.

Completed Local Ternary Pattern (CLTP)
In this section, we propose the framework of CLTP. Similar to CLBP [28], the LTP is extended to completed modeling LTP (CLTP). As mentioned before, the LTP is more robust to noise than LBP. Furthermore, construct the associated completed Local Ternary Pattern that will help to enhance and increase its the discriminating property. The mathematical model of LTP is shown in (3). In CLTP, local difference of the image is decomposed into two sign complementary components and two magnitude complementary components as follows: where , , and are defined before in (1) and (3).
where , , , , and in (11) are defined before in (3). Similar to CLTP S , , the CLTP M , is built using the two magnitude complementary components upper and lower as follows: where , , , , and in (13) and (14) where upper = + , lower = − and is the average gray level of the whole image. The proposed CLTP operators are combined into joint or hybrid distributions to build the final operator histogram like the CLBP and CLBC [28,30], respectively. In the CLTP, the operators of the same type of pattern; that is, the upper and the lower pattern are combined first into joint or hybrid distributions. Then their results are concatenated to build the final operator histogram. That mean number of bins of CLTP is double in size than the number of bins of CLBP.

Experiments and Discussion
In this section, a series of experiments are performed to evaluate the proposed CLTP. Four large and comprehensive texture databases are used in these experiments. They are the Outex database [31], Columbia-Utrecht Reflection and Texture (CUReT) database [32], UIUC database [33], and XU HR database [34]. Empirically, the threshold value is set to 5.
The Scientific World Journal 5 4.1. Dissimilarity Measuring Framework. Several metrics are proposed for measuring the dissimilarity between two histograms such as log-likelihood ratio, histogram intersection, and chi-square statistic. Similar to [28,30], the chi-square statistic is used in this brief. The 2 distance between two histograms = ℎ and = where ( = 1, 2, 3, . . . ) can be mathematically described as follows: Furthermore, the nearest neighborhood classifier is used for classification in all experiments in this paper.  [31]. These suites were collected under different illumination, rotation, and scaling conditions. Outex TC 00010 (TC10) and Outex TC 00012 (TC12) are considered as famous two test suites in Outex datasets. These two suites have the same 24 classes of textures, which were collected under three different illuminates ("horizon, " "inca, " and "t184") and nine different rotation angles (0 ∘ , 5 ∘ , 10 ∘ , 15 ∘ , 30 ∘ , 45 ∘ , 60 ∘ , 75 ∘ , and 90 ∘ ). For each illumination and rotation situation, each class has 20 nonoverlapping texture samples with size of 128 × 128. Examples of Outex images are shown in Figure 7. For TC10, 480 images are used as training data. These are the images of "inca" illumination condition and "0 ∘ " angle rotation, whereas the images under the remaining rotation angles and "inca" illumination condition are used as testing data, that is, 3840 images. The training data in case of TC12 is the same as TC10, while all images under "t184" or "horizon" illumination conditions are used as testing data, that is, 4320 images for "t184" and 4320 images for "horizon. " The experimental results of TC10, TC12 (t184), and TC12 (horizon) are shown in Table 1. From Table 1, the following points can be observed. Firstly, the CLTP S, CLTP M, CLTP M/C, and CLTP S M/C performed better than the similar CLBP and CLBC types operators. Secondly, the CLTP S and CLTP M showed really great discrimination capability than CLBP S and CLBP M, and CLBC S and CLBC M, respectively, where the accuracy difference exceeded 10% in some cases. Thirdly, the CLTP S/M worked well with TC10 and TC12 for ( = 1 and = 8), with TC12 for ( = 2 and = 16) and only with TC12 under "t184" illumination condition for ( = 3 and = 24). Finally, the CLTP S/M/C achieved the best classification accuracy with TC10 and TC12 for ( = 2 and = 16) and TC10 and TC12 under "t184" illumination condition for ( = 3 and = 24).

Experimental Results on CUReT
Database. The CUReT dataset (http://www.robots.ox.ac.uk/∼vgg/research/texclass/ index.html) has 61 texture classes. In each class, there are 205 images subjected to different illumination and viewpoints conditions [32]. The images in each class have different viewing angle shots. Out of 250 images in each class, there are 118 image shots whose viewing angles are lesser than 60 ∘ . Examples of CUReT images are shown in Figure 8. From these types of images, only 92 images are selected after converting to gray scale and cropping to 200 × 200. In each class, images from 92 are used as training data, while the remaining (92 − ) are used as testing data. The final classification accuracy is the average percentage over a hundred random splits. The CUReT average classification for = (6,12,23,46) is shown in Table 2. It is easier to note that CLTP has better performance than CLBP and CLBC with the CUReT database. Except CLTP S/M/C, all CLTP operators are achieving higher classification rates than other CLBP and CLBC for all cases of images and at every radius. The CLTP S/M/C achieved the best classification rates for all training images at radius 3, for 6, 23, and 64 training images at radius 2 and for 6 training images only at radius 1, while at radius 1, the CLBP S/M/C achieved the best classification rates for 12, 23, and 64 training images and for 12 training images at radius 2.  Figure 9. In each class, images from 40 are used as training data, while the remaining (40 − ) are used as testing data. The final classification accuracy is the average percentage over a hundred random splits. The UIUC average classification for = (5,10,15,20) is shown in Table 3. Except in case of CLTP S/M/C, all CLTP operators achieved a higher performance than CLBP and CLBC operators for all number of training images at radiuses 1, 2, and 3. The CLTP S/M/C outperformed the CLBP S/M/C and CLBC S/M/C for all number of training images when = 3, = 24, and = 2, = 16. On the other hand, the CLBC S/M/C is the best one for small number of , that is, 5 and 10; CLBP S/M/C is the best one for = 20 and the CLTP S/M/C is the best one for = 15.

Experimental
Results on XU-HR Database. The XU HR database has 25 classes with 40 high resolution images (1280× 960) in each class. Examples of XU-HR images are shown in Figure 10. In each class, images from 40 are used as training data, while the remaining (40 − ) are used as testing data. The final classification accuracy is the average percentage over a hundred random splits. The XU HR average classification for = (5,10,15,20) is shown in Table 4. In XU HR database, the CLTP achieved higher classification rates than CLBP for all training images with all types of radiuses. The CLTP S/M/C achieved an impressive classification rate reaching 99% when = 20 at ( = 3, = 24). We compared this database only with CLBP since HU HR results using CLBC are not available in [30].

Conclusion
To overcome some drawbacks of LBP, an existing LTP operator is extended to build a new texture operator, defined as completed Local Ternary Pattern. The proposed associated 6 The Scientific World Journal       completed Local Ternary Pattern (CLTP) scheme is evaluated using four challenging texture databases for rotation invariant texture classification. The experimental results in this paper demonstrate the superiority of the proposed CLTP against the new existing texture operators, that is, CLBP and CLBC. This is because the proposed CLTP is insensitive to noise and has a high discriminating property that leads to achieve impressive classification accuracy rates.