create_component_modelT_create_component_modelCreateComponentModelCreateComponentModelcreate_component_model创建组件模型(算子)

名称

create_component_modelT_create_component_modelCreateComponentModelCreateComponentModelcreate_component_model — 根据明确指定的组件和关系准备组件模型进行匹配。

签名

create_component_model(ModelImage, ComponentRegions : : VariationRow, VariationColumn, VariationAngle, AngleStart, AngleExtent, ContrastLowComp, ContrastHighComp, MinSizeComp, MinContrastComp, MinScoreComp, NumLevelsComp, AngleStepComp, OptimizationComp, MetricComp, PregenerationComp : ComponentModelID, RootRanking)

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]

描述

create_component_modelcreate_component_modelCreateComponentModelCreateComponentModelCreateComponentModelcreate_component_model 准备模式,这些模式以模型图像 ModelImageModelImageModelImageModelImagemodelImagemodel_image 和若干区域 ComponentRegionsComponentRegionsComponentRegionsComponentRegionscomponentRegionscomponent_regions 的形式传递,作为用于匹配的组件模型。输出参数 ComponentModelIDComponentModelIDComponentModelIDComponentModelIDcomponentModelIDcomponent_model_id 是该模型的句柄,用于后续调用 find_component_modelfind_component_modelFindComponentModelFindComponentModelFindComponentModelfind_component_model。与 create_trained_component_modelcreate_trained_component_modelCreateTrainedComponentModelCreateTrainedComponentModelCreateTrainedComponentModelcreate_trained_component_model 不同,调用 create_component_modelcreate_component_modelCreateComponentModelCreateComponentModelCreateComponentModelcreate_component_model 之前无需先执行 train_model_componentstrain_model_componentsTrainModelComponentsTrainModelComponentsTrainModelComponentstrain_model_components 进行训练。

传递到 ComponentRegionsComponentRegionsComponentRegionsComponentRegionscomponentRegionscomponent_regions 的每个区域都描述了一个独立的模型组件。后续将使用 ComponentRegionsComponentRegionsComponentRegionsComponentRegionscomponentRegionscomponent_regions 中组件区域的索引来标识模型组件。组件的参考点是其关联区域(通过 ComponentRegionsComponentRegionsComponentRegionsComponentRegionscomponentRegionscomponent_regions 传递)的重心,可通过调用 area_centerarea_centerAreaCenterAreaCenterAreaCenterarea_center 计算得出。

模型组件的相对运动(关系)可通过传递 VariationRowVariationRowVariationRowVariationRowvariationRowvariation_rowVariationColumnVariationColumnVariationColumnVariationColumnvariationColumnvariation_columnVariationAngleVariationAngleVariationAngleVariationAnglevariationAnglevariation_angle 来设置。由于直接传递关系较为复杂,因此采用传递模型组件的变量值替代关系参数。这些变量描述各组件相对于模型图像 ModelImageModelImageModelImageModelImagemodelImagemodel_image 中姿态的独立运动。参数 VariationRowVariationRowVariationRowVariationRowvariationRowvariation_rowVariationColumnVariationColumnVariationColumnVariationColumnvariationColumnvariation_column 分别描述组件在行方向和列方向的运动幅度为 。参数 VariationAngleVariationAngleVariationAngleVariationAnglevariationAnglevariation_angle 描述组件角度变化幅度为 。基于这些值,系统将自动计算关联关系。这三个参数必须满足以下条件之一:包含单个元素(此时该参数适用于所有模型组件),或包含与 ComponentRegionsComponentRegionsComponentRegionsComponentRegionscomponentRegionscomponent_regions 相同数量的元素(此时每个参数元素对应 ComponentRegionsComponentRegionsComponentRegionsComponentRegionscomponentRegionscomponent_regions 中的特定模型组件)。

参数 AngleStartAngleStartAngleStartAngleStartangleStartangle_startAngleExtentAngleExtentAngleExtentAngleExtentangleExtentangle_extent 决定了组件模型在图像中可能旋转的角度范围。

