HALCON Reference Manual 10.0.2
Table of Contents / Matching / Deformable ClassesClassesClasses | | | Operators

create_planar_calib_deformable_model_xldT_create_planar_calib_deformable_model_xldcreate_planar_calib_deformable_model_xldCreatePlanarCalibDeformableModelXldCreatePlanarCalibDeformableModelXld (Operator)

Name

create_planar_calib_deformable_model_xldT_create_planar_calib_deformable_model_xldcreate_planar_calib_deformable_model_xldCreatePlanarCalibDeformableModelXldCreatePlanarCalibDeformableModelXld — Prepare a deformable model for planar calibrated matching from XLD contours.

Signature

create_planar_calib_deformable_model_xld(Contours : : CamParam, ReferencePose, NumLevels, AngleStart, AngleExtent, AngleStep, ScaleRMin, ScaleRMax, ScaleRStep, ScaleCMin, ScaleCMax, ScaleCStep, Optimization, Metric, MinContrast, ParamName, ParamValue : ModelID)

Herror T_create_planar_calib_deformable_model_xld(const Hobject Contours, const Htuple CamParam, const Htuple ReferencePose, const Htuple NumLevels, const Htuple AngleStart, const Htuple AngleExtent, const Htuple AngleStep, const Htuple ScaleRMin, const Htuple ScaleRMax, const Htuple ScaleRStep, const Htuple ScaleCMin, const Htuple ScaleCMax, const Htuple ScaleCStep, const Htuple Optimization, const Htuple Metric, const Htuple MinContrast, const Htuple ParamName, const Htuple ParamValue, Htuple* ModelID)

Herror create_planar_calib_deformable_model_xld(Hobject Contours, const HTuple& CamParam, const HTuple& ReferencePose, const HTuple& NumLevels, const HTuple& AngleStart, const HTuple& AngleExtent, const HTuple& AngleStep, const HTuple& ScaleRMin, const HTuple& ScaleRMax, const HTuple& ScaleRStep, const HTuple& ScaleCMin, const HTuple& ScaleCMax, const HTuple& ScaleCStep, const HTuple& Optimization, const HTuple& Metric, const HTuple& MinContrast, const HTuple& ParamName, const HTuple& ParamValue, Hlong* ModelID)

HDeformableModel HXLDCont::CreatePlanarCalibDeformableModelXld(const HTuple& CamParam, const HTuple& ReferencePose, const HTuple& NumLevels, const HTuple& AngleStart, const HTuple& AngleExtent, const HTuple& AngleStep, const HTuple& ScaleRMin, const HTuple& ScaleRMax, const HTuple& ScaleRStep, const HTuple& ScaleCMin, const HTuple& ScaleCMax, const HTuple& ScaleCStep, const HTuple& Optimization, const HTuple& Metric, const HTuple& MinContrast, const HTuple& ParamName, const HTuple& ParamValue) const

HDeformableModel HXLDContArray::CreatePlanarCalibDeformableModelXld(const HTuple& CamParam, const HTuple& ReferencePose, const HTuple& NumLevels, const HTuple& AngleStart, const HTuple& AngleExtent, const HTuple& AngleStep, const HTuple& ScaleRMin, const HTuple& ScaleRMax, const HTuple& ScaleRStep, const HTuple& ScaleCMin, const HTuple& ScaleCMax, const HTuple& ScaleCStep, const HTuple& Optimization, const HTuple& Metric, const HTuple& MinContrast, const HTuple& ParamName, const HTuple& ParamValue) const

void HDeformableModel::CreatePlanarCalibDeformableModelXld(const HXLDContArray& Contours, const HTuple& CamParam, const HTuple& ReferencePose, const HTuple& NumLevels, const HTuple& AngleStart, const HTuple& AngleExtent, const HTuple& AngleStep, const HTuple& ScaleRMin, const HTuple& ScaleRMax, const HTuple& ScaleRStep, const HTuple& ScaleCMin, const HTuple& ScaleCMax, const HTuple& ScaleCStep, const HTuple& Optimization, const HTuple& Metric, const HTuple& MinContrast, const HTuple& ParamName, const HTuple& ParamValue)

