The Essential Matrix can be obtained in closed form when the relative poses between the sensors are known and, given the intrinsic parameters of the cameras involved, the Fundamental Matrix can be obtained.
The most widespread application of the Essential (or Fundamental) Matrix, however, is to recover the relative pose between the cameras given a set of corresponding points: if the intrinsic parameters are known, the Essential Matrix can be recovered (and the Fundamental Matrix can then be obtained from it); alternatively, the Fundamental Matrix can be recovered without any knowledge of the camera parameters.
The criterion for obtaining matrix can be formalized as the minimization of a cost function
It can be observed that the epipolar constraint (10.48) can also be rewritten as
| (10.53) |
After collecting all the constraints , one obtains a homogeneous system of the form
| (10.56) |
The procedure for obtaining the Essential Matrix is analogous: it is the solution of a system
of the form
An additional constraint must always be added to the constraints expressed in these homogeneous systems, for example
, which is normally already satisfied by linear homogeneous-system solvers.
This algorithm is therefore called the eight-point algorithm, since at least 8 points are required to determine the solution.
Additional constraints needed to attain the actual degrees of freedom of the matrices cannot, however, be expressed in linear form.
Because of noise, the matrices obtained from the linear system normally do not satisfy the requirement of having rank 2 and, in the case of the Essential Matrix, do not satisfy the constraint that two singular values be equal and the third zero.
One possible solution to this problem is to seek the matrix closest to the one returned by the linear system that nevertheless satisfies the rank constraint.
This result can be obtained, for example, using an SVD decomposition followed by reconstruction, as suggested by Tsai, Huang, and Hartley:
| (10.60) |
| (10.61) |
Since the Essential Matrix is defined up to a scale factor, it is often normalized in the form
| (10.62) |
The Essential Matrix generated through equation (10.59) satisfies the cubic trace-constraint (Demazure, 1988)
| (10.63) |
The matrices obtained through this enforcement procedure satisfy all the requirements for being Fundamental or Essential Matrices, but they do not represent an algebraic, let alone geometric, minimization of the original constraints.
Algorithms that use fewer than 8 points to extract an Essential or Fundamental Matrix are all based more or less on the same principle: the multidimensional kernel of
or
is extracted, since the Fundamental or Essential Matrix must belong to an element of this space, and some constraints specific to the problem are enforced.
In the nonlinear case, it is relatively easy to obtain a Fundamental Matrix from only 7 points, given that matrix , formed from the elements of equation (10.55), must have rank 7, since the Fundamental Matrix has 7 degrees of freedom.
Solving system (10.55) formed from at least 7 points yields a two-dimensional subspace, spanned by two basis vectors
and
, to which two matrices
and
are associated: within the space of possible solutions, it is necessary to find a matrix
having rank 2, that is, by imposing
, a third-degree nonlinear equation in
.
In this case, the real solutions of
may number 1 or 3; when there are 3 real solutions, all three must be evaluated on the data to identify the most plausible one.
With fewer than 7 points, only algorithms for determining the Essential Matrix exist. The Essential Matrix has only 5 degrees of freedom and can therefore, in theory, be estimated by analyzing correspondences between just 5 points (Nis04). The 5-point algorithm is in fact the standard method for estimating the Essential Matrix; its implementation, however, is extremely complex.
Using only 5 correspondences, matrix of system (10.58) has rank 5, and therefore its null space has dimension 4.
The Essential Matrix must therefore be formed as a linear combination of the last 4 columns of matrix
obtained from the SVD, namely:
| (10.65) |
The need to solve a nonlinear system nevertheless reduces the advantages over the solutions proposed in section 10.4.2.
Generating the Essential and Fundamental Matrices through SVD and subsequently enforcing their constraints by forcing the singular values to be equal is highly sensitive to noise.
Matrix (10.55) is ill-conditioned: this occurs when one attempts to solve a linear system whose known terms contain numbers with different orders of magnitude. The method proposed by Hartley (Har95) improves the solution by normalizing the point coordinates.
Coordinates and
are translated separately so that their centroid is zero and rescaled so that their mean value is
(or
, the mean magnitude) in the new coordinate systems
and
, respectively.
We therefore define two transformation matrices
and
such that
| (10.66) |
| (10.67) |