Operator Reference

create_component_modelT_create_component_modelCreateComponentModelCreateComponentModelcreate_component_model (Operator)

create_component_modelT_create_component_modelCreateComponentModelCreateComponentModelcreate_component_model — Prepare a component model for matching based on explicitly specified components and relations.

Warning

create_component_modelcreate_component_modelCreateComponentModelCreateComponentModelcreate_component_model is obsolete and is only provided for reasons of backward compatibility. The operator will be removed with HALCON 26.11.

Signature

Herror T_create_component_model(const Hobject ModelImage, const Hobject ComponentRegions, const Htuple VariationRow, const Htuple VariationColumn, const Htuple VariationAngle, const Htuple AngleStart, const Htuple AngleExtent, const Htuple ContrastLowComp, const Htuple ContrastHighComp, const Htuple MinSizeComp, const Htuple MinContrastComp, const Htuple MinScoreComp, const Htuple NumLevelsComp, const Htuple AngleStepComp, const Htuple OptimizationComp, const Htuple MetricComp, const Htuple PregenerationComp, Htuple* ComponentModelID, Htuple* RootRanking)

void CreateComponentModel(const HObject& ModelImage, const HObject& ComponentRegions, const HTuple& VariationRow, const HTuple& VariationColumn, const HTuple& VariationAngle, const HTuple& AngleStart, const HTuple& AngleExtent, const HTuple& ContrastLowComp, const HTuple& ContrastHighComp, const HTuple& MinSizeComp, const HTuple& MinContrastComp, const HTuple& MinScoreComp, const HTuple& NumLevelsComp, const HTuple& AngleStepComp, const HTuple& OptimizationComp, const HTuple& MetricComp, const HTuple& PregenerationComp, HTuple* ComponentModelID, HTuple* RootRanking)

void HComponentModel::HComponentModel(const HImage& ModelImage, const HRegion& ComponentRegions, const HTuple& VariationRow, const HTuple& VariationColumn, const HTuple& VariationAngle, double AngleStart, double AngleExtent, const HTuple& ContrastLowComp, const HTuple& ContrastHighComp, const HTuple& MinSizeComp, const HTuple& MinContrastComp, const HTuple& MinScoreComp, const HTuple& NumLevelsComp, const HTuple& AngleStepComp, const HString& OptimizationComp, const HTuple& MetricComp, const HTuple& PregenerationComp, HTuple* RootRanking)

void HComponentModel::HComponentModel(const HImage& ModelImage, const HRegion& ComponentRegions, Hlong VariationRow, Hlong VariationColumn, double VariationAngle, double AngleStart, double AngleExtent, Hlong ContrastLowComp, Hlong ContrastHighComp, Hlong MinSizeComp, Hlong MinContrastComp, double MinScoreComp, Hlong NumLevelsComp, double AngleStepComp, const HString& OptimizationComp, const HString& MetricComp, const HString& PregenerationComp, Hlong* RootRanking)

void HComponentModel::HComponentModel(const HImage& ModelImage, const HRegion& ComponentRegions, Hlong VariationRow, Hlong VariationColumn, double VariationAngle, double AngleStart, double AngleExtent, Hlong ContrastLowComp, Hlong ContrastHighComp, Hlong MinSizeComp, Hlong MinContrastComp, double MinScoreComp, Hlong NumLevelsComp, double AngleStepComp, const char* OptimizationComp, const char* MetricComp, const char* PregenerationComp, Hlong* RootRanking)

void HComponentModel::HComponentModel(const HImage& ModelImage, const HRegion& ComponentRegions, Hlong VariationRow, Hlong VariationColumn, double VariationAngle, double AngleStart, double AngleExtent, Hlong ContrastLowComp, Hlong ContrastHighComp, Hlong MinSizeComp, Hlong MinContrastComp, double MinScoreComp, Hlong NumLevelsComp, double AngleStepComp, const wchar_t* OptimizationComp, const wchar_t* MetricComp, const wchar_t* PregenerationComp, Hlong* RootRanking)   ( Windows only)

