Robot Vision SS 2008 Matthias Rüther 1 ROBOT VISION Lesson 2: Projective Geometry Matthias Rüther Slides courtesy of Marc Pollefeys Department of Computer.

Slides:



Advertisements
Similar presentations
Projective 3D geometry class 4
Advertisements

Epipolar Geometry.
3D Geometry for Computer Graphics
Invariants (continued).
1 A camera is modeled as a map from a space pt (X,Y,Z) to a pixel (u,v) by ‘homogeneous coordinates’ have been used to ‘treat’ translations ‘multiplicatively’
3D reconstruction.
Primitives Behaviour at infinity HZ 2.2 Projective DLT alg Invariants
Recovery of affine and metric properties from images in 2D Projective space Ko Dae-Won.
Robot Vision SS 2005 Matthias Rüther 1 ROBOT VISION Lesson 3: Projective Geometry Matthias Rüther Slides courtesy of Marc Pollefeys Department of Computer.
Projective Geometry- 3D
Recovering metric and affine properties from images
Structure from motion.
Recovering metric and affine properties from images
Computer Graphics Recitation 5.
Multiple View Geometry Projective Geometry & Transformations of 2D Vladimir Nedović Intelligent Systems Lab Amsterdam (ISLA) Informatics Institute,
1 Basic geometric concepts to understand Affine, Euclidean geometries (inhomogeneous coordinates) projective geometry (homogeneous coordinates) plane at.
The 2D Projective Plane Points and Lines.
Multiple View Geometry Marc Pollefeys University of North Carolina at Chapel Hill Modified by Philippos Mordohai.
Projective 2D & 3D geometry course 2
Robot Vision SS 2008 Matthias Rüther 1 ROBOT VISION Lesson 6: Shape from Stereo Matthias Rüther Slides partial courtesy of Marc Pollefeys Department of.
3D reconstruction class 11
Projective 2D geometry (cont’) course 3
Parameter estimation class 5 Multiple View Geometry Comp Marc Pollefeys.
Projective geometry- 2D Acknowledgements Marc Pollefeys: for allowing the use of his excellent slides on this topic
Epipolar geometry. (i)Correspondence geometry: Given an image point x in the first view, how does this constrain the position of the corresponding point.
Structure from motion. Multiple-view geometry questions Scene geometry (structure): Given 2D point matches in two or more images, where are the corresponding.
Uncalibrated Geometry & Stratification Sastry and Yang
Multiple View Geometry Marc Pollefeys University of North Carolina at Chapel Hill Modified by Philippos Mordohai.
Ch 7.3: Systems of Linear Equations, Linear Independence, Eigenvalues
Multiple View Geometry
Projective 2D geometry Appunti basati sulla parte iniziale del testo
Multiple View Geometry Marc Pollefeys University of North Carolina at Chapel Hill Modified by Philippos Mordohai.
3D photography Marc Pollefeys Fall 2007
Projective Geometry and Camera model Class 2
The Image Formation Pipeline
3D photography Marc Pollefeys Fall 2004 / Comp Tue & Thu 9:30-10:45
Projective 2D geometry course 2 Multiple View Geometry Comp Marc Pollefeys.
Project Geometry Jiecai He (Jake)
Projective 2D geometry course 2 Multiple View Geometry Comp Marc Pollefeys.
Projective Geometry and Camera Models
Boyce/DiPrima 9th ed, Ch 7.3: Systems of Linear Equations, Linear Independence, Eigenvalues Elementary Differential Equations and Boundary Value Problems,
1 February 24 Matrices 3.2 Matrices; Row reduction Standard form of a set of linear equations: Chapter 3 Linear Algebra Matrix of coefficients: Augmented.
Projective Geometry and Geometric Invariance in Computer Vision Babak N. Araabi Electrical and Computer Eng. Dept. University of Tehran Workshop on image.
Projective cameras Motivation Elements of Projective Geometry Projective structure from motion Planches : –
Homogeneous Coordinates (Projective Space) Let be a point in Euclidean space Change to homogeneous coordinates: Defined up to scale: Can go back to non-homogeneous.
Autonomous Navigation for Flying Robots Lecture 2.2: 2D Geometry
Matrices CHAPTER 8.1 ~ 8.8. Ch _2 Contents  8.1 Matrix Algebra 8.1 Matrix Algebra  8.2 Systems of Linear Algebra Equations 8.2 Systems of Linear.
Projective 3D geometry class 4
Robot Vision SS 2007 Matthias Rüther 1 ROBOT VISION Lesson 6a: Shape from Stereo, short summary Matthias Rüther Slides partial courtesy of Marc Pollefeys.
Single View Geometry Course web page: vision.cis.udel.edu/cv April 9, 2003  Lecture 20.
Two-view geometry Epipolar geometry F-matrix comp. 3D reconstruction
Multi-linear Systems and Invariant Theory in the Context of Computer Vision and Graphics CS329 Amnon Shashua.
EECS 274 Computer Vision Affine Structure from Motion.
Projective Geometry Hu Zhan Yi. Entities At Infinity The ordinary space in which we lie is Euclidean space. The parallel lines usually do not intersect.
ROBOT VISION Lesson 4: Camera Models and Calibration Matthias Rüther Slides partial courtesy of Marc Pollefeys Department of Computer Science University.
1 Overview Introduction to projective geometry 1 view geometry (calibration, …) 2-view geometry (stereo, motion, …) 3- and N-view geometry Autocalibration.
Instructor: Mircea Nicolescu Lecture 8 CS 485 / 685 Computer Vision.
Instructor: Mircea Nicolescu Lecture 9
Parameter estimation class 5 Multiple View Geometry CPSC 689 Slides modified from Marc Pollefeys’ Comp
Projective 2D geometry (cont’) course 3 Multiple View Geometry Modified from Marc Pollefeys’s slides.
Projective 2D geometry course 2 Multiple View Geometry Comp Marc Pollefeys.
CS479/679 Pattern Recognition Dr. George Bebis
Homogeneous Coordinates (Projective Space)
Parameter estimation class 5
Epipolar geometry.
Epipolar Geometry class 11
CS Visual Recognition Projective Geometry Projective Geometry is a mathematical framework describing image formation by perspective camera. Under.
Geometric Camera Models
3D reconstruction class 11
Chapter 3 Linear Algebra
Presentation transcript:

