HW2: Single-view Reconstruction

Zoƫ LaLena

Q1: Camera matrix P from 2D-3D correspondences

Input images, input annotations and the results.

Input Image Annotated 2D points
Image 1 Image 2
Surface Points Bounding Box
Image 13 Image 14
Image 3
Input Image Annotated 2D points Edges
Image 1 Image 2 Image 2
Image 3

Q2: Camera calibration K from annotations

Q2 a)

Input images, input annotations and the results.

Input Image Annotated Parallel Lines Vanishing points and principal point
Image 1 Image 2 Image 2
Image 2

Method

1) For each set of end points, we convert the given points to 2D homography space and take the cross product to get the line both point lie on.

2) Then we take the cross product of each pair lines to get the vanishing point of that given set of lines which is parallel in the real world.

3) With three sets of lines we get three vanishing points (v's) we use to solve for K. Using we can get the image of the absolute conic, omega, using SVD.

4) Using Cholesky decomposition we are then able to get K from omega as,

Q2 b)

Input Image Annotated Squares
Image 1 Image 2
Squares Angle between planes(degrees)
Plane 1 & Plane 2 67.58
Plane 1 & Plane 3 92.25
Plane 2 & Plane 3 94.78
Image 2

Method

1) Now we are using squares, each with 4 corner points to find K.

2) For each square, we find the homography H that transforms the labeled corners to the 4 corners of a unit square.

3) With three homography, H's, we can once again solve for the image of the absolute conic, this time our constraints that allow us to build A for SVD are . Where h1, h2, and h3 are the columns of H's. Each H gives us 2 constraints, and in the end A is a 6x6 matrix.

4) Using Cholesky decomposition we are then able to get K from omega as,

Q3: Single View Reconstruction

Input images, input annotations and the results.

Input Image Annotations Reconstruction View 1 Reconstruction View 2
Image 1 Image 2 Image 2 Image 3

Method

1) First we use are algorithm from Q2A to find K with parallel lines from the first 3 (out of 5) given plane corner points.

2) We then find the normals of each plane.

3) For each point we find the ray/direction.

4) We arbitrarily set the depth of 1 starter point so we can then find the equations of the planes as .

5) We then use ray-plane intersection to find the 3D coordinates of the points and the associated colors.