Professional Documents
Culture Documents
DPM
DPM
PAMI 2010
Object localization
Goal
Detect and localize objects from generic categories in static images
Training: bounding boxes around objects
Challenges
Illumination changes
Viewpoint
Intraclass variability
Non-rigid deformation
Philippe Weinzaepfel Latent SVM for Object Detection 1st Feburary 2013 2 / 28
Introduction Part-based model
Part-based model
A collection of parts arranged in a deformable configuration
Part locations are not known: latent variables
In this paper: star model (1 root + multiple parts)
Parts filter at twice resolution of the root filter
Score of the detection:
X
score(model, x) = score(root, x) + max[score(p, y) cost(p, x, y)]
y
pparts
Philippe Weinzaepfel Latent SVM for Object Detection 1st Feburary 2013 3 / 28
Introduction Part-based model
Simple model
Score:
f (x) = .(x)
Part-based model
Score:
f (x) = max .(x, z)
xZ(x)
: model parameters
z: specification of object configuration
Latent SVM to learn and data-minng for hard negative examples
Philippe Weinzaepfel Latent SVM for Object Detection 1st Feburary 2013 4 / 28
Introduction Mixture of part-based models
Philippe Weinzaepfel Latent SVM for Object Detection 1st Feburary 2013 5 / 28
Introduction Outline
Outline
1 Model
2 Latent SVM
3 Training Models
4 Features
5 Post-processing
Philippe Weinzaepfel Latent SVM for Object Detection 1st Feburary 2013 6 / 28
Model Feature pyramid
Outline
3 Training Models
1 Model
Feature pyramid 4 Features
Deformable part models
Detection process 5 Post-processing
Mixture of models
6 Some experimental results
2 Latent SVM
Philippe Weinzaepfel Latent SVM for Object Detection 1st Feburary 2013 7 / 28
Model Feature pyramid
Philippe Weinzaepfel Latent SVM for Object Detection 1st Feburary 2013 7 / 28
Model Deformable part models
Outline
3 Training Models
1 Model
Feature pyramid 4 Features
Deformable part models
Detection process 5 Post-processing
Mixture of models
6 Some experimental results
2 Latent SVM
Philippe Weinzaepfel Latent SVM for Object Detection 1st Feburary 2013 8 / 28
Model Deformable part models
A model
A root filter F0
n parts Pi
A filter Fi
An anchor vi
A deformation cost di
A bias term b (to compare models in mixtures)
An object hypothesis
Position of root and parts z = (p0 , ..., pn )
pi = (xi , yi , li )
Hypothesis: parts at twice the resolution of root
Philippe Weinzaepfel Latent SVM for Object Detection 1st Feburary 2013 8 / 28
Model Deformable part models
Score of an hypothesis
Pn 0
Pn
score(p0 , ..., pn ) = i=0 Fi .(H, pi ) i=1 di .d (dxi , dyi ) +b
(dxi , dyi ) = (xi , yi ) (2(x0 , y0 ) + vi )
d (dx, dy) = (dx, dy, dx 2 , dy 2 )
Philippe Weinzaepfel Latent SVM for Object Detection 1st Feburary 2013 9 / 28
Model Deformable part models
Score of an hypothesis
Pn 0
Pn
score(p0 , ..., pn ) = i=0 Fi .(H, pi ) i=1 di .d (dxi , dyi ) +b
(dxi , dyi ) = (xi , yi ) (2(x0 , y0 ) + vi )
d (dx, dy) = (dx, dy, dx 2 , dy 2 )
Philippe Weinzaepfel Latent SVM for Object Detection 1st Feburary 2013 9 / 28
Model Detection process
Outline
3 Training Models
1 Model
Feature pyramid 4 Features
Deformable part models
Detection process 5 Post-processing
Mixture of models
6 Some experimental results
2 Latent SVM
Philippe Weinzaepfel Latent SVM for Object Detection 1st Feburary 2013 10 / 28
Model Detection process
Philippe Weinzaepfel Latent SVM for Object Detection 1st Feburary 2013 10 / 28
Model Mixture of models
Outline
3 Training Models
1 Model
Feature pyramid 4 Features
Deformable part models
Detection process 5 Post-processing
Mixture of models
6 Some experimental results
2 Latent SVM
Philippe Weinzaepfel Latent SVM for Object Detection 1st Feburary 2013 11 / 28
Model Mixture of models
Mixture of models
Mixture M of m models
M = (M1 , ..., Mm )
z = (c, p0 , ..., pnc ) = (c, z 0 )
score(z) = c .(H, z 0 )
Score as .(H, z)
= (1 , ..., m )
(H, z) = (0, ..., 0, (H, z 0 ), 0, ..., 0)
Philippe Weinzaepfel Latent SVM for Object Detection 1st Feburary 2013 11 / 28
Latent SVM Problem
Outline
3 Training Models
1 Model
4 Features
2 Latent SVM
Problem 5 Post-processing
Semi-convexity
Optimization 6 Some experimental results
Data-mining hard examples
Philippe Weinzaepfel Latent SVM for Object Detection 1st Feburary 2013 12 / 28
Latent SVM Problem
Problem
Philippe Weinzaepfel Latent SVM for Object Detection 1st Feburary 2013 12 / 28
Latent SVM Semi-convexity
Outline
3 Training Models
1 Model
4 Features
2 Latent SVM
Problem 5 Post-processing
Semi-convexity
Optimization 6 Some experimental results
Data-mining hard examples
Philippe Weinzaepfel Latent SVM for Object Detection 1st Feburary 2013 13 / 28
Latent SVM Semi-convexity
Semi-convexity
n
1 X
LD () = kk2 + C max 0, 1 yi f (xi )
2
i=1
A latent SVM is semi-convex
The loss function is convex in for negative examples.
Philippe Weinzaepfel Latent SVM for Object Detection 1st Feburary 2013 13 / 28
Latent SVM Semi-convexity
Semi-convexity
n
1 X
LD () = kk2 + C max 0, 1 yi f (xi )
2
i=1
A latent SVM is semi-convex
The loss function is convex in for negative examples.
SVM
Convexity:
f linear in
Hinge loss is convex as
maximum of two convex
functions
Philippe Weinzaepfel Latent SVM for Object Detection 1st Feburary 2013 13 / 28
Latent SVM Semi-convexity
Semi-convexity
n
1 X
LD () = kk2 + C max 0, 1 yi f (xi )
2
i=1
A latent SVM is semi-convex
The loss function is convex in for negative examples.
LSVM
SVM
Semi-convexity
n
1 X
LD () = kk2 + C max 0, 1 yi f (xi )
2
i=1
A latent SVM is semi-convex
The loss function is convex in for negative examples.
LD () is convex when latent variables are specified for positive
examples.
LSVM
SVM
Outline
3 Training Models
1 Model
4 Features
2 Latent SVM
Problem 5 Post-processing
Semi-convexity
Optimization 6 Some experimental results
Data-mining hard examples
Philippe Weinzaepfel Latent SVM for Object Detection 1st Feburary 2013 14 / 28
Latent SVM Optimization
Optimization
Philippe Weinzaepfel Latent SVM for Object Detection 1st Feburary 2013 14 / 28
Latent SVM Optimization
Optimization
Philippe Weinzaepfel Latent SVM for Object Detection 1st Feburary 2013 14 / 28
Latent SVM Optimization
Optimization
Algorithm
Relabel positive examples: Optimize LD (, Zp ) over Zp , i.e. select
zi = argmax .(xi , z)
zZ(xi )
.
Optimize : Stochastic gradient descent
Philippe Weinzaepfel Latent SVM for Object Detection 1st Feburary 2013 14 / 28
Latent SVM Optimization
Gradient descent
n
1 2
X
LD () = kk + C max 0, 1 yi f (xi )
2
i=1
n
X
LD () = + C h(, xi , yi ) (subgradient)
i=1
(
0 if yi f (xi ) > 1
h(, xi , yi ) =
yi (xi , zi ()) otherwise
Issue
Too costly to go over data to compute the exact gradient.
Philippe Weinzaepfel Latent SVM for Object Detection 1st Feburary 2013 15 / 28
Latent SVM Optimization
Algorithm
Let t be the learning rate for iteration t
Let i be a random example
Let zi = argmaxzZ(xi ) .(xi , z)
Update = t i LD ()
Convergence
1
Learning rate t = t
Depends on the number of training examples
Philippe Weinzaepfel Latent SVM for Object Detection 1st Feburary 2013 16 / 28
Latent SVM Data-mining hard examples
Outline
3 Training Models
1 Model
4 Features
2 Latent SVM
Problem 5 Post-processing
Semi-convexity
Optimization 6 Some experimental results
Data-mining hard examples
Philippe Weinzaepfel Latent SVM for Object Detection 1st Feburary 2013 17 / 28
Latent SVM Data-mining hard examples
Philippe Weinzaepfel Latent SVM for Object Detection 1st Feburary 2013 17 / 28
Latent SVM Data-mining hard examples
Goal
Find a subset C D such that (C) = (D).
Philippe Weinzaepfel Latent SVM for Object Detection 1st Feburary 2013 17 / 28
Latent SVM Data-mining hard examples
Algorithm
t = (Ct ) (model training)
If H(t , D) Ct , stop and return t
Remove easy examples
Add hard examples
Philippe Weinzaepfel Latent SVM for Object Detection 1st Feburary 2013 18 / 28
Latent SVM Data-mining hard examples
Algorithm
t = (Ct ) (model training)
If H(t , D) Ct , stop and return t
Remove easy examples
Add hard examples
Proof
Let C D. If H(, D) C, (C) = (D).
The algorithm terminates.
Philippe Weinzaepfel Latent SVM for Object Detection 1st Feburary 2013 18 / 28
Latent SVM Data-mining hard examples
Philippe Weinzaepfel Latent SVM for Object Detection 1st Feburary 2013 19 / 28
Latent SVM Data-mining hard examples
Philippe Weinzaepfel Latent SVM for Object Detection 1st Feburary 2013 19 / 28
Latent SVM Data-mining hard examples
Outline
Initialization
1 Model
4 Features
2 Latent SVM
5 Post-processing
3 Training Models
Learning parameters 6 Some experimental results
Philippe Weinzaepfel Latent SVM for Object Detection 1st Feburary 2013 20 / 28
Training Models Learning parameters
Philippe Weinzaepfel Latent SVM for Object Detection 1st Feburary 2013 20 / 28
Training Models Initialization
Outline
Initialization
1 Model
4 Features
2 Latent SVM
5 Post-processing
3 Training Models
Learning parameters 6 Some experimental results
Philippe Weinzaepfel Latent SVM for Object Detection 1st Feburary 2013 21 / 28
Training Models Initialization
Initialization
Philippe Weinzaepfel Latent SVM for Object Detection 1st Feburary 2013 21 / 28
Training Models Initialization
Initialization
Philippe Weinzaepfel Latent SVM for Object Detection 1st Feburary 2013 21 / 28
Training Models Initialization
Initialization
Phase 1: Initializing root filters
Split positive examples according to aspect ratio in m groups
Decide area of Fi according to aspect ratio and area
Train the root filter Fi with classical SVM
Phase 2: Merging components
Train mixture of models with no part (latent: component and p0 )
Phase 3: Initializing part filters
Initialize 6 rectangles to cover high energy of the root filter
Anchor at center or symmetric according to vertical axis
di = (0, 0, 1, 1)
Philippe Weinzaepfel Latent SVM for Object Detection 1st Feburary 2013 21 / 28
Features HOG, PCA and analytic dimension reduction
Outline
4 Features
HOG, PCA and analytic
1 Model
dimension reduction
2 Latent SVM
5 Post-processing
3 Training Models
6 Some experimental results
Philippe Weinzaepfel Latent SVM for Object Detection 1st Feburary 2013 22 / 28
Features HOG, PCA and analytic dimension reduction
Features
36-dimensional HOG descriptors (9 orientations, 4 normalizations,
non-contrast sensitive)
11 main eigenvectors
Projection is costly
Philippe Weinzaepfel Latent SVM for Object Detection 1st Feburary 2013 22 / 28
Features HOG, PCA and analytic dimension reduction
Features
36-dimensional HOG descriptors (9 orientations, 4 normalizations,
non-contrast sensitive)
11 main eigenvectors
Projection is costly
Similar results when using 9+4 basis vectors
(18+9)+4=31 for contrast and non-contrast sensitive
Philippe Weinzaepfel Latent SVM for Object Detection 1st Feburary 2013 22 / 28
Post-processing Bounding box prediction
Outline
4 Features
1 Model
5 Post-processing
Bounding box prediction
2 Latent SVM
Non-Maxima Suppression
Contextual information
3 Training Models
6 Some experimental results
Philippe Weinzaepfel Latent SVM for Object Detection 1st Feburary 2013 23 / 28
Post-processing Bounding box prediction
Philippe Weinzaepfel Latent SVM for Object Detection 1st Feburary 2013 23 / 28
Post-processing Bounding box prediction
Philippe Weinzaepfel Latent SVM for Object Detection 1st Feburary 2013 23 / 28
Post-processing Non-Maxima Suppression
Outline
4 Features
1 Model
5 Post-processing
Bounding box prediction
2 Latent SVM
Non-Maxima Suppression
Contextual information
3 Training Models
6 Some experimental results
Philippe Weinzaepfel Latent SVM for Object Detection 1st Feburary 2013 24 / 28
Post-processing Non-Maxima Suppression
Non-Maxima Suppression
Issue
For one object, there are a lot of overlapping detections
Solution
Sort detections by score
Add the detection one by one and skip if there exists a detection with
overlap of at least 50%
Philippe Weinzaepfel Latent SVM for Object Detection 1st Feburary 2013 24 / 28
Post-processing Contextual information
Outline
4 Features
1 Model
5 Post-processing
Bounding box prediction
2 Latent SVM
Non-Maxima Suppression
Contextual information
3 Training Models
6 Some experimental results
Philippe Weinzaepfel Latent SVM for Object Detection 1st Feburary 2013 25 / 28
Post-processing Contextual information
Contextual information
Philippe Weinzaepfel Latent SVM for Object Detection 1st Feburary 2013 25 / 28
Some experimental results Models
Outline
4 Features
1 Model
5 Post-processing
2 Latent SVM
6 Some experimental results
Models
3 Training Models
Detections
Philippe Weinzaepfel Latent SVM for Object Detection 1st Feburary 2013 26 / 28
Some experimental results Models
Models
Philippe Weinzaepfel Latent SVM for Object Detection 1st Feburary 2013 26 / 28
Some experimental results Models
Models
Philippe Weinzaepfel Latent SVM for Object Detection 1st Feburary 2013 26 / 28
Some experimental results Detections
Outline
4 Features
1 Model
5 Post-processing
2 Latent SVM
6 Some experimental results
Models
3 Training Models
Detections
Philippe Weinzaepfel Latent SVM for Object Detection 1st Feburary 2013 27 / 28
Some experimental results Detections
Detections
Philippe Weinzaepfel Latent SVM for Object Detection 1st Feburary 2013 27 / 28
Some experimental results Detections
Detections
Philippe Weinzaepfel Latent SVM for Object Detection 1st Feburary 2013 27 / 28
Conclusion
Conclusion
Recent extensions
Speeding-up detection using cascade classifier
Grammar models
Philippe Weinzaepfel Latent SVM for Object Detection 1st Feburary 2013 28 / 28
Conclusion
Conclusion
Recent extensions
Speeding-up detection using cascade classifier
Grammar models
Any question ?
Philippe Weinzaepfel Latent SVM for Object Detection 1st Feburary 2013 28 / 28