question of the day
play

Question of the Day: How can we use measurements to estimate state? - PDF document

11/21/2014 CS201: Computer Vision Tracking: Kalman Filter and Multi- Target Tracking John Magee 21 November 2014 Slides Courtesy of Diane H. Theriault (deht@bu.edu) Question of the Day: How can we use measurements to estimate state?


  1. 11/21/2014 CS201: Computer Vision Tracking: Kalman Filter and Multi- Target Tracking John Magee 21 November 2014 Slides Courtesy of Diane H. Theriault (deht@bu.edu) Question of the Day: • How can we use measurements to estimate state? • Kalman Filter: http://www.cs.unc.edu/~welch/media/pdf/kal man_intro.pdf 1

  2. 11/21/2014 State vs Measurements • Graphical model • Goal: Estimate state by using measurements … z k-1 z k z k+1 … … X k-1 X k X k+1 … State Changes Over Time • Markov assumption: next state depends only on immediately preceding state • State evolution function: A: x t+1 = A(x t ) • Corrupted by noise (to absorb what you can’t model) x t+1 = A(x t ) + w t (w is noise term. ex: Gaussian with covariance Q) … z k-1 z k … z k+1 X k+ … X k-1 X k … 1 • Example: state = [pos vel]. A = constant velocity 2

  3. 11/21/2014 Measuring State • Measurement Model: H • Measurements: z t = H(x t ) • Corrupted by noise z t = H(x t ) + v t (v is noise term. ex: Gaussian with covariance R != Q) … z k-1 z k z k+1 … X k+ … X k … X k-1 1 • Ex: state is [pos vel]. Measurement is just pos Kalman Filter Concept • Predict / Correct • Each state estimate has associated uncertainty (P k ) • Recursive: each estimate uses previous estimate (not just data) 3

  4. 11/21/2014 Kalman Filter Prediction • Given: – Previous state estimate (x k-1 ) – Previous uncertainty (P k-1 ) – Linear State evolution fn as matrix A – Process noise (Q) • Output: – Prediction (guess/estimate) of state at next time (x - k ) – Certainty of that estimate (P - k ) – (Predicted measurement: H x - k ) Kalman Filter Update • Given: – Current state prediction (x - k ) and uncertainty (P - k ) – Measurement prediction (H x - k ) – Actual measurement (z k ) – Measurement noise (R) • Output: – Updated state estimate x k 4

  5. 11/21/2014 Kalman Filter Update • Notes: – “Innovation” ( z k - H x - k ) – the difference between the measurement prediction and observation – State update is basically a weighted average with a special weight K, the “ Kalman Gain” – Kalman gain both: • Transforms from the measurement space to state space • Balances the process noise and measurement noise 5

  6. 11/21/2014 Noise Terms • Process Noise (Q): how much uncertainty do you expect in your state evolution? – Ex: bats fly 10m/s. frame rate 131.5 fps : 7 cm per frame. • Measurement Noise: how much uncertainty do you have in your measurements? – Ex: with three cameras, we can use camera geometry to estimate our expected uncertainty Kalman Filter for Smoothing • That ’ s easy: For every time step, use the state estimate instead of the state backed out from the measurement 6

  7. 11/21/2014 Kalman Filter for Scoring • After prediction: you have a probability distribution: mean and covariance of a Gaussian centered on predicted future measurement • Plug in the observed measurement to get probability • Take product (sum logs) over all measurements Discussion Questions: • What does the Kalman filter give you? • What do you need to know to use the Kalman filter? 7

  8. 11/21/2014 Question of the Day (2): • How can we simultaneously track many objects? Multi-target tracking • Many detections in each frame. • Need to put them together somehow 8

  9. 11/21/2014 Multi-target tracking • Many detections in each frame • Need to put them together somehow • Two problems: – State estimation (e.g. Kalman Filter) – Data Association – Data Association != Kalman Filter Assignment Problem • Ex: Match workers and jobs • Ex: Measurements from two consecutive frames • Bipartite graph. Weights on each edge Find lowest cost / best matching • Hungarian / Kuhn-Munkres assignment algorithm • POLYNOMIAL (don’t let anyone tell you otherwise) • http://en.wikipedia.org/wiki/Hungarian_algorithm 9

  10. 11/21/2014 Multi-dimensional Assignment • Tri-partite (or higher) matching • Ex: measurements from 3 or more frames of video. • This is NP Complete (but we won’t let that stop us) http://www.sce.carleton.ca/faculty/chinneck/po/Chapter12.p df http://www.sce.carleton.ca/faculty/chinneck/po/Chapter13.p df Multiple Hypothesis Tracking • “Choose the best possible set of tracks so that each measurement is used only once” • How to formulate data association task mathematically? • Kalman filter gives us state estimation, but we have to put the measurements together in the right order 10

  11. 11/21/2014 Multiple Hypothesis Tracking • Build out the MHT trees • Set up corresponding matrices • Score each leaf (using a Kalman filter) • Formulate Integer Programming problem. Practical Strategies • Windowing • Gating 11

  12. 11/21/2014 Practical Considerations • Missing measurements and new tracks (dummy measurements) • Coasting 12

Recommend


More recommend