KlassenKlassenKlassenKlassen | | | | Operatoren

distance_to_disparityT_distance_to_disparityDistanceToDisparitydistance_to_disparityDistanceToDisparityDistanceToDisparity (Operator)

Name

distance_to_disparityT_distance_to_disparityDistanceToDisparitydistance_to_disparityDistanceToDisparityDistanceToDisparity — Berechnet aus Abständen die erwartete Disparität der Bildpunkte in einem gleichgerichteten Kamerasystem.

Signatur

distance_to_disparity( : : CamParamRect1, CamParamRect2, RelPoseRect, Distance : Disparity)

Herror T_distance_to_disparity(const Htuple CamParamRect1, const Htuple CamParamRect2, const Htuple RelPoseRect, const Htuple Distance, Htuple* Disparity)

Herror distance_to_disparity(const HTuple& CamParamRect1, const HTuple& CamParamRect2, const HTuple& RelPoseRect, const HTuple& Distance, double* Disparity)

Herror distance_to_disparity(const HTuple& CamParamRect1, const HTuple& CamParamRect2, const HTuple& RelPoseRect, const HTuple& Distance, HTuple* Disparity)

void DistanceToDisparity(const HTuple& CamParamRect1, const HTuple& CamParamRect2, const HTuple& RelPoseRect, const HTuple& Distance, HTuple* Disparity)

HTuple HCamPar::DistanceToDisparity(const HCamPar& CamParamRect2, const HPose& RelPoseRect, const HTuple& Distance) const

double HCamPar::DistanceToDisparity(const HCamPar& CamParamRect2, const HPose& RelPoseRect, double Distance) const

HTuple HPose::DistanceToDisparity(const HCamPar& CamParamRect1, const HCamPar& CamParamRect2, const HTuple& Distance) const

double HPose::DistanceToDisparity(const HCamPar& CamParamRect1, const HCamPar& CamParamRect2, double Distance) const

void HOperatorSetX.DistanceToDisparity(
[in] VARIANT CamParamRect1, [in] VARIANT CamParamRect2, [in] VARIANT RelPoseRect, [in] VARIANT Distance, [out] VARIANT* Disparity)

VARIANT HCamParX.DistanceToDisparity(
[in] VARIANT CamParamRect1, [in] VARIANT CamParamRect2, [in] VARIANT RelPoseRect, [in] VARIANT Distance)

VARIANT HPoseX.DistanceToDisparity(
[in] VARIANT CamParamRect1, [in] VARIANT CamParamRect2, [in] VARIANT RelPoseRect, [in] VARIANT Distance)

static void HOperatorSet.DistanceToDisparity(HTuple camParamRect1, HTuple camParamRect2, HTuple relPoseRect, HTuple distance, out HTuple disparity)

HTuple HCamPar.DistanceToDisparity(HCamPar camParamRect2, HPose relPoseRect, HTuple distance)

double HCamPar.DistanceToDisparity(HCamPar camParamRect2, HPose relPoseRect, double distance)

HTuple HPose.DistanceToDisparity(HCamPar camParamRect1, HCamPar camParamRect2, HTuple distance)

double HPose.DistanceToDisparity(HCamPar camParamRect1, HCamPar camParamRect2, double distance)

Beschreibung

distance_to_disparitydistance_to_disparityDistanceToDisparitydistance_to_disparityDistanceToDisparityDistanceToDisparity transformiert den Abstand eines 3D Punktes zum binokularen Stereosystem in einen Disparitätswert. Die Kameras dieses Systems müssen gleichgerichtet sein und werden durch die entzerrten internen Parameter CamParamRect1CamParamRect1CamParamRect1CamParamRect1CamParamRect1camParamRect1 der Kamera 1 und CamParamRect2CamParamRect2CamParamRect2CamParamRect2CamParamRect2camParamRect2 der Kamera 2 und die externen Parameter RelPoseRectRelPoseRectRelPoseRectRelPoseRectRelPoseRectrelPoseRect beschrieben, welche die relative Lage der beiden Kamerasysteme zueinander festlegt, indem es eine Punkttransformation vom entzerrten Kamerasystem 1 in das entzerrte Kamerasystem 2 definiert. Die Werte für diese Parameter kann man von dem Operator calibrate_camerascalibrate_camerasCalibrateCamerascalibrate_camerasCalibrateCamerasCalibrateCameras und gen_binocular_rectification_mapgen_binocular_rectification_mapGenBinocularRectificationMapgen_binocular_rectification_mapGenBinocularRectificationMapGenBinocularRectificationMap erhalten. Der Distanzwert wird in DistanceDistanceDistanceDistanceDistancedistance übergeben und der entsprechende Disparitätswert in DisparityDisparityDisparityDisparityDisparitydisparity zurückgegeben. Die Disparität definiert sich dabei durch die Differenz der Spalten der Bildkoordinaten zweier korrespondierender Punkte auf einer epipolaren Linie entsprechend der Gleichung .

