fast_match_mgT_fast_match_mgFastMatchMgFastMatchMg (Operator)

Name

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

Warnung

fast_match_mgfast_match_mgFastMatchMgFastMatchMgFastMatchMg 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 T_fast_match_mg(const Hobject Image, Hobject* Matches, const Htuple TemplateID, const Htuple MaxError, const Htuple NumLevel)

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

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_mgFastMatchMgFastMatchMgFastMatchMg führt analog zu fast_matchfast_matchFastMatchFastMatchFastMatch ein Matching zwischen dem Template von TemplateIDTemplateIDTemplateIDTemplateIDtemplateID und ImageImageImageImageimage durch. Im Gegensatz zu fast_matchfast_matchFastMatchFastMatchFastMatch beginnt die Suche nach guten Matches aber in verkleinerten Bildern (Pyramide). Die Anzahl der Ebenen der Pyramide werden mit NumLevelNumLevelNumLevelNumLevelnumLevel festgelegt. Dabei bedeutet der Wert 1, dass keine Pyramide verwendet wird. fast_match_mgfast_match_mgFastMatchMgFastMatchMgFastMatchMg ist in diesem Fall identisch mit fast_matchfast_matchFastMatchFastMatchFastMatch. 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 MaxErrorMaxErrorMaxErrorMaxErrormaxError) wird die Suche dann bei den entsprechenden Positionen im Originalbild (ImageImageImageImageimage) verfeinert. Optional kann bei dem Parameter NumLevelNumLevelNumLevelNumLevelnumLevel 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 MaxErrorMaxErrorMaxErrorMaxErrormaxError ab: um so größer der Schwellenwert ist um so länger dauert das Matching, da mehr Punkt weiter untersucht werden müssen. Falls MaxErrorMaxErrorMaxErrorMaxErrormaxError jedoch zu klein ist, wird das gesuchte Muster nicht gefunden. Der Wert ist also für jede Anwendung durch Tests zu optimieren.

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

Ausführungsinformationen

Parameter

ImageImageImageImageimage (input_object)  singlechannelimage(-array) objectHImageHImageHobject (byte)

Eingabebild, in dem das Pattern gefunden werden soll.

MatchesMatchesMatchesMatchesmatches (output_object)  region(-array) objectHRegionHRegionHobject *

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

TemplateIDTemplateIDTemplateIDTemplateIDtemplateID (input_control)  template HTemplate, HTupleHTupleHtuple (handle) (IntPtr) (HHandle) (handle)

Nummer des Templates.

MaxErrorMaxErrorMaxErrorMaxErrormaxError (input_control)  real HTupleHTupleHtuple (real) (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 ≤ 255

Minimale Schrittweite: 1

Empfohlene Schrittweite: 3

NumLevelNumLevelNumLevelNumLevelnumLevel (input_control)  integer(-array) HTupleHTupleHtuple (integer) (int / long) (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_mgFastMatchMgFastMatchMgFastMatchMg 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>)SetSystem("no_object_result",<Result>)SetSystem("no_object_result",<Result>) festlegen. Gegebenenfalls wird eine Fehlerbehandlung durchgeführt.

Vorgänger

create_templatecreate_templateCreateTemplateCreateTemplateCreateTemplate, read_templateread_templateReadTemplateReadTemplateReadTemplate, adapt_templateadapt_templateAdaptTemplateAdaptTemplateAdaptTemplate, draw_regiondraw_regionDrawRegionDrawRegionDrawRegion, draw_rectangle1draw_rectangle1DrawRectangle1DrawRectangle1DrawRectangle1, reduce_domainreduce_domainReduceDomainReduceDomainReduceDomain

Alternativen

best_matchbest_matchBestMatchBestMatchBestMatch, best_match_mgbest_match_mgBestMatchMgBestMatchMgBestMatchMg, fast_matchfast_matchFastMatchFastMatchFastMatch, exhaustive_matchexhaustive_matchExhaustiveMatchExhaustiveMatchExhaustiveMatch, exhaustive_match_mgexhaustive_match_mgExhaustiveMatchMgExhaustiveMatchMgExhaustiveMatchMg

Modul

Matching