ClassesClassesClassesClasses | | | | Operators

prepare_variation_modelprepare_variation_modelPrepareVariationModelprepare_variation_modelPrepareVariationModelPrepareVariationModel (Operator)

Name

prepare_variation_modelprepare_variation_modelPrepareVariationModelprepare_variation_modelPrepareVariationModelPrepareVariationModel — Prepare a variation model for comparison with an image.

Signature

prepare_variation_model( : : ModelID, AbsThreshold, VarThreshold : )

Herror prepare_variation_model(const Hlong ModelID, double AbsThreshold, double VarThreshold)

Herror T_prepare_variation_model(const Htuple ModelID, const Htuple AbsThreshold, const Htuple VarThreshold)

Herror prepare_variation_model(const HTuple& ModelID, const HTuple& AbsThreshold, const HTuple& VarThreshold)

void HVariationModel::PrepareVariationModel(const HTuple& AbsThreshold, const HTuple& VarThreshold) const

void PrepareVariationModel(const HTuple& ModelID, const HTuple& AbsThreshold, const HTuple& VarThreshold)

void HVariationModel::PrepareVariationModel(const HTuple& AbsThreshold, const HTuple& VarThreshold) const

void HVariationModel::PrepareVariationModel(double AbsThreshold, double VarThreshold) const

void HOperatorSetX.PrepareVariationModel(
[in] VARIANT ModelID, [in] VARIANT AbsThreshold, [in] VARIANT VarThreshold)

void HVariationModelX.PrepareVariationModel(
[in] VARIANT AbsThreshold, [in] VARIANT VarThreshold)

static void HOperatorSet.PrepareVariationModel(HTuple modelID, HTuple absThreshold, HTuple varThreshold)

void HVariationModel.PrepareVariationModel(HTuple absThreshold, HTuple varThreshold)

void HVariationModel.PrepareVariationModel(double absThreshold, double varThreshold)

Description

prepare_variation_modelprepare_variation_modelPrepareVariationModelprepare_variation_modelPrepareVariationModelPrepareVariationModel prepares a variation model for the image comparison with compare_variation_modelcompare_variation_modelCompareVariationModelcompare_variation_modelCompareVariationModelCompareVariationModel or compare_ext_variation_modelcompare_ext_variation_modelCompareExtVariationModelcompare_ext_variation_modelCompareExtVariationModelCompareExtVariationModel. This is done by converting the ideal image and the variation image that have been trained with train_variation_modeltrain_variation_modelTrainVariationModeltrain_variation_modelTrainVariationModelTrainVariationModel into two threshold images and storing them in the variation model. These threshold images are used in compare_variation_modelcompare_variation_modelCompareVariationModelcompare_variation_modelCompareVariationModelCompareVariationModel or compare_ext_variation_modelcompare_ext_variation_modelCompareExtVariationModelcompare_ext_variation_modelCompareExtVariationModelCompareExtVariationModel to speed up the comparison of the current image to the variation model.

Two thresholds are used to compute the threshold images. The parameter AbsThresholdAbsThresholdAbsThresholdAbsThresholdAbsThresholdabsThreshold determines the minimum amount of gray levels by which the image of the current object must differ from the image of the ideal object. The parameter VarThresholdVarThresholdVarThresholdVarThresholdVarThresholdvarThreshold determines a factor relative to the variation image for the minimum difference of the current image and the ideal image. AbsThresholdAbsThresholdAbsThresholdAbsThresholdAbsThresholdabsThreshold and VarThresholdVarThresholdVarThresholdVarThresholdVarThresholdvarThreshold each can contain one or two values. If two values are specified, different thresholds can be determined for too bright and too dark pixels. In this mode, the first value refers to too bright pixels, while the second value refers to too dark pixels. If one value is specified, this value refers to both the too bright and too dark pixels. Let i(x,y) be the ideal image, v(x,y) the variation image, , , , and (or , , , and , respectively). Then the two threshold images are computed as follows:

If the current image c(x,y) is compared to the variation model using compare_variation_modelcompare_variation_modelCompareVariationModelcompare_variation_modelCompareVariationModelCompareVariationModel, the output region contains all points that differ substantially from the model, i.e., that fulfill the following condition:
In compare_ext_variation_modelcompare_ext_variation_modelCompareExtVariationModelcompare_ext_variation_modelCompareExtVariationModelCompareExtVariationModel, extended comparison modes are available, which return only too bright errors, only too dark errors, or bright and dark errors as separate regions.

After the threshold images have been created they can be read out with get_thresh_images_variation_modelget_thresh_images_variation_modelGetThreshImagesVariationModelget_thresh_images_variation_modelGetThreshImagesVariationModelGetThreshImagesVariationModel. Furthermore, the training data can be deleted with clear_train_data_variation_modelclear_train_data_variation_modelClearTrainDataVariationModelclear_train_data_variation_modelClearTrainDataVariationModelClearTrainDataVariationModel to save memory.

Parallelization

This operator modifies the state of the following input parameter:

The value of this parameter may not be shared across multiple threads without external synchronization.

Parameters

ModelIDModelIDModelIDModelIDModelIDmodelID (input_control, state is modified)  variation_model HVariationModel, HTupleHTupleHVariationModel, HTupleHVariationModelX, VARIANTHtuple (integer) (IntPtr) (Hlong) (Hlong) (Hlong) (Hlong)

ID of the variation model.

AbsThresholdAbsThresholdAbsThresholdAbsThresholdAbsThresholdabsThreshold (input_control)  number(-array) HTupleHTupleHTupleVARIANTHtuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong) (double / Hlong) (double / Hlong)

Absolute minimum threshold for the differences between the image and the variation model.

Default value: 10

Suggested values: 0, 5, 10, 15, 20, 30, 40, 50

Restriction: AbsThreshold >= 0

VarThresholdVarThresholdVarThresholdVarThresholdVarThresholdvarThreshold (input_control)  number(-array) HTupleHTupleHTupleVARIANTHtuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong) (double / Hlong) (double / Hlong)

Threshold for the differences based on the variation of the variation model.

Default value: 2

Suggested values: 1, 1.5, 2, 2.5, 3, 3.5, 4, 4.5, 5

Restriction: VarThreshold >= 0

Result

prepare_variation_modelprepare_variation_modelPrepareVariationModelprepare_variation_modelPrepareVariationModelPrepareVariationModel returns 2 (H_MSG_TRUE) if all parameters are correct.

Possible Predecessors

train_variation_modeltrain_variation_modelTrainVariationModeltrain_variation_modelTrainVariationModelTrainVariationModel

Possible Successors

compare_variation_modelcompare_variation_modelCompareVariationModelcompare_variation_modelCompareVariationModelCompareVariationModel, compare_ext_variation_modelcompare_ext_variation_modelCompareExtVariationModelcompare_ext_variation_modelCompareExtVariationModelCompareExtVariationModel, get_thresh_images_variation_modelget_thresh_images_variation_modelGetThreshImagesVariationModelget_thresh_images_variation_modelGetThreshImagesVariationModelGetThreshImagesVariationModel, clear_train_data_variation_modelclear_train_data_variation_modelClearTrainDataVariationModelclear_train_data_variation_modelClearTrainDataVariationModelClearTrainDataVariationModel, write_variation_modelwrite_variation_modelWriteVariationModelwrite_variation_modelWriteVariationModelWriteVariationModel

Alternatives

prepare_direct_variation_modelprepare_direct_variation_modelPrepareDirectVariationModelprepare_direct_variation_modelPrepareDirectVariationModelPrepareDirectVariationModel

See also

create_variation_modelcreate_variation_modelCreateVariationModelcreate_variation_modelCreateVariationModelCreateVariationModel

Module

Matching


ClassesClassesClassesClasses | | | | Operators