Visual Tracking Content Content Visual Tracking

Oct 24, 2012 - The Image is described with a vector of selected ”Haar-like” wavelets ...... minimization of the cross-entropy error function: argmin(A,B){− Xi.
10MB taille 1 téléchargements 417 vues
Introduction to Visual Tracking Modelling Visual Tracking Stochastic Filters for Visual Tracking Some examples

Visual Tracking

Content

T. Chateau 1

Introduction to Visual Tracking

2

Modelling Visual Tracking

3

Stochastic Filters for Visual Tracking

4

Some examples

Pascal Institute, UMR 6602, UBP/CNRS/IFMA

October 24, 2012

T. Chateau

Introduction to Visual Tracking Modelling Visual Tracking Stochastic Filters for Visual Tracking Some examples

Blaise Pascal University

What is Visual Tracking ? On-line and O↵-line Tracking Why is Visual Tracking Difficult ?

Content

T. Chateau

Introduction to Visual Tracking Modelling Visual Tracking Stochastic Filters for Visual Tracking Some examples

Blaise Pascal University

What is Visual Tracking ? On-line and O↵-line Tracking Why is Visual Tracking Difficult ?

Visual Tracking

1

Introduction to Visual Tracking What is Visual Tracking ? On-line and O↵-line Tracking Why is Visual Tracking Difficult ?

2

Modelling Visual Tracking

3

Stochastic Filters for Visual Tracking

4

Some examples T. Chateau

Blaise Pascal University

Definition Visual Tracking is the process of locating, identifying, and determining the dynamic configuration of one or many moving (possibly deformable) objects (or parts of objects) in each frame of one or several cameras Human equivalent Follow something with your eyes

T. Chateau

Blaise Pascal University

Introduction to Visual Tracking Modelling Visual Tracking Stochastic Filters for Visual Tracking Some examples

Introduction to Visual Tracking Modelling Visual Tracking Stochastic Filters for Visual Tracking Some examples

What is Visual Tracking ? On-line and O↵-line Tracking Why is Visual Tracking Difficult ?

Visual Tracking (before beginning)

On-line and O↵-line Tracking

State Vector The dynamic configuration of the the tracked object at time k is modelled by a State vector denoted:

O↵-line Tracking (Deferred Tracking) Estimation of the state xk uses the entire observation sequence . Z = {zk }k=1,...,K

xk

Available Observations

State Sequence The state sequence is given by the set (sequence) of State vectors, denoted: . X = {xk }k=1,...,K

zk−3 zk−2

zk−1

zk

. Observation: Z = {zk }k=1,...,K

Introduction to Visual Tracking Modelling Visual Tracking Stochastic Filters for Visual Tracking Some examples

Blaise Pascal University

T. Chateau

Introduction to Visual Tracking Modelling Visual Tracking Stochastic Filters for Visual Tracking Some examples

What is Visual Tracking ? On-line and O↵-line Tracking Why is Visual Tracking Difficult ?

On-line and O↵-line Tracking

zk

zk+1

xk T. Chateau

Blaise Pascal University

What is Visual Tracking ? On-line and O↵-line Tracking Why is Visual Tracking Difficult ?

Delayed Tracking Estimation of the state needs current, past and a part (delay) of future observation

Available Observations

Available Observations

zk−1

zk+2

On-line and O↵-line Tracking

On-line Tracking Estimation of the state xk uses the current and past observation: z0:k

zk−3 zk−2

zk+1

xk

Observation

T. Chateau

What is Visual Tracking ? On-line and O↵-line Tracking Why is Visual Tracking Difficult ?

Blaise Pascal University

zk+2

zk−3 zk−2 xk−2

zk−1

zk

zk+1

delay

T. Chateau

Blaise Pascal University

zk+2

Introduction to Visual Tracking Modelling Visual Tracking Stochastic Filters for Visual Tracking Some examples

Introduction to Visual Tracking Modelling Visual Tracking Stochastic Filters for Visual Tracking Some examples

What is Visual Tracking ? On-line and O↵-line Tracking Why is Visual Tracking Difficult ?

On-line and O↵-line Tracking

Why is Visual Tracking Difficult ?

On-line Tracking For robotic applications: estimation of the state xk uses the current and past observation: z0:k

Available Observations

zk−3 zk−2

zk−1

What is Visual Tracking ? On-line and O↵-line Tracking Why is Visual Tracking Difficult ?

zk

zk+1

zk+2

Hidden State The state X is a hidden state and must be deduced from observation Tracking Challenges Object Modeling: how to define what an object is in terms that can be interpreted by a computer ? Appearance Change: The observation of an object changes according to many parameters (illumination conditions, occlusions, shape variation...)

xk T. Chateau

Introduction to Visual Tracking Modelling Visual Tracking Stochastic Filters for Visual Tracking Some examples

Kinematic Modelling: How to inject priors on object kinematic and interactions between objects.

Blaise Pascal University

What is Visual Tracking ? On-line and O↵-line Tracking Why is Visual Tracking Difficult ?

Tracking Challenges: Object Modelling

T. Chateau

Introduction to Visual Tracking Modelling Visual Tracking Stochastic Filters for Visual Tracking Some examples

Blaise Pascal University

What is Visual Tracking ? On-line and O↵-line Tracking Why is Visual Tracking Difficult ?

Tracking Challenges: object description Example 1

Generic, discriminative model Build a visual description of the object: Generic enough to encode the entire variability of the object Discriminative enough to separate the object into the images (cluttered background)

T. Chateau

Blaise Pascal University



 z1 z  .  2  z=  z3   ...  zN

The object is a pattern:

T. Chateau

Blaise Pascal University

Introduction to Visual Tracking Modelling Visual Tracking Stochastic Filters for Visual Tracking Some examples

Introduction to Visual Tracking Modelling Visual Tracking Stochastic Filters for Visual Tracking Some examples

What is Visual Tracking ? On-line and O↵-line Tracking Why is Visual Tracking Difficult ?

Tracking Challenges: object description Example 2 Generic object tracking (example: vehicle tracking):

What is Visual Tracking ? On-line and O↵-line Tracking Why is Visual Tracking Difficult ?

Tracking Challenges: object description Example 3 color based tracking:

R

G

B

RGB (marginalized histogram)

The Image is described with a vector of selected ”Haar-like” wavelets T. Chateau

Introduction to Visual Tracking Modelling Visual Tracking Stochastic Filters for Visual Tracking Some examples

The Image is described with a color histogram

Blaise Pascal University

T. Chateau

Introduction to Visual Tracking Modelling Visual Tracking Stochastic Filters for Visual Tracking Some examples

What is Visual Tracking ? On-line and O↵-line Tracking Why is Visual Tracking Difficult ?

Tracking Challenges: Appearance Variation Several Illumination Conditions and poses

Blaise Pascal University

My First Tracker Classification of Visual Tracking approaches Overview of non probabilistic methods Probabilistic Approaches to Visual Tracking

Content 1

Introduction to Visual Tracking

2

Modelling Visual Tracking My First Tracker The Toy Example Detection vs Tracking

Classification of Visual Tracking approaches Overview of non probabilistic methods Probabilistic Approaches to Visual Tracking

T. Chateau

Blaise Pascal University

3

Stochastic Filters for Visual Tracking

4

Some examples T. Chateau

Blaise Pascal University

Introduction to Visual Tracking Modelling Visual Tracking Stochastic Filters for Visual Tracking Some examples

My First Tracker Classification of Visual Tracking approaches Overview of non probabilistic methods Probabilistic Approaches to Visual Tracking

The Toy Example

Introduction to Visual Tracking Modelling Visual Tracking Stochastic Filters for Visual Tracking Some examples

My First Tracker Classification of Visual Tracking approaches Overview of non probabilistic methods Probabilistic Approaches to Visual Tracking

The Toy Example

Object Tracking from a single static camera Estimation of the 2D position of a moving object

State Vector . xk = {xk , yk } , the position of the gravity center of the object (into the image reference plane) Observation function Based on a di↵erence image : f Compute di↵. image: Idif = Iref Ik k k ref ref Update Ref. image: Ik+1 = ↵.I + (1

T. Chateau

Introduction to Visual Tracking Modelling Visual Tracking Stochastic Filters for Visual Tracking Some examples

Blaise Pascal University

My First Tracker Classification of Visual Tracking approaches Overview of non probabilistic methods Probabilistic Approaches to Visual Tracking

The Toy Example

T. Chateau

Introduction to Visual Tracking Modelling Visual Tracking Stochastic Filters for Visual Tracking Some examples

↵).Ik

Blaise Pascal University

My First Tracker Classification of Visual Tracking approaches Overview of non probabilistic methods Probabilistic Approaches to Visual Tracking

Tracking by Detection Tracking by Detection The state xk at time k depends only on the observation zk at time k

Example of di↵. image

zk

xk

T. Chateau

Blaise Pascal University

T. Chateau

Blaise Pascal University

Introduction to Visual Tracking Modelling Visual Tracking Stochastic Filters for Visual Tracking Some examples

My First Tracker Classification of Visual Tracking approaches Overview of non probabilistic methods Probabilistic Approaches to Visual Tracking

Tracking by Detection

Introduction to Visual Tracking Modelling Visual Tracking Stochastic Filters for Visual Tracking Some examples

My First Tracker Classification of Visual Tracking approaches Overview of non probabilistic methods Probabilistic Approaches to Visual Tracking

Tracking by Detection

Application to the toy example xk = f (zk ) where f is a function given the position of the foreground pixel which has the most moving neighbours pixels (clustering method not developed here)

Conclusion Tracking by detection needs a function xk = f (zk ) No prior on motion between two images is injected into the algorithm

Matlab demonstration

T. Chateau

Introduction to Visual Tracking Modelling Visual Tracking Stochastic Filters for Visual Tracking Some examples

Blaise Pascal University

My First Tracker Classification of Visual Tracking approaches Overview of non probabilistic methods Probabilistic Approaches to Visual Tracking

Injecting priors on motion

T. Chateau

Introduction to Visual Tracking Modelling Visual Tracking Stochastic Filters for Visual Tracking Some examples

Blaise Pascal University

My First Tracker Classification of Visual Tracking approaches Overview of non probabilistic methods Probabilistic Approaches to Visual Tracking

Injecting priors on motion

Assumption We know (prior) a bound on the relative motion between images Ik 1 and Ik . Consequence The state xk at time k depends only on observation zk at time k and the previous state xk 1 : xk = f (zk , xk zk−3 zk−2

zk−1

zk

The observation function is reduced to a Region of Interest (ROI) around the previous estimated state. Matlab demonstration

1)

zk+1

Application to the toy example

zk+2

xk−1 xk T. Chateau

Blaise Pascal University

T. Chateau

Blaise Pascal University

Introduction to Visual Tracking Modelling Visual Tracking Stochastic Filters for Visual Tracking Some examples

My First Tracker Classification of Visual Tracking approaches Overview of non probabilistic methods Probabilistic Approaches to Visual Tracking

Injecting priors on motion

Introduction to Visual Tracking Modelling Visual Tracking Stochastic Filters for Visual Tracking Some examples

My First Tracker Classification of Visual Tracking approaches Overview of non probabilistic methods Probabilistic Approaches to Visual Tracking

Classification of Visual Tracking approaches Non-Probabilistic vs Probabilistic Approaches

Conclusion Injecting priors on motion reduces the search state space

Visual Tracking Approaches Non Probabilistic Approaches

The resulting solution is a basic ”tracker”

T. Chateau

Introduction to Visual Tracking Modelling Visual Tracking Stochastic Filters for Visual Tracking Some examples

Optimisation based approaches

Parametric based Approaches

Other Approaches

Stochastic based Approaches

Blaise Pascal University

My First Tracker Classification of Visual Tracking approaches Overview of non probabilistic methods Probabilistic Approaches to Visual Tracking

Tracking as an optimisation problem

State The State vector is an unknown parameter vector which can be estimated using optimisation techniques :

Probabilistic Approaches

T. Chateau

Introduction to Visual Tracking Modelling Visual Tracking Stochastic Filters for Visual Tracking Some examples

Blaise Pascal University

My First Tracker Classification of Visual Tracking approaches Overview of non probabilistic methods Probabilistic Approaches to Visual Tracking

example of Tracking solutions using optimisation techniques MeanShift, Comaniciu

ˆ k = arg min E(xk , zk ) x xk 2X

The search space X is often reduced using priors on motion and previous estimation.

T. Chateau

Blaise Pascal University

T. Chateau

Blaise Pascal University

Introduction to Visual Tracking Modelling Visual Tracking Stochastic Filters for Visual Tracking Some examples

My First Tracker Classification of Visual Tracking approaches Overview of non probabilistic methods Probabilistic Approaches to Visual Tracking

example of Tracking solutions using optimisation techniques Localisation, Royer (Lasmea)

Introduction to Visual Tracking Modelling Visual Tracking Stochastic Filters for Visual Tracking Some examples

My First Tracker Classification of Visual Tracking approaches Overview of non probabilistic methods Probabilistic Approaches to Visual Tracking

example of Tracking solutions using optimisation techniques Localisation, Royer (Lasmea)

Manual control

1) Learning step Training video 2) Autonomous control

