CSE 576, Spring 2008Projective Geometry1 Lecture slides by Steve Seitz (mostly) Lecture presented by Rick Szeliski.

Slides:



Advertisements
Similar presentations
Single-view geometry Odilon Redon, Cyclops, 1914.
Advertisements

Single-view Metrology and Camera Calibration
Computer Vision, Robert Pless
Lecture 11: Two-view geometry
Last 4 lectures Camera Structure HDR Image Filtering Image Transform.
More Mosaic Madness : Computational Photography Alexei Efros, CMU, Fall 2011 © Jeffrey Martin (jeffrey-martin.com) with a lot of slides stolen from.
View Morphing (Seitz & Dyer, SIGGRAPH 96)
Camera calibration and epipolar geometry
Single-view metrology
Lecture 14: Panoramas CS4670: Computer Vision Noah Snavely What’s inside your fridge?
CS6670: Computer Vision Noah Snavely Lecture 17: Stereo
Lecture 19: Single-view modeling CS6670: Computer Vision Noah Snavely.
Lecture 11: Structure from motion, part 2 CS6670: Computer Vision Noah Snavely.
list – let me know if you have NOT been getting mail Assignment hand in procedure –web page –at least 3 panoramas: »(1) sample sequence, (2) w/Kaidan,
Epipolar geometry. (i)Correspondence geometry: Given an image point x in the first view, how does this constrain the position of the corresponding point.
Uncalibrated Geometry & Stratification Sastry and Yang
Scene Modeling for a Single View : Computational Photography Alexei Efros, CMU, Fall 2005 René MAGRITTE Portrait d'Edward James …with a lot of slides.
Announcements Project 2 questions Midterm out on Thursday
Lecture 7: Image Alignment and Panoramas CS6670: Computer Vision Noah Snavely What’s inside your fridge?
Projective geometry Slides from Steve Seitz and Daniel DeMenthon
Lecture 20: Light, color, and reflectance CS6670: Computer Vision Noah Snavely.
Lecture 15: Single-view modeling CS6670: Computer Vision Noah Snavely.
Panorama signups Panorama project issues? Nalwa handout Announcements.
Lecture 16: Single-view modeling, Part 2 CS6670: Computer Vision Noah Snavely.
Single-view geometry Odilon Redon, Cyclops, 1914.
Panoramas and Calibration : Rendering and Image Processing Alexei Efros …with a lot of slides stolen from Steve Seitz and Rick Szeliski.
Single-view Metrology and Camera Calibration Computer Vision Derek Hoiem, University of Illinois 02/26/15 1.
Camera parameters Extrinisic parameters define location and orientation of camera reference frame with respect to world frame Intrinsic parameters define.
Scene Modeling for a Single View : Computational Photography Alexei Efros, CMU, Spring 2010 René MAGRITTE Portrait d'Edward James …with a lot of.
Cameras, lenses, and calibration
VZvZ r t b image cross ratio Measuring height B (bottom of object) T (top of object) R (reference point) ground plane H C scene cross ratio  scene points.
Today: Calibration What are the camera parameters?
Single-view Metrology and Cameras Computational Photography Derek Hoiem, University of Illinois 10/8/13.
Single-view metrology
Projective Geometry and Single View Modeling CSE 455, Winter 2010 January 29, 2010 Ames Room.
Single-view modeling, Part 2 CS4670/5670: Computer Vision Noah Snavely.
776 Computer Vision Jan-Michael Frahm, Enrique Dunn Spring 2013.
Automatic Camera Calibration
CSC 589 Lecture 22 Image Alignment and least square methods Bei Xiao American University April 13.
Projective cameras Motivation Elements of Projective Geometry Projective structure from motion Planches : –
Last Lecture (optical center) origin principal point P (X,Y,Z) p (x,y) x y.
Single-view Metrology and Camera Calibration Computer Vision Derek Hoiem, University of Illinois 01/25/11 1.
Camera calibration Digital Visual Effects Yung-Yu Chuang with slides by Richard Szeliski, Steve Seitz,, Fred Pighin and Marc Pollefyes.
Geometric Camera Models
Project 2 –contact your partner to coordinate ASAP –more work than the last project (> 1 week) –you should have signed up for panorama kitssigned up –sign.
Peripheral drift illusion. Multiple views Hartley and Zisserman Lowe stereo vision structure from motion optical flow.
Single-view geometry Odilon Redon, Cyclops, 1914.
Single-view Metrology and Cameras Computational Photography Derek Hoiem, University of Illinois 10/06/15.
Last Two Lectures Panoramic Image Stitching
More with Pinhole + Single-view Metrology
Single-view geometry Odilon Redon, Cyclops, 1914.
Project 1 Due NOW Project 2 out today –Help session at end of class Announcements.
Project 2 went out on Tuesday You should have a partner You should have signed up for a panorama kit Announcements.
Lecture 16: Image alignment
Calibrating a single camera
Lec 23: Single View Modeling
Single-view metrology
Depth from disparity (x´,y´)=(x+D(x,y), y)
Digital Visual Effects, Spring 2007 Yung-Yu Chuang 2007/4/17
Scene Modeling for a Single View
Digital Visual Effects, Spring 2008 Yung-Yu Chuang 2008/4/15
Two-view geometry Computer Vision Spring 2018, Lecture 10
Epipolar geometry.
Projective geometry Readings
Announcements list – let me know if you have NOT been getting mail
Multi-view geometry.
Lecture 8: Image alignment
Announcements Project 2 extension: Friday, Feb 8
Presentation transcript:

CSE 576, Spring 2008Projective Geometry1 Lecture slides by Steve Seitz (mostly) Lecture presented by Rick Szeliski

CSE 576, Spring 2008Projective Geometry2 Final project ideas Discussion by Steve Seitz and Rick Szeliski …

CSE 576, Spring 2008Projective Geometry3 Projective geometry Readings Mundy, J.L. and Zisserman, A., Geometric Invariance in Computer Vision, Appendix: Projective Geometry for Machine Vision, MIT Press, Cambridge, MA, 1992, (read , 23.10) –available online: Ames Room

CSE 576, Spring 2008Projective Geometry4 Projective geometry—what’s it good for? Uses of projective geometry Drawing Measurements Mathematics for projection Undistorting images Focus of expansion Camera pose estimation, match move Object recognition

CSE 576, Spring 2008Projective Geometry5 Applications of projective geometry Vermeer’s Music Lesson Reconstructions by Criminisi et al.

CSE 576, Spring 2008Projective Geometry Measurements on planes Approach: unwarp then measure What kind of warp is this?

CSE 576, Spring 2008Projective Geometry7 Image rectification To unwarp (rectify) an image solve for homography H given p and p’ solve equations of the form: wp’ = Hp –linear in unknowns: w and coefficients of H –H is defined up to an arbitrary scale factor –how many points are necessary to solve for H? p p’ work out on board

CSE 576, Spring 2008Projective Geometry8 Solving for homographies

CSE 576, Spring 2008Projective Geometry9 Solving for homographies Ah0 Defines a least squares problem: 2n × 9 92n Since h is only defined up to scale, solve for unit vector ĥ Solution: ĥ = eigenvector of A T A with smallest eigenvalue Works with 4 or more points

CSE 576, Spring 2008Projective Geometry10 (0,0,0) The projective plane Why do we need homogeneous coordinates? represent points at infinity, homographies, perspective projection, multi-view relationships What is the geometric intuition? a point in the image is a ray in projective space (sx,sy,s) Each point (x,y) on the plane is represented by a ray (sx,sy,s) –all points on the ray are equivalent: (x, y, 1)  (sx, sy, s) image plane (x,y,1) -y x -z

CSE 576, Spring 2008Projective Geometry11 Projective lines What does a line in the image correspond to in projective space? A line is a plane of rays through origin –all rays (x,y,z) satisfying: ax + by + cz = 0 A line is also represented as a homogeneous 3-vector l lp

CSE 576, Spring 2008Projective Geometry12 l Point and line duality A line l is a homogeneous 3-vector It is  to every point (ray) p on the line: l p=0 p1p1 p2p2 What is the intersection of two lines l 1 and l 2 ? p is  to l 1 and l 2  p = l 1  l 2 Points and lines are dual in projective space given any formula, can switch the meanings of points and lines to get another formula l1l1 l2l2 p What is the line l spanned by rays p 1 and p 2 ? l is  to p 1 and p 2  l = p 1  p 2 l is the plane normal

