set_sheet_of_light_paramT_set_sheet_of_light_paramSetSheetOfLightParamSetSheetOfLightParamset_sheet_of_light_param (算子)

名称

set_sheet_of_light_paramT_set_sheet_of_light_paramSetSheetOfLightParamSetSheetOfLightParamset_sheet_of_light_param — 设置激光三角测量模型的选定参数。

签名

set_sheet_of_light_param( : : SheetOfLightModelID, GenParamName, GenParamValue : )

Herror T_set_sheet_of_light_param(const Htuple SheetOfLightModelID, const Htuple GenParamName, const Htuple GenParamValue)

void SetSheetOfLightParam(const HTuple& SheetOfLightModelID, const HTuple& GenParamName, const HTuple& GenParamValue)

void HSheetOfLightModel::SetSheetOfLightParam(const HString& GenParamName, const HTuple& GenParamValue) const

void HSheetOfLightModel::SetSheetOfLightParam(const HString& GenParamName, const HString& GenParamValue) const

void HSheetOfLightModel::SetSheetOfLightParam(const char* GenParamName, const char* GenParamValue) const

void HSheetOfLightModel::SetSheetOfLightParam(const wchar_t* GenParamName, const wchar_t* GenParamValue) const   ( Windows only)

static void HOperatorSet.SetSheetOfLightParam(HTuple sheetOfLightModelID, HTuple genParamName, HTuple genParamValue)

void HSheetOfLightModel.SetSheetOfLightParam(string genParamName, HTuple genParamValue)

void HSheetOfLightModel.SetSheetOfLightParam(string genParamName, string genParamValue)

def set_sheet_of_light_param(sheet_of_light_model_id: HHandle, gen_param_name: str, gen_param_value: MaybeSequence[Union[int, float, str]]) -> None

描述

算子 set_sheet_of_light_paramset_sheet_of_light_paramSetSheetOfLightParamSetSheetOfLightParamSetSheetOfLightParamset_sheet_of_light_param is used to set or change a single parameter of a sheet-of-light model in order to adapt the model to a particular measurement task. All parameters, except the internal camera parameters 'camera_parameters'"camera_parameters""camera_parameters""camera_parameters""camera_parameters""camera_parameters" and the following poses 'camera_pose'"camera_pose""camera_pose""camera_pose""camera_pose""camera_pose", 'lightplane_pose'"lightplane_pose""lightplane_pose""lightplane_pose""lightplane_pose""lightplane_pose", and 'movement_pose'"movement_pose""movement_pose""movement_pose""movement_pose""movement_pose" can also be set while creating a sheet-of-light model with create_sheet_of_light_modelcreate_sheet_of_light_modelCreateSheetOfLightModelCreateSheetOfLightModelCreateSheetOfLightModelcreate_sheet_of_light_model。The current configuration of the sheet-of-light model can be queried with the operator get_sheet_of_light_paramget_sheet_of_light_paramGetSheetOfLightParamGetSheetOfLightParamGetSheetOfLightParamget_sheet_of_light_param。A list with the names of all parameters that can be set for the sheet-of-light model is returned by query_sheet_of_light_paramsquery_sheet_of_light_paramsQuerySheetOfLightParamsQuerySheetOfLightParamsQuerySheetOfLightParamsquery_sheet_of_light_params

The following overview lists the different generic parameters with the respective value ranges and default values:

Measurement of the profiles:

'method'"method""method""method""method""method"

defines the method used to determine the position of the profile. The values 'default'"default""default""default""default""default" and 'center_of_gravity'"center_of_gravity""center_of_gravity""center_of_gravity""center_of_gravity""center_of_gravity" both refer to the same method, whereby the position of the profile is determined column by column with subpixel accuracy by computing the center of gravity of the gray values of all pixels fulfilling the condition:

'min_gray'"min_gray""min_gray""min_gray""min_gray""min_gray"

