Introduction to 2D projective geometry and hierarchy of transformations

advertisement
Projective 2D & 3D geometry
course 2
The projective plane
• Why do we need homogeneous coordinates?
• represent points at infinity, homographies, perspective
projection, multi-view relationships
• What is the geometric intuition?
• a point in the image is a ray in projective space
-y
(sx,sy,s)
(x,y,1)
(0,0,0)
-z
x
image plane
• Each point (x,y) on the plane is represented by a ray (sx,sy,s)
– all points on the ray are equivalent: (x, y, 1)  (sx, sy, s)
Projective 2D Geometry
• Points, lines & conics
• Transformations & invariants
• 1D projective geometry and
the Cross-ratio
Homogeneous coordinates
Homogeneous representation of lines
ax  by  c  0
a,b,c T
(ka) x  (kb) y  kc  0, k  0
a,b,c T ~ k a,b,c T
equivalence class of vectors, any vector is representative
Set of all equivalence classes in R3(0,0,0)T forms P2
Homogeneous representation of points
T
T
x  x, y  on l  a,b,c  if and only if ax  by  c  0
x,y,1a,b,c T  x,y,1 l  0
x, y,1T ~ k x, y,1T , k  0
The point x lies on the line l if and only if xTl=lTx=0
Homogeneous coordinates x1 , x2 , x3 
T
Inhomogeneous coordinates  x, y 
T
but only 2DOF
Points from lines and vice-versa
Intersections of lines
The intersection of two lines l and l' is x  l l'
Line joining two points
The line through two points x and x' is l  x x'
Example
y 1
x 1
Ideal points and the line at infinity
Intersections of parallel lines
l  a, b, c  and l'  a, b, c'
T
T
Example
l l'  b,a,0
T
b,a tangent vector
a, b normal direction
x 1 x  2
Ideal points
Line at infinity
x1 , x2 ,0T
T
l   0,0,1
P 2  R 2  l
Their inner product is zero
Note that in P2 there is no distinction
between ideal points and others
In projective plane, two distinct lines meet in a single point and
Two distinct points lie on a single line  not true in R^2
A model for the projective plane
Points in P^2 are represented by rays passing through origin in R^3.
Lines in P^2 are represented by planes passing through origin
Points and lines obtained by intersecting rays and planes by plane x3 = 1
Lines lying in the x1 – x2 plane are ideal points; x1-x2 plane is l_{infinity}
Duality
Roles of points and lines can be interchanged
x
l
x Tl  0
lT x  0
x  l l'
l  x x'
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
Conics
Curve described by 2nd-degree equation in the plane
ax 2  bxy  cy 2  dx  ey  f  0
or homogenized x  x1 x , y  x2 x
3
3
ax1  bx1 x2  cx2  dx1 x3  ex2 x3  fx32  0
2
2
or in matrix form
b / 2 d / 2
 a
e / 2 
x T C x  0 with C   b / 2 c
d / 2 e / 2
f 
5DOF:
a : b : c : d : e : f 
Five points define a conic
For each point the conic passes through
axi2  bxi yi  cyi2  dxi  eyi  f  0
or
x , x y , y , x , y , f c  0
2
i
i
i
2
i
i
i
stacking constraints yields
 x12
 2
 x2
 x32
 2
 x4
x2
 5
x1 y1
x2 y 2
x3 y3
x4 y 4
x5 y5
y12
y22
y32
y42
y52
x1
x2
x3
x4
x5
y1
y2
y3
y4
y5
1

1
1c  0