void HOperatorSetX.CreatePlanarCalibDeformableModelXld(
[in] IHUntypedObjectX* Contours, [in] VARIANT CamParam, [in] VARIANT ReferencePose, [in] VARIANT NumLevels, [in] VARIANT AngleStart, [in] VARIANT AngleExtent, [in] VARIANT AngleStep, [in] VARIANT ScaleRMin, [in] VARIANT ScaleRMax, [in] VARIANT ScaleRStep, [in] VARIANT ScaleCMin, [in] VARIANT ScaleCMax, [in] VARIANT ScaleCStep, [in] VARIANT Optimization, [in] VARIANT Metric, [in] VARIANT MinContrast, [in] VARIANT ParamName, [in] VARIANT ParamValue, [out] VARIANT* ModelID)

void HDeformableModelX.CreatePlanarCalibDeformableModelXld(
[in] IHXLDContX* Contours, [in] VARIANT CamParam, [in] VARIANT ReferencePose, [in] VARIANT NumLevels, [in] double AngleStart, [in] double AngleExtent, [in] VARIANT AngleStep, [in] double ScaleRMin, [in] double ScaleRMax, [in] VARIANT ScaleRStep, [in] double ScaleCMin, [in] double ScaleCMax, [in] VARIANT ScaleCStep, [in] VARIANT Optimization, [in] BSTR Metric, [in] Hlong MinContrast, [in] VARIANT ParamName, [in] VARIANT ParamValue)

IHDeformableModelX* HXLDContX.CreatePlanarCalibDeformableModelXld(
[in] VARIANT CamParam, [in] VARIANT ReferencePose, [in] VARIANT NumLevels, [in] double AngleStart, [in] double AngleExtent, [in] VARIANT AngleStep, [in] double ScaleRMin, [in] double ScaleRMax, [in] VARIANT ScaleRStep, [in] double ScaleCMin, [in] double ScaleCMax, [in] VARIANT ScaleCStep, [in] VARIANT Optimization, [in] BSTR Metric, [in] Hlong MinContrast, [in] VARIANT ParamName, [in] VARIANT ParamValue)

static void HOperatorSet.CreatePlanarCalibDeformableModelXld(HObject contours, HTuple camParam, HTuple referencePose, HTuple numLevels, HTuple angleStart, HTuple angleExtent, HTuple angleStep, HTuple scaleRMin, HTuple scaleRMax, HTuple scaleRStep, HTuple scaleCMin, HTuple scaleCMax, HTuple scaleCStep, HTuple optimization, HTuple metric, HTuple minContrast, HTuple paramName, HTuple paramValue, out HTuple modelID)

public HDeformableModel(HXLDCont contours, HTuple camParam, HPose referencePose, HTuple numLevels, double angleStart, double angleExtent, HTuple angleStep, double scaleRMin, double scaleRMax, HTuple scaleRStep, double scaleCMin, double scaleCMax, HTuple scaleCStep, HTuple optimization, string metric, int minContrast, HTuple paramName, HTuple paramValue)

public HDeformableModel(HXLDCont contours, HTuple camParam, HPose referencePose, int numLevels, double angleStart, double angleExtent, double angleStep, double scaleRMin, double scaleRMax, double scaleRStep, double scaleCMin, double scaleCMax, double scaleCStep, string optimization, string metric, int minContrast, HTuple paramName, HTuple paramValue)

void HDeformableModel.CreatePlanarCalibDeformableModelXld(HXLDCont contours, HTuple camParam, HPose referencePose, HTuple numLevels, double angleStart, double angleExtent, HTuple angleStep, double scaleRMin, double scaleRMax, HTuple scaleRStep, double scaleCMin, double scaleCMax, HTuple scaleCStep, HTuple optimization, string metric, int minContrast, HTuple paramName, HTuple paramValue)

void HDeformableModel.CreatePlanarCalibDeformableModelXld(HXLDCont contours, HTuple camParam, HPose referencePose, int numLevels, double angleStart, double angleExtent, double angleStep, double scaleRMin, double scaleRMax, double scaleRStep, double scaleCMin, double scaleCMax, double scaleCStep, string optimization, string metric, int minContrast, HTuple paramName, HTuple paramValue)

HDeformableModel HXLDCont.CreatePlanarCalibDeformableModelXld(HTuple camParam, HPose referencePose, HTuple numLevels, double angleStart, double angleExtent, HTuple angleStep, double scaleRMin, double scaleRMax, HTuple scaleRStep, double scaleCMin, double scaleCMax, HTuple scaleCStep, HTuple optimization, string metric, int minContrast, HTuple paramName, HTuple paramValue)

