best_match_pre_mgT_best_match_pre_mgBestMatchPreMgBestMatchPreMgbest_match_pre_mg (Operator)

Name

best_match_pre_mgT_best_match_pre_mgBestMatchPreMgBestMatchPreMgbest_match_pre_mg — Searching the best gray value matches in a pre generated pyramid.

Warning

best_match_pre_mgbest_match_pre_mgBestMatchPreMgBestMatchPreMgbest_match_pre_mg is obsolete and is only provided for reasons of backward compatibility. New applications should use the shape-based or NCC-based operators instead.

Signature

best_match_pre_mg(ImagePyramid : : TemplateID, MaxError, SubPixel, NumLevels, WhichLevels : Row, Column, Error)

Herror T_best_match_pre_mg(const Hobject ImagePyramid, const Htuple TemplateID, const Htuple MaxError, const Htuple SubPixel, const Htuple NumLevels, const Htuple WhichLevels, Htuple* Row, Htuple* Column, Htuple* Error)

void BestMatchPreMg(const HObject& ImagePyramid, const HTuple& TemplateID, const HTuple& MaxError, const HTuple& SubPixel, const HTuple& NumLevels, const HTuple& WhichLevels, HTuple* Row, HTuple* Column, HTuple* Error)

void HTemplate::BestMatchPreMg(const HImage& ImagePyramid, double MaxError, const HString& SubPixel, Hlong NumLevels, const HTuple& WhichLevels, double* Row, double* Column, double* Error) const

void HTemplate::BestMatchPreMg(const HImage& ImagePyramid, double MaxError, const HString& SubPixel, Hlong NumLevels, Hlong WhichLevels, double* Row, double* Column, double* Error) const

void HTemplate::BestMatchPreMg(const HImage& ImagePyramid, double MaxError, const char* SubPixel, Hlong NumLevels, Hlong WhichLevels, double* Row, double* Column, double* Error) const

void HTemplate::BestMatchPreMg(const HImage& ImagePyramid, double MaxError, const wchar_t* SubPixel, Hlong NumLevels, Hlong WhichLevels, double* Row, double* Column, double* Error) const   ( Windows only)

void HImage::BestMatchPreMg(const HTemplate& TemplateID, double MaxError, const HString& SubPixel, Hlong NumLevels, const HTuple& WhichLevels, double* Row, double* Column, double* Error) const

void HImage::BestMatchPreMg(const HTemplate& TemplateID, double MaxError, const HString& SubPixel, Hlong NumLevels, Hlong WhichLevels, double* Row, double* Column, double* Error) const

void HImage::BestMatchPreMg(const HTemplate& TemplateID, double MaxError, const char* SubPixel, Hlong NumLevels, Hlong WhichLevels, double* Row, double* Column, double* Error) const

void HImage::BestMatchPreMg(const HTemplate& TemplateID, double MaxError, const wchar_t* SubPixel, Hlong NumLevels, Hlong WhichLevels, double* Row, double* Column, double* Error) const   ( Windows only)

static void HOperatorSet.BestMatchPreMg(HObject imagePyramid, HTuple templateID, HTuple maxError, HTuple subPixel, HTuple numLevels, HTuple whichLevels, out HTuple row, out HTuple column, out HTuple error)

void HTemplate.BestMatchPreMg(HImage imagePyramid, double maxError, string subPixel, int numLevels, HTuple whichLevels, out double row, out double column, out double error)

void HTemplate.BestMatchPreMg(HImage imagePyramid, double maxError, string subPixel, int numLevels, int whichLevels, out double row, out double column, out double error)

void HImage.BestMatchPreMg(HTemplate templateID, double maxError, string subPixel, int numLevels, HTuple whichLevels, out double row, out double column, out double error)

void HImage.BestMatchPreMg(HTemplate templateID, double maxError, string subPixel, int numLevels, int whichLevels, out double row, out double column, out double error)

def best_match_pre_mg(image_pyramid: HObject, template_id: HHandle, max_error: float, sub_pixel: str, num_levels: int, which_levels: Union[str, int]) -> Tuple[float, float, float]

Description

