TP15 - Tracking Computer Vision, FCUP, 2013 Miguel Coimbra Slides by Prof. Kristen Grauman.

Slides:



Advertisements
Similar presentations
Applications of one-class classification
Advertisements

Bayesian Belief Propagation
Mobile Robot Localization and Mapping using the Kalman Filter
State Estimation and Kalman Filtering CS B659 Spring 2013 Kris Hauser.
DDDAS: Stochastic Multicue Tracking of Objects with Many Degrees of Freedom PIs: D. Metaxas, A. Elgammal and V. Pavlovic Dept of CS, Rutgers University.
Change Detection C. Stauffer and W.E.L. Grimson, “Learning patterns of activity using real time tracking,” IEEE Trans. On PAMI, 22(8): , Aug 2000.
1 Approximated tracking of multiple non-rigid objects using adaptive quantization and resampling techniques. J. M. Sotoca 1, F.J. Ferri 1, J. Gutierrez.
Modeling Uncertainty over time Time series of snapshot of the world “state” we are interested represented as a set of random variables (RVs) – Observable.
TP14 - Local features: detection and description Computer Vision, FCUP, 2014 Miguel Coimbra Slides by Prof. Kristen Grauman.
Introduction To Tracking
Reducing Drift in Parametric Motion Tracking
(Includes references to Brian Clipp
Lab 2 Lab 3 Homework Labs 4-6 Final Project Late No Videos Write up
Object Inter-Camera Tracking with non- overlapping views: A new dynamic approach Trevor Montcalm Bubaker Boufama.
Contours and Optical Flow: Cues for Capturing Human Motion in Videos Thomas Brox Computer Vision and Pattern Recognition Group University of Bonn Research.
Computer Vision Optical Flow
Formation et Analyse d’Images Session 8
Tracking Objects with Dynamics Computer Vision CS 543 / ECE 549 University of Illinois Derek Hoiem 04/21/15 some slides from Amin Sadeghi, Lana Lazebnik,
Motion Tracking. Image Processing and Computer Vision: 82 Introduction Finding how objects have moved in an image sequence Movement in space Movement.
Adam Rachmielowski 615 Project: Real-time monocular vision-based SLAM.
Stanford CS223B Computer Vision, Winter 2007 Lecture 12 Tracking Motion Professors Sebastian Thrun and Jana Košecká CAs: Vaibhav Vaish and David Stavens.
A Bayesian algorithm for tracking multiple moving objects in outdoor surveillance video Department of Electrical Engineering and Computer Science The University.
Adaptive Rao-Blackwellized Particle Filter and It’s Evaluation for Tracking in Surveillance Xinyu Xu and Baoxin Li, Senior Member, IEEE.
Tracking using the Kalman Filter. Point Tracking Estimate the location of a given point along a sequence of images. (x 0,y 0 ) (x n,y n )
1 Integration of Background Modeling and Object Tracking Yu-Ting Chen, Chu-Song Chen, Yi-Ping Hung IEEE ICME, 2006.
Stanford CS223B Computer Vision, Winter 2007 Lecture 12 Tracking Motion Professors Sebastian Thrun and Jana Košecká CAs: Vaibhav Vaish and David Stavens.
MULTIPLE MOVING OBJECTS TRACKING FOR VIDEO SURVEILLANCE SYSTEMS.
Presented by Pat Chan Pik Wah 28/04/2005 Qualifying Examination
COMP 290 Computer Vision - Spring Motion II - Estimation of Motion field / 3-D construction from motion Yongjik Kim.
© 2003 by Davi GeigerComputer Vision November 2003 L1.1 Tracking We are given a contour   with coordinates   ={x 1, x 2, …, x N } at the initial frame.
Tracking with Linear Dynamic Models. Introduction Tracking is the problem of generating an inference about the motion of an object given a sequence of.
Optical Flow Digital Photography CSE558, Spring 2003 Richard Szeliski (notes cribbed from P. Anandan)
Computer Vision Linear Tracking Jan-Michael Frahm COMP 256 Some slides from Welch & Bishop.
Overview and Mathematics Bjoern Griesbach
Motion and optical flow Thursday, Nov 20 Many slides adapted from S. Seitz, R. Szeliski, M. Pollefeys, S. Lazebnik.
EE392J Final Project, March 20, Multiple Camera Object Tracking Helmy Eltoukhy and Khaled Salama.
Computer vision: models, learning and inference Chapter 6 Learning and Inference in Vision.
Tracking Pedestrians Using Local Spatio- Temporal Motion Patterns in Extremely Crowded Scenes Louis Kratz and Ko Nishino IEEE TRANSACTIONS ON PATTERN ANALYSIS.
Perceptual and Sensory Augmented Computing Computer Vision II, Summer’14 Computer Vision II – Lecture 8 Tracking with Linear Dynamic Models
BraMBLe: The Bayesian Multiple-BLob Tracker By Michael Isard and John MacCormick Presented by Kristin Branson CSE 252C, Fall 2003.
Real-time object tracking using Kalman filter Siddharth Verma P.hD. Candidate Mechanical Engineering.
Human-Computer Interaction Human-Computer Interaction Tracking Hanyang University Jong-Il Park.
Babol university of technology Presentation: Alireza Asvadi
Computer vision: models, learning and inference Chapter 19 Temporal models.
3D SLAM for Omni-directional Camera
Computer vision: models, learning and inference Chapter 19 Temporal models.
Computer Vision - A Modern Approach Set: Tracking Slides by D.A. Forsyth The three main issues in tracking.
The Measurement of Visual Motion P. Anandan Microsoft Research.
Probabilistic Robotics Bayes Filter Implementations Gaussian filters.
Probabilistic Robotics Bayes Filter Implementations.
An Information Fusion Approach for Multiview Feature Tracking Esra Ataer-Cansizoglu and Margrit Betke ) Image and.
Mobile Robot Localization (ch. 7)
Processing Sequential Sensor Data The “John Krumm perspective” Thomas Plötz November 29 th, 2011.
Michael Isard and Andrew Blake, IJCV 1998 Presented by Wen Li Department of Computer Science & Engineering Texas A&M University.
Local features and image matching October 1 st 2015 Devi Parikh Virginia Tech Disclaimer: Many slides have been borrowed from Kristen Grauman, who may.
Local features: detection and description
Object Tracking - Slide 1 Object Tracking Computer Vision Course Presentation by Wei-Chao Chen April 05, 2000.
Kalman Filtering And Smoothing
Tracking with dynamics
Lecture 9 Feature Extraction and Motion Estimation Slides by: Michael Black Clark F. Olson Jean Ponce.
Kalman Filter and Data Streaming Presented By :- Ankur Jain Department of Computer Science 7/21/03.
11/25/03 3D Model Acquisition by Tracking 2D Wireframes Presenter: Jing Han Shiau M. Brown, T. Drummond and R. Cipolla Department of Engineering University.
Motion and optical flow
Computer vision: models, learning and inference
Tracking We are given a contour G1 with coordinates G1={x1 , x2 , … , xN} at the initial frame t=1, were the image is It=1 . We are interested in tracking.
TP12 - Local features: detection and description
Tracking Objects with Dynamics
CSSE463: Image Recognition Day 30
Tracking Many slides adapted from Kristen Grauman, Deva Ramanan.
Nome Sobrenome. Time time time time time time..
Presentation transcript:

