conditional density propagation for visual tracking · condensation actually uses a second-order...

40
CONDENSATION Conditional Density Propagation for Visual Tracking Michael Isard and Andrew Blake Presented by Neil Alldrin Department of Computer Science & Engineering University of California, San Diego La Jolla, CA 92093, USA CONDENSATION – p.1/40

Upload: others

Post on 07-Aug-2020

3 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Conditional Density Propagation for Visual Tracking · CONDENSATION actually uses a second-order model, but the idea is the same Time-independence of the observation density 1 0 4

CONDENSATIONConditional Density Propagation for Visual

Tracking

Michael Isard and Andrew Blake

Presented by Neil Alldrin

Department of Computer Science & Engineering

University of California, San Diego

La Jolla, CA 92093, USA

CONDENSATION – p.1/40

Page 2: Conditional Density Propagation for Visual Tracking · CONDENSATION actually uses a second-order model, but the idea is the same Time-independence of the observation density 1 0 4

Outline

The problem / motivation

Previous methods - Kalman filters

CONDENSATIONModeling shape and motionFactored samplingThe CONDENSATION algorithmBenefits / limitations

Demonstration

CONDENSATION – p.2/40

Page 3: Conditional Density Propagation for Visual Tracking · CONDENSATION actually uses a second-order model, but the idea is the same Time-independence of the observation density 1 0 4

The Goal

What are we trying to do?

Track an object throughout a video sequence inreal-time

Object can move and change shape

CONDENSATION – p.3/40

Page 4: Conditional Density Propagation for Visual Tracking · CONDENSATION actually uses a second-order model, but the idea is the same Time-independence of the observation density 1 0 4

Motivation

Tracking has many potential applicationsSurveillanceMissile guidance systemsVirtual mouse pointer

Tracking is also useful for more advanced techniquessuch as behavior recognition

CONDENSATION – p.4/40

Page 5: Conditional Density Propagation for Visual Tracking · CONDENSATION actually uses a second-order model, but the idea is the same Time-independence of the observation density 1 0 4

Difficulties

Some difficulties specific to tracking include

Object representation

Background clutter

Computational efficiency

Initialization

Occlusion

CONDENSATION – p.5/40

Page 6: Conditional Density Propagation for Visual Tracking · CONDENSATION actually uses a second-order model, but the idea is the same Time-independence of the observation density 1 0 4

Existing Methods

Tracking via repeated recognition (Sullivan & Carlson;Mori & Malik)

Articulated Tracking (Breglar; Blark)

Kalman Filters (Kalman - 1960)

CONDENSATION – p.6/40

Page 7: Conditional Density Propagation for Visual Tracking · CONDENSATION actually uses a second-order model, but the idea is the same Time-independence of the observation density 1 0 4

Kalman Filters

Basic Idea

Model the object being tracked

At each time-frame,Prediction - Predict where object should beMeasurement - Observe where object wentAssimilation - Update object model by combining thetwo

CONDENSATION – p.7/40

Page 8: Conditional Density Propagation for Visual Tracking · CONDENSATION actually uses a second-order model, but the idea is the same Time-independence of the observation density 1 0 4

Modeling shape and motion

System Model

Object modelled by a state vector, �, and a set ofequations, the system model

The state is a time-dependent vector ��� of systemvariables

The system model is a vector equation describing theevolution of the state in time

CONDENSATION – p.8/40

Page 9: Conditional Density Propagation for Visual Tracking · CONDENSATION actually uses a second-order model, but the idea is the same Time-independence of the observation density 1 0 4

Modeling shape and motion

Assumptions

The state does not change much between consecutivetime instants

Linear system model

�� � � � � � �� � � � �� � �� � � � is the state transition matrix at time

�� � � is a random vector modelling additive systemnoise

CONDENSATION – p.9/40

Page 10: Conditional Density Propagation for Visual Tracking · CONDENSATION actually uses a second-order model, but the idea is the same Time-independence of the observation density 1 0 4

Modeling shape and motion

Example

Want to model a basketball

Parameterize as a circle, � � � ����� �� �� ���� ���� ��� � �

CONDENSATION – p.10/40

Page 11: Conditional Density Propagation for Visual Tracking · CONDENSATION actually uses a second-order model, but the idea is the same Time-independence of the observation density 1 0 4