best_match_pre_mgbest_match_pre_mgBestMatchPreMgBestMatchPreMgbest_match_pre_mg applies gray value matching using an image pyramid. best_match_pre_mgbest_match_pre_mgBestMatchPreMgBestMatchPreMgbest_match_pre_mg works analogously to best_match_mgbest_match_mgBestMatchMgBestMatchMgbest_match_mg, but it makes use of pre calculated pyramid which has to be generated beforehand using gen_gauss_pyramidgen_gauss_pyramidGenGaussPyramidGenGaussPyramidgen_gauss_pyramid. This reduces runtime if more than one match has to be done or the pyramid has be used otherwise. The pyramid has to be generated using the zooming factor 0.5 and the mode 'constant'"constant""constant""constant""constant".

Execution Information

Parameters

ImagePyramidImagePyramidImagePyramidimagePyramidimage_pyramid (input_object)  singlechannelimage-array objectHImageHObjectHObjectHobject (byte)

Image pyramid inside of which the pattern has to be found.

TemplateIDTemplateIDTemplateIDtemplateIDtemplate_id (input_control)  template HTemplate, HTupleHHandleHTupleHtuple (handle) (IntPtr) (HHandle) (handle)

Template number.

MaxErrorMaxErrorMaxErrormaxErrormax_error (input_control)  real HTuplefloatHTupleHtuple (real) (double) (double) (double)

Maximal average difference of the gray values.

Default: 30.0

Suggested values: 0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 9.0, 11.0, 15.0, 17.0, 20.0, 30.0, 40.0, 50.0, 60.0, 70.0

Value range: 0 ≤ MaxError MaxError MaxError maxError max_error ≤ 255

Minimum increment: 1

Recommended increment: 3

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

Exactness in subpixels in case of 'true'"true""true""true""true".

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

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

NumLevelsNumLevelsNumLevelsnumLevelsnum_levels (input_control)  integer HTupleintHTupleHtuple (integer) (int / long) (Hlong) (Hlong)

Number of the used resolution levels.

Default: 3

Suggested values: 1, 2, 3, 4, 5, 6

WhichLevelsWhichLevelsWhichLevelswhichLevelswhich_levels (input_control)  integer HTupleUnion[str, int]HTupleHtuple (integer / string) (int / long / string) (Hlong / HString) (Hlong / char*)

Resolution level up to which the method “best match” is used.

Default: 'original' "original" "original" "original" "original"

Suggested values: 'all'"all""all""all""all", 'original'"original""original""original""original", 0, 1, 2, 3, 4, 5, 6

RowRowRowrowrow (output_control)  point.y HTuplefloatHTupleHtuple (real) (double) (double) (double)

Row position of the best match.

ColumnColumnColumncolumncolumn (output_control)  point.x HTuplefloatHTupleHtuple (real) (double) (double) (double)

Column position of the best match.

ErrorErrorErrorerrorerror (output_control)  real HTuplefloatHTupleHtuple (real) (double) (double) (double)

Average divergence of the gray values in the best match.

Result

If the parameter values are correct, the operator best_match_pre_mgbest_match_pre_mgBestMatchPreMgBestMatchPreMgbest_match_pre_mg returns the value 2 ( H_MSG_TRUE) . If the input is empty (no input images are available) the behavior can be set via set_system('no_object_result',<Result>)set_system("no_object_result",<Result>)SetSystem("no_object_result",<Result>)SetSystem("no_object_result",<Result>)set_system("no_object_result",<Result>). If necessary, an exception is raised.

Possible Predecessors

gen_gauss_pyramidgen_gauss_pyramidGenGaussPyramidGenGaussPyramidgen_gauss_pyramid, create_templatecreate_templateCreateTemplateCreateTemplatecreate_template, read_templateread_templateReadTemplateReadTemplateread_template, adapt_templateadapt_templateAdaptTemplateAdaptTemplateadapt_template, draw_regiondraw_regionDrawRegionDrawRegiondraw_region, draw_rectangle1draw_rectangle1DrawRectangle1DrawRectangle1draw_rectangle1, reduce_domainreduce_domainReduceDomainReduceDomainreduce_domain, set_reference_templateset_reference_templateSetReferenceTemplateSetReferenceTemplateset_reference_template

Alternatives

fast_matchfast_matchFastMatchFastMatchfast_match, fast_match_mgfast_match_mgFastMatchMgFastMatchMgfast_match_mg, exhaustive_matchexhaustive_matchExhaustiveMatchExhaustiveMatchexhaustive_match, exhaustive_match_mgexhaustive_match_mgExhaustiveMatchMgExhaustiveMatchMgexhaustive_match_mg

Module

Matching