Multiple View Geometry. Frank Dellaert

Similar documents
Week 2: Two-View Geometry. Padua Summer 08 Frank Dellaert

Computer Vision I. Announcements. Random Dot Stereograms. Stereo III. CSE252A Lecture 16

Epipolar geometry. x x

Lecture 9: Epipolar Geometry

Recovering structure from a single view Pinhole perspective projection

Two-view geometry Computer Vision Spring 2018, Lecture 10

Robust Geometry Estimation from two Images

Reminder: Lecture 20: The Eight-Point Algorithm. Essential/Fundamental Matrix. E/F Matrix Summary. Computing F. Computing F from Point Matches

Epipolar Geometry and Stereo Vision

Vision par ordinateur

Multi-view geometry problems

Stereo and Epipolar geometry

Model Fitting. Introduction to Computer Vision CSE 152 Lecture 11

3D Computer Vision. Structure from Motion. Prof. Didier Stricker

Epipolar Geometry and Stereo Vision

Lecture 6 Stereo Systems Multi-view geometry

Lecture 5 Epipolar Geometry

Structure from motion

Lecture 14: Basic Multi-View Geometry

Undergrad HTAs / TAs. Help me make the course better! HTA deadline today (! sorry) TA deadline March 21 st, opens March 15th

Camera Geometry II. COS 429 Princeton University

Epipolar Geometry Prof. D. Stricker. With slides from A. Zisserman, S. Lazebnik, Seitz

CS231M Mobile Computer Vision Structure from motion

Lecture 6 Stereo Systems Multi- view geometry Professor Silvio Savarese Computational Vision and Geometry Lab Silvio Savarese Lecture 6-24-Jan-15

Geometry of Multiple views

Structure from Motion. Introduction to Computer Vision CSE 152 Lecture 10

Stereo CSE 576. Ali Farhadi. Several slides from Larry Zitnick and Steve Seitz

Computer Vision I - Robust Geometry Estimation from two Cameras

3D reconstruction class 11

Index. 3D reconstruction, point algorithm, point algorithm, point algorithm, point algorithm, 253

Announcements. Stereo

Structure from Motion and Multi- view Geometry. Last lecture

Index. 3D reconstruction, point algorithm, point algorithm, point algorithm, point algorithm, 263

Rectification and Disparity

Multiple Views Geometry

Computer Vision Lecture 17

Computer Vision Lecture 17

RANSAC and some HOUGH transform

Stereo II CSE 576. Ali Farhadi. Several slides from Larry Zitnick and Steve Seitz

Structure from motion

calibrated coordinates Linear transformation pixel coordinates

Step-by-Step Model Buidling

Announcements. Stereo

But First: Multi-View Projective Geometry

Computational Optical Imaging - Optique Numerique. -- Multiple View Geometry and Stereo --

Structure from motion

Epipolar Geometry Based On Line Similarity

3D Reconstruction from Two Views

Lecture'9'&'10:'' Stereo'Vision'

Introduction à la vision artificielle X

arxiv: v1 [cs.cv] 18 Sep 2017

Last lecture. Passive Stereo Spacetime Stereo

Image Transfer Methods. Satya Prakash Mallick Jan 28 th, 2003

Unit 3 Multiple View Geometry

COMPARATIVE STUDY OF DIFFERENT APPROACHES FOR EFFICIENT RECTIFICATION UNDER GENERAL MOTION

CSE 252B: Computer Vision II

Stereo Vision. MAN-522 Computer Vision

Image correspondences and structure from motion

Model Fitting, RANSAC. Jana Kosecka

There are many cues in monocular vision which suggests that vision in stereo starts very early from two similar 2D images. Lets see a few...

arxiv: v4 [cs.cv] 8 Jan 2017

Recap: Features and filters. Recap: Grouping & fitting. Now: Multiple views 10/29/2008. Epipolar geometry & stereo vision. Why multiple views?

A Real-Time Catadioptric Stereo System Using Planar Mirrors

CS 231A Computer Vision (Winter 2015) Problem Set 2

Epipolar Geometry CSE P576. Dr. Matthew Brown

Homographies and RANSAC

Automatic Estimation of Epipolar Geometry

Structure from Motion