1
1
c  a, b, c, d , e, f 
T
Tangent lines to conics
The line l tangent to C at point x on C is given by l=Cx
x
l
C
Dual conics
Conic C, also called, “point conic” defines an equation on points
Apply duality: dual conic or line conic defines an equation on lines
A line tangent to the conic C satisfies
l T C* l  0
C* is the adjoint of Matrix C; defined in Appendix 4 of H&Z
For nonsingular symmetric matrix, :
C *  C 1
x
Dual conics = line conics
= conic envelopes
Points
conic
xT Cx  0
lie on a point
lines l C l  0 are tangent
to the point conic C; conic
C is the envelope of lines
l
T
*
Degenerate conics
A conic is degenerate if matrix C is not of full rank
m
l
e.g. two lines (rank 2)
C  lm T  ml T
e.g. repeated line (rank 1)
C  ll T
l
Degenerate line conics: 2 points (rank 2), double point (rank1)
Note that for degenerate conics
C 
* *
C
Projective transformations
Definition:
A projectivity is an invertible mapping h from P2 to itself
such that three points x1,x2,x3 lie on the same line if and
only if h(x1),h(x2),h(x3) do. ( i.e. maps lines to lines in
P2)
Theorem:
A mapping h:P2P2 is a projectivity if and only if there
exist a non-singular 3x3 matrix H such that for any point
in P2 reprented by a vector x it is true that h(x)=Hx
Definition: Projective transformation: linear transformation on homogeneous 3
vectors represented by a non singular matrix H
 x'1   h11 h12
  
 x'2   h21 h22
 x'   h
 3   31 h32
h13  x1 
 

h23  x2 
h33  x3 
or
x'  H x
8DOF
•projectivity=collineation=projective transformation=homography
•Projectivity form a group: inverse of projectivity is also a
projectivity; so is a composition of two projectivities.
Projection along rays through a common point,
(center of projection) defines a mapping from one
plane to another
•Central projection maps points on one plane to points on another plane
•Projection also maps lines to lines : consider a plane through projection
center that intersects the two planes  lines mapped onto lines 
Central projection is a projectivity 
central projection may be expressed by x’=Hx
(application of theorem)
Removing projective distortion
Central projection image of a plane is related to the originial plane
via a projective transformation  undo it by applying the inverse transformation
Let (x,y) and (x’,y’) be
inhomogeneous
Coordinates of a pair
of matching points
x and x’ in world and
image plane
select four points in a plane with known coordinates
h x  h12 y  h13
h x  h22 y  h23
x'
x'
x'  1  11
y '  2  21
x'3 h31 x  h32 y  h33
x'3 h31x  h32 y  h33
x' h31x  h32 y  h33   h11x  h12 y  h13
y' h31x  h32 y  h33   h21x  h22 y  h23
(linear in hij)
(2 constraints/point, 8DOF  4 points needed)
Remark: no calibration at all necessary, better ways to compute (see later)
Sections of the image of the ground are subject to another projective distortion 
need another projective transformation to correct that.
Transformation of lines and conics
For points on a line l, the transformed points under proj. trans.
also lie on a line; if point x is on line l, then transforming x, transforms l
For a point transformation
x'  H x
Transformation for lines
l'  H -T l
Transformation for conics
C'  H -T CH -1
Transformation for dual conics
C'*  HC*H T
•
•
A hierarchy of transformations
Group of invertible nxn matrices with real elements  general linear group on n dimensions
GL(n);
Projective linear group: matrices related by a scalar multiplier PL(n); three subgroups:
•
•
•
•
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 (rotation and translation) leave
distances unchanged
Similarity
Affine
projective
•Similarity: circle imaged as circle; square as square; parallel or perpendicular lines have same
relative orientation
•Affine: circle becomes ellipse; orthogonal world lines not imaged as orthogonoal; But, parallel lines
in the square remain parallel
•Projective: parallel world lines imaged as converging lines; tiles closer to camera larger image than
those further away.
Class I: Isometries: preserve Euclidean
distance
(iso=same, metric=measure)
 x'   cos 
  
 y '     sin 
1  0
  
 sin 
cos 
0
t x  x 
 

t y  y 
1  1 
  1
•orientation preserving:   1  Euclidean transf. i.e.
composition of translation and rotation  forms a group
•orientation reversing:   1  reflection  does not
form a group
 R t
