CSSE463: Image Recognition This week Day 31 Today: Intro to Kalman filtering for tracking Tomorrow: Project workday, status report due Questions? Motion models for tracking The Kalman filter is a probabilistic model that combines noisy measurements with the expected trajectory of the object. It works even with occlusion. Ideas presented here are from http://www.cs.unc.edu/~welch/kalman/ chapter 15.4 of Russell and Norvig, Artificial Intelligence: A Modern Approach, ed 2: Prentice Hall, 2003 Chapter 16.6 of Sonka et al. Kevin Murphy’s toolbox: http://www.cs.ubc.ca/~murphyk/Software/Kalman/kalman.html Scenarios Imagine: Viewing a small bird flying through a forest Tracking a missile given a blip every few seconds Tracking planets, given intermittent observations Scenarios Imagine: Viewing a small bird flying through a forest Tracking a missile given a blip every few seconds Tracking planets, given intermittent observations In each case: The observations are noisy But we can formulate an expectation about the trajectory Goal We are trying to infer the state, X, of a dynamic system, given only noisy measurements, Z, over time Q1 Example Trajectory of a particle with acceleration due to gravity State: Position, velocity, and acceleration Observations Position only, corrupted by Gaussian noise Q2 Formalism of model A linear system with Gaussian noise: x k 1 Ax k w k and noisy measurements: z k Hx k v k Q3,4 Algorithm Give initial estimates of xˆ k 1 and Pk 1 Iteratively: Predict xˆ k Pk Correct A xˆ k 1 Bu AP k 1 A T k 1 Q Kk xˆ k Pk Pk H HP k H xˆ k T T R K k ( z k H xˆ k ) ( I K k H ) Pk Q3-4 Limitations Must be a linear system Noise must be Gaussian Applications and Extensions Beyond just tracking and physical control…any system with continuous state variables and noisy measurements: Economies! Ecosystems! To overcome linearity constraint: Extended Kalman filters Switching Kalman filters Particle filters: Monte Carlo method Demos Projectile motion (courtesy of Nathan Sickler) Accelerometers: http://www.youtube.com/watch?v=AWAFFZ7rPDc Tracking: http://www.youtube.com/user/rfengr (bright colors) http://www.youtube.com/watch?v=86UeUvI7pLQ (ES453: uniform ribbon) http://www.youtube.com/watch?v=U1L0X4cts8o (RC car) Balancing robots: http://www.youtube.com/watch?v=46FswYw-m6o (inverted pendulum) http://www.youtube.com/watch?v=_TXfXoKyMzc&NR=1 (Boston Scientific’s Big Dog)