2 View Fundamental Matrix Estimator

CSE252B - Computer Vision II - Final Project

Within CSE 252B: Computer Vision II, I developed an end-to-end pipeline capable of estimating the fundamental matrix of 2 source images.

Feature Detection

Feature Detection was done by implementing the Shi-Tomsai Corner Detector with non-maximal suppression of the minor eigenvalue image, as well as the Forstner Point Operator for sub-pixel coordinates.

Sub-Pixel corner features

Feature Matching

Putative Feature Matching was accomplished by brute-force cross-correlation feature matching, filtering by correlation-coefficient thresholding, as well as correlation-coefficient uniqueness (relative to the 2nd highest correlation value). Bilinear interpolation was done due to account for sub-pixel feature coordinates.

Feature correspondences

Outlier Rejection

Poor feature correspondences were removed by an implementation of the M-Estimator Sample Consensus (MSAC) algorithm. To estimate the Fundamental Matrix, the Seven-Point algorithm with Direct Linear Transform was used with Sampson Error.

Feature correspondences inliers

Linear Estimate of the Fundamental MAtrix

Using the Direct Linear Transform Algorithm and all inlier point correspondences, the Fundamental Matrix was estimated.

Non-Linear Estimate of the Fundamental Matrix

Using two-view triangulation, the 2d point correspondences can be corrected (using the linear estimate of the Fundamental Matrix) and converted to 3d points. Then, by assuming canonical camera coordinates, a non-linear estimate of the second projection matrix can be computed.

To obtain the best estimate, the projection matrix was parameterized into an 11-dimensional space, optimized using the non-linear Levenberg-Marquardt Algorithm, and lastly unparameterized back as a 4x3 projection matrix.

Lastly, using the non-linear estimate of the Fundamental Matrix, the point-to-epipolar-line correspondences can be visualized using some salient features from the source image.

Point and corresonding epipolar line