Face Sketch Recognition Using Local Invariant Features

0 downloads 0 Views 955KB Size Report
and tuned to extract robust and discriminative features. Keywords—Face Sketch, Scale Invariant Feature Transform. (SIFT), Local Binary Patterns (LBP), Linear ...
Face Sketch Recognition Using Local Invariant Features Alaa Tharwat1,2,5 , Hani Mahdi2 , Adel El Hennawy2 , Aboul Ella Hassanien3,4,5 1

Faculty of Engineering, Suez Canal University, Ismailia, Egypt 2 Faculty of Engineering, Ain Shams University, Cairo, Egypt 3 Faculty of Computers & Information, Cairo University, Cairo, Egypt 4 Faculty of Computers and Information, Beni Suef University - Egypt 5 Scientific Research Group in Egypt (SRGE) http://www.egyptscience.net Abstract—Face sketch recognition is one of the recent biometrics, which is used to identify criminals. In this paper, a proposed model is used to identify face sketch images based on local invariant features. In this model, two local invariant feature extraction methods, namely, Scale Invariant Feature Transform (SIFT) and Local Binary Patterns (LBP) are used to extract local features from photos and sketches. Minimum distance and Support Vector Machine (SVM) classifiers are used to match the features of an unknown sketch with photos. Due to high dimensional features, Direct Linear Discriminant Analysis (Direct-LDA) is used. CHUK face sketch database images is used in our experiments. The experimental results show that SIFT method is robust and it extracts discriminative features than LBP. Moreover, different parameters of SIFT and LBP are discussed and tuned to extract robust and discriminative features. Keywords—Face Sketch, Scale Invariant Feature Transform (SIFT), Local Binary Patterns (LBP), Linear Discriminant analysis (LDA), Direct-LDA.

I.

I NTRODUCTION

Identifying humans are essential in different applications. Biometrics method is one of the methods that are used to increase the security and accuracy of identification systems by measuring and analyzing physiological characteristics, e.g. face, fingerprint, and iris, and behavioral characteristics, e.g. signature, gait, and keystrokes, to identify individuals. Different biometric methods have different weak points. Fingerprints, iris, and palm prints need the people to interact cooperatively with sensors. On the other hand, this problem is solved if face, ear, or gait biometrics is used, which is more convenient and allows remote recognition. However, face biometrics are affected by expressions, mode, and health. Moreover, ear biometrics may be occluded by scarf or earrings [1]. Face sketch recognition is a technique that is used routinely in criminal investigations. In the past, face sketch recognition was based on manual measurements, while automatic face sketch recognition systems save processing time and increase the accuracy. The process of face sketch recognition system starts from manually drawing a sketch by artists and then matches the sketch with different photos in the database to determine the nearest photo to the sketch and hence identify the person. Different factors affect the accuracy of face sketch recognition such as the skills of the artists and the matching algorithm [2], [3]. Another important factor is that the sketch is drawn while viewing a photograph of the person or the person himself or the sketch is drawn by asking a witness about the descriptions

of the criminal [4]. There are different face sketch techniques have been proposed. Yong et al. [5], used hand-drawn face sketches which are collected from five different artists. They used Principal Component Analysis (PCA) to extract features and Mahalanobis distance is used as a classifier. Moreover, they used score level fusion technique and achieved 90% recognition rate. Zhong et al. [6] synthesized a photo from a sketch and then they used photo-photo recognition to achieve better accuracy. They used 56 color photo-sketch pairs and Embedded Hidden Markov Model (EHMM) to map between photos and sketches and used eigenspace to identify sketch images. Their proposed model achieved recognition rate 17.6% when they directly applied photo-sketch recognition while the recognition rate increased to 88.2% when they transform photos-to-sketch and sketch-to-photo transformation. Liu et al. generate pseudosketch images using Local Linear Preserving (LLP). Moreover, they used nonlinear Linear Discriminant Analysis (KNDA) to recognize face photos from the pseudo-sketch images. They used CHUK dataset and polynomial kernel for KNDA and their proposed model achieved accuracy ranged from 87.67% to 99% [7]. Xiaoou et al. used PCA technique to transform the photo face images into pseudo-sketches. In addition, they used PCA nd Bayesian classifier to recognize face photos from pseudo-sketches and they used CHUK dataset and their proposed accuracy ranged from 81.3% to 97% [8]. Xinbo et al. used embedded hidden Markov model (E-HMM) to model the nonlinear relationship between a photo-sketch patch pair to generate pseudo-sketch images. Moreover, they used PCA to extract features and they used CHUK dataset and their recognition rate was 95.24% [9]. In this paper, a face sketch model based local features is proposed. There are two methods to extract the local invariant features, namely, sparse descriptor and dense descriptor. In sparse descriptor method, the interest points are extracted to represent the features such as Scale Invariant Feature Transformation (SIFT) [10] and Speeded Up Robust Features (SURF) [11]. While in the dense descriptor methods, local features are extracted from every pixel over the input image such as Local Binary Patterns (LBP) [12] and Weber’s Local Descriptor (WLD) [12]. In this model, two local feature extraction methods are used to extract features, namely, SIFT and LBP. Each method has different parameters that control the accuracy of the model and the CPU time. Due to high dimensional features of SIFT and LBP, Direct Linear Discriminant Analysis (DirectLDA) method is used for two purposes. First, Direct-LDA