HTuple HComponentModel::CreateComponentModel(const HImage& ModelImage, const HRegion& ComponentRegions, const HTuple& VariationRow, const HTuple& VariationColumn, const HTuple& VariationAngle, double AngleStart, double AngleExtent, const HTuple& ContrastLowComp, const HTuple& ContrastHighComp, const HTuple& MinSizeComp, const HTuple& MinContrastComp, const HTuple& MinScoreComp, const HTuple& NumLevelsComp, const HTuple& AngleStepComp, const HString& OptimizationComp, const HTuple& MetricComp, const HTuple& PregenerationComp)

Hlong HComponentModel::CreateComponentModel(const HImage& ModelImage, const HRegion& ComponentRegions, Hlong VariationRow, Hlong VariationColumn, double VariationAngle, double AngleStart, double AngleExtent, Hlong ContrastLowComp, Hlong ContrastHighComp, Hlong MinSizeComp, Hlong MinContrastComp, double MinScoreComp, Hlong NumLevelsComp, double AngleStepComp, const HString& OptimizationComp, const HString& MetricComp, const HString& PregenerationComp)

Hlong HComponentModel::CreateComponentModel(const HImage& ModelImage, const HRegion& ComponentRegions, Hlong VariationRow, Hlong VariationColumn, double VariationAngle, double AngleStart, double AngleExtent, Hlong ContrastLowComp, Hlong ContrastHighComp, Hlong MinSizeComp, Hlong MinContrastComp, double MinScoreComp, Hlong NumLevelsComp, double AngleStepComp, const char* OptimizationComp, const char* MetricComp, const char* PregenerationComp)

Hlong HComponentModel::CreateComponentModel(const HImage& ModelImage, const HRegion& ComponentRegions, Hlong VariationRow, Hlong VariationColumn, double VariationAngle, double AngleStart, double AngleExtent, Hlong ContrastLowComp, Hlong ContrastHighComp, Hlong MinSizeComp, Hlong MinContrastComp, double MinScoreComp, Hlong NumLevelsComp, double AngleStepComp, const wchar_t* OptimizationComp, const wchar_t* MetricComp, const wchar_t* PregenerationComp)   ( Windows only)

HComponentModel HImage::CreateComponentModel(const HRegion& ComponentRegions, const HTuple& VariationRow, const HTuple& VariationColumn, const HTuple& VariationAngle, double AngleStart, double AngleExtent, const HTuple& ContrastLowComp, const HTuple& ContrastHighComp, const HTuple& MinSizeComp, const HTuple& MinContrastComp, const HTuple& MinScoreComp, const HTuple& NumLevelsComp, const HTuple& AngleStepComp, const HString& OptimizationComp, const HTuple& MetricComp, const HTuple& PregenerationComp, HTuple* RootRanking) const

HComponentModel HImage::CreateComponentModel(const HRegion& ComponentRegions, Hlong VariationRow, Hlong VariationColumn, double VariationAngle, double AngleStart, double AngleExtent, Hlong ContrastLowComp, Hlong ContrastHighComp, Hlong MinSizeComp, Hlong MinContrastComp, double MinScoreComp, Hlong NumLevelsComp, double AngleStepComp, const HString& OptimizationComp, const HString& MetricComp, const HString& PregenerationComp, Hlong* RootRanking) const

HComponentModel HImage::CreateComponentModel(const HRegion& ComponentRegions, Hlong VariationRow, Hlong VariationColumn, double VariationAngle, double AngleStart, double AngleExtent, Hlong ContrastLowComp, Hlong ContrastHighComp, Hlong MinSizeComp, Hlong MinContrastComp, double MinScoreComp, Hlong NumLevelsComp, double AngleStepComp, const char* OptimizationComp, const char* MetricComp, const char* PregenerationComp, Hlong* RootRanking) const

HComponentModel HImage::CreateComponentModel(const HRegion& ComponentRegions, Hlong VariationRow, Hlong VariationColumn, double VariationAngle, double AngleStart, double AngleExtent, Hlong ContrastLowComp, Hlong ContrastHighComp, Hlong MinSizeComp, Hlong MinContrastComp, double MinScoreComp, Hlong NumLevelsComp, double AngleStepComp, const wchar_t* OptimizationComp, const wchar_t* MetricComp, const wchar_t* PregenerationComp, Hlong* RootRanking) const   ( Windows only)

