Particle Filtering. CS6240 Multimedia Analysis. Leow Wee Kheng. Department of Computer Science School of Computing National University of Singapore

Similar documents
Leow Wee Kheng CS4243 Computer Vision and Pattern Recognition. Motion Tracking. CS4243 Motion Tracking 1

Mean Shift Tracking. CS4243 Computer Vision and Pattern Recognition. Leow Wee Kheng

Visual Tracking. Image Processing Laboratory Dipartimento di Matematica e Informatica Università degli studi di Catania.

Segmentation and Tracking of Partial Planar Templates

Visual Tracking. Antonino Furnari. Image Processing Lab Dipartimento di Matematica e Informatica Università degli Studi di Catania

New Models For Real-Time Tracking Using Particle Filtering

Probabilistic Observation Models for Tracking Based on Optical Flow

Object Tracking with an Adaptive Color-Based Particle Filter

Visual Tracking (1) Feature Point Tracking and Block Matching

Keeping flexible active contours on track using Metropolis updates

Optical Flow Estimation

Feature Detection and Matching

Augmented Reality VU. Computer Vision 3D Registration (2) Prof. Vincent Lepetit

Using Subspace Constraints to Improve Feature Tracking Presented by Bryan Poling. Based on work by Bryan Poling, Gilad Lerman, and Arthur Szlam

MODEL-FREE, STATISTICAL DETECTION AND TRACKING OF MOVING OBJECTS

Non-Rigid Image Registration III

Robust Model-Free Tracking of Non-Rigid Shape. Abstract

Probabilistic Robotics

CS201: Computer Vision Introduction to Tracking

HUMAN COMPUTER INTERFACE BASED ON HAND TRACKING

Tracking Algorithms. Lecture16: Visual Tracking I. Probabilistic Tracking. Joint Probability and Graphical Model. Deterministic methods

Stochastic Road Shape Estimation, B. Southall & C. Taylor. Review by: Christopher Rasmussen

Visual Tracking (1) Tracking of Feature Points and Planar Rigid Objects

Model-based Visual Tracking:

Lecture 28 Intro to Tracking

Recall: Blob Merge/Split Lecture 28

Switching Hypothesized Measurements: A Dynamic Model with Applications to Occlusion Adaptive Joint Tracking

International Journal of Advance Engineering and Research Development

Visual Saliency Based Object Tracking

9.913 Pattern Recognition for Vision. Class I - Overview. Instructors: B. Heisele, Y. Ivanov, T. Poggio

Chapter 9 Object Tracking an Overview

Announcements. Computer Vision I. Motion Field Equation. Revisiting the small motion assumption. Visual Tracking. CSE252A Lecture 19.

Visual Motion Analysis and Tracking Part II

An Overview of a Probabilistic Tracker for Multiple Cooperative Tracking Agents

Evaluation of Moving Object Tracking Techniques for Video Surveillance Applications

Robust Visual Tracking Using the Time-Reversibility Constraint

Model Fitting. CS6240 Multimedia Analysis. Leow Wee Kheng. Department of Computer Science School of Computing National University of Singapore

Kanade Lucas Tomasi Tracking (KLT tracker)

Segmentation in Noisy Medical Images Using PCA Model Based Particle Filtering

Outline. Data Association Scenarios. Data Association Scenarios. Data Association Scenarios

Occluded Facial Expression Tracking

COMPUTER VISION > OPTICAL FLOW UTRECHT UNIVERSITY RONALD POPPE

A Bayesian Framework for Multi-cue 3D Object Tracking

Tracking Computer Vision Spring 2018, Lecture 24

CSE 490R P1 - Localization using Particle Filters Due date: Sun, Jan 28-11:59 PM

Mixture Models and EM

AUTONOMOUS SYSTEMS. PROBABILISTIC LOCALIZATION Monte Carlo Localization

Tracking of Human Body using Multiple Predictors

Computer Vision II Lecture 4

Probabilistic Tracking in Joint Feature-Spatial Spaces

Towards the completion of assignment 1

Scale-invariant visual tracking by particle filtering

FACIAL ACTION TRACKING USING PARTICLE FILTERS AND ACTIVE APPEARANCE MODELS. Soumya Hamlaoui, Franck Davoine

Digital Image Processing Laboratory: MAP Image Restoration

Probabilistic Detection and Tracking of Motion Discontinuities

10-701/15-781, Fall 2006, Final

Lecture 20: Tracking. Tuesday, Nov 27

An Adaptive Eigenshape Model

ECSE-626 Project: An Adaptive Color-Based Particle Filter

Tracking Soccer Ball Exploiting Player Trajectory

CHAPTER 5 MOTION DETECTION AND ANALYSIS

