get_component_relationsT_get_component_relationsGetComponentRelationsGetComponentRelationsget_component_relations (Operator)

Name

get_component_relationsT_get_component_relationsGetComponentRelationsGetComponentRelationsget_component_relations — Liefert die in einem Trainingsergebnis gespeicherten Relationen zwischen den Modellkomponenten zurück.

Signatur

get_component_relations( : Relations : ComponentTrainingID, ReferenceComponent, Image : Row, Column, Phi, Length1, Length2, AngleStart, AngleExtent)

Herror T_get_component_relations(Hobject* Relations, const Htuple ComponentTrainingID, const Htuple ReferenceComponent, const Htuple Image, Htuple* Row, Htuple* Column, Htuple* Phi, Htuple* Length1, Htuple* Length2, Htuple* AngleStart, Htuple* AngleExtent)

void GetComponentRelations(HObject* Relations, const HTuple& ComponentTrainingID, const HTuple& ReferenceComponent, const HTuple& Image, HTuple* Row, HTuple* Column, HTuple* Phi, HTuple* Length1, HTuple* Length2, HTuple* AngleStart, HTuple* AngleExtent)

HRegion HComponentTraining::GetComponentRelations(Hlong ReferenceComponent, const HTuple& Image, HTuple* Row, HTuple* Column, HTuple* Phi, HTuple* Length1, HTuple* Length2, HTuple* AngleStart, HTuple* AngleExtent) const

HRegion HComponentTraining::GetComponentRelations(Hlong ReferenceComponent, const HString& Image, double* Row, double* Column, double* Phi, double* Length1, double* Length2, double* AngleStart, double* AngleExtent) const

HRegion HComponentTraining::GetComponentRelations(Hlong ReferenceComponent, const char* Image, double* Row, double* Column, double* Phi, double* Length1, double* Length2, double* AngleStart, double* AngleExtent) const

HRegion HComponentTraining::GetComponentRelations(Hlong ReferenceComponent, const wchar_t* Image, double* Row, double* Column, double* Phi, double* Length1, double* Length2, double* AngleStart, double* AngleExtent) const   (Nur Windows)

static void HOperatorSet.GetComponentRelations(out HObject relations, HTuple componentTrainingID, HTuple referenceComponent, HTuple image, out HTuple row, out HTuple column, out HTuple phi, out HTuple length1, out HTuple length2, out HTuple angleStart, out HTuple angleExtent)

HRegion HComponentTraining.GetComponentRelations(int referenceComponent, HTuple image, out HTuple row, out HTuple column, out HTuple phi, out HTuple length1, out HTuple length2, out HTuple angleStart, out HTuple angleExtent)

HRegion HComponentTraining.GetComponentRelations(int referenceComponent, string image, out double row, out double column, out double phi, out double length1, out double length2, out double angleStart, out double angleExtent)

def get_component_relations(component_training_id: HHandle, reference_component: int, image: Union[str, int]) -> Tuple[HObject, Sequence[float], Sequence[float], Sequence[float], Sequence[float], Sequence[float], Sequence[float], Sequence[float]]

def get_component_relations_s(component_training_id: HHandle, reference_component: int, image: Union[str, int]) -> Tuple[HObject, float, float, float, float, float, float, float]

Beschreibung

get_component_relationsget_component_relationsGetComponentRelationsGetComponentRelationsGetComponentRelationsget_component_relations liefert die Relationen zwischen Modellkomponenten nachdem sie mit train_model_componentstrain_model_componentsTrainModelComponentsTrainModelComponentsTrainModelComponentstrain_model_components trainiert worden sind. Mit dem Parameter ReferenceComponentReferenceComponentReferenceComponentReferenceComponentreferenceComponentreference_component kann eine Referenzkomponente ausgewählt werden. get_component_relationsget_component_relationsGetComponentRelationsGetComponentRelationsGetComponentRelationsget_component_relations liefert dann die Relationen zwischen der Referenzkomponente und allen übrigen Komponenten im Modellbild (wenn ImageImageImageImageimageimage = 'model_image'"model_image""model_image""model_image""model_image""model_image" oder ImageImageImageImageimageimage = 0) oder in einem Trainingsbild (wenn ImageImageImageImageimageimage >= 1). Um die Relationen im i. Trainingsbild zu erhalten, muss ImageImageImageImageimageimage auf i gesetzt werden. Das Ergebnis des mit train_model_componentstrain_model_componentsTrainModelComponentsTrainModelComponentsTrainModelComponentstrain_model_components durchgeführten Trainings muss in ComponentTrainingIDComponentTrainingIDComponentTrainingIDComponentTrainingIDcomponentTrainingIDcomponent_training_id übergeben werden. ReferenceComponentReferenceComponentReferenceComponentReferenceComponentreferenceComponentreference_component beschreibt den Index der entsprechenden Referenzkomponente und muss somit im Bereich von 0 bis n-1 liegen, wenn n die Anzahl der Modellkomponenten darstellt (siehe train_model_componentstrain_model_componentsTrainModelComponentsTrainModelComponentsTrainModelComponentstrain_model_components).

