projective_trans_pixel T_projective_trans_pixel ProjectiveTransPixel ProjectiveTransPixel projective_trans_pixel (Operator)
projective_trans_pixel T_projective_trans_pixel ProjectiveTransPixel ProjectiveTransPixel projective_trans_pixel
— Project pixel coordinates using a homogeneous projective
transformation matrix.
Signature
void ProjectiveTransPixel (const HTuple& HomMat2D , const HTuple& Row , const HTuple& Col , HTuple* RowTrans , HTuple* ColTrans )
void HHomMat2D ::ProjectiveTransPixel (const HTuple& Row , const HTuple& Col , HTuple* RowTrans , HTuple* ColTrans ) const
void HHomMat2D ::ProjectiveTransPixel (double Row , double Col , double* RowTrans , double* ColTrans ) const
static void HOperatorSet .ProjectiveTransPixel (HTuple homMat2D , HTuple row , HTuple col , out HTuple rowTrans , out HTuple colTrans )
void HHomMat2D .ProjectiveTransPixel (HTuple row , HTuple col , out HTuple rowTrans , out HTuple colTrans )
void HHomMat2D .ProjectiveTransPixel (double row , double col , out double rowTrans , out double colTrans )
def projective_trans_pixel (hom_mat_2d : Sequence[float], row : MaybeSequence[Union[float, int]], col : MaybeSequence[Union[float, int]]) -> Tuple[Sequence[float], Sequence[float]]
def projective_trans_pixel_s (hom_mat_2d : Sequence[float], row : MaybeSequence[Union[float, int]], col : MaybeSequence[Union[float, int]]) -> Tuple[float, float]
Description
projective_trans_pixel projective_trans_pixel ProjectiveTransPixel ProjectiveTransPixel projective_trans_pixel
applies the homogeneous projective
transformation matrix HomMat2D HomMat2D HomMat2D homMat2D hom_mat_2d
to all input pixels
(Row Row Row row row
,Col Col Col col col
) and returns an array of output pixels
(RowTrans RowTrans RowTrans rowTrans row_trans
,ColTrans ColTrans ColTrans colTrans col_trans
). The transformation is
described by the homogeneous transformation matrix given in
HomMat2D HomMat2D HomMat2D homMat2D hom_mat_2d
.
The difference between projective_trans_pixel projective_trans_pixel ProjectiveTransPixel ProjectiveTransPixel projective_trans_pixel
and
projective_trans_point_2d projective_trans_point_2d ProjectiveTransPoint2d ProjectiveTransPoint2d projective_trans_point_2d
lies in the used coordinate
system: projective_trans_pixel projective_trans_pixel ProjectiveTransPixel ProjectiveTransPixel projective_trans_pixel
uses a coordinate system with
origin in the upper left corner of the image, while
projective_trans_point_2d projective_trans_point_2d ProjectiveTransPoint2d ProjectiveTransPoint2d projective_trans_point_2d
uses the standard image coordinate
system, whose origin lies in the middle of the upper left pixel and
which is also used by operators like area_center area_center AreaCenter AreaCenter area_center
.
projective_trans_pixel projective_trans_pixel ProjectiveTransPixel ProjectiveTransPixel projective_trans_pixel
corresponds to the following steps
(input and output points as homogeneous vectors):
If a point at infinity (WTrans
= 0) is created by the
transformation, an error is returned.
Further Information
For an explanation of the different 2D coordinate systems
used in HALCON, see the introduction of chapter
Transformations / 2D Transformations .
Execution Information
Multithreading type: reentrant (runs in parallel with non-exclusive operators).
Multithreading scope: global (may be called from any thread).
Automatically parallelized on internal data level.
Parameters
HomMat2D HomMat2D HomMat2D homMat2D hom_mat_2d
(input_control) hom_mat2d →
HHomMat2D , HTuple Sequence[float] HTuple Htuple (real) (double ) (double ) (double )
Homogeneous projective transformation matrix.
Row Row Row row row
(input_control) point.x(-array) →
HTuple MaybeSequence[Union[float, int]] HTuple Htuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong)
Input pixel(s) (row coordinate).
Default:
64
Suggested values:
0, 16, 32, 64, 128, 256, 512, 1024
Col Col Col col col
(input_control) point.y(-array) →
HTuple MaybeSequence[Union[float, int]] HTuple Htuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong)
Input pixel(s) (column coordinate).
Default:
64
Suggested values:
0, 16, 32, 64, 128, 256, 512, 1024
RowTrans RowTrans RowTrans rowTrans row_trans
(output_control) point.x(-array) →
HTuple Sequence[float] HTuple Htuple (real) (double ) (double ) (double )
Output pixel(s) (row coordinate).
ColTrans ColTrans ColTrans colTrans col_trans
(output_control) point.y(-array) →
HTuple Sequence[float] HTuple Htuple (real) (double ) (double ) (double )
Output pixel(s) (column coordinate).
Possible Predecessors
vector_to_proj_hom_mat2d vector_to_proj_hom_mat2d VectorToProjHomMat2d VectorToProjHomMat2d vector_to_proj_hom_mat2d
,
hom_vector_to_proj_hom_mat2d hom_vector_to_proj_hom_mat2d HomVectorToProjHomMat2d HomVectorToProjHomMat2d hom_vector_to_proj_hom_mat2d
,
proj_match_points_ransac proj_match_points_ransac ProjMatchPointsRansac ProjMatchPointsRansac proj_match_points_ransac
,
proj_match_points_ransac_guided proj_match_points_ransac_guided ProjMatchPointsRansacGuided ProjMatchPointsRansacGuided proj_match_points_ransac_guided
,
hom_mat3d_project hom_mat3d_project HomMat3dProject HomMat3dProject hom_mat3d_project
See also
projective_trans_image projective_trans_image ProjectiveTransImage ProjectiveTransImage projective_trans_image
,
projective_trans_image_size projective_trans_image_size ProjectiveTransImageSize ProjectiveTransImageSize projective_trans_image_size
,
projective_trans_region projective_trans_region ProjectiveTransRegion ProjectiveTransRegion projective_trans_region
,
projective_trans_contour_xld projective_trans_contour_xld ProjectiveTransContourXld ProjectiveTransContourXld projective_trans_contour_xld
,
projective_trans_point_2d projective_trans_point_2d ProjectiveTransPoint2d ProjectiveTransPoint2d projective_trans_point_2d
Module
Foundation