HDeformableModel HXLDCont.CreatePlanarCalibDeformableModelXld(HTuple camParam, HPose referencePose, int numLevels, double angleStart, double angleExtent, double angleStep, double scaleRMin, double scaleRMax, double scaleRStep, double scaleCMin, double scaleCMax, double scaleCStep, string optimization, string metric, int minContrast, HTuple paramName, HTuple paramValue)

Description

The operator create_planar_calib_deformable_model_xldcreate_planar_calib_deformable_model_xldcreate_planar_calib_deformable_model_xldCreatePlanarCalibDeformableModelXldCreatePlanarCalibDeformableModelXld creates a deformable model used for planar calibrated matching from the XLD contours passed in ContoursContoursContoursContourscontours. The XLD contours represent the gray-value edges of the object to be searched for. In contrast to the operator create_planar_calib_deformable_modelcreate_planar_calib_deformable_modelcreate_planar_calib_deformable_modelCreatePlanarCalibDeformableModelCreatePlanarCalibDeformableModel, which creates a deformable model from a template image, the operator create_planar_calib_deformable_model_xldcreate_planar_calib_deformable_model_xldcreate_planar_calib_deformable_model_xldCreatePlanarCalibDeformableModelXldCreatePlanarCalibDeformableModelXld creates the deformable model from XLD contours. Note that the operator expects ContoursContoursContoursContourscontours to be in metric world coordinate system. This is in contrast to create_planar_uncalib_deformable_model_xldcreate_planar_uncalib_deformable_model_xldcreate_planar_uncalib_deformable_model_xldCreatePlanarUncalibDeformableModelXldCreatePlanarUncalibDeformableModelXld, where the ContoursContoursContoursContourscontours are provided in image coordinates.

Further, the origin (reference point) of the model is taken directly from the provided ContoursContoursContoursContourscontours. This is in contrast to create_planar_uncalib_deformable_model_xldcreate_planar_uncalib_deformable_model_xldcreate_planar_uncalib_deformable_model_xldCreatePlanarUncalibDeformableModelXldCreatePlanarUncalibDeformableModelXld, where the center of gravity of the smallest surrounding rectangle of the ContoursContoursContoursContourscontours is used. A different origin in the world coordinate system can be set with set_deformable_model_originset_deformable_model_originset_deformable_model_originSetDeformableModelOriginSetDeformableModelOrigin.

For further explanation on the planar deformable model and its parameters we refer to the description of create_planar_uncalib_deformable_modelcreate_planar_uncalib_deformable_modelcreate_planar_uncalib_deformable_modelCreatePlanarUncalibDeformableModelCreatePlanarUncalibDeformableModel and create_planar_calib_deformable_modelcreate_planar_calib_deformable_modelcreate_planar_calib_deformable_modelCreatePlanarCalibDeformableModelCreatePlanarCalibDeformableModel.

Attention

Note that, in contrast to the operator create_planar_calib_deformable_modelcreate_planar_calib_deformable_modelcreate_planar_calib_deformable_modelCreatePlanarCalibDeformableModelCreatePlanarCalibDeformableModel, it is not possible to specify a minimum size of the model components. To avoid small model components in the model, short contours can be eliminated before calling create_planar_calib_deformable_model_xldcreate_planar_calib_deformable_model_xldcreate_planar_calib_deformable_model_xldCreatePlanarCalibDeformableModelXldCreatePlanarCalibDeformableModelXld with the operator select_contours_xldselect_contours_xldselect_contours_xldSelectContoursXldSelectContoursXld.

Parallelization

Parameters

ContoursContoursContoursContourscontours (input_object)  xld_cont(-array) objectHXLDContHXLDContHXLDContXHobject

Input contours that will be used to create the model.

CamParamCamParamCamParamCamParamcamParam (input_control)  number-array HTupleHTupleVARIANTHtuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong) (double / Hlong)

The parameters of the internal orientation of the camera.

Number of elements: (CamParam == 8) || (CamParam == 12)

ReferencePoseReferencePoseReferencePoseReferencePosereferencePose (input_control)  pose-array HPose, HTupleHTupleHPoseX, VARIANTHtuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong) (double / Hlong)

The reference pose of the object.

