pub fn decompose_essential_mat(
e: &impl ToInputArray,
r1: &mut impl ToOutputArray,
r2: &mut impl ToOutputArray,
t: &mut impl ToOutputArray,
) -> Result<()>Expand description
Decompose an essential matrix to possible rotations and translation.
§Parameters
- E: The input essential matrix.
- R1: One possible rotation matrix.
- R2: Another possible rotation matrix.
- t: One possible translation.
This function decomposes the essential matrix E using svd decomposition HartleyZ00. In
general, four possible poses exist for the decomposition of E. They are ,
,
,
.
If E gives the epipolar constraint between the image
points
in the first image and
in second image, then any of the tuples
,
,
,
is a change of basis from the first
camera’s coordinate system to the second camera’s coordinate system. However, by decomposing E, one
can only get the direction of the translation. For this reason, the translation t is returned with
unit length.