Short description
create_local_deformable_modelCreateLocalDeformableModelCreateLocalDeformableModelcreate_local_deformable_modelT_create_local_deformable_model β Creates a deformable model for local, deformable matching.
Signature
create_local_deformable_model( image Template, integer NumLevels, angle.rad AngleStart, angle.rad AngleExtent, angle.rad AngleStep, number ScaleRMin, number ScaleRMax, number ScaleRStep, number ScaleCMin, number ScaleCMax, number ScaleCStep, string Optimization, string Metric, number Contrast, number MinContrast, string GenParamName, integer GenParamValue, out deformable_model ModelID )void CreateLocalDeformableModel( const HObject& Template, 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& Contrast, const HTuple& MinContrast, const HTuple& GenParamName, const HTuple& GenParamValue, HTuple* ModelID )static void HOperatorSet.CreateLocalDeformableModel( HObject template, 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 contrast, HTuple minContrast, HTuple genParamName, HTuple genParamValue, out HTuple modelID )def create_local_deformable_model( template: HObject, num_levels: Union[int, str], angle_start: Sequence[float], angle_extent: Sequence[float], angle_step: Union[float, str], scale_rmin: float, scale_rmax: Sequence[float], scale_rstep: Union[float, str], scale_cmin: float, scale_cmax: Sequence[float], scale_cstep: Union[float, str], optimization: MaybeSequence[str], metric: str, contrast: Sequence[Union[int, str]], min_contrast: Union[int, str], gen_param_name: Sequence[str], gen_param_value: Sequence[Union[int, float, str]] ) -> HHandle
Herror T_create_local_deformable_model( const Hobject Template, 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 Contrast, const Htuple MinContrast, const Htuple GenParamName, const Htuple GenParamValue, Htuple* ModelID )
void HDeformableModel::CreateLocalDeformableModel( const HImage& Template, const HTuple& NumLevels, const HTuple& AngleStart, const HTuple& AngleExtent, const HTuple& AngleStep, double ScaleRMin, const HTuple& ScaleRMax, const HTuple& ScaleRStep, double ScaleCMin, const HTuple& ScaleCMax, const HTuple& ScaleCStep, const HTuple& Optimization, const HString& Metric, const HTuple& Contrast, const HTuple& MinContrast, const HTuple& GenParamName, const HTuple& GenParamValue )
void HDeformableModel::CreateLocalDeformableModel( const HImage& Template, Hlong NumLevels, const HTuple& AngleStart, const HTuple& AngleExtent, double AngleStep, double ScaleRMin, const HTuple& ScaleRMax, double ScaleRStep, double ScaleCMin, const HTuple& ScaleCMax, double ScaleCStep, const HString& Optimization, const HString& Metric, const HTuple& Contrast, Hlong MinContrast, const HTuple& GenParamName, const HTuple& GenParamValue )
void HDeformableModel::CreateLocalDeformableModel( const HImage& Template, Hlong NumLevels, const HTuple& AngleStart, const HTuple& AngleExtent, double AngleStep, double ScaleRMin, const HTuple& ScaleRMax, double ScaleRStep, double ScaleCMin, const HTuple& ScaleCMax, double ScaleCStep, const char* Optimization, const char* Metric, const HTuple& Contrast, Hlong MinContrast, const HTuple& GenParamName, const HTuple& GenParamValue )
void HDeformableModel::CreateLocalDeformableModel( const HImage& Template, Hlong NumLevels, const HTuple& AngleStart, const HTuple& AngleExtent, double AngleStep, double ScaleRMin, const HTuple& ScaleRMax, double ScaleRStep, double ScaleCMin, const HTuple& ScaleCMax, double ScaleCStep, const wchar_t* Optimization, const wchar_t* Metric, const HTuple& Contrast, Hlong MinContrast, const HTuple& GenParamName, const HTuple& GenParamValue ) (Windows only)
HDeformableModel HImage::CreateLocalDeformableModel( const HTuple& NumLevels, const HTuple& AngleStart, const HTuple& AngleExtent, const HTuple& AngleStep, double ScaleRMin, const HTuple& ScaleRMax, const HTuple& ScaleRStep, double ScaleCMin, const HTuple& ScaleCMax, const HTuple& ScaleCStep, const HTuple& Optimization, const HString& Metric, const HTuple& Contrast, const HTuple& MinContrast, const HTuple& GenParamName, const HTuple& GenParamValue ) const
HDeformableModel HImage::CreateLocalDeformableModel( Hlong NumLevels, const HTuple& AngleStart, const HTuple& AngleExtent, double AngleStep, double ScaleRMin, const HTuple& ScaleRMax, double ScaleRStep, double ScaleCMin, const HTuple& ScaleCMax, double ScaleCStep, const HString& Optimization, const HString& Metric, const HTuple& Contrast, Hlong MinContrast, const HTuple& GenParamName, const HTuple& GenParamValue ) const
HDeformableModel HImage::CreateLocalDeformableModel( Hlong NumLevels, const HTuple& AngleStart, const HTuple& AngleExtent, double AngleStep, double ScaleRMin, const HTuple& ScaleRMax, double ScaleRStep, double ScaleCMin, const HTuple& ScaleCMax, double ScaleCStep, const char* Optimization, const char* Metric, const HTuple& Contrast, Hlong MinContrast, const HTuple& GenParamName, const HTuple& GenParamValue ) const
HDeformableModel HImage::CreateLocalDeformableModel( Hlong NumLevels, const HTuple& AngleStart, const HTuple& AngleExtent, double AngleStep, double ScaleRMin, const HTuple& ScaleRMax, double ScaleRStep, double ScaleCMin, const HTuple& ScaleCMax, double ScaleCStep, const wchar_t* Optimization, const wchar_t* Metric, const HTuple& Contrast, Hlong MinContrast, const HTuple& GenParamName, const HTuple& GenParamValue ) const (Windows only)
void HDeformableModel.CreateLocalDeformableModel( HImage template, HTuple numLevels, HTuple angleStart, HTuple angleExtent, HTuple angleStep, double scaleRMin, HTuple scaleRMax, HTuple scaleRStep, double scaleCMin, HTuple scaleCMax, HTuple scaleCStep, HTuple optimization, string metric, HTuple contrast, HTuple minContrast, HTuple genParamName, HTuple genParamValue )
void HDeformableModel.CreateLocalDeformableModel( HImage template, int numLevels, HTuple angleStart, HTuple angleExtent, double angleStep, double scaleRMin, HTuple scaleRMax, double scaleRStep, double scaleCMin, HTuple scaleCMax, double scaleCStep, string optimization, string metric, HTuple contrast, int minContrast, HTuple genParamName, HTuple genParamValue )
HDeformableModel HImage.CreateLocalDeformableModel( HTuple numLevels, HTuple angleStart, HTuple angleExtent, HTuple angleStep, double scaleRMin, HTuple scaleRMax, HTuple scaleRStep, double scaleCMin, HTuple scaleCMax, HTuple scaleCStep, HTuple optimization, string metric, HTuple contrast, HTuple minContrast, HTuple genParamName, HTuple genParamValue )
HDeformableModel HImage.CreateLocalDeformableModel( int numLevels, HTuple angleStart, HTuple angleExtent, double angleStep, double scaleRMin, HTuple scaleRMax, double scaleRStep, double scaleCMin, HTuple scaleCMax, double scaleCStep, string optimization, string metric, HTuple contrast, int minContrast, HTuple genParamName, HTuple genParamValue )
Description
The operator create_local_deformable_modelCreateLocalDeformableModel prepares a
template, which is passed in the image Templatetemplatetemplate, as a deformable
model used for local deformable matching. The ROI of the model is passed as
the domain of Templatetemplatetemplate.
The local deformable matching can be used to detect an object that is
distorted by a local deformation, estimate the deformation,
and rectify the image area where the object is found. For a distinction from
further matching methods we refer to the βSolution Guide Iβ
chapter β2D Matchingβ.
As described in create_planar_uncalib_deformable_modelCreatePlanarUncalibDeformableModel, the origin
(reference point) of the model is defined as the center of gravity of the
domain (region) of the model image Templatetemplatetemplate. Further, the
axis-aligned enclosing rectangle of the domain of the Templatetemplatetemplate is
used to determine the area of the search image that is rectified in calls of
find_local_deformable_modelFindLocalDeformableModel.
For further explanation on the parameters used for the creation of a local
deformable model we refer to the description of
create_planar_uncalib_deformable_modelCreatePlanarUncalibDeformableModel. Note, that the parameters
of the actual deformation are set with the call of
find_local_deformable_modelFindLocalDeformableModel.
Execution information
-
Multithreading type: reentrant (runs in parallel with non-exclusive operators).
-
Multithreading scope: global (may be called from any thread).
-
Processed without parallelization.
This operator returns a handle. Note that the state of an instance of this handle type may be changed by specific operators even though the handle is used as an input parameter by those operators.
Parameters
Templatetemplatetemplate (input_object) (multichannel-)image β object (byte / uint2)HObject (byte / uint2)HImage (byte / uint2)HObject (byte / uint2)Hobject (byte / uint2)
Input image whose domain will be used to create
the model.
NumLevelsnumLevelsnum_levels (input_control) integer β (integer / string)HTuple (Hlong / HString)HTuple (int / long / string)Union[int, str]Htuple (Hlong / char*)
Maximum number of pyramid levels.
Default: 'auto'"auto"
List of values: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 'auto'0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, "auto"
AngleStartangleStartangle_start (input_control) angle.rad-array β (real)HTuple (double)HTuple (double)Sequence[float]Htuple (double)
This parameter is not used.
Default: [][]
AngleExtentangleExtentangle_extent (input_control) angle.rad-array β (real)HTuple (double)HTuple (double)Sequence[float]Htuple (double)
This parameter is not used.
Default: [][]
AngleStepangleStepangle_step (input_control) angle.rad β (real / string)HTuple (double / HString)HTuple (double / string)Union[float, str]Htuple (double / char*)
Step length of the angles (resolution).
Default: 'auto'"auto"
Suggested values: 'auto', 0.0175, 0.0349, 0.0524, 0.0698, 0.0873"auto", 0.0175, 0.0349, 0.0524, 0.0698, 0.0873
Restriction: AngleStep > 0 && AngleStep <= pi/16
ScaleRMinscaleRMinscale_rmin (input_control) number β (real)HTuple (double)HTuple (double)floatHtuple (double)
Minimum scale of the pattern in row direction.
Default: 1.01.0
Suggested values: 0.5, 0.6, 0.7, 0.8, 0.9, 1.00.5, 0.6, 0.7, 0.8, 0.9, 1.0
Restriction: ScaleRMin > 0
ScaleRMaxscaleRMaxscale_rmax (input_control) number-array β (real)HTuple (double)HTuple (double)Sequence[float]Htuple (double)
This parameter is not used.
Default: [][]
ScaleRStepscaleRStepscale_rstep (input_control) number β (real / string)HTuple (double / HString)HTuple (double / string)Union[float, str]Htuple (double / char*)
Scale step length (resolution) in row direction.
Default: 'auto'"auto"
Suggested values: 'auto', 0.01, 0.02, 0.05, 0.1, 0.15, 0.2"auto", 0.01, 0.02, 0.05, 0.1, 0.15, 0.2
Restriction: ScaleRStep >= 0
ScaleCMinscaleCMinscale_cmin (input_control) number β (real)HTuple (double)HTuple (double)floatHtuple (double)
Minimum scale of the pattern in column direction.
Default: 1.01.0
Suggested values: 0.5, 0.6, 0.7, 0.8, 0.9, 1.00.5, 0.6, 0.7, 0.8, 0.9, 1.0
Restriction: ScaleCMin > 0
ScaleCMaxscaleCMaxscale_cmax (input_control) number-array β (real)HTuple (double)HTuple (double)Sequence[float]Htuple (double)
This parameter is not used.
Default: [][]
ScaleCStepscaleCStepscale_cstep (input_control) number β (real / string)HTuple (double / HString)HTuple (double / string)Union[float, str]Htuple (double / char*)
Scale step length (resolution) in column direction.
Default: 'auto'"auto"
Suggested values: 'auto', 0.01, 0.02, 0.05, 0.1, 0.15, 0.2"auto", 0.01, 0.02, 0.05, 0.1, 0.15, 0.2
Restriction: ScaleCStep >= 0
Optimizationoptimizationoptimization (input_control) string(-array) β (string)HTuple (HString)HTuple (string)MaybeSequence[str]Htuple (char*)
Kind of optimization used for generating the model.
Default: 'none'"none"
List of values: 'auto', 'none', 'point_reduction_high', 'point_reduction_low', 'point_reduction_medium'"auto", "none", "point_reduction_high", "point_reduction_low", "point_reduction_medium"
Metricmetricmetric (input_control) string β (string)HTuple (HString)HTuple (string)strHtuple (char*)
Match metric.
Default: 'use_polarity'"use_polarity"
List of values: 'ignore_color_polarity', 'ignore_global_polarity', 'ignore_local_polarity', 'ignore_part_polarity', 'use_polarity'"ignore_color_polarity", "ignore_global_polarity", "ignore_local_polarity", "ignore_part_polarity", "use_polarity"
Contrastcontrastcontrast (input_control) number-array β (integer / string)HTuple (Hlong / HString)HTuple (int / long / string)Sequence[Union[int, str]]Htuple (Hlong / char*)
Thresholds or hysteresis thresholds for the contrast
of the object in the template image.
Default: 'auto'"auto"
Suggested values: 'auto', 10, 20, 30, 40, 60, 80, 100, 120, 140, 160"auto", 10, 20, 30, 40, 60, 80, 100, 120, 140, 160
MinContrastminContrastmin_contrast (input_control) number β (integer / string)HTuple (Hlong / HString)HTuple (int / long / string)Union[int, str]Htuple (Hlong / char*)
Minimum contrast of the objects in the search images.
Default: 'auto'"auto"
Suggested values: 'auto', 1, 2, 3, 5, 7, 10, 20, 30, 40"auto", 1, 2, 3, 5, 7, 10, 20, 30, 40
Restriction: MinContrast < Contrast
GenParamNamegenParamNamegen_param_name (input_control) string-array β (string)HTuple (HString)HTuple (string)Sequence[str]Htuple (char*)
The generic parameter names.
Default: [][]
List of values: [], 'min_size', 'part_size'[], "min_size", "part_size"
GenParamValuegenParamValuegen_param_value (input_control) integer-array β (integer / real / string)HTuple (Hlong / double / HString)HTuple (int / long / double / string)Sequence[Union[int, float, str]]Htuple (Hlong / double / char*)
Values of the generic parameters.
Default: [][]
List of values: [], 'big', 'medium', 'small'[], "big", "medium", "small"
ModelIDmodelIDmodel_id (output_control) deformable_model β (handle)HTuple (HHandle)HDeformableModel, HTuple (IntPtr)HHandleHtuple (handle)
Handle of the model.
Result
If the parameters are valid, the operator
create_local_deformable_modelCreateLocalDeformableModel returns the value 2 (H_MSG_TRUE). If
necessary an exception is raised.
Combinations with other operators
Combinations
Possible predecessors
determine_deformable_model_paramsDetermineDeformableModelParams
Possible successors
set_deformable_model_originSetDeformableModelOrigin, set_deformable_model_paramSetDeformableModelParam, get_deformable_model_contoursGetDeformableModelContours, find_local_deformable_modelFindLocalDeformableModel, get_deformable_model_paramsGetDeformableModelParams, write_deformable_modelWriteDeformableModel, clear_deformable_modelClearDeformableModel
Alternatives
read_deformable_modelReadDeformableModel
See also
create_planar_uncalib_deformable_modelCreatePlanarUncalibDeformableModel, create_planar_calib_deformable_modelCreatePlanarCalibDeformableModel
Module
Matching