TP15 - Tracking Computer Vision, FCUP, 2013 Miguel Coimbra Slides by Prof. Kristen Grauman

Outline Today: Tracking –Tracking as inference –Linear models of dynamics –Kalman filters –General challenges in tracking

Tracking: some applications Body pose tracking, activity recognition Surveillance Video-based interfaces Medical apps Censusing a bat population Kristen Grauman

Why is tracking challenging?

Optical flow for tracking? If we have more than just a pair of frames, we could compute flow from one to the next: But flow only reliable for small motions, and we may have occlusions, textureless regions that yield bad estimates anyway… … …

Motion estimation techniques Direct methods Directly recover image motion at each pixel from spatio-temporal image brightness variations Dense motion fields, but sensitive to appearance variations Suitable for video and when image motion is small Feature-based methods Extract visual features (corners, textured areas) and track them over multiple frames Sparse motion fields, but more robust tracking Suitable when image motion is large (10s of pixels)

Feature-based matching for motion Interesting point Best matching neighborhood Time tTime t+1 Search window Search window is centered at the point where we last saw the feature, in image I1. Best match = position where we have the highest normalized cross-correlation value. Kristen Grauman

Example: A Camera Mouse Video interface: use feature tracking as mouse replacement User clicks on the feature to be tracked Take the 15x15 pixel square of the feature In the next image do a search to find the 15x15 region with the highest correlation Move the mouse pointer accordingly Repeat in the background every 1/30th of a second James Gips and Margrit Betke Kristen Grauman

