essential_to_fundamental_matrix T_essential_to_fundamental_matrix EssentialToFundamentalMatrix EssentialToFundamentalMatrix essential_to_fundamental_matrix (Operator)
Name
essential_to_fundamental_matrix T_essential_to_fundamental_matrix EssentialToFundamentalMatrix EssentialToFundamentalMatrix essential_to_fundamental_matrix
— Compute the fundamental matrix from an essential matrix.
Signature
def essential_to_fundamental_matrix (ematrix : Sequence[Union[float, int]], cov_emat : Sequence[Union[float, int]], cam_mat_1 : Sequence[Union[float, int]], cam_mat_2 : Sequence[Union[float, int]]) -> Tuple[Sequence[float], Sequence[float]]
Description
The fundamental matrix is the entity describing the epipolar constraint
in image coordinates (C,R) and the essential matrix is its counterpart
for 3D direction vectors (X,Y,1):
Image coordinates result from 3D direction vectors by
multiplication with the camera matrix CamMat:
Therefore, the fundamental matrix FMatrix FMatrix FMatrix FMatrix fmatrix
is calculated from the
essential matrix EMatrix EMatrix EMatrix EMatrix ematrix
and the camera matrices CamMat1 CamMat1 CamMat1 camMat1 cam_mat_1
,
CamMat2 CamMat2 CamMat2 camMat2 cam_mat_2
by the following formula:
The transformation of the essential matrix to the fundamental matrix
goes along with the propagation of the covariance matrices CovEMat CovEMat CovEMat covEMat cov_emat
to CovFMat CovFMat CovFMat covFMat cov_fmat
. If CovEMat CovEMat CovEMat covEMat cov_emat
is empty CovFMat CovFMat CovFMat covFMat cov_fmat
will be
empty too.
The conversion operator essential_to_fundamental_matrix essential_to_fundamental_matrix EssentialToFundamentalMatrix EssentialToFundamentalMatrix essential_to_fundamental_matrix
is used
especially for a subsequent visualization of the epipolar line structure
via the fundamental matrix, which depicts the underlying stereo geometry.
Execution Information
Multithreading type: reentrant (runs in parallel with non-exclusive operators).
Multithreading scope: global (may be called from any thread).
Processed without parallelization.
Parameters
EMatrix EMatrix EMatrix EMatrix ematrix
(input_control) hom_mat2d →
HHomMat2D , HTuple Sequence[Union[float, int]] HTuple Htuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong)
Essential matrix.
CovEMat CovEMat CovEMat covEMat cov_emat
(input_control) number-array →
HTuple Sequence[Union[float, int]] HTuple Htuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong)
9x9 covariance matrix of the
essential matrix.
Default:
[]
CamMat1 CamMat1 CamMat1 camMat1 cam_mat_1
(input_control) hom_mat2d →
HHomMat2D , HTuple Sequence[Union[float, int]] HTuple Htuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong)
Camera matrix of the 1. camera.
CamMat2 CamMat2 CamMat2 camMat2 cam_mat_2
(input_control) hom_mat2d →
HHomMat2D , HTuple Sequence[Union[float, int]] HTuple Htuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong)
Camera matrix of the 2. camera.
FMatrix FMatrix FMatrix FMatrix fmatrix
(output_control) hom_mat2d →
HHomMat2D , HTuple Sequence[float] HTuple Htuple (real) (double ) (double ) (double )
Computed fundamental matrix.
CovFMat CovFMat CovFMat covFMat cov_fmat
(output_control) real-array →
HTuple Sequence[float] HTuple Htuple (real) (double ) (double ) (double )
9x9 covariance matrix of the
fundamental matrix.
Possible Predecessors
vector_to_essential_matrix vector_to_essential_matrix VectorToEssentialMatrix VectorToEssentialMatrix vector_to_essential_matrix
Alternatives
rel_pose_to_fundamental_matrix rel_pose_to_fundamental_matrix RelPoseToFundamentalMatrix RelPoseToFundamentalMatrix rel_pose_to_fundamental_matrix
Module
3D Metrology