set_metrology_object_paramT_set_metrology_object_paramSetMetrologyObjectParamSetMetrologyObjectParamset_metrology_object_param (Operator)

Name

set_metrology_object_paramT_set_metrology_object_paramSetMetrologyObjectParamSetMetrologyObjectParamset_metrology_object_param — Setzen von Parametern für die Metrology-Messobjekte eines Messmodells.

Signatur

set_metrology_object_param( : : MetrologyHandle, Index, GenParamName, GenParamValue : )

Herror T_set_metrology_object_param(const Htuple MetrologyHandle, const Htuple Index, const Htuple GenParamName, const Htuple GenParamValue)

void SetMetrologyObjectParam(const HTuple& MetrologyHandle, const HTuple& Index, const HTuple& GenParamName, const HTuple& GenParamValue)

void HMetrologyModel::SetMetrologyObjectParam(const HTuple& Index, const HTuple& GenParamName, const HTuple& GenParamValue) const

void HMetrologyModel::SetMetrologyObjectParam(const HString& Index, const HTuple& GenParamName, const HTuple& GenParamValue) const

void HMetrologyModel::SetMetrologyObjectParam(const char* Index, const HTuple& GenParamName, const HTuple& GenParamValue) const

void HMetrologyModel::SetMetrologyObjectParam(const wchar_t* Index, const HTuple& GenParamName, const HTuple& GenParamValue) const   (Nur Windows)

static void HOperatorSet.SetMetrologyObjectParam(HTuple metrologyHandle, HTuple index, HTuple genParamName, HTuple genParamValue)

void HMetrologyModel.SetMetrologyObjectParam(HTuple index, HTuple genParamName, HTuple genParamValue)

void HMetrologyModel.SetMetrologyObjectParam(string index, HTuple genParamName, HTuple genParamValue)

def set_metrology_object_param(metrology_handle: HHandle, index: MaybeSequence[Union[str, int]], gen_param_name: Sequence[str], gen_param_value: Sequence[Union[str, float, int]]) -> None

Beschreibung

set_metrology_object_paramset_metrology_object_paramSetMetrologyObjectParamSetMetrologyObjectParamSetMetrologyObjectParamset_metrology_object_param erlaubt es, zahlreiche Parameter der Metrology-Messobjekte zu verändern.

Das Konzept der 2D-Messtechnik ist bei der Einleitung zu Kapitel 2D-Messtechnik beschrieben.

Das Messmodell ist durch das Handle MetrologyHandleMetrologyHandleMetrologyHandleMetrologyHandlemetrologyHandlemetrology_handle definiert. Der Parameter IndexIndexIndexIndexindexindex legt die Metrology-Messobjekte fest, für die die Parameter gesetzt werden sollen. Die Parameter aller Metrology-Messobjekte werden gesetzt, wenn für den Parameter IndexIndexIndexIndexindexindex 'all'"all""all""all""all""all" übergeben wird. Alle Parameter können auch direkt beim Anlegen des Metrology-Messobjekts mit add_metrology_object_genericadd_metrology_object_genericAddMetrologyObjectGenericAddMetrologyObjectGenericAddMetrologyObjectGenericadd_metrology_object_generic, add_metrology_object_circle_measureadd_metrology_object_circle_measureAddMetrologyObjectCircleMeasureAddMetrologyObjectCircleMeasureAddMetrologyObjectCircleMeasureadd_metrology_object_circle_measure, add_metrology_object_ellipse_measureadd_metrology_object_ellipse_measureAddMetrologyObjectEllipseMeasureAddMetrologyObjectEllipseMeasureAddMetrologyObjectEllipseMeasureadd_metrology_object_ellipse_measure, add_metrology_object_line_measureadd_metrology_object_line_measureAddMetrologyObjectLineMeasureAddMetrologyObjectLineMeasureAddMetrologyObjectLineMeasureadd_metrology_object_line_measure oder add_metrology_object_rectangle2_measureadd_metrology_object_rectangle2_measureAddMetrologyObjectRectangle2MeasureAddMetrologyObjectRectangle2MeasureAddMetrologyObjectRectangle2Measureadd_metrology_object_rectangle2_measure übergeben werden. Die aktuelle Konfiguration kann mit Hilfe von get_metrology_object_paramget_metrology_object_paramGetMetrologyObjectParamGetMetrologyObjectParamGetMetrologyObjectParamget_metrology_object_param ausgelesen werden. Alle Parameter, die mit dem Operator set_metrology_object_paramset_metrology_object_paramSetMetrologyObjectParamSetMetrologyObjectParamSetMetrologyObjectParamset_metrology_object_param gesetzt werden können, können mit dem Operator reset_metrology_object_paramreset_metrology_object_paramResetMetrologyObjectParamResetMetrologyObjectParamResetMetrologyObjectParamreset_metrology_object_param zurückgesetzt werden.

