based on
play

Based on: 1 Facial expression recognition based on Local Binary - PowerPoint PPT Presentation

Based on: 1 Facial expression recognition based on Local Binary Patterns: A comprehensive study Caifeng Shan, Shaogang Gong, Peter W. McOwan Image and Vision Computing 27 (2009) 803816 Facial expression 2 Facial expression is one of


  1. Based on: 1 Facial expression recognition based on Local Binary Patterns: A comprehensive study Caifeng Shan, Shaogang Gong, Peter W. McOwan Image and Vision Computing 27 (2009) 803–816

  2. Facial expression 2  Facial expression is one of the most immediate and powerful way for a human being to communicate emotions.  Automatic facial expression analysis can impact applications in areas such as human-machine interaction and data-driven animation.  High accuracy recognition of facial expression is difficult due to their complexity and variability.

  3. Automatic facial expression recognition 3  It involves two aspects:  Facial representation is to derive a set of feature from original face images, to represent faces. Local Binary Patterns are used as appearance features for facial image analysis.  Classifier design. Support Vector Machine is used to classify facial expressions.

  4. Facial expression data 4  Focus is on prototypic expression recognition.  I considered 3-class recognition:  Happiness  Sadness  Surprise  And 4-class recognition, including the neutral expression.

  5. Data preprocessing 5  The faces were normalized to a fixed distance between the eyes.  Opencv Haar Classifier Cascade was used to identify the face and then the eyes in the image.  The image was then resized and cropped to a 110x150 pixels image.

  6. LPB operator 6  Original LPB operator 6 8 5 labels the pixels of an image by thresholding a 3 6 1 3x3 neighborhood of each pixel with the 2 7 4 center value and considering the results as a binary number. 1 1 0  The 256-bin histogram 0 0 of the LBP labels computed over a region 0 1 0 is used as a texture descriptor. 11000100

  7. Extended LBP operator 7  LBP operator is extended to use neighborhoods of different sizes.  Using a circular neighborhood and bilinearly interpolating values at non-integer pixel coordinates allow any radius and number of pixels in the neighborhood. R=2, P=8

  8. Uniform patterns 8  LBP P operator produces 2 P different output values. ,R  Since certain bins contains more information, it’s possible to use a subset of the 2 P patterns:  A uniform pattern is a LBP pattern that contains at most 2 bitwise transitions when the binary string is considered circular, i.e. 00000000, 00001100, 10000011.  Accumulating the non-uniform patterns in a single bin, produces an operator with only P(P-1)+3 bins.

  9. The histogram 9  A histogram of the A B labeled image is used to capture the information about the distribution of the local micro-patterns.  To take into account the Z shape information of faces, these are equally divided into small regions to extract LBP histogram, 0.4 the resulting histograms 0.35 0.3 are then concatenated to 0.25 form a single histogram. 0.2 0.15 0.1 0.05 0 A B … Z

  10. Possible optimization 10  Some parameter can be optimized for better feature extraction:  The LBP operator (P and R)  The number of regions  Following the setting of the article, I selected the LBP 8,2 operator (59-bin) and I divided the 110x150 pixels face image into 18x21 pixel regions.  Therefore the images were divided into 6x7 regions and represented by the LBP histograms with the length of 2478.

  11. Support Vector Machine 11  The basic SVM is a non-probabilistic binary linear classifier that predicts for each input, which of two possible classes the input belongs to.  Given a set of training examples, each marked as belonging to one of two classes, an SVM training algorithm builds a model that assigns new examples into one class or the other.  SVMs can perform a non-linear classification, mapping their inputs into high-dimensional feature spaces, using a kernel.

  12. Kernels 12  CvSVM::LINEAR Linear kernel. No mapping is done, linear discrimination (or regression) is done in the original feature space. It is the fastest option.  CvSVM::POLY Polynomial kernel:  CvSVM::RBF Radial basis function (RBF), a good choice in most cases.

  13. Results 13 Ran on a MacBook Pro 2.8GHz dual-core Intel Core i7 16GB RAM and SSD

  14. Image database 14  Cohn Kanade DB  Happiness: 176 HA  Sadness: 85 20% NE  Surprise: 255 41%  Neutral: 354 SA 10%  TOT: 870 SU 29% http://www.pitt.edu/~emotion/ck-spread.htm http://www.consortium.ri.cmu.edu/ckagree/ Some tests were done on: http://www.kasrl.org/jaffe.html

  15. Training the SVM 15  CvSVM::train_auto Trains an SVM with Images subdivision optimal parameters.  Training images are Training chosen randomly. 25%  Results are the Testing average on r 75% repetitions.

  16. 3-class results - default 16 Region subdivision R P Kernel 6x7 2 8 RBF Average run time % HA SA SU 13.61s HA 89.280 0.076 10.644 SA 3.656 63.437 32.906 Total % SU 0.635 0.000 99.364 90.008

  17. 4-class results - default 17 Region subdivision R P Kernel 6x7 2 8 RBF Average run time % NE HA SA SU 41.92s NE 95.902 0.586 1.823 1.688 HA 22.439 77.091 0.000 0.470 Total % SA 44.953 0.000 52.859 2.188 84.367 SU 16.104 0.005 0.000 83.891

  18. 3-class results - linear 18 Region subdivision R P Kernel 6x7 2 8 linear Average run time % HA SA SU 3.80s HA 99.151 0.023 0.826 SA 0.359 94.969 4.672 Total % SU 0.359 0.307 99.333 98.552

  19. 4-class results - linear 19 Region subdivision R P Kernel 6x7 2 8 linear Average run time % NE HA SA SU 7.56s NE 97.797 0.064 1.538 0.602 HA 2.098 97.576 0.000 0.326 Total % SA 19.688 0.000 80.000 0.313 96.015 SU 1.839 0.271 0.078 97.813

  20. 3-class results - polynomial 20 Region subdivision R P Kernel 6x7 2 8 polynomial Average run time % HA SA SU 17.43s HA 99.159 0.045 0.795 SA 0.281 93.359 6.359 Total % SU 0.265 0.276 99.458 98.351

  21. 4-class results - polynomial 21 Region subdivision R P Kernel 6x7 2 8 polynomial Average run time % NE HA SA SU 52.66s NE 97.932 0.0489 1.470 0.549 HA 2.765 96.947 0.000 0.288 Total % SA 21.734 0.000 77.828 0.438 95.690 SU 1.922 0.266 0.141 97.672

  22. Kernels 22 Success rate Run time 100 60 90 50 80 70 40 60 50 30 40 3-class 20 3-class 30 20 4-class 4-class 10 10 - 0

  23. 3-class results - different regions 23 Region subdivision R P Kernel 3x4 2 8 linear Average run time % HA SA SU 3.28s HA 98.886 0.515 0.598 SA 1.094 94.125 4.781 Total % SU 0.328 1.120 98.552 97.936

  24. 4-class results - different regions 24 Region subdivision R P Kernel 3x4 2 8 linear Average run time % NE HA SA SU 6.10s NE 95.315 0.177 3.305 1.203 HA 2.432 97.189 0.106 0.273 Total % SA 23.750 0.078 75.156 1.016 93.865 SU 4.057 0.016 0.120 95.807

  25. 3-class results - different regions 25 Region subdivision R P Kernel 5x6 2 8 linear Average run time % HA SA SU 3.57s HA 99.144 0.008 0.849 SA 0.047 96.109 3.844 Total % SU 0.370 0.292 99.339 98.740

  26. 4-class results - different regions 26 Region subdivision R P Kernel 5x6 2 8 linear Average run time % NE HA SA SU 6.85s NE 97.007 0.038 1.906 1.049 HA 1.174 98.333 0.000 0.492 Total % SA 22.032 0.000 77.797 0.172 95.408 SU 2.495 0.208 0.245 97.052

  27. 3-class results - different regions 27 Region subdivision R P Kernel 7x8 2 8 linear Average run time % HA SA SU 4.15s HA 99.182 0.083 0.735 SA 0.047 96.000 3.953 Total % SU 0.250 0.281 99.469 98.799

  28. 4-class results - different regions 28 Region subdivision R P Kernel 7x8 2 8 linear Average run time % NE HA SA SU 8.57s NE 97.391 0.008 1.594 1.008 HA 1.205 98.333 0.008 0.455 Total % SA 21.172 0.000 78.641 0.188 95.939 SU 1.661 0.214 0.078 98.047

  29. Regions 29 Success rate Run time 100 10 99 9 98 8 97 7 96 6 95 5 3-class 3-class 94 4 4-class 4-class 93 3 92 2 91 1 90 - 3x4 5x6 6x7 7x8 3x4 5x6 6x7 7x8

  30. 3-class results - radius 30 Region subdivision R P Kernel 6x7 1 8 linear Average run time % HA SA SU 3.86s HA 99.212 0.000 0.788 SA 0.172 95.547 4.281 Total % SU 0.385 0.208 99.406 98.704

  31. 4-class results - radius 31 Region subdivision R P Kernel 6x7 1 8 linear Average run time % NE HA SA SU 7.82s NE 97.759 0.019 1.797 0.425 HA 1.689 97.977 0.000 0.333 Total % SA 21.188 0.000 78.188 0.625 95.950 SU 1.672 0.318 0.042 97.969

  32. 3-class results - radius 32 Region subdivision R P Kernel 6x7 3 8 linear Average run time % HA SA SU 3.83s HA 99.129 0.068 0.803 SA 0.109 94.406 5.484 Total % SU 0.094 0.443 99.464 98.516

  33. 4-class results - radius 33 Region subdivision R P Kernel 6x7 3 8 linear Average run time % NE HA SA SU 7.43s NE 97.635 0.105 1.248 1.011 HA 2.833 96.659 0.000 0.508 Total % SA 20.375 0.000 78.719 0.906 95.728 SU 1.719 0.016 0.151 98.115

  34. Radius 34 Success rate Run time 100 9 8 99 7 6 98 5 3-class 3-class 4 97 4-class 4-class 3 2 96 1 95 - 0 1 2 3 4 0 1 2 3 4

  35. 3-class results - points 35 Region subdivision R P Kernel 6x7 2 6 linear Average run time % HA SA SU 2.81s HA 99.492 0.000 0.508 SA 0.234 95.328 4.438 Total % SU 0.432 0.620 98.948 98.536

Recommend


More recommend