What is Motion? As Visual Input: Change in the spatial distribution of light on the sensors.

Similar documents
Announcements. Tracking. Comptuer Vision I. The Motion Field. = ω. Pure Translation. Motion Field Equation. Rigid Motion: General Case

Image Alignment and Mosaicing Feature Tracking and the Kalman Filter

Computer Vision Motion

Kalman Filter Computer Vision (Kris Kitani) Carnegie Mellon University

Linear Dynamical Systems

Convolution and Linear Systems

Video and Motion Analysis Computer Vision Carnegie Mellon University (Kris Kitani)

1 Kalman Filter Introduction

Computer Vision I. Announcements

Visual Object Recognition

Lecture 8: Interest Point Detection. Saad J Bedros

Hidden Markov Models (recap BNs)

Optical Flow, Motion Segmentation, Feature Tracking

Lecture 8: Interest Point Detection. Saad J Bedros

EKF and SLAM. McGill COMP 765 Sept 18 th, 2017

Motion Estimation (I)

Linear-Quadratic-Gaussian (LQG) Controllers and Kalman Filters

Convolutional Neural Networks

Bayes Filter Reminder. Kalman Filter Localization. Properties of Gaussians. Gaussians. Prediction. Correction. σ 2. Univariate. 1 2πσ e.

ECO 513 Fall 2008 C.Sims KALMAN FILTER. s t = As t 1 + ε t Measurement equation : y t = Hs t + ν t. u t = r t. u 0 0 t 1 + y t = [ H I ] u t.

Visual features: From Fourier to Gabor

Controlled Diffusions and Hamilton-Jacobi Bellman Equations

Time Series Prediction by Kalman Smoother with Cross-Validated Noise Density

Motion Estimation (I) Ce Liu Microsoft Research New England

TRACKING and DETECTION in COMPUTER VISION Filtering and edge detection

Autonomous Mobile Robot Design

Localization. Howie Choset Adapted from slides by Humphrey Hu, Trevor Decker, and Brad Neuman

Image Alignment and Mosaicing


6.869 Advances in Computer Vision. Prof. Bill Freeman March 1, 2005

Human Pose Tracking I: Basics. David Fleet University of Toronto

Robot Localization and Kalman Filters

Lecture 2: From Linear Regression to Kalman Filter and Beyond

Comparision of Probabilistic Navigation methods for a Swimming Robot

Convolutional networks. Sebastian Seung

STA 414/2104: Lecture 8

Space Surveillance with Star Trackers. Part II: Orbit Estimation

Time and Spatial Series and Transforms

Continuous Fourier transform of a Gaussian Function

Where is the bark, the tree and the forest, mathematical foundations of multi-scale analysis

L11. EKF SLAM: PART I. NA568 Mobile Robotics: Methods & Algorithms

Lecture 2: From Linear Regression to Kalman Filter and Beyond

2D Image Processing (Extended) Kalman and particle filter

encoding and estimation bottleneck and limits to visual fidelity

Three-way connections and dynamic routing

Machine Learning for OR & FE

System identification and sensor fusion in dynamical systems. Thomas Schön Division of Systems and Control, Uppsala University, Sweden.

Tutorial on Blind Source Separation and Independent Component Analysis

Tracking for VR and AR

CSC487/2503: Foundations of Computer Vision. Visual Tracking. David Fleet

Factor Analysis and Kalman Filtering (11/2/04)

Natural Image Statistics

Musimathics The Mathematical Foundations of Music Volume 2. Gareth Loy. Foreword by John Chowning

Error Analysis in Experimental Physical Science Mini-Version

Spacetime and 4 vectors

Robotics 2 Target Tracking. Giorgio Grisetti, Cyrill Stachniss, Kai Arras, Wolfram Burgard

Feature extraction: Corners and blobs

Reading. 3. Image processing. Pixel movement. Image processing Y R I G Q

Using the Kalman Filter for SLAM AIMS 2015

Space Surveillance using Star Trackers. Part I: Simulations

Neural networks and optimization

Vlad Estivill-Castro (2016) Robots for People --- A project for intelligent integrated systems

Mobile Robot Localization

Introduction to Signal Processing

Robotics 2 Target Tracking. Kai Arras, Cyrill Stachniss, Maren Bennewitz, Wolfram Burgard

Partially Observable Markov Decision Processes (POMDPs)

The Kalman Filter (part 1) Definition. Rudolf Emil Kalman. Why do we need a filter? Definition. HCI/ComS 575X: Computational Perception.

