disparity_to_distance T_disparity_to_distance DisparityToDistance DisparityToDistance disparity_to_distance (Operator)
disparity_to_distance T_disparity_to_distance DisparityToDistance DisparityToDistance disparity_to_distance
— Transform a disparity value into a distance value in a rectified
binocular stereo system.
Signature
void DisparityToDistance (const HTuple& CamParamRect1 , const HTuple& CamParamRect2 , const HTuple& RelPoseRect , const HTuple& Disparity , HTuple* Distance )
HTuple HCamPar ::DisparityToDistance (const HCamPar& CamParamRect2 , const HPose& RelPoseRect , const HTuple& Disparity ) const
double HCamPar ::DisparityToDistance (const HCamPar& CamParamRect2 , const HPose& RelPoseRect , double Disparity ) const
HTuple HPose ::DisparityToDistance (const HCamPar& CamParamRect1 , const HCamPar& CamParamRect2 , const HTuple& Disparity ) const
double HPose ::DisparityToDistance (const HCamPar& CamParamRect1 , const HCamPar& CamParamRect2 , double Disparity ) const
static void HOperatorSet .DisparityToDistance (HTuple camParamRect1 , HTuple camParamRect2 , HTuple relPoseRect , HTuple disparity , out HTuple distance )
HTuple HCamPar .DisparityToDistance (HCamPar camParamRect2 , HPose relPoseRect , HTuple disparity )
double HCamPar .DisparityToDistance (HCamPar camParamRect2 , HPose relPoseRect , double disparity )
HTuple HPose .DisparityToDistance (HCamPar camParamRect1 , HCamPar camParamRect2 , HTuple disparity )
double HPose .DisparityToDistance (HCamPar camParamRect1 , HCamPar camParamRect2 , double disparity )
def disparity_to_distance (cam_param_rect_1 : Sequence[Union[int, float, str]], cam_param_rect_2 : Sequence[Union[int, float, str]], rel_pose_rect : Sequence[Union[int, float]], disparity : MaybeSequence[Union[int, float]]) -> Sequence[float]
def disparity_to_distance_s (cam_param_rect_1 : Sequence[Union[int, float, str]], cam_param_rect_2 : Sequence[Union[int, float, str]], rel_pose_rect : Sequence[Union[int, float]], disparity : MaybeSequence[Union[int, float]]) -> float
Description
disparity_to_distance disparity_to_distance DisparityToDistance DisparityToDistance disparity_to_distance
transforms a disparity value into a
distance of an object point to the binocular stereo system. The
cameras of this system must be rectified and are defined by the
rectified internal parameters CamParamRect1 CamParamRect1 CamParamRect1 camParamRect1 cam_param_rect_1
of camera 1 and
CamParamRect2 CamParamRect2 CamParamRect2 camParamRect2 cam_param_rect_2
of camera 2, and the external parameters
RelPoseRect RelPoseRect RelPoseRect relPoseRect rel_pose_rect
. Latter specifies the relative pose of both
cameras to each other by defining a point transformation from
rectified camera system 2 to rectified camera system 1. These
parameters can be obtained from the operator
calibrate_cameras calibrate_cameras CalibrateCameras CalibrateCameras calibrate_cameras
and
gen_binocular_rectification_map gen_binocular_rectification_map GenBinocularRectificationMap GenBinocularRectificationMap gen_binocular_rectification_map
. The disparity value
Disparity Disparity Disparity disparity disparity
is defined by the column difference of the image
coordinates of two corresponding points on an epipolar line
according to the equation
(see also binocular_disparity binocular_disparity BinocularDisparity BinocularDisparity binocular_disparity
). This value characterises
a set of 3D object points of an equal distance to a plane being
parallel to the rectified image plane of the stereo system.
The distance to the subset plane z=0 which is parallel to
the rectified image plane and contains the optical centers of both
cameras is returned in Distance Distance Distance distance distance
.
Attention
If using cameras with telecentric lenses, the Distance Distance Distance distance distance
is
not defined as the distance of a point to the camera but as the
distance from the point to the plane, defined by the y-axes of both
cameras and their baseline (see
gen_binocular_rectification_map gen_binocular_rectification_map GenBinocularRectificationMap GenBinocularRectificationMap gen_binocular_rectification_map
).
For a stereo setup of mixed type (i.e., for a stereo setup in which
one of the original cameras is a perspective camera and the other
camera is a telecentric camera; see
gen_binocular_rectification_map gen_binocular_rectification_map GenBinocularRectificationMap GenBinocularRectificationMap gen_binocular_rectification_map
), the rectifying plane of
the two cameras is in a position with respect to the object that
would lead to very unintuitive distances. Therefore,
disparity_to_distance disparity_to_distance DisparityToDistance DisparityToDistance disparity_to_distance
does not support stereo setups of
mixed type. For stereo setups of mixed type,
disparity_to_point_3d disparity_to_point_3d DisparityToPoint3d DisparityToPoint3d disparity_to_point_3d
should be used instead.
Additionally, stereo setups that contain cameras with and without hypercentric
lenses at the same time are not supported.
Execution Information
Multithreading type: reentrant (runs in parallel with non-exclusive operators).
Multithreading scope: global (may be called from any thread).
Processed without parallelization.
Parameters
CamParamRect1 CamParamRect1 CamParamRect1 camParamRect1 cam_param_rect_1
(input_control) campar →
HCamPar , HTuple Sequence[Union[int, float, str]] HTuple Htuple (real / integer / string) (double / int / long / string) (double / Hlong / HString) (double / Hlong / char*)
Rectified internal camera parameters of camera 1.
CamParamRect2 CamParamRect2 CamParamRect2 camParamRect2 cam_param_rect_2
(input_control) campar →
HCamPar , HTuple Sequence[Union[int, float, str]] HTuple Htuple (real / integer / string) (double / int / long / string) (double / Hlong / HString) (double / Hlong / char*)
Rectified internal camera parameters of camera 2.
RelPoseRect RelPoseRect RelPoseRect relPoseRect rel_pose_rect
(input_control) pose →
HPose , HTuple Sequence[Union[int, float]] HTuple Htuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong)
Point transformation from the rectified camera 2 to
the rectified camera 1.
Number of elements:
7
Disparity Disparity Disparity disparity disparity
(input_control) number(-array) →
HTuple MaybeSequence[Union[int, float]] HTuple Htuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong)
Disparity between the images of the world point.
Distance Distance Distance distance distance
(output_control) real(-array) →
HTuple Sequence[float] HTuple Htuple (real) (double ) (double ) (double )
Distance of a world point to the rectified camera
system.
Result
disparity_to_distance disparity_to_distance DisparityToDistance DisparityToDistance disparity_to_distance
returns 2 (
H_MSG_TRUE )
if all parameter values
are correct. If necessary, an exception is raised.
Possible Predecessors
binocular_calibration binocular_calibration BinocularCalibration BinocularCalibration binocular_calibration
,
gen_binocular_rectification_map gen_binocular_rectification_map GenBinocularRectificationMap GenBinocularRectificationMap gen_binocular_rectification_map
,
map_image map_image MapImage MapImage map_image
,
binocular_disparity binocular_disparity BinocularDisparity BinocularDisparity binocular_disparity
Alternatives
binocular_distance binocular_distance BinocularDistance BinocularDistance binocular_distance
See also
distance_to_disparity distance_to_disparity DistanceToDisparity DistanceToDisparity distance_to_disparity
,
disparity_to_point_3d disparity_to_point_3d DisparityToPoint3d DisparityToPoint3d disparity_to_point_3d
Module
3D Metrology