Name
vector_to_hom_mat3dT_vector_to_hom_mat3dVectorToHomMat3dVectorToHomMat3d — Approximate a 3D transformation from point correspondences.
void VectorToHomMat3d(const HTuple& TransformationType, const HTuple& Px, const HTuple& Py, const HTuple& Pz, const HTuple& Qx, const HTuple& Qy, const HTuple& Qz, HTuple* HomMat3D)
void HHomMat3D::VectorToHomMat3d(const HString& TransformationType, const HTuple& Px, const HTuple& Py, const HTuple& Pz, const HTuple& Qx, const HTuple& Qy, const HTuple& Qz)
void HHomMat3D::VectorToHomMat3d(const char* TransformationType, const HTuple& Px, const HTuple& Py, const HTuple& Pz, const HTuple& Qx, const HTuple& Qy, const HTuple& Qz)
static void HOperatorSet.VectorToHomMat3d(HTuple transformationType, HTuple px, HTuple py, HTuple pz, HTuple qx, HTuple qy, HTuple qz, out HTuple homMat3D)
void HHomMat3D.VectorToHomMat3d(string transformationType, HTuple px, HTuple py, HTuple pz, HTuple qx, HTuple qy, HTuple qz)
vector_to_hom_mat3dvector_to_hom_mat3dVectorToHomMat3dVectorToHomMat3dVectorToHomMat3d approximates an affine or projective 3D
transformation from point correspondences and returns it as the
homogeneous transformation matrix HomMat3DHomMat3DHomMat3DHomMat3DhomMat3D.
The type of the 3D transformation to compute is specified with
TransformationTypeTransformationTypeTransformationTypeTransformationTypetransformationType. For TransformationTypeTransformationTypeTransformationTypeTransformationTypetransformationType =
'rigid'"rigid""rigid""rigid""rigid", a rigid 3D transformation (a rotation and a
translation), for TransformationTypeTransformationTypeTransformationTypeTransformationTypetransformationType =
'similarity'"similarity""similarity""similarity""similarity", a 3D similarity transformation (a uniform
scaling, a rotation, and a translation), for
TransformationTypeTransformationTypeTransformationTypeTransformationTypetransformationType = 'affine'"affine""affine""affine""affine" a general affine
3D transformation, and for TransformationTypeTransformationTypeTransformationTypeTransformationTypetransformationType =
'projective'"projective""projective""projective""projective" a projective 3D transformation is computed.
The minimum required number of point correspondences is 3 for
TransformationTypeTransformationTypeTransformationTypeTransformationTypetransformationType = 'rigid'"rigid""rigid""rigid""rigid", 3 for
TransformationTypeTransformationTypeTransformationTypeTransformationTypetransformationType = 'similarity'"similarity""similarity""similarity""similarity", 4 for
TransformationTypeTransformationTypeTransformationTypeTransformationTypetransformationType = 'affine'"affine""affine""affine""affine", and 5 for
TransformationTypeTransformationTypeTransformationTypeTransformationTypetransformationType = 'projective'"projective""projective""projective""projective".
The point correspondences are passed in the tuples
(PxPxPxPxpx,PyPyPyPypy,PzPzPzPzpz) and
(QxQxQxQxqx,QyQyQyQyqy,QzQzQzQzqz), where corresponding points
must be at the same index positions in the tuples. If more than the
minimum number of point correspondences are passed, the
transformation is overdetermined. In this case, the returned
transformation is the transformation that minimizes the distances
between the transformed input points
(PxPxPxPxpx,PyPyPyPypy,PzPzPzPzpz) and the points
(QxQxQxQxqx,QyQyQyQyqy,QzQzQzQzqz), as described in the following
equation (points as homogeneous vectors):
HomMat3DHomMat3DHomMat3DHomMat3DhomMat3D can be used directly with operators that transform
3D data using affine transformations, e.g.,
affine_trans_point_3daffine_trans_point_3dAffineTransPoint3dAffineTransPoint3dAffineTransPoint3d.
- Multithreading type: reentrant (runs in parallel with non-exclusive operators).
- Multithreading scope: global (may be called from any thread).
- Processed without parallelization.
Type of the transformation to compute.
Default value:
'rigid'
"rigid"
"rigid"
"rigid"
"rigid"
List of values: 'affine'"affine""affine""affine""affine", 'projective'"projective""projective""projective""projective", 'rigid'"rigid""rigid""rigid""rigid", 'similarity'"similarity""similarity""similarity""similarity"
X coordinates of the original points.
Y coordinates of the original points.
Z coordinates of the original points.
X coordinates of the transformed points.
Y coordinates of the transformed points.
Z coordinates of the transformed points.
Output transformation matrix.
hom_mat3d_to_posehom_mat3d_to_poseHomMat3dToPoseHomMat3dToPoseHomMat3dToPose,
affine_trans_point_3daffine_trans_point_3dAffineTransPoint3dAffineTransPoint3dAffineTransPoint3d
Foundation