lowest gray values taken into account for the measurement of the position of the profile (see 'center_of_gravity'"center_of_gravity""center_of_gravity""center_of_gravity""center_of_gravity""center_of_gravity").

建议值: 20, 50, 100, 128, 200, 220, 250

Default: 100

'num_profiles'"num_profiles""num_profiles""num_profiles""num_profiles""num_profiles"

number of profiles for which memory has been allocated within the sheet-of-light model. By default, 'num_profiles'"num_profiles""num_profiles""num_profiles""num_profiles""num_profiles" is set to 512. If this number of profiles is exceeded, memory will be reallocated automatically during the measurement.

建议值: 1, 2, 50, 100, 512, 1024, 3000

Default: 512

'ambiguity_solving'"ambiguity_solving""ambiguity_solving""ambiguity_solving""ambiguity_solving""ambiguity_solving"

method applied to determine which candidate shall be chosen if the determination of the position of the profile is ambiguous.

'first'"first""first""first""first""first":the first encountered candidate is returned. This method is the fastest.

'last'"last""last""last""last""last":the last encountered candidate is returned.

'brightest'"brightest""brightest""brightest""brightest""brightest":for each candidate, the brightness of the profile is computed and the candidate having the highest brightness is returned. The brightness is computed according to: where is the gray value of the pixel and n the number of pixels taken into consideration to determine the position of the profile.

Default: 'first'"first""first""first""first""first"

'score_type'"score_type""score_type""score_type""score_type""score_type"

method used to calculate a score for the measurement of the position of the profile.

'none'"none""none""none""none""none":no score is computed.

'width'"width""width""width""width""width":for each pixel of the disparity, the score value is set to the number of pixels used to determine the disparity value.

'intensity'"intensity""intensity""intensity""intensity""intensity":for each pixel of the disparity, a score value is evaluated by computing the local intensity of the profile according to: where is the gray value of the pixel and n the number of pixels taken into consideration to determine the position of the profile.

Default: 'none'"none""none""none""none""none"

Calibration of the measurement:

'calibration'"calibration""calibration""calibration""calibration""calibration"

extent of the calibration transformation which shall be applied to the disparity image:

'none'"none""none""none""none""none":no calibration transformation is applied.

'xz'"xz""xz""xz""xz""xz":the calibration transformations which describe the geometrical properties of the measurement system (camera and light line projector) are taken into account, but the movement of the object during the measurement is not taken into account.

'xyz'"xyz""xyz""xyz""xyz""xyz":the calibration transformations which describe the geometrical properties of the measurement system (camera and light line projector) as well as the transformation which describe the movement of the object during the measurement are taken into account.

'offset_scale'"offset_scale""offset_scale""offset_scale""offset_scale""offset_scale":a simplified set of parameters to describe the setup, that can be used with default parameters or can be controlled by six parameters. Three of the parameters describe an anisotropic scaling: 'scale_x'"scale_x""scale_x""scale_x""scale_x""scale_x" describes the scaling of a pixel in column direction into the new x-axis, 'scale_y'"scale_y""scale_y""scale_y""scale_y""scale_y" describes the linear movement between two profiles, and 'scale_z'"scale_z""scale_z""scale_z""scale_z""scale_z" describes the scaling of to measured disparities into the new z-axis. The other three parameters describe the offset of the frame of reference of the resulting x,y,z values ('offset_x'"offset_x""offset_x""offset_x""offset_x""offset_x", 'offset_y'"offset_y""offset_y""offset_y""offset_y""offset_y", 'offset_z'"offset_z""offset_z""offset_z""offset_z""offset_z").

Default: 'none'"none""none""none""none""none"

'camera_parameter'"camera_parameter""camera_parameter""camera_parameter""camera_parameter""camera_parameter"