Modeling shape and motion

Example

The state transition matrix

� � is used to predict the nextobject state

� � ��������

� � � � � �

� � � � � �

� � � � � �

......

......

......

� � �

� � � � � �� � ��

� � � �� � ��� � � �� � � ��� � � �� � � ��� � � �� ! ! ! � �

CONDENSATION – p.11/40

Page 12: Conditional Density Propagation for Visual Tracking · CONDENSATION actually uses a second-order model, but the idea is the same Time-independence of the observation density 1 0 4

Modeling shape and motion

Measurement Model

At each time step a measurement, " � , of the state vectoris taken

Assume a linear relationship between measurementsand the system state

" � � #� �� �%$ �

#� is the measurement matrix

$ � is a random vector modelling additive noise

CONDENSATION – p.12/40

Page 13: Conditional Density Propagation for Visual Tracking · CONDENSATION actually uses a second-order model, but the idea is the same Time-independence of the observation density 1 0 4

Modeling shape and motion

Uncertainty

Problem : The system model and featuremeasurements are imprecise

Solution : Quantify the uncertainty with a probabilitydensity function, specifically a Gaussian

Define covariance matrix

&� corresponding to statevector ��

CONDENSATION – p.13/40

Page 14: Conditional Density Propagation for Visual Tracking · CONDENSATION actually uses a second-order model, but the idea is the same Time-independence of the observation density 1 0 4

The Kalman Filter Algorithm

Want to estimate the system’s state,

' �� , at time

usingthe system model prediction from time

�and the

measurements, " � , taken at time

Three stepsPredictionMeasurementAssimilation

CONDENSATION – p.14/40

Page 15: Conditional Density Propagation for Visual Tracking · CONDENSATION actually uses a second-order model, but the idea is the same Time-independence of the observation density 1 0 4

The Algorithm

Symbols

' � (� is the state estimate predicted before obtaining themeasurement " �

' �� is the state estimate computed after integrating themeasurement " � with the prediction

' � (�

& (� and

&� are the state covariance matrices for

' � (� and' �� respectively

)� is the gain matrix, specifying the relative importanceof the prediction

' � (� and the measurement

' ��

* � and

+� are the covariance matrices of the noiseprocesses

�� and$ �

CONDENSATION – p.15/40

Page 16: Conditional Density Propagation for Visual Tracking · CONDENSATION actually uses a second-order model, but the idea is the same Time-independence of the observation density 1 0 4

The Algorithm

Prediction

Based on object state and system model from time �

, predict the object state at time

' � (� � � � � � ' �� � �

& (� � � � � � &� � � � �� � � � * � � �

CONDENSATION – p.16/40

Page 17: Conditional Density Propagation for Visual Tracking · CONDENSATION actually uses a second-order model, but the idea is the same Time-independence of the observation density 1 0 4

The Algorithm

Measurement

Extract features, " � , from the image at time

" � is assumed to be a linear transformation of the objectstate, " � � #� ��

CONDENSATION – p.17/40

Page 18: Conditional Density Propagation for Visual Tracking · CONDENSATION actually uses a second-order model, but the idea is the same Time-independence of the observation density 1 0 4

The Algorithm

Assimilation

Combine the predicted state with the measured state togenerate the new object state' �� � ' � (� � )� � " � #� ' � (� �

" � #� ' � (� is the difference between the measuredfeatures and the predicted features

)� � & (� # �� � #� & (� # �� � +� � � �

Update the covariance matrix,

&�

&� � �, )� #� � & (�

CONDENSATION – p.18/40

Page 19: Conditional Density Propagation for Visual Tracking · CONDENSATION actually uses a second-order model, but the idea is the same Time-independence of the observation density 1 0 4

The Algorithm

Probability density propagation

CONDENSATION – p.19/40

Page 20: Conditional Density Propagation for Visual Tracking · CONDENSATION actually uses a second-order model, but the idea is the same Time-independence of the observation density 1 0 4

The Algorithm

Recap : The Kalman filter equations

' � (� � � � � � ' �� � � (1)

& (� � � � � � &� � � � �� � � � * � � � (2)

)� � & (� # �� � #� & (� # �� � +� � � �(3)' �� � � � � � ' �� � � � )� � " � #� � � � � ' �� � � � (4)

&� � � , )� � & (� � , )� � � � )� +� ) �� (5)

