fast_match
— Searching all good matches of a template and an image.
fast_match
is obsolete and is only provided for
reasons of backward compatibility. New applications should use the
shape-based or NCC-based operators instead.
fast_match(Image : Matches : TemplateID, MaxError : )
The operator fast_match
performs a matching of the
template of TemplateID
and Image
.
Hereby the template will be moved over the points of
Image
so that the template always lies completely
inside of Image
.
The matching criterion (“displaced frame difference”)
is defined as follows:
The difference between fast_match
and exhaustive_match
is that the matching for one position is stopped if the error
is too high. This leads to a reduced runtime but one might
miss correct matches.
The runtime of the operator depends mainly on the size of the domain
of Image
.
Therefore it is important to restrict the domain as far as possible,
i.e. to apply the operator only in a very confined “region of interest”.
The parameter MaxError
determines the maximal error which the
searched position is allowed to show.
The lower this value is, the faster the operator runs.
All points which show a matching error smaller than
MaxError
will be returned in the output region
Matches
.
This region can be used for further processing. For example by
using a connection and best_match
to find all the
matching objects. If no point has a match error below MaxError
the empty region (i.e no points) is returned.
Image
(input_object) singlechannelimage(-array) →
object (byte)
Input image inside of which the pattern has to be found.
Matches
(output_object) region(-array) →
object
All points whose error lies below a certain threshold.
TemplateID
(input_control) template →
(handle)
Template number.
MaxError
(input_control) real →
(real)
Maximal average difference of the gray values.
Default: 20.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
Value range:
0
≤
MaxError
≤
255
Minimum increment: 1
Recommended increment: 1
If the parameter values are correct, the operator fast_match
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>)
.
If necessary, an exception is raised.
create_template
,
read_template
,
adapt_template
,
draw_region
,
draw_rectangle1
,
reduce_domain
best_match
,
best_match_mg
,
fast_match_mg
,
exhaustive_match
,
exhaustive_match_mg
Matching