set_sheet_of_light_paramT_set_sheet_of_light_paramSetSheetOfLightParamSetSheetOfLightParam (Operator)

Name

set_sheet_of_light_paramT_set_sheet_of_light_paramSetSheetOfLightParamSetSheetOfLightParam — Setzen ausgewählter Parameter des Lichtschnitt-Modells.

Signatur

set_sheet_of_light_param( : : SheetOfLightModelID, GenParamName, GenParamValue : )

Herror T_set_sheet_of_light_param(const Htuple SheetOfLightModelID, const Htuple GenParamName, const Htuple GenParamValue)

void SetSheetOfLightParam(const HTuple& SheetOfLightModelID, const HTuple& GenParamName, const HTuple& GenParamValue)

void HSheetOfLightModel::SetSheetOfLightParam(const HString& GenParamName, const HTuple& GenParamValue) const

void HSheetOfLightModel::SetSheetOfLightParam(const HString& GenParamName, const HString& GenParamValue) const

void HSheetOfLightModel::SetSheetOfLightParam(const char* GenParamName, const char* GenParamValue) const

void HSheetOfLightModel::SetSheetOfLightParam(const wchar_t* GenParamName, const wchar_t* GenParamValue) const   (Nur Windows)

static void HOperatorSet.SetSheetOfLightParam(HTuple sheetOfLightModelID, HTuple genParamName, HTuple genParamValue)

void HSheetOfLightModel.SetSheetOfLightParam(string genParamName, HTuple genParamValue)

void HSheetOfLightModel.SetSheetOfLightParam(string genParamName, string genParamValue)

Beschreibung

Der Operator set_sheet_of_light_paramset_sheet_of_light_paramSetSheetOfLightParamSetSheetOfLightParamSetSheetOfLightParam erlaubt es, ausgewählte Parameter des Lichtschnitt-Modells zu setzen, um dieses an die gestellte Messaufgabe anzupassen. Alle Modellparameter, außer die internen Kameraparameter 'camera_parameter'"camera_parameter""camera_parameter""camera_parameter""camera_parameter" und die folgenden Poses 'camera_pose'"camera_pose""camera_pose""camera_pose""camera_pose", 'lightplane_pose'"lightplane_pose""lightplane_pose""lightplane_pose""lightplane_pose" und 'movement_pose'"movement_pose""movement_pose""movement_pose""movement_pose" können ebenfalls mit Hilfe des Operators create_sheet_of_light_modelcreate_sheet_of_light_modelCreateSheetOfLightModelCreateSheetOfLightModelCreateSheetOfLightModel gesetzt werden. Die aktuelle Konfiguration kann mit Hilfe von get_sheet_of_light_paramget_sheet_of_light_paramGetSheetOfLightParamGetSheetOfLightParamGetSheetOfLightParam ausgelesen werden.

Es folgt eine Übersicht über die verschiedenen Modellparameter mit den jeweiligen Wertebereichen und Standardwerten:

Messung der Profile:

'method'"method""method""method""method":

definiert die Methode anhand welcher die Position des Profils im Bild (Disparität) bestimmt wird. Die Werte 'default'"default""default""default""default" und 'center_of_gravity'"center_of_gravity""center_of_gravity""center_of_gravity""center_of_gravity" verweisen beide auf dieselbe Methode, bei welcher die Disparität spaltenweise und mit Subpixelgenauigkeit ermittelt wird, indem der Schwerpunkt der Grauwerte berechnet wird, die die folgende Bedingung erfüllen:

'min_gray'"min_gray""min_gray""min_gray""min_gray":

der kleinste Grauwert, der für die Berechnung der Position des Profils berücksichtigt wird (vgl. 'method'"method""method""method""method" oben).

Wertevorschläge: 20, 50, 100, 128, 200, 220, 250

Default: 100

'num_profiles'"num_profiles""num_profiles""num_profiles""num_profiles":

Anzahl der Profile für welche Speicher im Lichtschnitt-Modell reserviert wurde. Standardmäßig wird 'num_profiles'"num_profiles""num_profiles""num_profiles""num_profiles" auf 512 gesetzt. Wird diese Anzahl an Profilen während einer Messung überschritten, so wird zusätzlicher Speicher automatisch reserviert. Da dieser Prozess jedoch etwas Zeit in Anspruch nimmt, wird empfohlen 'num_profiles'"num_profiles""num_profiles""num_profiles""num_profiles" vor dem Start der Messung auf einen geeigneten Wert zu setzen.

