Document

Projective Geometry and
Transformations of 3D
- Chapter 3 Meeting 2 - 11.02.2010
Marianna Pronobis
based on M. Pollefeys’ presentation:
www.cs.unc.edu/~marc/mvg/course04.ppt
Content
Chapter 3: properties and entities of projective 3D space
- many of these are generalizations of those of projective plane in 2D, but …
Content:
Points, lines, planes and quadrics
Transformations
П∞
-maybe later
Notation: 3D points & Projective
Transformation
3D point
Point in 3D (R3):
Homogeneus vector:
Point in R3 with
inhomogeneous
coordinates:
( X , Y , Z )T ∈ R 3
T
X = ( X1, X 2 , X 3 , X 4 ) ∈ P3
T
 X1 X 2 X 3 
 = ( X , Y , Z )T
X = 
,
,
 X4 X4 X4 
Projective Transformation
X' = H X
(15dof= 4x4-1)
( X 4 ≠ 0)
Planes
3D Plane
Plane in 3D (R3):
Homogeneus
representation:
Point on plane:
π1 X + π 2Y + π 3 Z + π 4 = 0
π1 X 1 + π 2 X 2 + π 3 X 3 + π 4 X 4 = 0
πT X = 0
Euclidian Representation
~
π1 X + π 2 Y + π 3 Z + π 4 = 0 ⇔ n . X + d = 0
n = (π1 , π 2 , π 3 )
~
T
X = (X ,Y , Z )
T
d/ n
Dual: points ↔ planes, lines ↔ lines
π4 = d
X4 =1
Relations between points, lines and planes
1.
In P3 geometric relations between planes, points and lines:
A plane is defined uniquely by:
A.
B.
2.
3.
the join of 3 points (in general position);
the join of a line and point (in general position).
Three distinct planes intersect in a unique point.
Two distinct plane intersect in a unique line.
points & planes: 1A – 2
lines & points & planes : 1B – 3
Three points define a plane
T


X
Find π, when X1 , X 2 , X 3 ∈ π ⇔ X π = 0, X π = 0, X π = 0
1
 T
T
Solutions:
X1 
X 2  π = 0
 T
X 3T 
1. Solve π as right null-space of X 2 
 
T
1
T
2
T
3
X 3T 
 
Implicitly from coplanarity condition:
 X 1 ( X 1 )1
if X ∈ π then
 X (X )
2
1 2

det[X X1X 2 X 3 ] = 0
det
 X 3 ( X 1 )3

 X 4 ( X 1 )4
2.
( X 2 )1
( X 2 )2
( X 2 )3
( X 2 )4
( X 3 )1 
( X 3 )2 
=0
( X 3 )3 

( X 3 )4 
X 1 D234 − X 2 D134 + X 3 D124 − X 4 D123 = 0
T
π = (D234 ,− D134 , D124 ,− D123 )
Three planes define a point
Find X when X ∈ π1 , π 2 , π 3 ⇔ π1T X = 0, π T2 X = 0, π 3T X = 0
 π1T 
 T
π 2  X = 0
 π 3T 
 
1.
Solutions:
 π1T 
Solve X as right nullspace of  π T 
 2
 π 3T 
 
Dual: points ↔ planes
Under projective transformation X' = H X :
Plane:
π' = H -T π
Lines
Line (definition):
Join of two points
Intersection of two planes
Line (4 dof) = 2 x Point on a plane (2dof)
Natural way of representing 4dof will be 5D space
Goal: line representation in 3D
Possible representations:
Null-space and span representation
Plücker matrices
Plücker line coordinates
Lines - Span Representation (1)
Line is a pencil (one-parameter family) of collinear points, and is defined
by any two of these points
Line is a span of two vectors
A, B – two non-coincident space points
span(S) = collection of all
(finite) linear combinations
of the elements of a set S
A 
W = T
B 
T
=> span(WT) is the pencil of points λA+ µB on the line
Dual representation of line: the intersection of two planes
P,Q- are a basis for null-space
T


P
W * =  T  => span(W*T) is the pencil of planes λ' P + µ' Q with the
Q  line as axis
W W = WW
*
T
*T
= 0 2×2 , 02x2 is a 2x2 null matrix
Lines - Span Representation (2)
Example: X-axis can be represented as:
A T 
W =  T
B 
λA+ µB
0 0 0 1 
W=

1
0
0
0


0 0 1 0 
*
 PT 
*
W =
λP+ µQ

W =  T
0
1
0
0


Q 
Join and incidence properties:
Plane Π=?
W
X
M
π
=
0
M =  T
X 
Point X=?
origin
ideal point
XY –plane
XZ – plane
W
W*
W* 
M= T
π 
MX = 0
π
Line - Plücker matrices (1)
Line is represented by Plücker matrix = 4x4 skew-symmetric homogeneous
matrix
Line joining points A and B, is represented by matrix L:
lij = Ai B j − Bi A j
L = ABT − BA T
Properties of L:
T
*
1. L has rank 2, in fact LW = 0 4×2
2. L has 4 dof
3. L = ABT − BA T is generalization of l = x × y in P 2
4. L independent of choice A and B
5. Transformation X' = HX → L' = HLH T
Example: X-axis is represented as
0
0 
1
0
0 
0 
T
L =  [1 0 0 0] −  [0 0 0 1] = 
0 
0
0 
 

 
1
0 
1
0 0 − 1
0 0 0 
0 0 0

0 0 0
Line - Plücker matrices (2)
Dual Plücker representation:
Line is formed by the intersection of two planes P and Q
L* = PQ T − QP T
'
Transformation: X' = HX → L* = H - T LH -1
Relation between L and L*: l12 : l13 : l14 : l 23 : l 42
*
*
*
*
*
*
: l34 = l34 : l 42 : l 23 : l14 : l13 : l12
Join and incidence properties:
π = L*X
(plane through line and point)
L*X = 0
(point on line)
X = Lπ
(intersection point of plane and line)
Lπ = 0
(line in plane)
[L1 , L 2 ,K]π = 0
(coplanar lines)