Motion Estimation (II) Ce Liu Microsoft Research New England

Similar documents
EE795: Computer Vision and Intelligent Systems

Notes 9: Optical Flow

EE795: Computer Vision and Intelligent Systems

COMPUTER VISION > OPTICAL FLOW UTRECHT UNIVERSITY RONALD POPPE

Motion and Optical Flow. Slides from Ce Liu, Steve Seitz, Larry Zitnick, Ali Farhadi

Representing Moving Images with Layers. J. Y. Wang and E. H. Adelson MIT Media Lab

Overview. Video. Overview 4/7/2008. Optical flow. Why estimate motion? Motion estimation: Optical flow. Motion Magnification Colorization.

CS6670: Computer Vision

The Lucas & Kanade Algorithm

Optical Flow CS 637. Fuxin Li. With materials from Kristen Grauman, Richard Szeliski, S. Narasimhan, Deqing Sun

Comparison between Motion Analysis and Stereo

CS-465 Computer Vision

Feature Tracking and Optical Flow

CS 4495 Computer Vision Motion and Optic Flow

Technion - Computer Science Department - Tehnical Report CIS

SURVEY OF LOCAL AND GLOBAL OPTICAL FLOW WITH COARSE TO FINE METHOD

Part II: Modeling Aspects

Feature Tracking and Optical Flow

Peripheral drift illusion

Motion Estimation. There are three main types (or applications) of motion estimation:

Dense Image-based Motion Estimation Algorithms & Optical Flow

Multiple Combined Constraints for Optical Flow Estimation

Segmentation and Tracking of Partial Planar Templates

Schedule. Tuesday, May 10: Thursday, May 12: Motion microscopy, separating shading and paint min. student project presentations, projects due.

Segmentation and Grouping April 19 th, 2018

Optical Flow-Based Motion Estimation. Thanks to Steve Seitz, Simon Baker, Takeo Kanade, and anyone else who helped develop these slides.

Multi-stable Perception. Necker Cube

Motion Tracking and Event Understanding in Video Sequences

Visual Tracking. Image Processing Laboratory Dipartimento di Matematica e Informatica Università degli studi di Catania.

Computer Vision Lecture 20

Computer Vision Lecture 20

SPM-BP: Sped-up PatchMatch Belief Propagation for Continuous MRFs. Yu Li, Dongbo Min, Michael S. Brown, Minh N. Do, Jiangbo Lu

Large Displacement Optical Flow & Applications

Optic Flow and Basics Towards Horn-Schunck 1

CS 565 Computer Vision. Nazar Khan PUCIT Lectures 15 and 16: Optic Flow

Outline. Segmentation & Grouping. Examples of grouping in vision. Grouping in vision. Grouping in vision 2/9/2011. CS 376 Lecture 7 Segmentation 1

Optical Flow Estimation

3D Computer Vision. Dense 3D Reconstruction II. Prof. Didier Stricker. Christiano Gava

Coarse to Over-Fine Optical Flow Estimation

Visual Tracking (1) Tracking of Feature Points and Planar Rigid Objects

Segmentation and Grouping April 21 st, 2015

Ninio, J. and Stevens, K. A. (2000) Variations on the Hermann grid: an extinction illusion. Perception, 29,

Regularization and Markov Random Fields (MRF) CS 664 Spring 2008

Mixture Models and EM

Comparison of stereo inspired optical flow estimation techniques

Local Grouping for Optical Flow

Visual motion. Many slides adapted from S. Seitz, R. Szeliski, M. Pollefeys

Optical flow and tracking

Lecture 16: Computer Vision

Motion. 1 Introduction. 2 Optical Flow. Sohaib A Khan. 2.1 Brightness Constancy Equation

Feature Based Registration - Image Alignment

Visual Tracking (1) Feature Point Tracking and Block Matching

CUDA GPGPU. Ivo Ihrke Tobias Ritschel Mario Fritz