Wertevorschläge: 1, 2, 50, 100, 512, 1024, 3000

Default: 512

'ambiguity_solving'"ambiguity_solving""ambiguity_solving""ambiguity_solving""ambiguity_solving":

Dieser Parameter legt fest, welcher gemessene Wert zurückgeliefert wird, wenn die Bestimmung der Position des Profils nicht eindeutig ist.

'first'"first""first""first""first": der erste gemessene Wert wird zurückgeliefert. Diese Methode ist die schnellste.

'last'"last""last""last""last": der letzte gemessene Wert wird zurückgeliefert.

'brightest'"brightest""brightest""brightest""brightest": die Helligkeit aller potentiellen Disparitätswerte wird berechnet, und die Disparität mit der höchsten Helligkeit wird zurückgeliefert. Die Helligkeit wird wie folgt berechnet: wobei die Grauwerte und n die Anzahl der Pixel darstellen, die zur Berechnung der Disparität berücksichtigt werden.

Default: 'first'"first""first""first""first"

'score_type'"score_type""score_type""score_type""score_type":

Dieser Parameter legt fest, ob Bewertungsmerkmale ('score''score''score''score''score') des Disparitätsbildes berechnet werden sollen, und wenn ja, nach welchem Kriterium.

'none'"none""none""none""none": es werden keine Bewertungmerkmale berechnet.

'width'"width""width""width""width": für jedes Pixel des Disparitätsbildes wird die lokale Breite des Profils als Bewertungsmerkmal zurückgeliefert.

'intensity'"intensity""intensity""intensity""intensity": für jedes Pixel des Disparitätsbildes wird als Bewertungsmerkmal die lokale Intensität des Profils zurückgeliefert. Diese wird wie folgt berechnet: wobei die Grauwerte und n die Anzahl der Pixel darstellen, die zur Berechnung der Disparität berücksichtigt werden.

Default: 'none'"none""none""none""none"

Kalibrierung der Messung:

'calibration'"calibration""calibration""calibration""calibration":

gibt an, ob und wenn ja welche Kalibriertransformationen auf das Disparitätsbild angewendet werden sollen:

'none'"none""none""none""none": es werden keine Kalibriertransformationen angewendet.

'xz'"xz""xz""xz""xz": es werden Kalibriertransformationen angewendet, die die geometrischen Eigenschaften des Messsystems (Kamera und Lichtlinienprojektor) berücksichtigen. Die Bewegung des Objekts während der Messung wird jedoch nicht berücksichtigt.

'xyz'"xyz""xyz""xyz""xyz": es werden Kalibriertransformationen angewendet, die sowohl die geometrischen Eigenschaften des Messsystems (Kamera und Lichtlinienprojektor) als auch die Bewegung des Objekts während der Messung berücksichtigen.

'offset_scale'"offset_scale""offset_scale""offset_scale""offset_scale": Ein vereinfachter Parametersatz um einen Aufbau manuell zu beschreiben. Es kann bereits mit Standardeinstellungen angewandt werden, bietet aber auch die Möglichkeit den Setup mit nur 6 Parameters zu konfigurieren. Drei der Parameter beschreiben eine anisotrope Skalierung: ('scale_x'"scale_x""scale_x""scale_x""scale_x") beschreibt die Skalierung entlang der Spaltenrichtung des Bildes in die neue x-Achse, ('scale_y'"scale_y""scale_y""scale_y""scale_y") beschreibt eine lineare Bewegung des Objekts zwischen zwei aufeinander folgenden Bildern und 'scale_z'"scale_z""scale_z""scale_z""scale_z" beschreibt das Verhältnis der Disparität zur neuen z-Achse. Die übrigen drei Parameter beschreiben die Lage des neuen Zentrums relativ zum neuen Weltkoodinatensystem ('offset_x'"offset_x""offset_x""offset_x""offset_x", 'offset_y'"offset_y""offset_y""offset_y""offset_y", 'offset_z'"offset_z""offset_z""offset_z""offset_z").

Default: 'none'"none""none""none""none"

