Face Detection and Recognition Computational Photography Derek Hoiem, University of Illinois Lecture by Kevin Karsch 12/3/13 Chuck Close, self portrait.

Slides:



Advertisements
Similar presentations
Principal Component Analysis Based on L1-Norm Maximization Nojun Kwak IEEE Transactions on Pattern Analysis and Machine Intelligence, 2008.
Advertisements

Computer Vision Spring ,-685 Instructor: S. Narasimhan Wean 5403 T-R 3:00pm – 4:20pm Lecture #20.
Face Recognition and Feature Subspaces
Dimensionality Reduction Chapter 3 (Duda et al.) – Section 3.8
© 2003 by Davi GeigerComputer Vision September 2003 L1.1 Face Recognition Recognized Person Face Recognition.
Data-driven Methods: Faces : Computational Photography Alexei Efros, CMU, Fall 2007 Portrait of Piotr Gibas © Joaquin Rosales Gomez.
CS 790Q Biometrics Face Recognition Using Dimensionality Reduction PCA and LDA M. Turk, A. Pentland, "Eigenfaces for Recognition", Journal of Cognitive.
Face detection and recognition Many slides adapted from K. Grauman and D. Lowe.
Eigenfaces As we discussed last time, we can reduce the computation by dimension reduction using PCA –Suppose we have a set of N images and there are c.
Face Recognition using PCA (Eigenfaces) and LDA (Fisherfaces)
Project 4 out today –help session today –photo session today Project 2 winners Announcements.
Face Recognition Jeremy Wyatt.
Principal Component Analysis Barnabás Póczos University of Alberta Nov 24, 2009 B: Chapter 12 HRF: Chapter 14.5.
Computer Vision I Instructor: Prof. Ko Nishino. Today How do we recognize objects in images?
Face Collections : Rendering and Image Processing Alexei Efros.
Face Recognition: An Introduction
Project 2 due today Project 3 out today –help session today Announcements.
Understanding Faces Computational Photography
Face Detection and Recognition
Face Detection and Recognition Readings: Ch 8: Sec 4.4, Ch 14: Sec 4.4
CS 485/685 Computer Vision Face Recognition Using Principal Components Analysis (PCA) M. Turk, A. Pentland, "Eigenfaces for Recognition", Journal of Cognitive.
Summarized by Soo-Jin Kim
Dimensionality Reduction: Principal Components Analysis Optional Reading: Smith, A Tutorial on Principal Components Analysis (linked to class webpage)
Recognition Part II Ali Farhadi CSE 455.
Face Recognition and Feature Subspaces
Face Recognition and Feature Subspaces
1 Recognition by Appearance Appearance-based recognition is a competing paradigm to features and alignment. No features are extracted! Images are represented.
Face Recognition: An Introduction
PCA explained within the context of Face Recognition Berrin Yanikoglu FENS Computer Science & Engineering Sabancı University Updated Dec Some slides.
Classification Course web page: vision.cis.udel.edu/~cv May 12, 2003  Lecture 33.
Face Recognition: An Introduction
CSE 185 Introduction to Computer Vision Face Recognition.
CSSE463: Image Recognition Day 27 This week This week Today: Applications of PCA Today: Applications of PCA Sunday night: project plans and prelim work.
Understanding Faces 12/1/15 Some slides from Amin Sadeghi, Lana Lazebnik, Silvio Savarese, Fei-Fei Li Chuck Close, self portrait Lucas by Chuck Close Detection,
Data-driven Methods: Faces : Computational Photography Alexei Efros, CMU, Fall 2012 Portrait of Piotr Gibas © Joaquin Rosales Gomez.
Lecture 15: Eigenfaces CS6670: Computer Vision Noah Snavely.
Lecture 10 Pattern Recognition and Classification II
CS 691B Computational Photography Instructor: Gianfranco Doretto Data Driven Methods: Faces.
Point Distribution Models Active Appearance Models Compilation based on: Dhruv Batra ECE CMU Tim Cootes Machester.
CS 2750: Machine Learning Dimensionality Reduction Prof. Adriana Kovashka University of Pittsburgh January 27, 2016.
2D-LDA: A statistical linear discriminant analysis for image matrix
Recognition Readings – C. Bishop, “Neural Networks for Pattern Recognition”, Oxford University Press, 1998, Chapter 1. – Szeliski, Chapter (eigenfaces)
Face Recognition and Feature Subspaces Devi Parikh Virginia Tech 11/05/15 Slides borrowed from Derek Hoiem, who borrowed some slides from Lana Lazebnik,
3D Face Recognition Using Range Images Literature Survey Joonsoo Lee 3/10/05.
Face detection and recognition Many slides adapted from K. Grauman and D. Lowe.
Machine Learning Supervised Learning Classification and Regression K-Nearest Neighbor Classification Fisher’s Criteria & Linear Discriminant Analysis Perceptron:
Face Detection and Recognition Readings: Ch 8: Sec 4.4, Ch 14: Sec 4.4
University of Ioannina
Recognition with Expression Variations
Data-driven Methods: Faces
Detection, Recognition, and Transformation of Faces
Lecture 8:Eigenfaces and Shared Features
CS 2750: Machine Learning Dimensionality Reduction
Face Recognition and Feature Subspaces
Recognition: Face Recognition
Machine Learning Dimensionality Reduction
Data-driven Methods: Faces
Outline Peter N. Belhumeur, Joao P. Hespanha, and David J. Kriegman, “Eigenfaces vs. Fisherfaces: Recognition Using Class Specific Linear Projection,”
In summary C1={skin} C2={~skin} Given x=[R,G,B], is it skin or ~skin?
Object Modeling with Layers
Computational Photography
Brief Review of Recognition + Context
PCA is “an orthogonal linear transformation that transfers the data to a new coordinate system such that the greatest variance by any projection of the.
CS4670: Intro to Computer Vision
CS4670: Intro to Computer Vision
Announcements Project 2 artifacts Project 3 due Thursday night
Announcements Project 4 out today Project 2 winners help session today
Announcements Artifact due Thursday
Announcements Artifact due Thursday
The “Margaret Thatcher Illusion”, by Peter Thompson
Presentation transcript:

Face Detection and Recognition Computational Photography Derek Hoiem, University of Illinois Lecture by Kevin Karsch 12/3/13 Chuck Close, self portrait Lucas by Chuck Close Some slides from Lana Lazebnik, Silvio Savarese, Fei-Fei Li

Administrative stuff Final project write-up due Dec 17 th 11:59pm Presentations Dec 18 th 1:30-4:30pm (SC 1214) Exams back at end of class

Face detection and recognition DetectionRecognition “Sally”

Applications of Face Recognition Digital photography

Applications of Face Recognition Digital photography Surveillance

Applications of Face Recognition Digital photography Surveillance Album organization

Consumer application: iPhoto

Consumer application: iPhoto 2009 Can be trained to recognize pets!

What does a face look like?

What makes face detection hard? Expression

What makes face detection hard? Viewpoint

What makes face detection hard? Occlusion

What makes face detection hard? Distracting background

What makes face detection and recognition hard? Coincidental textures

Consumer application: iPhoto 2009 Things iPhoto thinks are faces

How to find faces anywhere in an image?

Face detection: sliding windows Face or Not Face … How to deal with multiple scales?

Face classifier Training Labels Training Images Classifier Training Training Image Features Testing Test Image Trained Classifier Face Prediction

Face detection Face or Not Face … Face or Not Face

What features? Exemplars (Sung Poggio 1994) Edge (Wavelet) Pyramids (Schneiderman Kanade 1998) Intensity Patterns (with NNs) (Rowely Baluja Kanade1996) Haar Filters (Viola Jones 2000)

How to classify? Many ways – Neural networks – Adaboost – SVMs – Nearest neighbor

Statistical Template Object model = log linear model of parts at fixed positions = = 10.5 > 7.5 ? ? Non-object Object

Training multiple viewpoints Train new detector for each viewpoint.

Results: faces 208 images with 441 faces, 347 in profile

Face recognition DetectionRecognition “Sally”

Face recognition Typical scenario: few examples per face, identify or verify test example What’s hard: changes in expression, lighting, age, occlusion, viewpoint Basic approaches (all nearest neighbor) 1.Project into a new subspace (or kernel space) (e.g., “Eigenfaces”=PCA) 2.Measure face features 3.Make 3d face model, compare shape+appearance (e.g., AAM)

What makes face recognition hard? Some of the same stuff – Change in expression – Occlusion – Viewpoint Beards and glasses Age Lots of different faces

Simple idea 1.Treat pixels as a vector 2.Recognize face by nearest neighbor

The space of all face images When viewed as vectors of pixel values, face images are extremely high-dimensional – 100x100 image = 10,000 dimensions – Slow and lots of storage But very few 10,000-dimensional vectors are valid face images We want to effectively model the subspace of face images

The space of all face images Eigenface idea: construct a low-dimensional linear subspace that best explains the variation in the set of face images

Principle Component Analysis (PCA)

Principal Component Analysis (PCA) Given: N data points x 1, …,x N in R d We want to find a new set of features that are linear combinations of original ones: u(x i ) = u T (x i – µ) (µ: mean of data points) Choose unit vector u in R d that captures the most data variance Forsyth & Ponce, Sec ,

Principal Component Analysis Direction that maximizes the variance of the projected data: Projection of data point Covariance matrix of data The direction that maximizes the variance is the eigenvector associated with the largest eigenvalue of Σ N N 1/N Maximize subject to ||u||=1

Implementation issue Covariance matrix is huge (N 2 for N pixels) But typically # examples << N Simple trick – X is matrix of normalized training data – Solve for eigenvectors u of XX T instead of X T X – Then X T u is eigenvector of covariance X T X – May need to normalize (to get unit length vector)