Particle Tracking. For Bulk Material Handling Systems Using DEM Models. By: Jordan Pease

Visual Tracking. Antonino Furnari. Image Processing Lab Dipartimento di Matematica e Informatica Università degli Studi di Catania

CS664 Lecture #18: Motion

Motion and Tracking. Andrea Torsello DAIS Università Ca Foscari via Torino 155, Mestre (VE)

Augmented Reality VU. Computer Vision 3D Registration (2) Prof. Vincent Lepetit

CS 2770: Computer Vision. Edges and Segments. Prof. Adriana Kovashka University of Pittsburgh February 21, 2017

Using Subspace Constraints to Improve Feature Tracking Presented by Bryan Poling. Based on work by Bryan Poling, Gilad Lerman, and Arthur Szlam

Learning and Inferring Depth from Monocular Images. Jiyan Pan April 1, 2009

EE795: Computer Vision and Intelligent Systems

Robust Model-Free Tracking of Non-Rigid Shape. Abstract

What have we leaned so far?

Optical flow. Cordelia Schmid

EECS 556 Image Processing W 09

Colour Segmentation-based Computation of Dense Optical Flow with Application to Video Object Segmentation

Segmentation and Grouping

Over-Parameterized Variational Optical Flow

Optical flow. Cordelia Schmid

Lucas-Kanade Motion Estimation. Thanks to Steve Seitz, Simon Baker, Takeo Kanade, and anyone else who helped develop these slides.

Stereo Vision II: Dense Stereo Matching

Matching. Compare region of image to region of image. Today, simplest kind of matching. Intensities similar.

Grouping and Segmentation

Dense Correspondence and Its Applications

Capturing, Modeling, Rendering 3D Structures

Computer Vision Lecture 20

FAST-MATCH: FAST AFFINE TEMPLATE MATCHING

Announcements. Computer Vision I. Motion Field Equation. Revisiting the small motion assumption. Visual Tracking. CSE252A Lecture 19.

Computer Vision II Lecture 4

ELEC Dr Reji Mathew Electrical Engineering UNSW

Perceptual Grouping from Motion Cues Using Tensor Voting

Adaptive Multi-Stage 2D Image Motion Field Estimation

Enhancing Gradient Sparsity for Parametrized Motion Estimation

Ruch (Motion) Rozpoznawanie Obrazów Krzysztof Krawiec Instytut Informatyki, Politechnika Poznańska. Krzysztof Krawiec IDSS

Computer Vision I. Dense Stereo Correspondences. Anita Sellent 1/15/16

Autonomous Navigation for Flying Robots

Markov Networks in Computer Vision

Sparsity Model for Robust Optical Flow Estimation at Motion Discontinuities

Fundamental matrix. Let p be a point in left image, p in right image. Epipolar relation. Epipolar mapping described by a 3x3 matrix F

Learning Two-View Stereo Matching

Nonrigid Surface Modelling. and Fast Recovery. Department of Computer Science and Engineering. Committee: Prof. Leo J. Jia and Prof. K. H.

Optical Flow Estimation using Fourier Mellin Transform

Markov Networks in Computer Vision. Sargur Srihari

Using temporal seeding to constrain the disparity search range in stereo matching

FusionFlow: Discrete-Continuous Optimization for Optical Flow Estimation

The 2D/3D Differential Optical Flow

Visual Tracking (1) Pixel-intensity-based methods

Finally: Motion and tracking. Motion 4/20/2011. CS 376 Lecture 24 Motion 1. Video. Uses of motion. Motion parallax. Motion field

Lecture 16: Computer Vision

Transcription:

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

Last time Motion perception Motion representation Parametric motion: Lucas-Kanade 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 x Dense optical flow: Horn-Schunck 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

Who are they? Berthold K. P. Horn Takeo Kanade

Content Robust optical flow estimation Applications Feature matching Discrete optical flow Layer motion analysis Other representations