Robot Vision SS 2008 Matthias Rüther 1 ROBOT VISION Lesson 2: Projective Geometry Matthias Rüther Slides courtesy of Marc Pollefeys Department of Computer Science University of North Carolina, Chapel Hill

Robot Vision SS 2008 Matthias Rüther 2 Content  Linear Algebra: basic vector and matrix operations  Background: Projective geometry (2D, 3D), Parameter estimation, Algorithm evaluation.  Single View: Camera model, Calibration, Single View Geometry.  Two Views: Epipolar Geometry, 3D reconstruction, Computing F, Computing structure, Plane and homographies.  Three Views: Trifocal Tensor, Computing T.  More Views: N-Linearities, Multiple view reconstruction, Bundle adjustment, auto-calibration, Dynamic SfM, Cheirality, Duality

Robot Vision SS 2008 Matthias Rüther 3 Vector Basics v x2x2 x1x1 v v‘ v+v‘ v w Φ

Robot Vision SS 2008 Matthias Rüther 4 Vector Spaces  Linear combination –Given vectors v 1,..., v k and scalars c 1,..., c k, the vector v  c 1 v 1  c 2 v 2 ...  c k v k is obtained as a linear combination of the vectors v 1,..., v k –Example: all vectors in R 3 are linear combinations of i  (1, 0, 0), j  (0, 1, 0), and k  (0, 0, 1) v  (a, b, c)  a(1, 0, 0)  b(0, 1, 0)  c(0, 0, 1)  Spanning –S=(v 1, v 2,..., v k ) spans a space W if every vector in W can be written as a linear combination of the vectors in S  Linear Indepedence –v1,..., vk is linearly indepedent if c 1 v 1  c 2 v 2 ...  c k v k  0 implies c 1  c 2 ...  c k  0

Robot Vision SS 2008 Matthias Rüther 5 Vector Spaces  Basis –S=(v 1,..., v k ) is a basis for a vector space W if v j are linearly indepedent S spans W ! S need not be orthogonal !  Dimension –All bases for W have the same number of vectors. –The dimension of W is the size of its sets of basis vectors.  Coordinates Relative to a Basis –If S=(v 1,..., v n ) is a basis for a vector space W, then any v  W has a unique vector expansion:

Robot Vision SS 2008 Matthias Rüther 6  Example: –In R 3 the vectors relative toand relative to are identical. Vector Spaces

Robot Vision SS 2008 Matthias Rüther 7 Matrix Basics  Addition/Subtraction C  A  B implies c ij  a ij  b ij C  A  B implies c ij  a ij  b ij  Multiplication C m  q = A m  n *B n  q implies  Determinants –det(A)=0  A is singular  A is not invertible –det(A- I) is characteristic polynomial, roots are the eigenvalues

