<<

1. Projective • Homogeneous representation of points and lines in 2D space • 2D • Points at and the • Conics and dual conics • Projective transformation • Hierarchy of 2D projective transformation Notation • Scalars: x, y, . . .

• Vectors: x , y,...

• Transpose: x>, y>,...

• Matrices: A, B, P,...

• Transpose: A>, B>, P>,... Homogeneous representation of lines in 2D space

• A line on a xy : ax + by + c =0 • Any line can be represented by a 3-vector l =[a, b, c]>

• The same line is given by k(a, b, c)> =(ka, kb, kc)>

kax + kby + kc = k(ax + by + c)=0

• In this sense, ( a, b, c ) > is equivalent to k(a, b, c)>

• Such vectors are called homogeneous vectors • This equivalence will be represented by / • Two vectors on both sides are parallel

(a, b, c)> k(a, b, c)> / Homogeneous representation of points in 2D space

• A point ( x, y ) is on a line l =(a, b, c)> x l>x = abc y = ax + by + c =0 , 213 ⇥ ⇤ 4 5 • Homogeneous representation of a point: x =(x, y, 1)> • The same point is given by: k(x, y, 1)> =(kx, ky, k)>

(x, y, 1)> k(x, y, 1)> /

• To recover the original (inhomogeneous) coordinates from , simply do

x1 x2 x =(x ,x ,x )> , 1 2 3 x x ✓ 3 3 ◆ 2D projective space • Sets of equivalent vectors in this sense form a special space called the projective space

�′ �′

�′′ �′′ � �

3D 2D projective space Intersection of lines a a0 • Q) What is the crossing point of lines? l = b l0 = b0 2 3 2 3 c c0 4 5 4 5 • A) It is given by their cross product:

x l l0 l l0 ⌘ ⇥ ⇥ l • Proof: l>x = l>(l l0)=0 ⇥ (Scalar triple product) l0

• E.g. Crossing point of x =1 and y =1 ? �

l =[ 1, 0, 1]> l0 =[0, 1, 1]> � = 1 (1,1) 1 0 1 x = l l0 = 0 1 = 1 ⇥ 2 1 3 ⇥ 21 3 213 � = 1 4 5 4 5 4 5 � (1/1, 1/1) = (1, 1) Points at infinity

• Consider the intersection of l =( a, b, c ) > and l0 =(a, b, c0)>

l l0 =(bc0 bc, ca ac0,ab ab)> =(c0 c)(b, a, 0)> ⇥

• Conversion to inhomogeneous coordinates… (b/0, a/0) = ( , ) 1 1

• A point with homogeneous coordinates ( x, y, 0) > is called “a point at infinity”

• (x1,x2,x3)> x =0 A point gives a finite point if 3 6 and gives a point at infinity if x3 =0 Points at infinity • In inhomogeneous domain, parallel lines do not have an intersection • In homogenous domain, parallel lines have an intersection at a point at infinity • Points at infinity and finite points can be treated equally ß an advantage of using homogeneous representation • Note that there are an infinite number of ʻpoints at infinityʼ

(a, b, 0)>

� The line at infinity

• The special line l =(0 , 0 , 1) > is called “the line at infinity”

• The name comes from the fact that every point at infinity will lie on this line

x1 001 x2 =0 2 0 3 ⇥ ⇤ 4 5

• This line is unique, and will be denoted by

l =(0, 0, 1)> 1 Duality of points and lines • There is symmetry between points and lines

l>x = x>l =0

• Exchange of points and lines in a proposition wonʼt change its correctness

• E.g. Intersection of lines is given by

x = l l0 ⇥ A line passing through two points is given by , l = x x0 ⇥ • Prove this directly without using the duality (1st assignment) Conics • A conic = a curve obtained as the intersection of a cone with a plane

Ellipse Hyperbola Parabola

Any conic on a xy plane is given by

ax2 + bxy + cy2 + dx + ey + f =0 x x /x and y x /x 1 3 2 3 2 2 2 ax1 + bx1x2 + cx2 + dx1x3 + ex2x3 + fx3 =0 Conics

• Or, can also be written as x>Cx =0

ab/2 d/2 C = b/2 ce/2 2d/2 e/2 f 3 4 5 • Any 3×3 symmetric matrix represents a conic • Matrices scaled by constants give the same conic • Specifying five points determines a conic (passing these points) Tangents to a conic • The line l tangent to a conic C at a point x is given by l = Cx

Proof: x lies on l , since x>l = x>Cx =0

Assume that there exists another point y lying on C and l . � � Then, for any ↵ , it should hold that �

(x + ↵y)>C(x + ↵y)=0

This means that any point x + ↵ y should lie on C .