Content Robust optical flow estimation Applications Feature matching Discrete optical flow Layer motion analysis Other representations

Spatial regularity 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 the quadratic smoothness term Nevertheless, real optical flow fields are sparse! u u x u y v v x v y

Data term Horn-Schunck is a Gaussian Markov random field (GMRF) I x u + I y v + I t 2 + α u 2 + v 2 dxdy Quadratic data term implies Gaussian white noise Nevertheless, the difference between two corresponded pixels is caused by Noise (majority) Occlusion Compression error Lighting change The error function needs to account for these factors

Explicitly model the noise n Noise model I 2 x + u, y + v = I 1 x, y + n It can be a mixture of two Gaussians, inlier and outlier 2 n ~ λn 0, σ i + 1 λ N(0, σ 2 o ) Inlier Outlier Mixture (λ = 0.9) 15 15 15 10 10 10 PDF 5 5 5 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 0-1 -0.8-0.6-0.4-0.2 0 0.2 0.4 0.6 0.8 1 14 14 14 12 12 12 10 10 10 8 8 8 6 6 6 4 4 4 Potential 2 0-2 2 0-2 2 0-2 -4-1 -0.8-0.6-0.4-0.2 0 0.2 0.4 0.6 0.8 1-4 -1-0.8-0.6-0.4-0.2 0 0.2 0.4 0.6 0.8 1-4 -1-0.8-0.6-0.4-0.2 0 0.2 0.4 0.6 0.8 1

More components in the mixture Consider a Gaussian mixture model K n~ 1 ξ k N(0, ks 2 ) Z k=1 Varying the decaying rate ξ, we obtain a variety of potential functions 30 25 10 ξ = 0.1 ξ = 0.9 12 20 8 15 6 10 4 5 2 0 0-5 -4-3 -2-1 0 1 2 3 4-2 -4-3 -2-1 0 1 2 3 4

Typical 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 Truncated L1 norm ρ z = min( z, η) 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 Lorentzian ρ z = log(1 + γz 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

The family of robust power functions Can we directly use L1 norm ψ z = z? Derivative is not continuous Alternative forms L1 norm: ψ z 2 = z 2 + ε 2 Sub L1: ψ z 2 ; η = z 2 + ε 2 η, η < 0.5 1.2 1.2 1 1 0.8 0.8 0.6 0.4 z z 2 + ε 2 0.6 0.4 η = 0.5 η = 0.4 η = 0.3 η = 0.2 0.2 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

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

A unifying framework The robust object 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 Limited to derivative filters; cannot generalize to arbitrary filters Energy minimization Discretize first and derive in matrix form Easy to understand and derive Iteratively reweighted least square (IRLS) Variational optimization Euler-Lagrange = Variational optimization = IRLS

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

Iteratively reweighted least square (IRLS) Derivative: Φ x = AT WAx + A T Wb = 0 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)

IRLS for robust optical flow Objective function 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) Reweight: 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 + αlv Ψ yt

What s changed? Optical flow with robust function Ψ 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 + αlv Ψ yt Horn-Schunck 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

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

Content Robust optical flow estimation Applications Feature matching Discrete optical flow Layer motion analysis Other representations

Video stabilization

Video denoising

Video super resolution

Content Robust optical flow estimation Applications Feature matching Discrete optical flow Layer motion analysis Contour motion analysis Obtaining motion ground truth

Block matching Both Horn-Schunck and Lucas-Kanade are sub-pixel accuracy algorithms But in practice we may not need sub-pixel accuracy MPEG: 16 16 block matching using MMSE H264: variable block size and quarter-pixel precision

Tracking reliable features Idea: no need to work on ambiguous region pixels (flat regions & line structures) Instead, we can track features and then propagate the tracking to ambiguous pixels Good features to track [Shi & Tomashi 94] T I x du dv = I x I T x I y I x T I y I y T I y Block matching + Lucas-Kanade refinement 1 Ix T I t I y T I t

Feature detection & tracking

