Transcript Boosting

EE462 MLCV
Lecture 5-6
Object Detection
– Boosting
Tae-Kyun Kim
EE462 MLCV
Face Detection Demo
2
Multiclass object detection
EE462 MLCV
[Torralba et al PAMI 07]
3
EE462 MLCV
Object Detection
From TUD dataset
4
EE462 MLCV
Object Detection
From TUD dataset
5
EE462 MLCV
Object Detection
From TUD dataset
6
EE462 MLCV
Number of windows
x
# of scales
# of pixels
Number of Windows: 747,666
7
EE462 MLCV
Time per window
……
dimension D
or raw pixels
…
Num of feature
vectors: 747,666
8
EE462 MLCV
Time per window
……
dimension D
or raw pixels
…
Num of feature
vectors: 747,666
In order to finish the task in 1 sec
Time per window (or vector):
0.00000134 sec
Neural Network?
Nonlinear SVM?
9
EE462 MLCV
Examples of face detection
From Viola, Jones, 2001
10
EE462 MLCV
More traditionally…
Narrow down the search space

Integrating Visual Cues [Darrell et al IJCV 00]
 Face pattern detection output (left).
 Connected components recovered from stereo range
data (mid).
 Flesh hue regions from skin hue classification (right).
11
EE462 MLCV
Since about 2001…
Boosting Simple Features [Viola &Jones 01]

Adaboost classification
Strong
classifier

Weak
classifier
Weak classifiers: Haar-basis like functions (45,396 in total)
12
EE462 MLCV
Introduction to Boosting Classifiers
- AdaBoost
EE462 MLCV
Sorry for inconsistent notations…
14
EE462 MLCV
Boosting
15
EE462 MLCV
Boosting
16
EE462 MLCV
Boosting
Iteratively reweighting training samples.
 Higher weights to previously misclassified samples.

50
21rounds
3
4
5
round
rounds
17
EE462 MLCV
18
EE462 MLCV
AdaBoost
19
EE462 MLCV
20
EE462 MLCV
Boosting
21
EE462 MLCV
Boosting as an optimisation framework
22
EE462 MLCV
Minimising Exponential Error
23
EE462 MLCV
24
EE462 MLCV
25
EE462 MLCV
26
EE462 MLCV
27
EE462 MLCV
Existence of weak learners


Definition of a baseline learner
Data weights:
Set
Baseline classifier:
Error is at most ½.
for all x
Each weak learner in Boosting is demanded s.t.
→ Error of the composite hypothesis goes to zero as
boosting rounds increase [Duffy et al 00].
28
EE462 MLCV
Robust real-time object detector
Boosting Simple Features
EE462 MLCV
[Viola and Jones CVPR 01]

Adaboost classification
Strong
classifier

Weak
classifier
Weak classifiers: Haar-basis like functions (45,396 in total)
30
EE462 MLCV
31
EE462 MLCV
Evaluation (testing)
From Viola, Jones, 2001
32
Boosting Simple Features
EE462 MLCV
[Viola and Jones CVPR 01]

Integral image
 A value at (x,y) is the sum of the pixel values above
and to the left of (x,y).
 The integral image can be computed in one pass
over the original image.
33
Boosting Simple Features
EE462 MLCV
[Viola and Jones CVPR 01]

Integral image
 The sum of original image values
within the rectangle can be
computed: Sum = A-B-C+D
 This provides the fast evaluation
of Haar-basis like features
34
EE462 MLCV
Evaluation (testing)
From Viola, Jones, 2001
35
EE462 MLCV
Boosting as a Tree-structured Classifier
EE462 MLCV
Boosting (very shallow network)

The strong classifier H as boosted decision stumps has a flat
structure
x
……
c0 c1
c0 c1
……
c0 c1
c0 c1
c0 c1
c0 c1

 Cf. Decision “ferns” has been shown to outperform “trees” [Zisserman et al, 07]
[Fua et al, 07]
37
EE462 MLCV
Boosting -continued
Good generalisation by a flat structure
 Fast evalution
 Sequential optimisation
A strong boosting classifier

Boosting Cascade [viola & Jones
04], Boosting chain [Xiao et al]
 Very imbalanced tree
 Speeds up for unbalanced
binary problems
 Hard to design
38
EE462 MLCV
A cascade of classifiers
 The detection system requires good detection rate and
extremely low false positive rates.
 False positive rate and detection rate are
f_i is the false positive rate of i-th classifier on the examples
that get through to it.
 The expected number of features evaluated is
p_j is the proportion of windows input to i-th classifier.
39
EE462 MLCV
Demo video: Fast evaluation
40
EE462 MLCV
Object Detection
by a Cascade of Classifiers
Pictures from Romdhani et al. ICCV01
41