Im Folgenden werden alle generischen Parameter mit den Defaultwerten aufgelistet. In den meisten Fällen reichen die Standardwerte aus, so dass keine Anpassung nötig ist. Die folgenden generischen Parameter GenParamNameGenParamNameGenParamNameGenParamNamegenParamNamegen_param_name und die dazugehörigen Werte GenParamValueGenParamValueGenParamValueGenParamValuegenParamValuegen_param_value sind verfügbar - sortiert nach verschiedenen Kategorien:

Erstellen der Messregionen:

'measure_length1'"measure_length1""measure_length1""measure_length1""measure_length1""measure_length1":

Der Wert des Parameters legt die halbe Kantenlänge der Messregionen senkrecht zum Objektrand fest. Der Wert entspricht der Messtoleranz. Die Einheit des Wertes ist Pixel.

Wertevorschläge: 10.0, 20.0, 30.0

Defaultwert: 20.0

Restriktion: 'measure_length1'"measure_length1""measure_length1""measure_length1""measure_length1""measure_length1" >= 1.0

'measure_length2'"measure_length2""measure_length2""measure_length2""measure_length2""measure_length2":

Der Wert des Parameters legt die halbe Kantenlänge der Messregionen tangential zum Objektrand fest. Die Einheit des Wertes ist Pixel.

Wertevorschläge: 3.0, 5.0, 10.0

Defaultwert: 5.0

Restriktion: 'measure_length2'"measure_length2""measure_length2""measure_length2""measure_length2""measure_length2" >= 0.0

'measure_distance'"measure_distance""measure_distance""measure_distance""measure_distance""measure_distance":

Der Wert des Parameters legt den gewünschten Abstand zwischen den Mittelpunkten zweier Messregionen fest. Führt der Abstand zu zu wenig Messregionen, hat dieser Parameter keinen Einfluss auf die Anzahl an Messregionen und wird auf die benötigte Mindestanzahl an Messregionen erhöht. Für ein Metrology-Messobjekt vom Typ Kreis ist diese Anzahl 3. Für ein Metrology-Messobjekt vom Typ Ellipse ist diese Anzahl 5. Für ein Metrology-Messobjekt vom Typ Linie ist diese Anzahl 2. Für ein Metrology-Messobjekt vom Typ Rechteck ist diese Anzahl pro Seite 2, d.h. insgesamt 8. Wird dieser Wert gesetzt, hat der Wert des Parameters 'num_measures'"num_measures""num_measures""num_measures""num_measures""num_measures" keinen Einfluss. Die Einheit des Wertes ist Pixel.

Wertevorschläge: 5.0, 15.0, 20.0, 30.0

Defaultwert: 10.0

'num_measures'"num_measures""num_measures""num_measures""num_measures""num_measures":

Der Wert des Parameters legt die gewünschte Anzahl der Messregionen fest. Wird der Wert zu klein gewählt, hat dieser Parameter keinen Einfluss auf die Anzahl an Messregionen und wird auf die benötigte Mindestanzahl an Messregionen erhöht. Für ein Metrology-Messobjekt vom Typ Kreis ist diese Anzahl 3. Für ein Metrology-Messobjekt vom Typ Ellipse ist diese Anzahl 5. Für ein Metrology-Messobjekt vom Typ Linie ist diese Anzahl 2. Für ein Metrology-Messobjekt vom Typ Rechteck ist diese Anzahl pro Seite 2, d.h. insgesamt 8. Wird dieser Wert gesetzt, hat der Wert des Parameters 'measure_distance'"measure_distance""measure_distance""measure_distance""measure_distance""measure_distance" keinen Einfluss.