From sparse to dense Interpolation: given values {d i } at { x i, y i }, reconstruct a smooth plane f(x, y) Membrane model (first order smoothness) i w i f x i, y i d i 2 + α f x 2 + f y 2 dxdy Thin plate model (second order smoothness) i w i f x i, y i d i 2 + α f xx 2 + f xy 2 + f yy 2 dxdy

Membrane vs. thin plate

Dense flow field from sparse tracking

Pros and Cons of Feature Matching Pros Efficient (a few feature points vs. all pixels) Reliable (with advanced feature descriptors) Cons Independent tracking (tracking can be unreliable) Not all information is used (may not capture weak features) How to improve Track every pixel with uncertainty Integrate spatial regularity (neighboring pixels go together)

Content Robust optical flow estimation Applications Feature matching Discrete optical flow Layer motion analysis Other representations

Discrete optical flow The objective function is similar to that of continuous flow x = (x, y) is pixel coordinate, w = (u, v) is flow vector E w = x x min( I 1 x I 2 x + w x, t) + η( u x + v x ) + Data term Small displacement min α u x 1 u x 2, d + min α v x 1 v x 2, d x 1,x 2 ε Spatial regularity Truncated L1 norms: Account for outliers in the data term Encourage piecewise smoothness in the smoothness term

Decoupled smoothness Coupled smoothness Smoothness O(L 4 ) Decoupled smoothness Smoothness: O(L) 2 ) Data term: O(L 2 ) Data term: O(L 2 ) Smoothness: O(L) 2 )

Combinatorial optimization on graph E w = min( I 1 x I 2 x + w x, t) + x η( u x + v x ) + x min α u x 1 u x 2, d + min α v x 1 v x 2, d x 1,x 2 ε Optimization strategies Belief propagation Graph cuts MCMC (simulated annealing)

Dual-layer belief propagation Horizontal flow u Vertical flow v w = (u, v) Data term min( I 1 x I 2 x + w, t) Smoothness term on u min α u x 1 u x 2, d v Smoothness term on v min α v x 1 v x 2, d u [Shekhovtsov et al. CVPR 07] Regularization term on u η u x Regularization term on v η v x

Dual-layer belief propagation Message M j k : given all the information at node k, predict the distribution at node j k j v u Update within u plane

Dual-layer belief propagation v u Update within v plane

Dual-layer belief propagation k j v u Update from u plane to v plane

Dual-layer belief propagation v u Update from v plane to u plane

Example Discrete optical flow Input two frames Robust optical flow Flow visualization Coarse-to-fine LK with median filtering

Content Robust optical flow estimation Applications Feature matching Discrete optical flow Layer motion analysis Other representations

Layer representation Optical flow field is able to model complicated motion Different angle: a video sequence can be a composite of several moving layers Layers have been widely used Adobe Photoshop Adobe After Effect Compositing is straightforward, but inference is hard Wang & Adelson, 1994

Wang & Adelson, 1994 Strategy Obtaining dense optical flow field Divide a frame into non-overlapping regions and fit affine motion for each region Cluster affine motions by k-means clustering Region assignment by hypothesis testing Region splitter: disconnected regions are separated

Results Optical flow field Clustering to affine regions Clustering with error metric Flower garden Three layers with affine motion superimposed Reconstructed background layer

Weiss & Adelson, 1996 Chicken & egg problem Good motion good segmentation Good segmentation good motion We don t have either of them, so iterate! Perceptually organized expectation & maximization (POEM) E-step: estimate the motion parameter of each layer M-step: estimate the likelihood that a pixel belongs to each of the layers (segmentation)

Liu et. al. 2005 Reliable layer segmentation for motion magnification Layer segmentation pipeline Feature point tracking Trajectory clustering Dense optical flow interpolation Layer segmentation