CS231A Midterm Review. Friday 5/6/2016

Hough Transform and RANSAC

Computer Vision I. Announcement. Stereo Vision Outline. Stereo II. CSE252A Lecture 15

Today. Stereo (two view) reconstruction. Multiview geometry. Today. Multiview geometry. Computational Photography

Multi-View Geometry Part II (Ch7 New book. Ch 10/11 old book)

55:148 Digital Image Processing Chapter 11 3D Vision, Geometry

A Summary of Projective Geometry

An Improved Evolutionary Algorithm for Fundamental Matrix Estimation

CEE598 - Visual Sensing for Civil Infrastructure Eng. & Mgmt.

Epipolar Geometry and Stereo Vision

Lecture 9 Fitting and Matching

Computational Optical Imaging - Optique Numerique. -- Single and Multiple View Geometry, Stereo matching --

Multiple View Geometry

Final project bits and pieces

Lecture 10: Multi-view geometry

Parameter estimation. Christiano Gava Gabriele Bleser

CS 231A: Computer Vision (Winter 2018) Problem Set 2

Dr. Ulas Bagci

Camera Calibration Using Line Correspondences

Summary Page Robust 6DOF Motion Estimation for Non-Overlapping, Multi-Camera Systems

BIL Computer Vision Apr 16, 2014

Computer Vision I - Algorithms and Applications: Multi-View 3D reconstruction

MAPI Computer Vision. Multiple View Geometry

Lecture 8 Fitting and Matching

Fast Outlier Rejection by Using Parallax-Based Rigidity Constraint for Epipolar Geometry Estimation

Fitting. Instructor: Jason Corso (jjcorso)! web.eecs.umich.edu/~jjcorso/t/598f14!! EECS Fall 2014! Foundations of Computer Vision!

Image Rectification (Stereo) (New book: 7.2.1, old book: 11.1)

EECS 442 Computer vision. Fitting methods

Fitting. Fitting. Slides S. Lazebnik Harris Corners Pkwy, Charlotte, NC

Epipolar Geometry in Stereo, Motion and Object Recognition

Stereo. 11/02/2012 CS129, Brown James Hays. Slides by Kristen Grauman

Instance-level recognition part 2

Transcription:

Multiple View Geometry Frank Dellaert

Outline Intro Camera Review Stereo triangulation Geometry of 2 views Essential Matrix Fundamental Matrix Estimating E/F from point-matches

Why Consider Multiple Views? P X P' x x' Answer: To extract 3D structure via triangulation.

Stereo Rig Top View Matches on Scanlines Convenient when searching for correspondences.

Feature Matching!

Real World Challenges Bad News: Good correspondences are hard to find Good news: Geometry constrains possible correspondences. 4 DOF between x and x'; only 3 DOF in X. Constraint is manifest in the Fundamental matrix F can be calculated either from camera matrices or a set of good correspondences.

Geometry of 2 views? What if we do not know R,t? Caveat: My exposition follows book conventions but more intuitive (IMHO) Different from Hartley & Zisserman! F&P use [R T -R T t] camera matrices H&Z uses [R t]

Epipolar Geometry Where can p appear? P p t C C M =[R T -R T t] M=[I 0]? p

Image of Camera Center epipole M =[R T -R T t] M=[I 0]

Example:Cameras Point at Each Other Top View Epipolar Lines

Epipoles Camera Center C in first view: [ ] t 1 e = I 0 " $ # Origin C in second view: % ' = t & # e'= [ R T "R T t] 0 & % ( = "R T t $ 1'

Image of Camera Ray? epipole M =[R T -R T t] M=[I 0]

Point at infinity Given p, what is corresponding point at infinity [x 0]? Answer for any camera M =[A a]: # p'= [ A a] " x & % ( = Ax ) x = A *1 p' $ 0' A -1 = Infinite homography In our case M =[R T -R T t]: x = Rp'

Sidebar: Infinite Homographies Homography between image plane plane at infinity Navigation by the stars: Image of stars = function of rotation R only! Traveling on a sphere rotates viewer

Essential Matrix

Epipolar Line Calculation 1) Point 1 = epipole e=t 2) Point 2 = point at infinity [ ] # Rp' p " = I 0 3) Epipolar line = join of points 1 and 2 $ & % 0 l = t " Rp' ' ) = Rp' (