ROBUST OBJECT TRACKING BY SIMULTANEOUS GENERATION OF AN OBJECT MODEL

Switching Kalman Filter-Based Approach for Tracking and Event Detection at Traffic Intersections

A Hierarchical Statistical Framework for the Segmentation of Deformable Objects in Image Sequences Charles Kervrann and Fabrice Heitz IRISA / INRIA -

Robert Collins CSE598G. Robert Collins CSE598G

Visual Tracking (1) Pixel-intensity-based methods

Supervised texture detection in images

Nonrigid Surface Modelling. and Fast Recovery. Department of Computer Science and Engineering. Committee: Prof. Leo J. Jia and Prof. K. H.

Tracking Multiple Moving Objects with a Mobile Robot

Robust Visual Tracking for Multiple Targets

Probabilistic Detection and Tracking of Motion Boundaries

Unit 3 : Image Segmentation

Algorithms for Markov Random Fields in Computer Vision

CS4495 Fall 2014 Computer Vision Problem Set 6: Particle Tracking

A Boosted Particle Filter: Multitarget Detection and Tracking

Peripheral drift illusion

Image Cues Fusion for Object Tracking Based on Particle Filter

Low Cost Motion Capture

CS664 Lecture #16: Image registration, robust statistics, motion

Feature Tracking and Optical Flow

Monte Carlo Localization for Mobile Robots

6D-Vision: Fusion of Stereo and Motion for Robust Environment Perception

Occlusion Robust Multi-Camera Face Tracking

OPPA European Social Fund Prague & EU: We invest in your future.

EE795: Computer Vision and Intelligent Systems

Kanade Lucas Tomasi Tracking (KLT tracker)

The most cited papers in Computer Vision

Efficient Acquisition of Human Existence Priors from Motion Trajectories

Comparison Between The Optical Flow Computational Techniques

Eye Typing off the Shelf

Matching. Compare region of image to region of image. Today, simplest kind of matching. Intensities similar.

Volume 3, Issue 11, November 2013 International Journal of Advanced Research in Computer Science and Software Engineering

Revising Stereo Vision Maps in Particle Filter Based SLAM using Localisation Confidence and Sample History

Multi-View Face Tracking with Factorial and Switching HMM

Egomotion Estimation by Point-Cloud Back-Mapping

Prof. Fanny Ficuciello Robotics for Bioengineering Visual Servoing

Artificial Intelligence for Robotics: A Brief Summary

10/03/11. Model Fitting. Computer Vision CS 143, Brown. James Hays. Slides from Silvio Savarese, Svetlana Lazebnik, and Derek Hoiem

A Bayesian Framework for Real-Time 3D Hand Tracking in High Clutter Background

Moving Object Tracking in Video Using MATLAB

Transcription:

Particle Filtering CS6240 Multimedia Analysis Leow Wee Kheng Department of Computer Science School of Computing National University of Singapore (CS6240) Particle Filtering 1 / 28

Introduction Introduction Video contains motion information that can be used for detecting the presence of moving objects tracking and analyzing the motion of the objects tracking and analyzing the motion of camera Basic tracking methods: Gradient-based Image Flow: Track points based on intensity gradient. Example: Lucas-Kanade method [LK81, TK91]. Feature-based Image Flow: Track points based on template matching of features at points. Mean Shift Tracking: Track image patches based on feature distributions, e.g., color histograms [CRM00]. (CS6240) Particle Filtering 2 / 28

Introduction Strengths and Weaknesses Image flow approach: Very general and easy to use. If track correctly, can obtain precise trajectory with sub-pixel accuracy. Easily confused by points with similar features. Cannot handle occlusion. Cannot differentiate between planner motion and motion in depth. Demo: lk-elephant.mpg. Mean shift tracking: Very general and easy to use. Can track objects that change size & orientation. Can handle occlusion, size change. Track trajectory not as precise. Can t track object boundaries accurately. Demo: ms-football1.avi, ms-football2.avi. (CS6240) Particle Filtering 3 / 28

Introduction Basic methods can be easily confused in complex situations: frame 1 frame 2 In frame 1, which hand is going which way? Which hand in frame 1 corresponds to which hand in frame 2? (CS6240) Particle Filtering 4 / 28

Introduction Notes: The chances of making wrong association is reduced if we can correctly predict where the objects will be in frame 2. To predict ahead of time, need to estimate the velocities and the positions of the objects in frame 1. To overcome these problems, need more sophisticated tracking algorithms: Kalman filtering: for linear dynamic systems, unimodal probability distributions Extended Kalman filtering: for nonlinear dynamic systems, unimodal probability distributions Condensation algorithm: for multi-modal probability distributions (CS6240) Particle Filtering 5 / 28