Wertevorschläge: 8, 10, 16, 20, 30, 50, 100

Kantendetektion:

'measure_sigma'"measure_sigma""measure_sigma""measure_sigma""measure_sigma""measure_sigma":

Der Wert des Parameters legt das Sigma für die Gaußglättung fest. Die Bedeutung, die Verwendung und der Defaultwert des Parameters ist für den Operator measure_posmeasure_posMeasurePosMeasurePosMeasurePosmeasure_pos mit den Parametern SigmaSigmaSigmaSigmasigmasigma, ThresholdThresholdThresholdThresholdthresholdthreshold und SelectSelectSelectSelectselectselect beschrieben.

'measure_threshold'"measure_threshold""measure_threshold""measure_threshold""measure_threshold""measure_threshold":

Der Wert des Parameters legt die minimale Amplitude einer Kante fest. Die Bedeutung, die Verwendung und der Defaultwert des Parameters ist für den Operator measure_posmeasure_posMeasurePosMeasurePosMeasurePosmeasure_pos mit dem Parameter ThresholdThresholdThresholdThresholdthresholdthreshold beschrieben.

'measure_select'"measure_select""measure_select""measure_select""measure_select""measure_select":

Der Wert des Parameters legt die Auswahl der Endpunkte der Kanten fest. Die Bedeutung, die Verwendung und der Defaultwert des Parameters ist für den Operator measure_posmeasure_posMeasurePosMeasurePosMeasurePosmeasure_pos mit dem Parameter SelectSelectSelectSelectselectselect beschrieben.

'measure_transition'"measure_transition""measure_transition""measure_transition""measure_transition""measure_transition":

Der Wert des Parameters legt fest, ob die Hell-Dunkel- oder Dunkel-Hell-Übergänge für die Kanten genutzt werden. Die Bedeutung und die Verwendung der Werte 'all'"all""all""all""all""all", 'positive'"positive""positive""positive""positive""positive" und 'negative'"negative""negative""negative""negative""negative", die für den Parameter 'measure_transition'"measure_transition""measure_transition""measure_transition""measure_transition""measure_transition" gesetzt werden können, ist für den Operator measure_posmeasure_posMeasurePosMeasurePosMeasurePosmeasure_pos mit dem Parameter TransitionTransitionTransitionTransitiontransitiontransition beschrieben. Zusätzlich kann 'measure_transition'"measure_transition""measure_transition""measure_transition""measure_transition""measure_transition" auf den Wert 'uniform'"uniform""uniform""uniform""uniform""uniform" gesetzt werden. Dann werden alle positiven Kanten (Hell-Dunkel-Übergänge) und alle negativen Kanten (Dunkel-Hell-Übergänge) bei der Kantendetektion detektiert, aber beim Anpassen der geometrischen Formen werden die Kanten unterschiedlicher Typen getrennt behandelt, d.h. für jede Instanz einer geometrischen Form werden entweder nur die positiven Kanten oder nur die negativen Kanten verwendet.

Die Messrichtung innerhalb der Messregion verläuft von innen nach außen für ein Metrology-Messobjekt vom Typ Kreis, Ellipse und Rechteck. Für ein Metrology-Messobjekt vom Typ Linie verläuft die Messrichtung innerhalb der Messregion von links nach rechts, gesehen vom ersten Punkt der Linie (siehe RowBeginRowBeginRowBeginRowBeginrowBeginrow_begin und ColumnBeginColumnBeginColumnBeginColumnBegincolumnBegincolumn_begin des Operators add_metrology_object_line_measureadd_metrology_object_line_measureAddMetrologyObjectLineMeasureAddMetrologyObjectLineMeasureAddMetrologyObjectLineMeasureadd_metrology_object_line_measure).

Wertevorschläge: 'all'"all""all""all""all""all", 'negative'"negative""negative""negative""negative""negative", 'positive'"positive""positive""positive""positive""positive", 'uniform'"uniform""uniform""uniform""uniform""uniform"

Defaultwert: 'all'"all""all""all""all""all"

'measure_interpolation'"measure_interpolation""measure_interpolation""measure_interpolation""measure_interpolation""measure_interpolation":