3D Visual map Realtime localisation

Robot localisation

Current frame Autonomous navigation

T. Chateau

Introduction to Visual Tracking Modelling Visual Tracking Stochastic Filters for Visual Tracking Some examples

Blaise Pascal University

My First Tracker Classification of Visual Tracking approaches Overview of non probabilistic methods Probabilistic Approaches to Visual Tracking

example of Tracking solutions using optimisation techniques Localisation, Royer (Lasmea)

T. Chateau

T. Chateau

Introduction to Visual Tracking Modelling Visual Tracking Stochastic Filters for Visual Tracking Some examples

Blaise Pascal University

My First Tracker Classification of Visual Tracking approaches Overview of non probabilistic methods Probabilistic Approaches to Visual Tracking

example of Tracking solutions using optimisation techniques Localisation, Royer (Lasmea)

Blaise Pascal University

T. Chateau

Blaise Pascal University

Introduction to Visual Tracking Modelling Visual Tracking Stochastic Filters for Visual Tracking Some examples

My First Tracker Classification of Visual Tracking approaches Overview of non probabilistic methods Probabilistic Approaches to Visual Tracking

example of Tracking solutions using optimisation techniques

Introduction to Visual Tracking Modelling Visual Tracking Stochastic Filters for Visual Tracking Some examples

My First Tracker Classification of Visual Tracking approaches Overview of non probabilistic methods Probabilistic Approaches to Visual Tracking

example of Tracking solutions using optimisation techniques

Localisation, Royer (Lasmea) Localisation, Royer (Lasmea)

T. Chateau

Introduction to Visual Tracking Modelling Visual Tracking Stochastic Filters for Visual Tracking Some examples

Blaise Pascal University

