Motion Estimation (I) Ce Liu Microsoft Research New England

Similar documents
Motion Estimation (I)

Introduction to motion correspondence

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

Lucas-Kanade Optical Flow. Computer Vision Carnegie Mellon University (Kris Kitani)

Motion estimation. Digital Visual Effects Yung-Yu Chuang. with slides by Michael Black and P. Anandan

Iterative Image Registration: Lucas & Kanade Revisited. Kentaro Toyama Vision Technology Group Microsoft Research

Methods in Computer Vision: Introduction to Optical Flow

Optic Flow Computation with High Accuracy

Global parametric image alignment via high-order approximation

CS4495/6495 Introduction to Computer Vision. 6B-L1 Dense flow: Brightness constraint

Elaborazione delle Immagini Informazione multimediale - Immagini. Raffaella Lanzarotti

TRACKING and DETECTION in COMPUTER VISION

Dense Optical Flow Estimation from the Monogenic Curvature Tensor

Edges and Scale. Image Features. Detecting edges. Origin of Edges. Solution: smooth first. Effects of noise

Generalized Newton-Type Method for Energy Formulations in Image Processing

Multigrid Acceleration of the Horn-Schunck Algorithm for the Optical Flow Problem

Lecture 8: Interest Point Detection. Saad J Bedros

Computer Vision I. Announcements

Feature extraction: Corners and blobs

Nonlinear Diffusion. Journal Club Presentation. Xiaowei Zhou

Templates, Image Pyramids, and Filter Banks

Lecture 8: Interest Point Detection. Saad J Bedros

INTEREST POINTS AT DIFFERENT SCALES

Image Alignment and Mosaicing

Optical Flow, Motion Segmentation, Feature Tracking

Image Analysis. Feature extraction: corners and blobs

An Adaptive Confidence Measure for Optical Flows Based on Linear Subspace Projections

Optical flow. Subhransu Maji. CMPSCI 670: Computer Vision. October 20, 2016

Image Alignment and Mosaicing Feature Tracking and the Kalman Filter

Non-linear least squares

Efficient & Robust LK for Mobile Vision

Notes for CS542G (Iterative Solvers for Linear Systems)

Efficient Nonlocal Regularization for Optical Flow

Erkut Erdem. Hacettepe University February 24 th, Linear Diffusion 1. 2 Appendix - The Calculus of Variations 5.

Iterative Methods for Solving A x = b

Efficient Inference in Fully Connected CRFs with Gaussian Edge Potentials

Numerical Optimization Algorithms

Photometric Stereo: Three recent contributions. Dipartimento di Matematica, La Sapienza

Revisiting Horn and Schunck: Interpretation as Gauß-Newton Optimisation

MTH4101 CALCULUS II REVISION NOTES. 1. COMPLEX NUMBERS (Thomas Appendix 7 + lecture notes) ax 2 + bx + c = 0. x = b ± b 2 4ac 2a. i = 1.

CS 3710: Visual Recognition Describing Images with Features. Adriana Kovashka Department of Computer Science January 8, 2015

CPSC 540: Machine Learning

Random walks for deformable image registration Dana Cobzas

Chapter Two: Numerical Methods for Elliptic PDEs. 1 Finite Difference Methods for Elliptic PDEs

Asaf Bar Zvi Adi Hayat. Semantic Segmentation

2 Nonlinear least squares algorithms

Sec. 1.1: Basics of Vectors

Lecture 9 Approximations of Laplace s Equation, Finite Element Method. Mathématiques appliquées (MATH0504-1) B. Dewals, C.

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

Edge Detection. CS 650: Computer Vision

Pose Tracking II! Gordon Wetzstein! Stanford University! EE 267 Virtual Reality! Lecture 12! stanford.edu/class/ee267/!

Newton s Method. Javier Peña Convex Optimization /36-725

2.29 Numerical Fluid Mechanics Spring 2015 Lecture 9

Image restoration: numerical optimisation

Level-Set Person Segmentation and Tracking with Multi-Region Appearance Models and Top-Down Shape Information Appendix