Example: A Camera Mouse Specialized software for communication, games James Gips and Margrit Betke Kristen Grauman

A Camera Mouse Specialized software for communication, games James Gips and Margrit Betke Kristen Grauman

Feature-based matching for motion For a discrete matching search, what are the tradeoffs of the chosen search window size? Which patches to track? Select interest points – e.g. corners Where should the search window be placed? Near match at previous frame More generally, taking into account the expected dynamics of the object Kristen Grauman

Detection vs. tracking … t=1t=2t=20 t=21 Kristen Grauman

Detection vs. tracking … Detection: We detect the object independently in each frame and can record its position over time, e.g., based on blob’s centroid or detection window coordinates Kristen Grauman

Detection vs. tracking … Tracking with dynamics: We use image measurements to estimate position of object, but also incorporate position predicted by dynamics, i.e., our expectation of object’s motion pattern. Kristen Grauman

Detection vs. tracking … Tracking with dynamics: We use image measurements to estimate position of object, but also incorporate position predicted by dynamics, i.e., our expectation of object’s motion pattern. Kristen Grauman

Tracking with dynamics Use model of expected motion to predict where objects will occur in next frame, even before seeing the image. Intent: –Do less work looking for the object, restrict the search. –Get improved estimates since measurement noise is tempered by smoothness, dynamics priors. Assumption: continuous motion patterns: –Camera is not moving instantly to new viewpoint –Objects do not disappear and reappear in different places in the scene –Gradual change in pose between camera and scene Kristen Grauman

Tracking as inference The hidden state consists of the true parameters we care about, denoted X. The measurement is our noisy observation that results from the underlying state, denoted Y. At each time step, state changes (from X t-1 to X t ) and we get a new observation Y t. Kristen Grauman

State vs. observation Hidden state : parameters of interest Measurement : what we get to directly observe Kristen Grauman

Tracking as inference The hidden state consists of the true parameters we care about, denoted X. The measurement is our noisy observation that results from the underlying state, denoted Y. At each time step, state changes (from X t-1 to X t ) and we get a new observation Y t. Our goal: recover most likely state X t given –All observations seen so far. –Knowledge about dynamics of state transitions. Kristen Grauman

Time t Time t+1 Tracking as inference: intuition Belief Measurement Corrected prediction Kristen Grauman

old belief measurement Belief: prediction Corrected prediction Belief: prediction measurement Tracking as inference: intuition Time t Time t+1 Kristen Grauman

Independence assumptions Only immediate past state influences current state Measurement at time t depends on current state dynamics modelobservation model Kristen Grauman

Prediction: –Given the measurements we have seen up to this point, what state should we predict? Correction: –Now given the current measurement, what state should we predict? Tracking as inference Kristen Grauman

Questions How to represent the known dynamics that govern the changes in the states? How to represent relationship between state and measurements, plus our uncertainty in the measurements? How to compute each cycle of updates? Representation: We’ll consider the class of linear dynamic models, with associated Gaussian pdfs. Updates: via the Kalman filter. Kristen Grauman

Notation reminder Random variable with Gaussian probability distribution that has the mean vector μ and covariance matrix Σ. x and μ are d-dimensional, Σ is d x d. d=2d=1 If x is 1-d, we just have one Σ parameter -  the variance: σ 2 Kristen Grauman

Linear dynamic model Describe the a priori knowledge about –System dynamics model: represents evolution of state over time. –Measurement model: at every time step we get a noisy measurement of the state. n x n n x 1 m x nn x 1m x 1 Kristen Grauman