the internal parameters of the camera used for the measurement. Those parameters are required if the calibration extent has been set to 'xz'"xz""xz""xz""xz""xz" or 'xyz'"xyz""xyz""xyz""xyz""xyz". If calibrate_sheet_of_lightcalibrate_sheet_of_lightCalibrateSheetOfLightCalibrateSheetOfLightCalibrateSheetOfLightcalibrate_sheet_of_light shall be used for calibration, this parameter is used to set the initial camera parameters.

'calibration_object'"calibration_object""calibration_object""calibration_object""calibration_object""calibration_object"

the calibration object used for calibration with calibrate_sheet_of_lightcalibrate_sheet_of_lightCalibrateSheetOfLightCalibrateSheetOfLightCalibrateSheetOfLightcalibrate_sheet_of_light。If calibrate_sheet_of_lightcalibrate_sheet_of_lightCalibrateSheetOfLightCalibrateSheetOfLightCalibrateSheetOfLightcalibrate_sheet_of_light shall be used for calibration, this parameter must be set to the filename of a calibration object created with create_sheet_of_light_calib_objectcreate_sheet_of_light_calib_objectCreateSheetOfLightCalibObjectCreateSheetOfLightCalibObjectCreateSheetOfLightCalibObjectcreate_sheet_of_light_calib_object

'camera_pose'"camera_pose""camera_pose""camera_pose""camera_pose""camera_pose"

the pose that transforms the camera coordinate system into the world coordinate system, i.e., the pose that could be used to transform point coordinates from the world coordinate system into the camera coordinate system. This pose is required if the calibration extent has been set to 'xz'"xz""xz""xz""xz""xz" or 'xyz'"xyz""xyz""xyz""xyz""xyz".

Note that the world coordinate system is implicitly defined by setting the 'camera_pose'"camera_pose""camera_pose""camera_pose""camera_pose""camera_pose".

'lightplane_pose'"lightplane_pose""lightplane_pose""lightplane_pose""lightplane_pose""lightplane_pose"

the pose that transforms the light plane coordinate system into the world coordinate system, i.e., the pose that could be used to transform point coordinates from the world coordinate system into the light plane coordinate system. The light plane coordinate system must be chosen such that the plane z=0 coincides with the light plane. This pose is required if the calibration extent has been set to 'xz'"xz""xz""xz""xz""xz" or 'xyz'"xyz""xyz""xyz""xyz""xyz".

'movement_pose'"movement_pose""movement_pose""movement_pose""movement_pose""movement_pose"

a pose representing the movement of the object between two successive profile images with respect to the measurement system built by the camera and the laser. This pose must be expressed in the world coordinate system. It is required if the calibration extent has been set to 'xyz'"xyz""xyz""xyz""xyz""xyz".

'scale'"scale""scale""scale""scale""scale"

with this value you can scale the 3D coordinates X, Y and Z that result when applying the calibration transformations to the disparity image. The model parameter 'scale'"scale""scale""scale""scale""scale" must be specified as the ratio desired unit/original unit. The original unit is determined by the coordinates of the calibration object. If the original unit is meters (which is the case if you use the standard calibration plate), you can set 'scale'"scale""scale""scale""scale""scale" to the desired unit directly by selecting 'm'"m""m""m""m""m",'cm'"cm""cm""cm""cm""cm",'mm'"mm""mm""mm""mm""mm",'microns'"microns""microns""microns""microns""microns", or 'um'"um""um""um""um""um". This parameter can only be set if the calibration extent has been set to 'offset_scale'"offset_scale""offset_scale""offset_scale""offset_scale""offset_scale", 'xz'"xz""xz""xz""xz""xz" or 'xyz'"xyz""xyz""xyz""xyz""xyz".

建议值: 'm'"m""m""m""m""m",'cm'"cm""cm""cm""cm""cm",'mm'"mm""mm""mm""mm""mm", 'microns'"microns""microns""microns""microns""microns",'um'"um""um""um""um""um",'1.0'"1.0""1.0""1.0""1.0""1.0",0.01, 0.001,1.0e-6

默认值: 1.0

'scale_x'"scale_x""scale_x""scale_x""scale_x""scale_x"

