Tracking CSE 6367 – Computer Vision Vassilis Athitsos University of Texas at Arlington.

Slides:



Advertisements
Similar presentations
ARTIFICIAL PASSENGER.
Advertisements

Hough Transforms CSE 6367 – Computer Vision Vassilis Athitsos University of Texas at Arlington.
Chamfer Distance for Handshape Detection and Recognition CSE 6367 – Computer Vision Vassilis Athitsos University of Texas at Arlington.
CSE 473/573 Computer Vision and Image Processing (CVIP)
Tracking Learning Detection
Introduction To Tracking
Database-Based Hand Pose Estimation CSE 6367 – Computer Vision Vassilis Athitsos University of Texas at Arlington.
Forward-Backward Correlation for Template-Based Tracking Xiao Wang ECE Dept. Clemson University.
Robust Object Tracking via Sparsity-based Collaborative Model
Virtual Dart: An Augmented Reality Game on Mobile Device Supervisor: Professor Michael R. Lyu Prepared by: Lai Chung Sum Siu Ho Tung.
SURF: Speeded-Up Robust Features
Lecture 5 Template matching
Recognition of Traffic Lights in Live Video Streams on Mobile Devices
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 Detection And Analysis Michael Knowles Tuesday 13 th January 2004.
Rodent Behavior Analysis Tom Henderson Vision Based Behavior Analysis Universitaet Karlsruhe (TH) 12 November /9.
Ensemble Tracking Shai Avidan IEEE TRANSACTIONS ON PATTERN ANALYSIS AND MACHINE INTELLIGENCE February 2007.
Computing motion between images
Vehicle Movement Tracking
Object Detection and Tracking Mike Knowles 11 th January 2005
CSSE463: Image Recognition Day 30 Due Friday – Project plan Due Friday – Project plan Evidence that you’ve tried something and what specifically you hope.
1 Integration of Background Modeling and Object Tracking Yu-Ting Chen, Chu-Song Chen, Yi-Ping Hung IEEE ICME, 2006.
Fitting a Model to Data Reading: 15.1,
MULTIPLE MOVING OBJECTS TRACKING FOR VIDEO SURVEILLANCE SYSTEMS.
CS4670: Computer Vision Kavita Bala Lecture 8: Scale invariance.
Hand Signals Recognition from Video Using 3D Motion Capture Archive Tai-Peng Tian Stan Sclaroff Computer Science Department B OSTON U NIVERSITY I. Introduction.
Lecture 6: Feature matching and alignment CS4670: Computer Vision Noah Snavely.
A Vision-Based System that Detects the Act of Smoking a Cigarette Xiaoran Zheng, University of Nevada-Reno, Dept. of Computer Science Dr. Mubarak Shah,
1 Video Surveillance systems for Traffic Monitoring Simeon Indupalli.
EE392J Final Project, March 20, Multiple Camera Object Tracking Helmy Eltoukhy and Khaled Salama.
כמה מהתעשייה? מבנה הקורס השתנה Computer vision.
CS 376b Introduction to Computer Vision 04 / 02 / 2008 Instructor: Michael Eckmann.
Computer vision.
Canyon Adventure Technology David Maung, Tristan Reichardt, Dan Bibyk, Juan Roman Department of Computer Science and Engineering The Ohio State University.
CSSE463: Image Recognition Day 30 This week This week Today: motion vectors and tracking Today: motion vectors and tracking Friday: Project workday. First.
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.
1. Introduction Motion Segmentation The Affine Motion Model Contour Extraction & Shape Estimation Recursive Shape Estimation & Motion Estimation Occlusion.
Introduction to Robo Pro
Detecting Pedestrians Using Patterns of Motion and Appearance Paul Viola Microsoft Research Irfan Ullah Dept. of Info. and Comm. Engr. Myongji University.
Lecture 29: Face Detection Revisited CS4670 / 5670: Computer Vision Noah Snavely.
Human Interaction Development Using the Countess Quanta Robot Brad Pitney Yin Shi.
Recognizing Action at a Distance Alexei A. Efros, Alexander C. Berg, Greg Mori, Jitendra Malik Computer Science Division, UC Berkeley Presented by Pundik.
Vision-based human motion analysis: An overview Computer Vision and Image Understanding(2007)
Lecture 7: Features Part 2 CS4670/5670: Computer Vision Noah Snavely.
Vehicle Segmentation and Tracking From a Low-Angle Off-Axis Camera Neeraj K. Kanhere Committee members Dr. Stanley Birchfield Dr. Robert Schalkoff Dr.
1 Artificial Intelligence: Vision Stages of analysis Low level vision Surfaces and distance Object Matching.
Efficient Visual Object Tracking with Online Nearest Neighbor Classifier Many slides adapt from Steve Gu.
Expectation-Maximization (EM) Case Studies
Chapter 5 Multi-Cue 3D Model- Based Object Tracking Geoffrey Taylor Lindsay Kleeman Intelligent Robotics Research Centre (IRRC) Department of Electrical.
Autonomous Robots Vision © Manfred Huber 2014.
Learning to Detect Faces A Large-Scale Application of Machine Learning (This material is not in the text: for further information see the paper by P.
FACE DETECTION : AMIT BHAMARE. WHAT IS FACE DETECTION ? Face detection is computer based technology which detect the face in digital image. Trivial task.
Lecture 9 Feature Extraction and Motion Estimation Slides by: Michael Black Clark F. Olson Jean Ponce.
CSSE463: Image Recognition Day 29 This week This week Today: Surveillance and finding motion vectors Today: Surveillance and finding motion vectors Tomorrow:
Suspicious Behavior in Outdoor Video Analysis - Challenges & Complexities Air Force Institute of Technology/ROME Air Force Research Lab Unclassified IED.
Project Overview CSE 6367 – Computer Vision Vassilis Athitsos University of Texas at Arlington.
Motion tracking TEAM D, Project 11: Laura Gui - Timisoara Calin Garboni - Timisoara Peter Horvath - Szeged Peter Kovacs - Debrecen.
Interest Points EE/CSE 576 Linda Shapiro.
Contents Team introduction Project Introduction Applicability
Motion and Optical Flow
Lecture 26 Hand Pose Estimation Using a Database of Hand Images
Tracking Objects with Dynamics
Week 9 Emily Hand UNR.
Feature description and matching
Vehicle Segmentation and Tracking in the Presence of Occlusions
CSSE463: Image Recognition Day 30
Fourier Transform of Boundaries
CSSE463: Image Recognition Day 30
Presentation transcript:

Tracking CSE 6367 – Computer Vision Vassilis Athitsos University of Texas at Arlington

What Is Tracking?

We are given: –the state of one or more objects in the previous frame. We want to estimate: –the state of those objects in the current frame.

What Is Tracking? We are given: –the state of one or more objects in the previous frame. We want to estimate: –the state of those objects in the current frame. State can be: –Location. –Velocity. –Shape. –Orientation, scale, 3D orientation, 3D position, …

Why Do We Care About Tracking?

Improves speed. –We do not have to run detection at all locations, all scales, all orientations.

Why Do We Care About Tracking? Improves speed. –We do not have to run detection at all locations, all scales, all orientations. Allows us to establish correspondences across frames. –Provides representations such as “the person moved left”, as opposed to “there is a person at (i1, j1) at frame 1, and there is a person at (i2, j2) at frame 2”. –Needed in order to recognize gestures, actions, activity.

Example Applications Activity recognition/surveillance. –Figure out if people are coming out of a car, or loading a truck. Gesture recognition. –Respond to commands given via gestures. –Recognize sign language. Traffic monitoring. –Figure out if any car is approaching a traffic light. –Figure out if a street/highway is congested. In all these cases, we must track objects across multiple frames.

Related Problem: Motion Estimation Different versions: –For every pixel in frame t, what is the corresponding pixel in frame t+1? –For every object in frame t, what is the corresponding region in frame t+1? –How did a specific pixel, region, or object, move? If we know the answers to the above questions, tracking is easy. Tracking is inextricably connected with motion estimation.

Estimating Motion of a Block What is a block? –A rectangular region in the image. –In other words, an image window. Given a block at frame t, how can we figure out where the block moved to at frame t+1?

Estimating Motion of a Block What is a block? –A rectangular region in the image. –In other words, an image window. Given a block at frame t, how can we figure out where the block moved to at frame t+1? Simplest method: normalized correlation.

Tracking Main Loop 1. read current frame. 2. find best match of object in current frame. 3. (optional) update object description. 4. advance frame counter. 5 goto 1. What is missing to make this framework fully automatic?

Initialization 1. read current frame. 2. find best match of object in current frame. 3. (optional) update object description. 4. advance frame counter. 5 goto 1. What is missing to make this framework fully automatic? Detection/initialization: –find the object, obtain an initial object description.

Initialization 1. read current frame. 2. find best match of object in current frame. 3. (optional) update object description. 4. advance frame counter. 5 goto 1. Tracking methods ignore the initialization problem. Any detection method can be used to address that problem.

Source of Efficiency 1. read current frame. 2. find best match of object in current frame. 3. (optional) update object description. 4. advance frame counter. 5 goto 1. Why exactly is tracking more efficient than detection? In what lines is that used?

Source of Efficiency 1. read current frame. 2. find best match of object in current frame. 3. (optional) update object description. 4. advance frame counter. 5 goto 1. Why exactly is tracking more efficient than detection? In what lines is that used? –Line 2. Finding best match is faster because: We can use simpler detection methods. –We know very precisely what the object looks like. We search few locations, few scales, few orientations.

Updating Object Description 1. read current frame. 2. find best match of object in current frame. 3. (optional) update object description. 4. advance frame counter. 5 goto 1. How can we change our implementation to update the object description?

Updating Object Description 1. read current frame. 2. find best match of object in current frame. 3. (optional) update object description. 4. advance frame counter. 5 goto 1. How can we change our implementation to update the object description? –Update the block variable, based on the match found at the current frame.

Drifting 1. read current frame. 2. find best match of object in current frame. 3. (optional) update object description. 4. advance frame counter. 5 goto 1. The estimate can be off by a pixel or so at each frame. –Sometimes larger errors occur. If we update the appearance, errors can accumulate.

Changing Appearance Sometimes the appearance of an object changes from frame to frame. –Example: left foot and right foot in walkstraight sequence. If we do not update the object description, at some point the description is not good enough. Avoiding drift while updating the appearance are conflicting goals.

Occlusion The object we track can temporarily be occluded (fully or partially) by other objects. If appearance is updated at each frame, when the object is occluded it is unlikely to be found again.

Improving Tracking Stability Check every match using a detector. –If we track a face, then the best match, in addition to matching the correlation score, should also have a good detection score using a general face detector. –If the face is occluded, the tracker can figure that out, because no face is detected. –When the face reappears, the detector will find it again.

Improving Tracking Stability Remembering appearance history. –An object may have a small number of possible appearances. The appearance of the head depends on the viewing angle. –If we remember each appearance, we minimize drifting. When the current appearance is similar to a stored appearance, we do not need to make any updates.

Improving Tracking Stability Multiple hypothesis tracking. –Real-world systems almost always maintain multiple hypotheses. –This way, when the right answer is not clear (e.g., because of occlusions), the system does not have to commit to a single answer.