Example: randomly drifting points Consider a stationary object, with state as position Position is constant, only motion due to random noise term. State evolution is described by identity matrix D= I

Example: Constant velocity (1D points) time measurements states 1 d position Kristen Grauman

State vector: position p and velocity v Measurement is position only Example: Constant velocity (1D points) Kristen Grauman

Questions How to represent the known dynamics that govern the changes in the states? How to represent relationship between state and measurements, plus our uncertainty in the measurements? How to compute each cycle of updates? Representation: We’ll consider the class of linear dynamic models, with associated Gaussian pdfs. Updates: via the Kalman filter. Kristen Grauman

The Kalman filter Method for tracking linear dynamical models in Gaussian noise The predicted/corrected state distributions are Gaussian –Only need to maintain the mean and covariance –The calculations are easy Kristen Grauman

Kalman filter Know prediction of state, and next measurement  Update distribution over current state. Know corrected state from previous time step, and all measurements up to the current one  Predict distribution over next state. Time advances: t++ Time update (“Predict”) Time update (“Predict”) Measurement update (“Correct”) Measurement update (“Correct”) Receive measurement Mean and std. dev. of predicted state: Mean and std. dev. of corrected state: Kristen Grauman

1D Kalman filter: Prediction Have linear dynamic model defining predicted state evolution, with noise Want to estimate predicted distribution for next state Update the mean: Update the variance: Lana Lazebnik

1D Kalman filter: Correction Have linear model defining the mapping of state to measurements: Want to estimate corrected distribution given latest meas.: Update the mean: Update the variance: Lana Lazebnik

Prediction vs. correction What if there is no prediction uncertainty What if there is no measurement uncertainty The measurement is ignored! The prediction is ignored! Lana Lazebnik

Kalman filter processing time o state x measurement * predicted mean estimate + corrected mean estimate bars: variance estimates before and after measurements Constant velocity model position Time t Time t+1 Kristen Grauman

Kalman filter processing time o state x measurement * predicted mean estimate + corrected mean estimate bars: variance estimates before and after measurements Constant velocity model position Time t Time t+1 Kristen Grauman

Kalman filter processing time o state x measurement * predicted mean estimate + corrected mean estimate bars: variance estimates before and after measurements Constant velocity model position Time t Time t+1 Kristen Grauman

Kalman filter processing time o state x measurement * predicted mean estimate + corrected mean estimate bars: variance estimates before and after measurements Constant velocity model position Time t Time t+1 Kristen Grauman

Kristen Grauman

A bat census Kristen Grauman

Video synopsis Kristen Grauman

Tracking: issues Initialization –Often done manually –Background subtraction, detection can also be used Data association, multiple tracked objects –Occlusions, clutter

Tracking: issues Initialization –Often done manually –Background subtraction, detection can also be used Data association, multiple tracked objects –Occlusions, clutter –Which measurements go with which tracks?

Tracking: issues Initialization –Often done manually –Background subtraction, detection can also be used Data association, multiple tracked objects –Occlusions, clutter Deformable and articulated objects

Recall: tracking via deformable contours 1.Use final contour/model extracted at frame t as an initial solution for frame t+1 2.Evolve initial contour to fit exact object boundary at frame t+1 3.Repeat, initializing with most recent frame. Visual Dynamics GroupVisual Dynamics Group, Dept. Engineering Science, University of Oxford.

Tracking: issues Initialization –Often done manually –Background subtraction, detection can also be used Data association, multiple tracked objects –Occlusions, clutter Deformable and articulated objects Constructing accurate models of dynamics –E.g., Fitting parameters for a linear dynamics model Drift –Accumulation of errors over time

Drift D. Ramanan, D. Forsyth, and A. Zisserman. Tracking People by Learning their Appearance. PAMI 2007.Tracking People by Learning their Appearance

Summary Tracking as inference –Goal: estimate posterior of object position given measurement Linear models of dynamics –Represent state evolution and measurement models Kalman filters –Recursive prediction/correction updates to refine measurement General tracking challenges