Scene from Lola rennt

AM 205: lecture 19. Last time: Conditions for optimality Today: Newton s method for optimization, survey of optimization methods

Kernel Correlation for Robust Distance Minimization

Kasetsart University Workshop. Multigrid methods: An introduction

Math 409/509 (Spring 2011)

17 Solution of Nonlinear Systems

Image processing and Computer Vision

A Riemannian Framework for Denoising Diffusion Tensor Images

T H E S I S. Computer Engineering May Smoothing of Matrix-Valued Data. Thomas Brox

Super-Resolution. Dr. Yossi Rubner. Many slides from Miki Elad - Technion

NONLINEAR. (Hillier & Lieberman Introduction to Operations Research, 8 th edition)

Visual SLAM Tutorial: Bundle Adjustment

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

University of Houston, Department of Mathematics Numerical Analysis, Fall 2005

Robustifying the Flock of Trackers

5 Handling Constraints

Math 265H: Calculus III Practice Midterm II: Fall 2014

HIGH-ORDER ACCURATE METHODS BASED ON DIFFERENCE POTENTIALS FOR 2D PARABOLIC INTERFACE MODELS

A Third Order Fast Sweeping Method with Linear Computational Complexity for Eikonal Equations

Properties of detectors Edge detectors Harris DoG Properties of descriptors SIFT HOG Shape context

Regularization in Neural Networks

Method 1: Geometric Error Optimization

Basic Aspects of Discretization

Simultaneous Multi-frame MAP Super-Resolution Video Enhancement using Spatio-temporal Priors

Numerical Analysis Comprehensive Exam Questions

Computer Vision Motion

AM 205: lecture 19. Last time: Conditions for optimality, Newton s method for optimization Today: survey of optimization methods

Chapter 6. Finite Element Method. Literature: (tiny selection from an enormous number of publications)

Achieving scale covariance

Scale & Affine Invariant Interest Point Detectors

Uncertainty Models in Quasiconvex Optimization for Geometric Reconstruction

Introduction to Nonlinear Image Processing

Optimization. Benjamin Recht University of California, Berkeley Stephen Wright University of Wisconsin-Madison

The Derivative. Appendix B. B.1 The Derivative of f. Mappings from IR to IR

An Introduction to Numerical Methods for Differential Equations. Janet Peterson

Dynamical Systems & Lyapunov Stability

Newton s Method. Ryan Tibshirani Convex Optimization /36-725

Mobile Robotics 1. A Compact Course on Linear Algebra. Giorgio Grisetti

Iterative Reweighted Least Squares

Neural Network Training

Blobs & Scale Invariance

Overview. Introduction to local features. Harris interest points + SSD, ZNCC, SIFT. Evaluation and comparison of different detectors

HIGH-ORDER ACCURATE METHODS BASED ON DIFFERENCE POTENTIALS FOR 2D PARABOLIC INTERFACE MODELS

Math 4263 Homework Set 1

Simple Examples on Rectangular Domains

Transcription:

Motion Estimation (I) Ce Liu celiu@microsoft.com Microsoft Research New England

We live in a moving world Perceiving, understanding and predicting motion is an important part of our daily lives

Motion estimation: a core problem of Related topics: computer vision Image correspondence, image registration, image matching, image alignment, Applications Video enhancement: stabilization, denoising, super resolution 3D reconstruction: structure from motion (SFM) Video segmentation Tracking/recognition Advanced video editing (label propagation)

Contents (today) Motion perception Motion representation Parametric motion: Lucas-Kanade Dense optical flow: Horn-Schunck Robust estimation Applications (1)

Contents (next time) Discrete optical flow Layer motion analysis Contour motion analysis Obtaining motion ground truth SIFT flow: generalized optical flow Applications (2)

Readings Rick s book: Chapter 8 Ce Liu s PhD thesis (appendix A & B) S. Baker and I. Matthews. Lucas-Kanade 20 years on: a unifying framework. IJCV 2004 Horn-Schunck (wikipedia) A. Bruhn, J. Weickert, C. Schnorr. Lucas/Kanade meets Horn/Schunk: combining local and global optical flow methods. IJCV 2005