static void HOperatorSet.CreateComponentModel(HObject modelImage, HObject componentRegions, HTuple variationRow, HTuple variationColumn, HTuple variationAngle, HTuple angleStart, HTuple angleExtent, HTuple contrastLowComp, HTuple contrastHighComp, HTuple minSizeComp, HTuple minContrastComp, HTuple minScoreComp, HTuple numLevelsComp, HTuple angleStepComp, HTuple optimizationComp, HTuple metricComp, HTuple pregenerationComp, out HTuple componentModelID, out HTuple rootRanking)

public HComponentModel(HImage modelImage, HRegion componentRegions, HTuple variationRow, HTuple variationColumn, HTuple variationAngle, double angleStart, double angleExtent, HTuple contrastLowComp, HTuple contrastHighComp, HTuple minSizeComp, HTuple minContrastComp, HTuple minScoreComp, HTuple numLevelsComp, HTuple angleStepComp, string optimizationComp, HTuple metricComp, HTuple pregenerationComp, out HTuple rootRanking)

public HComponentModel(HImage modelImage, HRegion componentRegions, int variationRow, int variationColumn, double variationAngle, double angleStart, double angleExtent, int contrastLowComp, int contrastHighComp, int minSizeComp, int minContrastComp, double minScoreComp, int numLevelsComp, double angleStepComp, string optimizationComp, string metricComp, string pregenerationComp, out int rootRanking)

HTuple HComponentModel.CreateComponentModel(HImage modelImage, HRegion componentRegions, HTuple variationRow, HTuple variationColumn, HTuple variationAngle, double angleStart, double angleExtent, HTuple contrastLowComp, HTuple contrastHighComp, HTuple minSizeComp, HTuple minContrastComp, HTuple minScoreComp, HTuple numLevelsComp, HTuple angleStepComp, string optimizationComp, HTuple metricComp, HTuple pregenerationComp)

int HComponentModel.CreateComponentModel(HImage modelImage, HRegion componentRegions, int variationRow, int variationColumn, double variationAngle, double angleStart, double angleExtent, int contrastLowComp, int contrastHighComp, int minSizeComp, int minContrastComp, double minScoreComp, int numLevelsComp, double angleStepComp, string optimizationComp, string metricComp, string pregenerationComp)

HComponentModel HImage.CreateComponentModel(HRegion componentRegions, HTuple variationRow, HTuple variationColumn, HTuple variationAngle, double angleStart, double angleExtent, HTuple contrastLowComp, HTuple contrastHighComp, HTuple minSizeComp, HTuple minContrastComp, HTuple minScoreComp, HTuple numLevelsComp, HTuple angleStepComp, string optimizationComp, HTuple metricComp, HTuple pregenerationComp, out HTuple rootRanking)

HComponentModel HImage.CreateComponentModel(HRegion componentRegions, int variationRow, int variationColumn, double variationAngle, double angleStart, double angleExtent, int contrastLowComp, int contrastHighComp, int minSizeComp, int minContrastComp, double minScoreComp, int numLevelsComp, double angleStepComp, string optimizationComp, string metricComp, string pregenerationComp, out int rootRanking)

def create_component_model(model_image: HObject, component_regions: HObject, variation_row: MaybeSequence[int], variation_column: MaybeSequence[int], variation_angle: MaybeSequence[float], angle_start: float, angle_extent: float, contrast_low_comp: MaybeSequence[Union[int, str]], contrast_high_comp: MaybeSequence[Union[int, str]], min_size_comp: MaybeSequence[Union[int, str]], min_contrast_comp: MaybeSequence[Union[int, str]], min_score_comp: MaybeSequence[float], num_levels_comp: MaybeSequence[Union[int, str]], angle_step_comp: MaybeSequence[Union[float, str]], optimization_comp: str, metric_comp: MaybeSequence[str], pregeneration_comp: MaybeSequence[str]) -> Tuple[HHandle, Sequence[int]]

def create_component_model_s(model_image: HObject, component_regions: HObject, variation_row: MaybeSequence[int], variation_column: MaybeSequence[int], variation_angle: MaybeSequence[float], angle_start: float, angle_extent: float, contrast_low_comp: MaybeSequence[Union[int, str]], contrast_high_comp: MaybeSequence[Union[int, str]], min_size_comp: MaybeSequence[Union[int, str]], min_contrast_comp: MaybeSequence[Union[int, str]], min_score_comp: MaybeSequence[float], num_levels_comp: MaybeSequence[Union[int, str]], angle_step_comp: MaybeSequence[Union[float, str]], optimization_comp: str, metric_comp: MaybeSequence[str], pregeneration_comp: MaybeSequence[str]) -> Tuple[HHandle, int]

Description

create_component_modelcreate_component_modelCreateComponentModelCreateComponentModelcreate_component_model prepares patterns, which are passed in the form of a model image ModelImageModelImageModelImagemodelImagemodel_image and several regions ComponentRegionsComponentRegionsComponentRegionscomponentRegionscomponent_regions, as a component model for matching. The output parameter ComponentModelIDComponentModelIDComponentModelIDcomponentModelIDcomponent_model_id is a handle for this model, which is used in subsequent calls to find_component_modelfind_component_modelFindComponentModelFindComponentModelfind_component_model. In contrast to create_trained_component_modelcreate_trained_component_modelCreateTrainedComponentModelCreateTrainedComponentModelcreate_trained_component_model, no preceding training with train_model_componentstrain_model_componentsTrainModelComponentsTrainModelComponentstrain_model_components needs to be performed before calling create_component_modelcreate_component_modelCreateComponentModelCreateComponentModelcreate_component_model.

Each of the regions passed in ComponentRegionsComponentRegionsComponentRegionscomponentRegionscomponent_regions describes a separate model component. Later, the index of a component region in ComponentRegionsComponentRegionsComponentRegionscomponentRegionscomponent_regions is used to denote the model component. The reference point of a component is the center of gravity of its associated region, which is passed in ComponentRegionsComponentRegionsComponentRegionscomponentRegionscomponent_regions. It can be calculated by calling area_centerarea_centerAreaCenterAreaCenterarea_center.

The relative movements (relations) of the model components can be set by passing VariationRowVariationRowVariationRowvariationRowvariation_row, VariationColumnVariationColumnVariationColumnvariationColumnvariation_column, and VariationAngleVariationAngleVariationAnglevariationAnglevariation_angle. Because directly passing the relations is complicated, instead of the relations the variations of the model components are passed. The variations describe the movements of the components independently from each other relative to their poses in the model image ModelImageModelImageModelImagemodelImagemodel_image. The parameters VariationRowVariationRowVariationRowvariationRowvariation_row and VariationColumnVariationColumnVariationColumnvariationColumnvariation_column describe the movement of the components in row and column direction by and , respectively. The parameter VariationAngleVariationAngleVariationAnglevariationAnglevariation_angle describes the angle variation of the component by . Based on these values, the relations are automatically computed. The three parameters must either contain one element, in which case the parameter is used for all model components, or must contain the same number of elements as ComponentRegionsComponentRegionsComponentRegionscomponentRegionscomponent_regions, in which case each parameter element refers to the corresponding model component in ComponentRegionsComponentRegionsComponentRegionscomponentRegionscomponent_regions.

The parameters AngleStartAngleStartAngleStartangleStartangle_start and AngleExtentAngleExtentAngleExtentangleExtentangle_extent determine the range of possible rotations of the component model in an image.

