SlideShare une entreprise Scribd logo
1  sur  31
Robust Real-time Face
Detection

by
Paul Viola and Michael Jones, 2002

Presentation by Baatarbek Ryskhan
IT-SoC Research Lab.
School of Engineering, Yonsei University
Batyrbek@yonsei.ac.kr
October, 2013
Contents :









Overview
Goals
Methods (Integral Image/AdaBoost/Cascade)
Example
Result
Back-Up Slides
Ending & Discussion

[2]

IT SoC Research Lab.
Overview






Robust – very high Detection Rate (True-Positive Rat
e) & very low False-Positive Rate… (always)
Real Time – For practical applications at least 2
frames per second must be processed.
Face Detection – not recognition. The goal is to
nguish faces from non-faces (face detection
is the first step in the identification process)

[3]

disti

IT SoC Research Lab.
Three goals & a conclusion
1.
2.
3.
4.

Feature Computation : what features? And how

can they be computed as quickly as possible
Feature Selection : select the most discriminatin
g features
Real-timeliness : must focus on potentially positi
ve areas (that contain faces)
Conclusion : presentation of results and discussi
on of detection issues.

How did Viola & Jones deal with these challenges?

[4]

IT SoC Research Lab.
Three solutions


Feature Computation
~The “Integral” image representation



Feature Selection
~The AdaBoost training algorithm



Real-timeliness

A cascade of classifiers

~

IT SoC Research Lab.
Overview | Integral Image | AdaBoost | Cascade

Features






Can a simple feature (i.e. a value) indica
te the existence of a face?
All faces share some similar properties
The eyes region is darker than the
upper-cheeks.
The nose bridge region is brighter
than the eyes.
That is useful domain knowledge
Need for encoding of Domain Knowledg
e:
Location - Size: eyes & nose bridge reg
ion
Value: darker / brighter

[6]

IT SoC Research Lab.
Overview | Integral Image | AdaBoost | Cascade



Rectangle features:

Value = ∑ (pixels in black area) - ∑ (pix
els in white area)
Three types: two-, three-, four-rectangle
s, Viola&Jones used two-rectangle featu
res
For example: the difference in brightnes
s between the white &black rectangles o
ver a specific area






Each feature is related to a special locat
ion in the sub-window
Each feature may have any size
Why not pixels instead of features?
Features encode domain knowledge
Feature based systems operate faster

[7]

IT SoC Research Lab.
Overview | Integral Image | AdaBoost | Cascade

back-up slide #1
IMAGE

INTEGRAL IMAGE

0

1

1

1

0

1

2

3

1

2

2

3

1

4

7

11

1

2

1

1

2

7

11 16

1

3

1

0

3

11 16 21

[9]

IT SoC Research Lab.
Overview | Integral Image | AdaBoost | Cascade

Rapid computation of rectangular features


Using the integral image representati
on we can compute the value of any
rectangular sum (part of features) in

constant time

For example the integral sum inside r
ectangle D can be computed as:

ii(d) + ii(a) – ii(b) – ii(c)




two-, three-, and four-rectangular feat
ures can be computed with 6, 8 and
9 array references respectively.
As a result: feature computation
takes less time

[10]

ii(a) = A
ii(b) = A+B
ii(c) = A+C
ii(d) = A+B+C+
D
D = ii(d)+ii(a)-ii(
b)-ii(c)
IT SoC Research Lab.
Overview | Integral Image | AdaBoost | Cascade

Three goals
1.

Feature Computation : features must be computed as quic

2.

Feature Selection : select the most discriminating features
Real-timeliness : must focus on potentially positive

3.

kly as possible

image areas (that contain faces)

How did Viola & Jones deal with these challenges?

[11]

IT SoC Research Lab.
Overview | Integral Image | AdaBoost | Cascade

Feature selection



Problem: Too many features

In a sub-window (24x24) there are ~1
60,000 features (all possible combinat
ions of orientation, location and scale
of these feature types)
impractical to compute all of them (co
mputationally expensive)



We have to select a subset of relevan
t features – which are informative - to
model a face

Hypothesis: “A very small subset of fe
atures can be combined to form an ef
fective classifier”

How? SOLUTION:

AdaBoost algorithm

Relevant feature Irrelevant feature
[12]

IT SoC Research Lab.
Overview | Integral Image | AdaBoost | Cascade

AdaBoost



Stands for “Adaptive” boost
Constructs a “strong” classifier as a linear combi
nation of weighted simple “weak” classifiers

Weak classifier
Strong
Image
classifier

Weight

[13]

IT SoC Research Lab.
Overview | Integral Image | AdaBoost | Cascade

AdaBoost - Characteristics


Features as weak classifiers
Each single rectangle feature may be regarded as a simple weak
classifier



An iterative algorithm
AdaBoost performs a series of trials, each time selecting a new
weak classifier



Weights are being applied over the set of the example im
ages
During each iteration, each example/image receives a weight det
ermining its importance

[14]

IT SoC Research Lab.
Overview | Integral Image | AdaBoost | Cascade
AdaBoost - Getting the idea…





Given: example images labeled +/Initially, all weights set equally
Repeat T times
Step 1: choose the most efficient weak classifier that will be a compone
nt of the final strong classifier (Problem! Remember the huge number of
features…)
Step 2: Update the weights to emphasize the examples which were inco
rrectly classified
This makes the next weak classifier to focus on “harder” examples
Final (strong) classifier is a weighted combination of the T “weak” classifiers
Weighted according to their accuracy

