cv.decomposeHomographyMat - MATLAB File Help |
Decompose a homography matrix to rotation(s), translation(s) and plane normal(s)
[motions, nsols] = cv.decomposeHomographyMat(H, K)
H
. A scalar struct with the following fields:
This function extracts relative camera motion between two views observing a
planar object from the homography H
induced by the plane. The intrinsic
camera matrix K
must also be provided. The function may return up to four
mathematical solution sets. At least two of the solutions may further be
invalidated if point correspondences are available by applying positive
depth constraint (all points must be in front of the camera). The
decomposition method is described in detail in [Malis]:
H = s * K * (R{i} + t{i} * n{i}') * inv(K), for i=1:nsols
s
is a scaling factor approximated as:
s = median(svd(inv(K) * H * K))
[Malis]:
Ezio Malis, Manuel Vargas, and others. "Deeper understanding of the homography decomposition for vision-based control". 2007.