NumLevelsNumLevelsNumLevelsNumLevelsnumLevels (input_control)  integer HTupleHTupleVARIANTHtuple (integer / string) (int / long / string) (Hlong / char*) (Hlong / BSTR) (Hlong / char*)

Maximum number of pyramid levels.

Default value: 'auto' "auto" "auto" "auto" "auto"

List of values: 'auto'"auto""auto""auto""auto", 1, 2, 3, 4, 5, 6, 7, 8, 9, 10

AngleStartAngleStartAngleStartAngleStartangleStart (input_control)  angle.rad HTupleHTupleVARIANTHtuple (real) (double) (double) (double) (double)

Smallest rotation of the pattern.

Default value: -0.39

Suggested values: -3.14, -1.57, -0.79, -0.39, -0.20, 0.0

AngleExtentAngleExtentAngleExtentAngleExtentangleExtent (input_control)  angle.rad HTupleHTupleVARIANTHtuple (real) (double) (double) (double) (double)

Extent of the rotation angles.

Default value: 0.79

Suggested values: 6.29, 3.14, 1.57, 0.79, 0.39

Restriction: AngleExtent >= 0

AngleStepAngleStepAngleStepAngleStepangleStep (input_control)  angle.rad HTupleHTupleVARIANTHtuple (real / string) (double / string) (double / char*) (double / BSTR) (double / char*)

Step length of the angles (resolution).

Default value: 'auto' "auto" "auto" "auto" "auto"

Suggested values: 'auto'"auto""auto""auto""auto", 0.0175, 0.0349, 0.0524, 0.0698, 0.0873

Restriction: (AngleStep > 0) && (AngleStep <= (pi / 16))

ScaleRMinScaleRMinScaleRMinScaleRMinscaleRMin (input_control)  number HTupleHTupleVARIANTHtuple (real) (double) (double) (double) (double)

Minimum scale of the pattern in the row direction.

Default value: 1.0

Suggested values: 0.5, 0.6, 0.7, 0.8, 0.9, 1.0

Restriction: ScaleRMin > 0

ScaleRMaxScaleRMaxScaleRMaxScaleRMaxscaleRMax (input_control)  number HTupleHTupleVARIANTHtuple (real) (double) (double) (double) (double)

Maximum scale of the pattern in the row direction.

Default value: 1.0

Suggested values: 1.0, 1.1, 1.2, 1.3, 1.4, 1.5

Restriction: ScaleRMax >= ScaleRMin

ScaleRStepScaleRStepScaleRStepScaleRStepscaleRStep (input_control)  number HTupleHTupleVARIANTHtuple (real / string) (double / string) (double / char*) (double / BSTR) (double / char*)

Scale step length (resolution) in the row direction.

Default value: 'auto' "auto" "auto" "auto" "auto"

Suggested values: 'auto'"auto""auto""auto""auto", 0.01, 0.02, 0.05, 0.1, 0.15, 0.2

Restriction: ScaleRStep > 0

ScaleCMinScaleCMinScaleCMinScaleCMinscaleCMin (input_control)  number HTupleHTupleVARIANTHtuple (real) (double) (double) (double) (double)

Minimum scale of the pattern in the column direction.

Default value: 1.0

Suggested values: 0.5, 0.6, 0.7, 0.8, 0.9, 1.0

Restriction: ScaleCMin > 0

ScaleCMaxScaleCMaxScaleCMaxScaleCMaxscaleCMax (input_control)  number HTupleHTupleVARIANTHtuple (real) (double) (double) (double) (double)

Maximum scale of the pattern in the column direction.

Default value: 1.0

Suggested values: 1.0, 1.1, 1.2, 1.3, 1.4, 1.5

Restriction: ScaleCMax >= ScaleCMin

ScaleCStepScaleCStepScaleCStepScaleCStepscaleCStep (input_control)  number HTupleHTupleVARIANTHtuple (real / string) (double / string) (double / char*) (double / BSTR) (double / char*)

Scale step length (resolution) in the column direction.

Default value: 'auto' "auto" "auto" "auto" "auto"

Suggested values: 'auto'"auto""auto""auto""auto", 0.01, 0.02, 0.05, 0.1, 0.15, 0.2

Restriction: ScaleCStep > 0

OptimizationOptimizationOptimizationOptimizationoptimization (input_control)  string(-array) HTupleHTupleVARIANTHtuple (string) (string) (char*) (BSTR) (char*)