Robot Vision SS 2008 Matthias Rüther 8 Matrix Basics  Inverse –AA  1 =A  1 A=I –Exists, iff det(A) != 0, A is not singular –Properties:  Pseudo-Inverse A   (A T A)  1 A T A + A=I  Rank Maximum number of linearly independent columns or rows. –If A is m  n, rank(A) <= min(m,n) –If A is n  n, rank(A) = n iff A nonsingular (invertible, det(A)!=0) –If A is n  n, rank(A) < n iff A singular

Robot Vision SS 2008 Matthias Rüther 9 Solving Linear Equation Systems  Common problem: solve the equation system A m  n x=b –If m>n, the system is over-determined –If m<n, the system is under-determined –If b=0, the system is homogeneous –The system has either no solutions, exactly one or infinitely many –Methods for solving A m  n x=b include Gauss elimination, LU factorization, computing pseudo-inverse using SVD etc.  Conditions for solutions of Ax=b (A is square) –If A is invertible, Ax=b has exactly one solution. –A is invertible  Ax=0 has only trivial solution –If rank(A|b)>rank(A), the system has no solution –If rank(A)<n, and rank(A|b)=rank(A), the system has infinite number of solutions –Ax=0 has non-trivial solutions iff rank(A)<n

Robot Vision SS 2008 Matthias Rüther 10  Points, lines & conics  Transformations & invariants  1D projective geometry and the Cross-ratio Projective 2D Geometry

Robot Vision SS 2008 Matthias Rüther 11  Euclidean 1D vector space: –Geometric Primitives: points –Representation: 1D vector: p = (x) –Transformations: Translation: p‘ = (x+t) Scaling: p‘ = (s*x) Translation and Scaling: p‘ = (s*x+t) 1D Projective Geometry ℝ1ℝ1 p1p1 p2p2 p3p3 p4p4 x p1p1 p2p2 p3p3 p4p4 x p‘ 1 p‘ 2 p‘ 3 p‘ 4 x p‘ 1 p‘ 2 p‘ 3 p‘ 4 x d p1p2

Robot Vision SS 2008 Matthias Rüther 12  1D Projective space: 1D Projective Geometry ℙ1ℙ1 p1p1 p2p2 p3p3 p4p4 x w W=1 Representation: 1D vector: p‘ = (x‘ w‘) T, where p = (x) = (x‘/w‘) e.g. p‘ = (2 1) T = (4 2) T = (1 0,5) T are all equivalent to p = (2)

Robot Vision SS 2008 Matthias Rüther 13 1D Projective Geometry  1D Projective space: –Geometric Primitives: points –Representation: 1D vector: p = (x w) T –Transformations: Translation: p‘ = T * p1DOF Scaling: p‘ = S * p1DOF Translation and Scaling: p‘ = M * p, where M=S*T 2DOF Projective Mapping: p‘ = P * p, where P is a 2x2 Matrix 3DOF

Robot Vision SS 2008 Matthias Rüther 14 1D Projective Geometry  Translation: x w W=1 p‘ 1 p‘ 2 p‘ 3 p‘ 4

Robot Vision SS 2008 Matthias Rüther 15 1D Projective Geometry  Scaling: x w W=1 p‘ 1 p‘ 2 p‘ 3 p‘ 4

Robot Vision SS 2008 Matthias Rüther 16 1D Projective Geometry  Projective Mapping: x w W=1 p‘ 1 p‘ 2 p‘ 3 p‘ 4 Analogy to central projective camera!

Robot Vision SS 2008 Matthias Rüther 17 1D Projective Geometry  Invariants: –transformations form a hierarchy, some geometric features remain unchanged under the transformations –Translation (isometry) Length, overall scale –Translation and Scaling (similarity) Ratio of lengths (d12 : d23) –Projective Mapping (projectivity) Cross ratio (ratio of ratios): d12*d34 = d13*d24

Robot Vision SS 2008 Matthias Rüther 18 Homogeneous coordinates Homogeneous representation of lines equivalence class of vectors, any vector is representative Set of all equivalence classes in R 3  (0,0,0) T forms P 2 Homogeneous representation of points on if and only if The point x lies on the line l if and only if x T l = l T x = 0 Homogeneous coordinates Inhomogeneous coordinates but only 2DOF

Robot Vision SS 2008 Matthias Rüther 19 Points from lines and vice-versa Intersections of lines The intersection of two lines and is Line joining two points The line through two points and is Example