CSE 576, Spring 2008Projective Geometry13 Ideal points and lines Ideal point (“point at infinity”) p  (x, y, 0) – parallel to image plane It has infinite image coordinates (sx,sy,0) -y x -z image plane Ideal line l  (a, b, 0) – parallel to image plane (a,b,0) -y x -z image plane Corresponds to a line in the image (finite coordinates) –goes through image origin (principle point)

CSE 576, Spring 2008Projective Geometry14 Homographies of points and lines Computed by 3x3 matrix multiplication To transform a point: p’ = Hp To transform a line: lp=0  l’p’=0 –0 = lp = lH -1 Hp = lH -1 p’  l’ = lH -1 –lines are transformed by postmultiplication of H -1

CSE 576, Spring 2008Projective Geometry15 3D projective geometry These concepts generalize naturally to 3D Homogeneous coordinates –Projective 3D points have four coords: P = (X,Y,Z,W) Duality –A plane N is also represented by a 4-vector –Points and planes are dual in 3D: N P=0 Projective transformations –Represented by 4x4 matrices T: P’ = TP, N’ = N T -1

CSE 576, Spring 2008Projective Geometry16 3D to 2D: “perspective” projection Matrix Projection: What is not preserved under perspective projection? What IS preserved?

CSE 576, Spring 2008Projective Geometry17 Vanishing points image plane line on ground plane vanishing point v Vanishing point projection of a point at infinity camera center C

CSE 576, Spring 2008Projective Geometry18 Vanishing points Properties Any two parallel lines have the same vanishing point v The ray from C through v is parallel to the lines An image may have more than one vanishing point –in fact every pixel is a potential vanishing point image plane camera center C line on ground plane vanishing point v line on ground plane

CSE 576, Spring 2008Projective Geometry19 Vanishing lines Multiple Vanishing Points Any set of parallel lines on the plane define a vanishing point The union of all of vanishing points from lines on the same plane is the vanishing line –For the ground plane, this is called the horizon v1v1 v2v2

CSE 576, Spring 2008Projective Geometry20 Vanishing lines Multiple Vanishing Points Different planes define different vanishing lines

CSE 576, Spring 2008Projective Geometry21 Computing vanishing points V P0P0 D

CSE 576, Spring 2008Projective Geometry22 Computing vanishing points Properties P  is a point at infinity, v is its projection They depend only on line direction Parallel lines P 0 + tD, P 1 + tD intersect at P  V P0P0 D

CSE 576, Spring 2008Projective Geometry23 Computing the horizon Properties l is intersection of horizontal plane through C with image plane Compute l from two sets of parallel lines on ground plane All points at same height as C project to l –points higher than C project above l Provides way of comparing height of objects in the scene ground plane l C

CSE 576, Spring 2008Projective Geometry24

CSE 576, Spring 2008Projective Geometry25 Fun with vanishing points

CSE 576, Spring 2008Projective Geometry26 Perspective cues

CSE 576, Spring 2008Projective Geometry27 Perspective cues

CSE 576, Spring 2008Projective Geometry28 Perspective cues

CSE 576, Spring 2008Projective Geometry29 Comparing heights VanishingPoint

CSE 576, Spring 2008Projective Geometry30 Measuring height Camera height What is the height of the camera?

CSE 576, Spring 2008Projective Geometry31 q1q1 Computing vanishing points (from lines) Intersect p 1 q 1 with p 2 q 2 v p1p1 p2p2 q2q2 Least squares version Better to use more than two lines and compute the “closest” point of intersection See notes by Bob Collins for one good way of doing this:Bob Collins –

CSE 576, Spring 2008Projective Geometry32 C Measuring height without a ruler ground plane Compute Z from image measurements Need more than vanishing points to do this Z

CSE 576, Spring 2008Projective Geometry33 The cross ratio A Projective Invariant Something that does not change under projective transformations (including perspective projection) P1P1 P2P2 P3P3 P4P4 The cross-ratio of 4 collinear points Can permute the point ordering 4! = 24 different orders (but only 6 distinct values) This is the fundamental invariant of projective geometry