My First Tracker Classification of Visual Tracking approaches Overview of non probabilistic methods Probabilistic Approaches to Visual Tracking

example of Tracking solutions using optimisation techniques ESM, Malis, INRIA

T. Chateau

Blaise Pascal University

T. Chateau

Introduction to Visual Tracking Modelling Visual Tracking Stochastic Filters for Visual Tracking Some examples

Blaise Pascal University

My First Tracker Classification of Visual Tracking approaches Overview of non probabilistic methods Probabilistic Approaches to Visual Tracking

Tracking : Other non-probabilistic approaches Using Machine Learning, Williams, RVM, Relevance Vector Machine

T. Chateau

Blaise Pascal University

Introduction to Visual Tracking Modelling Visual Tracking Stochastic Filters for Visual Tracking Some examples

My First Tracker Classification of Visual Tracking approaches Overview of non probabilistic methods Probabilistic Approaches to Visual Tracking

Tracking : Other non-probabilistic approaches Tracking by Detection, V. Lepetit, EFPL

Introduction to Visual Tracking Modelling Visual Tracking Stochastic Filters for Visual Tracking Some examples

My First Tracker Classification of Visual Tracking approaches Overview of non probabilistic methods Probabilistic Approaches to Visual Tracking

Probabilistic Approaches to Visual Tracking Random Vectors Both the state X and the observation Z are random vectors: X 2 X and Z 2 Z Joint Probability The Probability of a sate sequence is given by: p(X|Z) = p(x1 ; x2 ; ...; xK |z1 ; z2 ; ...; zK ) ˆ The final output of a Visual Tracking process is an estimate X

T. Chateau

Introduction to Visual Tracking Modelling Visual Tracking Stochastic Filters for Visual Tracking Some examples

Blaise Pascal University

T. Chateau

My First Tracker Classification of Visual Tracking approaches Overview of non probabilistic methods Probabilistic Approaches to Visual Tracking

The Recursive Bayesian Estimation Approach Dynamic Bayesian Network representation First order Markovian assumption: the object configuration at time k, xk , depends only on the previous state Xk 1 .

xk−3 xk−2

xk−1

xk

xk+1

xk+2

States

. X = {xk }k=1,...,K

zk−3 zk−2

zk−1

zk

T. Chateau

zk+1

Observations

zk+2

Blaise Pascal University

Introduction to Visual Tracking Modelling Visual Tracking Stochastic Filters for Visual Tracking Some examples

Blaise Pascal University

My First Tracker Classification of Visual Tracking approaches Overview of non probabilistic methods Probabilistic Approaches to Visual Tracking

Recursive state-space Bayesian estimation approach

Posterior distribution The belief about the current state xk is expressed by a probability distribution: p(xk |zk ): POSTERIOR DISTRIBUTION How to recursively compute p(xk |zk )?

. Z = {zk }k=1,...,K

T. Chateau

Blaise Pascal University

Introduction to Visual Tracking Modelling Visual Tracking Stochastic Filters for Visual Tracking Some examples

My First Tracker Classification of Visual Tracking approaches Overview of non probabilistic methods Probabilistic Approaches to Visual Tracking

computing p(xk |zk ) from p(xk 1 |zk 1 )

Introduction to Visual Tracking Modelling Visual Tracking Stochastic Filters for Visual Tracking Some examples

My First Tracker Classification of Visual Tracking approaches Overview of non probabilistic methods Probabilistic Approaches to Visual Tracking

computing p(xk |zk ) from p(xk 1 |zk 1 )

A two steps algorithm

Prediction step (dynamical model)

p(xk−1 |zk−1 )

p(xk |zk−1 ) Prediction (Chapman Kolmogorov)

p(xk |zk ) Update (Bayes)

Chapman-Kolmogorov equation: Z p(xk |z1:k 1 ) = p(xk |xk p(xk−1 |zk−1 )

1 )p(xk 1 |z1:k 1 )dxk 1

p(xk |zk−1 ) Prediction (Chapman Kolmogorov)

p(xk |xk−1 )

p(xk |zk ) Update (Bayes)

p(zk |xk ) p(xk |xk−1 )

p(zk |xk )

Dynamics

Dynamics

Likelihood

Likelihood

T. Chateau

Blaise Pascal University

Introduction to Visual Tracking Modelling Visual Tracking Stochastic Filters for Visual Tracking Some examples

T. Chateau

My First Tracker Classification of Visual Tracking approaches Overview of non probabilistic methods Probabilistic Approaches to Visual Tracking

computing p(xk |zk ) from p(xk 1 |zk 1 )

Blaise Pascal University

Introduction to Visual Tracking Modelling Visual Tracking Stochastic Filters for Visual Tracking Some examples

My First Tracker Classification of Visual Tracking approaches Overview of non probabilistic methods Probabilistic Approaches to Visual Tracking

computing p(xk |zk ) from p(xk 1 |zk 1 )

Update step Bayes theorem:

Recursive Bayesian filtering distribution p(zk |xk )p(xk |z1:k p(xk |z1:k ) = p(zk |z1:k 1 )

with : p(zk |z1:k

1)

=

Z

1)

p(xk |z1:k ) = C

1

p(zk |xk )

Z

xk

p(xk−1 |zk−1 )

p(zk |xk )p(xk |z1:k

p(xk−1 |zk−1 )

p(xk |zk−1 ) Prediction (Chapman Kolmogorov)

1 )dxk

p(xk |zk )

T. Chateau Dynamics

p(xk |xk

p(xk |zk−1 ) Prediction (Chapman Kolmogorov)

p(xk |xk−1 )

1 )p(xk 1 |z1:k 1 )dxk 1 p(xk |zk )

Update (Bayes)

p(zk |xk )

Update (Bayes) Dynamics

p(xk |xk−1 )

1

Likelihood

p(zk |xk ) Blaise Pascal University Likelihood

T. Chateau

Blaise Pascal University

Introduction to Visual Tracking Modelling Visual Tracking Stochastic Filters for Visual Tracking Some examples

My First Tracker Classification of Visual Tracking approaches Overview of non probabilistic methods Probabilistic Approaches to Visual Tracking

Introduction to Visual Tracking Modelling Visual Tracking Stochastic Filters for Visual Tracking Some examples

computing p(xk |zk ) from p(xk 1 |zk 1 )

My First Tracker Classification of Visual Tracking approaches Overview of non probabilistic methods Probabilistic Approaches to Visual Tracking

Modelling pdf

Partial Conclusion The recursive bayesian filtering distribution provides an efficient solution to compute the posterior at time k (p(xk |zk )) from the posterior at time k 1 (p(xk 1 |zk the dynamic model (p(xk |xk 1 )), and the likelihood (p(zk |xk ))

Parametric and stochastic models

1 ))

,

Operations (integrals, products) on pdf have to be done:

Question how to define probabilities such that operations like product and integration become tractable ? T. Chateau

Introduction to Visual Tracking Modelling Visual Tracking Stochastic Filters for Visual Tracking Some examples

Blaise Pascal University

My First Tracker Classification of Visual Tracking approaches Overview of non probabilistic methods Probabilistic Approaches to Visual Tracking

p(xk |zk−1 )

p(xk |xk−1 ) Dynamics

T. Chateau

Introduction to Visual Tracking Modelling Visual Tracking Stochastic Filters for Visual Tracking Some examples

Blaise Pascal University

My First Tracker Classification of Visual Tracking approaches Overview of non probabilistic methods Probabilistic Approaches to Visual Tracking