Robot Vision SS 2008 Matthias Rüther 20 Ideal points and the line at infinity Intersections of parallel lines Example Ideal points Line at infinity tangent vector normal direction Note that in P 2 there is no distinction between ideal points and others

Robot Vision SS 2008 Matthias Rüther 21 A model for the projective plane exactly one line through two points exaclty one point at intersection of two lines

Robot Vision SS 2008 Matthias Rüther 22 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

Robot Vision SS 2008 Matthias Rüther 23 Conics Curve described by 2 nd -degree equation in the plane or homogenized or in matrix form with 5DOF:

Robot Vision SS 2008 Matthias Rüther 24 Five points define a conic For each point the conic passes through or stacking constraints yields

Robot Vision SS 2008 Matthias Rüther 25 Tangent lines to conics The line l tangent to C at point x on C is given by l=Cx l x C

Robot Vision SS 2008 Matthias Rüther 26 Dual conics A line tangent to the conic C satisfies Dual conics = line conics = conic envelopes In general ( C full rank):

Robot Vision SS 2008 Matthias Rüther 27 Degenerate conics A conic is degenerate if matrix C is not of full rank e.g. two lines (rank 2) e.g. repeated line (rank 1) Degenerate line conics: 2 points (rank 2), double point (rank1) Note that for degenerate conics

Robot Vision SS 2008 Matthias Rüther 28 Projective transformations A projectivity is an invertible mapping h from P 2 to itself such that three points x 1,x 2,x 3 lie on the same line if and only if h(x 1 ),h(x 2 ),h(x 3 ) do. Definition: A mapping h : P 2  P 2 is a projectivity if and only if there exist a non-singular 3x3 matrix H such that for any point in P 2 reprented by a vector x it is true that h(x)=Hx Theorem: Definition: Projective transformation or 8DOF projectivity=collineation=projective transformation=homography

Robot Vision SS 2008 Matthias Rüther 29 Mapping between planes central projection may be expressed by x’=Hx (application of theorem)

Robot Vision SS 2008 Matthias Rüther 30 Removing projective distortion select four points in a plane with known coordinates (linear in h ij ) (2 constraints/point, 8DOF  4 points needed) Remark: no calibration at all necessary, better ways to compute (see later)

Robot Vision SS 2008 Matthias Rüther 31 More examples

Robot Vision SS 2008 Matthias Rüther 32 Transformation of lines and conics Transformation for lines Transformation for conics Transformation for dual conics For a point transformation

Robot Vision SS 2008 Matthias Rüther 33 A hierarchy of transformations Projective linear group Affine group (last row (0,0,1)) Euclidean group (upper left 2x2 orthogonal) Oriented Euclidean group (upper left 2x2 det 1) Alternative, characterize transformation in terms of elements or quantities that are preserved or invariant e.g. Euclidean transformations leave distances unchanged

Robot Vision SS 2008 Matthias Rüther 34 Class I: Isometries (iso=same, metric=measure) orientation preserving: orientation reversing: special cases: pure rotation, pure translation 3DOF (1 rotation, 2 translation) Invariants: length, angle, area

Robot Vision SS 2008 Matthias Rüther 35 Class II: Similarities (isometry + scale) also know as equi-form (shape preserving) metric structure = structure up to similarity (in literature) 4DOF (1 scale, 1 rotation, 2 translation) Invariants: ratios of length, angle, ratios of areas, parallel lines

Robot Vision SS 2008 Matthias Rüther 36 Class III: Affine transformations non-isotropic scaling! (2DOF: scale ratio and orientation) 6DOF (2 scale, 2 rotation, 2 translation) Invariants: parallel lines, ratios of parallel lengths, ratios of areas

Robot Vision SS 2008 Matthias Rüther 37 Class VI: Projective transformations Action non-homogeneous over the plane 8DOF (2 scale, 2 rotation, 2 translation, 2 line at infinity) Invariants: cross-ratio of four points on a line (ratio of ratio)

Robot Vision SS 2008 Matthias Rüther 38 Action of affinities and projectivities on line at infinity Line at infinity becomes finite, allows to observe vanishing points, horizon, Line at infinity stays at infinity, but points move along line

Robot Vision SS 2008 Matthias Rüther 39 Overview of transformations Projective 8dof Affine 6dof Similarity 4dof Euclidean 3dof Concurrency, collinearity, order of contact (intersection, tangency, inflection, etc.), cross ratio Parallellism, ratio of areas, ratio of lengths on parallel lines (e.g midpoints), linear combinations of vectors (centroids). The line at infinity l ∞ Ratios of lengths, angles. The circular points I,J lengths, areas.