在内部,每个模型组件都会构建独立的形状模型(参见 create_shape_modelcreate_shape_modelCreateShapeModelCreateShapeModelCreateShapeModelcreate_shape_model)。因此,参数 ContrastLowCompContrastLowCompContrastLowCompContrastLowCompcontrastLowCompcontrast_low_compContrastHighCompContrastHighCompContrastHighCompContrastHighCompcontrastHighCompcontrast_high_compMinSizeCompMinSizeCompMinSizeCompMinSizeCompminSizeCompmin_size_comp, MinContrastCompMinContrastCompMinContrastCompMinContrastCompminContrastCompmin_contrast_compMinScoreCompMinScoreCompMinScoreCompMinScoreCompminScoreCompmin_score_compNumLevelsCompNumLevelsCompNumLevelsCompNumLevelsCompnumLevelsCompnum_levels_compAngleStepCompAngleStepCompAngleStepCompAngleStepCompangleStepCompangle_step_compOptimizationCompOptimizationCompOptimizationCompOptimizationCompoptimizationCompoptimization_compMetricCompMetricCompMetricCompMetricCompmetricCompmetric_compPregenerationCompPregenerationCompPregenerationCompPregenerationComppregenerationComppregeneration_comp 对应于 create_shape_modelcreate_shape_modelCreateShapeModelCreateShapeModelCreateShapeModelcreate_shape_model 的参数,但存在以下差异: 首先,在 create_shape_modelcreate_shape_modelCreateShapeModelCreateShapeModelCreateShapeModelcreate_shape_modelContrastContrastContrastContrastcontrastcontrast 中,可同时传递滞后阈值法的高阈值与低阈值。此外还可传递第三个值以抑制小型连通轮廓区域。而 create_component_modelcreate_component_modelCreateComponentModelCreateComponentModelCreateComponentModelcreate_component_model 算子则提供三个独立参数 ContrastHighCompContrastHighCompContrastHighCompContrastHighCompcontrastHighCompcontrast_high_compContrastLowCompContrastLowCompContrastLowCompContrastLowCompcontrastLowCompcontrast_low_compMinScoreCompMinScoreCompMinScoreCompMinScoreCompminScoreCompmin_score_comp 来设置这三项值。因此,对比度阈值的自动计算方式也存在差异。若需自动确定两个滞后阈值,则 ContrastLowCompContrastLowCompContrastLowCompContrastLowCompcontrastLowCompcontrast_low_compContrastHighCompContrastHighCompContrastHighCompContrastHighCompcontrastHighCompcontrast_high_comp 均需设置为 'auto'"auto""auto""auto""auto""auto"。反之,若仅需确定单个阈值,则 ContrastLowCompContrastLowCompContrastLowCompContrastLowCompcontrastLowCompcontrast_low_comp 设为 'auto'"auto""auto""auto""auto""auto"ContrastHighCompContrastHighCompContrastHighCompContrastHighCompcontrastHighCompcontrast_high_comp 需设置为任意非 'auto'"auto""auto""auto""auto""auto" 值。其次,OptimizationOptimizationOptimizationOptimizationoptimizationoptimization of create_shape_modelcreate_shape_modelCreateShapeModelCreateShapeModelCreateShapeModelcreate_shape_model 的参数优化功能既可减少模型点数量,也可实现形状模型的完全预生成。而 create_trained_component_modelcreate_trained_component_modelCreateTrainedComponentModelCreateTrainedComponentModelCreateTrainedComponentModelcreate_trained_component_model 算子则通过独立参数 PregenerationCompPregenerationCompPregenerationCompPregenerationComppregenerationComppregeneration_comp 决定是否完全预生成形状模型。第三点差异涉及 MinScoreCompMinScoreCompMinScoreCompMinScoreCompminScoreCompmin_score_comp 参数。在形状匹配过程中,使用 create_shape_modelcreate_shape_modelCreateShapeModelCreateShapeModelCreateShapeModelcreate_shape_model 准备形状模型时无需传递此参数,仅在 find_shape_modelfind_shape_modelFindShapeModelFindShapeModelFindShapeModelfind_shape_model 搜索阶段需要。而准备组件模型时,分析模型组件的旋转对称性及组件间相似性更为有利。但该分析仅在搜索阶段(参见 find_component_modelfind_component_modelFindComponentModelFindComponentModelFindComponentModelfind_component_model)使用的 MinScoreCompMinScoreCompMinScoreCompMinScoreCompminScoreCompmin_score_comp 值已大致确定时,才能产生有效结果。