Contents Motion perception Motion representation Parametric motion: Lucas-Kanade Dense optical flow: Horn-Schunck Robust estimation Applications (1)

Seeing motion from a static picture? http://www.ritsumei.ac.jp/~akitaoka/index-e.html

More examples

How is this possible? The true mechanism is to be revealed FMRI data suggest that illusion is related to some component of eye movements We don t expect computer vision to see motion from these stimuli, yet

What do you see?

In fact,

We still don t touch these areas

Motion analysis: human vs. computer Computers can only analyze motion for opaque and solid objects Challenges: Shapeless or transparent scenes Key: motion representation

Contents Motion perception Motion representation Parametric motion: Lucas-Kanade Dense optical flow: Horn-Schunck Robust estimation Applications (1)

Motion forms Mapping: x 1, y 1 (x 2, y 2 ) Global parametric motion: x 2, y 2 Motion types Translation: x 2 y 2 Similarity: x 2 y 2 Affine: x 2 y 2 = x 1 + a y 1 + b = s Homography: x 2 y 2 cos α sin α = ax 1 + by 1 + c dx 1 + ey 1 + f = 1 z sin α cos α = f(x 1, y 1 ; θ) x 1 + a y 1 + b ax 1 + by 1 + c dx 1 + ey 1 + f, z = gx 1 + y 1 + i

Illustration of motion types Translation

Optical flow field Parametric motion is limited and cannot describe the motion of arbitrary videos Optical flow field: assign a flow vector u x, y, v x, y to each pixel (x, y) Projection from 3D world to 2D

Optical flow field visualization Too messy to plot flow vector for every pixel Map flow vector to color Magnitude: saturation Orientation: hue Input Ground-truth flow field Visualization code [Baker et al. 2007]

Matching criterion Brightness constancy assumption I 1 x, y = I 2 x + u, y + v + r + g r N 0, σ 2, g U 1,1 Noise r, outlier g (occlusion, lighting change) Matching criteria What s invariant between two images? Brightness, gradients, phase, other features Distance metric (L2, L1, truncated L1, Lorentzian) E u, v = x,y ρ I 1 x, y I 2 x + u, y + v Correlation, normalized cross correlation (NCC)

Error functions 3 3 2.5 2 L2 norm ρ z = z 2 2.5 2 L1 norm ρ z = z 1.5 1.5 1 1 0.5 0.5 0-2 -1.5-1 -0.5 0 0.5 1 1.5 2 0-2 -1.5-1 -0.5 0 0.5 1 1.5 2 3 2.5 Truncated L1 norm ρ z = min ( z, η) 3 2.5 Lorentzian ρ z = log (1 + γz 2 ) 2 2 1.5 1.5 1 1 0.5 0.5 0-2 -1.5-1 -0.5 0 0.5 1 1.5 2 0-2 -1.5-1 -0.5 0 0.5 1 1.5 2

Robust statistics Traditional L2 norm: only noise, no outlier Example: estimate the average of 0.95, 1.04, 0.91, 1.02, 1.10, 20.01 Estimate with minimum error z = arg min z L2 norm: z = 4.172 L1 norm: z = 1.038 i ρ z z i Truncated L1: z = 1.0296 Lorentzian: z = 1.0147 3 2.5 2 1.5 1 0.5 L2 norm ρ z = z 2 0-2 -1.5-1 -0.5 0 0.5 1 1.5 2 3 2.5 2 1.5 1 0.5 Truncated L1 norm ρ z = min ( z, η) 0-2 -1.5-1 -0.5 0 0.5 1 1.5 2 3 2.5 2 1.5 1 0.5 L1 norm ρ z = z 0-2 -1.5-1 -0.5 0 0.5 1 1.5 2 3 2.5 2 1.5 1 0.5 Lorentzian ρ z = log (1 + γz 2 ) 0-2 -1.5-1 -0.5 0 0.5 1 1.5 2

