Presentation is loading. Please wait.

Presentation is loading. Please wait.

Caught in Motion By: Eric Hunt-Schroeder EE275 – Final Project - Spring 2012.

Similar presentations


Presentation on theme: "Caught in Motion By: Eric Hunt-Schroeder EE275 – Final Project - Spring 2012."— Presentation transcript:

1 Caught in Motion By: Eric Hunt-Schroeder EE275 – Final Project - Spring 2012

2 Kalman Filter

3 Kalman Filter Equations Summary

4 U n – Control Vector, magnitude of any control system’s or user’s control on situation Z n – Measurement Vector, real-world measurement received X n – newest estimate of current true state X n – newest estimate of current true state P n – newest estimate of the average error A – State Transition Matrix B – Control Matrix H – Observation Matrix Q – Estimated process error covariance R – Estimated Measurement error covariance

5 Example Lets suppose we fire a tennis ball at a 45˚ angle with a velocity of 100 m/s. We take measurements from a camera inside the tennis ball. This camera acts as our sensor taking measurements of position at the same time step (∆t). The camera adds error to our position measurements. Velocity in the x and y directions are known exact throughout the example. We then have error in position but no error in velocity.

6 Expected Results using Newtons Kinematic Equations

7 Kinematic Equations x(t) = x 0 + V 0x t x direction position V x (t) = V 0x velocity in x direction, Assumed Constant y (t) = y 0 + V 0y t - (1/2)gt 2 y direction position V y (t) = V 0y – gt velocity in y direction Where: x 0 is the initial displacement and g is the acceleration due to gravity (i.e. ≈ 9.81m/s 2 ) ∆t represents a time step of 1

8 Converting to a Recurrence Relation, discrete time x n = x n-1 + V xn-1 ∆t x direction position V xn = V xn-1 velocity in x direction y n = y n-1 + V yn-1 ∆t - (1/2)g∆t 2 y direction position V yn = V yn-1 - g∆t velocity in y direction g is the acceleration due to gravity (i.e. ≈ 9.81m/s 2 ) ∆t represents a time step of 1

9 Putting into Matrix form

10 Giving our Kalman Filter some initial information:

11 Simulation Results

12 Introduction – Why do we want to do Motion Tracking? Track and detect objects moving across a given space Location and Identification of an object - detection of a robbery in bank, car crash in intersection Want to know behavior of an animal being tested on in the lab

13 Object Detection - Process We must differentiate between what is the foreground and background image. We assign each pixel of an image a distribution of typical values -> our background image. The background should be constantly updated over subsequent frames.

14 Problems with Outlier-Detection & algorithm Drastic changes to our background – no easy fix Gradual changes to the background on the other hand can be fixed. We let our background be an accumulation of previous backgrounds. This allows for minor changes to take place such as a change from sunlight to dusk. Time for an example!

15 Example – Background VS Foreground Background image: with a pedestrian passing through (outlier) Foreground Image: Pedestrian detected On the left we see our frame with a background image already developed. We also notice an object, in this case a pedestrian, has entered the frame. This pedestrian causes a drastic change in the pixels we expected and we notice that the frame on the right has detected this change, shown vividly in white (foreground image). This process is completed by lumping large connected foreground regions into blobs, allowing one to detect an object.

16 object detected incorrectly Background image: with a pedestrian passing through (outlier) Foreground Image: Pedestrian detected – Unwanted blob shown We notice an unwanted blob is shown in the foreground image. When we evaluate the original image we see that this was a street light and may have been caused by excessive winds producing an outlier to be detected incorrectly. With minor errors in object detection our main goal still remains MOTION TRACKING -> this involves creating a series of object blobs together across successive image frames, this is commonly referred to as blob tracking.

17 Step 2: Object Tracking We are able to track an object with a bounding box by estimating the trajectory of two (x,y) coordinates at opposite corners using the Kalman Filter This is quite similar to the example of tracking a tennis ball except we now keep track of two points

18 Another problem…Occlusion Another difficulty faced with this motion tracking algorithm is that of occlusion. When two objects pass each other we lose track of the object. Future algorithms and research may learn how to better deal with this common problem.

19 Sources/References http://en.wikipedia.org/wiki/K-means_clustering http://greg.czerniak.info/node/5 http://www.cs.berkeley.edu/~flw/tracker/ http://www.cs.ubc.ca/~murphyk/Software/Kalman/kal man.html http://www.cs.ubc.ca/~murphyk/Software/Kalman/kal man.html http://www.mathworks.com/help/toolbox/control/ref /kalman.html http://www.mathworks.com/help/toolbox/control/ref /kalman.html


Download ppt "Caught in Motion By: Eric Hunt-Schroeder EE275 – Final Project - Spring 2012."

Similar presentations


Ads by Google