projective_trans_point_2dT_projective_trans_point_2dProjectiveTransPoint2dProjectiveTransPoint2dprojective_trans_point_2d (算子)

名称

projective_trans_point_2dT_projective_trans_point_2dProjectiveTransPoint2dProjectiveTransPoint2dprojective_trans_point_2d — 使用投影变换矩阵投影一个齐次二维点。

签名

projective_trans_point_2d( : : HomMat2D, Px, Py, Pw : Qx, Qy, Qw)

Herror T_projective_trans_point_2d(const Htuple HomMat2D, const Htuple Px, const Htuple Py, const Htuple Pw, Htuple* Qx, Htuple* Qy, Htuple* Qw)

void ProjectiveTransPoint2d(const HTuple& HomMat2D, const HTuple& Px, const HTuple& Py, const HTuple& Pw, HTuple* Qx, HTuple* Qy, HTuple* Qw)

HTuple HHomMat2D::ProjectiveTransPoint2d(const HTuple& Px, const HTuple& Py, const HTuple& Pw, HTuple* Qy, HTuple* Qw) const

double HHomMat2D::ProjectiveTransPoint2d(double Px, double Py, double Pw, double* Qy, double* Qw) const

static void HOperatorSet.ProjectiveTransPoint2d(HTuple homMat2D, HTuple px, HTuple py, HTuple pw, out HTuple qx, out HTuple qy, out HTuple qw)

HTuple HHomMat2D.ProjectiveTransPoint2d(HTuple px, HTuple py, HTuple pw, out HTuple qy, out HTuple qw)

double HHomMat2D.ProjectiveTransPoint2d(double px, double py, double pw, out double qy, out double qw)

def projective_trans_point_2d(hom_mat_2d: Sequence[float], px: MaybeSequence[Union[float, int]], py: MaybeSequence[Union[float, int]], pw: MaybeSequence[Union[float, int]]) -> Tuple[Sequence[float], Sequence[float], Sequence[float]]

def projective_trans_point_2d_s(hom_mat_2d: Sequence[float], px: MaybeSequence[Union[float, int]], py: MaybeSequence[Union[float, int]], pw: MaybeSequence[Union[float, int]]) -> Tuple[float, float, float]

描述

projective_trans_point_2dprojective_trans_point_2dProjectiveTransPoint2dProjectiveTransPoint2dProjectiveTransPoint2dprojective_trans_point_2d applies the homogeneous projective transformation matrix HomMat2DHomMat2DHomMat2DHomMat2DhomMat2Dhom_mat_2d to all homogeneous input points (PxPxPxPxpxpx,PyPyPyPypypy,PwPwPwPwpwpw) and returns an array of homogeneous output points (QxQxQxQxqxqx,QyQyQyQyqyqy,QwQwQwQwqwqw). The transformation is described by the homogeneous transformation matrix given in HomMat2DHomMat2DHomMat2DHomMat2DhomMat2Dhom_mat_2d. This corresponds to the following equation (input and output points as homogeneous vectors):

To transform the homogeneous coordinates to Euclidean coordinates, they have to be divided by QwQwQwQwqwqw:

若需转换的点在标准图像坐标系中指定,其坐标必须通过 PxPxPxPxpxpx 传递,坐标则通过 PyPyPyPypypy 传递。此操作旨在为图像建立右手坐标系,尤其确保旋转操作按正确方向执行。需注意矩阵中 (x,y) 的顺序与图像坐标中常规的 (行,列) 顺序自然对应。

执行信息

参数

HomMat2DHomMat2DHomMat2DHomMat2DhomMat2Dhom_mat_2d (输入控制)  hom_mat2d HHomMat2D, HTupleSequence[float]HTupleHtuple (real) (double) (double) (double)

Homogeneous projective transformation matrix.

PxPxPxPxpxpx (输入控制)  number(-array) HTupleMaybeSequence[Union[float, int]]HTupleHtuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong)

Input point (x coordinate).

PyPyPyPypypy (输入控制)  number(-array) HTupleMaybeSequence[Union[float, int]]HTupleHtuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong)

Input point (y coordinate).

PwPwPwPwpwpw (输入控制)  number(-array) HTupleMaybeSequence[Union[float, int]]HTupleHtuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong)

Input point (w coordinate).

QxQxQxQxqxqx (输出控制)  number(-array) HTupleSequence[float]HTupleHtuple (real) (double) (double) (double)

Output point (x coordinate).

QyQyQyQyqyqy (输出控制)  number(-array) HTupleSequence[float]HTupleHtuple (real) (double) (double) (double)

Output point (y coordinate).

QwQwQwQwqwqw (输出控制)  number(-array) HTupleSequence[float]HTupleHtuple (real) (double) (double) (double)

Output point (w coordinate).

可能的前趋

vector_to_proj_hom_mat2dvector_to_proj_hom_mat2dVectorToProjHomMat2dVectorToProjHomMat2dVectorToProjHomMat2dvector_to_proj_hom_mat2d, hom_vector_to_proj_hom_mat2dhom_vector_to_proj_hom_mat2dHomVectorToProjHomMat2dHomVectorToProjHomMat2dHomVectorToProjHomMat2dhom_vector_to_proj_hom_mat2d, proj_match_points_ransacproj_match_points_ransacProjMatchPointsRansacProjMatchPointsRansacProjMatchPointsRansacproj_match_points_ransac, proj_match_points_ransac_guidedproj_match_points_ransac_guidedProjMatchPointsRansacGuidedProjMatchPointsRansacGuidedProjMatchPointsRansacGuidedproj_match_points_ransac_guided, hom_mat3d_projecthom_mat3d_projectHomMat3dProjectHomMat3dProjectHomMat3dProjecthom_mat3d_project

另见

projective_trans_imageprojective_trans_imageProjectiveTransImageProjectiveTransImageProjectiveTransImageprojective_trans_image, projective_trans_image_sizeprojective_trans_image_sizeProjectiveTransImageSizeProjectiveTransImageSizeProjectiveTransImageSizeprojective_trans_image_size, projective_trans_regionprojective_trans_regionProjectiveTransRegionProjectiveTransRegionProjectiveTransRegionprojective_trans_region, projective_trans_contour_xldprojective_trans_contour_xldProjectiveTransContourXldProjectiveTransContourXldProjectiveTransContourXldprojective_trans_contour_xld, projective_trans_pixelprojective_trans_pixelProjectiveTransPixelProjectiveTransPixelProjectiveTransPixelprojective_trans_pixel

模块

基础