Stochastic models (Particle filters,...) Particle filters All pdf are approximated by a set of samples.

Kalman filter Assumption: all pdf are modelized with Gaussian

Prediction (Chapman Kolmogorov)

Stochastic approximation of the pdf

T. Chateau

Parametric models (Kalman,...)

p(xk−1 |zk−1 )

Parametric function (Gaussian)

p(xk |zk ) Update (Bayes)

p(zk |xk ) Likelihood

Blaise Pascal University

p(xk−1 |zk−1 )

p(xk |zk−1 ) Prediction (Chapman Kolmogorov)

p(xk |xk−1 ) Dynamics

T. Chateau

p(xk |zk ) Update (Bayes)

p(zk |xk ) Likelihood

Blaise Pascal University

Introduction to Visual Tracking Modelling Visual Tracking Stochastic Filters for Visual Tracking Some examples

My First Tracker Classification of Visual Tracking approaches Overview of non probabilistic methods Probabilistic Approaches to Visual Tracking

Probabilistic filters

Introduction to Visual Tracking Modelling Visual Tracking Stochastic Filters for Visual Tracking Some examples

Estimating pdf(s) with a set of samples The SIR algorithm The MCMC (Markov Chain Monte Carlo) algorithm Multi-object visual tracking (MOT)

Content

Partial conclusion Kalman filters and derived: we assume that the unknown pdf can be modelized by a parametric function Stochastic solutions: approximation of the pdf by a set of particles.

1

Introduction to Visual Tracking

2

Modelling Visual Tracking

3

Stochastic Filters for Visual Tracking Estimating pdf(s) with a set of samples The SIR algorithm The MCMC (Markov Chain Monte Carlo) algorithm Multi-object visual tracking (MOT)

4

Some examples

Next Stochastic approaches to bayesian filter are developed in the next section

T. Chateau

Introduction to Visual Tracking Modelling Visual Tracking Stochastic Filters for Visual Tracking Some examples

Blaise Pascal University

Estimating pdf(s) with a set of samples The SIR algorithm The MCMC (Markov Chain Monte Carlo) algorithm Multi-object visual tracking (MOT)

Approximating pdf(s)

T. Chateau

Introduction to Visual Tracking Modelling Visual Tracking Stochastic Filters for Visual Tracking Some examples

Blaise Pascal University

Estimating pdf(s) with a set of samples The SIR algorithm The MCMC (Markov Chain Monte Carlo) algorithm Multi-object visual tracking (MOT)

Approximating pdf(s) Set of weighted particles model

Set of particles model p(x) ⇡ {xn }n=1,..,N p(x) ⇡

N X

(x

x ) n

n=1

T. Chateau

Blaise Pascal University

p(x) ⇡ {xn , ⇡ n }n=1,..,N p(x) ⇡

N X

⇡ n (x

xn )

n=1

T. Chateau

Blaise Pascal University

Introduction to Visual Tracking Modelling Visual Tracking Stochastic Filters for Visual Tracking Some examples

Estimating pdf(s) with a set of samples The SIR algorithm The MCMC (Markov Chain Monte Carlo) algorithm Multi-object visual tracking (MOT)

SIR (algo. and matlab simulation) (1996)

Introduction to Visual Tracking Modelling Visual Tracking Stochastic Filters for Visual Tracking Some examples

Estimating pdf(s) with a set of samples The SIR algorithm The MCMC (Markov Chain Monte Carlo) algorithm Multi-object visual tracking (MOT)

SIR: Conclusion

Condensation Algorithm 0

Init: particles {(x0n , 1/N )}N n=1 according to the initial distribution x0 for k = 1, ..., Kend do Prediction : generation of {(xnk , 1/N )}N n=1 from 0 p(xk |Xk 1 = xkn 1 ) Observation : estimation of the weight vector according to the image {(xnk , ⇡ nk )}N with ⇡ nk / p(zk |xk = xnk ) n=1 0n n n N Sampling : build {(xk 1 , 1/N )}N n=1 from {(x0 , ⇡ 0 )}n=1 using Importance Sampling P . n ˆ k = N1 N Estimation : x n=1 xk end for Output: Estimated state sequence {ˆ xk }k=1,...,Kend T. Chateau

Introduction to Visual Tracking Modelling Visual Tracking Stochastic Filters for Visual Tracking Some examples

Blaise Pascal University

Estimating pdf(s) with a set of samples The SIR algorithm The MCMC (Markov Chain Monte Carlo) algorithm Multi-object visual tracking (MOT)

MCMC (Markov Chain Monte Carlo)

Conclusion Particle filters approximate non gaussian pdf Condensation is a ”parallel” algorithm. The power of exploration is conditioned by an efficient sampling (many sampling strategies have been proposed) matlab illustration (SIR, CONDENSATION)

T. Chateau

Introduction to Visual Tracking Modelling Visual Tracking Stochastic Filters for Visual Tracking Some examples

Blaise Pascal University

Estimating pdf(s) with a set of samples The SIR algorithm The MCMC (Markov Chain Monte Carlo) algorithm Multi-object visual tracking (MOT)

MCMC (Markov Chain Monte Carlo)

Examples Method: build a chained set of particles (Markov Chain Monte Carlo)

T. Chateau

Blaise Pascal University

T. Chateau

Blaise Pascal University

Introduction to Visual Tracking Modelling Visual Tracking Stochastic Filters for Visual Tracking Some examples

Estimating pdf(s) with a set of samples The SIR algorithm The MCMC (Markov Chain Monte Carlo) algorithm Multi-object visual tracking (MOT)

MCMC (Markov Chain Monte Carlo) Method: build a chained set of particles (Markov Chain Monte Carlo)

Introduction to Visual Tracking Modelling Visual Tracking Stochastic Filters for Visual Tracking Some examples

Estimating pdf(s) with a set of samples The SIR algorithm The MCMC (Markov Chain Monte Carlo) algorithm Multi-object visual tracking (MOT)

MCMC: Conclusion

Conclusion MCMC approximate non gaussian pdf MCMC are sequential algorithms. Efficient sampling strategies based on partionned sampling can be proposed MCMC are used in for high dimensional tracking problems

T. Chateau

Introduction to Visual Tracking Modelling Visual Tracking Stochastic Filters for Visual Tracking Some examples

Blaise Pascal University

T. Chateau

Estimating pdf(s) with a set of samples The SIR algorithm The MCMC (Markov Chain Monte Carlo) algorithm Multi-object visual tracking (MOT)

Multi-object visual tracking MOT

Challenges The state vector has a variable dimension: The exploration process must jump from one dimension to an other.

Introduction to Visual Tracking Modelling Visual Tracking Stochastic Filters for Visual Tracking Some examples

Blaise Pascal University

Estimating pdf(s) with a set of samples The SIR algorithm The MCMC (Markov Chain Monte Carlo) algorithm Multi-object visual tracking (MOT)

RJMCMC

RJMCMC The size of the state vector is variable according to the pdf associated to the number of objects position updating proposals,

One solution: RJMCMC Reversible Jump Monte-Carlo Markov Chain is a solution to track a varying number of objects

T. Chateau

Blaise Pascal University

dimension move proposals (add an object, remove an object)

T. Chateau

Blaise Pascal University

Introduction to Visual Tracking Modelling Visual Tracking Stochastic Filters for Visual Tracking Some examples

Estimating pdf(s) with a set of samples The SIR algorithm The MCMC (Markov Chain Monte Carlo) algorithm Multi-object visual tracking (MOT)

Conclusion