This is possible only if C is a line or there exists no such point y . Dual conics • A conic C gives a set of points. A dual conic C ⇤ is another type of conics, which gives a set of lines • Also known as line conics

1 • Consider l > C ⇤ l =0 , where C⇤ C ⌘ • This gives a set of tangent lines to conic C ---- (*)

l>C⇤l =0

x>Cx =0

Show the above (*) is true (2nd assignment). 2D projective transformation • Projective transformation (different names: projectivity, , colineation) • Definition: An invertible mapping from/to 2D projective spaces that satisfies that if three points lie on a line, then the mapped points lie on a line. • Intuitively, any mapping from a plane to a plane that maps a line to a line

• Such a transformation ( x x 0 ) is given by the following ! equation:

h11 h12 h13 x0 Hx x0 h21 h22 h23 x / or / 2 3 h31 h32 h33 4 5 An example: central • Central projection: a point on a plane is mapped onto a point on another plane as shown below

x x’

π’ π

• Obviously, central projection maps a line to a line, and thus it is a 2d projective transformation Calculating a projective transformation • If you want to represent the points before/after the mapping in inhomogeneous coordinates…

h11 h12 h13 x0 h h h x / 2 21 22 233 h31 h32 h33 4 5

x0 h11 h12 h13 x h11x + h12y + h13 y0 h h h y = h x + h y + h 2 3 / 2 21 22 233 2 3 2 21 22 233 1 h31 h32 h33 1 h31x + h32y + h33 4 5 4 5 4 5 4 5

h11x + h12y + h13 x0 = h31x + h32y + h33 h21x + h22y + h23 y0 = h31x + h32y + h33 Transformation of lines and conics • A 2D projective transformation mapping a point as

x0 Hx /

• maps a line as l0 H>l / • proof:

x0>l0 =(x>H>)l0 =(x>H>)(H>l)=x>l =0

• and maps a conic as 1 C0 H>CH / • proof:

1 x0>C0x0 = x>H>C0Hx = x>H>H>CH Hx = x>Cx =0 Transformation of lines and conics

l l’ π’ π

C C’

π’ π Hierarchy of 2D projective transformation • Projective transformation can be classified into the following four types in the order of increasing degrees of freedom:

1. Euclidean transformation / Isometry 2. Similarity transformation 3. Affine transformation 4. Projective transformation (full-projective ---)

h11 h12 h13 x0 h h h x / 2 21 22 233 h31 h32 h33 4 5 Euclidean transformation • 2D projective transformations given as follows:

" cos ✓ sin ✓ t x x0 " sin ✓ cos ✓ ty x / 2 0013 4 5 • Called Euclidean trans. if ε=1; isometry if ε=-1 or 1. • Combination of 2D rotation and translation • Length and area are preserved (invariant) Similarity transformation • 2D projective transformations given as follows: s cos ✓ s sin ✓ t x x0 s sin ✓ s cos ✓ ty x / 2 0013 4 5 • Combination of 2D rotation, translation, and scaling • Shape and angle are preserved (invariant) Affine transformation • 2D projective transformations given as follows:

a11 a12 tx x0 a21 a22 ty x / 2 0013 4 5

• Parallelism is preserved • Points at infinity are mapped to points at infinity

a11 a12 tx x1 a11x1 + a12x2 x0 a21 a22 ty x2 = a21x1 + a22x2 / 2 0013 2 0 3 2 0 3 4 5 4 5 4 5 a11 a12 tx x1 a11x1 + a12x2 x0 a21 a22 ty x2 = a21x1 + a22x2 / 2 0013 2 0 3 2 0 3 4 5 4 5 4 5 Projective transformation • The most general one:

h11 h12 h13 x0 h h h x / 2 21 22 233 h31 h32 h33 4 5 • Colinearity and cross-ratio are preserved • Points at infinity can be mapped to finite points

h11 h12 h13 x1 h11x1 h12x2 x0 h h h x = h x h x / 2 21 22 233 2 23 2 21 1 22 23 h31 h32 h33 0 h31x1 h32x2 4 5 4 5 4 5 h11 h12 h13 x1 h11x1 + h12x2 x0 h h h x = h x + h x / 2 21 22 233 2 23 2 21 1 22 23 h31 h32 h33 0 h31x1 + h32x2 4 5 4 5 4 5 Transformations and images • Images of a plane created by different transformations Zisserman03] - [Hartley

similarity affine projective Image rectification • Given a projective transform of a plane, we want to find a transformation that maps it onto a similarity transform of the same plane

⇒ Zisserman03] x2 x1 x20 x10 - [Hartley x3 x4 x30 x40

• Any projective trans. is determined by four point pairs