<b>Appearance</b>-Based Tracking

advertisement
Robert Collins
Penn State
Appearance-Based Tracking
current frame +
previous location
Response map
(confidence map; likelihood image)
current location
appearance model
(e.g. image template, or
Mode-Seeking
(e.g. mean-shift; Lucas-Kanade;
particle filtering)
color; intensity; edge histograms)
SU-VLPR 2010
1
Robert Collins
Penn State
Motivation for Online Adaptation
First of all, we want succeed at persistent, long-term tracking!
The more invariant your appearance model is to variations in
lighting and geometry, the less specific it is in representing a
particular object. There is then a danger of getting confused with
other objects or background clutter.
Online adaptation of the appearance model or the features used
allows the representation to have retain good specificity at each
time frame while evolving to have overall generality to large
variations in object/background/lighting appearance.
SU-VLPR 2010
2
Robert Collins
Penn State
Tracking as Classification
Idea first introduced by Collins and Liu, “Online Selection of
Discriminative Tracking Features”, ICCV 2003
• Target tracking can be treated as a binary classification
problem that discriminates foreground object from scene
background.
• This point of view opens up a wide range of classification and
feature selection techniques that can be adapted for use in
tracking.
SU-VLPR 2010
3
Robert Collins
Penn State
Overview:
Foreground
samples
foreground
Background
samples
background
New
samples
Classifier
Estimated location
SU-VLPR 2010
Response map
New frame
4
Robert Collins
Penn State
Observation
Tracking success/failure is highly correlated with our
ability to distinguish object appearance from background.
Suggestion:
Explicitly seek features that best discriminate between object
and background samples.
Continuously adapt feature used to deal with changing background,
changes in object appearance, and changes in lighting conditions.
Collins and Liu, “Online Selection of
Discriminative Tracking Features”, ICCV 2003
SU-VLPR 2010
5
Robert Collins
Penn State
Feature Selection Prior Work
Feature Selection: choose M features from N candidates (M &lt;&lt; N)
Traditional Feature Selection Strategies
•Forward Selection
•Backward Selection
•Branch and Bound
Viola and Jones, Cascaded Feature Selection for Classification
Bottom Line: slow, off-line process
SU-VLPR 2010
6
Robert Collins
Penn State
Evaluation of Feature Discriminability
Can think of this as
nonlinear,“tuned”
feature, generated
from a linear seed
feature
Object Background
Object
Feature Histograms
Variance Ratio
(feature score)
Var between classes
Var within classes
Background
+
0
_
Log Likelihood Ratio
Object
Likelihood Histograms
Note: this example also explains why we don’t just use LDA
SU-VLPR 2010
7
Robert Collins
Penn State
Example: 1D Color Feature Spaces
Color features: integer linear combinations of R,G,B
(a R + b G + c B) + offset where a,b,c are {-2,-1,0,1,2} and
offset is chosen to bring result
(|a|+|b|+|c|)
back to 0,…,255.
The 49 color feature candidates roughly uniformly
sample the space of 1D marginal distributions of RGB.
SU-VLPR 2010
8
Robert Collins
Penn State
Example
training frame
foreground
test frame
background
sorted variance ratio
SU-VLPR 2010
9
Robert Collins
Penn State
Example: Feature Ranking
Best
Worst
SU-VLPR 2010
10
Robert Collins
Penn State
Overview of Tracking Algorithm
Log Likelihood Images
Note: since log likelihood images contain negative
values, must use modified mean-shift algorithm as
described in Collins, CVPR’03
SU-VLPR 2010
11
Robert Collins
Penn State
Naive Approach to Handle Change
• One approach to handle changing appearance over
time is adaptive template update
• One you find location of object in a new frame, just
extract a new template, centered at that location
• What is the potential problem?
SU-VLPR 2010
12
Robert Collins
Penn State
Drift is a Universal Problem!
1 hour
Example courtesy of Horst Bischof. Green: online boosting tracker; yellow: drift-avoiding
“semisupervised boosting” tracker (we will discuss it later today).
SU-VLPR 2010
13
Robert Collins
Penn State
Template Drift
• If your estimate of template location is slightly off, you
are now looking for a matching position that is similarly
off center.
• Over time, this offset error builds up until the template
starts to “slide” off the object.
• The problem of drift is a major issue with methods that
adapt to changing object appearance.
SU-VLPR 2010
14
Robert Collins
Penn State
Anchoring Avoids Drift
This is an example of a general
strategy for drift avoidance
that we’ll call “anchoring”.
The key idea is to make sure
you don’t stray too far from
your initial appearance model.
Potential drawbacks?
[answer: You cannot accommodate
very LARGE changes in appearance.]
SU-VLPR 2010
15
Robert Collins
Penn State
Avoiding Model Drift
Drift: background pixels mistakenly incorporated into the object model
pull the model off the correct location, leading to more misclassified
background pixels, and so on.
Our solution: force foreground object distribution to be a combination
of current appearance and original appearance (anchor distribution)
anchor distribution = object appearance histogram from first frame
model distribution = (current distribution + anchor distribution) / 2
Note: this solves the drift problem, but limits the ability of the
appearance model to adapt to large color changes
SU-VLPR 2010
16
Robert Collins
Penn State
Examples: Tracking Hard-to-See Objects
Trace of selected features
SU-VLPR 2010
17
Robert Collins
Penn State
Examples: Changing Illumination / Background
Trace of selected features
SU-VLPR 2010
18
Robert Collins
Penn State
Examples: Minimizing Distractions
Current location
Feature scores
Top 3 weight (log likelihood) images
SU-VLPR 2010
19
Robert Collins
Penn State
More Detail
top 3 weight (log likelihood) images
SU-VLPR 2010
20
Robert Collins
Penn State
On-line Boosting for Tracking
Grabner, Grabner, and Bischof, “Real-time tracking via on-line
boosting.” BMVC 2006.
Use boosting to select and maintain the best discriminative
features from a pool of feature candidates.
• Haar Wavelets
• Integral Orientation Histograms
• Simplified Version of Local Binary Patterns
SU-VLPR 2010
21
Robert Collins
Penn State
From Daniel Vaquero, UCSB
Adaboost learning
• Adaboost creates a single strong classifier
from many weak classifiers
• Initialize sample weights
• For each cycle:
– Find a classifier that performs well on the
weighted sample
– Increase weights of misclassified examples
• Return a weighted combination of
classifiers
SU-VLPR 2010
Robert Collins
Penn State
OFF-line Boosting for Feature Selection
– Each weak classifier corresponds to a feature
– train all weak classifiers - choose best at each boosting iteration
– add one feature in each iteration
labeled
training samples
weight distribution over all training
samples
train each feature in the feature pool
chose the best one (lowest error)
and calculate voting weight
update weight distribution
train each feature in the feature pool
chose the best one (lowest error)
and calculate voting weight
strong classifier
update weight distribution
iterations
train each feature in the feature pool
chose the best one (lowest error)
and calculate voting weight
Horst Bischof
SU-VLPR 2010
23
Robert Collins
Penn
State
Samples
are
patches
+
-
On-line Version…
one
traning
sample
inital
importance
hSelector1
hSelector2
hSelectorN
h1,1
h2,1
hN,1
h1,2
h2,2
hN,2
.
.
.
estimate
importance
.
.
.
estimate
importance
.
.
.
hN,m
h2,m
.
.
.
h1,M
h2,M
hN,M
update
update
update
current strong classifier hStrong
Horst Bischof
SU-VLPR 2010
repeat for each
trainingsample
24
Robert Collins
Penn State
Tracking Examples
Horst Bischof
SU-VLPR 2010
25
Robert Collins
Penn State
Ensemble Tracking
Avidan, “Ensemble Tracking,” PAMI 2007
Use online boosting to select and maintain a set of weak
classifiers (rather than single features), weighted to form a
strong classifier. Samples are pixels.
Each weak classifier is a linear
hyperplane in an 11D feature space
composed of R,G,B color and a
histogram of gradient orientations.
Classification is performed at each pixel, resulting in a dense
confidence map for mean-shift tracking.
SU-VLPR 2010
26
Robert Collins
Penn State
Ensemble Tracking
During online updating:
• Perform mean-shift, and extract new pos/neg samples
• Remove worst performing classifier (highest error rate)
• Re-weight remaining classifiers and samples using AdaBoost
• Train a new classifier via AdaBoost and add it to the ensemble
Drift avoidance: paper suggests keeping some “prior” classifiers
that can never be removed. (Anchor strategy).
SU-VLPR 2010
27
Robert Collins
Penn State
Semi-supervised Boosting
Grabner, Leistner and Bischof, “Semi-Supervised On-line
Boosting for Robust Tracking,” ECCV 2008.
Designed specifically to address the drift problem. It is
another example of the Anchor Strategy.
Basic ideas:
• Combine 2 classifiers
Prior (offline trained) Hoff and online trained Hon
Classifier Hoff + Hon cannot deviate too much from Hoff
• Semi-supervised learning framework
SU-VLPR 2010
28
Robert Collins
Penn State
Supervised learning
+
-
+
-
Maximum margin
Horst Bischof
SU-VLPR 2010
29
Robert Collins
Penn State
Can Unlabeled Data Help?
?
?
?
? ? ? ?
?
? ? ?
?
?
? +? ?
? ?
?
?
?
?
?
?
?
?
?
? ? +
?
?
?
?
?
? ? ?
? density
low
around
?
?
decision
? ?
boundary
Horst Bischof
SU-VLPR 2010
30
Robert Collins
Penn State
Drift Avoidance
Key idea: samples from new frame
are only used as unlabeled data!!!
+ + +
?
-?
??
? ? ?
?
?
Labeled data
comes from
first frame
?-
Combined
classifier
Horst Bischof
SU-VLPR 2010
31
Robert Collins
Penn State
Drift Avoidance
Key idea: samples from new frame
are only used as unlabeled data!!!
? ? ?
DYNAMIC
?
?
?
?
?
+ + +
FIXED
-?
Labeled data
comes from
first frame
STABLE
?-
Combined
classifier
Horst Bischof
SU-VLPR 2010
32
Robert Collins
Penn State
Examples
Green: online boosting
Yellow: semi-supervised
Horst Bischof
SU-VLPR 2010
33
Robert Collins
Penn State
Bag of Patches Model
Lu and Hager, “A Nonparametric Treatment for Location
Segmentation based Visual Tracking,” CVPR 2007.
Key Idea: rather than try to maintain a set of features or set of
classifiers, appearance of foreground and background is
modeled directly by maintaining a set of sample patches.
KNN then
determines the
classification of
new patches.
SU-VLPR 2010
34
Robert Collins
Penn State
Drift Avoidance (keep patch model clean)
Given new patch samples to add to foreground and background:
• Remove ambiguous patches (that match both fg and bg)
• Trim fg and bg patches based on sorted knn distances.
Remove those with small distances (redundant) as well as large
distances (outliers).
• Add clean patches to existing bag of patches.
• Resample patches, with probability of survival proportional to
distance of a patch from any patch in current image (tends to
keep patches that are currently relevant).
SU-VLPR 2010
35
Robert Collins
Penn State
Sample Results
Extension to video segmentation.
See paper for the details.
SU-VLPR 2010
36
Robert Collins
Penn State
Segmentation-based Tracking
This brings up a second general scheme for drift avoidance
besides anchoring, which is to perform fg/bg segmentation.
In principle, it is could be a better solution, because your model is
not constrained to stay near one spot, and can therefore handle
arbitrarily large appearance change.
Simple examples of this strategy use motion segmentation
(change detection) and data association.
SU-VLPR 2010
37
Robert Collins
Penn State
Segmentation-based Tracking
Yin and Collins. “Belief propagation in a 3d spatio-temporal MRF for
moving object detection.” CVPR 2007.
Yin and Collins. “Online figure-ground segmentation with edge pixel
classification.” BMVC 2008.
SU-VLPR 2010
38
Robert Collins
Penn State
Segmentation-based Tracking
Yin and Collins. “Shape constrained figure-ground segmentation and
tracking.” CVPR 2009.
SU-VLPR 2010
39
Robert Collins
Penn State
Tracking and Object Detection
Another way to avoid drift is to couple an object detector
with the tracker.
Particularly for face tracking or pedestrian tracking, a
detector is sometimes included in the tracking loop
e.g. Yuan Li’s Cascade Particle Filter (CVPR 2007)
or K.Okuma’s Boosted Particle Filter (ECCV 2004).
• If detector produces binary detections (I see three faces:
here, and here, and here), use these as input to a data
association algorithm.
• If detector produces. a continuous response map, use that as
input to a mean-shift tracker.
SU-VLPR 2010
40
Robert Collins
Penn State
Summary
Tracking is still an active research topic.
Topics of particular current interest include:
• Multi-object tracking (including multiple patches on one object)
• Synergies between
Classification and Tracking
Segmentation and Tracking
Detection and Tracking
All are aimed at achieving long-term persistent tracking in
ever-changing environments.
SU-VLPR 2010
41
Download