compare_ext_variation_modelT_compare_ext_variation_modelCompareExtVariationModelCompareExtVariationModelcompare_ext_variation_model (Operator)

Name

compare_ext_variation_modelT_compare_ext_variation_modelCompareExtVariationModelCompareExtVariationModelcompare_ext_variation_model — Vergleich eines Bildes mit einem Variationsmodell.

Signatur

compare_ext_variation_model(Image : Region : ModelID, Mode : )

Herror T_compare_ext_variation_model(const Hobject Image, Hobject* Region, const Htuple ModelID, const Htuple Mode)

void CompareExtVariationModel(const HObject& Image, HObject* Region, const HTuple& ModelID, const HTuple& Mode)

HRegion HVariationModel::CompareExtVariationModel(const HImage& Image, const HString& Mode) const

HRegion HVariationModel::CompareExtVariationModel(const HImage& Image, const char* Mode) const

HRegion HVariationModel::CompareExtVariationModel(const HImage& Image, const wchar_t* Mode) const   (Nur Windows)

HRegion HImage::CompareExtVariationModel(const HVariationModel& ModelID, const HString& Mode) const

HRegion HImage::CompareExtVariationModel(const HVariationModel& ModelID, const char* Mode) const

HRegion HImage::CompareExtVariationModel(const HVariationModel& ModelID, const wchar_t* Mode) const   (Nur Windows)

static void HOperatorSet.CompareExtVariationModel(HObject image, out HObject region, HTuple modelID, HTuple mode)

HRegion HVariationModel.CompareExtVariationModel(HImage image, string mode)

HRegion HImage.CompareExtVariationModel(HVariationModel modelID, string mode)

def compare_ext_variation_model(image: HObject, model_id: HHandle, mode: str) -> HObject

Beschreibung

compare_ext_variation_modelcompare_ext_variation_modelCompareExtVariationModelCompareExtVariationModelCompareExtVariationModelcompare_ext_variation_model vergleicht das Eingabebild ImageImageImageImageimageimage mit dem Variationsmodell ModelIDModelIDModelIDModelIDmodelIDmodel_id. compare_ext_variation_modelcompare_ext_variation_modelCompareExtVariationModelCompareExtVariationModelCompareExtVariationModelcompare_ext_variation_model ist eine Erweiterung von compare_variation_modelcompare_variation_modelCompareVariationModelCompareVariationModelCompareVariationModelcompare_variation_model, die mehr Modi zum Bildvergleich bietet. Bevor compare_ext_variation_modelcompare_ext_variation_modelCompareExtVariationModelCompareExtVariationModelCompareExtVariationModelcompare_ext_variation_model aufgerufen werden kann, müssen mit prepare_variation_modelprepare_variation_modelPrepareVariationModelPrepareVariationModelPrepareVariationModelprepare_variation_model oder prepare_direct_variation_modelprepare_direct_variation_modelPrepareDirectVariationModelPrepareDirectVariationModelPrepareDirectVariationModelprepare_direct_variation_model die beiden internen Schwellenwertbilder erzeugt worden sein. Sei das aktuelle Bild ImageImageImageImageimageimage durch c(x,y) bezeichnet und die beiden internen Schwellenwertbilder mit (siehe prepare_variation_modelprepare_variation_modelPrepareVariationModelPrepareVariationModelPrepareVariationModelprepare_variation_model oder prepare_direct_variation_modelprepare_direct_variation_modelPrepareDirectVariationModelPrepareDirectVariationModelPrepareDirectVariationModelprepare_direct_variation_model). Dann wird für ModeModeModeModemodemode = 'absolute'"absolute""absolute""absolute""absolute""absolute" die Ausgaberegion RegionRegionRegionRegionregionregion aus allen Punkten bestimmt, die sich stark vom Modell unterscheiden, d.h. für die gilt: Diese Modus ist also identisch zu compare_variation_modelcompare_variation_modelCompareVariationModelCompareVariationModelCompareVariationModelcompare_variation_model. Für ModeModeModeModemodemode = 'light'"light""light""light""light""light" besteht RegionRegionRegionRegionregionregion aus allen Punkten, die zu hell sind: Für ModeModeModeModemodemode = 'dark'"dark""dark""dark""dark""dark" besteht RegionRegionRegionRegionregionregion aus allen Punkten, die zu dunkel sind: Schließlich werden für ModeModeModeModemodemode = 'light_dark'"light_dark""light_dark""light_dark""light_dark""light_dark" in RegionRegionRegionRegionregionregion zwei Regionen zurückgeliefert. In der ersten Region ist das Ergebnis von ModeModeModeModemodemode = 'light'"light""light""light""light""light", in der zweiten Region das Ergebnis von ModeModeModeModemodemode = 'dark'"dark""dark""dark""dark""dark". Die jeweiligen Regionen können mit select_objselect_objSelectObjSelectObjSelectObjselect_obj selektiert werden.