Introduction to Visual Tracking Modelling Visual Tracking Stochastic Filters for Visual Tracking Some examples

Tracking a vehicle from a static camera Multi-object tracking Tracking with classifiers

Content

Conclusion STATE MODEL

TRACKING ENGINE (KALMAN ,SIR, MCMC)

LIKELIHOOD FUNCTON (OBSERVATI ON)

KINEMATIC MODEL

1

Introduction to Visual Tracking

2

Modelling Visual Tracking

3

Stochastic Filters for Visual Tracking

4

Some examples Tracking a vehicle from a static camera Context Solution

Multi-object tracking Context Solution

T. Chateau

Introduction to Visual Tracking Modelling Visual Tracking Stochastic Filters for Visual Tracking Some examples

Blaise Pascal University

Tracking a vehicle from a static camera Multi-object tracking Tracking with classifiers

What do we want to do ?

We want to estimate velocity and steering angle of the vehicle.

Bicycle kinematic model

Visual tracking of a vehicle from a static camera The dynamic model of the object is known. We want to estimate velocity and steering angle of the vehicle. L

L

Car

T. Chateau

Context Solution Tracking with Classifiers Introduction to Visual Tracking Tracking a vehicle from a static camera The classifier Modelling Visual Tracking Multi-object tracking Stochastic Filters for Visual Tracking Tracking with classifiers Temporal Tracking Some examples Results

What do we want to do ?

Visual tracking of a vehicle from a static camera The dynamic model of the object is known.

L

Tracking with classifiers T. Chateau Blaise Pascal University

δ

Blaise Pascal University

L

Car Bicycle kinematic model

T. Chateau

δ

Blaise Pascal University

Introduction to Visual Tracking Modelling Visual Tracking Stochastic Filters for Visual Tracking Some examples

Tracking a vehicle from a static camera Multi-object tracking Tracking with classifiers

Tracking scheme

Introduction to Visual Tracking Modelling Visual Tracking Stochastic Filters for Visual Tracking Some examples

Tracking a vehicle from a static camera Multi-object tracking Tracking with classifiers

Kinematic model Bicycle model L

Pt : position (size 2) STATE MODEL

βt : orientation δt: steering angle vt: velocity

Car Bicycle kinematic model

BACKGROUND/FOREGROUND

T. Chateau

Introduction to Visual Tracking Modelling Visual Tracking Stochastic Filters for Visual Tracking Some examples

KINEMATIC MODEL

v: velocity x, y : position

BICYCLE MODEL

: orientation

Blaise Pascal University

Tracking a vehicle from a static camera Multi-object tracking Tracking with classifiers

Observation function

T. Chateau

Introduction to Visual Tracking Modelling Visual Tracking Stochastic Filters for Visual Tracking Some examples

Blaise Pascal University

Tracking a vehicle from a static camera Multi-object tracking Tracking with classifiers

Observation function

T. Chateau

δ

x˙ = v. cos y˙ = v. sin ˙ = v . tan L

TRACKING ENGINE SIR

LIKELIHOOD FUNCTON (OBSERVATI ON)

L

Blaise Pascal University

T. Chateau

Blaise Pascal University

(1)

Introduction to Visual Tracking Modelling Visual Tracking Stochastic Filters for Visual Tracking Some examples

Introduction to Visual Tracking Modelling Visual Tracking Stochastic Filters for Visual Tracking Some examples

Tracking a vehicle from a static camera Multi-object tracking Tracking with classifiers

Observation function

Tracking a vehicle from a static camera Multi-object tracking Tracking with classifiers

Results Results

T. Chateau

Introduction to Visual Tracking Modelling Visual Tracking Stochastic Filters for Visual Tracking Some examples

Blaise Pascal University

T. Chateau

Introduction to Visual Tracking Modelling Visual Tracking Stochastic Filters for Visual Tracking Some examples

Tracking a vehicle from a static camera Multi-object tracking Tracking with classifiers

Results

Blaise Pascal University

Tracking a vehicle from a static camera Multi-object tracking Tracking with classifiers

Pr´ecision (cm) Speed km/hr 40 60 80

Results

T. Chateau

Blaise Pascal University

Vision ave/std 0.25/0.18 0.19/0.16 0.18/0.15

Rangefinder ave/std 0.65/0.54 0.72/0.67 0.33/0.22

T. Chateau

Sensor merge ave/std 0.17/0.10 0.09/0.06 0.14/0.10

Blaise Pascal University

Introduction to Visual Tracking Modelling Visual Tracking Stochastic Filters for Visual Tracking Some examples

Tracking a vehicle from a static camera Multi-object tracking Tracking with classifiers

Multi-object tracking

Introduction to Visual Tracking Modelling Visual Tracking Stochastic Filters for Visual Tracking Some examples

Tracking a vehicle from a static camera Multi-object tracking Tracking with classifiers

What do we want to do ?

Visual tracking of a varying number of objects real time tracking and identification of a variable number of objects in 3D,

Multi-object tracking

no prior knowledge of objects appearance, robustness to partial and heavy occlusions , robustness to heavy scale changes, no prior knowledge of object entrance locations.

T. Chateau

Introduction to Visual Tracking Modelling Visual Tracking Stochastic Filters for Visual Tracking Some examples

Blaise Pascal University

Tracking a vehicle from a static camera Multi-object tracking Tracking with classifiers

What do we want to do ?

T. Chateau

Introduction to Visual Tracking Modelling Visual Tracking Stochastic Filters for Visual Tracking Some examples

Blaise Pascal University

Tracking a vehicle from a static camera Multi-object tracking Tracking with classifiers

What do we want to do ?

Visual tracking of a varying number of objects real time tracking and identification of a variable number of objects in 3D,

Visual tracking of a varying number of objects real time tracking and identification of a variable number of objects in 3D,

no prior knowledge of objects appearance,

no prior knowledge of objects appearance,

robustness to partial and heavy occlusions ,

robustness to partial and heavy occlusions ,

robustness to heavy scale changes,

robustness to heavy scale changes,

no prior knowledge of object entrance locations.

no prior knowledge of object entrance locations.

T. Chateau

T. Chateau

Blaise Pascal University

Blaise Pascal University

Introduction to Visual Tracking Modelling Visual Tracking Stochastic Filters for Visual Tracking Some examples

Introduction to Visual Tracking Modelling Visual Tracking Stochastic Filters for Visual Tracking Some examples

Tracking a vehicle from a static camera Multi-object tracking Tracking with classifiers

What do we want to do ?

Tracking a vehicle from a static camera Multi-object tracking Tracking with classifiers

What do we want to do ?

Visual tracking of a varying number of objects real time tracking and identification of a variable number of objects in 3D,

Visual tracking of a varying number of objects real time tracking and identification of a variable number of objects in 3D,

no prior knowledge of objects appearance,

no prior knowledge of objects appearance,

robustness to partial and heavy occlusions ,

robustness to partial and heavy occlusions ,

robustness to heavy scale changes,

robustness to heavy scale changes,

no prior knowledge of object entrance locations.

no prior knowledge of object entrance locations.

T. Chateau

T. Chateau

Introduction to Visual Tracking Modelling Visual Tracking Stochastic Filters for Visual Tracking Some examples

Blaise Pascal University

Introduction to Visual Tracking Modelling Visual Tracking Stochastic Filters for Visual Tracking Some examples

Tracking a vehicle from a static camera Multi-object tracking Tracking with classifiers

Tracking scheme

Blaise Pascal University

Tracking a vehicle from a static camera Multi-object tracking Tracking with classifiers

