390 likes | 412 Views
This course delves into the Direct Linear Transformation (DLT) method for 2D homography matrix calculation, importance of normalization, error analysis, Maximum Likelihood Estimation, Gold Standard algorithm, and Monte Carlo simulation for computer vision applications. The geometric principles and statistical methods improve measurement accuracy in computer vision applications. Learn about uncertainty analysis, error evaluation in image processing, and practical algorithms for geometric computations. Follow a comprehensive overview of single-view measurements and their applications in computer vision.
E N D
Geometric Computer Vision Marc Pollefeys Fall 2009 http://www.inf.ethz.ch/personal/pomarc/courses/gcv/
From Last Class Varing focus does change the focal length for our image formation (probably very slightly).
Measuring in a plane Need to compute H as well as uncertainty
Direct Linear Transformation(DLT) • Equations are linear in h • Only 2 out of 3 are linearly independent • (indeed, 2 eq/pt) (only drop third row if wi’≠0) • Holds for any homogeneous representation, e.g. (xi’,yi’,1)
Direct Linear Transformation(DLT) • Solving for H size A is 8x9 or 12x9, but rank 8 Trivial solution is h=09T is not interesting 1-D null-space yields solution of interest pick for example the one with
Direct Linear Transformation(DLT) • Over-determined solution No exact solution because of inexact measurement i.e. “noise” • Find approximate solution • Additional constraint needed to avoid 0, e.g. • not possible, so minimize
DLT algorithm • Objective • Given n≥4 2D to 2D point correspondences {xi↔xi’}, determine the 2D homography matrix H such that xi’=Hxi • Algorithm • For each correspondence xi ↔xi’ compute Ai. Usually only two first rows needed. • Assemble n 2x9 matrices Ai into a single 2nx9 matrix A • Obtain SVD of A. Solution for h is last column of V • Determine H from h
Importance of normalization 1 ~104 ~102 ~102 ~102 ~102 ~102 1 ~104 orders of magnitude difference! Monte Carlo simulation for identity computation based on 5 points (not normalized ↔ normalized)
Normalized DLT algorithm • Objective • Given n≥4 2D to 2D point correspondences {xi↔xi’}, determine the 2D homography matrix H such that xi’=Hxi • Algorithm • Normalize points • Apply DLT algorithm to • Denormalize solution
measured coordinates estimated coordinates true coordinates Error in one image Symmetric transfer error Reprojection error Geometric distance d(.,.) Euclidean distance (in image) e.g. calibration pattern
Maximum Likelihood Estimate Statistical cost function and Maximum Likelihood Estimation • Optimal cost function related to noise model • Assume zero-mean isotropic Gaussian noise (assume outliers removed) Error in one image
Maximum Likelihood Estimate Statistical cost function and Maximum Likelihood Estimation • Optimal cost function related to noise model • Assume zero-mean isotropic Gaussian noise (assume outliers removed) Error in both images
Gold Standard algorithm • Objective • Given n≥4 2D to 2D point correspondences {xi↔xi’}, determine the Maximum Likelyhood Estimation of H • (this also implies computing optimal xi’=Hxi) • Algorithm • Initialization: compute an initial estimate using normalized DLT or RANSAC • Geometric minimization of reprojection error: • ● Minimize using Levenberg-Marquardt over 9 entries of h • or Gold Standard error: • ● compute initial estimate for optimal {xi} • ● minimize cost over {H,x1,x2,…,xn} • ● if many points, use sparse method
Uncertainty: error in one image • Estimate the transformation from the data • Compute Jacobian , evaluated at • The covariance matrix of the estimated is given by
Uncertainty: error in both images separate in homography and point parameters
Error in two images (if h and x independent, i.e. new points) Using covariance matrix in point transfer Error in one image
Example: s=1 pixel S=0.5cm (Criminisi’97)
Example: s=1 pixel S=0.5cm (Criminisi’97)
Example: (Criminisi’97)
Monte Carlo estimation of covariance • To be used when previous assumptions do not hold (e.g. non-flat within variance) or to complicate to compute. • Simple and general, but expensive • Generate samples according to assumed noise distribution, carry out computations, observe distribution of result
Background: Affine Geometry • Invariant properties: Parallelism, ratio of areas, ratio of lengths on collinear or parallel lines • Invariant properties from projective transformation: cross ratio
Background: Projective geometry of 1D 3DOF (2x2-1) The cross ratio Invariant under projective transformations
Vanishing points • Under perspective projection points at infinity can have a finite image • The projection of 3D parallel lines intersect at vanishing points in the image
Basic geometry • Allows to relate height of point to height of camera
Homology mapping between parallel planes • Allows to transfer point from one plane to another
Forensic applications 190.6±2.9 cm 190.6±4.1 cm A. Criminisi, I. Reid, and A. Zisserman. Computing 3D euclidean distance from a single view. Technical Report OUEL 2158/98, Dept. Eng. Science, University of Oxford, 1998.
Example courtesy of Antonio Criminisi
La Flagellazione di Cristo (1460) Galleria Nazionale delle Marche by Piero della Francesca (1416-1492) http://www.robots.ox.ac.uk/~vgg/projects/SingleView/
More interesting stuff • Criminisi demo http://www.robots.ox.ac.uk/~vgg/presentations/spie98/criminis/index.html • work by Derek Hoiem on learning single view 3D structure and apps http://www.cs.cmu.edu/~dhoiem/ • similar work by Ashutosh Saxena on learning single view depth http://ai.stanford.edu/~asaxena/learningdepth/
Next class • Feature tracking and matching