Robot Vision: Projective Geometry

Robot Vision: Projective Geometry

Robot Vision: Projective Geometry Ass.Prof. Friedrich Fraundorfer SS 2018 1 Learning goals . Understand homogeneous coordinates . Understand points, line, plane parameters and interpret them geometrically . Understand point, line, plane interactions geometrically . Analytical calculations with lines, points and planes . Understand the difference between Euclidean and projective space . Understand the properties of parallel lines and planes in projective space . Understand the concept of the line and plane at infinity 2 Outline . 1D projective geometry . 2D projective geometry ▫ Homogeneous coordinates ▫ Points, Lines ▫ Duality . 3D projective geometry ▫ Points, Lines, Planes ▫ Duality ▫ Plane at infinity 3 Literature . Multiple View Geometry in Computer Vision. Richard Hartley and Andrew Zisserman. Cambridge University Press, March 2004. Mundy, J.L. and Zisserman, A., Geometric Invariance in Computer Vision, Appendix: Projective Geometry for Machine Vision, MIT Press, Cambridge, MA, 1992 . Available online: www.cs.cmu.edu/~ph/869/papers/zisser-mundy.pdf 4 Motivation – Image formation [Source: Charles Gunn] 5 Motivation – Parallel lines [Source: Flickr] 6 Motivation – Epipolar constraint X world point epipolar plane x x’ x‘TEx=0 C T C’ R 7 Euclidean geometry vs. projective geometry Definitions: . Geometry is the teaching of points, lines, planes and their relationships and properties (angles) . Geometries are defined based on invariances (what is changing if you transform a configuration of points, lines etc.) . Geometric transformations of Euclidean geometry preserve distances . Geometric transformations of projective geometry do NOT preserve distances . Projective geometry was developed to explain the perspective changes of three-dimensional objects when projected to a plane. 8 Difference between Euclidean and projective transformation Euclidean transformation Projective transformation 9 1D Euclidean geometry x p1 p2 p3 p4 Euclidean coordinate: p1=[x] 10 1D projective geometry w W=1 p1 p2 p3 p4 x homogeneous coordinate: p1=[x,w] ≈ [x,1] 11 2D projective geometry . Homogeneous coordinates . Points, Lines . Duality 12 Homogeneous coordinates . projective plane = Euclidean plane + a new line of points . The projective space associated to R3 is called the projective plane P2. w y ℝ 2 O2 p x 1 v O3 u image coordinate: p=[x,y] homogeneous coordinate: p=[u,v,w] ≈ [u,v,1] 13 Points . A point in the image is a ray in projective space -y (wx,wy,w) (x,y,1) (0,0,0) x -z image plane • Each point (x,y) on the plane is represented by a ray (wx,wy,w) – all points on the ray are equivalent: (x, y, 1) (wx, wy, w) 14 Lines . A line in the image plane is defined by the equation ax + by + cz = 0 in projective space . [a,b,c] are the line parameters . A point [x,y,1] lies on the line if the equation ax + by + cz = 0 is satisfied . This can be written in vector notation with a dot product: x 0 a b cy z lT p . A line is also represented as a homogeneous 3-vector l 15 Calculations with lines and points . Defining a line by two points 푙 = 푥 × 푦 . Intersection of two lines 푥 = 푙 × 푚 . Proof: 푙 = 푥 × 푦 푥푇 푥 × 푦 = 푦푇 푥 × 푦 = 0 (scalar triple product) 푥푇푙 = 푦푇푙 = 0 16 Geometric interpretation of line parameters [a,b,c] ▫ A line l is a homogeneous 3-vector, which is a ray in projective space ▫ It is to every point (ray) p on the line: l p=0 p p 2 l 1 What is the line l spanned by rays p1 and p2 ? • l is to p1 and p2 l = p1 p2 • l is the plane normal 17 Point and line duality Duality principle: . To any theorem of 2-dimensional projective geometry there corresponds a dual theorem, which may be derived by interchanging the role of points and lines in the original theorem x l xTl 0 lTx 0 x l l' l x x' 18 Point and line duality p p2 l1 p l 1 l2 What is the line l spanned by rays p1 and p2 ? • l is to p1 and p2 l = p1 p2 • l is the plane normal What is the intersection of two lines l1 and l2 ? • p is to l1 and l2 p = l1 l2 Points and lines are dual in projective space • given any formula, can switch the meanings of points and 19 lines to get another formula Intersection of parallel lines . l and m are two parallel lines 푙 = (푎, 푏, 푐)푇 푒. 푔. (−1,0,1)푇 (a line parallel to y-axis) 푚 = (푎, 푏, 푑)푇 푒. 푔. (−1,0,2)푇 (another line parallel to y-axis) . Intersection of l and m 푥 = 푙 × 푚 푎 푎 푏푑 − 푏푐 푏 x 1 x 2 푥 = 푏 × 푏 = 푎푐 − 푎푑 = 푑 − 푐 −푎 푐 푑 푎푏 − 푎푏 0 . A point (x,y,0) is called an ideal point, it does not lie in the image plane. But where does it lie then 20 Ideal points and line at infinity -v (wx,wy,0) -w u image plane . Ideal point (“point at infinity”) ▫ p (x, y, 0) – parallel to image plane ▫ It has infinite image coordinates . All ideal points lie at the line at infinity . l (0, 0, 1) – normal to the image plane . Why is it called a line at infinity? 21 Projective transformations . Mapping between planes x’=Hx x x’ O y’ 휋 y x’ x 22 Projective transformations Definition: Projective transformation x' h h h x 1 11 12 13 1 x' h h h x 2 21 22 23 2 or x' H x x'3 h31 h32 h33 x3 8DOF projectivity=collineation=projective transformation=homography To transform a point: p’ = Hp To transform a line: lp=0 l’p’=0 0 = lp = lH-1Hp = lH-1p’ l’ = lH-1 lines are transformed by postmultiplication of H-1 23 Overview 2D transformations h11 h12 h13 Concurrency, collinearity, Projective h h h order of contact (intersection, 8dof 21 22 23 tangency, inflection, etc.), cross ratio h31 h32 h33 Parallellism, ratio of areas, a11 a12 tx ratio of lengths on parallel Affine a a t lines (e.g midpoints), linear 6dof 21 22 y combinations of vectors 0 0 1 (centroids). sr sr t 11 12 x Ratios of lengths, angles. Similarity sr sr t 4dof 21 22 y 0 0 1 r11 r12 tx Euclidean r r t lengths, areas. 3dof 21 22 y 0 0 1 24 Effects of projective transformations . Foreshortening effects can be imaged easily with primitive shapes . But, how does an circle get transformed? 25 Effects of projective transformations Center of projected circle Ellipse center 2D circle Circle after projective transformation 26 3D projective geometry . Points, Lines, Planes . Duality . Plane at infinity . Image formation 27 3D projective geometry . The concepts of 2D generalize naturally to 3D ▫ The axioms of geometry can be applied to 3D as well . 3D projective space = 3D Euclidean space + plane at infinity ▫ Not so simple to visualize anymore (4D space) . Entities are now points, lines and planes ▫ Projective 3D points have four coordinates: P = (x,y,z,w) . Points, lines, and planes lead to more intersection and joining options that in the 2D case 28 Planes . Plane equation Π1푋+Π2푌 + Π3푍+Π4=0 Π푇 푋 =0 ▫ Expresses that point X is on plane Π . Plane parameters Π = [Π1, Π2, Π3, Π4] ▫ Plane parameters are normal vector + distance from origin 29 Join and incidence relations with planes . A plane is defined uniquely by the join of three points, or the join of a line and point in general position . Two distinct planes intersect in a unique line . Three distinct planes intersect in a unique point 30 Three points define a plane . X1,X2,X3 are three distinct points, each has to fullfil the incidence equation. Equations can be stacked. 푇 푋1 푇 푋2 Π = 0 (3푥4)(4푥1) 푇 푋3 ▫ Plane parameters are the solution vector to this linear equation system (e.g. SVD) . Points and planes are dual 푇 Π1 푇 Π2 푋 = 0 푇 Π3 31 Lines . Lines are complicated . Lines and points are not dual in 3D projective space . Lines are represented by a 4x4 matrix, called Plücker matrix . Computation of the line matrix from two points A,B 퐿 = 퐴퐵푇 − 퐵퐴푇 4푥4 푚푎푡푟푖푥 . Matrix is skew-symmetric . Example line of the x-axis ▫ x1 = [0 0 0 1]T x2 = [1 0 0 1]T L = x1*x2T-x2*x1T L = 0 0 0 -1 0 0 0 0 0 0 0 0 1 0 0 0 32 Lines . Points and planes are dual, we can get new equations by substituting points with planes 퐿 = 퐴퐵푇 − 퐵퐴푇 퐴, 퐵 푎푟푒 푝표푖푛푡푠 퐿∗ = 푃푄푇 − 푄푃푇 푃, 푄 푎푟푒 푝푙푎푛푒푠 . The intersection of two planes P,Q is a line . Lines are self dual, the same line L has a dual representation L* . The matrix L can be directly computed from the entries of L* 33 Point, planes and lines . A plane can be defined by the join of a point X and a line L Π = 퐿∗푋 . A point can be defined by the intersection of a plane with a line L X = LΠ 34 Plane at infinity . Parallel lines and parallel planes intersect at Π∞ . Plane parameters of Π∞ 푇 Π∞ = (0,0,0,1) . It is a plane that contains all the direction vectors 퐷 = (푥1, 푥2, 푥3,0)푇, vectors that originate from the origin of 4D space . Try to imagine an extension of the 2D case (see illustration below) to the 3D case… -v (wx,wy,0) -w u image plane 35 Recap - Learning goals . Understand homogeneous coordinates . Understand points, line, plane parameters and interpret them geometrically .

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    36 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us