Proposals . Xk = {n, x2k , x3k , ..., xnk } xk : state of one object STATE MODEL

RJMCMC Proposals Enter: add an object (data driven) Leave: remove an object (data driven)

TRACKING ENGINE RJMCMC

Object position Update: choose and object and propose a spatial move associated to this object.

LIKELIHOOD FUNCTON (OBSERVATI ON)

KINEMATIC MODEL

BACKGROUND/FOREGROUND

Several solutions

T. Chateau

Blaise Pascal University

T. Chateau

Blaise Pascal University

Introduction to Visual Tracking Modelling Visual Tracking Stochastic Filters for Visual Tracking Some examples

Tracking a vehicle from a static camera Multi-object tracking Tracking with classifiers

Results

Introduction to Visual Tracking Modelling Visual Tracking Stochastic Filters for Visual Tracking Some examples

Tracking a vehicle from a static camera Multi-object tracking Tracking with classifiers

Tracking with classifiers

Tracking with classifiers

Demonstration

T. Chateau

Introduction to Visual Tracking Modelling Visual Tracking Stochastic Filters for Visual Tracking Some examples

Blaise Pascal University

Tracking a vehicle from a static camera Multi-object tracking Tracking with classifiers

What do we want to do ?

Introduction to Visual Tracking Modelling Visual Tracking Stochastic Filters for Visual Tracking Some examples

Blaise Pascal University

Tracking a vehicle from a static camera Multi-object tracking Tracking with classifiers

What do we want to do ?

Visual tracking of an object class from a moving camera We want to recognize and track a moving object from a moving monocular camera, at realtime (30fps). We want to track and recognize an object using only a generic model.

T. Chateau

T. Chateau

Blaise Pascal University

Visual tracking of an object class from a moving camera We want to recognize and track a moving object from a moving monocular camera, at realtime (30fps). We want to track and recognize an object using only a generic model.

T. Chateau

Blaise Pascal University

Introduction to Visual Tracking Modelling Visual Tracking Stochastic Filters for Visual Tracking Some examples

Tracking a vehicle from a static camera Multi-object tracking Tracking with classifiers

Tracking scheme

Introduction to Visual Tracking Modelling Visual Tracking Stochastic Filters for Visual Tracking Some examples

Tracking a vehicle from a static camera Multi-object tracking Tracking with classifiers

Why is it a challenge ? A moving object C: position (size 2) s: scale factor

Variation of the appearence of the object (3D object)

STATE MODEL

Variation of the illumination conditions

TRACKING ENGINE SIR

LIKELIHOOD FUNCTON (OBSERVATI ON)

KINEMATIC MODEL

ADABOOST CLASSIFIER

Cluttered background

AR Model

T. Chateau

Introduction to Visual Tracking Modelling Visual Tracking Stochastic Filters for Visual Tracking Some examples

Blaise Pascal University

Tracking a vehicle from a static camera Multi-object tracking Tracking with classifiers

Why is it a challenge ?

T. Chateau

Blaise Pascal University

Introduction to Visual Tracking Modelling Visual Tracking Stochastic Filters for Visual Tracking Some examples

Tracking a vehicle from a static camera Multi-object tracking Tracking with classifiers

Why is it a challenge ?

A moving camera Background/Foreground segmentation can not be done easily.

Recognize an object from a generic model This is an object recognition problem

?

Difficult with a moving camera

T. Chateau

Blaise Pascal University

T. Chateau

Blaise Pascal University

Introduction to Visual Tracking Modelling Visual Tracking Stochastic Filters for Visual Tracking Some examples

Tracking a vehicle from a static camera Multi-object tracking Tracking with classifiers

Why is it a challenge ?

Introduction to Visual Tracking Modelling Visual Tracking Stochastic Filters for Visual Tracking Some examples

Tracking a vehicle from a static camera Multi-object tracking Tracking with classifiers

A solution ? using classifiers into a probabilistic tracking framework

Track an object at a realtime framerate This is a realtime tracking problem

Bring together recent classifiers (Adaboost, SVM) and a particle filter Recent Classifier SVM or AdaBoost

Probabilistic tracking framework Particle Filter

a Classifier based likelihood Observation function Particle Filter (COPF)

T. Chateau

Introduction to Visual Tracking Modelling Visual Tracking Stochastic Filters for Visual Tracking Some examples

Blaise Pascal University

Tracking a vehicle from a static camera Multi-object tracking Tracking with classifiers

Using Classifiers for Real-Time Tracking: why ? O✏ine learning of the object to be tracked Trackers can be designed to track categories of objects (pedestrians, vehicles),

T. Chateau

Introduction to Visual Tracking Modelling Visual Tracking Stochastic Filters for Visual Tracking Some examples

Blaise Pascal University

Tracking a vehicle from a static camera Multi-object tracking Tracking with classifiers

Using Classifiers for Real-Time Tracking: why ? O✏ine learning of the object to be tracked Objects are modelized with a collection of views, representing variation of the object appearance,

STATISTICAL LEARNING

T. Chateau

Blaise Pascal University

STATISTICAL LEARNING

T. Chateau

Blaise Pascal University

Introduction to Visual Tracking Modelling Visual Tracking Stochastic Filters for Visual Tracking Some examples

Introduction to Visual Tracking Modelling Visual Tracking Stochastic Filters for Visual Tracking Some examples

Tracking a vehicle from a static camera Multi-object tracking Tracking with classifiers

Overview of the method

Tracking a vehicle from a static camera Multi-object tracking Tracking with classifiers

Overview of the method t=0

Initialisation where is the object in the first frame ?

Initialisation where is the object in the first frame ?

t++

t++

CLASSIFIER

Prediction Predict the new object position

Prediction Predict the new object position

Observation Update the object position using a likelihood function based on classifier

Introduction to Visual Tracking Modelling Visual Tracking Stochastic Filters for Visual Tracking Some examples

Tracking a vehicle from a static camera Multi-object tracking Tracking with classifiers

The Observation Function

output of a classifier m(f )

output of a classifier m(f )

Assumption : m(f ) 2]

Assumption : m(f ) 2]