Internally, a separate shape model is built for each model component (see create_shape_modelcreate_shape_modelCreateShapeModelCreateShapeModelcreate_shape_model). Therefore, the parameters ContrastLowCompContrastLowCompContrastLowCompcontrastLowCompcontrast_low_comp, ContrastHighCompContrastHighCompContrastHighCompcontrastHighCompcontrast_high_comp, MinSizeCompMinSizeCompMinSizeCompminSizeCompmin_size_comp, MinContrastCompMinContrastCompMinContrastCompminContrastCompmin_contrast_comp, MinScoreCompMinScoreCompMinScoreCompminScoreCompmin_score_comp, NumLevelsCompNumLevelsCompNumLevelsCompnumLevelsCompnum_levels_comp, AngleStepCompAngleStepCompAngleStepCompangleStepCompangle_step_comp, OptimizationCompOptimizationCompOptimizationCompoptimizationCompoptimization_comp, MetricCompMetricCompMetricCompmetricCompmetric_comp, and PregenerationCompPregenerationCompPregenerationComppregenerationComppregeneration_comp correspond to the parameters of create_shape_modelcreate_shape_modelCreateShapeModelCreateShapeModelcreate_shape_model, with the following differences: First, in the parameter ContrastContrastContrastcontrastcontrast of create_shape_modelcreate_shape_modelCreateShapeModelCreateShapeModelcreate_shape_model the upper as well as the lower threshold for the hysteresis threshold method can be passed. Additionally, a third value, which suppresses small connected contour regions, can be passed. In contrast, the operator create_component_modelcreate_component_modelCreateComponentModelCreateComponentModelcreate_component_model offers three separate parameters ContrastHighCompContrastHighCompContrastHighCompcontrastHighCompcontrast_high_comp, ContrastLowCompContrastLowCompContrastLowCompcontrastLowCompcontrast_low_comp, and MinScoreCompMinScoreCompMinScoreCompminScoreCompmin_score_comp in order to set these three values. Consequently, also the automatic computation of the contrast threshold(s) is different. If both hysteresis threshold should be automatically determined, both ContrastLowCompContrastLowCompContrastLowCompcontrastLowCompcontrast_low_comp and ContrastHighCompContrastHighCompContrastHighCompcontrastHighCompcontrast_high_comp must be set to 'auto'"auto""auto""auto""auto". In contrast, if only one threshold value should be determined, ContrastLowCompContrastLowCompContrastLowCompcontrastLowCompcontrast_low_comp must be set to 'auto'"auto""auto""auto""auto" while ContrastHighCompContrastHighCompContrastHighCompcontrastHighCompcontrast_high_comp must be set to an arbitrary value different from 'auto'"auto""auto""auto""auto". Secondly, the parameter OptimizationOptimizationOptimizationoptimizationoptimization of create_shape_modelcreate_shape_modelCreateShapeModelCreateShapeModelcreate_shape_model provides the possibility to reduce the number of model points as well as the possibility to completely pregenerate the shape model. In contrast, the operator create_trained_component_modelcreate_trained_component_modelCreateTrainedComponentModelCreateTrainedComponentModelcreate_trained_component_model uses a separate parameter PregenerationCompPregenerationCompPregenerationComppregenerationComppregeneration_comp in order to decide whether the shape models should be completely pregenerated or not. A third difference concerning the parameter MinScoreCompMinScoreCompMinScoreCompminScoreCompmin_score_comp should be noted. When using the shape-based matching, this parameter needs not be passed when preparing the shape model using create_shape_modelcreate_shape_modelCreateShapeModelCreateShapeModelcreate_shape_model, but only during the search using find_shape_modelfind_shape_modelFindShapeModelFindShapeModelfind_shape_model. In contrast, when preparing the component model it is favorable to analyze rotational symmetries of the model components and similarities between the model components. However, this analysis only leads to meaningful results if the value for MinScoreCompMinScoreCompMinScoreCompminScoreCompmin_score_comp that is used during the search (see find_component_modelfind_component_modelFindComponentModelFindComponentModelfind_component_model) is already approximately known.

In addition to the parameters ContrastLowCompContrastLowCompContrastLowCompcontrastLowCompcontrast_low_comp, ContrastHighCompContrastHighCompContrastHighCompcontrastHighCompcontrast_high_comp, and MinSizeCompMinSizeCompMinSizeCompminSizeCompmin_size_comp also the parameters MinContrastCompMinContrastCompMinContrastCompminContrastCompmin_contrast_comp, NumLevelsCompNumLevelsCompNumLevelsCompnumLevelsCompnum_levels_comp, AngleStepCompAngleStepCompAngleStepCompangleStepCompangle_step_comp, and OptimizationCompOptimizationCompOptimizationCompoptimizationCompoptimization_comp can be automatically determined by passing 'auto'"auto""auto""auto""auto" for the respective parameters.

All component-specific input parameters (parameter names terminate with the suffix Comp) must either contain one element, in which case the parameter is used for all model components, or must contain the same number of elements as the number of regions in ComponentRegionsComponentRegionsComponentRegionscomponentRegionscomponent_regions, in which case each parameter element refers to the corresponding element in ComponentRegionsComponentRegionsComponentRegionscomponentRegionscomponent_regions.

