CSE528 Final Project Report

1.          Goal

In the light of the algorithm described in "Single View Metrology" by Criminisi, Reid, and Zisserman, ICCV 1999, we plan to develop a system that can reconstruct 3D texture-mapped models from a single image and user interactions.

2.          Approaches

step 1: Define parallel lines to calculate vanishing points, then we can get a 3x4 projection matrix P = [p1 p2 p3 p4], where p1 = Vx, p2 = Vy, p3 = Vz and p4 = the origin of the world coordinate system (which is also defined by the user);

step2: Define reference lines to calculate alphas. We wish to measure the length of a line specified by a base point B on the XY-plane and top point T in the scene. These points may be chosen as respectively (X, Y, 0) and (X, Y, Z), and their images are b and t. If P is the projection matrix then the image coordinates and the reference length are

              

step3: Define measuring lines to recover the 3D position (X, Y, Z). It is straightforward to calculate the Z component from the idea in previous step. To calculate X and Y components, we should use the plane to plane homology H' which can be extracted from the projection matrix ignoring the third column:

     

Then the inverse of H' maps the image point of (X, Y, Z) onto the reference plane at (X, Y, 0).

We use the points we have measured to define several planar patches, then we compute texture maps for each of these patches. Since most patches are not rectangular regions, we should perform a standard rectification.

Finally, we use VRML to create a 3D model in order to view our result in IE or Netscape.

3.          System  

The final system has the following functionalities:

User Interaction

Computation

4.          Results

   Original Image                                VRML Model