Probabilistic Graphical Models

L7: Linear prediction of speech

Artificial Intelligence

Particle Filters; Simultaneous Localization and Mapping (Intelligent Autonomous Robotics) Subramanian Ramamoorthy School of Informatics

Lecture 6: Bayesian Inference in SDE Models

2D Image Processing. Bayes filter implementation: Kalman filter

Achieving scale covariance

Feature detectors and descriptors. Fei-Fei Li

Gaussian Processes for Audio Feature Extraction

Computer Vision & Digital Image Processing

Chapter 2 Motion in One Dimension. Slide 2-1

Hidden Markov Models

Assessment of the orbits from the 1st IGS reprocessing campaign

If x = 180 then the arc subtended by x is a semicircle which we know has length πr. Now we argue that:

STA 414/2104: Lecture 8

Probabilistic Graphical Models

UCSD SIO221c: (Gille) 1

From Bayes to Extended Kalman Filter

BME 50500: Image and Signal Processing in Biomedicine. Lecture 5: Correlation and Power-Spectrum CCNY

Miscellaneous. Regarding reading materials. Again, ask questions (if you have) and ask them earlier

Data Assimilation: Finding the Initial Conditions in Large Dynamical Systems. Eric Kostelich Data Mining Seminar, Feb. 6, 2006

CODING SAMPLE DIFFERENCES ATTEMPT 1: NAIVE DIFFERENTIAL CODING

Unstable Oscillations!

Gaussian Processes for Sequential Prediction

SENSOR-ASSISTED ADAPTIVE MOTOR CONTROL UNDER CONTINUOUSLY VARYING CONTEXT

Lecture 4 - Spectral Estimation

Kalman filtering and friends: Inference in time series models. Herke van Hoof slides mostly by Michael Rubinstein

Reverberation Impulse Response Analysis

Gaussians. Pieter Abbeel UC Berkeley EECS. Many slides adapted from Thrun, Burgard and Fox, Probabilistic Robotics

Lecture 6: Edge Detection. CAP 5415: Computer Vision Fall 2008

Detecting and Manipulating Musical Rhythms

COMP344 Digital Image Processing Fall 2007 Final Examination

Sensor Tasking and Control

Transcription:

What is Motion? As Visual Input: Change in the spatial distribution of light on the sensors. Minimally, di(x,y,t)/dt 0 As Perception: Inference about causes of intensity change, e.g. I(x,y,t) v OBJ (x,y,z,t)

Motion Field: Movement of Projected points

Essential Matrix O' x x'= R t x 000 1 ' O x OO' = 0 x' r t Rx ( ) = 0 x' E x ( ) = 0 x'e x = 0 E = 0 t z t y t z 0 t x R t y t x 0

Differential Camera Motion For a small rotation around an axis ω, rotation of the camera frame can be r expressed: x '= Rx r + r t And motion of a point: Thus r x '= x r + (ω x r )dt + v r dt = (I + dt[ ω ]) x r + v r dt p'= p + dp dt dt Epipolar:

Basic Idea 1) Estimate point motions 2) use point motions to estimate camera/object motion Problem: Motion of projected points not directly measurable. -Movement of projected points creates displacements of image patches -- Infer point motion from image patch motion Matching across frames Differential approach Fourier/filtering methods

Assumption is frequently violatedneed invariant methods

h(x) = udt

Derivation I(x, y,τ) = I(x(τ + t),y(τ + t),τ + t) I(x, y,τ) I(x(τ),y(τ),τ) + I x I x x t + I y x t + I t = 0 I x v x + I y v y + I t = 0 I I t T v x v y = 0 1 x t + I y x t + I t I v T x = I v t y r A T v = I t r v = A(AA T ) 1 I t r v = I I t I 2

Brightness constraint revealed

Image sequence from Egomotion

OpticFlow: (Gibson,1950) Assigns local image velocities v(x,y,t) Time ~100msec Space ~1-10deg Local Translations

Brightness constraint

Photometric Motion

Measurement Problems Brightness constraint violations Ambiguity Aliasing Non-translational motions

Aliasing

Non-translational motion

Problem: Images contain many edges-- Aperture problem Normal flow: Motion component in the direction of the edge

Find Least squares solution for multiple patches.

Aperture Problem (Motion/Form Ambiguity) Result: Early visual measurements are ambiguous w.r.t. motion.

