01000000 are uniform as both consist of 2 transitions,
while 00101000 and 00011010 are non-uniform as
they contain 4 transitions. In practice, this is imple-
mented using a lookup table of elements where the
table maps the non-uniform patterns into a single bin
and all others separately. For P neighbours, the num-
ber of uniform LBP patterns is given by P(P − 1)+ 3.
The LBP operator takes the difference of the cen-
tral pixel with the neighbouring pixels and combines
the signs of these differences using unique weights.
The order of the weights is fixed in the circular neigh-
bourhood, i.e. the weight corresponding to g
0
is al-
ways 1 and so on, as it is shown in Fig. 1. If the im-
age undergoes a rotation, the arrangement of the pixel
around the center undergoes a shift. Since the order of
the weights is fixed, the LBP computed on the rotated
images is unable to deal with the rotation changes.
Thus, even for a simple image rotation the LBP oper-
ator provide very different values. Fig. 2 shows the
effect of rotation on the LBP operator. In this illus-
tration LBP is computed at some location in image
and on a rotated version of the same image. As image
is rotated counter-clockwise by 90
0
, the neighbours
around each pixel also undergo a counter-clockwise
rotation of the same angle as shown in Fig. 2(b). The
pixels in the circular neighbourhood are thresholded
with respect to the central pixel and those above the
threshold are shown in red color in Fig. 2(c). The
weights corresponding to these pixel values are also
highlighted in red color in Fig. 2(d). The thresholded
pixels and weights in both images correspond to very
different locations and when summed up this results
in distinct output values. It is due to the fact that the
arrangement of the weights in LBP does not depend
on the values of the neighbours. In order to overcome
this problem we propose to adaptively select the ar-
rangement of the weights based on the values of pix-
els in the neighbourhood.
3 TEXTURE CLASSIFICATION
USING RLBP
In this section we present the proposed approach for
the task of texture classification. First, we intro-
duce RLBP operator obtained by circularly shifting
the weights of LBP operator. Further, the intrin-
sic structure of the patterns is utilized by incorporat-
ing the principle of uniform patterns to generate uni-
form RLBP (uRLBP). Finally, two classifiers (nearest
neighbour (NN) and support vector machine (SVM))
are discussed along with their choice of parameters.
3.1 Rotated Local Binary Pattern
(RLBP)
LBP only considers the signs of the differences to
compute the final descriptor. The information related
to the magnitude of the differences is completely ig-
nored. The magnitude provides a complimentary in-
formation that has been utilized (Guo et al., 2010a)
to increase the discriminative power of the operator.
Especially in the neighbourhood with strong edges
the magnitude of the differences can provide an im-
portant information. Here we utilize the magnitude
of the difference to find the dominant direction in a
neighbourhood. The dominant direction is defined as
the index in the circular neighbourhood for which the
difference is maximum. As an image undergoes a ro-
tation the dominant direction in a neighbourhood also
undergoes the rotation by the same angle. In the pro-
posed descriptor the dominant direction is set as the
reference and the weights for the neighbourhood are
arranged with respect to it.
In order to make the LBP invariant to rotation we
circularly shift the weights according to the dominant
direction. The dominant direction (D) in a neighbour-
hood is the index of neighbour whose difference to
the central pixel is maximum; it is defined as
D = argmax
p∈(0,1...P−1)
|g
p
− g
c
|. (3)
The rotation of neighbourhood with respect to its cen-
ter shifts the direction D by the same angle. For ex-
ample, if we consider a neighbourhood [23 25 28;
167 35 31; 56 67 72], after the thresholding its bi-
nary code is [01111000], the index of D is 4 (shown
in bold) corresponding to the pixel value 167 . If the
image is rotated by 45
0
counter-clockwise, then the
neighbourhood also rotates by the same angle and the
binary code shifts to [00111100]. D index still cor-
responds to the same value (167) but it shifts by one
step. However, the circular arrangement of the pix-
els in the neighbourhood remains the same with re-
spect to the direction D. Therefore the lowest weight
is associated with the index corresponding to D and is
subsequently increased in the counter-clockwise di-
rection.
Since the dominant direction is taken as the ref-
erence in the circular neighbourhood, the weights are
assigned with respect to it. Thus the RLBP operator
is defined as
RLBP
R,P
=
P−1
∑
p=0
s(g
p
− g
c
) · 2
mod(p−D,P)
, (4)
where mod indicates the modulus operation. In the
above definition the weight term 2
mod(p−D,P)
depends
RotatedLocalBinaryPattern(RLBP)-RotationInvariantTextureDescriptor
499