Name
disparity_image_to_xyzT_disparity_image_to_xyzDisparityImageToXyzdisparity_image_to_xyzDisparityImageToXyzDisparityImageToXyz — Berechnet aus einem Disparitätsbild eines rektifizierten Bildpaars
die zugehörigen 3D-Punkte.
void DisparityImageToXyz(const HObject& Disparity, HObject* X, HObject* Y, HObject* Z, const HTuple& CamParamRect1, const HTuple& CamParamRect2, const HTuple& RelPoseRect)
HImage HPose::DisparityImageToXyz(const HImage& Disparity, HImage* Y, HImage* Z, const HTuple& CamParamRect1, const HTuple& CamParamRect2) const
void HOperatorSetX.DisparityImageToXyz(
[in] IHUntypedObjectX* Disparity, [out] IHUntypedObjectX** X, [out] IHUntypedObjectX** Y, [out] IHUntypedObjectX** Z, [in] VARIANT CamParamRect1, [in] VARIANT CamParamRect2, [in] VARIANT RelPoseRect)
IHImageX* HPoseX.DisparityImageToXyz(
[in] IHImageX* Disparity, [out] IHImageX** Y, [out] IHImageX** Z, [in] VARIANT CamParamRect1, [in] VARIANT CamParamRect2, [in] VARIANT RelPoseRect)
static void HOperatorSet.DisparityImageToXyz(HObject disparity, out HObject x, out HObject y, out HObject z, HTuple camParamRect1, HTuple camParamRect2, HTuple relPoseRect)
HImage HPose.DisparityImageToXyz(HImage disparity, out HImage y, out HImage z, HTuple camParamRect1, HTuple camParamRect2)
Aus dem Disparitätsbild DisparityDisparityDisparityDisparityDisparitydisparity eines rektifizierten binokularen
Stereosystems berechnet disparity_image_to_xyzdisparity_image_to_xyzDisparityImageToXyzdisparity_image_to_xyzDisparityImageToXyzDisparityImageToXyz die korrespondierenden
3D-Punkte. Ihre Koordinaten bezüglich der rektifizierten Kamera 1
werden als Grauwerte in den Bildern XXXXXx, YYYYYy und ZZZZZz
zurückgegeben, d.h. die Pixel an der Position (Row,Colum) in XXXXXx,
YYYYYy und ZZZZZz enthalten die X-, Y- und Z-Koordinate des Pixels
(Row,Colum) im Disparitätsbild.
Das rektifizierte binokulare
Kamerasystem wird durch die internen Kameraparameter
CamParamRect1CamParamRect1CamParamRect1CamParamRect1CamParamRect1camParamRect1 der rektifizierten Kamera 1 und
CamParamRect2CamParamRect2CamParamRect2CamParamRect2CamParamRect2camParamRect2 der rektifizierten Kamera 2 und die externen
Parameter RelPoseRectRelPoseRectRelPoseRectRelPoseRectRelPoseRectrelPoseRect bestimmt, welche die Lage des
rektifizierten Kamerasystems 2 bezüglich des rektifizierten
Kamerasystems 1 beschreiben. Die Werte für diese Kameraparameter
können von den Operatoren calibrate_camerascalibrate_camerasCalibrateCamerascalibrate_camerasCalibrateCamerasCalibrateCameras und
gen_binocular_rectification_mapgen_binocular_rectification_mapGenBinocularRectificationMapgen_binocular_rectification_mapGenBinocularRectificationMapGenBinocularRectificationMap erhalten werden. Fokus und
Pixelgröße des rektifizierten Kamerasystems 1 und 2 müssen
gleich sein.
- Multithreading-Typ: reentrant (läuft parallel zu nicht-exklusiven Operatoren).
- Multithreading-Bereich: global (kann von jedem Thread aufgerufen werden).
- Automatisch parallelisiert auf Tupelebene.
- Automatisch parallelisiert auf Domainebene.
X-Koordinaten der Punkte im rektifizierten
Kamerasystem 1.
Y-Koordinaten der Punkte im rektifizierten
Kamerasystem 1.
Z-Koordinaten der Punkte im rektifizierten
Kamerasystem 1.
Interne Kameraparameter der projektiven Kamera 1.
Parameteranzahl: CamParamRect1 == 8 || CamParamRect1 == 12
Interne Kameraparameter der projektiven Kamera 2.
Parameteranzahl: CamParamRect2 == 8 || CamParamRect2 == 12
Lage der zweiten Kamera bzgl. der ersten.
Parameteranzahl: 7
disparity_image_to_xyz (ImageDisparity, ImgX, ImgY, ImgZ, RectCamParL, \
RectCamParR, RectLPosRectR)
get_region_points (ImageDisparity, Rows, Columns)
get_grayval (ImgX, Rows, Columns, XValues)
get_grayval (ImgY, Rows, Columns, YValues)
get_grayval (ImgZ, Rows, Columns, ZValues)
Sind die Parameterwerte korrekt, dann liefert
disparity_image_to_xyzdisparity_image_to_xyzDisparityImageToXyzdisparity_image_to_xyzDisparityImageToXyzDisparityImageToXyz den Wert 2 (H_MSG_TRUE).
Das Verhalten bei leerer Eingabe (kein Eingabebild vorhanden)
lässt sich mittels set_system('no_object_result',<Result>)set_system("no_object_result",<Result>)SetSystem("no_object_result",<Result>)set_system("no_object_result",<Result>)SetSystem("no_object_result",<Result>)SetSystem("no_object_result",<Result>)
festlegen. Das Verhalten bei einer leeren Region (Region ist die leere Menge)
wird mit set_system('empty_region_result',<Result>)set_system("empty_region_result",<Result>)SetSystem("empty_region_result",<Result>)set_system("empty_region_result",<Result>)SetSystem("empty_region_result",<Result>)SetSystem("empty_region_result",<Result>) bestimmt.
Gegebenenfalls wird eine Fehlerbehandlung durchgeführt.
binocular_disparitybinocular_disparityBinocularDisparitybinocular_disparityBinocularDisparityBinocularDisparity
thresholdthresholdThresholdthresholdThresholdThreshold,
write_imagewrite_imageWriteImagewrite_imageWriteImageWriteImage
disparity_to_point_3ddisparity_to_point_3dDisparityToPoint3ddisparity_to_point_3dDisparityToPoint3dDisparityToPoint3d,
binocular_distancebinocular_distanceBinocularDistancebinocular_distanceBinocularDistanceBinocularDistance
binocular_calibrationbinocular_calibrationBinocularCalibrationbinocular_calibrationBinocularCalibrationBinocularCalibration,
gen_binocular_rectification_mapgen_binocular_rectification_mapGenBinocularRectificationMapgen_binocular_rectification_mapGenBinocularRectificationMapGenBinocularRectificationMap,
intersect_lines_of_sightintersect_lines_of_sightIntersectLinesOfSightintersect_lines_of_sightIntersectLinesOfSightIntersectLinesOfSight
3D Metrology