'camera_parameter'"camera_parameter""camera_parameter""camera_parameter""camera_parameter":

die internen Parameter der Kamera, die zur Durchführung der Messung benutzt wurden. Diese Parameter werden benötigt, wenn 'calibration'"calibration""calibration""calibration""calibration" auf 'xz'"xz""xz""xz""xz" oder 'xyz'"xyz""xyz""xyz""xyz" gesetzt wurde. Soll mit calibrate_sheet_of_lightcalibrate_sheet_of_lightCalibrateSheetOfLightCalibrateSheetOfLightCalibrateSheetOfLight kalibriert werden, wird dieser Parameter benutzt, um die Startparameter der Kamera zu setzen.

'calibration_object'"calibration_object""calibration_object""calibration_object""calibration_object":

die Beschreibungsdatei des 3D-Kalibrierkörpers für die Kalibrierung mit calibrate_sheet_of_lightcalibrate_sheet_of_lightCalibrateSheetOfLightCalibrateSheetOfLightCalibrateSheetOfLight. Soll mit calibrate_sheet_of_lightcalibrate_sheet_of_lightCalibrateSheetOfLightCalibrateSheetOfLightCalibrateSheetOfLight kalibriert werden, so muss hier der Dateinamen des mit create_sheet_of_light_calib_objectcreate_sheet_of_light_calib_objectCreateSheetOfLightCalibObjectCreateSheetOfLightCalibObjectCreateSheetOfLightCalibObject erzeugten Kalibrierkörpers gesetzt werden.

'camera_pose'"camera_pose""camera_pose""camera_pose""camera_pose":

die Pose die das Kamerakoordinatensystem in das Weltkoordinatensystem transformiert, also die Pose, mit der Punktkoordinaten vom Weltkoordinatensystem in das Kamerakoordinatensystem transformiert werden können. Diese Pose wird benötigt, wenn 'calibration'"calibration""calibration""calibration""calibration" auf 'xz'"xz""xz""xz""xz" oder 'xyz'"xyz""xyz""xyz""xyz" gesetzt wurde.

Es ist zu beachten, dass das Weltkoordinatensystem implizit durch das Setzen von 'camera_pose'"camera_pose""camera_pose""camera_pose""camera_pose" festgelegt wird.

'lightplane_pose'"lightplane_pose""lightplane_pose""lightplane_pose""lightplane_pose":

die Pose die das Koordinatensystem der Lichtebene in das Weltkoordinatensystem transformiert, also die Pose, mit der Punktkoordinaten vom Weltkoordinatensystem in das Koordinatensystem der Lichtebene transformiert werden können. Mit dem Koordinatensystem der Lichtebene ist ein Koordinatensystem gemeint, dessen Ebene definiert durch z=0 mit der Lichtebene übereinstimmt, die der Lichtlinienprojektor im Raum erzeugt. Diese Pose wird benötigt, wenn 'calibration'"calibration""calibration""calibration""calibration" auf 'xz'"xz""xz""xz""xz" oder 'xyz'"xyz""xyz""xyz""xyz" gesetzt wurde.

'movement_pose'"movement_pose""movement_pose""movement_pose""movement_pose":

die Pose, die die Bewegung des Objekts relativ zum Messsystem während der Messung beschreibt. Diese Pose soll im Weltkoordinatensystem formuliert sein und wird benötigt, wenn 'calibration'"calibration""calibration""calibration""calibration" auf 'xyz'"xyz""xyz""xyz""xyz" gesetzt wurde.

'scale'"scale""scale""scale""scale":

dieser Parameter legt fest mit welchem Faktor die kalibrierten 3D-Koordinaten X, Y und Z skaliert werden. 'scale'"scale""scale""scale""scale" muss als der Quotient Zieleinheit/Originaleinheit eingegeben werden. Die Originaleinheit wird durch das Kalibrierobjekt bestimmt, und ist Meter, wenn Sie eine Standardkalibrierplatte benutzen. Der Standardwert des Modellparameters 'scale'"scale""scale""scale""scale" ist 1.0. Wenn die Originaleinheit Meter ist, kann 'scale'"scale""scale""scale""scale" direkt mit der gewünschten Zieleinheit gesetzt werden, zum Beispiel mit 'm'"m""m""m""m",'cm'"cm""cm""cm""cm",'mm'"mm""mm""mm""mm", 'microns'"microns""microns""microns""microns", oder 'um'"um""um""um""um". Dieser Wert ist nur im Falle der Kalibriertransformationen 'offset_scale'"offset_scale""offset_scale""offset_scale""offset_scale", 'xz'"xz""xz""xz""xz" oder 'xyz'"xyz""xyz""xyz""xyz" relevant.