reduces the dimension of feature vectors. Second, it increases the sparability between different classes. Two classifiers are used to match the features of an unknown sketch with the photo images, namely, Minimum Distance (MD) and Support Vector Machine (SVM). The rest of this paper is organized as follows: the preliminaries of SIFT and LBP algorithms are introduced in Section II. The proposed model is explained in Section III. Experimental results and discussion are introduced in Section IV and Section V, respectively. Finally, concluding remarks and future work are introduced in Section VI.

II.

P RELIMINARIES

A. Scale Invariant Features Transform (SIFT) Scale Invariant Feature Transform (SIFT) is considered as one of the robust features against many challenges such as scaling and rotation [10]. SIFT algorithm consists of five steps as follows, (1) creating the Difference of Gaussian Pyramid (Scale-Space), (2) key-point (Extrema) Detection, (3) Unreliable Key-points Elimination, (4) Orientation Assignment, (5) Descriptor Computation [10]. The first step in SIFT method is creating the difference of Gaussian (DoG) or scale-space. The goal of this step is to decompose the input image into different scales. At the first level, the image will be in the original size, the images at the second level are half-sized, quarter-sized at the next level, and so on. Thus, this decomposition is achieved by filtering the original image with Gaussian functions of many different scales and calculate the difference of Gaussian or the difference between two nearby scales separated by a constant multiplicative factor k as follows, D(x, y, σ) = L(x, y, kσ) − L(x, y, σ), where L(x, y, σ) and L(x, y, kσ), are two images that are produced from the convolution of Gaussian functions with an input image I(x, y) using σ and kσ, respectively, as follows, L(x, y, σ) = G(x, y, σ) ∗ I(x, y), where the Gaussian function x2 +y 2 1 is denoted by G(x, y, σ) = 2πσ 2 exp[− σ 2 ], D(x, y, σ) is the difference of Gaussian, which represents the difference between two nearby images separated by a constant multiplicative factor k [10]. After constructing the scale-space, interest points in DoG pyramids, called key-points, are detected by comparing each point with the pixels of all its 26 neighbors (i.e. eight neighbors in the current level and nine neighbors in the above and below levels) to compute the extrema points. If the value of the current pixel is the minimum or maximum compared to all neighbors, then this point is known as an extrema [10]. Computing the features at different levels increases the robustness of the features against image scaling. However, some key-points represent noise which needs to be eliminated by finding those that have low contrast, i.e. sensitive to noise, or are poorly localized on an edge. This step is called unreliable key-points elimination. One or more orientations are assigned to the key-points based on local image properties. An orientation histogram is formed from the gradient orientations of the sample points within a region around the key-point. The gradient magnitude is defined as in Equation (1), while the orientation is calculated as in Equation (2).

m(x, y) = ((L(x + 1, y) − L(x − 1, y))2 1

+(L(x, y + 1) − L(x, y − 1))2 ) 2

θ(x, y) = arctan

(L(x, y + 1) − L(x, y − 1)) (L(x + 1, y) − L(x − 1, y))

(1)

(2)

