Using Interval Particle Filtering for marker less 3D human motion

advertisement
Bayesian state estimation and
application to tracking
Jamal Saboune
jsaboune@site.uottawa.ca
VIVA Lab - SITE - University of Ottawa
Jamal Saboune - CRV10 Tutorial Day
1
Dynamic state estimation
A dynamic process described using a number of
random variables (state variables)
The evolution of the variables follows a model
Indication on all or some of the variables
(observation)
Evaluate at time t in a recursive manner (using t-1)
the process represented by its state vector Xt ,
given the history of observations Yt
Jamal Saboune - CRV10 Tutorial Day
2
Dynamic state estimation
The Markov process is defined by its transition
model and the initial state vector:
Xt= ft (Xt-1 ,Πt )
X0
The observation is defined by the observation
model :
Y = h (X ,v )
t
t
t
t
Jamal Saboune - CRV10 Tutorial Day
3
Dynamic state estimation- Bayesian approach
Estimate the a posteriori probability density function P(Xt /
Yt ) using the transition model, the observation model and
the probability density function P(Xt-1 / Yt-1 )
Jamal Saboune - CRV10 Tutorial Day
4
Kalman filter
Probability density propagation = Theoretical solution not
an analytical one
Particular case : The observation and process noises
distributions are Gaussian + The transition and observation
functions are linear  The probability density functions are
Gaussian mono-modal
Jamal Saboune - CRV10 Tutorial Day
5
Kalman filter
A number of equations using the transition/observation
functions and covariance matrices  Optimal estimation
of the state vector
Minimizes the mean square error between the estimated
state vector X’t and the ‘real’ state vector Xt E[(X’t - Xt )2]
given the history of observations Yt
Extended Kalman Filter (EKF) is the non linear version of
the KF = The transition and observation function can be
non-linear
Jamal Saboune - CRV10 Tutorial Day
6
Kalman filter example
Jamal Saboune - CRV10 Tutorial Day
7
Condensation algorithm (Isard, Blake 98)
Multimodal and non Gaussian probability densities
Model the uncertainty
Each possible configuration of the state vector is
represented by a ‘particle'
The likelihood of a certain configuration is called ‘weight’
The posterior (a posteriori) density is represented using N
‘weighted’ particles
Jamal Saboune - CRV10 Tutorial Day
8
Selection
Prediction
Likelihood function
Measure
Chosen particle
Jamal Saboune - CRV10 Tutorial Day
CONDENSATION – time t
Particles at t-1
9
Condensation algorithm (Isard, Blake 98)
Tracking of a hand movement using an edge detector
Jamal Saboune - CRV10 Tutorial Day
10
Condensation algorithm for tracking
Hands and head movement tracking using color models
and optical flow (Tung et al. 2008)
Jamal Saboune - CRV10 Tutorial Day
11
Condensation algorithm for tracking
Head tracking with contour models (Zhihong et al. 2002)
Jamal Saboune - CRV10 Tutorial Day
12
Interval Particle Filtering for 3D motion
capture (Saboune et al. 05,07,08)
3D humanoid model adapted to
the height of the person
32 degrees of freedom to simulate
the human movement
Find the best
fitting 3D
model
configuration
Jamal Saboune - CRV10 Tutorial Day
13
Interval Particle Filtering for 3D motion
capture (Saboune et al. 05,07,08)
Modify the Condensation algorithm and adapt it to the
human motion tracking  Good estimation using a
reduced number of particles
Jamal Saboune - CRV10 Tutorial Day
14
Particle Filtering for multi-targets tracking
Joint state vector for all targets and joint likelihood
function (Isard, MacCormick 2001, Zhao, Nevatia 2004)
Multiple particle filters (one/target) and combined global
likelihood function (Koller-Maier 2001)
The Explorative particle filtering for 3D people tracking
(Saboune, Laganiere 09)
Jamal Saboune - CRV10 Tutorial Day
15
Q&A
Jamal Saboune - CRV10 Tutorial Day
16
Download