Unformatted text preview:

Lecture 15: EigenfacesAnnouncementsSkin detection resultsGeneral classificationLinear subspacesDimensionality reductionSlide 7Principal component analysisThe space of facesSlide 10EigenfacesProjecting onto the eigenfacesDetection and recognition with eigenfacesChoosing the dimension KIssues: metricsMetricsIssues: feature selectionIssues: data modelingGenerative vs. DiscriminativeIssues: dimensionalityIssues: speedFeature extractionLarge library of filtersAdaBoost for feature+classifier selectionAdaBoost: IntuitionSlide 26Slide 27AdaBoost AlgorithmCascading classifiers for detectionViola-Jones Face Detector: SummaryViola-Jones Face Detector: ResultsSlide 32Slide 33Slide 34Detecting profile faces?Slide 36Lecture 15: EigenfacesCS6670: Computer VisionNoah SnavelyAnnouncements•Final project page up, at–http://www.cs.cornell.edu/courses/cs6670/2009fa/projects/p4/–One person from each team should submit a proposal (to CMS) by tomorrow at 11:59pm•Project 3: EigenfacesSkin detection resultsThis same procedure applies in more general circumstances•More than two classes•More than one dimensionGeneral classificationH. Schneiderman and T.KanadeExample: face detection•Here, X is an image region–dimension = # pixels –each face can be thoughtof as a point in a highdimensional spaceH. Schneiderman, T. Kanade. "A Statistical Method for 3D Object Detection Applied to Faces and Cars". IEEE Conference on Computer Vision and Pattern Recognition (CVPR 2000) http://www-2.cs.cmu.edu/afs/cs.cmu.edu/user/hws/www/CVPR00.pdfLinear subspacesClassification can be expensive•Must either search (e.g., nearest neighbors) or store large PDF’sSuppose the data points are arranged as above•Idea—fit a line, classifier measures distance to lineconvert x into v1, v2 coordinatesWhat does the v2 coordinate measure?What does the v1 coordinate measure?- distance to line- use it for classification—near 0 for orange pts- position along line- use it to specify which orange point it isDimensionality reductionHow to find v1 and v2 ?Dimensionality reduction•We can represent the orange points with only their v1 coordinates–since v2 coordinates are all essentially 0•This makes it much cheaper to store and compare points•A bigger deal for higher dimensional problemsLinear subspacesConsider the variation along direction v among all of the orange points:What unit vector v minimizes var?What unit vector v maximizes var?Solution: v1 is eigenvector of A with largest eigenvalue v2 is eigenvector of A with smallest eigenvalue2Principal component analysisSuppose each data point is N-dimensional•Same procedure applies:•The eigenvectors of A define a new coordinate system–eigenvector with largest eigenvalue captures the most variation among training vectors x–eigenvector with smallest eigenvalue has least variation•We can compress the data by only using the top few eigenvectors–corresponds to choosing a “linear subspace”»represent points on a line, plane, or “hyper-plane”–these eigenvectors are known as the principal componentsThe space of facesAn image is a point in a high dimensional space•An N x M intensity image is a point in RNM•We can define vectors in this space as we did in the 2D case+=Dimensionality reductionThe set of faces is a “subspace” of the set of images•Suppose it is K dimensional•We can find the best subspace using PCA•This is like fitting a “hyper-plane” to the set of faces–spanned by vectors v1, v2, ..., vK–any faceEigenfacesPCA extracts the eigenvectors of A•Gives a set of vectors v1, v2, v3, ...•Each one of these vectors is a direction in face space–what do these look like?Projecting onto the eigenfacesThe eigenfaces v1, ..., vK span the space of faces•A face is converted to eigenface coordinates byDetection and recognition with eigenfacesAlgorithm1. Process the image database (set of images with labels)•Run PCA—compute eigenfaces•Calculate the K coefficients for each image2. Given a new image (to be recognized) x, calculate K coefficients3. Detect if x is a face4. If it is a face, who is it?•Find closest labeled face in database•nearest-neighbor in K-dimensional spaceChoosing the dimension KK NMi = eigenvaluesHow many eigenfaces to use?Look at the decay of the eigenvalues•the eigenvalue tells you the amount of variance “in the direction” of that eigenface•ignore eigenfaces with low varianceIssues: metricsWhat’s the best way to compare images?•need to define appropriate features•depends on goal of recognition taskexact matchingcomplex features work well(SIFT, MOPS, etc.)classification/detectionsimple features work well(Viola/Jones, etc.)MetricsLots more feature types that we haven’t mentioned•moments, statistics–metrics: Earth mover’s distance, ...•edges, curves –metrics: Hausdorff, shape context, ...•3D: surfaces, spin images–metrics: chamfer (ICP)•...Issues: feature selectionIf all you have is one image:non-maximum suppression, etc.If you have a training set of images:AdaBoost, etc.Issues: data modelingGenerative methods•model the “shape” of each class–histograms, PCA, mixtures of Gaussians–graphical models (HMM’s, belief networks, etc.)–...Discriminative methods•model boundaries between classes–perceptrons, neural networks–support vector machines (SVM’s)Generative vs. Discriminative Generative Approachmodel individual classes, priorsfrom Chris BishopDiscriminative Approachmodel posterior directlyIssues: dimensionalityWhat if your space isn’t flat?•PCA may not helpNonlinear methodsLLE, MDS, etc.Issues: speed•Case study: Viola Jones face detector•Exploits two key strategies:–simple, super-efficient features–pruning (cascaded classifiers)•Next few slides adapted Grauman & Liebe’s tutorial –http://www.vision.ee.ethz.ch/~bleibe/teaching/tutorial-aaai08/ •Also see Paul Viola’s talk (video)–http://www.cs.washington.edu/education/courses/577/04sp/contents.html#DMPerceptual and Sensory Augmented ComputingVisual Object Recognition TutorialVisual Object Recognition TutorialK. Grauman, B. LeibeFeature extraction22K. Grauman, B. LeibeFeature output is difference between adjacent regionsViola & Jones, CVPR 2001Efficiently computable with integral image: any sum can be computed in constant timeAvoid scaling images  scale features directly for same cost“Rectangular” filtersValue at (x,y) is sum of pixels above and to the left of


View Full Document
Download Study Notes
Our administrator received your request to download this document. We will send you the file to your email shortly.
Loading Unlocking...
Login

Join to view Study Notes and access 3M+ class-specific study document.

or
We will never post anything without your permission.
Don't have an account?
Sign Up

Join to view Study Notes 2 2 and access 3M+ class-specific study document.

or

By creating an account you agree to our Privacy Policy and Terms Of Use

Already a member?