Kind of optimization used for generating the model.

Default value: 'auto' "auto" "auto" "auto" "auto"

List of values: 'auto'"auto""auto""auto""auto", 'none'"none""none""none""none", 'point_reduction_low'"point_reduction_low""point_reduction_low""point_reduction_low""point_reduction_low", 'point_reduction_medium'"point_reduction_medium""point_reduction_medium""point_reduction_medium""point_reduction_medium", 'point_reduction_high'"point_reduction_high""point_reduction_high""point_reduction_high""point_reduction_high"

MetricMetricMetricMetricmetric (input_control)  string HTupleHTupleVARIANTHtuple (string) (string) (char*) (BSTR) (char*)

Match metric.

Default value: 'ignore_local_polarity' "ignore_local_polarity" "ignore_local_polarity" "ignore_local_polarity" "ignore_local_polarity"

List of values: 'use_polarity'"use_polarity""use_polarity""use_polarity""use_polarity", 'ignore_global_polarity'"ignore_global_polarity""ignore_global_polarity""ignore_global_polarity""ignore_global_polarity", 'ignore_part_polarity'"ignore_part_polarity""ignore_part_polarity""ignore_part_polarity""ignore_part_polarity", 'ignore_local_polarity'"ignore_local_polarity""ignore_local_polarity""ignore_local_polarity""ignore_local_polarity", 'ignore_color_polarity'"ignore_color_polarity""ignore_color_polarity""ignore_color_polarity""ignore_color_polarity"

MinContrastMinContrastMinContrastMinContrastminContrast (input_control)  number HTupleHTupleVARIANTHtuple (integer) (int / long) (Hlong) (Hlong) (Hlong)

Minimum contrast of the objects in the search images.

Default value: 5

Suggested values: 1, 2, 3, 5, 7, 10, 20, 30, 40

ParamNameParamNameParamNameParamNameparamName (input_control)  string-array HTupleHTupleVARIANTHtuple (string) (string) (char*) (BSTR) (char*)

The generic parameter names.

Default value: []

List of values: [], 'part_size'"part_size""part_size""part_size""part_size"

ParamValueParamValueParamValueParamValueparamValue (input_control)  integer-array HTupleHTupleVARIANTHtuple (integer / real / string) (int / long / double / string) (Hlong / double / char*) (Hlong / double / BSTR) (Hlong / double / char*)

Values of the generic parameter.

Default value: []

List of values: [], 'small'"small""small""small""small", 'medium'"medium""medium""medium""medium", 'big'"big""big""big""big"

ModelIDModelIDModelIDModelIDmodelID (output_control)  deformable_model HDeformableModel, HTupleHDeformableModel, HTupleHDeformableModelX, VARIANTHtuple (integer) (IntPtr) (Hlong) (Hlong) (Hlong)

Handle of the model.

Result

If the parameters are valid, the operator create_planar_calib_deformable_model_xldcreate_planar_calib_deformable_model_xldcreate_planar_calib_deformable_model_xldCreatePlanarCalibDeformableModelXldCreatePlanarCalibDeformableModelXld returns the value 2 (H_MSG_TRUE). If necessary, an exception is raised. If the parameter NumLevelsNumLevelsNumLevelsNumLevelsnumLevels is chosen such that the model contains too few points, the error 8510 is raised.

Possible Predecessors

read_contour_xld_dxfread_contour_xld_dxfread_contour_xld_dxfReadContourXldDxfReadContourXldDxf, edges_sub_pixedges_sub_pixedges_sub_pixEdgesSubPixEdgesSubPix, select_contours_xldselect_contours_xldselect_contours_xldSelectContoursXldSelectContoursXld

Possible Successors

find_planar_calib_deformable_modelfind_planar_calib_deformable_modelfind_planar_calib_deformable_modelFindPlanarCalibDeformableModelFindPlanarCalibDeformableModel

See also

create_planar_calib_deformable_modelcreate_planar_calib_deformable_modelcreate_planar_calib_deformable_modelCreatePlanarCalibDeformableModelCreatePlanarCalibDeformableModel

Module

Matching


Table of Contents / Matching / Deformable ClassesClassesClasses | | | Operators
HALCON Reference Manual 10.0.2 Copyright © 1996-2011 MVTec Software GmbH