Wertevorschläge: 'm'"m""m""m""m",'cm'"cm""cm""cm""cm",'mm'"mm""mm""mm""mm", 'microns'"microns""microns""microns""microns",'um'"um""um""um""um",'1.0'"1.0""1.0""1.0""1.0",0.01, 0.001, 1.0e-6

Default: 1.0

'scale_x'"scale_x""scale_x""scale_x""scale_x":

Dieser Wert definiert die Breite eines Pixels im 3D Raum. Dieser Wert ist nur im Falle der Kalibriertransformationen 'offset_scale'"offset_scale""offset_scale""offset_scale""offset_scale" relevant.

Wertevorschläge: '1.0'"1.0""1.0""1.0""1.0",0.01, 10.0, 1.0e-6

Der Standardwert für 'scale_x'"scale_x""scale_x""scale_x""scale_x" ist 1.0.

'scale_y'"scale_y""scale_y""scale_y""scale_y":

Dieser Wert definiert die lineare Bewegung zwischen zwei Profilen. Dieser Wert ist nur im Falle der Kalibriertransformationen 'offset_scale'"offset_scale""offset_scale""offset_scale""offset_scale" relevant.

Wertevorschläge: 1.0,0.01, 10.0, 1.0e-6

Der Standardwert für 'scale_y'"scale_y""scale_y""scale_y""scale_y" ist 10.0.

'scale_z'"scale_z""scale_z""scale_z""scale_z":

Dieser Wert definiert die Höher von Disparitäten im 3D Raum. Dieser Wert ist nur im Falle der Kalibriertransformationen 'offset_scale'"offset_scale""offset_scale""offset_scale""offset_scale" relevant.

Wertevorschläge: 1.0,0.01, 10.0, 1.0e-6

Der Standardwert für 'scale_z'"scale_z""scale_z""scale_z""scale_z" ist 1.0.

'offset_x'"offset_x""offset_x""offset_x""offset_x":

Dieser Wert beschreibt die Verschiebung in x im 3D Raum. Dieser Wert ist nur im Falle der Kalibriertransformationen 'offset_scale'"offset_scale""offset_scale""offset_scale""offset_scale" relevant.

Wertevorschläge: 1.0,0.0, -1.0, 1.0e-6

Der Standardwert für 'offset_x'"offset_x""offset_x""offset_x""offset_x" ist 0.0.

'offset_y'"offset_y""offset_y""offset_y""offset_y":

Dieser Wert beschreibt die Verschiebung in y im 3D Raum. Dieser Wert ist nur im Falle der Kalibriertransformationen 'offset_scale'"offset_scale""offset_scale""offset_scale""offset_scale" relevant.

Wertevorschläge: 1.0,0.0, -1.0, 1.0e-6

Der Standardwert für 'offset_y'"offset_y""offset_y""offset_y""offset_y" ist 0.0.

'offset_z'"offset_z""offset_z""offset_z""offset_z":

Dieser Wert beschreibt die Verschiebung in z im 3D Raum. Dieser Wert ist nur im Falle der Kalibriertransformationen 'offset_scale'"offset_scale""offset_scale""offset_scale""offset_scale" relevant.

Wertevorschläge: 1.0,0.0, -1.0, 1.0e-6

Der Standardwert für 'offset_z'"offset_z""offset_z""offset_z""offset_z" ist 0.0.

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

SheetOfLightModelIDSheetOfLightModelIDSheetOfLightModelIDSheetOfLightModelIDsheetOfLightModelID (input_control, Zustand wird modifiziert)  sheet_of_light_model HSheetOfLightModel, HTupleHTupleHtuple (handle) (IntPtr) (HHandle) (handle)

Handle des Lichtschnitt-Modells.

GenParamNameGenParamNameGenParamNameGenParamNamegenParamName (input_control)  attribute.name HTupleHTupleHtuple (string) (string) (HString) (char*)