P Epipolar Lines P p C e e=t C M =[R T -R T t] M=[I 0] p l = t! p =Rp Rp'

Epipolar lines e=t l = t! Rp' p =Rp

Epipolar Plane P p l' l p C e e=t C M =[R T -R T t] M=[I 0]

Essential Matrix mapping from p to l l = t " Rp'= [ t] R # p'= E # p' " E = 3*3 matrix Because p is on l, we have p T Ep'= 0

E s Degrees of Freedom R,t = 6 DOF However, scale ambiguity! = 5 DOF

Fundamental Matrix FUNDAMENTAL

P Uncalibrated Case P p p =A -1 p p [ ]! e A 1 p' C e =a e=-a -1 a C M =K [R [A a] -1 K [R T -R -R T t] t] M=K[I 0] M=[I 0] l = "

Uncalibrated Case, Forsyth & Ponce Version Fundamental Matrix (Faugeras and Luong, 1992)

Fundamental Matrix mapping from p to l l = e " A #1 p'= [ e] A #1 $ p'= F $ p' " F = 3*3 matrix Because p is on l, we have p T Fp'= 0

Properties of the Fundamental Matrix Fp is the epipolar line associated with p. F T p is the epipolar line associated with p. F T e=0 and Fe =0. F is singular.

The Eight-Point Algorithm (Longuet-Higgins, 1981) Minimize: under the constraint 2 F =1.

Non-Linear Least-Squares Approach (Luong et al., 1993) Minimize with respect to the coefficients of F, using an appropriate rank-2 parameterization.

The Normalized Eight-Point Algorithm (Hartley, 1995) Center the image data at the origin, and scale it so the mean squared distance between the origin and the data points is 2 pixels: q i = T p i q i = T p i. Use the eight-point algorithm to compute F from the points q i and q i. Enforce the rank-2 constraint. Output T -1 F T.

RANSAC Frank Dellaert Slides all my own this time

Motivation Estimating motion models Typically: points in two images Candidates: Translation Homography Fundamental matrix

Mosaicking: Homography www.cs.cmu.edu/~dellaert/mosaicking

Fundamental Matrix

Omnidirectional example Images by Branislav Micusik, Tomas Pajdla, cmp.felk.cvut.cz/ demos/fishepip/

Simpler Example Fitting a straight line

Discard Outliers No point with d>t RANSAC: RANdom SAmple Consensus Fischler & Bolles 1981 Copes with a large proportion of outliers

Main Idea Select 2 points at random Fit a line Support = number of inliers Line with most inliers wins

Why will this work?

Best Line has most support More support -> better fit

In General Fit a more general model Sample = minimal subset Translation:? Homography? Fundamental Matrix?

RANSAC Objective: Robust fit of a model to data S Algorithm Randomly select s points Instantiate a model Get consensus set Si If Si >T, terminate and return model Repeat for N trials, return model with max Si

Distance Threshold Requires noise distribution Gaussian noise with σ Chi-squared distribution with DOF m 95% cumulative: Line, F: m=1, t=3.84 σ 2 Translation, homography: m=2, t=5.99\ σ 2 I.e. -> 95% prob that d<t is inlier

How many samples? We want: at least one sample with all inliers Can t guarantee: probability p E.g. p =0.99

Calculate N If w = proportion of inliers = 1-etha P(sample with all inliers)=w s P(sample with an outlier)=1-w s P(N samples an outlier)=(1-w s )^N We want P(N samples an outlier)<1-p (1-w s )^N<1-p N>log(1-p)/log(1-w s )

Example P=0.99 s=2, etha=5% => N=2 s=2, etha=50% => N=17 s=4, etha=5% => N=3 s=4, etha=50% => N=72 s=8, etha=5% => N=5 s=8, etha=50% => N=1177

Remarks N = f(etha), not the number of points N increases steeply with s

Threshold T Remember: terminate if Si >T Rule of thumb: T #inliers So, T=(1-etha)n

Adaptive N When etha is unknown? Start with etha=50%, N=inf Repeat: Sample s, fit model -> update etha as outliers /n -> set N=f(etha,s,p) Terminate when N samples seen