Achtung

Bei der Verwendung von telezentrischen Kameras bezieht sich die Distanz DistanceDistanceDistanceDistanceDistancedistance nicht auf die Entfernung eines Punktes zur Bildebene einer Kamera. Die Entfernung wird zu der Ebene gemessen, die durch die y-Achse beider Kameras und der Basis (siehe gen_binocular_rectification_mapgen_binocular_rectification_mapGenBinocularRectificationMapgen_binocular_rectification_mapGenBinocularRectificationMapGenBinocularRectificationMap) definiert ist.

Für Stereosysteme gemischten Typs (d.h., falls das ursprüngliche Stereosystem aus einer perspektivischen und einer telezentrischen Kamera bestand; siehe gen_binocular_rectification_mapgen_binocular_rectification_mapGenBinocularRectificationMapgen_binocular_rectification_mapGenBinocularRectificationMapGenBinocularRectificationMap), ist die rektifizierende Ebene der zwei Kameras in einer Lage relativ zum Objekt, die zu sehr unintuitiven Distanzen führen würde. Daher unterstützt distance_to_disparitydistance_to_disparityDistanceToDisparitydistance_to_disparityDistanceToDisparityDistanceToDisparity Stereosysteme gemischten Typs nicht.

Parallelisierung

Parameter

CamParamRect1CamParamRect1CamParamRect1CamParamRect1CamParamRect1camParamRect1 (input_control)  campar HCamPar, HTupleHTupleHTupleHCamParX, VARIANTHtuple (real / integer / string) (double / int / long / string) (double / Hlong / HString) (double / Hlong / char*) (double / Hlong / BSTR) (double / Hlong / char*)

Interne Kameraparameter der Kamera 1.

CamParamRect2CamParamRect2CamParamRect2CamParamRect2CamParamRect2camParamRect2 (input_control)  campar HCamPar, HTupleHTupleHTupleHCamParX, VARIANTHtuple (real / integer / string) (double / int / long / string) (double / Hlong / HString) (double / Hlong / char*) (double / Hlong / BSTR) (double / Hlong / char*)

Interne Kameraparameter der Kamera 2.

RelPoseRectRelPoseRectRelPoseRectRelPoseRectRelPoseRectrelPoseRect (input_control)  pose HPose, HTupleHTupleHTupleHPoseX, VARIANTHtuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong) (double / Hlong) (double / Hlong)

Punkttransformation von entzerrter Kamera 2 zur entzerrten Kamera 1.

Parameteranzahl: 7

DistanceDistanceDistanceDistanceDistancedistance (input_control)  real(-array) HTupleHTupleHTupleVARIANTHtuple (real) (double) (double) (double) (double) (double)

Abstand eines Weltpunktes zu Kamera 1.

Restriktion: 0 < Distance

DisparityDisparityDisparityDisparityDisparitydisparity (output_control)  number(-array) HTupleHTupleHTupleVARIANTHtuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong) (double / Hlong) (double / Hlong)

Disparität zwischen den Punkt-Abbildungen.

Ergebnis

Sind die Parameterwerte korrekt, dann liefert distance_to_disparitydistance_to_disparityDistanceToDisparitydistance_to_disparityDistanceToDisparityDistanceToDisparity den Wert 2 (H_MSG_TRUE).

Vorgänger

binocular_calibrationbinocular_calibrationBinocularCalibrationbinocular_calibrationBinocularCalibrationBinocularCalibration, gen_binocular_rectification_mapgen_binocular_rectification_mapGenBinocularRectificationMapgen_binocular_rectification_mapGenBinocularRectificationMapGenBinocularRectificationMap

Nachfolger

binocular_disparitybinocular_disparityBinocularDisparitybinocular_disparityBinocularDisparityBinocularDisparity

Modul

3D Metrology


KlassenKlassenKlassenKlassen | | | | Operatoren