3d vision
play

3D Vision Torsten Sattler Spring 2018 Schedule Feb 19 - PowerPoint PPT Presentation

3D Vision Torsten Sattler Spring 2018 Schedule Feb 19 Introduction Feb 26 Geometry, Camera Model, Calibration Mar 5 Features, Tracking / Matching Mar 12 Project Proposals by Students Mar 19 Structure from Motion (SfM) + papers Mar 26


  1. 2D Projective Transformations Definition: 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. Theorem: 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 represented by a vector x it is true that h (x)= H x Definition: Projective transformation       x ' 1 h 11 h 12 h 13 x 1        x'  H x x ' 2 h 21 h 22 h 23 x 2       or 8DOF        x ' 3   h 31 h 32 h 33   x 3  projectivity = collineation = proj. transformation = homography

  2. Hierarchy of 2D Transformations transformed invariants squares   h h h 11 12 13 Concurrency, collinearity,   Projective order of contact (intersection, h h h   21 22 23 tangency, inflection, etc.), 8dof   h h h cross ratio   31 32 33 Parallellism, ratio of areas,   a a t ratio of lengths on parallel 11 12 x   Affine lines (e.g. midpoints), linear a a t   6dof 21 22 y combinations of vectors   0 0 1 (centroids),   The line at infinity l ∞   sr sr t 11 12 x Ratios of lengths, angles,   Similarity sr sr t The circular points I,J   4dof 21 22 y   0 0 1     r r t 11 12 x   Euclidean Absolute lengths, angles, r r t   3dof 21 22 y areas   0 0 1  

  3. Fixed Points and Lines H e = λ e (eigenvectors H = fixed points) ( l 1 = l 2  pointwise fixed line) H - T l  l l (eigenvectors H - T = fixed lines)

  4. Application: Removing Perspective Two stages: • From perspective to affine transformation via the line at infinitiy • From affine to similarity transformation via the circular points

  5. Affine Rectification projection affine metric rectification rectification   1 0 0   [ ]   T  ¹ H H 0 1 0 H l l l l , l 0   P A  P 1 2 3 3   l l l   1 2 3

  6. Affine Rectification v 1 l ∞ v 2 l   v 1 ´ v 2 l 1 l 3 v 1  l 1 ´ l 2 v 2  l 3 ´ l 4 l 2 l 4   1 0 0   0 1 0     l l l   1 2 3

  7. Metric Rectification • Need to measure a quantity that is not invariant under affine transformations

  8. The Circular Points The circular points I, J are fixed points under the projective transformation H iff H is a similarity         s cos s sin t 1 1     x             i I H I s sin s cos t i se i I       S y       0 0 1 0 0      

  9. The Circular Points • every circle intersects l ∞ at the “circular points” l ∞ 2 + x 2 2 + dx 1 x 3 + ex 2 x 3 + fx 3 2  0 2 + x 2 2  0 x 1 x 1 x 3  0 ( ) T I  1, i ,0 ( ) T J  1,- i ,0 • Algebraically, encodes orthogonal directions T + i 0,1,0 ( ) ( ) T I  1,0,0

  10. Conic Dual to the Circular Points ∞  * * T   1 0 0 C H C H S S ∞    * C 0 1 0   ∞   0 0 0   * C The dual conic is fixed conic under the ∞ projective transformation H iff H is a similarity * C Note: has 4DOF (det = 0) ∞ l ∞ is the nullvector

  11. Conic Dual to the Circular Points l ∞   1 0 0     + * * T T C IJ JI C 0 1 0 I   ∞ ∞   0 0 0   J ∞  T * * C H C H S S ∞ * C The dual conic is fixed conic under the ∞ projective transformation H iff H is a similarity * C Note: has 4DOF (det = 0) ∞ l ∞ is the nullvector

  12. Measuring Angles via the Dual Conic ( ) ( ) T T l  l m  m 1 , m 2 , m 3 • Euclidean: 1 , l 2 , l 3 1 m 1 + l 2 m 2 l cos   2 + l 2 2 + m 2 ( ) m 1 ( ) 2 2 l 1 l T C  * m cos   • Projective: ( ) m T C  ( ) l T C  * l * m l T C  * m  0 (orthogonal) • Knowing the dual conic on the projective plane, we can measure Euclidean angles!

  13. Metric Rectification A -1 • Dual conic under affinity         *   A t I 0 A T  AA T 0 0    C      0 T 0 T t T 0 T  1   0   1   0  • S=AA T symmetric, estimate from two pairs of l T C  * m  0 orthogonal lines (due to ) Note: Result defined up to similarity

  14. Update to Euclidean Space • Metric space: Measure ratios of distances • Euclidean space: Measure absolute distances • Can we update metric to Euclidean space? • Not without additional information

  15. Important Points so far … • Definition of 2D points and lines • Definition of homogeneous coordinates • Definition of projective space • Effect of transformations on points, lines, conics • Next: Analogous concepts in 3D

  16. Overview • 2D Projective Geometry • 3D Projective Geometry • Camera Models & Calibration

  17. 3D Points and Planes • 2D: duality point - line, 3D: duality point - plane • Homogeneous representation of 3D points and planes π X + π X + π X + π X = 0 1 1 2 2 3 3 4 4 • The point X lies on the plane π if and only if π T X = 0 • The plane π goes through the point X if and only if π T X = 0

  18. Planes from Points T T T π X π = 0, X π = 0 X π = 0 Solve from and 1 2 3   T X   T X 1 1      T π X π 0 (solve as right nullspace of ) T X 2     2     T T X 3 X     3

  19. Points from Planes T T T X π X = 0, π X = 0 π X = 0 Solve from and 1 2 3     T T π π 1 1      T X T π X 0 (solve as right nullspace of ) π     2 2     T T π π     3 3 Representing a plane by its span [ ]  R 4 ´ 3 M  X 1 X 2 X 3 X = M x T π M = 0

  20. Lines in 3D • Representing a line by its span   T A  W λA +   μB T B   • Dual representation (4dof)   T P  W * λP + μQ   T Q   T T * * W W = WW = 0 2 × 2 • Example: X -axis     0 0 0 1 0 0 1 0   W * W     1 0 0 0 0 1 0 0     (Alternative: Plücker representation, details see e.g. H&Z)

  21. Points, Lines and Planes W   W  M   M π = 0 X T X   W   W * X  M 0  M   π T π  

  22. Quadrics and Dual Quadrics X T QX  0 ( Q : 4x4 symmetric matrix) • 9 DOF (up to scale) • In general, 9 points define quadric • det( Q )=0 ↔ degenerate quadric p  QX • tangent plane p T Q * p  0 Q * • Dual quartic: ( adjoint) Q *  Q -1 • relation to quadric (non-degenerate)

  23. Transformation of 3D points, planes • Transformation for points (2D equivalent) X'  H X ( ) x'  H x • Transformation for planes ( ) l'  H -T l p '  H -T p

  24. The Plane at Infinity The plane at infinity π  =(0, 0, 0, 1) T is a fixed plane under a projective transformation H iff H is an affinity   0       T 0 A 0      T π H π π       A  T T 0 -t A 1    1   ( ) T p   0,0,0,1 1. canonical position ( ) T D  X 1 , X 2 , X 3 ,0 2. contains all directions two planes are parallel  line of intersection in π ∞ 3. line || line (or plane)  point of intersection in π ∞ 4. 5. 2D equivalent: line at infinity

  25. Transformation of 3D points, planes and quadrics • Transformation for points (2D equivalent) X'  H X ( ) x'  H x • Transformation for planes ( ) l'  H -T l p '  H -T p • Transformation for quadrics ( ) Q'  H -T QH -1 C '  H -T CH -1 • Transformation for dual quadrics Q' *  HQ * H T C ' *  HC * H T ( )

  26. Hierarchy of 3D Transformations Projective Intersection and tangency 15dof Parallellism of planes, Volume ratios, centroids, Affine The plane at infinity π ∞ 12dof Similarity Angles, ratios of length 7dof The absolute conic Ω∞   R t Euclidean Volume   6dof T 0 1  

  27. Hierarchy of 3D Transformations projective Plane at infinity affine Absolute conic similarity

  28. The Absolute Conic • The absolute conic Ω ∞ is a (point) conic on π  • In a metric frame: ( ) I X 1 , X 2 , X 3 ( ) T or conic for directions: X 1 , X 2 , X 3 (with no real points) The absolute conic Ω ∞ is a fixed conic under the projective transformation H iff H is a similarity 1. Ω ∞ is only fixed as a set 2. Circles intersect Ω ∞ in two circular points 3. Spheres intersect π ∞ in Ω ∞

  29. The Absolute Dual Quadric The absolute dual quadric Ω * ∞ is a fixed quadric under the projective transformation H iff H is a similarity 1. 8 dof 2. plane at infinity π ∞ is the nullvector of Ω ∞ 3. angles:

  30. Important Points so far … • Def. of 2D points and lines, 3D points and planes • Def. of homogeneous coordinates • Def. of projective space (2D and 3D) • Effect of transformations on points, lines, planes • Next: Projections from 3D to 2D

  31. Overview • 2D Projective Geometry • 3D Projective Geometry • Camera Models & Calibration

  32. Camera Model Relation between pixels and rays in space ?

  33. Pinhole Camera

  34. Pinhole Camera Model

  35. Pinhole Camera Model linear projection in homogeneous coordinates!

  36. Pinhole Camera Model

  37. Pinhole Camera Model x  PX [ ] P  diag ( f , f ,1) I |0

  38. Principal Point Offset

  39. Principal Point Offset ( p x , p y ) T principal point

  40. Principal Point Offset [ ] X cam x  K I |0 calibration matrix

  41. CCD Camera

  42. Camera Rotation and Translation ˜ C

  43. Camera Rotation and Translation ˜ C ( ) ˜ cam  R ˜ X - ˜ X C [ ] X [ ] X cam x  KR I |- ˜ x  K I |0 C [ ] t  - R ˜ x  PX ˜ P  K R | t C  - R T t C

  44. General Projective Camera In practice:  x   y , s  0 ( ) = image p x , p y center [ ] P  KR I |- ˜ C 11 dof (5+3+3) non-singular [ ] P  K R | t intrinsic camera parameters extrinsic camera parameters

  45. Affine Cameras

  46. Camera Model Relation between pixels and rays in space ?

  47. Projector Model Relation between pixels and rays in space (dual of camera) ? (main geometric difference is vertical principal point offset to reduce keystone effect)

  48. Meydenbauer Camera vertical lens shift to allow direct ortho-photographs

  49. Projections of Points and Lines x  PX • forward projection of point • image point back-projects to line / ray l X  R T K  1 x • forward projection of line (not point-wise!) ( )   +   +   +  X P(A B) PA ' PB a ' b • back-projection of line P  P T l ( ) l T x  0; x  PX P T X  l T PX

  50. Projector-Camera Systems IR projector IR camera

  51. Projections of Conics and Quadrics • back-projection of conic to cone x T Cx  X T P T CPX  0 Q co  P T CP ( ) x  PX • forward projection of quadric C *  PQ * P T P T Q * P  l T PQ * P T l  0 ( ) P  P T l

  52. Image of Absolute Conic

  53. Image of Absolute Conic w *  * P T P       R T I 0 [ ]  K T   K R t   0 T  0  t T    KK T K -T K  1 w 

  54. A Simple Calibration Device (i) compute H for each square (corners @ (0,0),(1,0),(0,1),(1,1)) (ii) compute the imaged circular points H(1,±i,0) T (iii) Imaged circular points lie on w fit a conic to 6 circular points to obtain w (iv) compute K from w through Cholesky factorization (≈ Zhang’s calibration method)

  55. Practical Camera Calibration Method and Pictures from Zhang (ICCV ’ 99): “ Flexible Camera Calibration By Viewing a Plane From Unknown Orientations ” Unknown: constant camera intrinsics K (varying) camera poses R,t Known: 3D coordinates of chessboard corners => Define to be the z=0 plane ( X=[X 1 X 2 0 1] T ) Point is mapped as λx = K (r 1 r 2 r 3 t) X λx = K (r 1 r 2 t) [X 1 X 2 1] ’ Homography H between image and chess coordinates, estimate from known X i and measured x i

  56. Direct Linear Transformation (DLT)

  57. Direct Linear Transformation (DLT) • Equations are linear in h : A i h  0 • Only 2 out of 3 are linearly independent (2 equations per point) (only drop third row if w i ’ ≠0) • Holds for any homogeneous representation, e.g. ( x i ’ , y i ’ ,1)

  58. Direct Linear Transformation (DLT) • Solving for homography H Ah  0 size A is 8x9 (2eq.) or 12x9 (3eq.), but rank 8 T is not interesting • Trivial solution is h =0 9 • 1D null-space yields solution of interest pick for example the one with h  1

  59. Direct Linear Transformation (DLT) • Over-determined solution Ah  0 • No exact solution because of inexact measurement, i.e., “ noise ” • Find approximate solution h  1 - Additional constraint needed to avoid 0 , e.g., Ah  0 Ah - not possible, so minimize

  60. DLT Algorithm Objective Given n≥4 2D to 2D point correspondences { x i ↔ x i ’ }, determine the 2D homography matrix H such that x i ’ = Hx i Algorithm (i) For each correspondence x i ↔ x i ’ compute A i . Usually only two first rows needed. Assemble n 2x9 matrices A i into a single 2 n x9 matrix A (ii) (iii) Obtain SVD of A . Solution for h is last column of V (iv) Determine H from h

  61. Importance of Normalization ~10 2 ~10 2 1 ~10 2 ~10 2 1 ~10 4 ~10 4 ~10 2 orders of magnitude difference! Monte Carlo simulation for identity computation based on 5 points (not normalized ↔ normalized)

  62. Normalized DLT Algorithm Objective Given n≥4 2D to 2D point correspondences { x i ↔ x i ’ }, determine the 2D homography matrix H such that x i ’ = Hx i Algorithm (i) Normalize points (ii) Apply DLT algorithm to (iii) Denormalize solution Normalization (independently per image): • Translate points such that centroid is at origin 2 • Isotropic scaling such that mean distance to origin is

  63. Normalized DLT Algorithm Objective Given n≥4 2D to 2D point correspondences { x i ↔ x i ’ }, determine the 2D homography matrix H such that x i ’ = Hx i Algorithm (i) Normalize points (ii) Apply DLT algorithm to (iii) Denormalize solution

  64. Geometric Distance x measured coordinates ˆ x estimated coordinates x true coordinates d (.,.) Euclidean distance (in image) Error in one image e.g. calibration pattern Symmetric transfer error Reprojection error x' subject to

  65. Reprojection Error

  66. Statistical Cost Function and Maximum Likelihood Estimation • Optimal cost function related to noise model • Assume zero-mean isotropic Gaussian noise (assume outliers removed) ) ( ) 1 ( ) ( 2 2 e    d x, x / 2 Pr x 2 p 2 Error in one image Maximum Likelihood Estimate:  ( ) 2 min d x  i ,Hx i

  67. Statistical Cost Function and Maximum Likelihood Estimation • Optimal cost function related to noise model • Assume zero-mean isotropic Gaussian noise (assume outliers removed) ) ( ) 1 ( ) ( 2 2 e    d x, x / 2 Pr x 2 p 2 Error in both images Maximum Likelihood Estimate  ( ) ( ) 2 2 + d d x i , ˆ i , ˆ min x x  x  i i

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend