Day x: Infinity DLT alg HZ 4.1 Rectification HZ 2.7 Hierarchy of maps Invariants HZ 2.4 Projective...
-
Upload
karin-green -
Category
Documents
-
view
214 -
download
0
Transcript of Day x: Infinity DLT alg HZ 4.1 Rectification HZ 2.7 Hierarchy of maps Invariants HZ 2.4 Projective...
Day x: Infinity
DLT algHZ 4.1
Rectification
HZ 2.7
Hierarchy of maps
InvariantsHZ 2.4
Projectivetransform
HZ 2.3
Behaviourat infinity
Primitivespt/line/conic
HZ 2.2
Ideal points
• points at infinity now have a natural representation: set w = 0– (x,y,0) represents the point at infinity in the direction (x,y)
• points at infinity (x,y,0) are called ideal points– no different in treatment than finite points
• all one happy family (finite and infinite points)– in a projective transform (linear map of projective space), points at
infinity can be mapped to finite points, which is exactly what happens in photography
• intersection of parallel lines is consistent (not a special case)– e.g., x=1 and x=2
Line at infinity
• all of the ideal points in 2-space combine to form the line at infinity• it is the line (0,0,1)
– after all, it contains all the points (x,y,0)• (0,0,1) . (x,y,0) = 0
• HZ28• the line at infinity is often mapped to a finite line in the act of
photography• finding the line at infinity in the image is crucial to removal of
distortion (rectification)• Exercise: where does the line (a,b,c) meet the line at infinity? take
2 minutes to discuss in pairs
Answer to exercise
• line (a,b,c) meets line (0,0,1) at the point (b,-a,0) [apply the intersection rule]– this encodes its tangent vector or direction– recall that (a,b) is the normal of the line
ax+by+c = 0
Circular points
• two special points at infinity are the circular points (1,i,0) and (1,-i,0)
• they are also crucial in rectification (getting true measurements from an image)
• every circle contains the circular points– proof: a circle has the implicit representation (x-aw)^2 + (y-bw)^2 –
r^2w^2 = 0: the circular points satisfy this equation– also note that setting w=0 in this equation yields x^2+y^2=0; w=0
and the circular points are the solutions of this equation
• explains why circle is defined by 3 points, rather than 5• explains why 2 circles have 2 intersections, not 4• HZ5, HZ52
Finding the line at infinity
• the line at infinity can be mapped to a finite line in an image, which is one of the sources of distortion in the image
• vanishing line = imaged line at infinity• let’s find it; good example is Houckgeest image (FL206)• we shall intersect the images of parallel lines to find
vanishing points (imaged points at infinity)• prerequisite: 2 pairs of identified parallel lines in the image,
the 1st pair not parallel to the 2nd pair• 2 minute exercise: develop an algorithm to find the
vanishing line and answer ‘how many cross products are required’?
• HZ50
Translate into projective geometry: how many cross products?
Algorithm for vanishing line
1. mark 2 points on 1st parallel line, say P1 and P2
2. mark 2 points on 2nd parallel line, say Q1 and Q2
3. parallel lines are L=P1xP2 and M=Q1xQ2
4. a point A on the vanishing line = LxM (intersection)
5. find another point B on the vanishing line using the same approach with a 2nd pair of parallel lines (not parallel to the 1st pair)
6. vanishing line = AxB (join)7. 2 to get lines, 1 to get
intersection, 3 more for B, 1 for join = 7
Removal of projective distortion
• now map vanishing line (L1,L2,L3) to (0,0,1), using the projective transformation represented by the matrix M = [1,0,0; 0,1,0; L1,L2,L3] to map points (see below for relationship of line transformation and point transformation)– actually any affine transformation can be added to this
projective transform (H_a M)
– HZ49
• motivates an understanding of projective transforms
HW1
See handout.
This homework has a dual purpose: it is a warmup for building metric reconstructions in 3D (we will do it in 2D) and it is an exploration of some of the key ideas of projective geometry through implementation.
• suggested warmup: input lines and intersect (the first stage of affine rectification)– does not require an image– allows you to develop your functions for projective geometry (either C functions or C++ class)– allows you to explore OpenGL mouse reading
1. affine rectification: implement algorithm described above (and Example 2.18 HZ50) to find a vanishing line and map it to the line at infinity (0,0,1) in order to affinely rectify an image
• should work with any image• use image of Figure 2.13 for preliminary testing (available at my website)
2. metric rectification: move circular points to their proper position using Algorithm of Example 2.26 (described in detail next lecture); advise delaying start until Monday
3. Prove that if a projective transform fixes the circular points, then it must be a similarity. [we proved the other direction]