Peaks in the orientation histogram correspond to dominant directions of local gradients. Searching the highest peak in the histogram and use this peak and any other local peaks to create a key-point with that orientation. Some points will be assigned many different orientations if there are multiple peaks of similar magnitude. A Gaussian distribution is fit to the three histogram values closest to each peak to interpolate the peaks position for better accuracy [10], [13]. The final step in SIFT algorithm is to create descriptions for the patch that is compact, highly distinctive and to be robust to changes in illumination and camera viewpoint. The image gradient magnitudes and orientations are sampled around the key-point location and illustrated with small arrows at each sample location [10]. In order to achieve orientation invariance, the coordinates of the descriptor and the gradient orientations are rotated relative to the key-point orientation [10]. 1) Parameter of SIFT Algorithm: The robustness of SIFT features depend on various parameters such as patch size, a number of angles and bins, and peak threshold. The details of each parameter are explained. Peak Threshold (PeakThr): PeakThr parameter considered an effective parameter that is used to determine the number of key-points. PeakThr parameter value represents the amount of contrast to accept a key-point. The minimum value of PeakThr is 0.0, which all key-points are accepted, in other words, there are no eliminated key-points. Increasing the value of PeakThr parameter decreases the number of features, hence more keypoints are eliminated and the robustness of feature matching may be decreased. Patch Size: The size of patches controls the number of keypoints and number of patches. Hence, increasing the size of patches decreases the number of key-points and SIFT will be considered as global features. On the other hand, decreasing patch size parameter increases the number of key-points, hence increases the CPU time [10], [13]. Therefore, more experiments are needed to choose the suitable patch size that gives the best accuracy. Number of Angles and Bins: The number of angles and bins proportional to the key-point dimension. In other words, increasing number of angles and bins collects features in different angles (orientations) and increase the number of features, hence improve the accuracy. On the other hand, decreasing number of angles and bins leads to a small number of features and the matching rate decreases specially when the images are rotated because the features became more sensitive to rotation [10]. B. Local Binary Patterns (LBP) LBP is one of the feature extraction methods, which is used to extract local features from grayscale images. It has been adapted to many other applications such as face recognition [14], cattle identification [15], and texture analysis [16].

gc

P=8, R=1

gc

gc

P=4, R=1

P=16, R=2

the non-uniform patterns have small information to describe the texture, thus non-uniform patterns are assigned arbitrarily to the same code. For example, rotation invariant uniform patterns are assigned to code 0-8, while non-uniform patterns are assigned to code 9. After calculating the LBP code for each pixel of the gray image, a histogram is built to represent the texture of the image as follows,

Fig. 1. Positions of the neighboring pixels according to different values of P and R.

H(k) =

I X J X

f (LBPP,R , k), k ∈ [0, K]

(5)

i=1 j=1

The main idea of LBP is to assign code to each pixel based on a comparison between the pixels and its neighbors, thus LBP method is relatively robust to rotation and poor quality images [12], [16]. The code is represented by binary number and it is calculated as follows, P −1 X



x≥0 x 0) is the radius or distance from the center to the neighboring pixels, and s is the threshold function of x [12], [14]. LBP code is calculated for all pixels of the image. Moreover, due to a high correlation between neighborhood pixels, thus more information can be extracted from local neighbors, hence the radius R is usually small. Fig. (1) shows different values of P and R parameters [12], [14]. Changing the value of P will change the number of neighbors. Moreover, due to a high correlation between the pixels and its neighbors, increasing the value of P increases the robustness of the LBP code against image scaling, translation, or noise. The neighbors that do not fall exactly on pixels are estimated using interpolation [12], [14]. LBPP,R =

i

s(gi −gc )2 , where s(x) =

1, 0,

To increase the robustness of LBP against rotation, LBP code is rotated until reach to its minimum as shown in Equation (4). LBPP,R = min{ROR(LBPP,R , i)}, i = 0, 1, . . . , P − 1 (4) where ROR(f, i) represents the circular bit-wise right shift on the f value i times. There are two types LBP codes, namely, uniform and nonuniform patterns. In a uniform pattern, the bit-wise transition from zero to one or from one to zero is maximum one. For example, the binary values, 11111111 and 00000000 have zero transition, are uniform patterns. On the other hand, the values 01010101 and 11001100 have seven and three transitions, respectively, are non-uniform patterns [12], [17]. For constant or flat regions, the difference is zero in all direction. While on the edges, LBP code reach to its maximum in the gradient direction and zero values along the edge. The LBP code is high in all directions in case of spot. The uniform patterns operate as a template for micro-structure such as corners, dark spots, flat region, and bright spot. In contrast,

