projective_trans_point_2dT_projective_trans_point_2dProjectiveTransPoint2dProjectiveTransPoint2dprojective_trans_point_2d (Operator)

Name

projective_trans_point_2dT_projective_trans_point_2dProjectiveTransPoint2dProjectiveTransPoint2dprojective_trans_point_2d — Projiziert einen homogenen 2D-Punkt mittels einer projektiven Transformationsmatrix.

Signatur

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]

Beschreibung

projective_trans_point_2dprojective_trans_point_2dProjectiveTransPoint2dProjectiveTransPoint2dProjectiveTransPoint2dprojective_trans_point_2d wendet die homogene projektive Transformationsmatrix HomMat2DHomMat2DHomMat2DHomMat2DhomMat2Dhom_mat_2d auf alle homogenen Eingabepunkte (PxPxPxPxpxpx,PyPyPyPypypy,PwPwPwPwpwpw) an und liefert eine Liste von homogenen Ergebnispunkten (QxQxQxQxqxqx,QyQyQyQyqyqy,QwQwQwQwqwqw) zurück. Die Transformation wird durch eine homogene Transformationsmatrix beschrieben, die in HomMat2DHomMat2DHomMat2DHomMat2DhomMat2Dhom_mat_2d übergeben wird. Dies entspricht der folgenden Gleichung (Ein- und Ausgabepunkte als homogene Vektoren dargestellt):

Um die homogenen Koordinaten in euklidische Koordinaten zu transformieren, muss durch QwQwQwQwqwqw geteilt werden:

Falls die zu transformierenden Punkte in Standard-Bildkoordinaten vorliegen, müssen die Zeilen-Koordinaten der Punkte in PxPxPxPxpxpx und die Spalten-Koordinaten in PyPyPyPypypy übergeben werden. Dies ist notwendig, um für das Bild ein rechtshändiges Koordinatensystem zu erhalten. Insbesondere werden dadurch Rotationen im korrekten Drehsinn ausgeführt. Die Koordinatenreihenfolge (x,y) der Matrizen entspricht dann der üblichen Koordinatenreihenfolge (Zeile,Spalte) der Bilder.

Ausführungsinformationen

Parameter

HomMat2DHomMat2DHomMat2DHomMat2DhomMat2Dhom_mat_2d (input_control)  hom_mat2d HHomMat2D, HTupleSequence[float]HTupleHtuple (real) (double) (double) (double)

Homogene projektive Transformationsmatrix.

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

Eingabepunkt (x-Koordinate).

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

Eingabepunkt (y-Koordinate).

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

Eingabepunkt (w-Koordinate).

QxQxQxQxqxqx (output_control)  number(-array) HTupleSequence[float]HTupleHtuple (real) (double) (double) (double)

Ausgabepunkt (x-Koordinate).

QyQyQyQyqyqy (output_control)  number(-array) HTupleSequence[float]HTupleHtuple (real) (double) (double) (double)

Ausgabepunkt (y-Koordinate).

QwQwQwQwqwqw (output_control)  number(-array) HTupleSequence[float]HTupleHtuple (real) (double) (double) (double)

Ausgabepunkt (w-Koordinate).

Vorgänger

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

Siehe auch

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

Modul

Foundation