Ausführungsinformationen

Parameter

ImageImageImageImageimageimage (input_object)  singlechannelimage(-array) objectHImageHObjectHImageHobject (byte / int2 / uint2)

Bild des zu vergleichenden Objekts.

RegionRegionRegionRegionregionregion (output_object)  region(-array) objectHRegionHObjectHRegionHobject *

Region der Punkte, die sich stark vom Modell unterscheiden.

ModelIDModelIDModelIDModelIDmodelIDmodel_id (input_control)  variation_model HVariationModel, HTupleHHandleHTupleHtuple (handle) (IntPtr) (HHandle) (handle)

ID des Variationsmodells.

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

Art des Vergleichs mit dem Variationsmodells.

Defaultwert: 'absolute' "absolute" "absolute" "absolute" "absolute" "absolute"

Wertevorschläge: 'absolute'"absolute""absolute""absolute""absolute""absolute", 'light'"light""light""light""light""light", 'dark'"dark""dark""dark""dark""dark", 'light_dark'"light_dark""light_dark""light_dark""light_dark""light_dark"

Beispiel (HDevelop)

read_shape_model ('model.shm', TemplateID)
read_variation_model ('model.var', ModelID)
for K := 1 to 10 by 1
    read_image (Image, 'pen-' + K$'02')
    find_generic_shape_model (Image, TemplateID, MatchResultID, \
                              NumMatchResult)
    get_generic_shape_model_result (MatchResultID, 'all', 'hom_mat_2d', \
                                    HomMat2D)
    dev_display (Image)
    if (NumMatchResult == 1)
        affine_trans_image (Image, ImageTrans, HomMat2D, 'constant', \
                            'false')
        compare_ext_variation_model (ImageTrans, RegionDiff, ModelID, \
                                     'absolute')
        dev_display (RegionDiff)
    endif
endfor

Ergebnis

compare_ext_variation_modelcompare_ext_variation_modelCompareExtVariationModelCompareExtVariationModelCompareExtVariationModelcompare_ext_variation_model liefert 2 (H_MSG_TRUE) zurück, wenn alle Parameter korrekt sind und die internen Schwellenwertbilder zuvor mit prepare_variation_modelprepare_variation_modelPrepareVariationModelPrepareVariationModelPrepareVariationModelprepare_variation_model oder prepare_direct_variation_modelprepare_direct_variation_modelPrepareDirectVariationModelPrepareDirectVariationModelPrepareDirectVariationModelprepare_direct_variation_model erzeugt worden sind.

Vorgänger

prepare_variation_modelprepare_variation_modelPrepareVariationModelPrepareVariationModelPrepareVariationModelprepare_variation_model, prepare_direct_variation_modelprepare_direct_variation_modelPrepareDirectVariationModelPrepareDirectVariationModelPrepareDirectVariationModelprepare_direct_variation_model

Nachfolger

select_objselect_objSelectObjSelectObjSelectObjselect_obj, connectionconnectionConnectionConnectionConnectionconnection

Alternativen

compare_variation_modelcompare_variation_modelCompareVariationModelCompareVariationModelCompareVariationModelcompare_variation_model, dyn_thresholddyn_thresholdDynThresholdDynThresholdDynThresholddyn_threshold

Siehe auch

get_thresh_images_variation_modelget_thresh_images_variation_modelGetThreshImagesVariationModelGetThreshImagesVariationModelGetThreshImagesVariationModelget_thresh_images_variation_model

Modul

Matching