CONDENSATION – p.20/40

Page 21: Conditional Density Propagation for Visual Tracking · CONDENSATION actually uses a second-order model, but the idea is the same Time-independence of the observation density 1 0 4

Limitations

Unimodal, Gaussian probability distributionObject state often non-GaussianFor example, what if the object is likely to be in oneof two locations, but not inbetween?

Sensitive to “background clutter”

CONDENSATION – p.21/40

Page 22: Conditional Density Propagation for Visual Tracking · CONDENSATION actually uses a second-order model, but the idea is the same Time-independence of the observation density 1 0 4

CONDENSATION

Motivation

Overcome limitations of Kalman filters; Specifically,allow multimodal probability distributions

Increase robustness to background clutter

CONDENSATION – p.22/40

Page 23: Conditional Density Propagation for Visual Tracking · CONDENSATION actually uses a second-order model, but the idea is the same Time-independence of the observation density 1 0 4

CONDENSATION

Overview

The primary difference between Kalman filters and theCONDENSATION algorithm is how the state probabilitydensity is represented.

Kalman filters use a GaussianCONDENSATION uses factored sampling toapproximate arbitrary pdf’s

Other names for this algorithmParticle filtersMonte-Carlo methods

CONDENSATION – p.23/40

Page 24: Conditional Density Propagation for Visual Tracking · CONDENSATION actually uses a second-order model, but the idea is the same Time-independence of the observation density 1 0 4

CONDENSATION

Outline

Modelling shape and motion

Factored sampling

The algorithm

Benefits

Limitations

CONDENSATION – p.24/40

Page 25: Conditional Density Propagation for Visual Tracking · CONDENSATION actually uses a second-order model, but the idea is the same Time-independence of the observation density 1 0 4

Modelling Shape and Motion

Symbols

�� is the object state vector at time

" � is the vector of measured features at time

- � � . ��� ! ! !� �� /

is the state history

0� � . " �� ! ! !� " � /

is the history of measured features

1 � � � is the prior probability density for object �

1 � " � 2 �� �

is the observation density

CONDENSATION – p.25/40

Page 26: Conditional Density Propagation for Visual Tracking · CONDENSATION actually uses a second-order model, but the idea is the same Time-independence of the observation density 1 0 4

Modelling Shape and Motion

Unlike Kalman filters, CONDENSATION allows forarbitrary probability density functions

The goal is to calculate 1 � �� 2 0� �

, the probability of objectstate �� given the history of feature measurements

CONDENSATION – p.26/40

Page 27: Conditional Density Propagation for Visual Tracking · CONDENSATION actually uses a second-order model, but the idea is the same Time-independence of the observation density 1 0 4

Modelling Shape and Motion

Probability density propagation with CONDENSATION

.CONDENSATION – p.27/40

Page 28: Conditional Density Propagation for Visual Tracking · CONDENSATION actually uses a second-order model, but the idea is the same Time-independence of the observation density 1 0 4

Modelling Shape and Motion

Assumptions

Markov assumptionAssume the current object state distribution isdependent only on the previous state

1 � �� 2 - � � � � � 1 � �� 2 �� � � �

CONDENSATION actually uses a second-ordermodel, but the idea is the same

Time-independence of the observation density

1 � 0� 2 - � � � 3 �465 � 1 � " 4 2 �4 �

1 � " � 2 �87 � � 1 � " 2 � �This allows the observation density to be a staticfunction

CONDENSATION – p.28/40

Page 29: Conditional Density Propagation for Visual Tracking · CONDENSATION actually uses a second-order model, but the idea is the same Time-independence of the observation density 1 0 4

Modelling Shape and Motion

Measurement

Want to determine the observation density 1 � " 2 � � givena hypothesized object state �

After many assumptions,

1 � " 2 � � 9 :� 1 . �

; �<

�= � " � ��> � ? ��> �A@ $ �B > /

where ? ��> �

is the curve represented by shapeparameter �, " � ��> �

is the closest feature to ? � > �

, � is avariance constant

The observation process is ugly, but can be done

CONDENSATION – p.29/40

Page 30: Conditional Density Propagation for Visual Tracking · CONDENSATION actually uses a second-order model, but the idea is the same Time-independence of the observation density 1 0 4

Factored Sampling

General Idea