Name des einzustellenden Modellparameters.

Defaultwert: 'method' "method" "method" "method" "method"

Werteliste: 'ambiguity_solving'"ambiguity_solving""ambiguity_solving""ambiguity_solving""ambiguity_solving", 'calibration'"calibration""calibration""calibration""calibration", 'calibration_object'"calibration_object""calibration_object""calibration_object""calibration_object", 'camera_parameter'"camera_parameter""camera_parameter""camera_parameter""camera_parameter", 'camera_pose'"camera_pose""camera_pose""camera_pose""camera_pose", 'lightplane_pose'"lightplane_pose""lightplane_pose""lightplane_pose""lightplane_pose", 'method'"method""method""method""method", 'min_gray'"min_gray""min_gray""min_gray""min_gray", 'movement_pose'"movement_pose""movement_pose""movement_pose""movement_pose", 'num_profiles'"num_profiles""num_profiles""num_profiles""num_profiles", 'offset_x'"offset_x""offset_x""offset_x""offset_x", 'offset_y'"offset_y""offset_y""offset_y""offset_y", 'offset_z'"offset_z""offset_z""offset_z""offset_z", 'scale'"scale""scale""scale""scale", 'scale_x'"scale_x""scale_x""scale_x""scale_x", 'scale_y'"scale_y""scale_y""scale_y""scale_y", 'scale_z'"scale_z""scale_z""scale_z""scale_z", 'score_type'"score_type""score_type""score_type""score_type"

GenParamValueGenParamValueGenParamValueGenParamValuegenParamValue (input_control)  attribute.value(-array) HTupleHTupleHtuple (string / integer / real) (string / int / long / double) (HString / Hlong / double) (char* / Hlong / double)

Wert des einzustellenden Modellparameters.

Defaultwert: 'center_of_gravity' "center_of_gravity" "center_of_gravity" "center_of_gravity" "center_of_gravity"

Wertevorschläge: 'default'"default""default""default""default", 'center_of_gravity'"center_of_gravity""center_of_gravity""center_of_gravity""center_of_gravity", 'last'"last""last""last""last", 'first'"first""first""first""first", 'brightest'"brightest""brightest""brightest""brightest", 'none'"none""none""none""none", 'intensity'"intensity""intensity""intensity""intensity", 'width'"width""width""width""width", 'xz'"xz""xz""xz""xz", 'xyz'"xyz""xyz""xyz""xyz", 'offset_scale'"offset_scale""offset_scale""offset_scale""offset_scale", 'm'"m""m""m""m", 'cm'"cm""cm""cm""cm", 'mm'"mm""mm""mm""mm", 'um'"um""um""um""um", 'microns'"microns""microns""microns""microns", 1.0, 1e-2, 1e-3, 1e-6

Ergebnis

set_sheet_of_light_paramset_sheet_of_light_paramSetSheetOfLightParamSetSheetOfLightParamSetSheetOfLightParam liefert den Wert 2 (H_MSG_TRUE), falls die übergebenen Parameter korrekt sind. Ansonsten wird eine Fehlerbehandlung durchgeführt.

Nachfolger

get_sheet_of_light_paramget_sheet_of_light_paramGetSheetOfLightParamGetSheetOfLightParamGetSheetOfLightParam, measure_profile_sheet_of_lightmeasure_profile_sheet_of_lightMeasureProfileSheetOfLightMeasureProfileSheetOfLightMeasureProfileSheetOfLight, apply_sheet_of_light_calibrationapply_sheet_of_light_calibrationApplySheetOfLightCalibrationApplySheetOfLightCalibrationApplySheetOfLightCalibration

Alternativen

create_sheet_of_light_modelcreate_sheet_of_light_modelCreateSheetOfLightModelCreateSheetOfLightModelCreateSheetOfLightModel

Siehe auch

query_sheet_of_light_paramsquery_sheet_of_light_paramsQuerySheetOfLightParamsQuerySheetOfLightParamsQuerySheetOfLightParams, get_sheet_of_light_paramget_sheet_of_light_paramGetSheetOfLightParamGetSheetOfLightParamGetSheetOfLightParam, get_sheet_of_light_resultget_sheet_of_light_resultGetSheetOfLightResultGetSheetOfLightResultGetSheetOfLightResult

Modul

3D Metrology