Der Wert des Parameters legt die Art der zu verwendenden Interpolation fest. Die Bedeutung, die Verwendung und der Defaultwert des Parameters ist für den Operator gen_measure_rectangle2gen_measure_rectangle2GenMeasureRectangle2GenMeasureRectangle2GenMeasureRectangle2gen_measure_rectangle2 mit dem Parameter InterpolationInterpolationInterpolationInterpolationinterpolationinterpolation beschrieben.

Anpassen der geometrischen Formen:

'min_score'"min_score""min_score""min_score""min_score""min_score":

Der Parameter legt fest, welche Bewertung eine potentielle Instanz des Metrology-Messobjekts mindestens besitzen muss, damit diese als eine gültige Instanz des Metrology-Messobjekts angesehen wird. Der Score ist die Anzahl der Kanten, die für die Berechnung des Ergebnisses verwendet wird, dividiert durch die maximale Anzahl von Messregionen (siehe apply_metrology_modelapply_metrology_modelApplyMetrologyModelApplyMetrologyModelApplyMetrologyModelapply_metrology_model). Falls erwartet werden kann, dass alle Kanten des Metrology-Messobjekts in den Modellregionen vorhanden sind, kann der Parameter 'min_score'"min_score""min_score""min_score""min_score""min_score" auf so hohe Werte wie 0.8 oder sogar 0.9 gesetzt werden. Zu beachten ist, dass in Bildern mit vielen Störobjekten oder mit starker Hintergrundtextur der Wert für den Parameter 'min_score'"min_score""min_score""min_score""min_score""min_score" nicht deutlich niedriger als 0.7 gesetzt werden sollte, da ansonsten falsche Instanzen des Metrology-Messobjekts gefunden werden könnten.

Wertevorschläge: 0.5, 0.7, 0.9

Defaultwert: 0.7

'num_instances'"num_instances""num_instances""num_instances""num_instances""num_instances":

Der Parameter legt die maximale Anzahl der anzupassenden Instanzen für jedes Metrology-Messobjekt fest, d.h. wenn diese Anzahl an Instanzen erreicht wurde, wird die Anpassung abgebrochen (siehe apply_metrology_modelapply_metrology_modelApplyMetrologyModelApplyMetrologyModelApplyMetrologyModelapply_metrology_model). Der Score für erfolgreich angepasste Instanzen der geometrischen Formen muss mindestens den Wert 'min_score'"min_score""min_score""min_score""min_score""min_score" haben.

Wertevorschläge: 1, 2, 3, 4

Defaultwert: 1

'distance_threshold'"distance_threshold""distance_threshold""distance_threshold""distance_threshold""distance_threshold":

apply_metrology_modelapply_metrology_modelApplyMetrologyModelApplyMetrologyModelApplyMetrologyModelapply_metrology_model benutzt einen randomisierten Auswahlalgorithmus (RANSAC) zum Anpassen einer geometrischen Form. Damit eine Kante zu einer angepassten geometrischen Form gehört, darf die euklidische Distanz zwischen der Kante und der geometrischen Form den Wert von 'distance_threshold'"distance_threshold""distance_threshold""distance_threshold""distance_threshold""distance_threshold" nicht übersteigen.

Wertevorschläge: 0, 1.0, 2.0, 3.5, 5.0

Defaultwert: 3.5

'max_num_iterations'"max_num_iterations""max_num_iterations""max_num_iterations""max_num_iterations""max_num_iterations":

Der RANSAC-Algorithmus schätzt die Anzahl von Iterationen, die benötigt werden, um die gesuchte geometrische Form anzupassen. Die Schätzung berücksichtigt dabei die Kantendaten und die Komplexität der Form. Mit dem Parameter 'max_num_iterations'"max_num_iterations""max_num_iterations""max_num_iterations""max_num_iterations""max_num_iterations" kann eine obere Grenze für die vom RANSAC-Algorithmus berechnete Anzahl an Iterationen gesetzt werden. Die Anzahl der Iterationen wird weiterhin vom RANSAC-Algorithmus geschätzt, kann den Wert von 'max_num_iterations'"max_num_iterations""max_num_iterations""max_num_iterations""max_num_iterations""max_num_iterations" aber nicht übersteigen. Das Setzen von 'max_num_iterations'"max_num_iterations""max_num_iterations""max_num_iterations""max_num_iterations""max_num_iterations", kann hilfreich sein, wenn die Qualität der gefundenen geometrischen Form weniger wichtig ist als das Einhalten zeitlicher Grenzen. Wird der Parameter zu niedrig gesetzt, liefert der Algorithmus schlechtere oder keine Ergebnisse.

