inspect_clustered_componentsT_inspect_clustered_componentsInspectClusteredComponentsInspectClusteredComponentsinspect_clustered_components (Operator)
Name
inspect_clustered_componentsT_inspect_clustered_componentsInspectClusteredComponentsInspectClusteredComponentsinspect_clustered_components
— Inspect the rigid model components obtained from the training.
Warning
inspect_clustered_componentsinspect_clustered_componentsInspectClusteredComponentsInspectClusteredComponentsinspect_clustered_components
is obsolete and is only provided for
reasons of backward compatibility.
The operator will be removed with HALCON 26.11.
Signature
void InspectClusteredComponents(HObject* ModelComponents, const HTuple& ComponentTrainingID, const HTuple& AmbiguityCriterion, const HTuple& MaxContourOverlap, const HTuple& ClusterThreshold)
HRegion HComponentTraining::InspectClusteredComponents(const HString& AmbiguityCriterion, double MaxContourOverlap, double ClusterThreshold) const
HRegion HComponentTraining::InspectClusteredComponents(const char* AmbiguityCriterion, double MaxContourOverlap, double ClusterThreshold) const
HRegion HComponentTraining::InspectClusteredComponents(const wchar_t* AmbiguityCriterion, double MaxContourOverlap, double ClusterThreshold) const
(
Windows only)
Description
inspect_clustered_componentsinspect_clustered_componentsInspectClusteredComponentsInspectClusteredComponentsinspect_clustered_components
creates a representation of the
rigid model components based on the training result
ComponentTrainingIDComponentTrainingIDComponentTrainingIDcomponentTrainingIDcomponent_training_id
in form of contour regions. The
resulting rigid model components are computed depending on the
criterion that is used to solve the ambiguities
AmbiguityCriterionAmbiguityCriterionAmbiguityCriterionambiguityCriterionambiguity_criterion
, the maximum allowable contour overlap
MaxContourOverlapMaxContourOverlapMaxContourOverlapmaxContourOverlapmax_contour_overlap
, and the cluster threshold
ClusterThresholdClusterThresholdClusterThresholdclusterThresholdcluster_threshold
(see train_model_componentstrain_model_componentsTrainModelComponentsTrainModelComponentstrain_model_components
). The
cluster threshold, for example, influences the merging of the
initial components. The greater the threshold is chosen, the fewer
initial components are merged. The determined rigid model components
are returned in ModelComponentsModelComponentsModelComponentsmodelComponentsmodel_components
.
Hence, after the components have been trained once by using
train_model_componentstrain_model_componentsTrainModelComponentsTrainModelComponentstrain_model_components
, inspect_clustered_componentsinspect_clustered_componentsInspectClusteredComponentsInspectClusteredComponentsinspect_clustered_components
can be used to estimate the effect of different values for the
parameters AmbiguityCriterionAmbiguityCriterionAmbiguityCriterionambiguityCriterionambiguity_criterion
, MaxContourOverlapMaxContourOverlapMaxContourOverlapmaxContourOverlapmax_contour_overlap
,
and ClusterThresholdClusterThresholdClusterThresholdclusterThresholdcluster_threshold
without performing the complete
training procedure several times. Once the desired parameter values
have been found, they can be efficiently adopted into the training
result by using cluster_model_componentscluster_model_componentsClusterModelComponentsClusterModelComponentscluster_model_components
.
Execution Information
- Multithreading type: reentrant (runs in parallel with non-exclusive operators).
- Multithreading scope: global (may be called from any thread).
- Processed without parallelization.
Parameters
ModelComponentsModelComponentsModelComponentsmodelComponentsmodel_components
(output_object) region(-array) →
objectHRegionHObjectHObjectHobject *
Contour regions of rigid model components.
ComponentTrainingIDComponentTrainingIDComponentTrainingIDcomponentTrainingIDcomponent_training_id
(input_control) component_training →
HComponentTraining, HTupleHHandleHTupleHtuple (handle) (IntPtr) (HHandle) (handle)
Handle of the training result.
AmbiguityCriterionAmbiguityCriterionAmbiguityCriterionambiguityCriterionambiguity_criterion
(input_control) string →
HTuplestrHTupleHtuple (string) (string) (HString) (char*)
Criterion for solving the ambiguities.
Default:
'rigidity'
"rigidity"
"rigidity"
"rigidity"
"rigidity"
List of values:
'distance'"distance""distance""distance""distance", 'distance_orientation'"distance_orientation""distance_orientation""distance_orientation""distance_orientation", 'orientation'"orientation""orientation""orientation""orientation", 'rigidity'"rigidity""rigidity""rigidity""rigidity"
MaxContourOverlapMaxContourOverlapMaxContourOverlapmaxContourOverlapmax_contour_overlap
(input_control) real →
HTuplefloatHTupleHtuple (real) (double) (double) (double)
Maximum contour overlap of the found initial
components.
Default:
0.2
Suggested values:
0.0, 0.1, 0.2, 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 <= MaxContourOverlap && MaxContourOverlap <= 1
ClusterThresholdClusterThresholdClusterThresholdclusterThresholdcluster_threshold
(input_control) real →
HTuplefloatHTupleHtuple (real) (double) (double) (double)
Threshold for clustering the initial components.
Default:
0.5
Suggested values:
0.0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9, 1.0
Restriction:
0 <= ClusterThreshold && ClusterThreshold <= 1
Result
If the handle of the training result is valid, the operator
inspect_clustered_componentsinspect_clustered_componentsInspectClusteredComponentsInspectClusteredComponentsinspect_clustered_components
returns the value 2 (
H_MSG_TRUE)
.
If necessary, an exception is raised.
Module
Matching