h( x )

1
0

T
t 1

1
2
otherwise

( x)
t ht

[15]

T
t 1

t

IT SoC Research Lab.
Overview | Integral Image | AdaBoost | Cascade
AdaBoost – Feature Selection

Problem




On each round, large set of possible weak classifiers ( each simple cla
ssifier consists of a single feature) – Which one to choose?
choose the most efficient (the one that best separates the examp
les – the lowest error)
choice of a classifier corresponds to choice of a feature
At the end, the ‘strong’ classifier consists of T features

Conclusion





AdaBoost searches for a small number of good classifiers – features
(feature selection)
adaptively constructs a final strong classifier taking into account the f
ailures of each one of the chosen weak classifiers (weight appliance)
AdaBoost is used to both select a small set of features and train a st
rong classifier

[16]

IT SoC Research Lab.
AdaBoost EXAMPLE adopted
(from University of Edinburg/2009)
Note: Prepared with figures adopted from
“Robust real-time object detection”
CRL 2001/01 and Edinburg 2009)

[17]

IT SoC Research Lab.
Overview | Integral Image | AdaBoost | Cascade
AdaBoost example:
 AdaBoost starts with a uniform
distribution of “weights” over training exam
ples.
 Select the classifier with the lowest
weighted error (i.e. a “weak” classifier)
 Increase the weights on the training exam
ples that were misclassified.
 (Repeat)
 At the end, carefully make a linear combi
nation of the weak classifiers obtained at all
iterations.

hstrong (x)

1

1h ( x) 
1

0

1
2
otherwise
n hn ( x)

1



n

Slide taken from a presentation by Qing Chen, Discover Lab, University of Ottawa
[18]

IT SoC Research Lab.
Overview | Integral Image | AdaBoost | Cascade
Now we have a good face detector



Thus, We can build a 200-featpic
ture classifier.
Experiments showed that a
200-feature classifier achieves:

95% detection rate
0.14x10-3 FP rate (1 in 14084)
Scans all sub-windows of a 384x
288 pixel image in 0.7 seconds (
on Intel PIII 700MHz)



The more the better (?)



Verdict: good & fast, but not enou
gh

Gain in classifier performance
Lose in CPU time

Competitors achieve close to 1 i
n a 1.000.000 FP rate!
0.7 sec / frame IS NOT real-time
.

[19]

IT SoC Research Lab.
Overview | Integral Image | AdaBoost | Cascade

Three goals
1.

Feature Computation : features must be computed as quic

2.

Feature Selection : select the most discriminating features
Real-timeliness : must focus on potentially positive image

3.

kly as possible

areas (that contain faces)

How did Viola & Jones deal with these challenges?

[20]

IT SoC Research Lab.
Overview | Integral Image | AdaBoost | Cascade

The attentional cascade












On average only 0.01% of all sub-win
dows are positive (are faces)
Status Quo: equal computation time is
spent on all sub-windows
Must spend most time only on potenti
ally positive sub-windows.
A simple 2-feature classifier can achie
ve almost 100% detection rate with 50
% FP rate.
That classifier can act as a 1st layer of
a series to filter out most negative win
dows
2nd layer with 10 features can tackle “
harder” negative-windows which survi
ved the 1st layer, and so on…
A cascade of gradually more complex
classifiers achieves even better detect
ion rates.
[21]

On average, much fewer featur
es are computed per sub-wind
ow (i.e. speed x 10)

IT SoC Research Lab.
Overview | Integral Image | AdaBoost | Cascade
Training a cascade of classifiers


Keep in mind:
Competitors achieved 95% TP rate,10-6 FP rate
 These are the goals. Final cascade must do better!




Given the goals, to design a cascade we must choose:



Number of features of each strong classifier (the „T‟ in definition)





Number of layers in cascade (strong classifiers)

Threshold of each strong classifier (the

T
t

t 1

in definition)

Strong classifier definition:

Optimization problem:


1
2

Can we find optimum combination?

T

h( x )

1
t 1

0

where

t

1
2
otherwise

( x)
t ht

log(

1

),
t

[22]

T
t
t 1

,

t
t

1

t

IT SoC Research Lab.
Overview | Integral Image | AdaBoost | Cascade
A simple framework for cascade training


