ClassesClassesClassesClasses | | | | Operators

disparity_image_to_xyzT_disparity_image_to_xyzDisparityImageToXyzdisparity_image_to_xyzDisparityImageToXyzDisparityImageToXyz (Operator)

Name

disparity_image_to_xyzT_disparity_image_to_xyzDisparityImageToXyzdisparity_image_to_xyzDisparityImageToXyzDisparityImageToXyz — Transform a disparity image into 3D points in a rectified stereo system.

Signature

disparity_image_to_xyz(Disparity : X, Y, Z : CamParamRect1, CamParamRect2, RelPoseRect : )

Herror T_disparity_image_to_xyz(const Hobject Disparity, Hobject* X, Hobject* Y, Hobject* Z, const Htuple CamParamRect1, const Htuple CamParamRect2, const Htuple RelPoseRect)

Herror disparity_image_to_xyz(Hobject Disparity, Hobject* X, Hobject* Y, Hobject* Z, const HTuple& CamParamRect1, const HTuple& CamParamRect2, const HTuple& RelPoseRect)

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)

Description

Given the disparity image DisparityDisparityDisparityDisparityDisparitydisparity of a rectified binocular stereo system, disparity_image_to_xyzdisparity_image_to_xyzDisparityImageToXyzdisparity_image_to_xyzDisparityImageToXyzDisparityImageToXyz computes the corresponding 3D points. Their coordinates relative to the rectified camera 1 are stored as gray values in the images XXXXXx, YYYYYy, and ZZZZZz, i.e., the pixels at the position (Row,Column) in XXXXXx, YYYYYy, and ZZZZZz contain the x, y, and z coordinate, respectively, of the pixel (Row,Column) in the disparity image.

The rectified binocular camera system is specified by its internal camera parameters CamParamRect1CamParamRect1CamParamRect1CamParamRect1CamParamRect1camParamRect1 of the rectified camera 1 and CamParamRect2CamParamRect2CamParamRect2CamParamRect2CamParamRect2camParamRect2 of the rectified camera 2, and the external parameters RelPoseRectRelPoseRectRelPoseRectRelPoseRectRelPoseRectrelPoseRect defining the pose of the rectified camera 2 in relation to the rectified camera 1. These camera parameters can be obtained from the operators calibrate_camerascalibrate_camerasCalibrateCamerascalibrate_camerasCalibrateCamerasCalibrateCameras and gen_binocular_rectification_mapgen_binocular_rectification_mapGenBinocularRectificationMapgen_binocular_rectification_mapGenBinocularRectificationMapGenBinocularRectificationMap. Focus and scale factor of the rectified camera system 1 and 2 must be equal.

Parallelization

Parameters

DisparityDisparityDisparityDisparityDisparitydisparity (input_object)  singlechannelimage(-array) objectHImageHImageHImageHImageXHobject (real)

Disparity image.

XXXXXx (output_object)  singlechannelimage(-array) objectHImageHImageHImageHImageXHobject * (real)

X coordinates of the points in the rectified camera system 1.

YYYYYy (output_object)  singlechannelimage(-array) objectHImageHImageHImageHImageXHobject * (real)

Y coordinates of the points in the rectified camera system 1.

ZZZZZz (output_object)  singlechannelimage(-array) objectHImageHImageHImageHImageXHobject * (real)

Z coordinates of the points in the rectified camera system 1.

CamParamRect1CamParamRect1CamParamRect1CamParamRect1CamParamRect1camParamRect1 (input_control)  number-array HTupleHTupleHTupleVARIANTHtuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong) (double / Hlong) (double / Hlong)

Internal camera parameters of the rectified camera 1.

Number of elements: CamParamRect1 == 8 || CamParamRect1 == 12

CamParamRect2CamParamRect2CamParamRect2CamParamRect2CamParamRect2camParamRect2 (input_control)  number-array HTupleHTupleHTupleVARIANTHtuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong) (double / Hlong) (double / Hlong)

Internal camera parameters of the rectified camera 2.

Number of elements: CamParamRect2 == 8 || CamParamRect2 == 12

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

Pose of the rectified camera 2 in relation to the rectified camera 1.

Number of elements: 7

Example (HDevelop)

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)

Result

The operator disparity_image_to_xyzdisparity_image_to_xyzDisparityImageToXyzdisparity_image_to_xyzDisparityImageToXyzDisparityImageToXyz returns the value 2 (H_MSG_TRUE) if the input is not empty. The behavior in case of empty input (no input image available) is set via the operator 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>). The behavior in case of empty region (the region is the empty set) is set via 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>). If necessary an exception is raised.

Possible Predecessors

binocular_disparitybinocular_disparityBinocularDisparitybinocular_disparityBinocularDisparityBinocularDisparity

Possible Successors

thresholdthresholdThresholdthresholdThresholdThreshold, write_imagewrite_imageWriteImagewrite_imageWriteImageWriteImage

Alternatives

disparity_to_point_3ddisparity_to_point_3dDisparityToPoint3ddisparity_to_point_3dDisparityToPoint3dDisparityToPoint3d, binocular_distancebinocular_distanceBinocularDistancebinocular_distanceBinocularDistanceBinocularDistance

See also

binocular_calibrationbinocular_calibrationBinocularCalibrationbinocular_calibrationBinocularCalibrationBinocularCalibration, gen_binocular_rectification_mapgen_binocular_rectification_mapGenBinocularRectificationMapgen_binocular_rectification_mapGenBinocularRectificationMapGenBinocularRectificationMap, intersect_lines_of_sightintersect_lines_of_sightIntersectLinesOfSightintersect_lines_of_sightIntersectLinesOfSightIntersectLinesOfSight

Module

3D Metrology


ClassesClassesClassesClasses | | | | Operators