create_local_deformable_modelT_create_local_deformable_modelCreateLocalDeformableModelCreateLocalDeformableModelcreate_local_deformable_model (Operator)
create_local_deformable_modelT_create_local_deformable_modelCreateLocalDeformableModelCreateLocalDeformableModelcreate_local_deformable_model
— Creates a deformable model for local, deformable matching.
Signature
create_local_deformable_model(Template : : NumLevels, AngleStart, AngleExtent, AngleStep, ScaleRMin, ScaleRMax, ScaleRStep, ScaleCMin, ScaleCMax, ScaleCStep, Optimization, Metric, Contrast, MinContrast, GenParamName, GenParamValue : ModelID)
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 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)
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)
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)
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)
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
Description
The operator create_local_deformable_modelcreate_local_deformable_modelCreateLocalDeformableModelCreateLocalDeformableModelcreate_local_deformable_model
prepares a
template, which is passed in the image TemplateTemplateTemplatetemplatetemplate
, as a deformable
model used for local deformable matching. The ROI of the model is passed as
the domain of TemplateTemplateTemplatetemplatetemplate
.
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_modelcreate_planar_uncalib_deformable_modelCreatePlanarUncalibDeformableModelCreatePlanarUncalibDeformableModelcreate_planar_uncalib_deformable_model
, the origin
(reference point) of the model is defined as the center of gravity of the
domain (region) of the model image TemplateTemplateTemplatetemplatetemplate
. Further, the
axis-aligned enclosing rectangle of the domain of the TemplateTemplateTemplatetemplatetemplate
is
used to determine the area of the search image that is rectified in calls of
find_local_deformable_modelfind_local_deformable_modelFindLocalDeformableModelFindLocalDeformableModelfind_local_deformable_model
.
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_modelcreate_planar_uncalib_deformable_modelCreatePlanarUncalibDeformableModelCreatePlanarUncalibDeformableModelcreate_planar_uncalib_deformable_model
. Note, that the parameters
of the actual deformation are set with the call of
find_local_deformable_modelfind_local_deformable_modelFindLocalDeformableModelFindLocalDeformableModelfind_local_deformable_model
.
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
TemplateTemplateTemplatetemplatetemplate
(input_object) (multichannel-)image →
objectHImageHObjectHObjectHobject (byte / uint2)
Input image whose domain will be used to create
the model.
NumLevelsNumLevelsNumLevelsnumLevelsnum_levels
(input_control) integer →
HTupleUnion[int, str]HTupleHtuple (integer / string) (int / long / string) (Hlong / HString) (Hlong / char*)
Maximum number of pyramid levels.
Default:
'auto'
"auto"
"auto"
"auto"
"auto"
List of values:
0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 'auto'"auto""auto""auto""auto"
AngleStartAngleStartAngleStartangleStartangle_start
(input_control) angle.rad-array →
HTupleSequence[float]HTupleHtuple (real) (double) (double) (double)
This parameter is not used.
Default:
[]
AngleExtentAngleExtentAngleExtentangleExtentangle_extent
(input_control) angle.rad-array →
HTupleSequence[float]HTupleHtuple (real) (double) (double) (double)
This parameter is not used.
Default:
[]
AngleStepAngleStepAngleStepangleStepangle_step
(input_control) angle.rad →
HTupleUnion[float, str]HTupleHtuple (real / string) (double / string) (double / HString) (double / char*)
Step length of the angles (resolution).
Default:
'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
ScaleRMinScaleRMinScaleRMinscaleRMinscale_rmin
(input_control) number →
HTuplefloatHTupleHtuple (real) (double) (double) (double)
Minimum scale of the pattern in row direction.
Default:
1.0
Suggested values:
0.5, 0.6, 0.7, 0.8, 0.9, 1.0
Restriction:
ScaleRMin > 0
ScaleRMaxScaleRMaxScaleRMaxscaleRMaxscale_rmax
(input_control) number-array →
HTupleSequence[float]HTupleHtuple (real) (double) (double) (double)
This parameter is not used.
Default:
[]
ScaleRStepScaleRStepScaleRStepscaleRStepscale_rstep
(input_control) number →
HTupleUnion[float, str]HTupleHtuple (real / string) (double / string) (double / HString) (double / char*)
Scale step length (resolution) in row direction.
Default:
'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
ScaleCMinScaleCMinScaleCMinscaleCMinscale_cmin
(input_control) number →
HTuplefloatHTupleHtuple (real) (double) (double) (double)
Minimum scale of the pattern in column direction.
Default:
1.0
Suggested values:
0.5, 0.6, 0.7, 0.8, 0.9, 1.0
Restriction:
ScaleCMin > 0
ScaleCMaxScaleCMaxScaleCMaxscaleCMaxscale_cmax
(input_control) number-array →
HTupleSequence[float]HTupleHtuple (real) (double) (double) (double)
This parameter is not used.
Default:
[]
ScaleCStepScaleCStepScaleCStepscaleCStepscale_cstep
(input_control) number →
HTupleUnion[float, str]HTupleHtuple (real / string) (double / string) (double / HString) (double / char*)
Scale step length (resolution) in column direction.
Default:
'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) →
HTupleMaybeSequence[str]HTupleHtuple (string) (string) (HString) (char*)
Kind of optimization used for generating the model.
Default:
'none'
"none"
"none"
"none"
"none"
List of values:
'auto'"auto""auto""auto""auto", 'none'"none""none""none""none", 'point_reduction_high'"point_reduction_high""point_reduction_high""point_reduction_high""point_reduction_high", '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"
MetricMetricMetricmetricmetric
(input_control) string →
HTuplestrHTupleHtuple (string) (string) (HString) (char*)
Match metric.
Default:
'use_polarity'
"use_polarity"
"use_polarity"
"use_polarity"
"use_polarity"
List of values:
'ignore_color_polarity'"ignore_color_polarity""ignore_color_polarity""ignore_color_polarity""ignore_color_polarity", 'ignore_global_polarity'"ignore_global_polarity""ignore_global_polarity""ignore_global_polarity""ignore_global_polarity", 'ignore_local_polarity'"ignore_local_polarity""ignore_local_polarity""ignore_local_polarity""ignore_local_polarity", 'ignore_part_polarity'"ignore_part_polarity""ignore_part_polarity""ignore_part_polarity""ignore_part_polarity", 'use_polarity'"use_polarity""use_polarity""use_polarity""use_polarity"
ContrastContrastContrastcontrastcontrast
(input_control) number-array →
HTupleSequence[Union[int, str]]HTupleHtuple (integer / string) (int / long / string) (Hlong / HString) (Hlong / char*)
Thresholds or hysteresis thresholds for the contrast
of the object in the template image.
Default:
'auto'
"auto"
"auto"
"auto"
"auto"
Suggested values:
'auto'"auto""auto""auto""auto", 10, 20, 30, 40, 60, 80, 100, 120, 140, 160
MinContrastMinContrastMinContrastminContrastmin_contrast
(input_control) number →
HTupleUnion[int, str]HTupleHtuple (integer / string) (int / long / string) (Hlong / HString) (Hlong / char*)
Minimum contrast of the objects in the search images.
Default:
'auto'
"auto"
"auto"
"auto"
"auto"
Suggested values:
'auto'"auto""auto""auto""auto", 1, 2, 3, 5, 7, 10, 20, 30, 40
Restriction:
MinContrast < Contrast
GenParamNameGenParamNameGenParamNamegenParamNamegen_param_name
(input_control) string-array →
HTupleSequence[str]HTupleHtuple (string) (string) (HString) (char*)
The generic parameter names.
Default:
[]
List of values:
[], 'min_size'"min_size""min_size""min_size""min_size", 'part_size'"part_size""part_size""part_size""part_size"
GenParamValueGenParamValueGenParamValuegenParamValuegen_param_value
(input_control) integer-array →
HTupleSequence[Union[int, float, str]]HTupleHtuple (integer / real / string) (int / long / double / string) (Hlong / double / HString) (Hlong / double / char*)
Values of the generic parameters.
Default:
[]
List of values:
[], 'big'"big""big""big""big", 'medium'"medium""medium""medium""medium", 'small'"small""small""small""small"
ModelIDModelIDModelIDmodelIDmodel_id
(output_control) deformable_model →
HDeformableModel, HTupleHHandleHTupleHtuple (handle) (IntPtr) (HHandle) (handle)
Handle of the model.
Result
If the parameters are valid, the operator
create_local_deformable_modelcreate_local_deformable_modelCreateLocalDeformableModelCreateLocalDeformableModelcreate_local_deformable_model
returns the value 2 (
H_MSG_TRUE)
. If
necessary an exception is raised.
Possible Predecessors
determine_deformable_model_paramsdetermine_deformable_model_paramsDetermineDeformableModelParamsDetermineDeformableModelParamsdetermine_deformable_model_params
Possible Successors
set_deformable_model_originset_deformable_model_originSetDeformableModelOriginSetDeformableModelOriginset_deformable_model_origin
,
set_deformable_model_paramset_deformable_model_paramSetDeformableModelParamSetDeformableModelParamset_deformable_model_param
,
get_deformable_model_contoursget_deformable_model_contoursGetDeformableModelContoursGetDeformableModelContoursget_deformable_model_contours
,
find_local_deformable_modelfind_local_deformable_modelFindLocalDeformableModelFindLocalDeformableModelfind_local_deformable_model
,
get_deformable_model_paramsget_deformable_model_paramsGetDeformableModelParamsGetDeformableModelParamsget_deformable_model_params
,
write_deformable_modelwrite_deformable_modelWriteDeformableModelWriteDeformableModelwrite_deformable_model
,
clear_deformable_modelclear_deformable_modelClearDeformableModelClearDeformableModelclear_deformable_model
Alternatives
read_deformable_modelread_deformable_modelReadDeformableModelReadDeformableModelread_deformable_model
See also
create_planar_uncalib_deformable_modelcreate_planar_uncalib_deformable_modelCreatePlanarUncalibDeformableModelCreatePlanarUncalibDeformableModelcreate_planar_uncalib_deformable_model
,
create_planar_calib_deformable_modelcreate_planar_calib_deformable_modelCreatePlanarCalibDeformableModelCreatePlanarCalibDeformableModelcreate_planar_calib_deformable_model
Module
Matching