Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Understanding Faces

Imperial ACM
November 29, 2013

Understanding Faces

Powered by ever more sophisticated sensors, the machines of the future will interact with humans far more naturally than is possible today. Most of us find face-to-face interaction the most comfortable and for good reason - the brain does an outstanding job of interpreting the identity and emotional state of another human - all from just looking at their face.

With this in mind we seek to develop algorithmic approaches to understanding the human face. I’ll explain how powerful generative models of the face can be constructed, and what we can learn from them. I’ll then demonstrate the usefulness of such models in identity and emotion recognition, and highlight how our collaboration with Great Ormond Street Hospital is helping advance craniofacial surgery techniques. Finally, I’ll talk about where we can take statistical facial modelling in the future, and discuss some of the challenges that we most overcome in order to advance.

Imperial ACM

November 29, 2013
Tweet

More Decks by Imperial ACM

Other Decks in Research

Transcript

  1. >>> ./emotiondetection runnning… ERROR: EmotionError - No hard edges found.

    Is the image of sufficient resolution? ah! we need to enhance obviously.
  2. Understanding Faces • What does iBUG do? • What key

    techniques do we use? • What are the applications of our work? • What challenges lie in the future?
  3. About me • 2008-11 BSc Physics, Imperial • 2011-12 MSc

    Computing Science, Imperial • 2012-13 RA, iBUG, Imperial • 2013-present PhD candidiate under Stefanos Zafeiriou, iBUG, Imperial
  4. iBUG • Intelligent Behaviour Understanding Group • anything to do

    with machines understanding humans • machine learning • Group roughly split in two • behavioural • computer vision (faces)
  5. 3D Morphable Models • Built from a statistical model of

    the face • Learning a detailed 3D face from a 2D face. • Generally not real time, quality is key, not speed • Used in games, CGI effects in movies • Local optimisation method - needs to be pre aligned (probably by a tracker) • My main focus! OFFLINE
  6. Facial tracker • Built with a statistical model of the

    face • Expected to be real time • Robust to occlusions (stuff getting in the way) • May be able to deal with multiple persons • Often required to bootstrap of more vision algorithms • Consumer applications already here (Kinect) REAL TIME
  7. PCA PCA 3D scans images Morphable Model Shape Model Lucas!

    Kanade Cascade of! regressors … … Morphable Model Face Tracker
  8. Principal Component Analysis • The bedrock of the CV community

    • Basic approach extremely simple! • Many exotic derivatives for incremental improvements. • Going to explain the basics
  9. Principal Components Analysis x y μ PC1 100 80 variance

    maximised this is the First " Principal Component
  10. Principal Components Analysis x y μ PC1 PC2 100 80

    variance maximised this is the First " Principal Component
  11. Principal Component Analysis • Technique to find linear trends in

    data • Principal Components are orthogonal to each other and are ordered in terms of the variance they capture • Can be applied in N dimensions
  12. Principal Components as a basis x y μ PC1 PC2

    100 80 = 71x + 62y = μ + 0.8PC1 - 0.9PC2 0.8 -0.9
  13. Principal Components as a basis x y μ PC1 PC2

    100 80 = 71x + 62y = μ + 0.8PC1 - 0.9PC2 = 91x + 32y = μ + 0.8PC1 - 3.0PC2
  14. Principal Components as a basis x y μ PC1 PC2

    100 80 = 71x + 62y = μ + 0.8PC1 - 0.9PC2 = 91x + 32y ! = μ + 0.8PC1 - 3.0PC2 > 1.0 == outlier
  15. What is shape? • What remains after affects of scale,

    rotation and translation have been removed
  16. What is shape? • What remains after affects of scale,

    rotation and translation have been removed
  17. What is shape? • What remains after affects of scale,

    rotation and translation have been removed
  18. What is shape? • What remains after affects of scale,

    rotation and translation have been removed
  19. Vectorizing shapes • Just assign each coordinate to a new

    vector axis • As long as we are consistent in the mapping, can always go from vector back to shape • This is why landmarks were numbered • Can be done for arbitrary data Face landmarks (68 points of 2D) 136D vector space landmark 1:x axis 1 landmark 1:y axis 2 landmark 2:x axis 3 … … landmark 68:y axis 136 Take PCA on this!
  20. Statistical Shape Models • Summary - Each component captures key

    traits in face • Gives an ideal for how ‘normal’ a face is from the component weightings • Works well because faces have a very similar structure! • Same idea applied to pixels yields texture models
  21. Generating novel faces • By creating linear combinations of components

    we generate novel faces • Very powerful. Normally first 30 components are sufficient to generate a close approximation to anyones face • We just need an algorithm to find the weightings..
  22. Fitting algorithms • Complex beasts! Outside the scope of today

    • Generally find component weightings that minimise an error function • Lots of active research in this area
  23. Great Ormond Street • Collaboration with craniofacial surgeons there •

    Current surgical approach is an ‘art’ • Want to see if our models can help improve surgery techniques • Requires answers to difficult questions - what is ‘normal’? What is ‘beautiful’?
  24. My PhD goal • Emotive Morphable Models • Current techniques

    can show full range of emotion • Needs lots of data and new techniques • iBUG solving data problem..
  25. iBUG4D • 4D (3D at 60fps) capture setup • Capturing

    data from a range of subjects right now! • Small financial reward, only takes 20mins • Get a cool 3D scan of yourself • Email Teresa if you fancy it [email protected]
  26. Thoughts on PhD • Founded a team project in iBUG

    - PyBug - a Python toolkit for statistical modelling and analysis • Working in a team transforms your PhD - seek collaboration where you can! • Important to raise engineering standards in Computing research, keen to play a role • Imperial Python Users Group…?