Computer vision: models, learning and inference Chapter 14 The pinhole camera Please send errata to s.prince@cs.ucl.ac.uk
Structure Pinhole camera model Three geometric problems Homogeneous coordinates Solving the problems Exterior orientation problem Camera calibration 3D reconstruction Applications Computer vision: models, learning and inference. ©2011 Simon J.D. Prince 2
Motivation Sparse stereo reconstruction Compute the depth at a set of sparse matching points Computer vision: models, learning and inference. ©2011 Simon J.D. Prince
Instead model impossible but more convenient virtual image Pinhole camera Instead model impossible but more convenient virtual image Real camera image is inverted Computer vision: models, learning and inference. ©2011 Simon J.D. Prince
Pinhole camera terminology Computer vision: models, learning and inference. ©2011 Simon J.D. Prince
Normalized Camera By similar triangles: Computer vision: models, learning and inference. ©2011 Simon J.D. Prince
Are real cameras normalized? Unfortunately real cameras are not normalized They have different sizes, shapes and configurations that lead differences between cameras This means that we don’t know the world ray that corresponds to a particular pixel The calibration of a camera precisely defines these differences
Focal length combines two issues Field of View Pixel Size Computer vision: models, learning and inference. ©2011 Simon J.D. Prince
Focal length parameters Can model both the effect of the distance to the focal plane the density of the receptors with a single focal length parameter f In practice, the receptors may not be square: So use different focal length parameter for x and y dims Computer vision: models, learning and inference. ©2011 Simon J.D. Prince
Offset parameters Current model assumes that pixel (0,0) is where the principal ray strikes the image plane (i.e. the center) Model offset to center Computer vision: models, learning and inference. ©2011 Simon J.D. Prince
Skew parameter Finally, add skew parameter Accounts for image plane being not exactly perpendicular to the principal ray Computer vision: models, learning and inference. ©2011 Simon J.D. Prince
Position and orientation of camera Position w=(u,v,w)T of point in the world is generally not expressed in the frame of reference of the camera. Transform using 3D transformation or Point in frame of reference of camera Point in frame of reference of world Computer vision: models, learning and inference. ©2011 Simon J.D. Prince
Complete pinhole camera model Intrinsic parameters (stored as intrinsic matrix) Extrinsic parameters Computer vision: models, learning and inference. ©2011 Simon J.D. Prince
Complete pinhole camera model For short: Add noise – uncertainty in localizing feature in image Computer vision: models, learning and inference. ©2011 Simon J.D. Prince
http://en.wikipedia.org/wiki/Multivariate_normal_distribution
One additional complication… radial distortion Computer vision: models, learning and inference. ©2011 Simon J.D. Prince
Other types of projection The standard camera we study maps an array of pixels to a family of rays using the pinhole projection But, there are lots of intriguing variants, I’ll just mention a few.
360 degree field of view… Basic approach Take a photo of a parabolic mirror with an orthographic lens (Nayar) Or buy one a lens from a variety of omnicam manufacturers… See http://www.cis.upenn.edu/~kostas/omni.html
Titlt-shift images from Olivo Barbieri and Photoshop imitations Tilt-shift http://www.northlight-images.co.uk/article_pages/tilt_and_shift_ts-e.html http://timelapseblog.com/2011/01/15/11-best-tilt-shift-videos/ Titlt-shift images from Olivo Barbieri and Photoshop imitations
wikipedia
Rotating sensor (or object) Rollout Photographs © Justin Kerr http://research.mayavase.com Also known as “cyclographs”, “peripheral images”
Photofinish
Random Lens Fergus
Grossman
Structure Pinhole camera model Three geometric problems Homogeneous coordinates Solving the problems Exterior orientation problem Camera calibration 3D reconstruction Applications Computer vision: models, learning and inference. ©2011 Simon J.D. Prince 25
Problem 1: Learning extrinsic parameters (exterior orientation) Use maximum likelihood: Computer vision: models, learning and inference. ©2011 Simon J.D. Prince
Problem 2 – Learning intrinsic parameters (calibration) Use maximum likelihood: Computer vision: models, learning and inference. ©2011 Simon J.D. Prince
Calibration Use 3D target with known 3D points Computer vision: models, learning and inference. ©2011 Simon J.D. Prince
Problem 3 – Inferring 3D points (triangulation / reconstruction) Use maximum likelihood: Computer vision: models, learning and inference. ©2011 Simon J.D. Prince
Solving the problems None of these problems can be solved in closed form Can apply non-linear optimization to find best solution but slow and prone to local minima Solution – convert to a new representation (homogeoneous coordinates) where we can solve in closed form. Caution! We are not solving the true problem – finding global minimum of wrong problem. But can use as starting point for non-linear optimization of true problem Computer vision: models, learning and inference. ©2011 Simon J.D. Prince
Structure Pinhole camera model Three geometric problems Homogeneous coordinates Solving the problems Exterior orientation problem Camera calibration 3D reconstruction Applications Computer vision: models, learning and inference. ©2011 Simon J.D. Prince 31
Homogeneous coordinates Convert 2D coordinate to 3D To convert back Computer vision: models, learning and inference. ©2011 Simon J.D. Prince
Geometric interpretation of homogeneous coordinates Computer vision: models, learning and inference. ©2011 Simon J.D. Prince
Pinhole camera in homogeneous coordinates Camera model: In homogeneous coordinates: (linear!) Computer vision: models, learning and inference. ©2011 Simon J.D. Prince
Pinhole camera in homogeneous coordinates Writing out these three equations Eliminate l to retrieve original equations Computer vision: models, learning and inference. ©2011 Simon J.D. Prince
Adding in extrinsic parameters Or for short: Or even shorter: Computer vision: models, learning and inference. ©2011 Simon J.D. Prince
Structure Pinhole camera model Three geometric problems Homogeneous coordinates Solving the problems Exterior orientation problem Camera calibration 3D reconstruction Applications Computer vision: models, learning and inference. ©2011 Simon J.D. Prince 37
Problem 1: Learning extrinsic parameters (exterior orientation) Non-convex Use maximum likelihood:
Exterior orientation Start with camera equation in homogeneous coordinates Pre-multiply both sides by inverse of camera calibration matrix Computer vision: models, learning and inference. ©2011 Simon J.D. Prince 39
Exterior orientation The third equation gives us an expression for l Substitute back into first two lines Computer vision: models, learning and inference. ©2011 Simon J.D. Prince 40
Exterior orientation Linear equation – two equations per point – form system of equations Computer vision: models, learning and inference. ©2011 Simon J.D. Prince 41
Exterior orientation Minimum direction problem of the form , Find minimum of subject to . To solve, compute the SVD and then set to the last column of . Computer vision: models, learning and inference. ©2011 Simon J.D. Prince 42
Converting parameters into proper form Now we extract the values of and from . Problem: the scale is arbitrary and the rows and columns of the rotation matrix may not be orthogonal. Solution: compute SVD and then choose . Use the ratio between the rotation matrix before and after to rescale the translation Use these estimates for start of non-linear optimisation. Computer vision: models, learning and inference. ©2011 Simon J.D. Prince 43
Structure Pinhole camera model Three geometric problems Homogeneous coordinates Solving the problems Exterior orientation problem Camera calibration 3D reconstruction Applications Computer vision: models, learning and inference. ©2011 Simon J.D. Prince 44
Problem 2 – Learning intrinsic parameters (calibration) Use maximum likelihood: Computer vision: models, learning and inference. ©2011 Simon J.D. Prince
Calibration One approach (not very efficient) is to alternately Optimize extrinsic parameters for fixed intrinsic Optimize intrinsic parameters for fixed extrinsic Then use non-linear optimization. Computer vision: models, learning and inference. ©2011 Simon J.D. Prince
Intrinsic parameters Maximum likelihood approach This is a least squares problem. Computer vision: models, learning and inference. ©2011 Simon J.D. Prince
Intrinsic parameters The function is linear w.r.t. intrinsic parameters. Can be written in form Now solve least squares problem Computer vision: models, learning and inference. ©2011 Simon J.D. Prince
Structure Pinhole camera model Three geometric problems Homogeneous coordinates Solving the problems Exterior orientation problem Camera calibration 3D reconstruction Applications Computer vision: models, learning and inference. ©2011 Simon J.D. Prince 49
Problem 3 – Inferring 3D points (triangulation / reconstruction) Use maximum likelihood: Computer vision: models, learning and inference. ©2011 Simon J.D. Prince
Reconstruction Write jth pinhole camera in homogeneous coordinates: Pre-multiply with inverse of intrinsic matrix Computer vision: models, learning and inference. ©2011 Simon J.D. Prince
Reconstruction Last equations gives Substitute back into first two equations Re-arranging get two linear equations for [u,v,w] Solve using >1 cameras and then use non-linear optimization Computer vision: models, learning and inference. ©2011 Simon J.D. Prince
Structure Pinhole camera model Three geometric problems Homogeneous coordinates Solving the problems Exterior orientation problem Camera calibration 3D reconstruction Applications Computer vision: models, learning and inference. ©2011 Simon J.D. Prince 53
Depth from structured light Computer vision: models, learning and inference. ©2011 Simon J.D. Prince
Depth from structured light Computer vision: models, learning and inference. ©2011 Simon J.D. Prince
Depth from structured light Computer vision: models, learning and inference. ©2011 Simon J.D. Prince
Shape from silhouette Computer vision: models, learning and inference. ©2011 Simon J.D. Prince
Shape from silhouette Computer vision: models, learning and inference. ©2011 Simon J.D. Prince
Shape from silhouette Computer vision: models, learning and inference. ©2011 Simon J.D. Prince
Conclusion Pinhole camera model is a non-linear function who takes points in 3D world and finds where they map to in image Parameterized by intrinsic and extrinsic matrices Difficult to estimate intrinsic/extrinsic/depth because non-linear Use homogeneous coordinates where we can get closed form solutions (initial solns only) Computer vision: models, learning and inference. ©2011 Simon J.D. Prince