KlassenKlassenKlassenKlassen | | | | Operatoren

fast_match_mgfast_match_mgFastMatchMgfast_match_mgFastMatchMgFastMatchMg (Operator)

Name

fast_match_mgfast_match_mgFastMatchMgfast_match_mgFastMatchMgFastMatchMg — Suche nach allen guten Grauwert-Matches in einer Pyramide.

Warnung

fast_match_mgfast_match_mgFastMatchMgfast_match_mgFastMatchMgFastMatchMg ist veraltet und wird nur aus Gründen der Rückwärtskompatibilität zur Verfügung gestellt. Neue Applikationen sollten stattdessen die Form-basierten oder NCC-basierten Operatoren verwenden.

Signatur

fast_match_mg(Image : Matches : TemplateID, MaxError, NumLevel : )

Herror fast_match_mg(const Hobject Image, Hobject* Matches, const Hlong TemplateID, double MaxError, const Hlong NumLevel)

Herror T_fast_match_mg(const Hobject Image, Hobject* Matches, const Htuple TemplateID, const Htuple MaxError, const Htuple NumLevel)

Herror fast_match_mg(Hobject Image, Hobject* Matches, const HTuple& TemplateID, const HTuple& MaxError, const HTuple& NumLevel)

HRegion HImage::FastMatchMg(const HTemplate& TemplateID, const HTuple& MaxError, const HTuple& NumLevel) const

HRegionArray HImageArray::FastMatchMg(const HTemplate& TemplateID, const HTuple& MaxError, const HTuple& NumLevel) const

HRegionArray HTemplate::FastMatchMg(const HImageArray& Image, const HTuple& MaxError, const HTuple& NumLevel) const

void FastMatchMg(const HObject& Image, HObject* Matches, const HTuple& TemplateID, const HTuple& MaxError, const HTuple& NumLevel)

HRegion HTemplate::FastMatchMg(const HImage& Image, double MaxError, const HTuple& NumLevel) const

HRegion HTemplate::FastMatchMg(const HImage& Image, double MaxError, Hlong NumLevel) const

HRegion HImage::FastMatchMg(const HTemplate& TemplateID, double MaxError, const HTuple& NumLevel) const

HRegion HImage::FastMatchMg(const HTemplate& TemplateID, double MaxError, Hlong NumLevel) const

void HOperatorSetX.FastMatchMg(
[in] IHUntypedObjectX* Image, [out] IHUntypedObjectX*Matches, [in] VARIANT TemplateID, [in] VARIANT MaxError, [in] VARIANT NumLevel)

IHRegionX* HTemplateX.FastMatchMg(
[in] IHImageX* Image, [in] double MaxError, [in] VARIANT NumLevel)

IHRegionX* HImageX.FastMatchMg(
[in] IHTemplateX* TemplateID, [in] double MaxError, [in] VARIANT NumLevel)

static void HOperatorSet.FastMatchMg(HObject image, out HObject matches, HTuple templateID, HTuple maxError, HTuple numLevel)

HRegion HTemplate.FastMatchMg(HImage image, double maxError, HTuple numLevel)

HRegion HTemplate.FastMatchMg(HImage image, double maxError, int numLevel)

HRegion HImage.FastMatchMg(HTemplate templateID, double maxError, HTuple numLevel)

HRegion HImage.FastMatchMg(HTemplate templateID, double maxError, int numLevel)

Beschreibung

fast_match_mgfast_match_mgFastMatchMgfast_match_mgFastMatchMgFastMatchMg führt analog zu fast_matchfast_matchFastMatchfast_matchFastMatchFastMatch ein Matching zwischen dem Template von TemplateIDTemplateIDTemplateIDTemplateIDTemplateIDtemplateID und ImageImageImageImageImageimage durch. Im Gegensatz zu fast_matchfast_matchFastMatchfast_matchFastMatchFastMatch beginnt die Suche nach guten Matches aber in verkleinerten Bildern (Pyramide). Die Anzahl der Ebenen der Pyramide werden mit NumLevelNumLevelNumLevelNumLevelNumLevelnumLevel festgelegt. Dabei bedeutet der Wert 1, dass keine Pyramide verwendet wird. fast_match_mgfast_match_mgFastMatchMgfast_match_mgFastMatchMgFastMatchMg ist in diesem Fall identisch mit fast_matchfast_matchFastMatchfast_matchFastMatchFastMatch. Bei dem Wert 2 beginnt die Suche bei dem Bild mit halber Kantenlänge. Für alle Punkte, die in dem verkleinerten Bild einen geringen Fehler hatten (kleiner als MaxErrorMaxErrorMaxErrorMaxErrorMaxErrormaxError) wird die Suche dann bei den entsprechenden Positionen im Originalbild (ImageImageImageImageImageimage) verfeinert. Optional kann bei dem Parameter NumLevelNumLevelNumLevelNumLevelNumLevelnumLevel ein zweiter Wert übergeben werden. Dieser legt die Nummer der Ebene fest bei der mit dem Matching aufgehört werden soll. Es wird dann die bis dahin gefunden Region auf die Originalebene vergrößert. Die Werte sind größer oder gleich Null. Dabei entspricht Null der untersten Ebene und führt somit zu keiner Veränderung des Verfahrens. Bei der Wert 1 bricht das Matching eine Ebene oberhalb ab. Hierdurch wird Rechenzeit eingespart. Dies ist insbesondere dann sinnvoll, wenn es nicht auf eine genaue Lokalisation ankommt.