In addition to the individual shape models, the component model also contains information about the way the single model components must be searched relative to each other using find_component_modelfind_component_modelFindComponentModelFindComponentModelfind_component_model in order to minimize the computation time of the search. For this, the components are represented in a tree structure. First, the component that stands at the root of this search tree (root component) is searched. Then, the remaining components are searched relative to the pose of their predecessor in the search tree.

The root component can be passed as an input parameter of find_component_modelfind_component_modelFindComponentModelFindComponentModelfind_component_model during the search. To what extent a model component is suited to act as the root component depends on several factors. In principle, a model component that can be found in the image with a high probability should be chosen. Therefore, a component that is sometimes occluded to a high degree or that is missing in some cases is not well suited to act as the root component. Additionally, the computation time that is associated with the root component during the search can serve as a criterion. A ranking of the model components that is based on the latter criterion is returned in RootRankingRootRankingRootRankingrootRankingroot_ranking. In this parameter the indices of the model components are sorted in descending order according to their associated search time, i.e., RootRankingRootRankingRootRankingrootRankingroot_ranking[0] contains the index of the model component that, chosen as root component, allows the fastest search. Note that the ranking returned in RootRankingRootRankingRootRankingrootRankingroot_ranking represents only a coarse estimation. Furthermore, the calculation of the root ranking assumes that the image size as well as the value of the system parameter 'border_shape_models'"border_shape_models""border_shape_models""border_shape_models""border_shape_models" are identical when calling create_component_modelcreate_component_modelCreateComponentModelCreateComponentModelcreate_component_model and find_component_modelfind_component_modelFindComponentModelFindComponentModelfind_component_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

ModelImageModelImageModelImagemodelImagemodel_image (input_object)  (multichannel-)image objectHImageHObjectHObjectHobject (byte / uint2)

Input image from which the shape models of the model components should be created.

ComponentRegionsComponentRegionsComponentRegionscomponentRegionscomponent_regions (input_object)  region-array objectHRegionHObjectHObjectHobject

Input regions from which the shape models of the model components should be created.

VariationRowVariationRowVariationRowvariationRowvariation_row (input_control)  integer(-array) HTupleMaybeSequence[int]HTupleHtuple (integer) (int / long) (Hlong) (Hlong)

Variation of the model components in row direction.

Suggested values: 0, 1, 2, 3, 4, 5, 10, 20, 30, 40, 50, 100, 150

Restriction: VariationRow >= 0

VariationColumnVariationColumnVariationColumnvariationColumnvariation_column (input_control)  integer(-array) HTupleMaybeSequence[int]HTupleHtuple (integer) (int / long) (Hlong) (Hlong)

Variation of the model components in column direction.

Suggested values: 0, 1, 2, 3, 4, 5, 10, 20, 30, 40, 50, 100, 150

Restriction: VariationColumn >= 0

VariationAngleVariationAngleVariationAnglevariationAnglevariation_angle (input_control)  angle.rad(-array) HTupleMaybeSequence[float]HTupleHtuple (real) (double) (double) (double)

Angle variation of the model components.

Suggested values: 0.0, 0.017, 0.035, 0.05, 0.07, 0.09, 0.17, 0.35, 0.52, 0.67, 0.87

Restriction: VariationAngle >= 0

AngleStartAngleStartAngleStartangleStartangle_start (input_control)  angle.rad HTuplefloatHTupleHtuple (real) (double) (double) (double)

Smallest rotation of the component model.

Default: -0.39

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

AngleExtentAngleExtentAngleExtentangleExtentangle_extent (input_control)  angle.rad HTuplefloatHTupleHtuple (real) (double) (double) (double)

Extent of the rotation of the component model.

Default: 0.79

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

Restriction: AngleExtent >= 0

ContrastLowCompContrastLowCompContrastLowCompcontrastLowCompcontrast_low_comp (input_control)  integer(-array) HTupleMaybeSequence[Union[int, str]]HTupleHtuple (integer / string) (int / long / string) (Hlong / HString) (Hlong / char*)

Lower hysteresis threshold for the contrast of the components in the model image.

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

Suggested values: 'auto'"auto""auto""auto""auto", 10, 20, 30, 40, 60, 80, 100, 120, 140, 160

Restriction: ContrastLowComp > 0