Die Relationen werden sowohl in Form von Regionen in RelationsRelationsRelationsRelationsrelationsrelations als auch in Form von numerischen Werten in RowRowRowRowrowrow, ColumnColumnColumnColumncolumncolumn, PhiPhiPhiPhiphiphi, Length1Length1Length1Length1length1length_1, Length2Length2Length2Length2length2length_2, AngleStartAngleStartAngleStartAngleStartangleStartangle_start und AngleExtentAngleExtentAngleExtentAngleExtentangleExtentangle_extent zurückgeliefert.

Das Regionenobjekttupel RelationsRelationsRelationsRelationsrelationsrelations hat folgenden Aufbau: Für jede Komponente wird eine eigene Region zurückgeliefert. Somit beinhaltet RelationsRelationsRelationsRelationsrelationsrelations n Regionen, wobei die Reihenfolge der Regionen im Tupel durch den Index der entsprechenden Komponenten festgelegt ist. Die Positionen aller Komponenten im Bild werden durch Kreise mit einem Radius von 3 Pixel dargestellt. Für jede Komponente, die nicht der Referenzkomponente ReferenceComponentReferenceComponentReferenceComponentReferenceComponentreferenceComponentreference_component entspricht, werden zusätzlich die Positionsrelation und die Winkelrelation relativ zur Referenzkomponente dargestellt. Die Positionsrelation wird dabei durch ein Rechteck und die Winkelrelation durch einen Kreissektor mit einem Radius von 30 Pixel dargestellt. Der Kreismittelpunkt liegt dabei an der mittleren relativen Position der Komponente. Das Rechteck beschreibt die Referenzpunktbewegung der jeweiligen Komponente relativ zur Lage der Referenzkomponente, der Öffnungswinkel des Kreissektors beschreibt die Variation der relativen Orientierung (siehe train_model_componentstrain_model_componentsTrainModelComponentsTrainModelComponentsTrainModelComponentstrain_model_components). Eine relative Orientierung von 0 entspricht der relativen Orientierung der beiden Komponenten im Modellbild. Zeigen die beiden Komponenten in allen Bildern die gleiche relative Orientierung entartet der Kreissektor demzufolge zu einer Geraden.

Neben dem Regionenobjekttupel RelationsRelationsRelationsRelationsrelationsrelations werden die Relationen auch in Form von numerischen Werten RowRowRowRowrowrow, ColumnColumnColumnColumncolumncolumn, PhiPhiPhiPhiphiphi, Length1Length1Length1Length1length1length_1, Length2Length2Length2Length2length2length_2, AngleStartAngleStartAngleStartAngleStartangleStartangle_start und AngleExtentAngleExtentAngleExtentAngleExtentangleExtentangle_extent zurückgeliefert. Diese Parameter sind Tupel der Länge n und enthalten die Relationen aller Komponenten relativ zur Referenzkomponente, wobei die Reihenfolge der Werte in den Tupeln durch den Index der entsprechenden Komponenten festgelegt ist. Die Positionsrelation wird dabei durch die Parameter des entsprechenden Rechtecks RowRowRowRowrowrow, ColumnColumnColumnColumncolumncolumn, PhiPhiPhiPhiphiphi, Length1Length1Length1Length1length1length_1 und Length2Length2Length2Length2length2length_2 beschrieben (siehe gen_rectangle2gen_rectangle2GenRectangle2GenRectangle2GenRectangle2gen_rectangle2). Die Winkelrelation wird durch den Anfangswinkel AngleStartAngleStartAngleStartAngleStartangleStartangle_start und die Winkelausdehnung AngleExtentAngleExtentAngleExtentAngleExtentangleExtentangle_extent beschrieben. Für die Referenzkomponente wird lediglich deren Position im Bild in RowRowRowRowrowrow und ColumnColumnColumnColumncolumncolumn zurückgeliefert. Alle anderen Werte sind dagegen auf 0 gesetzt.

Wurde die Referenzkomponente im Bild nicht gefunden, so wird ein Tupel leerer Regionen zurückgeliefert und die entsprechenden Parameterwerte werden auf 0 gesetzt.

