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.
Stereo setups that contain cameras with and without hypercentric lenses at the same time are not supported.
Internal parameters of the projective camera 1.
Internal parameters of the projective camera 2.
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.