ContrastHighCompContrastHighCompContrastHighCompcontrastHighCompcontrast_high_comp (input_control)  integer(-array) HTupleMaybeSequence[Union[int, str]]HTupleHtuple (integer / string) (int / long / string) (Hlong / HString) (Hlong / char*)

Upper hysteresis threshold for the contrast of the components in the model image.

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

Suggested values: 'auto'"auto""auto""auto""auto", 10, 20, 30, 40, 60, 80, 100, 120, 140, 160

Restriction: ContrastHighComp > 0 && ContrastHighComp >= ContrastLowComp

MinSizeCompMinSizeCompMinSizeCompminSizeCompmin_size_comp (input_control)  integer(-array) HTupleMaybeSequence[Union[int, str]]HTupleHtuple (integer / string) (int / long / string) (Hlong / HString) (Hlong / char*)

Minimum size of the contour regions in the model.

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

Suggested values: 'auto'"auto""auto""auto""auto", 0, 5, 10, 20, 30, 40

Restriction: MinSizeComp >= 0

MinContrastCompMinContrastCompMinContrastCompminContrastCompmin_contrast_comp (input_control)  integer(-array) HTupleMaybeSequence[Union[int, str]]HTupleHtuple (integer / string) (int / long / string) (Hlong / HString) (Hlong / char*)

Minimum contrast of the components in the search images.

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

Suggested values: 'auto'"auto""auto""auto""auto", 10, 20, 20, 40

Restriction: MinContrastComp <= ContrastLowComp && MinContrastComp >= 0

MinScoreCompMinScoreCompMinScoreCompminScoreCompmin_score_comp (input_control)  real(-array) HTupleMaybeSequence[float]HTupleHtuple (real) (double) (double) (double)

Minimum score of the instances of the components to be found.

Default: 0.5

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

Minimum increment: 0.01

Recommended increment: 0.05

Restriction: 0 <= MinScoreComp && MinScoreComp <= 1

NumLevelsCompNumLevelsCompNumLevelsCompnumLevelsCompnum_levels_comp (input_control)  integer(-array) HTupleMaybeSequence[Union[int, str]]HTupleHtuple (integer / string) (int / long / string) (Hlong / HString) (Hlong / char*)

Maximum number of pyramid levels for the components.

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

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

AngleStepCompAngleStepCompAngleStepCompangleStepCompangle_step_comp (input_control)  angle.rad(-array) HTupleMaybeSequence[Union[float, str]]HTupleHtuple (real / string) (double / string) (double / HString) (double / char*)

Step length of the angles (resolution) for the components.

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

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

Restriction: AngleStepComp >= 0

OptimizationCompOptimizationCompOptimizationCompoptimizationCompoptimization_comp (input_control)  string HTuplestrHTupleHtuple (string) (string) (HString) (char*)

Kind of optimization for the components.

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

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"

MetricCompMetricCompMetricCompmetricCompmetric_comp (input_control)  string(-array) HTupleMaybeSequence[str]HTupleHtuple (string) (string) (HString) (char*)

Match metric used for the components.

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", 'use_polarity'"use_polarity""use_polarity""use_polarity""use_polarity"

PregenerationCompPregenerationCompPregenerationComppregenerationComppregeneration_comp (input_control)  string(-array) HTupleMaybeSequence[str]HTupleHtuple (string) (string) (HString) (char*)

Complete pregeneration of the shape models for the components if equal to 'true'"true""true""true""true".

Default: 'false' "false" "false" "false" "false"

List of values: 'false'"false""false""false""false", 'true'"true""true""true""true"

ComponentModelIDComponentModelIDComponentModelIDcomponentModelIDcomponent_model_id (output_control)  component_model HComponentModel, HTupleHHandleHTupleHtuple (handle) (IntPtr) (HHandle) (handle)

Handle of the component model.

RootRankingRootRankingRootRankingrootRankingroot_ranking (output_control)  integer(-array) HTupleSequence[int]HTupleHtuple (integer) (int / long) (Hlong) (Hlong)

Ranking of the model components expressing the suitability to act as the root component.

Result

If the parameters are valid, the operator create_component_modelcreate_component_modelCreateComponentModelCreateComponentModelcreate_component_model returns the value 2 ( H_MSG_TRUE) . If necessary, an exception is raised.

Module

Matching