Eigenfaces (PCA on face images) 1.Compute covariance matrix of face images 2.Compute the principal components (“eigenfaces”) – K eigenvectors with largest eigenvalues 3.Represent all face images in the dataset as linear combinations of eigenfaces – Perform nearest neighbor on these coefficients M. Turk and A. Pentland, Face Recognition using Eigenfaces, CVPR 1991Face Recognition using Eigenfaces

Eigenfaces example Training images x 1,…,x N

Eigenfaces example Top eigenvectors: u 1,…u k Mean: μ

Visualization of eigenfaces Principal component (eigenvector) u k μ + 3σ k u k μ – 3σ k u k

Representation and reconstruction Face x in “face space” coordinates: =

Representation and reconstruction Face x in “face space” coordinates: Reconstruction: =+ µ + w 1 u 1 +w 2 u 2 +w 3 u 3 +w 4 u 4 + … = ^ x=

P = 4 P = 200 P = 400 Reconstruction After computing eigenfaces using 400 face images from ORL face database

Eigenvalues (variance along eigenvectors)

Note Preserving variance (minimizing MSE) does not necessarily lead to qualitatively good reconstruction. P = 200

Recognition with eigenfaces Process labeled training images Find mean µ and covariance matrix Σ Find k principal components (eigenvectors of Σ) u 1,…u k Project each training image x i onto subspace spanned by principal components: (w i1,…,w ik ) = (u 1 T (x i – µ), …, u k T (x i – µ)) Given novel image x Project onto subspace: (w 1,…,w k ) = (u 1 T (x – µ), …, u k T (x – µ)) Optional: check reconstruction error x – x to determine whether image is really a face Classify as closest training face in k-dimensional subspace ^ M. Turk and A. Pentland, Face Recognition using Eigenfaces, CVPR 1991Face Recognition using Eigenfaces

PCA General dimensionality reduction technique Preserves most of variance with a much more compact representation – Lower storage requirements (eigenvectors + a few numbers per face) – Faster matching What are the problems for face recognition?

Limitations Global appearance method: not robust to misalignment, background variation

Limitations The direction of maximum variance is not always good for classification

A more discriminative subspace: FLD Fisher Linear Discriminants  “Fisher Faces” PCA preserves maximum variance FLD preserves discrimination – Find projection that maximizes scatter between classes and minimizes scatter within classes Reference: Eigenfaces vs. Fisherfaces, Belheumer et al., PAMI 1997Eigenfaces vs. Fisherfaces, Belheumer et al., PAMI 1997

Illustration x1 x2 Within class scatter Between class scatter Objective:

Comparing with PCA

Recognition with FLD Similar to “eigenfaces” Compute within-class and between-class scatter matrices Solve generalized eigenvector problem Project to FLD subspace and classify by nearest neighbor

Large scale comparison of methods FRVT 2006 Report Not much (or any) information available about methods, but gives idea of what is doable

FVRT Challenge Frontal faces – FVRT2006 evaluation: computers win!

Another cool method: attributes for face verification Kumar et al. 2009

Attributes for face verification Kumar et al. 2009

Attributes for face verification

Face recognition by humans Face recognition by humans: 20 resultsFace recognition by humans: 20 results (2005) SlidesSlides by Jianchao Yang

Result 17: Vision progresses from piecemeal to holistic

Fun with Faces 10/06/11 Many slides from Alyosha Efros Photos From faceresearch.org

The Power of Averaging

8-hour exposure © Atta Kim

Figure-centric averages Antonio Torralba & Aude Oliva (2002) Averages: Hundreds of images containing a person are averaged to reveal regularities in the intensity patterns across all the images.

More by Jason Salavon More at:

How do we average faces?

morphing Morphing image #1image #2 warp

Cross-Dissolve vs. Morphing Average of Appearance Vectors Images from James Hays Average of Shape Vectors demos/vector

Average of multiple Face 1. Warp to mean shape 2. Average pixels

Appearance Vectors vs. Shape Vectors 200*150 pixels (RGB) Vector of 200*150*3 Dimensions Requires Annotation Provides alignment! Appearance Vector 43 coordinates (x,y) Shape Vector Vector of 43*2 Dimensions

Average Men of the world

Average Women of the world

Subpopulation means Other Examples: – Average Kids – Happy Males – Etc. – Average male Average female Average kid Average happy male

Manipulating faces How can we make a face look more female/male, young/old, happy/sad, etc.? Current face Prototype 2 Prototype 1

Manipulating faces We can imagine various meaningful directions. Current face Masculine Feminine Happy Sad

Face Space How to find a set of directions to cover all space? We call these directions Basis If number of basis faces is large enough to span the face subspace: Any new face can be represented as a linear combination of basis vectors.

Midterm results + review

Mean = 87 Median = 90 Std dev = 7.5