Die Laufzeit hängt dabei sehr von MaxErrorMaxErrorMaxErrorMaxErrorMaxErrormaxError ab: um so größer der Schwellenwert ist um so länger dauert das Matching, da mehr Punkt weiter untersucht werden müssen. Falls MaxErrorMaxErrorMaxErrorMaxErrorMaxErrormaxError jedoch zu klein ist, wird das gesuchte Muster nicht gefunden. Der Wert ist also für jede Anwendung durch Tests zu optimieren.

NumLevelNumLevelNumLevelNumLevelNumLevelnumLevel gibt die Anzahl von Ebenen der Pyramide, einschließlich dem Ausgangsbild an.

Parallelisierung

Parameter

ImageImageImageImageImageimage (input_object)  singlechannelimage(-array) objectHImageHImageHImageHImageXHobject (byte)

Eingabebild, in dem das Pattern gefunden werden soll.

MatchesMatchesMatchesMatchesMatchesmatches (output_object)  region(-array) objectHRegionHRegionHRegionHRegionXHobject *

Alle Punkte, bei denen der Fehler unter der Schwelle liegt.

TemplateIDTemplateIDTemplateIDTemplateIDTemplateIDtemplateID (input_control)  template HTemplate, HTupleHTupleHTemplate, HTupleHTemplateX, VARIANTHtuple (integer) (IntPtr) (Hlong) (Hlong) (Hlong) (Hlong)

Nummer des Templates.

MaxErrorMaxErrorMaxErrorMaxErrorMaxErrormaxError (input_control)  real HTupleHTupleHTupleVARIANTHtuple (real) (double) (double) (double) (double) (double)

Maximale mittlere Differenz der Grauwerte.

Defaultwert: 30.0

Wertevorschläge: 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

Typischer Wertebereich: 0 ≤ MaxError MaxError MaxError MaxError MaxError maxError ≤ 255

Minimale Schrittweite: 1

Empfohlene Schrittweite: 3

NumLevelNumLevelNumLevelNumLevelNumLevelnumLevel (input_control)  integer(-array) HTupleHTupleHTupleVARIANTHtuple (integer) (int / long) (Hlong) (Hlong) (Hlong) (Hlong)

Anzahl Ebenen in der Pyramide.

Defaultwert: 3

Wertevorschläge: 1, 2, 3, 4, 5, 6, 7, 8

Ergebnis

Sind die Parameterwerte korrekt, dann liefert fast_match_mgfast_match_mgFastMatchMgfast_match_mgFastMatchMgFastMatchMg den Wert 2 (H_MSG_TRUE). Das Verhalten bei leerer Eingabe (keine Eingabebilder vorhanden) lässt sich mittels set_system('no_object_result',<Result>)set_system("no_object_result",<Result>)SetSystem("no_object_result",<Result>)set_system("no_object_result",<Result>)SetSystem("no_object_result",<Result>)SetSystem("no_object_result",<Result>) festlegen. Gegebenenfalls wird eine Fehlerbehandlung durchgeführt.

Vorgänger

create_templatecreate_templateCreateTemplatecreate_templateCreateTemplateCreateTemplate, read_templateread_templateReadTemplateread_templateReadTemplateReadTemplate, adapt_templateadapt_templateAdaptTemplateadapt_templateAdaptTemplateAdaptTemplate, draw_regiondraw_regionDrawRegiondraw_regionDrawRegionDrawRegion, draw_rectangle1draw_rectangle1DrawRectangle1draw_rectangle1DrawRectangle1DrawRectangle1, reduce_domainreduce_domainReduceDomainreduce_domainReduceDomainReduceDomain

Alternativen

best_matchbest_matchBestMatchbest_matchBestMatchBestMatch, best_match_mgbest_match_mgBestMatchMgbest_match_mgBestMatchMgBestMatchMg, fast_matchfast_matchFastMatchfast_matchFastMatchFastMatch, exhaustive_matchexhaustive_matchExhaustiveMatchexhaustive_matchExhaustiveMatchExhaustiveMatch, exhaustive_match_mgexhaustive_match_mgExhaustiveMatchMgexhaustive_match_mgExhaustiveMatchMgExhaustiveMatchMg

Modul

Matching


KlassenKlassenKlassenKlassen | | | | Operatoren