1; +1[ with

m(f 1 ) < m(f 2 ) ! P (class|f 1 ) < P (class|f 2 )

?

1 1 + exp(A.m(f ) + B) Blaise Pascal University

Tracking a vehicle from a static camera Multi-object tracking Tracking with classifiers

1; +1[ with

m(f 1 ) < m(f 2 ) ! P (class|f 1 ) < P (class|f 2 )

Platt scaling, 1999 Estimate a sigmoid, from a learning database in order to produce calibrated probabilities from the output of the classifier :

T. Chateau

CLASSIFIER

Particle FilterBlaise Pascal University T. Chateau

The Observation Function

P (positive|m(f )) =

?

Observation Update the object position using a likelihood function based on classifier

Particle FilterBlaise Pascal University T. Chateau

Introduction to Visual Tracking Modelling Visual Tracking Stochastic Filters for Visual Tracking Some examples

Convert to probabilities

t=0

(2)

Platt scaling, 1999 Estimate a sigmoid, from a learning database in order to produce calibrated probabilities from the output of the classifier : P (positive|m(f )) =

T. Chateau

1 1 + exp(A.m(f ) + B) Blaise Pascal University

(2)

Introduction to Visual Tracking Modelling Visual Tracking Stochastic Filters for Visual Tracking Some examples

Introduction to Visual Tracking Modelling Visual Tracking Stochastic Filters for Visual Tracking Some examples

Tracking a vehicle from a static camera Multi-object tracking Tracking with classifiers

Platt scaling

Tracking a vehicle from a static camera Multi-object tracking Tracking with classifiers

Platt scaling

Estimation of the sigmoid parameters A et B are two parameters to be estimated from a learning database (mi , yi ) with (yi 2 {0; 1})

Estimation of the sigmoid parameters A et B are two parameters to be estimated from a learning database (mi , yi ) with (yi 2 {0; 1})

non-linear estimation minimization of the cross-entropy error function: X argmin(A,B) { yi log(pi ) + (1 yi ) log(1

non-linear estimation minimization of the cross-entropy error function: X argmin(A,B) { yi log(pi ) + (1 yi ) log(1

pi )},

(3)

i

with

with

1 pi = 1 + exp(A.mi + B) T. Chateau

1 1 + exp(A.mi + B)

T. Chateau

0.25

Neg. Pos.

p1

Tracking a vehicle from a static camera Multi-object tracking Tracking with classifiers

Neg. Pos.

p1 0.2

Haar based wavelets

0.5 0.15

0.4

+1 0.3

+1

0.1

+1

0.2 0.05

-10

0

10

20

SVM score (margin)

30

0.9

0.9

0.8

0.8

0.7

0.7

p(y=1|x)

1

0.6 0.5 0.4

0.3

0.3

0.2

0.2

0.2

0.3

0.4

0.5

0.6

0.7

0.8

Adaboost score

0.9

p(y=1|x)

-20

0 0.1

1

-1

+1

+1

-1

-1

+1

-1

-20

-10

0

10

20

30

0 0

SVM score (margin)

T. Chateau

A Window of interest is descibed by a vector of the output of five filters applied to several positions and scales. Large number of features example: For 3 scales and a 128 ⇥ 64 pixels image, the number of features is about 40000.

0.1

0.1 0 -30

+1

+1

0 -30

0.4

-1 -1

0.1

0.5

(4)

Features

0.7

0.6

(3)

Blaise Pascal University

Introduction to Visual Tracking Modelling Visual Tracking Stochastic Filters for Visual Tracking Some examples

Tracking a vehicle from a static camera Multi-object tracking Tracking with classifiers

Results 0.6

pi =

(4)

Blaise Pascal University

Introduction to Visual Tracking Modelling Visual Tracking Stochastic Filters for Visual Tracking Some examples

pi )},

i

0.2

0.4

0.6

Adaboost score

0.8

Blaise Pascal University

1

T. Chateau

Blaise Pascal University

Introduction to Visual Tracking Modelling Visual Tracking Stochastic Filters for Visual Tracking Some examples

Tracking a vehicle from a static camera Multi-object tracking Tracking with classifiers

Features

Introduction to Visual Tracking Modelling Visual Tracking Stochastic Filters for Visual Tracking Some examples

Tracking a vehicle from a static camera Multi-object tracking Tracking with classifiers

features reduction

Haar based wavelets +1 +1 +1

-1

+1

-1

+1

+1

-1

-1

+1

-1

-1 +1

A Window of interest is descibed by a vector of the output of five filters applied to several positions and scales. Large number of features example: For 3 scales and a 128 ⇥ 64 pixels image, the number of features is about 40000.

T. Chateau

Introduction to Visual Tracking Modelling Visual Tracking Stochastic Filters for Visual Tracking Some examples

Using Adaboost Weak Classifier: one threshold for each feature Evaluation Fonction: minimization of the number of samples assigned to the bad class Stopping criteria: number of features to retain (rounds of boosting)

Blaise Pascal University

Tracking a vehicle from a static camera Multi-object tracking Tracking with classifiers

features reduction

T. Chateau

Introduction to Visual Tracking Modelling Visual Tracking Stochastic Filters for Visual Tracking Some examples

Blaise Pascal University

Tracking a vehicle from a static camera Multi-object tracking Tracking with classifiers

features reduction

Using Adaboost Weak Classifier: one threshold for each feature

Using Adaboost Weak Classifier: one threshold for each feature

Evaluation Fonction: minimization of the number of samples assigned to the bad class

Evaluation Fonction: minimization of the number of samples assigned to the bad class

Stopping criteria: number of features to retain (rounds of boosting)

Stopping criteria: number of features to retain (rounds of boosting)

T. Chateau

Blaise Pascal University

T. Chateau

Blaise Pascal University

Introduction to Visual Tracking Modelling Visual Tracking Stochastic Filters for Visual Tracking Some examples

Tracking a vehicle from a static camera Multi-object tracking Tracking with classifiers

features reduction

Introduction to Visual Tracking Modelling Visual Tracking Stochastic Filters for Visual Tracking Some examples

Tracking a vehicle from a static camera Multi-object tracking Tracking with classifiers

Some of the selected features

Using Adaboost Weak Classifier: one threshold for each feature Evaluation Fonction: minimization of the number of samples assigned to the bad class Stopping criteria: number of features to retain (rounds of boosting)

T. Chateau

Introduction to Visual Tracking Modelling Visual Tracking Stochastic Filters for Visual Tracking Some examples

Blaise Pascal University

Tracking a vehicle from a static camera Multi-object tracking Tracking with classifiers

Result for a recognition step (Adaboost)

T. Chateau

Introduction to Visual Tracking Modelling Visual Tracking Stochastic Filters for Visual Tracking Some examples

Blaise Pascal University

Tracking a vehicle from a static camera Multi-object tracking Tracking with classifiers

Result for a recognition step (Adaboost) 1 0.9 feature vector dimension 50 75 100

0.8 0.7 0.6 0.5

-1

+1

...

...

0.4 0.3 0.2 0.1 00

0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 Roc curve for three different sizes of feature vector Using a pedestrian database with 2000 samples for training and 2000 samples for testing l

T. Chateau

Blaise Pascal University

T. Chateau

Blaise Pascal University

Introduction to Visual Tracking Modelling Visual Tracking Stochastic Filters for Visual Tracking Some examples

Introduction to Visual Tracking Modelling Visual Tracking Stochastic Filters for Visual Tracking Some examples

Tracking a vehicle from a static camera Multi-object tracking Tracking with classifiers

Classifier score evolution near the true position of the object

. Particle filter : p(Xt |Z0:t ) = {(Xnt , ⇡tn )}N n=1 State vector . Xt = (ct , ct

0.8

5

0.6 0.4 10

-10 -10 -5 0 5 horizontal trans. (pixels)

Xt+1 = AXt + Bvt , vt ⇠ N (0, ⌃)

Introduction to Visual Tracking Modelling Visual Tracking Stochastic Filters for Visual Tracking Some examples

(6)

Likelihood function

10

P (Zt |Xt = Xnt ) = T. Chateau

(5)

Dynamics

0 -5

0.2 -10 -5 0 5 horizontal trans. (pixels)

1 , st , st 1 )

. with c = (x, y) location of a bounding box whitin the image and associated scale factor st

SVM 10

Margin

Score

Adaboost 1

Tracking a vehicle from a static camera Multi-object tracking Tracking with classifiers

Blaise Pascal University

1 n o ⇤ (cn + sn W)) + B ˆ ˆ 1 + exp A.m(F t t T. Chateau

Introduction to Visual Tracking Modelling Visual Tracking Stochastic Filters for Visual Tracking Some examples

Tracking a vehicle from a static camera Multi-object tracking Tracking with classifiers

. Particle filter : p(Xt |Z0:t ) = {(Xnt , ⇡tn )}N n=1

(7)

Blaise Pascal University

Tracking a vehicle from a static camera Multi-object tracking Tracking with classifiers

. Particle filter : p(Xt |Z0:t ) = {(Xnt , ⇡tn )}N n=1

State vector

State vector . Xt = (ct , ct

1 , st , st 1 )

. Xt = (ct , ct

(5)

1 , st , st 1 )

(5)

. with c = (x, y) location of a bounding box whitin the image and associated scale factor st

. with c = (x, y) location of a bounding box whitin the image and associated scale factor st

Dynamics

Dynamics Xt+1 = AXt + Bvt , vt ⇠ N (0, ⌃)

(6)

Likelihood function P (Zt |Xt = Xnt ) =

Xt+1 = AXt + Bvt , vt ⇠ N (0, ⌃)

(6)

Likelihood function 1 n o ⇤ (cn + sn W)) + B ˆ ˆ 1 + exp A.m(F t t T. Chateau

Blaise Pascal University

(7)

P (Zt |Xt = Xnt ) =

1 n o ⇤ (cn + sn W)) + B ˆ ˆ 1 + exp A.m(F t t T. Chateau

Blaise Pascal University

(7)

Introduction to Visual Tracking Modelling Visual Tracking Stochastic Filters for Visual Tracking Some examples

100 80 60 0

50

100 150 #image (a)

200

250

SVM Adaboost

120 100 80 60 0

100 #image (b)

200

(c) Im#001

(d) Im#261

im #010

T. Chateau

Introduction to Visual Tracking Modelling Visual Tracking Stochastic Filters for Visual Tracking Some examples

im #020 The number of gravity center of particles is restricted the set of particles

Blaise Pascal University

T. Chateau

Introduction to Visual Tracking Modelling Visual Tracking Stochastic Filters for Visual Tracking Some examples

Tracking a vehicle from a static camera Multi-object tracking Tracking with classifiers

Tracking a generic object (videos)

-150 -100 -50 0 50 horizontal position

(b)

T. Chateau

Blaise Pascal University

Tracking a vehicle from a static camera Multi-object tracking Tracking with classifiers

Tracking a generic object: occlusion (videos)

(a)

STATISTICAL LEARNING

Blaise Pascal University

(c)

(e)

(g)

100-150 -100 -50 0 50 horizontal position

(d)

T. Chateau

100

p(Xt |Zt )

some particles

p(Xt |Zt )

im #001

140 SVM Adaboost

vertical position

1/10 particles displayed 600 particles 100 particles

120

p(Xt | Zt )

3

The classifier is called for a set of regular positions and scales whitin the image A set of particles is initialized from the positions ans scales associated to the highest outputs of the classifier The number of particles is restricted when the particle distribution is around the object to be tracked.

p(Xt |Zt )

2

Tracking a vehicle from a static camera Multi-object tracking Tracking with classifiers

Comparing SVM and Adaboost classifiers

horizontal position

Initialization 1

Introduction to Visual Tracking Modelling Visual Tracking Stochastic Filters for Visual Tracking Some examples

Tracking a vehicle from a static camera Multi-object tracking Tracking with classifiers

-150 -100 -50 0 50 horizontal position

100

(f)

Blaise Pascal University

-150 -100

-50 0 50 horizontal position

(h)

100

Introduction to Visual Tracking Modelling Visual Tracking Stochastic Filters for Visual Tracking Some examples

Tracking a vehicle from a static camera Multi-object tracking Tracking with classifiers

Tracking a generic object: occlusion (videos)

(a) (36.2s)

(b) (37.0s)

(c) (37.5s)

Introduction to Visual Tracking Modelling Visual Tracking Stochastic Filters for Visual Tracking Some examples

Tracking a vehicle from a static camera Multi-object tracking Tracking with classifiers

Tracking a specific object (videos)

(d) (38.5s)

STATISTICAL LEARNING

T. Chateau

Introduction to Visual Tracking Modelling Visual Tracking Stochastic Filters for Visual Tracking Some examples

Blaise Pascal University

Tracking a vehicle from a static camera Multi-object tracking Tracking with classifiers

Parallel implementation: the Babylon Project

T. Chateau

Introduction to Visual Tracking Modelling Visual Tracking Stochastic Filters for Visual Tracking Some examples

Blaise Pascal University

Tracking a vehicle from a static camera Multi-object tracking Tracking with classifiers

The Babylon Project

Firefire 400Mbps dedicated for video broadcasting

1 node with 2 CPU

Ethernet switch Gigabit dedicated to nodes communications

Node: XServe PPC G5 Bi-processor SIMD achived by the AltiVec Extention T. Chateau

Blaise Pascal University

T. Chateau

Blaise Pascal University

Introduction to Visual Tracking Modelling Visual Tracking Stochastic Filters for Visual Tracking Some examples

Tracking a vehicle from a static camera Multi-object tracking Tracking with classifiers

Parallel implementation

Tracking a vehicle from a static camera Multi-object tracking Tracking with classifiers

Parallel implementation

N2 Time consuming

Prediction

Introduction to Visual Tracking Modelling Visual Tracking Stochastic Filters for Visual Tracking Some examples

Observation

N1

Prediction

Resampling

One iteration

One iteration

T. Chateau

Introduction to Visual Tracking Modelling Visual Tracking Stochastic Filters for Visual Tracking Some examples

Blaise Pascal University

Tracking a vehicle from a static camera Multi-object tracking Tracking with classifiers

Parallel implementation

T. Chateau

Introduction to Visual Tracking Modelling Visual Tracking Stochastic Filters for Visual Tracking Some examples

Blaise Pascal University

Tracking a vehicle from a static camera Multi-object tracking Tracking with classifiers

Parallel implementation

N1

N1

N2 N1

wi

N2 N1

N1

N14 Prediction

Observation

One iteration

T. Chateau

N14 Prediction

Observation

One iteration

Blaise Pascal University

T. Chateau

Blaise Pascal University

Resampling

Introduction to Visual Tracking Modelling Visual Tracking Stochastic Filters for Visual Tracking Some examples

Tracking a vehicle from a static camera Multi-object tracking Tracking with classifiers

Parallel implementation

Introduction to Visual Tracking Modelling Visual Tracking Stochastic Filters for Visual Tracking Some examples

Tracking a vehicle from a static camera Multi-object tracking Tracking with classifiers

3D Tracking

N1

wi

N2 N1

N1

N14 Observation

Prediction

Resampling

One iteration

T. Chateau

Blaise Pascal University

Introduction to Visual Tracking Modelling Visual Tracking Stochastic Filters for Visual Tracking Some examples

T. Chateau

Tracking a vehicle from a static camera Multi-object tracking Tracking with classifiers

3D Tracking

Conclusion STATE MODEL

Performances Seq. Par. Gain

200 0.0609s 16.40 0.0231s 43.31 ⇥2.7

Blaise Pascal University

500 0.1439s 6.95 0.0265s 37.72 ⇥5.42

1000 0.2874s 3.48 0.0313s 31.9 ⇥9.16

5000 1.6393s 0.61 0.0858s 11.66 ⇥19.43

10000 3.8462s 0.26 0.1567s 6.38 ⇥24.5

20 FPS with 2000 particles . Linear evolution of performances according to the number of nodes. T. Chateau

Blaise Pascal University

TRACKING ENGINE (KALMAN ,SIR, MCMC)

LIKELIHOOD FUNCTON (OBSERVATI ON)

KINEMATIC MODEL

Thanks to F. Bardet, D. Ramadasan, C. Tournayre, G. Jacob, E. Royer,....

T. Chateau

Blaise Pascal University