CONDENSATION Conditional Density Propagation over time [IB96, IB98]. Also called particle filtering. Main differences with Kalman filter: 1 Kalman filter: Assumes uni-modal (Gaussian) distribution. Predicts single new state for each object tracked. Updates state based on error between predicted state and observed data. 2 CONDENSATION algorithm: Can work for multi-modal distribution. Predicts multiple possible states for each object tracked. Each possible state has a different probability. Estimates probabilities of predicted states based on observed data. (CS6240) Particle Filtering 6 / 28

Probability Density Functions Probability Density Functions Two basic representations of probability density functions P(x): 1 Explicit Represent P(x) by an explicit formula, e.g., Gaussian P(x) = 1 ) exp ( x2 2πσ 2σ 2 (1) Given any x, can compute P(x) using the formula. 2 Implicit Represent P(x) by a set of samples x 1,x 2,...,x n and their estimated probabilities P(x i ). Given any x x i, cannot compute P(x ) because there is no explicit formula. (CS6240) Particle Filtering 7 / 28

Probability Density Functions P ( x) x 1 x 2 x n x CONDENSATION algorithm predicts multiple possible next states. Achieved using sampling or drawing samples from the probability density functions. High probability samples should be drawn more frequently. Low probability samples should be drawn less frequently. (CS6240) Particle Filtering 8 / 28

Sampling from Uniform Distribution Sampling from Uniform Distribution Uniform Distribution: P ( x) 0 Xm XM x Equal probability between X m and X M : P(x) = 1 X M X m if X m x X M 0 otherwise. (2) (CS6240) Particle Filtering 9 / 28

Sampling from Uniform Distribution Sampling Algorithm: 1 r 0 X m x X M 1 Generate a random number r from [0, 1] (uniform distribution). 2 Map r to x: x = X m +r(x M X m ) (3) The samples x drawn will have uniform distribution. (CS6240) Particle Filtering 10 / 28

Sampling from Non-uniform Distribution Sampling from Non-uniform Distribution Let P(x) denote the probability density function. F(x) is the indefinite integral of P(x): F(x) = x 0 P(x)dx (4) 1 F ( x) r P ( x) 0 x (CS6240) Particle Filtering 11 / 28

Sampling from Non-uniform Distribution Sampling Algorithm: 1 Generate a random number r from [0, 1] (uniform distribution). 2 Map r to x: Find the x such that F(x) = r, i.e., x = F 1 (r). That is, find the x such that the area under P(x) to the left of x equals r. The samples x drawn will fit the probability distribution. (CS6240) Particle Filtering 12 / 28

Sampling from Implicit Distribution Sampling from Implicit Distribution The method is useful when it is difficult to compute F 1 (r), or the probability density is implicit. The basic idea is similar to the previous method: Given x i and P(x i ), i = 1,...,n. Compute cumulative probability F(x i ): i F(x i ) = P(x j ) (5) j=1 Compute normalized weight C(x i ): C(x i ) = F(x i )/F(x n ) (6) (CS6240) Particle Filtering 13 / 28

Sampling from Implicit Distribution C n = 1 r Sampling Algorithm: 0 P ( x ) 1 F 1 P ( x 2 ) F 2 P ( x n ) 1 Generate a random number r from [0, 1] (uniform distribution). 2 Map r to x i : Find the smallest i such that C i r. Return x i. Samples x = x i drawn will follow probability density. The larger the n, the better the approximation. (CS6240) Particle Filtering 14 / 28 F n

Factored Sampling Factored Sampling x: object model (e.g., a curve) z: observed or measured data in image P(x): a priori (or prior) probability density of x occurring. P(z x): likelihood that object x gives rise to data z. P(x z): a posteriori (or posterior) probability density that the object is actually x given that z is observed in the image. So, want to estimate P(x z). (CS6240) Particle Filtering 15 / 28

Factored Sampling From Bayes rule: P(x z) = kp(z x)p(x) (7) where k = P(z) is a normalizing term that does not depend on x. Notes: In general, P(z x) is multi-modal. Cannot compute P(x z) using closed form equation. Has to use iterative sampling technique. Basic method: factored sampling [GCK91]. Useful when P(z x) can be evaluated point-wise but sampling it is not feasible, and P(x) can be sampled but not evaluated. (CS6240) Particle Filtering 16 / 28

Factored Sampling Factored Sampling Algorithm [GCK91]: 1 Generate a set of samples {s 1,s 2,...,s n } from P(x). 2 Choose an index i {1,...,n} with probability π i : 3 Return x i. π i = P(z x = s i). (8) n P(z x = s j ) j=1 The samples x = x i drawn will have a distribution that approximates P(x z). The larger the n, the better the approximation. So, no need to explicitly compute P(x z). (CS6240) Particle Filtering 17 / 28

CONDENSATION Algorithm CONDENSATION Algorithm Object Dynamics state of object model at time t: x(t) history of object model: X(t) = (x(1),x(2),...,x(t)) set of image features at time t: z(t) history of features: Z(t) = (z(1),z(2),...,z(t)) General assumption: object dynamic is a Markov process: P(x(t+1) X(t)) = P(x(t+1) x(t)) (9) i.e., new state depends only on immediately preceding state. P(x(t+1) X(t)) governs probability of state change. (CS6240) Particle Filtering 18 / 28

CONDENSATION Algorithm Measurements Measurements z(t) are assumed to be mutually independent, and also independent of object dynamics. So, P(Z(t) X(t)) = t P(z(i) x(i)). (10) i=1 (CS6240) Particle Filtering 19 / 28

CONDENSATION Algorithm CONDENSATION Algorithm Iterate: At time t, construct n samples {s i (t),π i (t),c i (t),i = 1,...,n} as follows: The ith sample is constructed as follows: 1 Select a sample s from the probability distribution {s i (t 1),π i (t 1),c i (t 1)}. 2 Predict by selecting a sample s from the probability distribution Then, s i (t) = s. P(x(t) x(t 1) = s) (CS6240) Particle Filtering 20 / 28

CONDENSATION Algorithm 3 Measure z(t) from image and weight new sample: π i (t) = P(z(t) x(t) = s i (t)) normalize π i (t) so that i π i(t) = 1 compute cumulative probability c i (t): c 0 (t) = 0 c i (t) = c i 1 (t)+π i (t) (CS6240) Particle Filtering 21 / 28

Example Example Track curves in input video [IB96]. Let Notes: x denote the parameters of a linear transformation of a B-spline curve, either affine deformation or some non-rigid motion, p s denote points on the curve. Instead of modeling the curve, model the transformation of curve. Curve can change shape drastically over time. But, changes of transformation parameters are smaller. (CS6240) Particle Filtering 22 / 28

Example Model Dynamics x(t+1) = Ax(t)+Bω(t) (11) A: state transition matrix ω: random noise B: scaling matrix Then, P(x(t+1) x(t)) is given by P(x(t+1) x(t)) = exp { 12 } B 1 [x(t+1) Ax(t)] 2. (12) P(x(t+1) x(t)) is a Gaussian. (CS6240) Particle Filtering 23 / 28

Example Measurement P(z(t) x(t)) is assumed to remain unchanged over time. z s is nearest edge to point p s on model curve, within a small neighborhood δ of p s. To allow for missing edge and noise, measurement density is modeled as a robust statistics, a truncated Gaussian: { } P(z x) = exp 1 2σ 2 φ s where φ s = ρ is a constant penalty. { ps z s 2 if p s z s < δ ρ s otherwise. (13) (14) Now, can apply CONDENSATION algorithm to track the curve. (CS6240) Particle Filtering 24 / 28

Example Further Readings: 1 [IB96, IB98]: Other application examples of CONDENSATION algorithm. (CS6240) Particle Filtering 25 / 28

Reference Reference I R. G. Brown and P. Y. C. Hwang. Introduction to Random Signals and Applied Kalman Filtering. John Wiley & Sons, 3rd edition, 1997. D. Comaniciu, V. Ramesh, and P. Meer. Real-time tracking of non-rigid objects using mean shift. In IEEE Proc. on Computer Vision and Pattern Recognition, pages 673 678, 2000. U. Grenander, Y. Chow, and D. M. Keenan. HANDS. A Pattern Theoretical Study of Biological Shapes. Springer-Verlag, 1991. (CS6240) Particle Filtering 26 / 28

Reference Reference II M. Isard and A. Blake. Contour tracking by stochastic propagation of conditional density. In Proc. European Conf. on Computer Vision, volume 1, pages 343 356, 1996. M. Isard and A. Blake. CONDENSATION conditional density propagation for visual tracking. Int. J. Computer Vision, 29(1):5 28, 1998. (CS6240) Particle Filtering 27 / 28

Reference Reference III B. D. Lucas and T. Kanade. An iterative image registration technique with an application to stereo vision. In Proceedings of 7th International Joint Conference on Artificial Intelligence, pages 674 679, 1981. http://www.ri.cmu.edu/people/person 136 pubs.html. C. Tomasi and T. Kanade. Detection and tracking of point features. Technical Report CMU-CS-91-132, School of Computer Science, Carnegie Mellon University, 1991. http://citeseer.nj.nec.com/tomasi91detection.html, http://www.ri.cmu.edu/people/person 136 pubs.html. (CS6240) Particle Filtering 28 / 28