Normalized Complex Correlation Feature point tracking Trajectory clustering Dense optical flow interpolation Layer segmentation The similarity metric should be independent of phase and magnitude Normalized complex correlation S( C, C 1 2 ) t C ( t) C ( t) 1 t C ( t) C 1 1 2 ( t) t C 2 2 ( t) C 2 ( t)

Trajectory Spectral Clustering Feature point tracking Trajectory clustering Dense optical flow interpolation Layer segmentation Trajectory Two clusters Affinity matrix Clustering Reordering of affinity matrix

Clustering Results Feature point tracking Trajectory clustering Dense optical flow interpolation Layer segmentation

From Sparse Feature Points to Dense Optical Flow Field Feature point tracking Trajectory clustering Dense optical flow interpolation Layer segmentation Interpolate dense optical flow field using locally weighted linear regression Dense Flow vectors optical of flow field clustered of cluster sparse 12 (leaves) (swing) feature points Cluster 1: leaves Cluster 2: swing

Motion Layer Assignment Feature point tracking Trajectory clustering Dense optical flow interpolation Layer segmentation Assign each pixel to a motion cluster layer, using four cues: Motion likelihood consistency of pixel s intensity if it moves with the motion of a given layer (dense optical flow field) Color likelihood consistency of the color in a layer Spatial connectivity adjacent pixels favored to belong the same group Temporal coherence label assignment stays constant over time Energy minimization using graph cuts

How good is optical flow? The AAE (average angular error) race on the Yosemite sequence for over 15 years Improvement # Yosemite sequence State-of-the-art optical flow * # I. Austvoll. Lecture Notes in Computer Science, 2005 * Brox et al. ECCV, 2004.

Middlebury flow database Baker et. al. A Database and Evaluation Methodology for Optical Flow. ICCV 2007

Middlebury flow database

Human-assisted motion annotation Ground truth is essential to progress the field A first step in computer vision to obtain ground-truth motion for arbitrary scenes (a different approach from Baker et al. 2007) An interactive system to combine human perception and the state-of-the-art computer vision algorithms to annotate motion Liu et al. Human-assisted motion annotation. CVPR 2008

Demo: interactive layer segmentation

Demo: interactive motion labeling

Motion database of natural scenes Color map Bruhn et al. Lucas/Kanade meets Horn/Schunck: combining local and global optical flow methods. IJCV, 2005

Content Robust optical flow estimation Applications Feature matching Discrete optical flow Layer motion analysis Other representations

Particle video P. Sand and S. Teller. Particle Video: Long-Range Motion Estimation using Point Trajectories. CVPR 2006

Particle video

Seemingly Simple Examples Kanizsa square From real video

Output from the State-of-the-Art Optical Flow Algorithm Kanizsa square Optical flow field T. Brox et al. High accuracy optical flow estimation based on a theory for warping. ECCV 2004

Output from the State-of-the-Art Optical Flow Algorithm Dancer Optical flow field T. Brox et al. High accuracy optical flow estimation based on a theory for warping. ECCV 2004

Optical flow representation: aperture problem Corners Lines Flat regions Spurious junctions Boundary ownership Illusory boundaries

Optical flow representation: aperture problem We need motion representation beyond pixel level! Corners Lines Flat regions Spurious junctions Boundary ownership Illusory boundaries

Challenge: Textureless Objects under Occlusion Corners are not always trustworthy (junctions) Flat regions do not always move smoothly (discontinuous at illusory boundaries) How about boundaries? Easy to detect and track for textureless objects Able to handle junctions with illusory boundaries

Frame 1

Frame 2

Extracted boundary fragments

Optical flow from Lucas-Kanade algorithm

Estimated motion by our system, after grouping

Boundary grouping and illusory boundaries (frame 1)

Boundary grouping and illusory boundaries (frame 2)

Rotating Chair

Frame 1

Frame 2

Extracted boundary fragments

Estimated flow field from Brox et al.

Estimated motion by our system, after grouping

Boundary grouping and illusory boundaries (frame 1)

Boundary grouping and illusory boundaries (frame 2)