除了 ContrastLowCompContrastLowCompContrastLowCompContrastLowCompcontrastLowCompcontrast_low_compContrastHighCompContrastHighCompContrastHighCompContrastHighCompcontrastHighCompcontrast_high_compMinSizeCompMinSizeCompMinSizeCompMinSizeCompminSizeCompmin_size_comp 参数外,MinContrastCompMinContrastCompMinContrastCompMinContrastCompminContrastCompmin_contrast_compNumLevelsCompNumLevelsCompNumLevelsCompNumLevelsCompnumLevelsCompnum_levels_compAngleStepCompAngleStepCompAngleStepCompAngleStepCompangleStepCompangle_step_compOptimizationCompOptimizationCompOptimizationCompOptimizationCompoptimizationCompoptimization_comp 参数也可通过为相应参数传递 'auto'"auto""auto""auto""auto""auto" 值自动确定。

所有组件特定的输入参数(参数名称以 Comp 后缀结尾)必须满足以下条件之一:要么包含一个元素,此时该参数适用于所有模型组件;要么包含与 ComponentRegionsComponentRegionsComponentRegionsComponentRegionscomponentRegionscomponent_regions 中区域数量相同的元素,此时每个参数元素对应 ComponentRegionsComponentRegionsComponentRegionsComponentRegionscomponentRegionscomponent_regions 中的相应元素。

除了各个形状模型外,组件模型还包含关于如何使用 find_component_modelfind_component_modelFindComponentModelFindComponentModelFindComponentModelfind_component_model 搜索单个模型组件之间相对位置的信息,以最大限度地减少搜索的计算时间。为此,组件以树形结构表示。首先搜索位于搜索树根部的组件(根组件)。随后,其余组件将根据其在搜索树中前驱组件的姿态进行相对搜索。

在搜索过程中,根组件可作为 find_component_modelfind_component_modelFindComponentModelFindComponentModelFindComponentModelfind_component_model 的输入参数传递。模型组件适合作为根组件的程度取决于多个因素。原则上应选择在图像中具有较高检出概率的模型组件。因此,那些有时会被高度遮挡或在某些情况下缺失的组件,并不适合作为根组件。此外,搜索过程中与根组件相关的计算时间也可作为评估标准。基于该标准对模型组件进行排序的结果存储于 RootRankingRootRankingRootRankingRootRankingrootRankingroot_ranking 参数中。该参数将模型组件索引按其对应搜索时间降序排列,即 RootRankingRootRankingRootRankingRootRankingrootRankingroot_ranking[0] 包含作为根组件时能实现最快搜索速度的模型组件索引。需注意 RootRankingRootRankingRootRankingRootRankingrootRankingroot_ranking 返回的排序仅为粗略估算。此外,根排序的计算假设在调用 create_component_modelcreate_component_modelCreateComponentModelCreateComponentModelCreateComponentModelcreate_component_modelfind_component_modelfind_component_modelFindComponentModelFindComponentModelFindComponentModelfind_component_model 时,图像尺寸及系统参数 'border_shape_models'"border_shape_models""border_shape_models""border_shape_models""border_shape_models""border_shape_models" 的数值保持一致。

执行信息

此算子返回一个句柄。请注意,即使该句柄被用作特定算子的输入参数,这些算子仍可能改变此句柄类型的实例状态。

参数

ModelImageModelImageModelImageModelImagemodelImagemodel_image (输入对象)  (multichannel-)image objectHImageHObjectHImageHobject (byte / uint2)

输入图像,用于创建模型组件的形状模型。

ComponentRegionsComponentRegionsComponentRegionsComponentRegionscomponentRegionscomponent_regions (输入对象)  region-array objectHRegionHObjectHRegionHobject

输入区域,用于创建模型组件的形状模型。

VariationRowVariationRowVariationRowVariationRowvariationRowvariation_row (输入控制)  integer(-array) HTupleMaybeSequence[int]HTupleHtuple (integer) (int / long) (Hlong) (Hlong)

模型组件在行方向上的变化。

建议值: 0, 1, 2, 3, 4, 5, 10, 20, 30, 40, 50, 100, 150

限制: VariationRow >= 0

VariationColumnVariationColumnVariationColumnVariationColumnvariationColumnvariation_column (输入控制)  integer(-array) HTupleMaybeSequence[int]HTupleHtuple (integer) (int / long) (Hlong) (Hlong)

模型组件在列方向上的变化。

建议值: 0, 1, 2, 3, 4, 5, 10, 20, 30, 40, 50, 100, 150

限制: VariationColumn >= 0

VariationAngleVariationAngleVariationAngleVariationAnglevariationAnglevariation_angle (输入控制)  angle.rad(-array) HTupleMaybeSequence[float]HTupleHtuple (real) (double) (double) (double)

