set_fuzzy_measure_norm_pairT_set_fuzzy_measure_norm_pairSetFuzzyMeasureNormPairSetFuzzyMeasureNormPair (Operator)

Name

set_fuzzy_measure_norm_pairT_set_fuzzy_measure_norm_pairSetFuzzyMeasureNormPairSetFuzzyMeasureNormPair — Spezifikation einer normierte Fuzzy-Funktion für Kantenpaare.

Signatur

set_fuzzy_measure_norm_pair( : : MeasureHandle, PairSize, SetType, Function : )

Herror T_set_fuzzy_measure_norm_pair(const Htuple MeasureHandle, const Htuple PairSize, const Htuple SetType, const Htuple Function)

void SetFuzzyMeasureNormPair(const HTuple& MeasureHandle, const HTuple& PairSize, const HTuple& SetType, const HTuple& Function)

void HMeasure::SetFuzzyMeasureNormPair(const HTuple& PairSize, const HString& SetType, const HFunction1D& Function) const

void HMeasure::SetFuzzyMeasureNormPair(double PairSize, const HString& SetType, const HFunction1D& Function) const

void HMeasure::SetFuzzyMeasureNormPair(double PairSize, const char* SetType, const HFunction1D& Function) const

void HMeasure::SetFuzzyMeasureNormPair(double PairSize, const wchar_t* SetType, const HFunction1D& Function) const   (Nur Windows)

static void HOperatorSet.SetFuzzyMeasureNormPair(HTuple measureHandle, HTuple pairSize, HTuple setType, HTuple function)

void HMeasure.SetFuzzyMeasureNormPair(HTuple pairSize, string setType, HFunction1D function)

void HMeasure.SetFuzzyMeasureNormPair(double pairSize, string setType, HFunction1D function)

Beschreibung

set_fuzzy_measure_norm_pairset_fuzzy_measure_norm_pairSetFuzzyMeasureNormPairSetFuzzyMeasureNormPairSetFuzzyMeasureNormPair legt eine normierte Fuzzy-Funktion fest, welche dem Parameter FunctionFunctionFunctionFunctionfunction übergeben wird und in den Operatoren fuzzy_measure_posfuzzy_measure_posFuzzyMeasurePosFuzzyMeasurePosFuzzyMeasurePos,fuzzy_measure_pairsfuzzy_measure_pairsFuzzyMeasurePairsFuzzyMeasurePairsFuzzyMeasurePairs und fuzzy_measure_pairingfuzzy_measure_pairingFuzzyMeasurePairingFuzzyMeasurePairingFuzzyMeasurePairing die gefundenen Kantenpaare bewertet. Zu diesem Zweck können Bewertungskriterien für verschiedene Merkmale von Kantenpaaren mit je einer Funktion beschrieben werden. Ein auf diese Weise charakterisiertes Merkmal wird Fuzzy-Set genannt. Wird keine Funktion für ein Fuzzy-Set definiert, so wird dieses Merkmal nicht für die Bewertung der gefundenen Kantenpaare herangezogen. Durch erneutes Setzen eines Fuzzy-Sets lässt sich hingegen die zuvor definierte Fuzzy-Funktion überschrieben. Gelöscht wird eine für ein Fuzzy-Set definierte Funktion mit Hilfe des reset_fuzzy_measurereset_fuzzy_measureResetFuzzyMeasureResetFuzzyMeasureResetFuzzyMeasure Operators. Im Unterschied zu set_fuzzy_measureset_fuzzy_measureSetFuzzyMeasureSetFuzzyMeasureSetFuzzyMeasure, muss die Abszisse x der Funktion relativ zur beabsichtigten Breite s (gegeben durch PairSizePairSizePairSizePairSizepairSize) der Kantenpaare festgelegt werden. Damit erreicht man eine allgemeine Verwendung der definierten Funktionen.

Das Konzept der 1D-Vermessung ist bei der Einleitung zu Kapitel 1D-Vermessung beschrieben.

Es können Funktionen für drei unterschiedliche Typen von Fuzzy-Sets definiert werden, wobei die Unterarten eines Sets nur gegeneinander exclusiv gesetzt werden können:

Eine normalisierte Fuzzy-Funktion wird durch eine stückweise lineare Funktion beschrieben, welche aus mindestens zwei Stützstellen besteht, die in aufsteigender Reihenfolge ihres Abszissenwertes x sortiert sind. Die Ordinate y beschreibt die Gewichtung zum korrespondierenden Merkmalwert x und muss in dem Bereich von 0.0 <= y <= 1.0 liegen. Außerhalb des Funktionsintervalls, welches durch den größten und kleinsten Abszissenwert x festgelegt ist, wird die Fuzzy-Funktion konstant mit den Ordinatenwerten der Intervallgrenzen fortgeführt. Solche Fuzzy-Funktionen können mit Hilfe des create_funct_1d_pairscreate_funct_1d_pairsCreateFunct1dPairsCreateFunct1dPairsCreateFunct1dPairs Operators erzeugt werden.

