statistical learning of multi-view face detection

25
Statistical Learning Statistical Learning of of Multi-View Face Multi-View Face Detection Detection Microsoft Research Asia Microsoft Research Asia Stan Li, Long Zhu, Zhen Qiu Zhang, Stan Li, Long Zhu, Zhen Qiu Zhang, Andrew Blake, Hong Jiang Zhang, Harry Andrew Blake, Hong Jiang Zhang, Harry Shum Shum Presented by Derek Hoiem Presented by Derek Hoiem

Upload: ansel

Post on 15-Jan-2016

39 views

Category:

Documents


0 download

DESCRIPTION

Statistical Learning of Multi-View Face Detection. Microsoft Research Asia Stan Li, Long Zhu, Zhen Qiu Zhang, Andrew Blake, Hong Jiang Zhang, Harry Shum Presented by Derek Hoiem. Overview. Viola-Jones AdaBoost FloatBoost Approach Multi-View Face Detection FloatBoost Results - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Statistical Learning of  Multi-View Face Detection

Statistical Learning of Statistical Learning of Multi-View Face DetectionMulti-View Face Detection

Microsoft Research AsiaMicrosoft Research AsiaStan Li, Long Zhu, Zhen Qiu Zhang, Andrew Blake, Stan Li, Long Zhu, Zhen Qiu Zhang, Andrew Blake,

Hong Jiang Zhang, Harry ShumHong Jiang Zhang, Harry Shum

Presented by Derek HoiemPresented by Derek Hoiem

Page 2: Statistical Learning of  Multi-View Face Detection

OverviewOverview

Viola-Jones AdaBoostViola-Jones AdaBoost FloatBoost ApproachFloatBoost Approach Multi-View Face DetectionMulti-View Face Detection FloatBoost ResultsFloatBoost Results FloatBoost vs. AdaBoostFloatBoost vs. AdaBoost FloatBoost DiscussionFloatBoost Discussion

Page 3: Statistical Learning of  Multi-View Face Detection

Face Detection OverviewFace Detection Overview

Non-Object

Object

Classifier

Evaluate windows at all Evaluate windows at all locations in many scaleslocations in many scales

Page 4: Statistical Learning of  Multi-View Face Detection

Viola-Jones AdaBoostViola-Jones AdaBoost

Weak classifiers formed out of simple Weak classifiers formed out of simple featuresfeatures

In sequential stages, features are selected In sequential stages, features are selected and weak classifiers trained with emphasis and weak classifiers trained with emphasis on misclassified exampleson misclassified examples

Integral images and a cascaded classifier Integral images and a cascaded classifier allow real-time face detectionallow real-time face detection

Page 5: Statistical Learning of  Multi-View Face Detection

Viola-Jones FeaturesViola-Jones Features

For a 24 x 24 image: 190,800 semi-continuous featuresFor a 24 x 24 image: 190,800 semi-continuous features Computed in constant time using integral imageComputed in constant time using integral image Weak classifiers consist of filter response thresholdWeak classifiers consist of filter response threshold

Vertical

Horizontal

On-Off-On

Diagonal

Page 6: Statistical Learning of  Multi-View Face Detection

Integral ImageIntegral Image

I( x1, y1 )

I( x3, y3 )

I( x2, y2 )

I( x4, y4 )

I( x6, y6 )

I( x5, y5 )

I( x7, y7 )

I( x8, y8 )

y = I8 – I7– I6 + I5+ I4 – I3 – I2 + I1

Page 7: Statistical Learning of  Multi-View Face Detection

Cascade of ClassifiersCascade of Classifiers

1 Weak Classifier

5 Weak Classifiers

1200 Weak Classifiers

40%

40%

99.999%

40%

60%

60%

0.001%

Class 1 (Face)

Class 2 (Non-Face)

Stage 1

Stage 2

Stage N

Input Signal (Image Window)

Page 8: Statistical Learning of  Multi-View Face Detection

Viola-Jones AdaBoost AlgorithmViola-Jones AdaBoost Algorithm

Strong classifier formed from weak classifiers:Strong classifier formed from weak classifiers:

At each stage, new weak classifier chosen to minimize At each stage, new weak classifier chosen to minimize bound on classification error (confidence weighted):bound on classification error (confidence weighted):

This gives the form for our weak classifier:This gives the form for our weak classifier:

Page 9: Statistical Learning of  Multi-View Face Detection

Viola-Jones AdaBoost AlgorithmViola-Jones AdaBoost Algorithm

Page 10: Statistical Learning of  Multi-View Face Detection

Viola-Jones AdaBoostViola-Jones AdaBoostPros and ConsPros and Cons

Very fastVery fast Moderately high accuracyModerately high accuracy Simple implementation/conceptSimple implementation/concept

Greedy search through feature spaceGreedy search through feature space Highly constrained featuresHighly constrained features Very high training timeVery high training time

Page 11: Statistical Learning of  Multi-View Face Detection

FloatBoostFloatBoost