模型组件的角度变化。

建议值: 0.0, 0.017, 0.035, 0.05, 0.07, 0.09, 0.17, 0.35, 0.52, 0.67, 0.87

限制: VariationAngle >= 0

AngleStartAngleStartAngleStartAngleStartangleStartangle_start (输入控制)  angle.rad HTuplefloatHTupleHtuple (real) (double) (double) (double)

组件模型的最小旋转。

默认值: -0.39

建议值: -3.14, -1.57, -0.79, -0.39, -0.20, 0.0

AngleExtentAngleExtentAngleExtentAngleExtentangleExtentangle_extent (输入控制)  angle.rad HTuplefloatHTupleHtuple (real) (double) (double) (double)

组件模型的旋转幅度。

默认值: 0.79

建议值: 6.28, 3.14, 1.57, 0.79, 0.39

限制: AngleExtent >= 0

ContrastLowCompContrastLowCompContrastLowCompContrastLowCompcontrastLowCompcontrast_low_comp (输入控制)  integer(-array) HTupleMaybeSequence[Union[int, str]]HTupleHtuple (integer / string) (int / long / string) (Hlong / HString) (Hlong / char*)

模型图像中组件对比的下限滞后阈值。

默认值: 'auto' "auto" "auto" "auto" "auto" "auto"

建议值: 'auto'"auto""auto""auto""auto""auto", 10, 20, 30, 40, 60, 80, 100, 120, 140, 160

限制: ContrastLowComp > 0

ContrastHighCompContrastHighCompContrastHighCompContrastHighCompcontrastHighCompcontrast_high_comp (输入控制)  integer(-array) HTupleMaybeSequence[Union[int, str]]HTupleHtuple (integer / string) (int / long / string) (Hlong / HString) (Hlong / char*)

模型图像中组件对比的上限滞回阈值。

默认值: 'auto' "auto" "auto" "auto" "auto" "auto"

建议值: 'auto'"auto""auto""auto""auto""auto", 10, 20, 30, 40, 60, 80, 100, 120, 140, 160

限制: ContrastHighComp > 0 && ContrastHighComp >= ContrastLowComp

MinSizeCompMinSizeCompMinSizeCompMinSizeCompminSizeCompmin_size_comp (输入控制)  integer(-array) HTupleMaybeSequence[Union[int, str]]HTupleHtuple (integer / string) (int / long / string) (Hlong / HString) (Hlong / char*)

模型中轮廓区域的最小尺寸。

默认值: 'auto' "auto" "auto" "auto" "auto" "auto"

建议值: 'auto'"auto""auto""auto""auto""auto", 0, 5, 10, 20, 30, 40

限制: MinSizeComp >= 0

MinContrastCompMinContrastCompMinContrastCompMinContrastCompminContrastCompmin_contrast_comp (输入控制)  integer(-array) HTupleMaybeSequence[Union[int, str]]HTupleHtuple (integer / string) (int / long / string) (Hlong / HString) (Hlong / char*)

搜索图像中组件的最小对比度。

默认值: 'auto' "auto" "auto" "auto" "auto" "auto"

建议值: 'auto'"auto""auto""auto""auto""auto", 10, 20, 20, 40

限制: MinContrastComp <= ContrastLowComp && MinContrastComp >= 0

MinScoreCompMinScoreCompMinScoreCompMinScoreCompminScoreCompmin_score_comp (输入控制)  real(-array) HTupleMaybeSequence[float]HTupleHtuple (real) (double) (double) (double)

要查找的组件实例的最低分数。

默认值: 0.5

建议值: 0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9, 1.0

最小增量: 0.01

建议增量: 0.05

限制: 0 <= MinScoreComp && MinScoreComp <= 1

NumLevelsCompNumLevelsCompNumLevelsCompNumLevelsCompnumLevelsCompnum_levels_comp (输入控制)  integer(-array) HTupleMaybeSequence[Union[int, str]]HTupleHtuple (integer / string) (int / long / string) (Hlong / HString) (Hlong / char*)

组件的金字塔层级最大数量。

默认值: 'auto' "auto" "auto" "auto" "auto" "auto"

值列表: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 'auto'"auto""auto""auto""auto""auto"

AngleStepCompAngleStepCompAngleStepCompAngleStepCompangleStepCompangle_step_comp (输入控制)  angle.rad(-array) HTupleMaybeSequence[Union[float, str]]HTupleHtuple (real / string) (double / string) (double / HString) (double / char*)