Wird mehr als ein Fuzzy-Set definiert setzt sich für fuzzy_measure_posfuzzy_measure_posFuzzyMeasurePosFuzzyMeasurePosFuzzyMeasurePos / fuzzy_measure_pairsfuzzy_measure_pairsFuzzyMeasurePairsFuzzyMeasurePairsFuzzyMeasurePairs / fuzzy_measure_pairingfuzzy_measure_pairingFuzzyMeasurePairingFuzzyMeasurePairingFuzzyMeasurePairing die resultierende Fuzzy-Bewertung aus dem geometrischen Mittel der Bewertungen aus den einzelnen Sets zusammen.

Ausführungsinformationen

Dieser Operator modifiziert den Zustand des folgenden Eingabeparameters:

Während der Ausführung dieses Operators muss der Zugriff auf den Wert dieses Parameters synchronisiert werden, wenn er über mehrere Threads hinweg verwendet wird.

Parameter

MeasureHandleMeasureHandleMeasureHandleMeasureHandlemeasureHandle (input_control, Zustand wird modifiziert)  measure HMeasure, HTupleHTupleHtuple (handle) (IntPtr) (HHandle) (handle)

Handle des Messobjekts.

PairSizePairSizePairSizePairSizepairSize (input_control)  number HTupleHTupleHtuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong)

Gesuchte Breite der Kantenpaare.

Defaultwert: 10.0

Wertevorschläge: 4.0, 6.0, 8.0, 10.0, 15.0, 20.0, 30.0

Typischer Wertebereich: 0.0 ≤ PairSize PairSize PairSize PairSize pairSize

Minimale Schrittweite: 0.1

Empfohlene Schrittweite: 1.0

SetTypeSetTypeSetTypeSetTypesetType (input_control)  string HTupleHTupleHtuple (string) (string) (HString) (char*)

Auswahl des Fuzzy-Sets.

Defaultwert: 'size_abs_diff' "size_abs_diff" "size_abs_diff" "size_abs_diff" "size_abs_diff"

Werteliste: 'position'"position""position""position""position", 'position_center'"position_center""position_center""position_center""position_center", 'position_end'"position_end""position_end""position_end""position_end", 'position_first_edge'"position_first_edge""position_first_edge""position_first_edge""position_first_edge", 'position_first_pair'"position_first_pair""position_first_pair""position_first_pair""position_first_pair", 'position_last_edge'"position_last_edge""position_last_edge""position_last_edge""position_last_edge", 'position_last_pair'"position_last_pair""position_last_pair""position_last_pair""position_last_pair", 'position_pair_center'"position_pair_center""position_pair_center""position_pair_center""position_pair_center", 'position_pair_end'"position_pair_end""position_pair_end""position_pair_end""position_pair_end", 'size'"size""size""size""size", 'size_abs_diff'"size_abs_diff""size_abs_diff""size_abs_diff""size_abs_diff", 'size_diff'"size_diff""size_diff""size_diff""size_diff"

FunctionFunctionFunctionFunctionfunction (input_control)  function_1d HFunction1D, HTupleHTupleHtuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong)

Fuzzy-Funktion.

Beispiel (HDevelop)

* how to use a fuzzy function
* ...
gen_measure_rectangle2 (50, 100, 0, 200, 100, 512, 512, 'nearest_neighbor', \
                        MeasureHandle)
* create a generalized fuzzy function to evaluate edge pairs
* * (30% uncertainty).
create_funct_1d_pairs ([0.7,1.0,1.3], [0.0,1.0,0.0], SizeFunction)
* and set it for an expected pair size of 13.45 pixels
set_fuzzy_measure_norm_pair (MeasureHandle, 13.45, 'size', SizeFunction)

fuzzy_measure_pairs (Image, MeasureHandle, 1, 30, 0.5, 'all', RowEdgeFirst, \
                     ColumnEdgeFirst, AmplitudeFirst, RowEdgeSecond, \
                     ColumnEdgeSecond, AmplitudeSecond, RowEdgeCenter, \
                     ColumnEdgeCenter, FuzzyScore, IntraDistance, \
                     InterDistance)

Vorgänger

gen_measure_arcgen_measure_arcGenMeasureArcGenMeasureArcGenMeasureArc, gen_measure_rectangle2gen_measure_rectangle2GenMeasureRectangle2GenMeasureRectangle2GenMeasureRectangle2, create_funct_1d_pairscreate_funct_1d_pairsCreateFunct1dPairsCreateFunct1dPairsCreateFunct1dPairs

Nachfolger

fuzzy_measure_pairsfuzzy_measure_pairsFuzzyMeasurePairsFuzzyMeasurePairsFuzzyMeasurePairs, fuzzy_measure_pairingfuzzy_measure_pairingFuzzyMeasurePairingFuzzyMeasurePairingFuzzyMeasurePairing

Alternativen

transform_funct_1dtransform_funct_1dTransformFunct1dTransformFunct1dTransformFunct1d, set_fuzzy_measureset_fuzzy_measureSetFuzzyMeasureSetFuzzyMeasureSetFuzzyMeasure

Siehe auch

reset_fuzzy_measurereset_fuzzy_measureResetFuzzyMeasureResetFuzzyMeasureResetFuzzyMeasure

Modul

1D Metrology