scene_flow_calib T_scene_flow_calib SceneFlowCalib SceneFlowCalib scene_flow_calib (算子)
名称
scene_flow_calib T_scene_flow_calib SceneFlowCalib SceneFlowCalib scene_flow_calib — 计算两个立体图像对之间的标定场景流。
签名
scene_flow_calib (ImageRect1T1 , ImageRect2T1 , ImageRect1T2 , ImageRect2T2 , Disparity : : SmoothingFlow , SmoothingDisparity , GenParamName , GenParamValue , CamParamRect1 , CamParamRect2 , RelPoseRect : ObjectModel3D )
Herror T_scene_flow_calib (const Hobject ImageRect1T1 , const Hobject ImageRect2T1 , const Hobject ImageRect1T2 , const Hobject ImageRect2T2 , const Hobject Disparity , const Htuple SmoothingFlow , const Htuple SmoothingDisparity , const Htuple GenParamName , const Htuple GenParamValue , const Htuple CamParamRect1 , const Htuple CamParamRect2 , const Htuple RelPoseRect , Htuple* ObjectModel3D )
void SceneFlowCalib (const HObject& ImageRect1T1 , const HObject& ImageRect2T1 , const HObject& ImageRect1T2 , const HObject& ImageRect2T2 , const HObject& Disparity , const HTuple& SmoothingFlow , const HTuple& SmoothingDisparity , const HTuple& GenParamName , const HTuple& GenParamValue , const HTuple& CamParamRect1 , const HTuple& CamParamRect2 , const HTuple& RelPoseRect , HTuple* ObjectModel3D )
static HObjectModel3DArray HObjectModel3D ::SceneFlowCalib (const HImage& ImageRect1T1 , const HImage& ImageRect2T1 , const HImage& ImageRect1T2 , const HImage& ImageRect2T2 , const HImage& Disparity , const HTuple& SmoothingFlow , const HTuple& SmoothingDisparity , const HTuple& GenParamName , const HTuple& GenParamValue , const HCamPar& CamParamRect1 , const HCamPar& CamParamRect2 , const HPose& RelPoseRect )
void HObjectModel3D ::SceneFlowCalib (const HImage& ImageRect1T1 , const HImage& ImageRect2T1 , const HImage& ImageRect1T2 , const HImage& ImageRect2T2 , const HImage& Disparity , double SmoothingFlow , double SmoothingDisparity , const HString& GenParamName , const HString& GenParamValue , const HCamPar& CamParamRect1 , const HCamPar& CamParamRect2 , const HPose& RelPoseRect )
void HObjectModel3D ::SceneFlowCalib (const HImage& ImageRect1T1 , const HImage& ImageRect2T1 , const HImage& ImageRect1T2 , const HImage& ImageRect2T2 , const HImage& Disparity , double SmoothingFlow , double SmoothingDisparity , const char* GenParamName , const char* GenParamValue , const HCamPar& CamParamRect1 , const HCamPar& CamParamRect2 , const HPose& RelPoseRect )
void HObjectModel3D ::SceneFlowCalib (const HImage& ImageRect1T1 , const HImage& ImageRect2T1 , const HImage& ImageRect1T2 , const HImage& ImageRect2T2 , const HImage& Disparity , double SmoothingFlow , double SmoothingDisparity , const wchar_t* GenParamName , const wchar_t* GenParamValue , const HCamPar& CamParamRect1 , const HCamPar& CamParamRect2 , const HPose& RelPoseRect )
(
Windows only)
HObjectModel3DArray HCamPar ::SceneFlowCalib (const HImage& ImageRect1T1 , const HImage& ImageRect2T1 , const HImage& ImageRect1T2 , const HImage& ImageRect2T2 , const HImage& Disparity , const HTuple& SmoothingFlow , const HTuple& SmoothingDisparity , const HTuple& GenParamName , const HTuple& GenParamValue , const HCamPar& CamParamRect2 , const HPose& RelPoseRect ) const
HObjectModel3D HCamPar ::SceneFlowCalib (const HImage& ImageRect1T1 , const HImage& ImageRect2T1 , const HImage& ImageRect1T2 , const HImage& ImageRect2T2 , const HImage& Disparity , double SmoothingFlow , double SmoothingDisparity , const HString& GenParamName , const HString& GenParamValue , const HCamPar& CamParamRect2 , const HPose& RelPoseRect ) const
HObjectModel3D HCamPar ::SceneFlowCalib (const HImage& ImageRect1T1 , const HImage& ImageRect2T1 , const HImage& ImageRect1T2 , const HImage& ImageRect2T2 , const HImage& Disparity , double SmoothingFlow , double SmoothingDisparity , const char* GenParamName , const char* GenParamValue , const HCamPar& CamParamRect2 , const HPose& RelPoseRect ) const
HObjectModel3D HCamPar ::SceneFlowCalib (const HImage& ImageRect1T1 , const HImage& ImageRect2T1 , const HImage& ImageRect1T2 , const HImage& ImageRect2T2 , const HImage& Disparity , double SmoothingFlow , double SmoothingDisparity , const wchar_t* GenParamName , const wchar_t* GenParamValue , const HCamPar& CamParamRect2 , const HPose& RelPoseRect ) const
(
Windows only)
HObjectModel3DArray HPose ::SceneFlowCalib (const HImage& ImageRect1T1 , const HImage& ImageRect2T1 , const HImage& ImageRect1T2 , const HImage& ImageRect2T2 , const HImage& Disparity , const HTuple& SmoothingFlow , const HTuple& SmoothingDisparity , const HTuple& GenParamName , const HTuple& GenParamValue , const HCamPar& CamParamRect1 , const HCamPar& CamParamRect2 ) const
HObjectModel3D HPose ::SceneFlowCalib (const HImage& ImageRect1T1 , const HImage& ImageRect2T1 , const HImage& ImageRect1T2 , const HImage& ImageRect2T2 , const HImage& Disparity , double SmoothingFlow , double SmoothingDisparity , const HString& GenParamName , const HString& GenParamValue , const HCamPar& CamParamRect1 , const HCamPar& CamParamRect2 ) const
HObjectModel3D HPose ::SceneFlowCalib (const HImage& ImageRect1T1 , const HImage& ImageRect2T1 , const HImage& ImageRect1T2 , const HImage& ImageRect2T2 , const HImage& Disparity , double SmoothingFlow , double SmoothingDisparity , const char* GenParamName , const char* GenParamValue , const HCamPar& CamParamRect1 , const HCamPar& CamParamRect2 ) const
HObjectModel3D HPose ::SceneFlowCalib (const HImage& ImageRect1T1 , const HImage& ImageRect2T1 , const HImage& ImageRect1T2 , const HImage& ImageRect2T2 , const HImage& Disparity , double SmoothingFlow , double SmoothingDisparity , const wchar_t* GenParamName , const wchar_t* GenParamValue , const HCamPar& CamParamRect1 , const HCamPar& CamParamRect2 ) const
(
Windows only)
static void HOperatorSet .SceneFlowCalib (HObject imageRect1T1 , HObject imageRect2T1 , HObject imageRect1T2 , HObject imageRect2T2 , HObject disparity , HTuple smoothingFlow , HTuple smoothingDisparity , HTuple genParamName , HTuple genParamValue , HTuple camParamRect1 , HTuple camParamRect2 , HTuple relPoseRect , out HTuple objectModel3D )
static HObjectModel3D[] HObjectModel3D .SceneFlowCalib (HImage imageRect1T1 , HImage imageRect2T1 , HImage imageRect1T2 , HImage imageRect2T2 , HImage disparity , HTuple smoothingFlow , HTuple smoothingDisparity , HTuple genParamName , HTuple genParamValue , HCamPar camParamRect1 , HCamPar camParamRect2 , HPose relPoseRect )
void HObjectModel3D .SceneFlowCalib (HImage imageRect1T1 , HImage imageRect2T1 , HImage imageRect1T2 , HImage imageRect2T2 , HImage disparity , double smoothingFlow , double smoothingDisparity , string genParamName , string genParamValue , HCamPar camParamRect1 , HCamPar camParamRect2 , HPose relPoseRect )
HObjectModel3D[] HCamPar .SceneFlowCalib (HImage imageRect1T1 , HImage imageRect2T1 , HImage imageRect1T2 , HImage imageRect2T2 , HImage disparity , HTuple smoothingFlow , HTuple smoothingDisparity , HTuple genParamName , HTuple genParamValue , HCamPar camParamRect2 , HPose relPoseRect )
HObjectModel3D HCamPar .SceneFlowCalib (HImage imageRect1T1 , HImage imageRect2T1 , HImage imageRect1T2 , HImage imageRect2T2 , HImage disparity , double smoothingFlow , double smoothingDisparity , string genParamName , string genParamValue , HCamPar camParamRect2 , HPose relPoseRect )
HObjectModel3D[] HPose .SceneFlowCalib (HImage imageRect1T1 , HImage imageRect2T1 , HImage imageRect1T2 , HImage imageRect2T2 , HImage disparity , HTuple smoothingFlow , HTuple smoothingDisparity , HTuple genParamName , HTuple genParamValue , HCamPar camParamRect1 , HCamPar camParamRect2 )
HObjectModel3D HPose .SceneFlowCalib (HImage imageRect1T1 , HImage imageRect2T1 , HImage imageRect1T2 , HImage imageRect2T2 , HImage disparity , double smoothingFlow , double smoothingDisparity , string genParamName , string genParamValue , HCamPar camParamRect1 , HCamPar camParamRect2 )
def scene_flow_calib (image_rect_1t1 : HObject, image_rect_2t1 : HObject, image_rect_1t2 : HObject, image_rect_2t2 : HObject, disparity : HObject, smoothing_flow : Union[float, int], smoothing_disparity : Union[float, int], gen_param_name : MaybeSequence[str], gen_param_value : MaybeSequence[Union[int, float, str]], cam_param_rect_1 : Sequence[Union[float, int, str]], cam_param_rect_2 : Sequence[Union[float, int, str]], rel_pose_rect : Sequence[Union[float, int]]) -> Sequence[HHandle]
def scene_flow_calib_s (image_rect_1t1 : HObject, image_rect_2t1 : HObject, image_rect_1t2 : HObject, image_rect_2t2 : HObject, disparity : HObject, smoothing_flow : Union[float, int], smoothing_disparity : Union[float, int], gen_param_name : MaybeSequence[str], gen_param_value : MaybeSequence[Union[int, float, str]], cam_param_rect_1 : Sequence[Union[float, int, str]], cam_param_rect_2 : Sequence[Union[float, int, str]], rel_pose_rect : Sequence[Union[float, int]]) -> HHandle
描述
scene_flow_calib scene_flow_calib SceneFlowCalib SceneFlowCalib SceneFlowCalib scene_flow_calib computes the calibrated scene flow between
two consecutive rectified stereo image pairs. The scene flow is the
three-dimensional position and motion of surface points in a dynamic
scene. The movement in the images can be caused by objects that
move in the world or by a movement of the camera (or both) between
the acquisition of the two image pairs.
The scene flow is returned as the 3D object model
ObjectModel3D ObjectModel3D ObjectModel3D ObjectModel3D objectModel3D object_model_3d . The 3D object model contains the
coordinates of the reconstructed 3D points. Furthermore, the 3D
flow is encoded in the 3D object model by the attributes
'&flow_x' "&flow_x" "&flow_x" "&flow_x" "&flow_x" "&flow_x" , '&flow_y' "&flow_y" "&flow_y" "&flow_y" "&flow_y" "&flow_y" , and '&flow_z' "&flow_z" "&flow_z" "&flow_z" "&flow_z" "&flow_z" .
The two consecutive stereo image pairs of the image sequence are
passed in ImageRect1T1 ImageRect1T1 ImageRect1T1 ImageRect1T1 imageRect1T1 image_rect_1t1 , ImageRect2T1 ImageRect2T1 ImageRect2T1 ImageRect2T1 imageRect2T1 image_rect_2t1 ,
ImageRect1T2 ImageRect1T2 ImageRect1T2 ImageRect1T2 imageRect1T2 image_rect_1t2 , and ImageRect2T2 ImageRect2T2 ImageRect2T2 ImageRect2T2 imageRect2T2 image_rect_2t2 . Each stereo image
pair must be rectified. Note that the images can be rectified by
using the operators calibrate_cameras calibrate_cameras CalibrateCameras CalibrateCameras CalibrateCameras calibrate_cameras ,
gen_binocular_rectification_map gen_binocular_rectification_map GenBinocularRectificationMap GenBinocularRectificationMap GenBinocularRectificationMap gen_binocular_rectification_map , and map_image map_image MapImage MapImage MapImage map_image 。
The camera geometry of the rectified binocular camera system is
specified by its internal camera parameters CamParamRect1 CamParamRect1 CamParamRect1 CamParamRect1 camParamRect1 cam_param_rect_1
of the rectified camera 1 and CamParamRect2 CamParamRect2 CamParamRect2 CamParamRect2 camParamRect2 cam_param_rect_2 of the
rectified camera 2, and the pose RelPoseRect RelPoseRect RelPoseRect RelPoseRect relPoseRect rel_pose_rect that defines
the pose of the rectified camera 2 in relation to the rectified
camera 1. These camera parameters can be obtained from the
operators calibrate_cameras calibrate_cameras CalibrateCameras CalibrateCameras CalibrateCameras calibrate_cameras and
gen_binocular_rectification_map gen_binocular_rectification_map GenBinocularRectificationMap GenBinocularRectificationMap GenBinocularRectificationMap gen_binocular_rectification_map 。The focal length and scale
factor of the rectified camera system 1 and 2 must be equal.
Furthermore, a single-channel Disparity Disparity Disparity Disparity disparity disparity image is required,
which specifies for each pixel (r,c1) of the image
ImageRect1T1 ImageRect1T1 ImageRect1T1 ImageRect1T1 imageRect1T1 image_rect_1t1 a matching pixel (r,c2) of
ImageRect2T1 ImageRect2T1 ImageRect2T1 ImageRect2T1 imageRect2T1 image_rect_2t1 according to the equation c2=c1+d(r,c1),
where d(r,c) is the Disparity Disparity Disparity Disparity disparity disparity at pixel (r,c). The
disparity image can be computed using binocular_disparity binocular_disparity BinocularDisparity BinocularDisparity BinocularDisparity binocular_disparity or
binocular_disparity_mg binocular_disparity_mg BinocularDisparityMg BinocularDisparityMg BinocularDisparityMg binocular_disparity_mg 。
To calculate the calibrated scene flow, internally
scene_flow_uncalib scene_flow_uncalib SceneFlowUncalib SceneFlowUncalib SceneFlowUncalib scene_flow_uncalib is first executed. The results are then
converted to 3D points and 3D flow vectors using the stereo camera
geometry parameters described above.
For a description of the remaining parameters of
scene_flow_calib scene_flow_calib SceneFlowCalib SceneFlowCalib SceneFlowCalib scene_flow_calib , please refer to
scene_flow_uncalib scene_flow_uncalib SceneFlowUncalib SceneFlowUncalib SceneFlowUncalib scene_flow_uncalib 。
执行信息
多线程类型:可重入(与非独占算子并行运行)。
多线程作用域:全局(可从任何线程调用)。
在内部数据级别上自动并行化。
此算子返回一个句柄。请注意,即使该句柄被用作特定算子的输入参数,这些算子仍可能改变此句柄类型的实例状态。
参数
ImageRect1T1 ImageRect1T1 ImageRect1T1 ImageRect1T1 imageRect1T1 image_rect_1t1 (输入对象) singlechannelimage(-array) → object HImage HObject HImage Hobject (byte / uint2 / real)
Input image 1 at time
。
ImageRect2T1 ImageRect2T1 ImageRect2T1 ImageRect2T1 imageRect2T1 image_rect_2t1 (输入对象) singlechannelimage(-array) → object HImage HObject HImage Hobject (byte / uint2 / real)
Input image 2 at time
。
ImageRect1T2 ImageRect1T2 ImageRect1T2 ImageRect1T2 imageRect1T2 image_rect_1t2 (输入对象) singlechannelimage(-array) → object HImage HObject HImage Hobject (byte / uint2 / real)
Input image 1 at time
。
ImageRect2T2 ImageRect2T2 ImageRect2T2 ImageRect2T2 imageRect2T2 image_rect_2t2 (输入对象) singlechannelimage(-array) → object HImage HObject HImage Hobject (byte / uint2 / real)
Input image 2 at time
。
Disparity Disparity Disparity Disparity disparity disparity (输入对象) singlechannelimage(-array) → object HImage HObject HImage Hobject (real)
Disparity between input images 1 and 2 at time
。
SmoothingFlow SmoothingFlow SmoothingFlow SmoothingFlow smoothingFlow smoothing_flow (输入控制) number → HTuple Union[float, int] HTuple Htuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong)
Weight of the regularization term relative to
the data term (derivatives of the optical
flow).
默认值:
40.0
建议值:
10.0, 20.0, 30.0, 40.0, 50.0, 60.0, 70.0, 80.0, 90.0, 100.0
限制:
SmoothingFlow > 0.0
SmoothingDisparity SmoothingDisparity SmoothingDisparity SmoothingDisparity smoothingDisparity smoothing_disparity (输入控制) number → HTuple Union[float, int] HTuple Htuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong)
Weight of the regularization term relative to
the data term (derivatives of the disparity
change).
默认值:
40.0
建议值:
10.0, 20.0, 30.0, 40.0, 50.0, 60.0, 70.0, 80.0, 90.0, 100.0
限制:
SmoothingDisparity > 0.0
GenParamName GenParamName GenParamName GenParamName genParamName gen_param_name (输入控制) attribute.name(-array) → HTuple MaybeSequence[str] HTuple Htuple (string) (string ) (HString ) (char* )
Parameter name(s) for the algorithm.
默认值:
'default_parameters'
"default_parameters"
"default_parameters"
"default_parameters"
"default_parameters"
"default_parameters"
建议值:
'default_parameters' "default_parameters" "default_parameters" "default_parameters" "default_parameters" "default_parameters" , 'warp_levels' "warp_levels" "warp_levels" "warp_levels" "warp_levels" "warp_levels" , 'warp_zoom_factor' "warp_zoom_factor" "warp_zoom_factor" "warp_zoom_factor" "warp_zoom_factor" "warp_zoom_factor" , 'warp_last_level' "warp_last_level" "warp_last_level" "warp_last_level" "warp_last_level" "warp_last_level" , 'outer_iter' "outer_iter" "outer_iter" "outer_iter" "outer_iter" "outer_iter" , 'inner_iter' "inner_iter" "inner_iter" "inner_iter" "inner_iter" "inner_iter" , 'sor_iter' "sor_iter" "sor_iter" "sor_iter" "sor_iter" "sor_iter" , 'omega' "omega" "omega" "omega" "omega" "omega"
GenParamValue GenParamValue GenParamValue GenParamValue genParamValue gen_param_value (输入控制) attribute.value(-array) → HTuple MaybeSequence[Union[int, float, str]] HTuple Htuple (string / integer / real) (string / int / long / double) (HString / Hlong / double) (char* / Hlong / double)
Parameter value(s) for the algorithm.
默认值:
'accurate'
"accurate"
"accurate"
"accurate"
"accurate"
"accurate"
建议值:
'very_accurate' "very_accurate" "very_accurate" "very_accurate" "very_accurate" "very_accurate" , 'accurate' "accurate" "accurate" "accurate" "accurate" "accurate" , 'fast' "fast" "fast" "fast" "fast" "fast" , 'very_fast' "very_fast" "very_fast" "very_fast" "very_fast" "very_fast" , 0, 1, 2, 3, 4, 5, 6, 0.5, 0.6, 0.7, 0.75, 3, 5, 7, 2, 3, 1.9
CamParamRect1 CamParamRect1 CamParamRect1 CamParamRect1 camParamRect1 cam_param_rect_1 (输入控制) campar → HCamPar , HTuple Sequence[Union[float, int, str]] HTuple Htuple (real / integer / string) (double / int / long / string) (double / Hlong / HString) (double / Hlong / char*)
Internal camera parameters of the rectified
camera 1.
CamParamRect2 CamParamRect2 CamParamRect2 CamParamRect2 camParamRect2 cam_param_rect_2 (输入控制) campar → HCamPar , HTuple Sequence[Union[float, int, str]] HTuple Htuple (real / integer / string) (double / int / long / string) (double / Hlong / HString) (double / Hlong / char*)
Internal camera parameters of the rectified
camera 2.
RelPoseRect RelPoseRect RelPoseRect RelPoseRect relPoseRect rel_pose_rect (输入控制) pose → HPose , HTuple Sequence[Union[float, int]] HTuple Htuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong)
Pose of the rectified camera 2 in relation to
the rectified camera 1.
元素数量:
7
ObjectModel3D ObjectModel3D ObjectModel3D ObjectModel3D objectModel3D object_model_3d (输出控制) object_model_3d(-array) → HObjectModel3D , HTuple Sequence[HHandle] HTuple Htuple (handle) (IntPtr ) (HHandle ) (handle )
3D 对象模型的句柄。
结果
如果参数值正确,算子
scene_flow_calib scene_flow_calib SceneFlowCalib SceneFlowCalib SceneFlowCalib scene_flow_calib 返回值 2 ( H_MSG_TRUE )。如果输入为空(没有可用输入图像)则可设置行为通过
set_system('no_object_result',<Result>) set_system("no_object_result",<Result>) SetSystem("no_object_result",<Result>) SetSystem("no_object_result",<Result>) SetSystem("no_object_result",<Result>) set_system("no_object_result",<Result>) 。如有必要,则抛出异常。
可能的前趋
binocular_disparity binocular_disparity BinocularDisparity BinocularDisparity BinocularDisparity binocular_disparity ,
binocular_disparity_mg binocular_disparity_mg BinocularDisparityMg BinocularDisparityMg BinocularDisparityMg binocular_disparity_mg
替代
scene_flow_uncalib scene_flow_uncalib SceneFlowUncalib SceneFlowUncalib SceneFlowUncalib scene_flow_uncalib ,
optical_flow_mg optical_flow_mg OpticalFlowMg OpticalFlowMg OpticalFlowMg optical_flow_mg
参考文献
A. Wedel, C. Rabe, T. Vaudrey, T. Brox, U. Franke and D. Cremers:
“Efficient dense scene flow from sparse or dense stereo data”;
In: Proceedings of the 10th European Conference on Computer Vision:
Part I, pages 739-751. Springer-Verlag, 2008.
模块
基础