组件角度的步长(分辨率)。

默认值: 'auto' "auto" "auto" "auto" "auto" "auto"

建议值: 'auto'"auto""auto""auto""auto""auto", 0.0175, 0.0349, 0.0524, 0.0698, 0.0873

限制: AngleStepComp >= 0

OptimizationCompOptimizationCompOptimizationCompOptimizationCompoptimizationCompoptimization_comp (输入控制)  string HTuplestrHTupleHtuple (string) (string) (HString) (char*)

对组件进行某种优化。

默认值: 'auto' "auto" "auto" "auto" "auto" "auto"

值列表: 'auto'"auto""auto""auto""auto""auto", 'none'"none""none""none""none""none", 'point_reduction_high'"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_low", 'point_reduction_medium'"point_reduction_medium""point_reduction_medium""point_reduction_medium""point_reduction_medium""point_reduction_medium"

MetricCompMetricCompMetricCompMetricCompmetricCompmetric_comp (输入控制)  string(-array) HTupleMaybeSequence[str]HTupleHtuple (string) (string) (HString) (char*)

用于组件的匹配度量标准。

默认值: 'use_polarity' "use_polarity" "use_polarity" "use_polarity" "use_polarity" "use_polarity"

值列表: 'ignore_color_polarity'"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_global_polarity", 'ignore_local_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""use_polarity"

PregenerationCompPregenerationCompPregenerationCompPregenerationComppregenerationComppregeneration_comp (输入控制)  string(-array) HTupleMaybeSequence[str]HTupleHtuple (string) (string) (HString) (char*)

若等于 'true'"true""true""true""true""true",则完成部件形状模型的预生成。

默认值: 'false' "false" "false" "false" "false" "false"

值列表: 'false'"false""false""false""false""false", 'true'"true""true""true""true""true"

ComponentModelIDComponentModelIDComponentModelIDComponentModelIDcomponentModelIDcomponent_model_id (输出控制)  component_model HComponentModel, HTupleHHandleHTupleHtuple (handle) (IntPtr) (HHandle) (handle)

组件模型的句柄。

RootRankingRootRankingRootRankingRootRankingrootRankingroot_ranking (输出控制)  integer(-array) HTupleSequence[int]HTupleHtuple (integer) (int / long) (Hlong) (Hlong)

模型组件适合作为根组件的适配性排名。

示例(HDevelop)

* Read the model image.
read_image (ModelImage, 'model_image.tif')
* Describe the model components.
gen_rectangle2 (ComponentRegions, 318, 109, -1.62, 34, 19)
gen_rectangle2 (Rectangle2, 342, 238, -1.63, 32, 17)
gen_rectangle2 (Rectangle3, 355, 505, 1.41, 25, 17)
concat_obj (ComponentRegions, Rectangle2, ComponentRegions)
concat_obj (ComponentRegions, Rectangle3, ComponentRegions)
* Create the component model by explicitly specifying the relations.
create_component_model (ModelImage, ComponentRegions, 20, 20, rad(25), 0, \
                        rad(360), 15, 40, 15, 10, 0.8, 'auto', 'auto', \
                        'none', 'use_polarity', 'false', ComponentModelID, \
                        RootRanking)
* Find the component model in a run-time image.
read_image (SearchImage, 'search_image.tif')
find_component_model (SearchImage, ComponentModelID, RootRanking, 0, \
                      rad(360), 0.5, 0, 0.5, 'stop_search', \
                      'search_from_best', 'none', 0.8, 'least_squares', 0, \
                      0.8, ModelStart, ModelEnd, Score, RowComp, \
                      ColumnComp, AngleComp, ScoreComp, ModelComp)

结果

如果参数有效,算子 create_component_modelcreate_component_modelCreateComponentModelCreateComponentModelCreateComponentModelcreate_component_model 返回值 2 (H_MSG_TRUE)。如有必要,则抛出异常。

可能的前趋

draw_regiondraw_regionDrawRegionDrawRegionDrawRegiondraw_region, concat_objconcat_objConcatObjConcatObjConcatObjconcat_obj

可能的后继

find_component_modelfind_component_modelFindComponentModelFindComponentModelFindComponentModelfind_component_model

替代

create_trained_component_modelcreate_trained_component_modelCreateTrainedComponentModelCreateTrainedComponentModelCreateTrainedComponentModelcreate_trained_component_model

模块

匹配