intersect_lines_of_sight — Get a 3D point from the intersection of two lines of sight within a binocular camera system.
Given two lines of sight from different cameras, specified by their image points (Row1,Col1) of camera 1 and (Row2,Col2) of camera 2, intersect_lines_of_sight computes the 3D point of intersection of these lines. The binocular camera system is specified by its internal camera parameters CamParam1 of the projective camera 1 and CamParam2 of the projective camera 2, and the external parameters RelPose defining the pose of the cameras by a point transformation from camera 2 to camera 1. These camera parameters can be obtained, e.g., from the operator calibrate_cameras, if the coordinates of the image points (Row1,Col1) and (Row2,Col2) refer to the respective original image coordinate system. In case of rectified image coordinates ( e.g., obtained from rectified images), the rectified camera parameters must be passed, as they are returned by the operator gen_binocular_rectification_map. The 'point of intersection' is defined by the point with the shortest distance to both lines of sight. This point is returned in Cartesian coordinates (X,Y,Z) of camera system 1 and its distance to the lines of sight is passed in Dist.
Internal parameters of the projective camera 1.
Number of elements: CamParam1 == 8 || CamParam1 == 12
Internal parameters of the projective camera 2.
Number of elements: CamParam2 == 8 || CamParam2 == 12
Point transformation from camera 2 to camera 1.
Number of elements: 7
Row coordinate of a point in image 1.
Column coordinate of a point in image 1.
Row coordinate of the corresponding point in image 2.
Column coordinate of the corresponding point in image 2.
X coordinate of the 3D point.
Y coordinate of the 3D point.
Z coordinate of the 3D point.
Distance of the 3D point to the lines of sight.
intersect_lines_of_sight returns 2 (H_MSG_TRUE) if all parameter values are correct. If necessary, an exception is raised.