Factored sampling is a method for approximatingprobability densities

The problem is to find 1 � � 2 " � , which represents allknowledge about � deducible from the data "

CONDENSATION – p.30/40

Page 31: Conditional Density Propagation for Visual Tracking · CONDENSATION actually uses a second-order model, but the idea is the same Time-independence of the observation density 1 0 4

Factored Sampling

General Idea

Bayes’ rule can be used in principle:1 � � 2 " � � C 1 � " 2 � � 1 � � �

In practice, however, this cannot be solved in closedform

Factored sampling generates a random variate thatapproximates 1 � � 2 " �

Two parts

A sample set

D � .FE G � H� ! ! !� E GI H /

Weights, J4 , corresponding to each sample E G 4 H

CONDENSATION – p.31/40

Page 32: Conditional Density Propagation for Visual Tracking · CONDENSATION actually uses a second-order model, but the idea is the same Time-independence of the observation density 1 0 4

Factored Sampling

Details

First, the set

D � .FE G � H� ! ! !� E GI H /

is sampled randomlyfrom the prior density 1 � � �

Each element E G 4 H

is assigned a weight J4 proportionalto the observation density 1 � " 2 � � E G 4 H �

J4 � 1�K �E G 4 H �

IL 5 � 1MK �E GL H �

1�K � � � � 1 � " 2 � �

CONDENSATION – p.32/40

Page 33: Conditional Density Propagation for Visual Tracking · CONDENSATION actually uses a second-order model, but the idea is the same Time-independence of the observation density 1 0 4

Factored Sampling

One dimensional case

CONDENSATION – p.33/40

Page 34: Conditional Density Propagation for Visual Tracking · CONDENSATION actually uses a second-order model, but the idea is the same Time-independence of the observation density 1 0 4

The Algorithm

The goal is to estimate the state probability density1 � �� 2 " � �

given 1 � �� � � 2 " � � � � and N�

Since the state density is approximated as a sampleset, the algorithm needs to generate a new sample setat each time

CONDENSATION follows the same basic iterative stepsas a Kalman filter: prediction, measurement, andassimilation

CONDENSATION – p.34/40

Page 35: Conditional Density Propagation for Visual Tracking · CONDENSATION actually uses a second-order model, but the idea is the same Time-independence of the observation density 1 0 4

The Algorithm

Have

O

samples from time

,

D� � � � .FE G 4 H� � �� J G 4 H� � �� P � �� ! ! !� O /

Want to construct

D�

For Q � �SR O

,

1. Select a sample E ( GUT H� from

D� � � according toprobability J� � �

2. Predict E GUT H� by sampling from 1 � �� 2 �� � � � E ( GUT H� �

3. Measure and weight the new position according toimage features " � ,

J G T H� � 1 � " � 2 �� � E G T H� �

CONDENSATION – p.35/40

Page 36: Conditional Density Propagation for Visual Tracking · CONDENSATION actually uses a second-order model, but the idea is the same Time-independence of the observation density 1 0 4

The Algorithm

One time-step

CONDENSATION – p.36/40

Page 37: Conditional Density Propagation for Visual Tracking · CONDENSATION actually uses a second-order model, but the idea is the same Time-independence of the observation density 1 0 4

Benefits

Support for multi-modal probability distributionsMulti-object support, less likely to lose track ofobjects

Robustness

Computationally efficient

Adjustable cost/performance ratio (by changing thenumber of samples used)

Relatively simple

CONDENSATION – p.37/40

Page 38: Conditional Density Propagation for Visual Tracking · CONDENSATION actually uses a second-order model, but the idea is the same Time-independence of the observation density 1 0 4

Limitations

Initialization

Object model needs to be known in advance

Iterative - still prone to getting “stuck”

CONDENSATION – p.38/40

Page 39: Conditional Density Propagation for Visual Tracking · CONDENSATION actually uses a second-order model, but the idea is the same Time-independence of the observation density 1 0 4

Demonstration

Hand

Leaf

Pointing finger

Dancing girl

Drawing

CONDENSATION – p.39/40

Page 40: Conditional Density Propagation for Visual Tracking · CONDENSATION actually uses a second-order model, but the idea is the same Time-independence of the observation density 1 0 4

Conclusion

Got questions?

That’s all folks

CONDENSATION – p.40/40