where

 f (x, y) =

1 ,x = y 0 , otherwise

(6)

and K represents the maximum LBP code. LBP is easy to implement, needs simple matching strategy, very fast to compute comparing with SIFT algorithm, and do not require many parameters to set. Algorithm 1 : Direct-LDA 1: Compute the mean of each class µi and total mean of all classes µ. 2: Compute SB as follows, SB =

c X

ni (µj − µ)(µj − µ)T

(7)

j=1

where, µj is the mean of j th class, µ is the total mean, ni is the number of samples in each class, and c represents the number of classes. 3: Then diagonalize SB as follows, V SB V = λ

(8)

where V and λ represent the eigenvectors and eigenvalues of SB , respectively. 4: Sort eigenvectors according to eigenvalues and neglect eigenvectors that have eigenvalues less or equal to zero. The selected eigenvectors and eigenvalues are denoted by Y and Db , respectively. −1 5: Let Z = Y Db 2 , where Z used to reduce the dimension of SB from n to m. 6: Use Z to diagonalize Z T SW Z, as follows, U T Z T SW ZU = T

(9)

where U and T represent the eigenvectors and eigenvalues of Z T SW Z, respectively. 7: Sort eigenvectors U according to eigenvalues T and neglect eigenvectors that have high eigenvalues to increase the ratio of Fishers’ formula. The selected eigenvectors and eigenvalues are denoted by R and Dw , respectively. 8: The final projection space (A) is calculated as follows, A = RT Z T , C. Linear Discriminant Analysis (LDA) LDA is one of the common feature extraction and dimensionality reduction methods. The main objective of LDA is to search for LDA space that maximizes the Fishers’ formula

T