CSE 576, Spring 2008Projective Geometry34 vZvZ r t b image cross ratio Measuring height B (bottom of object) T (top of object) R (reference point) ground plane H C scene cross ratio  scene points represented as image points as R

CSE 576, Spring 2008Projective Geometry35 Measuring height RH vzvz r b t image cross ratio H b0b0 t0t0 v vxvx vyvy vanishing line (horizon)

CSE 576, Spring 2008Projective Geometry36 Measuring height vzvz r b t0t0 vxvx vyvy vanishing line (horizon) v t0t0 m0m0 What if the point on the ground plane b 0 is not known? Here the guy is standing on the box, height of box is known Use one side of the box to help find b 0 as shown above b0b0 t1t1 b1b1

CSE 576, Spring 2008Projective Geometry37 Computing (X,Y,Z) coordinates

CSE 576, Spring 2008Projective Geometry38 3D Modeling from a photograph

CSE 576, Spring 2008Projective Geometry39 Camera calibration Goal: estimate the camera parameters Version 1: solve for projection matrix Version 2: solve for camera parameters separately –intrinsics (focal length, principle point, pixel size) –extrinsics (rotation angles, translation) –radial distortion

CSE 576, Spring 2008Projective Geometry40 Vanishing points and projection matrix = v x (X vanishing point) Z3Y2, similarly, v π v π  Not So Fast! We only know v’s and o up to a scale factor Need a bit more work to get these scale factors…

CSE 576, Spring 2008Projective Geometry41 Finding the scale factors… Let’s assume that the camera is reasonable Square pixels Image plane parallel to sensor plane Principal point in the center of the image

CSE 576, Spring 2008Projective Geometry42 Solving for f Orthogonal vectors

CSE 576, Spring 2008Projective Geometry43 Solving for a, b, and c Norm = 1/a Solve for a, b, c Divide the first two rows by f, now that it is known Now just find the norms of the first three columns Once we know a, b, and c, that also determines R How about d? Need a reference point in the scene

CSE 576, Spring 2008Projective Geometry44 Solving for d Suppose we have one reference height H E.g., we known that (0, 0, H) gets mapped to (u, v) Finally, we can solve for t

CSE 576, Spring 2008Projective Geometry45 Calibration using a reference object Place a known object in the scene identify correspondence between image and scene compute mapping from scene to image Issues must know geometry very accurately must know 3D->2D correspondence

CSE 576, Spring 2008Projective Geometry46 Chromaglyphs Courtesy of Bruce Culbertson, HP Labs

CSE 576, Spring 2008Projective Geometry47 Estimating the projection matrix Place a known object in the scene identify correspondence between image and scene compute mapping from scene to image

CSE 576, Spring 2008Projective Geometry48 Direct linear calibration

CSE 576, Spring 2008Projective Geometry49 Direct linear calibration Can solve for m ij by linear least squares use eigenvector trick that we used for homographies

CSE 576, Spring 2008Projective Geometry50 Direct linear calibration Advantage: Very simple to formulate and solve Disadvantages: Doesn’t tell you the camera parameters Doesn’t model radial distortion Hard to impose constraints (e.g., known focal length) Doesn’t minimize the right error function For these reasons, nonlinear methods are preferred Define error function E between projected 3D points and image positions –E is nonlinear function of intrinsics, extrinsics, radial distortion Minimize E using nonlinear optimization techniques –e.g., variants of Newton’s method (e.g., Levenberg Marquart)

CSE 576, Spring 2008Projective Geometry51 Alternative: multi-plane calibration Images courtesy Jean-Yves Bouguet, Intel Corp. Advantage Only requires a plane Don’t have to know positions/orientations Good code available online! –Intel’s OpenCV library: –Matlab version by Jean-Yves Bouget: –Zhengyou Zhang’s web site:

CSE 576, Spring 2008Projective Geometry52 Some Related Techniques Image-Based Modeling and Photo Editing Mok et al., SIGGRAPH Single View Modeling of Free-Form Scenes Zhang et al., CVPR Tour Into The Picture Anjyo et al., SIGGRAPH