Contents Motion perception Motion representation Parametric motion: Lucas-Kanade Dense optical flow: Horn-Schunck Robust estimation Applications (1)

Lucas-Kanade: problem setup Given two images I 1 (x, y) and I 2 (x, y), estimate a parametric motion that transforms I 1 to I 2 Let x = x, y T be a column vector indexing pixel coordinate Two typical transforms Translation: W x; p = x + p 1 y + p 2 Affine: W x; p = p 1x + p 2 y + p 3 p 4 x + p 5 y + p = p 1 p 2 p x 3 6 p 4 p 5 p y 6 1 Goal of the Lucas-Kanade algorithm p = arg min p I 2 W x; p I 1 x 2 x

An incremental algorithm Difficult to directly optimize the objective function p = arg min p I 2 W x; p I 1 x 2 x Instead, we try to optimize each step Δp = arg min Δp The transform parameter is updated: x I 2 W x; p + Δp I 1 x 2 p p + Δp

Taylor expansion The term I 2 W x; p + Δp is highly nonlinear Taylor expansion: I 2 W x; p + Δp I 2 W x; p + I 2 W p Δp W : Jacobian of the warp p If W x; p = W x x; p, W y x; p T, then W p = W x W x p 1 p n W y W y p 1 p n

Jacobian matrix For affine transform: W x; p = p 1 p 2 p x 3 p 4 p 5 p y 6 1 The Jacobian is W = x y p 0 0 1 0 0 x 0 0 y 1 For translation : W x; p = x + p 1 y + p 2 The Jacobian is W p = 1 0 0 1

Taylor expansion I 2 = I x I y is the gradient of image I 2 evaluated at W(x; p): compute the gradients in the coordinate of I 2 and warp back to the coordinate of I 1 For affine transform W = x y p 0 0 1 0 0 x 0 0 y 1 W I 2 p = I x x I x y I x I y x I y y I y Let matrix B = [I x X I x Y I x I y X I y Y I y ] R n 6, I x and X are both column vectors. I x X is element-wise vector multiplication.

Gauss-Newton With Taylor expansion, the objective function becomes Δp = arg min Δp x Or in a vector form: I 2 W x; p + I 2 W p Δp I 1 x 2 Δp = arg min Δp I t + BΔp T (I t + BΔp) Where B = [I x X I x Y I x I y X I y Y I y ] R n 6 I t = I 2 W p I 1 Solution: Δp = B T B 1 B T I t

Jacobian: W p = 1 0 0 1 I 2 W p = I x I y B = [I x I y ] R n 2 Solution: Translation Δp = B T B 1 B T I t = I x T I x I T x I y I T x I y I T y I y 1 Ix T I t I y T I t

How it works

Coarse-to-fine refinement Lucas-Kanade is a greedy algorithm that converges to local minimum Initialization is crucial: if initialized with zero, then the underlying motion must be small If underlying transform is significant, then coarse-to-fine is a must (u 2, v 2 ) 2 Smooth & downsampling (u 1, v 1 ) 2 (u, v)

Variations Variations of Lucas Kanade: Additive algorithm [Lucas-Kanade, 81] Compositional algorithm [Shum & Szeliski, 98] Inverse compositional algorithm [Baker & Matthews, 01] Inverse additive algorithm [Hager & Belhumeur, 98] Although inverse algorithms run faster (avoiding recomputing Hessian), they have the same complexity for robust error functions!

From parametric motion to flow field Incremental flow update (du, dv) for pixel x, y I 2 x + u + du, y + v + dv I 1 x, y = I 2 x + u, y + v + I x x + u, y + v du + I y x + u, y + v dv I 1 x, y I x du + I y dv + I t = 0 We obtain the following function within a patch T I x du dv = I x I T x I y I x T I y I y T I y 1 Ix T I t I y T I t The flow vector of each pixel is updated independently Median filtering can be applied for spatial smoothness

Example Input two frames Coarse-to-fine LK Flow visualization Coarse-to-fine LK with median filtering