Standardmäßig ist der Wert auf -1 gesetzt, d.h. es ist keine obere Grenze für die berechnete Anzahl an Iterationen vorhanden.

Wertevorschläge: 10, 100, 1000

Defaultwert: -1

'rand_seed'"rand_seed""rand_seed""rand_seed""rand_seed""rand_seed":

Der Parameter legt den Startwert für den Zufallsgenerator fest, welcher vom RANSAC-Verfahren innerhalb des Operators apply_metrology_modelapply_metrology_modelApplyMetrologyModelApplyMetrologyModelApplyMetrologyModelapply_metrology_model zur Auswahl der Kanten genutzt wird. Wird der Parameter 'rand_seed'"rand_seed""rand_seed""rand_seed""rand_seed""rand_seed" auf einen Wert ungleich 0 gesetzt, so liefert der Operator bei jedem Aufruf mit denselben Parametern auch dasselbe Resultat, da der intern verwendete Zufallsgenerator mit dem Wert des Parameters 'rand_seed'"rand_seed""rand_seed""rand_seed""rand_seed""rand_seed" initialisiert wird.

Wird der Parameter 'rand_seed'"rand_seed""rand_seed""rand_seed""rand_seed""rand_seed" auf den Wert 0 gesetzt, so wird der Zufallsgenerator mit der aktuellen Zeit initialisiert. Daher sind in diesem Fall die Ergebnisse unter Umständen nicht reproduzierbar.

Wertevorschläge: 0, 1, 42

Defaultwert: 42

'instances_outside_measure_regions'"instances_outside_measure_regions""instances_outside_measure_regions""instances_outside_measure_regions""instances_outside_measure_regions""instances_outside_measure_regions":

Der Parameter legt fest, welche der Ergebnisse der Messungen gültig sind. Wird der Parameter 'instances_outside_measure_regions'"instances_outside_measure_regions""instances_outside_measure_regions""instances_outside_measure_regions""instances_outside_measure_regions""instances_outside_measure_regions" auf den Wert 'false'"false""false""false""false""false" gesetzt, sind nur Instanzen eines Metrology-Messobjekts gültig, die innerhalb der Hauptachsen der Messregionen dieses Metrology-Messobjekts liegen. Instanzen, die ungültig sind, werden nicht gespeichert. Wird der Parameter 'instances_outside_measure_regions'"instances_outside_measure_regions""instances_outside_measure_regions""instances_outside_measure_regions""instances_outside_measure_regions""instances_outside_measure_regions" auf den Wert 'true'"true""true""true""true""true" gesetzt, so sind alle Instanzen des Metrology-Messobjekts gültig.

Wertevorschläge: 'false'"false""false""false""false""false", 'true'"true""true""true""true""true"

Defaultwert: 'false'"false""false""false""false""false"

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

MetrologyHandleMetrologyHandleMetrologyHandleMetrologyHandlemetrologyHandlemetrology_handle (input_control, Zustand wird modifiziert)  metrology_model HMetrologyModel, HTupleHHandleHTupleHtuple (handle) (IntPtr) (HHandle) (handle)

Handle des Messmodells.

IndexIndexIndexIndexindexindex (input_control)  integer(-array) HTupleMaybeSequence[Union[str, int]]HTupleHtuple (string / integer) (string / int / long) (HString / Hlong) (char* / Hlong)

Index der Metrology-Messobjekte.

Defaultwert: 'all' "all" "all" "all" "all" "all"

Wertevorschläge: 'all'"all""all""all""all""all", 0, 1, 2

GenParamNameGenParamNameGenParamNameGenParamNamegenParamNamegen_param_name (input_control)  attribute.name-array HTupleSequence[str]HTupleHtuple (string) (string) (HString) (char*)

