Project 3 / Camera Calibration and Fundamental Matrix Estimation with RANSAC

Part 1 - Projection Matrix and Camera Center Coordinates

I calculated both the projection matrix and camera center exactly as described in the homework documentation, without alteration. I did not normalize the pixels. Here is the projection matrix, with a residual of 0.0445:


0.4583   -0.2947   -0.0140    0.0040
-0.0509   -0.0546   -0.5411   -0.0524
0.1090    0.1783   -0.0443    0.5968

The camera center in world coordinates is: -1.5127, -2.3517, 0.2826

Here we can see the keypoints and camera in a 3D diagram:


Diagram view 1

Diagram view 2

Part 2 - Fundamental Matrix Calculations

I calculated the fundamental matrix exactly as described in the homework documentation, without alteration. I did not normalize the pixels. Here is my fundamental matrix:


-5.3626e-07	7.9036e-06	-1.8860e-03
8.8353e-06	1.2132e-06	1.7233e-02
-9.0738e-04	-2.6423e-02	9.9950e-01

You can see that there are as many as 6 orders of magnitude difference in these entries. However, this magnitude difference can still be handled well by a double precision machine. This is apparent in the epipolar lines below. They pass through the centers of the keypoint matches, with very little error. Here are the epipolar lines:



Part 3 - Fundamental Matrix Calculations with RANSAC

Here are of the epipolar lines of Mount Rushmore. There are 50 matches total:



You can see that some of the lines are slightly off; for example, the line passing through Lincoln's nose passes through the top of it in one image, and through the bottom in the other.