Contents Motion perception Motion representation Parametric motion: Lucas-Kanade Dense optical flow: Horn-Schunck Robust estimation Applications (1)

Motion ambiguities When will the Lucas-Kanade algorithm fail? T I x du dv = I x I T x I y I x T I y I y T I y 1 Ix T I t I y T I t The inverse may not exist!!! How? All the derivatives are zero: flat regions X- and y- derivatives are linearly correlated: lines

The aperture problem Corners Lines Flat regions

Dense optical flow with spatial regularity Local motion is inherently ambiguous Corners: definite, no ambiguity Lines: definite along the normal, ambiguous along the tangent Flat regions: totally ambiguous Solution: imposing spatial smoothness to the flow field Adjacent pixels should move together as much as possible Horn & Schunck equation u, v = arg min I x u + I y v + I t 2 + α u 2 + v 2 dxdy u 2 = u 2 u 2 + = ux 2 + u2 x y y α: smoothness coefficient Data term Smoothness term

2D Euler Lagrange 2D Euler Lagrange: the functional S = L x, y, f, f x, f y dxdy Ω is minimized only if f satisfies the partial differential equation (PDE) In Horn-Schunck L f x L f x y L f y = 0 L u, v, u x, u y, v x, v y = I x u + I y v + I t 2 + α ux 2 + u y 2 + v x 2 + v y 2 L u = 2 I xu + I y v + I t I x L u x = 2αu x, x L = 2αu u xx, L = 2αu x u y, y y L u y = 2αu yy

Linear PDE The Euler-Lagrange PDE for Horn-Schunck is I x u + I y v + I t I x α u xx + u yy = 0 I x u + I y v + I t I y α v xx + v yy = 0 u xx + u yy can be obtained by a Laplacian operator: 0 1 0 1 4 1 0 1 0 In the end, we solve a large linear system I x 2 + αl I x I y I x I y I 2 y + αl U V = I xi t I y I t

How to solve a large linear system? I x 2 + αl I x I y I x I y I 2 y + αl U V = I xi t I y I t With α > 0, this system is positive definite! You can use your favorite solver Gauss-Seidel, successive over-relaxation (SOR) (Pre-conditioned) conjugate gradient No need to wait for the solver to converge completely

Condition for convergence In the objective function u, v = arg min I x u + I y v + I t 2 + α u 2 + v 2 dxdy The displacement (u, v) has to be small for the Taylor expansion to be valid. More practically, we can estimate the optimal incremental change I x du + I y dv + I t 2 + α u + du 2 + v + dv 2 dxdy The solution becomes I x 2 + αl I x I y I x I y I 2 y + αl du dv = I xi t + αlu I y I t + αlv

Examples Horn-Schunck Input two frames Coarse-to-fine LK Flow visualization Coarse-to-fine LK with median filtering

The source of over-smoothness Horn-Schunck is a Gaussian Markov random field (GMRF) I x u + I y v + I t 2 + α u 2 + v 2 dxdy Spatial over-smoothness is caused by quadratic smoothness term Nevertheless, optical flow fields are sparse! Horn-Schunck u u x u y v v x v y Ground truth

Continuous Markov Random Fields Horn-Schunck started 30 years of research on continuous Markov random fields Optical flow estimation Image reconstruction, e.g. denoising, super resolution Shape from shading, inverse rendering problems Natural image priors Why continuous? Many signals are differentiable More complicated spatial relationships Fast solvers Multi-grid Preconditioned conjugate gradient FFT + annealing

Contents Motion perception Motion representation Parametric motion: Lucas-Kanade Dense optical flow: Horn-Schunck Robust estimation Applications (1)

Modification to Horn-Schunck Let x = (x, y, t), and w x = (u x, v x, 1) be the flow vector Horn-Schunck (recall) I x u + I y v + I t 2 + α u 2 + v 2 dxdy Robust estimation ψ I x + w I x 2 + αφ u 2 + v 2 dxdy Robust estimation with Lucas-Kanade g ψ I x + w I x 2 + αφ u 2 + v 2 dxdy