Namen der generischen Parameter.

Defaultwert: 'num_instances' "num_instances" "num_instances" "num_instances" "num_instances" "num_instances"

Werteliste: 'distance_threshold'"distance_threshold""distance_threshold""distance_threshold""distance_threshold""distance_threshold", 'instances_outside_measure_regions'"instances_outside_measure_regions""instances_outside_measure_regions""instances_outside_measure_regions""instances_outside_measure_regions""instances_outside_measure_regions", 'max_num_iterations'"max_num_iterations""max_num_iterations""max_num_iterations""max_num_iterations""max_num_iterations", 'measure_distance'"measure_distance""measure_distance""measure_distance""measure_distance""measure_distance", 'measure_interpolation'"measure_interpolation""measure_interpolation""measure_interpolation""measure_interpolation""measure_interpolation", 'measure_length1'"measure_length1""measure_length1""measure_length1""measure_length1""measure_length1", 'measure_length2'"measure_length2""measure_length2""measure_length2""measure_length2""measure_length2", 'measure_select'"measure_select""measure_select""measure_select""measure_select""measure_select", 'measure_sigma'"measure_sigma""measure_sigma""measure_sigma""measure_sigma""measure_sigma", 'measure_threshold'"measure_threshold""measure_threshold""measure_threshold""measure_threshold""measure_threshold", 'measure_transition'"measure_transition""measure_transition""measure_transition""measure_transition""measure_transition", 'min_score'"min_score""min_score""min_score""min_score""min_score", 'num_instances'"num_instances""num_instances""num_instances""num_instances""num_instances", 'num_measures'"num_measures""num_measures""num_measures""num_measures""num_measures", 'rand_seed'"rand_seed""rand_seed""rand_seed""rand_seed""rand_seed"

GenParamValueGenParamValueGenParamValueGenParamValuegenParamValuegen_param_value (input_control)  attribute.value-array HTupleSequence[Union[str, float, int]]HTupleHtuple (string / real / integer) (string / double / int / long) (HString / double / Hlong) (char* / double / Hlong)

Werte der generischen Parameter.

Defaultwert: 1

Wertevorschläge: 1, 2, 3, 4, 5, 10, 20, 'all'"all""all""all""all""all", 'true'"true""true""true""true""true", 'false'"false""false""false""false""false", 'first'"first""first""first""first""first", 'last'"last""last""last""last""last", 'positive'"positive""positive""positive""positive""positive", 'negative'"negative""negative""negative""negative""negative", 'uniform'"uniform""uniform""uniform""uniform""uniform", 'nearest_neighbor'"nearest_neighbor""nearest_neighbor""nearest_neighbor""nearest_neighbor""nearest_neighbor", 'bilinear'"bilinear""bilinear""bilinear""bilinear""bilinear", 'bicubic'"bicubic""bicubic""bicubic""bicubic""bicubic"

Ergebnis

Sind die Parameterwerte korrekt, dann liefert set_metrology_object_paramset_metrology_object_paramSetMetrologyObjectParamSetMetrologyObjectParamSetMetrologyObjectParamset_metrology_object_param den Wert TRUE. Gegebenenfalls wird eine Fehlerbehandlung durchgeführt.

Vorgänger

get_metrology_object_paramget_metrology_object_paramGetMetrologyObjectParamGetMetrologyObjectParamGetMetrologyObjectParamget_metrology_object_param

Nachfolger

apply_metrology_modelapply_metrology_modelApplyMetrologyModelApplyMetrologyModelApplyMetrologyModelapply_metrology_model, reset_metrology_object_paramreset_metrology_object_paramResetMetrologyObjectParamResetMetrologyObjectParamResetMetrologyObjectParamreset_metrology_object_param, get_metrology_object_paramget_metrology_object_paramGetMetrologyObjectParamGetMetrologyObjectParamGetMetrologyObjectParamget_metrology_object_param

Siehe auch

set_metrology_object_fuzzy_paramset_metrology_object_fuzzy_paramSetMetrologyObjectFuzzyParamSetMetrologyObjectFuzzyParamSetMetrologyObjectFuzzyParamset_metrology_object_fuzzy_param

Modul

2D Metrology