Aperture Problem (Motion/Form Ambiguity) However, both the motion and the form of the pattern are implicitly encoded across the population of V1 neurons. Actual motion

Fourier Methods More fundamental than the Taylor approximation is the brightness constraint

Localizing by a windowing function: Which is the equation of a plane, weighted by the spatial texture Localizing the velocity to a patch using a windowing function: Has the effect of blurring the plane with the transform of the window: A Fourier Pancake.

X-T Slice of Translating Camera y t x x

2-D Fourier Analysis Image translations: are Oriented in Space-Time have Power Spectra along a line in Fourier space

3-D Motion Information (x-y-t)

Information in Translating Images The power spectral density of a translating image lies on a plane in (ω x, ω y, ω t ) space. The orientation of this plane is uniquely determined by the velocity of the translation. The amplitudes on the plane are determined by the (spatial) image spectrum.

Solving the ambiguities Pool neurons tuned to frequencies in a common plane ω t ω x ω y Velocity plane V1 receptive field

Generalizations

The three main issues in tracking

Tracking Very general model: We assume there are moving objects, which have an underlying state X There are measurements Y, some of which are functions of this state There is a clock at each tick, the state changes at each tick, we get a new observation Examples object is ball, state is 3D position+velocity, measurements are stereo pairs object is person, state is body configuration, measurements are frames, clock is in camera (30 fps)

Three main steps

Simplifying Assumptions

Assumptions allow recursive solutions Decompose estimation problem part that depends on new observation part that can be computed from previous history E.g., running average: a t = 1 t a t = t 1 t y i = 1 i=1:t t a t 1 + 1 t y t y i + 1 i=1:(t 1) t y t = t 1 t 1 t 1 Now in form that allows recursive application y i i=1:(t 1) + 1 t y t

Tracking as induction Assume data association is done a dangerous assumption--assumes good segmentation Do correction for the 0 th frame Assume we have corrected estimate for i th frame show we can do prediction for i+1, correction for i+1

Base case

Given Induction step

Induction step

Linear dynamic models Use notation ~ to mean has the pdf of, N(a, b) is a normal distribution with mean a and covariance b. Then a linear dynamic model has the form State Dynamics x i = N( D i 1 x i 1 ;Σ ) di y i = N( M i x i ;Σ ) mi This is much, much more general than it looks, and extremely powerful Measurement Dynamics

Examples Drifting points we assume that the new position of the point is the old one, plus noise. For the measurement model, we may not need to observe the whole state of the object e.g. a point moving in 3D, at the 3k th tick we see x, 3k+1 th tick we see y, 3k+2 th tick we see z in this case, we can still make decent estimates of all three coordinates at each tick. This property, which does not apply to every model, is called Observability

Examples Points moving with constant velocity Periodic motion Etc. Points moving with constant acceleration

Points moving with constant We have velocity u i = u i 1 + Δtv i 1 + ε i v i = v i 1 + ς i (the Greek letters denote noise terms) Stack (u, v) into a single state vector which is the form we had above u v i = 1 Δt 0 1 u v i 1 + noise

Points moving with constant acceleration We have u i = u i 1 + Δtv i 1 + ε i v i = v i 1 + Δta i 1 +ς i a i = a i 1 + ξ i (the Greek letters denote noise terms) Stack (u, v) into a single state vector which is the form we had above u v a i = 1 Δt 0 u 0 1 Δt v 0 0 1 a i 1 + noise

The Kalman Filter Key ideas: Linear models interact uniquely well with Gaussian noise - make the prior Gaussian, everything else Gaussian and the calculations are easy Gaussians are really easy to represent --- once you know the mean and covariance, you re done

The Kalman Filter in 1D Dynamic Model Notation Predicted mean Corrected mean

Correction for 1D Kalman filter Pattern match to identities given in book basically, guess the integrals, get: Notice: if measurement noise is small, we rely mainly on the measurement, if it s large, mainly on the prediction

In higher dimensions, derivation follows the same lines, but isn t as easy. Expressions here.

Smoothing Idea We don t have the best estimate of state - what about the future? Run two filters, one moving forward, the other backward in time. Now combine state estimates The crucial point here is that we can obtain a smoothed estimate by viewing the backward filter s prediction as yet another measurement for the forward filter so we ve already done the equations

Data Association Nearest neighbours choose the measurement with highest probability given predicted state popular, but can lead to catastrophe Probabilistic Data Association combine measurements, weighting by probability given predicted state gate using predicted state