This value defines the width of a pixel in the 3D space. This parameter can only be set if the calibration extent has been set to 'offset_scale'"offset_scale""offset_scale""offset_scale""offset_scale""offset_scale".

建议值: 10.0, 1.0,0.01, 0.001,1.0e-6

默认值: 1.0

'scale_y'"scale_y""scale_y""scale_y""scale_y""scale_y"

This value defines the linear movement between two profiles in the 3D space. This parameter can only be set if the calibration extent has been set to 'offset_scale'"offset_scale""offset_scale""offset_scale""offset_scale""offset_scale".

建议值: 100.0, 10.0,1.0, 0.1,1.0e-6

默认值: 10.0

'scale_z'"scale_z""scale_z""scale_z""scale_z""scale_z"

This value defines the height of a pixel in the 3D space. This parameter can only be set if the calibration extent has been set to 'offset_scale'"offset_scale""offset_scale""offset_scale""offset_scale""offset_scale".

建议值: 10.0, 1.0,0.01, 0.001,1.0e-6

默认值: 1.0

'offset_x'"offset_x""offset_x""offset_x""offset_x""offset_x"

This value defines the x offset of reference frame for 3D results. This parameter can only be set if the calibration extent has been set to 'offset_scale'"offset_scale""offset_scale""offset_scale""offset_scale""offset_scale".

建议值: 10.0, 0.0,0.01, 0.001,1.0e-6

默认值: 0.0

'offset_y'"offset_y""offset_y""offset_y""offset_y""offset_y"

This value defines the y offset of reference frame for xyz results. This parameter can only be set if the calibration extent has been set to 'offset_scale'"offset_scale""offset_scale""offset_scale""offset_scale""offset_scale".

建议值: 10.0, 0.0,0.01, 0.001,1.0e-6

默认值: 0.0

'offset_z'"offset_z""offset_z""offset_z""offset_z""offset_z"

This value defines the z offset of reference frame for 3D results. This parameter can only be set if the calibration extent has been set to 'offset_scale'"offset_scale""offset_scale""offset_scale""offset_scale""offset_scale".

建议值: 10.0, 0.0,0.01, 0.001,1.0e-6

默认值: 0.0

执行信息

此算子修改后续输入参数的状态:

在执行此算子时,若该参数值需在多个线程间使用,则必须对其访问进行同步。

参数

SheetOfLightModelIDSheetOfLightModelIDSheetOfLightModelIDSheetOfLightModelIDsheetOfLightModelIDsheet_of_light_model_id (输入控制,状态被修改)  sheet_of_light_model HSheetOfLightModel, HTupleHHandleHTupleHtuple (handle) (IntPtr) (HHandle) (handle)

激光三角测量的句柄。

GenParamNameGenParamNameGenParamNameGenParamNamegenParamNamegen_param_name (输入控制)  attribute.name HTuplestrHTupleHtuple (string) (string) (HString) (char*)

Name of the model parameter that shall be adjusted for the sheet-of-light model.

默认值: 'method' "method" "method" "method" "method" "method"

值列表: 'ambiguity_solving'"ambiguity_solving""ambiguity_solving""ambiguity_solving""ambiguity_solving""ambiguity_solving", 'calibration'"calibration""calibration""calibration""calibration""calibration", 'calibration_object'"calibration_object""calibration_object""calibration_object""calibration_object""calibration_object", 'camera_parameter'"camera_parameter""camera_parameter""camera_parameter""camera_parameter""camera_parameter", 'camera_pose'"camera_pose""camera_pose""camera_pose""camera_pose""camera_pose", 'lightplane_pose'"lightplane_pose""lightplane_pose""lightplane_pose""lightplane_pose""lightplane_pose", 'method'"method""method""method""method""method", 'min_gray'"min_gray""min_gray""min_gray""min_gray""min_gray", 'movement_pose'"movement_pose""movement_pose""movement_pose""movement_pose""movement_pose", 'num_profiles'"num_profiles""num_profiles""num_profiles""num_profiles""num_profiles", 'offset_x'"offset_x""offset_x""offset_x""offset_x""offset_x", 'offset_y'"offset_y""offset_y""offset_y""offset_y""offset_y", 'offset_z'"offset_z""offset_z""offset_z""offset_z""offset_z", 'scale'"scale""scale""scale""scale""scale", 'scale_x'"scale_x""scale_x""scale_x""scale_x""scale_x", 'scale_y'"scale_y""scale_y""scale_y""scale_y""scale_y", 'scale_z'"scale_z""scale_z""scale_z""scale_z""scale_z", 'score_type'"score_type""score_type""score_type""score_type""score_type"