Robust functions Various forms of robust functions L1 norm: ψ z 2 = z 2 + ε 2, φ z 2 = z 2 + ε 2 Sub L1: ψ z 2 ; η = z 2 + ε 2 η, η < 0.5 Lorentzian: ψ z 2 = log(1 + z 2 ) 1.2 1 0.8 z z 2 + ε 2 1.2 1 0.8 0.6 0.6 0.4 0.2 0.4 0.2 =0.5 =0.4 =0.3 =0.2 0-1 -0.8-0.6-0.4-0.2 0 0.2 0.4 0.6 0.8 1 0-1 -0.8-0.6-0.4-0.2 0 0.2 0.4 0.6 0.8 1

Special cases The robust objective function g ψ I x + w I x 2 + αφ u 2 + v 2 dxdy Lucas-Kanade: α = 0, ψ z 2 = z 2 Robust Lucas-Kanade: α = 0, ψ z 2 = z 2 + ε 2 Horn-Schunck: g = 1, ψ z 2 = z 2, φ z 2 = z 2 One can also learn the filters (other than gradients), and robust function ψ, φ [Roth & Black 2005]

Derivation strategies Euler-Lagrange Derive in continuous domain, discretize in the end Nonlinear PDE s Outer and inner fixed point iterations Cannot generalize to general filters Variational optimization Iterative reweighted least square (IRLS) Discretize first and derive in matrix form Easy to understand and derive These three approaches are equivalent!

Iterative reweighted least square (IRLS) Let φ z = z 2 + ε 2 η be a robust function We want to minimize the objective function n Φ Ax + b = φ a i T x + b i 2 i=1 where x R d, A = a 1 a 2 a n T R n d, b R n By setting Φ x = 0, we can derive Φ n x = φ a T 2 i x + b i = i=1 n i=1 n w ii a i T xa i + w ii b i a i = i=1 = A T WAx + A T Wb a i T w ii xa i + b i w ii a i a i T x + b i a i w ii = φ a i T x + b i 2 W = diag Φ Ax + b

Iterative reweighted least square (IRLS) Derivative: Φ x = AT WAx + A T Wb Iterate between reweighting and least square 1. Initialize x = x 0 2. Compute weight matrix W = diag Φ Ax + b 3. Solve the linear system A T WAx = A T Wb 4. If x converges, return; otherwise, go to 2 Convergence is guaranteed (local minima)

Objective function IRLS for robust optical flow g ψ I x + w I x 2 + αφ u 2 + v 2 dxdy Discretize, linearize and increment x,y g ψ( I t + I x du + I Y dv 2 ) + αφ( u + du 2 + v + dv 2 ) IRLS (initialize du = dv = 0) Weight: Least square: Ψ xx = diag g ψ I x I x, Ψ xy = diag g ψ I x I y, Ψ yy = diag g ψ I y I y, Ψ xt = diag(g ψ I x I t ), = diag(g ψ I y I t ), L = D T x Φ D x + D T y Φ D y Ψ yt Ψ xx + αl Ψ xy + αl Ψ xy Ψ yy du dv = Ψ xt + αlu I y I t + αlv

Examples Robust optical flow Input two frames Horn-Schunck Flow visualization Coarse-to-fine LK with median filtering

Contents Motion perception Motion representation Parametric motion: Lucas-Kanade Dense optical flow: Horn-Schunck Robust estimation Applications (1)

Video stabilization

Video denoising Use multiple frames for temporal coherence Non-local mean

Video denoising

Video super resolution Merge information from adjacent frames Reconstruction depends on flow accuracy

Summary Lucas-Kanade Parametric motion Dense flow field (with median filtering) Horn-Schunck Gaussian Markov random field Euler-Lagrange Robust flow estimation Robust function Account for outliers in data term Encourage piecewise smoothness IRLS (= nonlinear PDE = variational optimization)

Next time Discrete optical flow Layer motion analysis Contour motion analysis Obtaining motion ground truth SIFT flow: generalized optical flow Applications (2)