Der Operator get_component_relationsget_component_relationsGetComponentRelationsGetComponentRelationsGetComponentRelationsget_component_relations kann dazu genutzt werden, das Ergebnis des mit train_model_componentstrain_model_componentsTrainModelComponentsTrainModelComponentsTrainModelComponentstrain_model_components durchgeführten Trainings zu visualisieren. Damit ist es möglich, die in den Trainingsbildern enthaltenen Variationen einzuschätzen. Eventuell kann es sinnvoll sein, mit einem veränderten Satz von Trainingsbildern das Training mit train_model_componentstrain_model_componentsTrainModelComponentsTrainModelComponentsTrainModelComponentstrain_model_components erneut durchzuführen.

Ausführungsinformationen

Parameter

RelationsRelationsRelationsRelationsrelationsrelations (output_object)  region(-array) objectHRegionHObjectHRegionHobject *

Darstellung der Relationen in Form von Regionen.

ComponentTrainingIDComponentTrainingIDComponentTrainingIDComponentTrainingIDcomponentTrainingIDcomponent_training_id (input_control)  component_training HComponentTraining, HTupleHHandleHTupleHtuple (handle) (IntPtr) (HHandle) (handle)

Handle des Trainingsergebnisses.

ReferenceComponentReferenceComponentReferenceComponentReferenceComponentreferenceComponentreference_component (input_control)  integer HTupleintHTupleHtuple (integer) (int / long) (Hlong) (Hlong)

Index der Referenzkomponente.

Restriktion: ReferenceComponent >= 0

ImageImageImageImageimageimage (input_control)  string HTupleUnion[str, int]HTupleHtuple (string / integer) (string / int / long) (HString / Hlong) (char* / Hlong)

Bild, für das die Relationen zwischen den Komponenten zurückgeliefert werden sollen.

Defaultwert: 'model_image' "model_image" "model_image" "model_image" "model_image" "model_image"

Wertevorschläge: 'model_image'"model_image""model_image""model_image""model_image""model_image", 0, 1, 2, 3, 4, 5, 6, 7, 8

RowRowRowRowrowrow (output_control)  rectangle2.center.y(-array) HTupleSequence[float]HTupleHtuple (real) (double) (double) (double)

Zeilenkoordinate des Mittelpunktes des Rechtecks, das die Relation beschreibt.

ColumnColumnColumnColumncolumncolumn (output_control)  rectangle2.center.x(-array) HTupleSequence[float]HTupleHtuple (real) (double) (double) (double)

Spaltenindex des Mittelpunktes des Rechtecks, das die Relation beschreibt.

PhiPhiPhiPhiphiphi (output_control)  rectangle2.angle.rad(-array) HTupleSequence[float]HTupleHtuple (real) (double) (double) (double)

Orientierung des Rechtecks, das die Relation beschreibt (Bogenmaß).

Zusicherung: - pi / 2 < Phi && Phi <= pi / 2

Length1Length1Length1Length1length1length_1 (output_control)  rectangle2.hwidth(-array) HTupleSequence[float]HTupleHtuple (real) (double) (double) (double)

Erster Halbmesser (halbe Länge) des Rechtecks, das die Relation beschreibt.

Zusicherung: Length1 >= 0.0

Length2Length2Length2Length2length2length_2 (output_control)  rectangle2.hheight(-array) HTupleSequence[float]HTupleHtuple (real) (double) (double) (double)

Zweiter Halbmesser (halbe Breite) des Rechtecks, das die Relation beschreibt.

Zusicherung: Length2 >= 0.0 && Length2 <= Length1

AngleStartAngleStartAngleStartAngleStartangleStartangle_start (output_control)  angle.rad(-array) HTupleSequence[float]HTupleHtuple (real) (double) (double) (double)

Kleinster relativer Orientierungswinkel.

AngleExtentAngleExtentAngleExtentAngleExtentangleExtentangle_extent (output_control)  angle.rad(-array) HTupleSequence[float]HTupleHtuple (real) (double) (double) (double)

Ausdehnung des relativen Orientierungswinkelbereichs.

Ergebnis

Ist der Handle des Trainingsergebnisses gültig, dann liefert get_component_relationsget_component_relationsGetComponentRelationsGetComponentRelationsGetComponentRelationsget_component_relations den Wert TRUE. Gegebenenfalls wird eine Fehlerbehandlung durchgeführt.

Vorgänger

train_model_componentstrain_model_componentsTrainModelComponentsTrainModelComponentsTrainModelComponentstrain_model_components

Nachfolger

train_model_componentstrain_model_componentsTrainModelComponentsTrainModelComponentsTrainModelComponentstrain_model_components

Siehe auch

gen_rectangle2gen_rectangle2GenRectangle2GenRectangle2GenRectangle2gen_rectangle2

Modul

Matching