Viola & Jones suggested a heuristic algorithm for the cascade trai
ning: (pseudo-code at backup slide # 3)





does not guarantee optimality
but produces a “effective” cascade that meets previous goals

Manual Tweaking:
overall training outcome is highly depended on user‟s choices
select fi (Maximum Acceptable False Positive rate / layer)
 select di (Minimum Acceptable True Positive rate / layer)
 select Ftarget (Target Overall FP rate)
 possible repeat trial & error process for a given training set





Until Ftarget is met:


Add new layer:


Until fi , di rates are met for this layer



Increase feature number & train new strong classifier with AdaBoost
Determine rates of layer on validation set
[23]

IT SoC Research Lab.
Overview | Integral Image | AdaBoost | Cascade

backup slide #3
User selects values for f, the maximum acceptable false positive rate per layer and d,
the minimum acceptable detection rate per layer.
User selects target overall false positive rate Ftarget.
P = set of positive examples
N = set of negative examples
F0 = 1.0; D0 = 1.0; i = 0
While Fi > Ftarget
i++
ni = 0; Fi = Fi-1
while Fi > f x Fi-1
o ni ++
o Use P and N to train a classifier with ni features using AdaBoost
o Evaluate current cascaded classifier on validation set to determine Fi and Di
o Decrease threshold for the ith classifier until the current cascaded classifier has
a detection rate of at least d x Di-1 (this also affects Fi)
N=
If Fi > Ftarget then evaluate the current cascaded detector on the set of non-face
images and put any false detections into the set N.
[24]

IT SoC Research Lab.
Overview | Integral Image | AdaBoost | Cascade

Three goals
1.

Feature Computation : features must be computed as quic

2.

Feature Selection : select the most discriminating features

3.

Real-timeliness : must focus on potentially positive imag

kly as possible

e areas (that contain faces)

How did Viola & Jones deal with these challenges?

[25]

IT SoC Research Lab.
Overview | Integral Image | AdaBoost | Cascade

Training phase
Testing phase
Cascade trainer
Training
Set

Integral
Representation

(sub-wind
ows)

Classifier cascade fr
amework
Strong Classifier 1
(cascade stage 1)

Feature
computation
AdaBoost
Feature Selection

Strong Classifier 2
(cascade stage 2)

Strong Classifier N
FACE IDENTIFIED stage N)
(cascade
IT SoC Research Lab.
Therefore:





Extremely fast feature computation
Efficient feature selection
Scale and location invariant detector






Such a generic detection scheme can be trained for detection of ot
her types of objects (e.g. cars, hands)

Detector is most effective only on frontal images of faces





Instead of scaling the image itself (e.g. pyramid-filters), we scale the f
eatures.

can hardly cope with 45o face rotation

Sensitive to lighting conditions
We might get multiple detections of the same face, due to overlap
ping sub-windows.

[27]

IT SoC Research Lab.
Results
(detailed results at back-up slide #4)

[28]

IT SoC Research Lab.
Results (Cont.)

[29]

IT SoC Research Lab.
backup slide #4


Viola & Jones prepared their final Detector cascade:



38 layers, 6060 total features included
1st classifier- layer, 2-features




50% FP rate, 99.9% TP rate

2nd classifier- layer, 10-features


20% FP rate, 99.9% TP rate



next 2 layers 25-features each, next 3 layers 50-features each
 and so on…



Tested on the MIT+MCU test set
a 384x288 pixel image on an PC (dated 2001) took about 0.067 s
econds

Detector
Viola-Jones
Rowley-Baluja-Kanade
Schneiderman-Kanade
Roth-Yang-Ajuha

10
76.1%
83.2%
-

31
88.4%
86.0%
-

False detections
50
65
78
95
91.4% 92.0% 92.1% 92.9%
89.2% 89.2%
94.4%
-

167
93.9%
90.1%
-

422
94.1%
89.9%
-

Detection rates for various numbers of false positives on the MIT+MCU test set containing 130 images a
nd 507 faces (Viola & Jones 2002)
[30]

IT SoC Research Lab.
Thanks for your Attention!
Q & A?

[31]

IT SoC Research Lab.

Contenu connexe

Tendances

Face recognition using artificial neural network
Face recognition using artificial neural networkFace recognition using artificial neural network
Face recognition using artificial neural network
Sumeet Kakani
 
Project Face Detection
Project Face Detection Project Face Detection
Project Face Detection
Abu Saleh Musa
 
Face Recognition
Face Recognition Face Recognition
Face Recognition
nialler27
 
Real-time Face Recognition & Detection Systems 1
Real-time Face Recognition & Detection Systems 1Real-time Face Recognition & Detection Systems 1
Real-time Face Recognition & Detection Systems 1
Suvadip Shome
 
FACE RECOGNITION USING NEURAL NETWORK
FACE RECOGNITION USING NEURAL NETWORKFACE RECOGNITION USING NEURAL NETWORK
FACE RECOGNITION USING NEURAL NETWORK
TITHI DAN
 

Tendances (20)

Face detection ppt
Face detection pptFace detection ppt
Face detection ppt
 
You Only Look Once: Unified, Real-Time Object Detection
You Only Look Once: Unified, Real-Time Object DetectionYou Only Look Once: Unified, Real-Time Object Detection
You Only Look Once: Unified, Real-Time Object Detection
 
Face recognition using artificial neural network
Face recognition using artificial neural networkFace recognition using artificial neural network
Face recognition using artificial neural network
 
face detection
face detectionface detection
face detection
 
Project Face Detection
Project Face Detection Project Face Detection
Project Face Detection
 
Computer vision - Applications and Trends
Computer vision - Applications and TrendsComputer vision - Applications and Trends
Computer vision - Applications and Trends
 
Face Recognition
Face Recognition Face Recognition
Face Recognition
 
face recognition system using LBP
face recognition system using LBPface recognition system using LBP
face recognition system using LBP
 
Mini Project- Face Recognition
Mini Project- Face RecognitionMini Project- Face Recognition
Mini Project- Face Recognition
 
Real-time Face Recognition & Detection Systems 1
Real-time Face Recognition & Detection Systems 1Real-time Face Recognition & Detection Systems 1
Real-time Face Recognition & Detection Systems 1
 
Facial recognition system
Facial recognition systemFacial recognition system
Facial recognition system
 
YOLOv4: optimal speed and accuracy of object detection review
YOLOv4: optimal speed and accuracy of object detection reviewYOLOv4: optimal speed and accuracy of object detection review
YOLOv4: optimal speed and accuracy of object detection review
 
Image Acquisition
Image AcquisitionImage Acquisition
Image Acquisition
 
Yolo
YoloYolo
Yolo
 
An Introduction to Face Detection
An Introduction to Face DetectionAn Introduction to Face Detection
An Introduction to Face Detection
 
FACE RECOGNITION USING NEURAL NETWORK
FACE RECOGNITION USING NEURAL NETWORKFACE RECOGNITION USING NEURAL NETWORK
FACE RECOGNITION USING NEURAL NETWORK
 
openCV with python
openCV with pythonopenCV with python
openCV with python
 
Face recognition
Face recognitionFace recognition
Face recognition
 
Image classification using CNN
Image classification using CNNImage classification using CNN
Image classification using CNN
 
Face recognition system
Face recognition systemFace recognition system
Face recognition system
 

En vedette

Face detection using template matching
Face detection using template matchingFace detection using template matching
Face detection using template matching
Brijesh Borad
 
Face recognition ppt
Face recognition pptFace recognition ppt
Face recognition ppt
Santosh Kumar
 
Face recognition technology - BEST PPT
Face recognition technology - BEST PPTFace recognition technology - BEST PPT
Face recognition technology - BEST PPT
Siddharth Modi
 
Robust real time object detection
Robust real time object detectionRobust real time object detection
Robust real time object detection
Erliyah Jannah
 
Facial recognition powerpoint
Facial recognition powerpointFacial recognition powerpoint
Facial recognition powerpoint
12206695
 
Face Recognition Technology
Face Recognition TechnologyFace Recognition Technology
Face Recognition Technology
Agrani Rastogi
 
Face Recognition
Face RecognitionFace Recognition
Face Recognition
laknatha
 

En vedette (20)

Face detection using template matching
Face detection using template matchingFace detection using template matching
Face detection using template matching
 
Face recognition ppt
Face recognition pptFace recognition ppt
Face recognition ppt
 
Face Detection
Face DetectionFace Detection
Face Detection
 
Face recognition technology - BEST PPT
Face recognition technology - BEST PPTFace recognition technology - BEST PPT
Face recognition technology - BEST PPT
 
Face Detection
Face DetectionFace Detection
Face Detection
 
Face detection By Abdul Hanan
Face detection By Abdul HananFace detection By Abdul Hanan
Face detection By Abdul Hanan
 
Robust real time object detection
Robust real time object detectionRobust real time object detection
Robust real time object detection
 
Face detection
Face detectionFace detection
Face detection
 
Template Matching - Pattern Recognition
Template Matching - Pattern RecognitionTemplate Matching - Pattern Recognition
Template Matching - Pattern Recognition
 
Face detection presentation slide
Face detection  presentation slideFace detection  presentation slide
Face detection presentation slide
 
Automated Face Detection System
Automated Face Detection SystemAutomated Face Detection System
Automated Face Detection System
 
Facial recognition powerpoint
Facial recognition powerpointFacial recognition powerpoint
Facial recognition powerpoint
 
Face Recognition Technology
Face Recognition TechnologyFace Recognition Technology
Face Recognition Technology
 
face recognition
face recognitionface recognition
face recognition
 
Face Detection System on Ada boost Algorithm Using Haar Classifiers
Face Detection System on Ada boost Algorithm Using Haar ClassifiersFace Detection System on Ada boost Algorithm Using Haar Classifiers
Face Detection System on Ada boost Algorithm Using Haar Classifiers
 
Face recognition using LDA
Face recognition using LDAFace recognition using LDA
Face recognition using LDA
 
Object detection
Object detectionObject detection
Object detection
 
Face Recognition using PCA-Principal Component Analysis using MATLAB
Face Recognition using PCA-Principal Component Analysis using MATLABFace Recognition using PCA-Principal Component Analysis using MATLAB
Face Recognition using PCA-Principal Component Analysis using MATLAB
 
Face Recognition
Face RecognitionFace Recognition
Face Recognition
 
Face recognition vaishali
Face recognition vaishaliFace recognition vaishali
Face recognition vaishali
 

Similaire à Face detection ppt by Batyrbek

Rapid object detection using boosted cascade of simple features
Rapid object detection using boosted  cascade of simple featuresRapid object detection using boosted  cascade of simple features
Rapid object detection using boosted cascade of simple features
Hirantha Pradeep
 
EELE 5331 Digital ASIC DesignLab ManualDr. Yushi Zhou.docx
EELE 5331 Digital ASIC DesignLab ManualDr. Yushi Zhou.docxEELE 5331 Digital ASIC DesignLab ManualDr. Yushi Zhou.docx
EELE 5331 Digital ASIC DesignLab ManualDr. Yushi Zhou.docx
toltonkendal
 
Etabs example-rc building seismic load response-
Etabs example-rc building seismic load  response-Etabs example-rc building seismic load  response-
Etabs example-rc building seismic load response-
Bhaskar Alapati
 

Similaire à Face detection ppt by Batyrbek (20)

IMAGE PROCESSING
IMAGE PROCESSINGIMAGE PROCESSING
IMAGE PROCESSING
 
Tutorial-on-DNN-09A-Co-design-Sparsity.pdf
Tutorial-on-DNN-09A-Co-design-Sparsity.pdfTutorial-on-DNN-09A-Co-design-Sparsity.pdf
Tutorial-on-DNN-09A-Co-design-Sparsity.pdf
 
Rapid object detection using boosted cascade of simple features
Rapid object detection using boosted  cascade of simple featuresRapid object detection using boosted  cascade of simple features
Rapid object detection using boosted cascade of simple features
 
Static Energy Prediction in Software: A Worst-Case Scenario Approach
Static Energy Prediction in Software: A Worst-Case Scenario ApproachStatic Energy Prediction in Software: A Worst-Case Scenario Approach
Static Energy Prediction in Software: A Worst-Case Scenario Approach
 
Lesson 39
Lesson 39Lesson 39
Lesson 39
 
AI Lesson 39
AI Lesson 39AI Lesson 39
AI Lesson 39
 
机器学习Adaboost
机器学习Adaboost机器学习Adaboost
机器学习Adaboost
 
Lbc data reduction
Lbc data reductionLbc data reduction
Lbc data reduction
 
EELE 5331 Digital ASIC DesignLab ManualDr. Yushi Zhou.docx
EELE 5331 Digital ASIC DesignLab ManualDr. Yushi Zhou.docxEELE 5331 Digital ASIC DesignLab ManualDr. Yushi Zhou.docx
EELE 5331 Digital ASIC DesignLab ManualDr. Yushi Zhou.docx
 
B Eng Final Year Project Presentation
B Eng Final Year Project PresentationB Eng Final Year Project Presentation
B Eng Final Year Project Presentation
 
Etabs example-rc building seismic load response-
Etabs example-rc building seismic load  response-Etabs example-rc building seismic load  response-
Etabs example-rc building seismic load response-
 
Tackling Open Images Challenge (2019)
Tackling Open Images Challenge (2019)Tackling Open Images Challenge (2019)
Tackling Open Images Challenge (2019)
 
Large-scale Recommendation Systems on Just a PC
Large-scale Recommendation Systems on Just a PCLarge-scale Recommendation Systems on Just a PC
Large-scale Recommendation Systems on Just a PC
 
Aggregate Computing Platforms: Bridging the Gaps
Aggregate Computing Platforms: Bridging the GapsAggregate Computing Platforms: Bridging the Gaps
Aggregate Computing Platforms: Bridging the Gaps
 
"Energy-efficient Hardware for Embedded Vision and Deep Convolutional Neural ...
"Energy-efficient Hardware for Embedded Vision and Deep Convolutional Neural ..."Energy-efficient Hardware for Embedded Vision and Deep Convolutional Neural ...
"Energy-efficient Hardware for Embedded Vision and Deep Convolutional Neural ...
 
Semantic Image Retrieval Using Relevance Feedback
Semantic Image Retrieval Using Relevance Feedback  Semantic Image Retrieval Using Relevance Feedback
Semantic Image Retrieval Using Relevance Feedback
 
Log polar coordinates
Log polar coordinatesLog polar coordinates
Log polar coordinates
 
A More Scaleable Way of Making Recommendations with MLlib-(Xiangrui Meng, Dat...
A More Scaleable Way of Making Recommendations with MLlib-(Xiangrui Meng, Dat...A More Scaleable Way of Making Recommendations with MLlib-(Xiangrui Meng, Dat...
A More Scaleable Way of Making Recommendations with MLlib-(Xiangrui Meng, Dat...
 
Angular Optimization Web Performance Meetup
Angular Optimization Web Performance MeetupAngular Optimization Web Performance Meetup
Angular Optimization Web Performance Meetup
 
[CVPR2020] Simple but effective image enhancement techniques
[CVPR2020] Simple but effective image enhancement techniques[CVPR2020] Simple but effective image enhancement techniques
[CVPR2020] Simple but effective image enhancement techniques
 

Dernier

The basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptxThe basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptx
heathfieldcps1
 
Spellings Wk 3 English CAPS CARES Please Practise
Spellings Wk 3 English CAPS CARES Please PractiseSpellings Wk 3 English CAPS CARES Please Practise
Spellings Wk 3 English CAPS CARES Please Practise
AnaAcapella
 
Salient Features of India constitution especially power and functions
Salient Features of India constitution especially power and functionsSalient Features of India constitution especially power and functions
Salient Features of India constitution especially power and functions
KarakKing
 
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
ZurliaSoop
 

Dernier (20)

Accessible Digital Futures project (20/03/2024)
Accessible Digital Futures project (20/03/2024)Accessible Digital Futures project (20/03/2024)
Accessible Digital Futures project (20/03/2024)
 
The basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptxThe basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptx
 
Introduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The BasicsIntroduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The Basics
 
How to Give a Domain for a Field in Odoo 17
How to Give a Domain for a Field in Odoo 17How to Give a Domain for a Field in Odoo 17
How to Give a Domain for a Field in Odoo 17
 
Spellings Wk 3 English CAPS CARES Please Practise
Spellings Wk 3 English CAPS CARES Please PractiseSpellings Wk 3 English CAPS CARES Please Practise
Spellings Wk 3 English CAPS CARES Please Practise
 
This PowerPoint helps students to consider the concept of infinity.
This PowerPoint helps students to consider the concept of infinity.This PowerPoint helps students to consider the concept of infinity.
This PowerPoint helps students to consider the concept of infinity.
 
Making communications land - Are they received and understood as intended? we...
Making communications land - Are they received and understood as intended? we...Making communications land - Are they received and understood as intended? we...
Making communications land - Are they received and understood as intended? we...
 
How to Create and Manage Wizard in Odoo 17
How to Create and Manage Wizard in Odoo 17How to Create and Manage Wizard in Odoo 17
How to Create and Manage Wizard in Odoo 17
 
Unit-V; Pricing (Pharma Marketing Management).pptx
Unit-V; Pricing (Pharma Marketing Management).pptxUnit-V; Pricing (Pharma Marketing Management).pptx
Unit-V; Pricing (Pharma Marketing Management).pptx
 
General Principles of Intellectual Property: Concepts of Intellectual Proper...
General Principles of Intellectual Property: Concepts of Intellectual  Proper...General Principles of Intellectual Property: Concepts of Intellectual  Proper...
General Principles of Intellectual Property: Concepts of Intellectual Proper...
 
Sociology 101 Demonstration of Learning Exhibit
Sociology 101 Demonstration of Learning ExhibitSociology 101 Demonstration of Learning Exhibit
Sociology 101 Demonstration of Learning Exhibit
 
SOC 101 Demonstration of Learning Presentation
SOC 101 Demonstration of Learning PresentationSOC 101 Demonstration of Learning Presentation
SOC 101 Demonstration of Learning Presentation
 
Salient Features of India constitution especially power and functions
Salient Features of India constitution especially power and functionsSalient Features of India constitution especially power and functions
Salient Features of India constitution especially power and functions
 
Unit-IV- Pharma. Marketing Channels.pptx
Unit-IV- Pharma. Marketing Channels.pptxUnit-IV- Pharma. Marketing Channels.pptx
Unit-IV- Pharma. Marketing Channels.pptx
 
On National Teacher Day, meet the 2024-25 Kenan Fellows
On National Teacher Day, meet the 2024-25 Kenan FellowsOn National Teacher Day, meet the 2024-25 Kenan Fellows
On National Teacher Day, meet the 2024-25 Kenan Fellows
 
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
 
ICT Role in 21st Century Education & its Challenges.pptx
ICT Role in 21st Century Education & its Challenges.pptxICT Role in 21st Century Education & its Challenges.pptx
ICT Role in 21st Century Education & its Challenges.pptx
 
ComPTIA Overview | Comptia Security+ Book SY0-701
ComPTIA Overview | Comptia Security+ Book SY0-701ComPTIA Overview | Comptia Security+ Book SY0-701
ComPTIA Overview | Comptia Security+ Book SY0-701
 
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdfUGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
 
HMCS Max Bernays Pre-Deployment Brief (May 2024).pptx
HMCS Max Bernays Pre-Deployment Brief (May 2024).pptxHMCS Max Bernays Pre-Deployment Brief (May 2024).pptx
HMCS Max Bernays Pre-Deployment Brief (May 2024).pptx
 

Face detection ppt by Batyrbek

  • 1. Robust Real-time Face Detection by Paul Viola and Michael Jones, 2002 Presentation by Baatarbek Ryskhan IT-SoC Research Lab. School of Engineering, Yonsei University Batyrbek@yonsei.ac.kr October, 2013
  • 2. Contents :        Overview Goals Methods (Integral Image/AdaBoost/Cascade) Example Result Back-Up Slides Ending & Discussion [2] IT SoC Research Lab.
  • 3. Overview    Robust – very high Detection Rate (True-Positive Rat e) & very low False-Positive Rate… (always) Real Time – For practical applications at least 2 frames per second must be processed. Face Detection – not recognition. The goal is to nguish faces from non-faces (face detection is the first step in the identification process) [3] disti IT SoC Research Lab.
  • 4. Three goals & a conclusion 1. 2. 3. 4. Feature Computation : what features? And how can they be computed as quickly as possible Feature Selection : select the most discriminatin g features Real-timeliness : must focus on potentially positi ve areas (that contain faces) Conclusion : presentation of results and discussi on of detection issues. How did Viola & Jones deal with these challenges? [4] IT SoC Research Lab.
  • 5. Three solutions  Feature Computation ~The “Integral” image representation  Feature Selection ~The AdaBoost training algorithm  Real-timeliness A cascade of classifiers ~ IT SoC Research Lab.
  • 6. Overview | Integral Image | AdaBoost | Cascade Features    Can a simple feature (i.e. a value) indica te the existence of a face? All faces share some similar properties The eyes region is darker than the upper-cheeks. The nose bridge region is brighter than the eyes. That is useful domain knowledge Need for encoding of Domain Knowledg e: Location - Size: eyes & nose bridge reg ion Value: darker / brighter [6] IT SoC Research Lab.
  • 7. Overview | Integral Image | AdaBoost | Cascade  Rectangle features: Value = ∑ (pixels in black area) - ∑ (pix els in white area) Three types: two-, three-, four-rectangle s, Viola&Jones used two-rectangle featu res For example: the difference in brightnes s between the white &black rectangles o ver a specific area    Each feature is related to a special locat ion in the sub-window Each feature may have any size Why not pixels instead of features? Features encode domain knowledge Feature based systems operate faster [7] IT SoC Research Lab.
  • 8.
  • 9. Overview | Integral Image | AdaBoost | Cascade back-up slide #1 IMAGE INTEGRAL IMAGE 0 1 1 1 0 1 2 3 1 2 2 3 1 4 7 11 1 2 1 1 2 7 11 16 1 3 1 0 3 11 16 21 [9] IT SoC Research Lab.
  • 10. Overview | Integral Image | AdaBoost | Cascade Rapid computation of rectangular features  Using the integral image representati on we can compute the value of any rectangular sum (part of features) in constant time For example the integral sum inside r ectangle D can be computed as: ii(d) + ii(a) – ii(b) – ii(c)   two-, three-, and four-rectangular feat ures can be computed with 6, 8 and 9 array references respectively. As a result: feature computation takes less time [10] ii(a) = A ii(b) = A+B ii(c) = A+C ii(d) = A+B+C+ D D = ii(d)+ii(a)-ii( b)-ii(c) IT SoC Research Lab.
  • 11. Overview | Integral Image | AdaBoost | Cascade Three goals 1. Feature Computation : features must be computed as quic 2. Feature Selection : select the most discriminating features Real-timeliness : must focus on potentially positive 3. kly as possible image areas (that contain faces) How did Viola & Jones deal with these challenges? [11] IT SoC Research Lab.
  • 12. Overview | Integral Image | AdaBoost | Cascade Feature selection  Problem: Too many features In a sub-window (24x24) there are ~1 60,000 features (all possible combinat ions of orientation, location and scale of these feature types) impractical to compute all of them (co mputationally expensive)  We have to select a subset of relevan t features – which are informative - to model a face Hypothesis: “A very small subset of fe atures can be combined to form an ef fective classifier” How? SOLUTION: AdaBoost algorithm Relevant feature Irrelevant feature [12] IT SoC Research Lab.
  • 13. Overview | Integral Image | AdaBoost | Cascade AdaBoost   Stands for “Adaptive” boost Constructs a “strong” classifier as a linear combi nation of weighted simple “weak” classifiers Weak classifier Strong Image classifier Weight [13] IT SoC Research Lab.
  • 14. Overview | Integral Image | AdaBoost | Cascade AdaBoost - Characteristics  Features as weak classifiers Each single rectangle feature may be regarded as a simple weak classifier  An iterative algorithm AdaBoost performs a series of trials, each time selecting a new weak classifier  Weights are being applied over the set of the example im ages During each iteration, each example/image receives a weight det ermining its importance [14] IT SoC Research Lab.
  • 15. Overview | Integral Image | AdaBoost | Cascade AdaBoost - Getting the idea…    Given: example images labeled +/Initially, all weights set equally Repeat T times Step 1: choose the most efficient weak classifier that will be a compone nt of the final strong classifier (Problem! Remember the huge number of features…) Step 2: Update the weights to emphasize the examples which were inco rrectly classified This makes the next weak classifier to focus on “harder” examples Final (strong) classifier is a weighted combination of the T “weak” classifiers Weighted according to their accuracy h( x ) 1 0 T t 1 1 2 otherwise ( x) t ht [15] T t 1 t IT SoC Research Lab.
  • 16. Overview | Integral Image | AdaBoost | Cascade AdaBoost – Feature Selection Problem   On each round, large set of possible weak classifiers ( each simple cla ssifier consists of a single feature) – Which one to choose? choose the most efficient (the one that best separates the examp les – the lowest error) choice of a classifier corresponds to choice of a feature At the end, the ‘strong’ classifier consists of T features Conclusion    AdaBoost searches for a small number of good classifiers – features (feature selection) adaptively constructs a final strong classifier taking into account the f ailures of each one of the chosen weak classifiers (weight appliance) AdaBoost is used to both select a small set of features and train a st rong classifier [16] IT SoC Research Lab.
  • 17. AdaBoost EXAMPLE adopted (from University of Edinburg/2009) Note: Prepared with figures adopted from “Robust real-time object detection” CRL 2001/01 and Edinburg 2009) [17] IT SoC Research Lab.
  • 18. Overview | Integral Image | AdaBoost | Cascade AdaBoost example:  AdaBoost starts with a uniform distribution of “weights” over training exam ples.  Select the classifier with the lowest weighted error (i.e. a “weak” classifier)  Increase the weights on the training exam ples that were misclassified.  (Repeat)  At the end, carefully make a linear combi nation of the weak classifiers obtained at all iterations. hstrong (x) 1 1h ( x)  1 0 1 2 otherwise n hn ( x) 1  n Slide taken from a presentation by Qing Chen, Discover Lab, University of Ottawa [18] IT SoC Research Lab.
  • 19. Overview | Integral Image | AdaBoost | Cascade Now we have a good face detector   Thus, We can build a 200-featpic ture classifier. Experiments showed that a 200-feature classifier achieves: 95% detection rate 0.14x10-3 FP rate (1 in 14084) Scans all sub-windows of a 384x 288 pixel image in 0.7 seconds ( on Intel PIII 700MHz)  The more the better (?)  Verdict: good & fast, but not enou gh Gain in classifier performance Lose in CPU time Competitors achieve close to 1 i n a 1.000.000 FP rate! 0.7 sec / frame IS NOT real-time . [19] IT SoC Research Lab.
  • 20. Overview | Integral Image | AdaBoost | Cascade Three goals 1. Feature Computation : features must be computed as quic 2. Feature Selection : select the most discriminating features Real-timeliness : must focus on potentially positive image 3. kly as possible areas (that contain faces) How did Viola & Jones deal with these challenges? [20] IT SoC Research Lab.
  • 21. Overview | Integral Image | AdaBoost | Cascade The attentional cascade        On average only 0.01% of all sub-win dows are positive (are faces) Status Quo: equal computation time is spent on all sub-windows Must spend most time only on potenti ally positive sub-windows. A simple 2-feature classifier can achie ve almost 100% detection rate with 50 % FP rate. That classifier can act as a 1st layer of a series to filter out most negative win dows 2nd layer with 10 features can tackle “ harder” negative-windows which survi ved the 1st layer, and so on… A cascade of gradually more complex classifiers achieves even better detect ion rates. [21] On average, much fewer featur es are computed per sub-wind ow (i.e. speed x 10) IT SoC Research Lab.
  • 22. Overview | Integral Image | AdaBoost | Cascade Training a cascade of classifiers  Keep in mind: Competitors achieved 95% TP rate,10-6 FP rate  These are the goals. Final cascade must do better!   Given the goals, to design a cascade we must choose:   Number of features of each strong classifier (the „T‟ in definition)   Number of layers in cascade (strong classifiers) Threshold of each strong classifier (the T t t 1 in definition) Strong classifier definition: Optimization problem:  1 2 Can we find optimum combination? T h( x ) 1 t 1 0 where t 1 2 otherwise ( x) t ht log( 1 ), t [22] T t t 1 , t t 1 t IT SoC Research Lab.
  • 23. Overview | Integral Image | AdaBoost | Cascade A simple framework for cascade training  Viola & Jones suggested a heuristic algorithm for the cascade trai ning: (pseudo-code at backup slide # 3)    does not guarantee optimality but produces a “effective” cascade that meets previous goals Manual Tweaking: overall training outcome is highly depended on user‟s choices select fi (Maximum Acceptable False Positive rate / layer)  select di (Minimum Acceptable True Positive rate / layer)  select Ftarget (Target Overall FP rate)  possible repeat trial & error process for a given training set    Until Ftarget is met:  Add new layer:  Until fi , di rates are met for this layer   Increase feature number & train new strong classifier with AdaBoost Determine rates of layer on validation set [23] IT SoC Research Lab.
  • 24. Overview | Integral Image | AdaBoost | Cascade backup slide #3 User selects values for f, the maximum acceptable false positive rate per layer and d, the minimum acceptable detection rate per layer. User selects target overall false positive rate Ftarget. P = set of positive examples N = set of negative examples F0 = 1.0; D0 = 1.0; i = 0 While Fi > Ftarget i++ ni = 0; Fi = Fi-1 while Fi > f x Fi-1 o ni ++ o Use P and N to train a classifier with ni features using AdaBoost o Evaluate current cascaded classifier on validation set to determine Fi and Di o Decrease threshold for the ith classifier until the current cascaded classifier has a detection rate of at least d x Di-1 (this also affects Fi) N= If Fi > Ftarget then evaluate the current cascaded detector on the set of non-face images and put any false detections into the set N. [24] IT SoC Research Lab.
  • 25. Overview | Integral Image | AdaBoost | Cascade Three goals 1. Feature Computation : features must be computed as quic 2. Feature Selection : select the most discriminating features 3. Real-timeliness : must focus on potentially positive imag kly as possible e areas (that contain faces) How did Viola & Jones deal with these challenges? [25] IT SoC Research Lab.
  • 26. Overview | Integral Image | AdaBoost | Cascade Training phase Testing phase Cascade trainer Training Set Integral Representation (sub-wind ows) Classifier cascade fr amework Strong Classifier 1 (cascade stage 1) Feature computation AdaBoost Feature Selection Strong Classifier 2 (cascade stage 2) Strong Classifier N FACE IDENTIFIED stage N) (cascade IT SoC Research Lab.
  • 27. Therefore:    Extremely fast feature computation Efficient feature selection Scale and location invariant detector    Such a generic detection scheme can be trained for detection of ot her types of objects (e.g. cars, hands) Detector is most effective only on frontal images of faces    Instead of scaling the image itself (e.g. pyramid-filters), we scale the f eatures. can hardly cope with 45o face rotation Sensitive to lighting conditions We might get multiple detections of the same face, due to overlap ping sub-windows. [27] IT SoC Research Lab.
  • 28. Results (detailed results at back-up slide #4) [28] IT SoC Research Lab.
  • 30. backup slide #4  Viola & Jones prepared their final Detector cascade:   38 layers, 6060 total features included 1st classifier- layer, 2-features   50% FP rate, 99.9% TP rate 2nd classifier- layer, 10-features  20% FP rate, 99.9% TP rate  next 2 layers 25-features each, next 3 layers 50-features each  and so on…   Tested on the MIT+MCU test set a 384x288 pixel image on an PC (dated 2001) took about 0.067 s econds Detector Viola-Jones Rowley-Baluja-Kanade Schneiderman-Kanade Roth-Yang-Ajuha 10 76.1% 83.2% - 31 88.4% 86.0% - False detections 50 65 78 95 91.4% 92.0% 92.1% 92.9% 89.2% 89.2% 94.4% - 167 93.9% 90.1% - 422 94.1% 89.9% - Detection rates for various numbers of false positives on the MIT+MCU test set containing 130 images a nd 507 faces (Viola & Jones 2002) [30] IT SoC Research Lab.
  • 31. Thanks for your Attention! Q & A? [31] IT SoC Research Lab.