add_metrology_object_circle_measure T_add_metrology_object_circle_measure AddMetrologyObjectCircleMeasure AddMetrologyObjectCircleMeasure add_metrology_object_circle_measure (Operator)
Name
add_metrology_object_circle_measure T_add_metrology_object_circle_measure AddMetrologyObjectCircleMeasure AddMetrologyObjectCircleMeasure add_metrology_object_circle_measure — Hinzufügen eines Kreises oder Kreisbogens zu einem Messmodell.
Signatur
Herror T_add_metrology_object_circle_measure (const Htuple MetrologyHandle , const Htuple Row , const Htuple Column , const Htuple Radius , const Htuple MeasureLength1 , const Htuple MeasureLength2 , const Htuple MeasureSigma , const Htuple MeasureThreshold , const Htuple GenParamName , const Htuple GenParamValue , Htuple* Index )
void AddMetrologyObjectCircleMeasure (const HTuple& MetrologyHandle , const HTuple& Row , const HTuple& Column , const HTuple& Radius , const HTuple& MeasureLength1 , const HTuple& MeasureLength2 , const HTuple& MeasureSigma , const HTuple& MeasureThreshold , const HTuple& GenParamName , const HTuple& GenParamValue , HTuple* Index )
Hlong HMetrologyModel ::AddMetrologyObjectCircleMeasure (const HTuple& Row , const HTuple& Column , const HTuple& Radius , const HTuple& MeasureLength1 , const HTuple& MeasureLength2 , const HTuple& MeasureSigma , const HTuple& MeasureThreshold , const HTuple& GenParamName , const HTuple& GenParamValue ) const
Hlong HMetrologyModel ::AddMetrologyObjectCircleMeasure (double Row , double Column , double Radius , double MeasureLength1 , double MeasureLength2 , double MeasureSigma , double MeasureThreshold , const HTuple& GenParamName , const HTuple& GenParamValue ) const
static void HOperatorSet .AddMetrologyObjectCircleMeasure (HTuple metrologyHandle , HTuple row , HTuple column , HTuple radius , HTuple measureLength1 , HTuple measureLength2 , HTuple measureSigma , HTuple measureThreshold , HTuple genParamName , HTuple genParamValue , out HTuple index )
int HMetrologyModel .AddMetrologyObjectCircleMeasure (HTuple row , HTuple column , HTuple radius , HTuple measureLength1 , HTuple measureLength2 , HTuple measureSigma , HTuple measureThreshold , HTuple genParamName , HTuple genParamValue )
int HMetrologyModel .AddMetrologyObjectCircleMeasure (double row , double column , double radius , double measureLength1 , double measureLength2 , double measureSigma , double measureThreshold , HTuple genParamName , HTuple genParamValue )
def add_metrology_object_circle_measure (metrology_handle : HHandle, row : MaybeSequence[Union[int, float]], column : MaybeSequence[Union[int, float]], radius : MaybeSequence[Union[int, float]], measure_length_1 : Union[int, float], measure_length_2 : Union[int, float], measure_sigma : Union[int, float], measure_threshold : Union[int, float], gen_param_name : Sequence[str], gen_param_value : Sequence[Union[float, int, str]]) -> int
Beschreibung
add_metrology_object_circle_measure add_metrology_object_circle_measure AddMetrologyObjectCircleMeasure AddMetrologyObjectCircleMeasure AddMetrologyObjectCircleMeasure add_metrology_object_circle_measure fügt ein Metrology-Messobjekt
vom Typ Kreis oder Kreisbogen zu einem Messmodell hinzu und bereitet
die rechteckigen Messregionen vor. Das Handle des Messmodells
muss in MetrologyHandle MetrologyHandle MetrologyHandle MetrologyHandle metrologyHandle metrology_handle übergeben werden.
Das Konzept der 2D-Messtechnik ist bei der Einleitung zu Kapitel
2D-Messtechnik beschrieben.
Die genäherte geometrische Form des Metrology-Messobjekts vom Typ
Kreis wird durch seinen Mittelpunkt (Row Row Row Row row row , Column Column Column Column column column )
und den Radius Radius Radius Radius radius radius beschrieben. Die Messregionen liegen
senkrecht zum Kreisrand. Die halben Kantenlängen der
Messregionen senkrecht und tangential zum Kreis werden jeweils in
MeasureLength1 MeasureLength1 MeasureLength1 MeasureLength1 measureLength1 measure_length_1 und in MeasureLength2 MeasureLength2 MeasureLength2 MeasureLength2 measureLength2 measure_length_2 gesetzt.
Die Mittelpunkte der Messregionen liegen auf dem Rand des Kreises.
Der Parameter MeasureSigma MeasureSigma MeasureSigma MeasureSigma measureSigma measure_sigma legt eine Standardabweichung
für die Glättung der Grauwerte im Bild durch den Operator
apply_metrology_model apply_metrology_model ApplyMetrologyModel ApplyMetrologyModel ApplyMetrologyModel apply_metrology_model fest. Auffällige Kanten können mit
dem Parameter MeasureThreshold MeasureThreshold MeasureThreshold MeasureThreshold measureThreshold measure_threshold , der einen Schwellenwert für
die Kantenamplitude, d.h. den Absolutbetrag der ersten Ableitung,
angibt, selektiert werden. Der Operator
add_metrology_object_circle_measure add_metrology_object_circle_measure AddMetrologyObjectCircleMeasure AddMetrologyObjectCircleMeasure AddMetrologyObjectCircleMeasure add_metrology_object_circle_measure gibt den Index des
hinzugefügten Metrology-Messobjekts in dem Parameter
Index Index Index Index index index zurück.
Des weiteren können in GenParamName GenParamName GenParamName GenParamName genParamName gen_param_name und GenParamValue GenParamValue GenParamValue GenParamValue genParamValue gen_param_value
generische Parameter angepasst werden. Die folgenden generischen
Parameter GenParamName GenParamName GenParamName GenParamName genParamName gen_param_name und die dazugehörigen Werte
GenParamValue GenParamValue GenParamValue GenParamValue genParamValue gen_param_value zur Festlegung eines Kreisbogens sind verfügbar:
'start_phi' "start_phi" "start_phi" "start_phi" "start_phi" "start_phi" :
Der Parameter legt den Anfangswinkel
des Kreisbogens fest. Um einen geschlossenen Kreis
zu erhalten, müssen der Wert des Parameters 'start_phi' "start_phi" "start_phi" "start_phi" "start_phi" "start_phi"
auf 0 und der Wert des Parameters 'end_phi' "end_phi" "end_phi" "end_phi" "end_phi" "end_phi"
auf
gesetzt sein (bei positivem Umlaufsinn).
Die Eingabewerte werden automatisch auf das Intervall
abgebildet.
Wertevorschläge: 0.0 , 0.78 ,
6.28318
Defaultwert: 0.0
'end_phi' "end_phi" "end_phi" "end_phi" "end_phi" "end_phi" :
Der Parameter legt den Endwinkel
des Kreisbogens fest. Um einen geschlossenen Kreis
zu erhalten, müssen der Wert des Parameters 'start_phi' "start_phi" "start_phi" "start_phi" "start_phi" "start_phi"
auf 0 und der Wert des Parameters 'end_phi' "end_phi" "end_phi" "end_phi" "end_phi" "end_phi"
auf
gesetzt sein (bei positivem Umlaufsinn).
Die Eingabewerte werden automatisch auf das Intervall
abgebildet.
Wertevorschläge: 0.0 , 0.78 ,
6.28318
Defaultwert: 6.28318
'point_order' "point_order" "point_order" "point_order" "point_order" "point_order" :
Der Parameter legt die Richtung
des Kreisbogens fest. Wird der Wert auf 'positive' "positive" "positive" "positive" "positive" "positive" gesetzt,
ist der Kreisbogen zwischen 'start_phi' "start_phi" "start_phi" "start_phi" "start_phi" "start_phi" und
'end_phi' "end_phi" "end_phi" "end_phi" "end_phi" "end_phi" im mathematisch positiven Sinn
(gegen den Uhrzeigersinn) definiert. Wird der Wert auf
'negative' "negative" "negative" "negative" "negative" "negative" gesetzt, ist der Kreisbogen zwischen
'start_phi' "start_phi" "start_phi" "start_phi" "start_phi" "start_phi" und 'end_phi' "end_phi" "end_phi" "end_phi" "end_phi" "end_phi" im mathematisch
negativen Sinn (im Uhrzeigersinn) definiert.
Wertevorschläge: 'positive' "positive" "positive" "positive" "positive" "positive" , 'negative' "negative" "negative" "negative" "negative" "negative"
Defaultwert: 'positive' "positive" "positive" "positive" "positive" "positive"
Weitere generische Parameter sind alle generischen Parameter, die im
Operator set_metrology_object_param set_metrology_object_param SetMetrologyObjectParam SetMetrologyObjectParam SetMetrologyObjectParam set_metrology_object_param zur Verfügung stehen.
In den meisten Fällen reichen die Standardwerte aus, so dass keine
Anpassung nötig ist.
Ausführungsinformationen
Multithreading-Typ: reentrant (läuft parallel zu nicht-exklusiven Operatoren).
Multithreading-Bereich: global (kann von jedem Thread aufgerufen werden).
Wird ohne Parallelisierung verarbeitet.
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
MetrologyHandle MetrologyHandle MetrologyHandle MetrologyHandle metrologyHandle metrology_handle (input_control, Zustand wird modifiziert) metrology_model → HMetrologyModel , HTuple HHandle HTuple Htuple (handle) (IntPtr ) (HHandle ) (handle )
Handle des Messmodells.
Row Row Row Row row row (input_control) circle.center.y(-array) → HTuple MaybeSequence[Union[int, float]] HTuple Htuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong)
Zeilenkoordinate des Mittelpunkts des Kreises oder
des Kreisbogens.
Column Column Column Column column column (input_control) circle.center.x(-array) → HTuple MaybeSequence[Union[int, float]] HTuple Htuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong)
Spaltenkoordinate des Mittelpunkts des Kreises oder
des Kreisbogens.
Radius Radius Radius Radius radius radius (input_control) circle.radius(-array) → HTuple MaybeSequence[Union[int, float]] HTuple Htuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong)
Radius des Kreises oder Kreisbogens.
MeasureLength1 MeasureLength1 MeasureLength1 MeasureLength1 measureLength1 measure_length_1 (input_control) number → HTuple Union[int, float] HTuple Htuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong)
Halbe Länge der Messregionen senkrecht zum Rand.
Defaultwert: 20.0
Wertevorschläge: 10.0, 20.0, 30.0
Typischer Wertebereich: 1.0
≤
MeasureLength1
MeasureLength1
MeasureLength1
MeasureLength1
measureLength1
measure_length_1
Minimale Schrittweite: 1.0
Empfohlene Schrittweite: 10.0
Restriktion: MeasureLength1 < Radius
MeasureLength2 MeasureLength2 MeasureLength2 MeasureLength2 measureLength2 measure_length_2 (input_control) number → HTuple Union[int, float] HTuple Htuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong)
Halbe Länge der Messregionen tangential zum Rand.
Defaultwert: 5.0
Wertevorschläge: 3.0, 5.0, 10.0
Typischer Wertebereich: 1.0
≤
MeasureLength2
MeasureLength2
MeasureLength2
MeasureLength2
measureLength2
measure_length_2
Minimale Schrittweite: 1.0
Empfohlene Schrittweite: 10.0
MeasureSigma MeasureSigma MeasureSigma MeasureSigma measureSigma measure_sigma (input_control) number → HTuple Union[int, float] HTuple Htuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong)
Sigma der Gaußfunktion für die Glättung.
Defaultwert: 1.0
Wertevorschläge: 0.4, 0.6, 0.8, 1.0, 1.5, 2.0, 3.0, 4.0, 5.0, 7.0, 10.0
Typischer Wertebereich: 0.4
≤
MeasureSigma
MeasureSigma
MeasureSigma
MeasureSigma
measureSigma
measure_sigma
Minimale Schrittweite: 0.01
Empfohlene Schrittweite: 0.1
Restriktion: 0.4 <= MeasureSigma && MeasureSigma <= 100
MeasureThreshold MeasureThreshold MeasureThreshold MeasureThreshold measureThreshold measure_threshold (input_control) number → HTuple Union[int, float] HTuple Htuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong)
Minimale Amplitude einer Kante.
Defaultwert: 30.0
Wertevorschläge: 5.0, 10.0, 20.0, 30.0, 40.0, 50.0, 60.0, 70.0, 90.0, 110.0
Typischer Wertebereich: 1
≤
MeasureThreshold
MeasureThreshold
MeasureThreshold
MeasureThreshold
measureThreshold
measure_threshold
≤
255 (lin)
Minimale Schrittweite: 0.5
Empfohlene Schrittweite: 2
GenParamName GenParamName GenParamName GenParamName genParamName gen_param_name (input_control) attribute.name-array → HTuple Sequence[str] HTuple Htuple (string) (string ) (HString ) (char* )
Namen der generischen Parameter.
Defaultwert: []
Werteliste: 'distance_threshold' "distance_threshold" "distance_threshold" "distance_threshold" "distance_threshold" "distance_threshold" , 'end_phi' "end_phi" "end_phi" "end_phi" "end_phi" "end_phi" , '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_select' "measure_select" "measure_select" "measure_select" "measure_select" "measure_select" , '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" , 'point_order' "point_order" "point_order" "point_order" "point_order" "point_order" , 'rand_seed' "rand_seed" "rand_seed" "rand_seed" "rand_seed" "rand_seed" , 'start_phi' "start_phi" "start_phi" "start_phi" "start_phi" "start_phi"
GenParamValue GenParamValue GenParamValue GenParamValue genParamValue gen_param_value (input_control) attribute.value-array → HTuple Sequence[Union[float, int, str]] HTuple Htuple (real / integer / string) (double / int / long / string) (double / Hlong / HString) (double / Hlong / char*)
Werte der generischen Parameter.
Defaultwert: []
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"
Index Index Index Index index index (output_control) integer → HTuple int HTuple Htuple (integer) (int / long) (Hlong ) (Hlong )
Index des erstellten Metrology-Messobjekts.
Beispiel (HDevelop)
read_image (Image, 'rings_and_nuts')
create_metrology_model (MetrologyHandle)
get_image_size (Image, Width, Height)
set_metrology_model_image_size (MetrologyHandle, Width, Height)
add_metrology_object_circle_measure (MetrologyHandle, 120, 130, 35, 10, 2, \
1, 30, ['measure_distance'], [40], Index)
apply_metrology_model (Image, MetrologyHandle)
get_metrology_object_result (MetrologyHandle, Index, 'all', 'result_type', \
'all_param', Circle)
get_metrology_object_result_contour (Contour, MetrologyHandle, Index, \
'all', 1.5)
Ergebnis
Sind die Parameterwerte korrekt, dann liefert
add_metrology_object_circle_measure add_metrology_object_circle_measure AddMetrologyObjectCircleMeasure AddMetrologyObjectCircleMeasure AddMetrologyObjectCircleMeasure add_metrology_object_circle_measure den Wert TRUE.
Gegebenenfalls wird eine Fehlerbehandlung durchgeführt.
Vorgänger
set_metrology_model_image_size set_metrology_model_image_size SetMetrologyModelImageSize SetMetrologyModelImageSize SetMetrologyModelImageSize set_metrology_model_image_size
Nachfolger
align_metrology_model align_metrology_model AlignMetrologyModel AlignMetrologyModel AlignMetrologyModel align_metrology_model ,
apply_metrology_model apply_metrology_model ApplyMetrologyModel ApplyMetrologyModel ApplyMetrologyModel apply_metrology_model
Alternativen
add_metrology_object_generic add_metrology_object_generic AddMetrologyObjectGeneric AddMetrologyObjectGeneric AddMetrologyObjectGeneric add_metrology_object_generic
Siehe auch
get_metrology_object_model_contour get_metrology_object_model_contour GetMetrologyObjectModelContour GetMetrologyObjectModelContour GetMetrologyObjectModelContour get_metrology_object_model_contour ,
set_metrology_model_param set_metrology_model_param SetMetrologyModelParam SetMetrologyModelParam SetMetrologyModelParam set_metrology_model_param ,
add_metrology_object_ellipse_measure add_metrology_object_ellipse_measure AddMetrologyObjectEllipseMeasure AddMetrologyObjectEllipseMeasure AddMetrologyObjectEllipseMeasure add_metrology_object_ellipse_measure ,
add_metrology_object_line_measure add_metrology_object_line_measure AddMetrologyObjectLineMeasure AddMetrologyObjectLineMeasure AddMetrologyObjectLineMeasure add_metrology_object_line_measure ,
add_metrology_object_rectangle2_measure add_metrology_object_rectangle2_measure AddMetrologyObjectRectangle2Measure AddMetrologyObjectRectangle2Measure AddMetrologyObjectRectangle2Measure add_metrology_object_rectangle2_measure
Modul
2D Metrology