W SB W ) by increasing the between-class variance (J(W ) = W TS W W (SB ), i.e. increase the distance between means of different classes, and decreasing the within-class variance (SW ), i.e. decrease the distance between the samples and mean of each class, where W is the transformation matrix that is used to project the original data on the LDA space. One of the challenges of LDA technique is the Small Sample Size (SSS) problem. This problem occurs when the number of samples in classes is lower than the dimension of the feature vectors of those samples. Due to (1) high dimensionality in face sketch images and photos in this research (2) the number of samples in each class is small; hence Direct-LDA method is used. Algorithm (1) summarizes the steps of Direct-LDA. In this method, the null space of SB , which contains no useful information for classification, is removed. This step is achieved by diagonalizing SB first then diagonalize SW [18].

III.

P ROPOSED M ODEL

to high dimensionality of some feature extraction methods, Direct-LDA dimensionality reduction method is used to search for the LDA space (W ) and then project the training data, i.e. feature vectors, on this space to reduce the dimension of the feature vectors as follows, Y = W X, where Y = y1 , y2 , . . . , yN represents the feature matrix after projection and yi ∈ Rm , m < d. B. Testing Phase In this phase, an unknown image (S), i.e. sketch image, is collected and then feature extraction method is used to extract the features, thus the unknown image is represented by one vector (S ∈ Rd ). Project the feature vector on the LDA space to reduce the dimension as follows, Snew = W S. In the next step, the projected feature vector of the unknown image (Snew ) is matched with the feature matrix after projection (Y ) to determine the class label of the unknown image.

The proposed model consists of two phases, namely, training phase, and testing phase as shown in Fig. (2). The descriptions of each phase are introduced in the following sections. Testing Phase

Training Phase

UnknownjSketch

Photos

FeaturejExtractionj

FeaturejExtractionj

FeaturejVectorj

FeaturejMatrixj

(dx1)

(dxN)

ProjectionjonjDirect-LDAjSpace

SearchjonjDirect-LDAjSpace

Fig. 3. Samples of face photos (top row) and corresponding sketches (bottom row) for different three individuals.

IV. (mx1)

(mxN)

Matching

NearestjPhoto

Fig. 2.

Block Diagram of the proposed Model.

A. Training Phase In this phase, the photo images, i.e. training images, are collected and then local features are extracted using feature extraction method. Thus, each photo image is represented by one vector as follows, X = x1 , x2 , . . . , xN , where xi ∈ Rd is the feature vector of the ith photo, X represents the feature matrix, and N is the total number of training images. Due

E XPERIMENTAL R ESULTS AND D ISCUSSION

The aim of these experiments is to match the unknown face sketch with the photo of the nearest person. Two different methods are used to extract features, namely, SIFT and LBP. A. Experimental Setup In this experiment, CHUK dataset is used. CHUK consists of 606 individuals. Each person has a frontal face photo image and a sketch image drawn by an artist. The dataset is divided into two sets, namely, training and testing sets. The training set consists of 306 individuals, while the other images are used as a testing set. The size of all photos and sketches are 250 × 200. Figure (3) shows samples of the used datasets. In all experiments two classifiers, namely, SVM and minimum distance (MD) are used to match the features of sketch and photos. As mentioned in Sections II-A and II-B, there are many parameters affecting the overall accuracy and CPU time. In this section, four experiments are conducted to show how the parameters affect the overall accuracy.

TABLE I.

ACCURACY OF THE PROPOSED MODEL USING METHOD ACCORDING TO DIFFERENT ANGLES .

Number of Angles 4 8 16

Length of Feature Vector 64 128 256

CPU Time (Secs) 0.44 0.64 1.05

SIFT

Accuracy (in %) Minimum Distance 94.5 89.14 99.25 94.62 99.35 95.25 SVM

B. SIFT Parameters SIFT algorithm has many parameters that need to be tuned, namely, peak threshold, number of angles and bins, and patch size parameters are tuned to show how these parameters affect the accuracy. •

Peak Threshold: To evaluate the effect of this parameter on the accuracy of our model, an experiment has been conducted to show how the peak threshold parameter affects the accuracy. The results of this experiment are summarized in Fig. (4).

TABLE II.

ACCURACY AND CPU TIME OF SIFT METHOD USING DIFFERENT VALUES OF PATCH SIZES .

Patch Size

No of Patches

CPU Time

64 × 64 32 × 32 16 × 16 8×8 4×4 2×2

3×3=9 7 × 6 = 42 15 × 12 = 180 31 × 25 = 775 62 × 50 = 3100 125 × 100 = 12500

5.5 1.18 0.64 0.48 0.44 0.43

TABLE III.

ACCURACY AND CPU TIME (S ECS ) FOR LBP ALGORITHM USING DIFFERENT VALUES OF P AND R. P 4 4 4 8 8 8 16 16

R 1 2 3 1 2 3 2 3

CPU Time (Secs) 0.232 0.241 0.245 0.248 0.256 0.262 0.38 0.426

V.

Fig. 4. A comparison between the accuracy of SIFT method using different values of peak threshold parameter.



Number of angles and bins: As mentioned in Section II-A, number of angles controls the length of feature vector, hence the CPU time to extract SIFT features. Moreover, extracting features from different orientations, i.e. increase the number of angles, may help to build robust model against rotation. In this experiment, different values of angles and bins are used to evaluate the accuracy of the proposed model. The results of this experiment are summarized in Table (I).



Patch Size: As mentioned in Section II-A, patch size parameter controls SIFT algorithm to extract local features if the patch size is small or global features if the patch size is large. In this experiment, different values of patch size parameter are used to evaluate the accuracy of the proposed model. Table (II) summarizes the results of this experiment.

C. LBP Parameters LBP algorithm has only two parameters namely, P which represents the number of neighbors and R which represents radius as mentioned in Section II-B. In this experiment, different values of P and R are used to show how these two parameters affect the accuracy and CPU time. The results of this experiment are summarized in Table (III).

Accuracy (in %) Minimum Distance 91.56 88.56 95.61 91.6 99.25 94.62 97.54 92.83 93.44 88.26 83.6 76.4 SVM

Accuracy (in %) Minimum Distance 85.5 82.6 83.6 80.5 81.4 78.2 91.5 87.6 93.5 89.4 95.2 90.4 96.4 90.5 94.6 88.7

SVM

D ISCUSSION

This section introduces discussion about the results obtained in Section IV. As described in Section IV different feature extraction method have different parameters that could affect either accuracy or CPU time. To select the appropriate parameter for each of these feature extraction methods, we have conducted different experiments. For SIFT algorithm, based on the results in Tables (I and II) many remarks can be seen. First, increasing the peak threshold parameter decreases the number of key-points, hence decreases the accuracy. As shown from Fig. (4), the maximum accuracy achieved when the peak threshold parameter was zeros. Second, increasing the number of angles indicate that collecting features from different orientations, hence increases the length of feature vector. Consequently the CPU time which is needed to extract features increases. As shown in Table (I) the difference between the accuracy when the number of angles increased from eight to 16 was very small, i.e. 0.1%, while using 16 angles need more CPU time (almost double) than using eight angles. Thus, using eight angles will save more time and extract discriminative features. Third, according to patch size parameter, as shown in Table (II) increasing the patch size decreases the number of key-points and number of patches, but it takes more CPU time and computations. Further analysis to this parameter showed that the accuracy of SIFT using different values of patch sizes fluctuated and the best accuracy achieved when the patch size is 16 × 16. For all experiments, SVM classifier achieved accuracy higher than minimum distance classifier. In general, from the results, the most suitable values for peak threshold, number of angles, and patch size parameters are 0, eight, and 16 × 16, respectively. For LBP algorithm, as shown in results in Table (III) increasing the values of P and R increases the CPU time slowly because the calculation for each pixel increased. For example, when P = 4, thus to compute the LBP code for each pixel we need only to compare each pixel with its four neighbors. While when P = 16 we need to compare the current pixel with 16 neighbors which needs more time and memory space.

TABLE IV.

A COMPARISON BETWEEN SOME STATE - OF - THE - ART MODELS AND THE PROPOSED MODEL .

Author X. Tang et al. [8] X. Tang et al. [8] Qingshan Liu et al. [7] Qingshan Liu et al. [7] Xinbo et al. [9] Xiaoou et al. [8] Proposed Model

Method Eigentransform+PCA Eigentransform+Bays LDA PCA E-HMM+PCA PCA SIFT LBP

Accuracy (in %) 75 81.3 85 64.33 95.24 81.3-97 99.25 96.4

Moreover, increasing P increases the length of the feature vector. According to the accuracy, we note that the best accuracy achieved when P = 16 and R = 2. As shown from Table (IV), SIFT algorithm achieved results better than LBP algorithm because, (1) SIFT extracts robust features against to rotation through extracting features from different angles, (2) SIFT is robust to scaling through decomposing the image into many levels. Moreover, SIFT algorithm achieved results better than all other related work that are listed in Table (IV) which used the same dataset. To conclude, local features achieved a robust method to recognize face sketch images. VI.

C ONCLUSIONS AND F UTURE W ORK

In this paper, a face sketch recognition model is proposed. In this model, SIFT and LBP feature extraction methods are used to extract robust and discriminative features. Four different experiments are performed. The goal of the first three experiments is to tune SIFT parameters while the goal of the fourth experiment is to tune LBP parameters. Due to high dimensionality in both SIFT and LBP, Direct-LDA method is used to reduce the number of features. In all experiments, SVM and minimum distance classifiers are used to match the features of an unknown face sketch and the photos. In terms of accuracy rate and CPU time, the best performance of SIFT algorithm achieved when peak threshold=0, number of angles=8, and patch size=16×16. According to LBP algorithm, the best accuracy achieved when P=16 and R=2. In most of the experiments, SVM classifier achieved results better than minimum distance classifier. In general, SIFT algorithm achieved accuracy (99.25%) better than LBP (96.4%). Thus, it could be concluded that the proposed model has achieved an excellent accuracy against many state-of-the-art methods. In the future work, different feature extraction methods are used. Moreover, further analysis is performed to increase the accuracy of the future model. R EFERENCES [1]

A. Tharwat, A. F. Ibrahim, and H. A. Ali, “Multimodal biometric authentication algorithm using ear and finger knuckle images,” in Proceedings of Seventh International Conference on Computer Engineering & Systems (ICCES), 2012. IEEE, 2012, pp. 176–179. [2] X. Tang and X. Wang, “Face sketch recognition,” IEEE Transactions on Circuits and Systems for Video Technology, vol. 14, no. 1, pp. 50–57, 2004. [3] X. Wang and X. Tang, “Face photo-sketch synthesis and recognition,” IEEE Transactions on Pattern Analysis and Machine Intelligence, vol. 31, no. 11, pp. 1955–1967, 2009. [4] B. F. Klare, Z. Li, and A. K. Jain, “Matching forensic sketches to mug shot photos,” IEEE Transactions on Pattern Analysis and Machine Intelligence, vol. 33, no. 3, pp. 639–646, 2011.

[5]

[6]

[7]

[8]

[9] [10]

[11]

[12]

[13]

[14]

[15]

[16]

[17]

[18]

Y. Zhang, C. McCullough, J. R. Sullins, and C. R. Ross, “Handdrawn face sketch recognition by humans and a pca-based algorithm for forensic applications,” IEEE Transactions on Systems, Man and Cybernetics, Part A: Systems and Humans, vol. 40, no. 3, pp. 475– 485, 2010. J. Zhong, X. Gao, and C. Tian, “Face sketch synthesis using e-hmm and selective ensemble,” in IEEE International Conference on Acoustics, Speech and Signal Processing, 2007. ICASSP 2007., vol. 1. IEEE, 2007, pp. I–485. Q. Liu, X. Tang, H. Jin, H. Lu, and S. Ma, “A nonlinear approach for face sketch synthesis and recognition,” in IEEE Computer Society Conference on Computer Vision and Pattern Recognition, 2005. CVPR 2005., vol. 1. IEEE, 2005, pp. 1005–1010. X. Tang and X. Wang, “Face sketch synthesis and recognition,” in Proceedings of Ninth IEEE International Conference on Computer Vision, 2003. IEEE, 2003, pp. 687–694. X. Gao, J. Zhong, D. Tao, and X. Li, “Local face sketch synthesis learning,” Neurocomputing, vol. 71, no. 10, pp. 1921–1930, 2008. D. G. Lowe, “Object recognition from local scale-invariant features,” in The proceedings of the seventh IEEE international conference on Computer vision, 1999, vol. 2. IEEE, 1999, pp. 1150–1157. H. Bay, A. Ess, T. Tuytelaars, and L. Van Gool, “Speeded-up robust features (surf),” Computer vision and image understanding, vol. 110, no. 3, pp. 346–359, 2008. T. Ojala, M. Pietikäinen, and T. Mäenpää, “Multiresolution gray-scale and rotation invariant texture classification with local binary patterns,” IEEE Transactions on Pattern Analysis and Machine Intelligence, vol. 24, no. 7, pp. 971–987, 2002. A. Tharwat, T. Gaber, A. E. Hassanien, M. Shahin, and B. Refaat, “Sift-based arabic sign language recognition system,” in Afro-European Conference for Industrial Advancement. Springer, 2015, pp. 359–370. B. Zhang, Y. Gao, S. Zhao, and J. Liu, “Local derivative pattern versus local binary pattern: face recognition with high-order local pattern descriptor,” IEEE Transactions on Image Processing, vol. 19, no. 2, pp. 533–544, 2010. A. Tharwat, T. Gaber, A. E. Hassanien, H. A. Hassanien, and M. F. Tolba, “Cattle identification using muzzle print images based on texture features approach,” in Proceedings of the Fifth International Conference on Innovations in Bio-Inspired Computing and Applications IBICA 2014. Springer, 2014, pp. 217–227. Z. Guo, L. Zhang, and D. Zhang, “A completed modeling of local binary pattern operator for texture classification,” IEEE Transactions on Image Processing, vol. 19, no. 6, pp. 1657–1663, 2010. T. Mäenpää and M. Pietikäinen, “Texture analysis with local binary patterns,” Handbook of Pattern Recognition and Computer Vision, vol. 3, pp. 197–216, 2005. H. Gao and J. W. Davis, “Why direct lda is not equivalent to lda,” Pattern Recognition, vol. 39, no. 5, pp. 1002–1006, 2006.