GenParamValueGenParamValueGenParamValueGenParamValuegenParamValuegen_param_value (输入控制)  attribute.value(-array) HTupleMaybeSequence[Union[int, float, str]]HTupleHtuple (string / integer / real) (string / int / long / double) (HString / Hlong / double) (char* / Hlong / double)

Value of the model parameter that shall be adjusted for the sheet-of-light model.

默认值: 'center_of_gravity' "center_of_gravity" "center_of_gravity" "center_of_gravity" "center_of_gravity" "center_of_gravity"

建议值: 'default'"default""default""default""default""default", 'center_of_gravity'"center_of_gravity""center_of_gravity""center_of_gravity""center_of_gravity""center_of_gravity", 'last'"last""last""last""last""last", 'first'"first""first""first""first""first", 'brightest'"brightest""brightest""brightest""brightest""brightest", 'none'"none""none""none""none""none", 'intensity'"intensity""intensity""intensity""intensity""intensity", 'width'"width""width""width""width""width", 'xz'"xz""xz""xz""xz""xz", 'xyz'"xyz""xyz""xyz""xyz""xyz", 'offset_scale'"offset_scale""offset_scale""offset_scale""offset_scale""offset_scale", 'm'"m""m""m""m""m", 'cm'"cm""cm""cm""cm""cm", 'mm'"mm""mm""mm""mm""mm", 'um'"um""um""um""um""um", 'microns'"microns""microns""microns""microns""microns", 1.0, 1e-2, 1e-3, 1e-6

结果

算子 set_sheet_of_light_paramset_sheet_of_light_paramSetSheetOfLightParamSetSheetOfLightParamSetSheetOfLightParamset_sheet_of_light_param 在给定的参数正确时返回值 2 ( H_MSG_TRUE )。否则,将抛出异常。

可能的后继

get_sheet_of_light_paramget_sheet_of_light_paramGetSheetOfLightParamGetSheetOfLightParamGetSheetOfLightParamget_sheet_of_light_param, measure_profile_sheet_of_lightmeasure_profile_sheet_of_lightMeasureProfileSheetOfLightMeasureProfileSheetOfLightMeasureProfileSheetOfLightmeasure_profile_sheet_of_light, apply_sheet_of_light_calibrationapply_sheet_of_light_calibrationApplySheetOfLightCalibrationApplySheetOfLightCalibrationApplySheetOfLightCalibrationapply_sheet_of_light_calibration

替代

create_sheet_of_light_modelcreate_sheet_of_light_modelCreateSheetOfLightModelCreateSheetOfLightModelCreateSheetOfLightModelcreate_sheet_of_light_model

另见

query_sheet_of_light_paramsquery_sheet_of_light_paramsQuerySheetOfLightParamsQuerySheetOfLightParamsQuerySheetOfLightParamsquery_sheet_of_light_params, get_sheet_of_light_paramget_sheet_of_light_paramGetSheetOfLightParamGetSheetOfLightParamGetSheetOfLightParamget_sheet_of_light_param, get_sheet_of_light_resultget_sheet_of_light_resultGetSheetOfLightResultGetSheetOfLightResultGetSheetOfLightResultget_sheet_of_light_result

模块

三维计量