x'  H E x   T  x
RTR  I
0 1
R is 2x2 rotation matrix; (orthogonal, t is translation 2-vector, 0 is a null 2-vector
3DOF (1 rotation, 2 translation)  trans. Computed from two point correspondences
special cases: pure rotation, pure translation
Invariants: length (distance between 2 pts) , angle between 2 lines, area
Class II: Similarities: isometry composed with an
isotropic scaling
 x'   s cos 
  
 y '    s sin 
1  0
  
 s sin 
s cos 
0
t x  x 
 

t y  y (isometry + scale)
1  1 
 sR t 
x'  H S x   T
x

 0 1
RTR  I
4DOF (1 scale, 1 rotation, 2 translation)  2 point
correspondences
Scalar s: isotropic scaling
also known as equi-form (shape preserving)
metric structure = structure up to similarity (in literature)
Invariants: ratios of length, angle, ratios of areas,
parallel lines
Metric Structure means structure is defined up to a similarity
Class III: Affine transformations: non singular linear
transformation followed by a translation
 x'   a11 a12 t x  x 
  
 

 y'   a21 a22 t y  y 
1  0
1

0
1
  
 
 A t
x'  H A x   T  x
0 1
Can show:
A  R R  DR 
Rotation by theta R(-phi) D R(phi)
scaling directions
in the deformation
are orthogonal
1 0 
D

0

2

•Rotation by phi, scale by D, rotation by – phi, rotation by theta
•6DOF (2 scale, 2 rotation, 2 translation) 3 point correspondences
non-isotropic scaling!
Invariants: parallel lines, ratios of parallel lengths,
ratios of areas
Affinity is orientation preserving if det (A) is positive  depends
on the sign of the scaling
Class IV: Projective transformations: general non
singular linear transformation of homogenous
coordinates
A
x'  H P x   T
v
t
x

v
v  v1 , v2 
T
Hp has nine elements; only their ratio significant  8 Dof  4 correspondences
Not always possible to scale the matrix to make v unity: might be zero
Action non-homogeneous over the plane
Invariants: cross-ratio of four points on a line
(ratio of ratio of length)
Action of affinities and projectivities
on line at infinity
Affine
A
0 T

 x1    x1  
t     A  
 x2     x2  

v   

0  0 
Line at infinity stays at infinity,
but points move along line
Proj. trans.
A
vT

 x1  
x  
t     A 1  
x  
 x2   

 2
v   

 0   v1 x1  v2 x2 
Line at infinity becomes finite,
allows to observe/model vanishing points, horizon,
Decomposition of projective
transformations
 sR t   K
H  H S H AH P   T
 T
 0 1 0
0  I
1  v T
Decomposition valid if v not zero, and unique (if chosen s>0)
Useful for partial recovery of a transformation
0  A
 T

v  v
A  sRK  tv T
K
upper-triangular, det K  1
Example:
1.707 0.586 1.0 
H  2.707 8.242 2.0
 1.0
2.0 1.0 
2 cos 45

H   2 sin 45
 0

 2 sin 45
2 cos 45
0
t
v 
1.0  0.5 1 0 1 0 0

2.0  0 2 0 0 1 0
1   0 0 1 1 2 1
Number of invariants?
The number of functional invariants is equal to, or greater than,
the number of degrees of freedom of the configuration less the
number of degrees of freedom of the transformation
e.g. configuration of 4 points in general position has 8 dof (2/pt)
and so 4 similarity, 2 affinity and zero projective invariants
Overview transformations
Projective
8dof
Affine
6dof
Similarity
4dof
Euclidean
3dof
 h11
h
 21
h31
 a11
a
 21
 0
h12
h22
 sr11
 sr
 21
 0
 r11
r
 21
 0
sr12 t x 
sr22 t y 
0 1 
r12 t x 
r22 t y 
0 1 
h32
a12
a22
0
h13 
h23 
h33 
Concurrency, collinearity,
order of contact (intersection,
tangency, inflection, etc.),
cross ratio
tx 
t y 
1 
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.
x1 , x2 T
Projective geometry of 1D: P1
Homogeneous coordinates of point x on line
Projective transformation of a line: x'  H 22
x
x2  0 Ideal point of a line
3DOF (2x2-1)  three corresponding points
The cross ratio
Cross x1 , x 2 , x 3 , x 4  
x1 , x 2 x 3 , x 4
x1 , x 3 x 2 , x 4
 xi1
x i , x j  det 
 xi 2
Is invariant under projective transformations in P^1.
Four sets of four collinear points; each set is related to the others by a line projectivity
Since cross ratio is an invariant under projectivity, the cross ratio has the same value for all the sets shown
x j1 
x j 2 
Concurrent Lines
Four concurrent lines l_i intersect the line l in the
four points x_i; The cross ratio of these points is
an invariant to the projective transformation of the plane
Coplanar points x_i are imaged onto a line by
a projection with center C. The cross ratio
of the image points x_i is invariant to the position of
the image line l
Download