Weak classifiers formed out of simple featuresWeak classifiers formed out of simple features In each stage, the weak classifier that reduces In each stage, the weak classifier that reduces

error most is addederror most is added In each stage, if any previously added classifier In each stage, if any previously added classifier

contributes to error reduction less than the latest contributes to error reduction less than the latest addition, this classifier is removedaddition, this classifier is removed

Result is a smaller feature set with same Result is a smaller feature set with same classification accuracyclassification accuracy

Page 12: Statistical Learning of  Multi-View Face Detection

MS FloatBoost FeaturesMS FloatBoost Features

For a 20 x 20 image: over 290,000 features (~500K ?)For a 20 x 20 image: over 290,000 features (~500K ?) Computed in constant time using integral imageComputed in constant time using integral image Weak classifiers consist of filter response thresholdWeak classifiers consist of filter response threshold

Microsoft

Viola-Jones

Page 13: Statistical Learning of  Multi-View Face Detection

FloatBoost AlgorithmFloatBoost Algorithm

Page 14: Statistical Learning of  Multi-View Face Detection

FloatBoost Weak ClassifiersFloatBoost Weak Classifiers

Can be portrayed as density estimation on single Can be portrayed as density estimation on single variables using average shifted histograms with variables using average shifted histograms with weighted examplesweighted examples

Each weak classifier is a 2-bin histogram from Each weak classifier is a 2-bin histogram from weighted examplesweighted examples

Weights serve to eliminate overcounting due to Weights serve to eliminate overcounting due to dependent variablesdependent variables

Strong classifier is a combination of estimated Strong classifier is a combination of estimated weighted PDFs for selected featuresweighted PDFs for selected features

Page 15: Statistical Learning of  Multi-View Face Detection

Multi-View Face DetectionMulti-View Face DetectionHead RotationsHead Rotations

In-Plane Rotations: -45 to 45 degrees

Out of Plane Rotation: -90 to 90 degrees Moderate Nodding

Page 16: Statistical Learning of  Multi-View Face Detection

Multi-View Face DetectionMulti-View Face DetectionDetector PyramidDetector Pyramid

Page 17: Statistical Learning of  Multi-View Face Detection

Multi-View Face DetectionMulti-View Face DetectionMerging ResultsMerging Results

Frontal Right Side Left Side

Page 18: Statistical Learning of  Multi-View Face Detection

Multi-View Face DetectionMulti-View Face DetectionSummarySummary

Simple, rectangular features usedSimple, rectangular features used FloatBoost selects and trains weak FloatBoost selects and trains weak

classifiersclassifiers A cascade of strong classifiers makes up A cascade of strong classifiers makes up

the overall detectorthe overall detector A coarse-to-fine evaluation is used to A coarse-to-fine evaluation is used to

efficiently find a broad range of out-of-efficiently find a broad range of out-of-plane rotated facesplane rotated faces

Page 19: Statistical Learning of  Multi-View Face Detection

Results: Frontal (MIT+CMU)Results: Frontal (MIT+CMU)

20x20 images20x20 images 3000 original faces, 6000 total3000 original faces, 6000 total 100,000 non-faces100,000 non-faces

Schneiderman

FloatBoost/AdaBoost/RBK

FloatBoost FloatBoost vs. Adaboost

Page 20: Statistical Learning of  Multi-View Face Detection

Results: Results: MS Adaboost vs. Viola-Jones AdaboostMS Adaboost vs. Viola-Jones Adaboost

More flexible featuresMore flexible features Confidence-weighted AdaBoostConfidence-weighted AdaBoost Smaller image sizeSmaller image size

Page 21: Statistical Learning of  Multi-View Face Detection

Results: ProfileResults: Profile

No Quantitative Results!!!

Page 22: Statistical Learning of  Multi-View Face Detection

FloatBoost vs. AdaBoostFloatBoost vs. AdaBoost

FloatBoost finds a more potent set of weak FloatBoost finds a more potent set of weak classifiers through a less greedy searchclassifiers through a less greedy search

FloatBoost results in a faster, more FloatBoost results in a faster, more accurate classifieraccurate classifier

FloatBoost requires longer training times FloatBoost requires longer training times (5 times longer)(5 times longer)

Page 23: Statistical Learning of  Multi-View Face Detection

FloatBoost vs. AdaBoostFloatBoost vs. AdaBoost1 Strong Classifier, 4000 objects, 4000 non-objects, 99.5% fixed detection

Page 24: Statistical Learning of  Multi-View Face Detection

FloatBoost: ProsFloatBoost: Pros

Very Fast Detection (5 fps multi-view)Very Fast Detection (5 fps multi-view)

Fairly High AccuracyFairly High Accuracy

Simple ImplementationSimple Implementation

Page 25: Statistical Learning of  Multi-View Face Detection

FloatBoost: ConsFloatBoost: Cons

Very long training timeVery long training time

Not highest accuracyNot highest accuracy

Does it work well for non-frontal faces and Does it work well for non-frontal faces and other objects?other objects?