get_dl_model_param — Auslesen der Parameter des Deep Learning-Modells.
get_dl_model_param( : : DLModelHandle, GenParamName : GenParamValue)
get_dl_model_param gibt die Parameterwerte von
GenParamName für das Deep Learning-Modell DLModelHandle
in GenParamValue aus.
Für ein Deep Learning-Modell können die Parameter GenParamName, je
nach Parameter und Modelltyp, mit Hilfe von set_dl_model_param oder
create_dl_model_detection gesetzt werden.
Mit diesem Operator, get_dl_model_param, können die Parameterwerte
GenParamValue abgefragt werden.
Unten ist eine Tabelle als Überblick zu den verschiedenen Parametern zu
finden sowie eine Erklärung zu den Parameter, mit Ausnahme jener die nur
gesetzt werden können.
Für eine Erklärung letztgenannter Parameter wird auf die Dokumentation der
entsprechende Operatoren verwiesen.
GenParamName |
Objektdetektion | Semantische Segmentierung | |||
|---|---|---|---|---|---|
| create | set | get | set | get | |
| 'batch_size' | n | j | j | j | j |
| 'batch_size_multiplier' | n | j | j | j | j |
| 'class_ids' | j | j | j | j | j |
| 'gpu' | n | j | j | j | j |
| 'image_dimensions' | j | n | j | j | j |
| 'image_height' | j | n | j | j | j |
| 'image_width' | j | n | j | j | j |
| 'image_num_channels' | j | n | j | j | j |
| 'image_range_max' | n | n | j | j | j |
| 'image_range_min' | n | n | j | j | j |
| 'learning_rate' | n | j | j | j | j |
| 'momentum' | n | j | j | j | j |
'num_classes' (NumClasses) |
j | n | j | j | j |
| 'runtime' | n | j | j | j | j |
| 'runtime_init' | n | j | n | j | n |
| 'type' | n | n | j | n | j |
| 'weight_prior' | n | j | j | j | j |
| 'anchor_angles' | y | n | y | - | - |
| 'anchor_aspect_ratios' | j | n | j | - | - |
| 'anchor_num_subscales' | j | n | j | - | - |
'backbone' / Backbone |
j | n | j | - | - |
| 'bbox_heads_weight' | j | n | j | - | - |
| 'capacity' | j | n | j | - | - |
| 'class_heads_weight' | j | n | j | - | - |
| 'class_ids_no_orientation' | j | j | j | - | - |
| 'class_weights' | j | n | j | - | - |
| 'ignore_direction' | j | n | n | - | - |
| 'instance_type' | j | n | j | - | - |
| 'max_level' | j | n | j | - | - |
| 'min_level' | j | n | j | - | - |
| 'max_num_detections' | j | j | j | - | - |
| 'max_overlap' | j | j | j | - | - |
| 'max_overlap_class_agnostic' | j | j | j | - | - |
| 'min_confidence' | j | j | j | - | - |
| 'ignore_class_ids' | - | - | - | j | j |
Hierbei steht 'set' für set_dl_model_param, 'get' für
get_dl_model_param, und 'create' für
create_dl_model_detection. Kann der Operator für Parameter und
Modelltyp entsprechend genutzt werden, wird 'j' eingetragen, falls nicht
'n', und '-' steht für den Fall, dass der Parameter in diesem
Modelltypen keine Anwendung findet.
Gewisse Parameter werden als nicht-optionale Parameter gesetzt,
die enstsprechende Repräsentation ist in Klammern angegeben.
Im Folgenden werden die Parameter GenParamName, deren Werte mit
get_dl_model_param abgefragt werden können, aufgelistet und
erläutert.
Die Auflistung ist dem Modelltyp entsprechend sortiert.
Für Modelle mit 'type'='segmentation' hängen die
Standardwerte vom spezifischen Netzwerk ab und müssen somit abgefragt
werden.
Anzahl der Bilder (und ihren entsprechenden Labels) in einem Batch,
die gleichzeitig in den Gerätespeicher transferiert werden. Die Menge
der Bilder, die beim Training in einer Iteration miteinander
verarbeitet werden, beinhaltet eine Anzahl 'batch_size' mal
'batch_size_multiplier' Bilder. Für weitere Details siehe
train_dl_model_batch. Bei der Inferenz kann die
'batch_size' im Allgemeinen unabhängig von der Anzahl der
gleichzeitig zu inferierenden Bilder gesetzt werden. Siehe
apply_dl_model für weitere Informationen, wie man diesen
Parameter setzt, um eine größere Effizienz zu erzielen.
Multiplikationsfaktor für 'batch_size', um das Training mit
einer größeren Anzahl an Bildern in einem Schritt zu ermöglichen, was
aufgrund limitierter GPU-Speichergröße sonst nicht möglich wäre.
Auf die Evaluierung und Inferenz hat dieser Modellparameter
keinen Einfluss.
Für weitere Details, siehe train_dl_model_batch.
Eindeutige IDs der Klassen, die vom Modell unterschieden werden sollen. Daher hat das Tupel die Länge von 'num_classes'. Dabei kann als Klassen-ID ein beliebiger Integer-Wert aus dem Wertebereich gesetzt werden.
Hierbei sollen die leicht unterschiedlichen Bedeutungen und Beschränkungen in Abhängigkeit des Modelltyps betont werden:
Beinhaltet nur die Klassen der zu erkennenden Objekte, und somit keine Hintergrund-Klasse.
Es gilt zu beachten, dass die Werte in 'class_ids_no_orientation' von jenen in 'class_ids' abhängen. Falls die Werte in 'class_ids' nach der Erzeugung des Modells verändert werden, wird 'class_ids_no_orientation' auf ein leeres Tupel zurückgesetzt.
Note that the values of 'class_ids_no_orientation' depend on 'class_ids', thus if 'class_ids' are changed after the creation of the model, the values of 'class_ids_no_orientation' are reset.
Default: 'class_ids' = '[0,...,num_classes-1]'
Jede zum Training genutzte Klasse muss enthalten sein und damit ebenfalls die Klassen-ID der Klasse 'background'. Daher hat für ein solches Modell das Tupel die die minimale Länge 2.
Identifikationsnummer der GPU, auf der die Trainings- und
Inferenz-Operatoren (train_dl_model_batch und
apply_dl_model) ausgeführt werden.
Standardmäßig wird die erste verfügbare GPU verwendet.
Mit dem get_system Parameter
'cuda_devices' kann die Liste der verfügbaren GPUs abgefragt
werden. In 'gpu' muss der Index der gewünschten GPU in dieser
Liste übergeben werden..
Default: 'gpu' = 0
Tupel, das die Dimensionen der Eingabebilder 'image_width', 'image_height' und Anzahl der Bildkanäle 'image_num_channels' beinhaltet.
Die jeweiligen Standardwerte und möglichen Wertebereiche sind vom Modelltyp und Modell selbst abhängig. Weitere Angaben dazu finden sich in der Beschreibung des jeweilingen Dimensions-Parameters.
Höhe und Breite die die Eingabebilder aufweisen und mit denen das Netzwerk arbeitet.
Dieser Parameter kann abhängig vom Modelltyp verschiedene Werte annehmen:
Die Netzwerkarchitekturen erlauben Änderungen der Bilddimensionen.
Jedoch werden für jede Ebene die Bildlängen halbiert, weshalb
'image_width' und 'image_height' ganzzahlige
Vielfache von sein müssen.
2
Dabei ist die Anzahl Ebenen vom Backbone und
dem Parameter 'max_level' abhängig, siehe
create_dl_model_detection.
Default: 'image_height' = 640, 'image_width' = 640
Die Netzwerkarchitekturen erlauben Änderungen der Bilddimensionen.
Der Standardwert und Minimalwerte werden dabei vom Netzwerk
vorgegeben, siehe read_dl_model.
Anzahl Kanäle der Eingabebilder, die vom Netzwerk verarbeitet werden.
Der Standardwert wird dabei vom Netzwerk vorgegeben, siehe
read_dl_model und create_dl_model_detection.
Eine beliebige Anzahl an Kanälen ist möglich.
Wird die Anzahl auf einen Wert >1 geändert, werden die Werte aller Layer nach dem Eingabebild-Layer mit Zufallswerten initialisiert. In diesem Fall sind mehr Daten zum Nachtrainieren notwendig. Wird die Anzahl Kanäle der Eingabebilder auf 1 geändert, so werden die Gewichte der entsprechenden Layer vereinigt.
Default: 'image_num_channels' = 3
Maximaler und minimaler möglicher Grauwert der Eingabebilder, welche das Netzwerk verarbeitet.
Die Werte werden dabei vom Netzwerk vorgegeben,
siehe read_dl_model und create_dl_model_detection.
Wert des Faktors, der den Einfluss des Gradienten während des
Trainings bestimmt.
Mehr Information können in der Dokumentation von
train_dl_classifier_batch gefunden werden.
Der Standardwert ist vom Modell abhängig.
Werden die Gewichte des Netzwerkes aktualisiert, gibt
der Hyperparameter 'momentum' an, zu welchem Ausmaß vorherige
Aktualisierungsvektoren im aktuellen Aktualisierungsvektor
berücksichtigt werden.
Für weitere Informationen verweisen wir auf die Dokumentation von
train_dl_model_batch.
Der Standardwert wird vom Modell gegeben.
Anzahl unterschiedlicher Klassen, die das Modell für seine Vorhersagen unterscheiden kann.
Dieser Parameter unterscheidet sich für die Modelltypen.
Für ein Modell des Typs 'type'='detection' ist die
Klasse 'background' nicht mit enthalten, da diese nicht vom Detektor
vorhergesagt wird. 'class_ids' muss stets eine Anzahl
Elemente gleich 'num_classes' haben.
Zudem wird dieser Wert über den Parameter NumClasses mit dem
Operator create_dl_model_detection gesetzt.
Da ein Modell des Typs 'type'='segmentation' die
Klasse 'background' vorhersagt, ist diese Klasse in
'num_classes' enthalten. Für diese Modelle wird
'num_classes' automatisch aus der Länge von
'class_ids' bestimmt.
Bestimmt das Gerät, auf dem die Operatoren ausgeführt werden.
Default: 'runtime' = 'gpu'
Der Operator apply_dl_model wird auf der CPU ausgeführt,
der Operator train_dl_model_batch kann hingegen nicht
ausgeführt werden.
Falls zuvor auf der GPU gerechnet wurde, wird Speicher auf der CPU initialisiert und falls notwendig werden auf der GPU gespeicherte Werte auf die CPU verschoben.
Auf Intel oder AMD Architekturen verwendet die 'cpu'
Laufzeit zur Parallelisierung des Operators
apply_dl_model OpenMP, wobei standardmäßig alle
verfügbaren Threads der OpenMP Laufzeitumgebung verwendet werden.
In diesem Fall kann mit dem threadspezifischen Parameter
'tsp_thread_num' des Operators set_system die zu
verwendende Anzahl von Threads spezifiziert werden.
Auf Arm Architekturen verwendet die 'cpu' Laufzeit zur
Parallelisierung einen globalen thread pool. In diesem Fall kann
mit dem globalen Parameter 'thread_num' des Operators
set_system die zu verwendende Anzahl von Threads
spezifiziert werden. Auf Arm Architekturen kann keine
Thread-spezifische Anzahl von Threads eingestellt werden.
Der Speicher wird auf der GPU initialisiert.
Die Operatoren apply_dl_model und
train_dl_model_batch werden auf der GPU ausgeführt.
Mehr Informationen zu diesen speziellen Voraussetzungen befinden
sich im HALCON „Installation Guide“.
Dieser Parameter gibt den Modelltypen zurück. Folgende Typen werden unterschieden: 'detection' und 'segmentation'.
Regularisierungsparameter für die
Regularisierung der Zielfunktion.
Für eine genaue Beschreibung des Regularisierungsterms wird auf
train_dl_model_batch verwiesen.
Einfach gesagt, begünstigt die Regularisierung einfachere
Modelle, die weniger anfällig sind, Rauschen in den Daten zu lernen
und dadurch generalisieren diese Modelle in der Regel besser.
Standardmäßig wird keine Regularisierung verwendet, d.h.
'weight_prior' ist 0.0. Für den Fall einer
Überanpassung des Klassifikators, empfehlen wir verschiedene Werte für
den Parameter 'weight_prior' zu testen.
Die Wahl des Wertes ist ein Abwägen zwischen der Fähigkeit des
Netzwerkes zu Generalisieren, einer Überanpassung oder einer
Unteranpassung. Ist zu klein, ist eine Überanpassung
möglich, ist es zu groß kann es passieren, dass das Modell seine
Fähigkeit verliert, sich an die Daten anzupassen, da dann alle
Gewichte effektiv Null sind. Um einen idealen Wert für
zu finden, empfehlen wir eine Kreuzvalidierung durchzuführen.
Das heißt, das Training wird für eine Reihe von Werten durchgeführt
und man wählt den Wert, der den besten Validierungsfehler liefert.
Üblich sind zum Testen die Werte für 'weight_prior' auf einer
logarithmischen Skala zwischen
.
Falls das Training sehr lange dauert, besteht die Möglichkeit für die
Optimierung der Hyperparameter einen reduzierten Datensatz zu
verwenden.
Default: 'weight_prior' = 0.0
Der Parameter 'anchor_angles' bestimmt den Orientierungswinkel der Anchors eines Modells mit 'instance_type' = 'rectangle2'. Dabei ist die Orientierung in Bogenmaß angegeben und gibt den Winkel zwischen der horizontalen Achse und 'Length1' an (mathematisch positiv). Für weitere Informationen zu Anchors siehe das Kapitel Deep Learning / Objektdetektion.
Es kann ein Tupel mit Werten gesetzt werden. Eine höhere Anzahl an Winkel erhöht die Anzahl vorgeschlagener umschließender Rechtecke, was zu einer besseren Lokalisierung führen kann, allerdings auch mehr Laufzeit und Speicherplatz in Anspruch nimmt.
Mögliche Werte: 'anchor_angles' für 'ignore_direction' = 'false', 'anchor_angles' für 'ignore_direction' = 'true'
Default: 'anchor_angles' = '[0.0]'
Der Parameter 'anchor_aspect_ratios' bestimmt das Seitenverhältnis des umschließenden Referenzrechtecks. Dabei bestimmt der Instanztyp 'instance_type', wie dieses Verhältnis definiert ist:
'rectangle1': Verhältnis von Höhe zu Breite
'rectangle2': Verhältnis von 'Length1' zu 'Length2'
So ergibt z.B. für Instanztyp 'rectangle1' ein Wert von 2 ein schmales initiales Referenzrechteck, während 0.5 ein breites Referenzrechteck ergibt. Die Größe des generierten umschließenden Rechtecks wird durch den Parameter 'anchor_num_subscales' beeinflusst und mit seiner Erklärung findet sich auch die genaue Formel für die Größen und die Längen der resultierenden umschließenden Anchors. Für weitere Informationen zu umschließenden Rechtecken siehe das Kapitel Deep Learning / Objektdetektion.
Es kann ein Tupel mit Werten gesetzt werden. Eine höhere Anzahl an Seitenverhältnissen erhöht die Anzahl vorgeschlagener umschließender Rechtecke, was zu einer besseren Lokalisierung führen kann, allerdings auch mehr Laufzeit und Speicherplatz in Anspruch nimmt.
Aus Gründen der Rückwärtskompatibilität kann anstelle des Parameters 'anchor_aspect_ratios' auch der Parameter 'aspect_ratios' verwendet werden.
Default: 'anchor_aspect_ratios' = '[1.0, 2.0, 0.5]'
Dieser Parameter bestimmt die Anzahl an Anchors, die für jedes angegebenen Größenverhältnis in verschiedenen Skalierungen generiert werden.
In HALCON werden für jedes Pixel jeder Merkmalskarte der Merkmalspyramide umschließende Rechtecke vorgeschlagen. Der Parameter 'anchor_aspect_ratios' beeinflusst die Form, der Parameter 'anchor_num_subscales' die Größe. So werden auf jedem oben erwähnten Pixel 'anchor_aspect_ratios' mal 'anchor_num_subscales' umschließende Rechtecke generiert. Für weitere Informationen zu umschließenden Rechtecken siehe das Kapitel Deep Learning / Objektdetektion. Ein Beispiel findet sich in unten stehender Darstellung.
Ein umschließendes Referenzrechteck der Ebene hat auf dem Eingabebild eine standardmäßige Größe von , wobei der Parameter den Wert Pixel hat. Mit dem Parameter 'anchor_num_subscales' können zusätzliche umschließende Rechtecke generiert werden, die größenmässig zur Größe des kleinsten umschließenden Referenzrechtecks der Ebene konvergiert. Genauer haben diese umschließenden Referenzrechtecke der Ebene auf dem Eingabebild die Größe wobei . Dies ergibt auf der Ebene für subscale ein umschließendes Referenzrechteck mit Höhe und Breite von wobei das Seitenverhältnis dieses umschließenden Referenzrechtecks ist (siehe 'anchor_aspect_ratios'.
Eine große Anzahl von Subskalierungen erhöht die Anzahl vorgeschlagener umschließender Rechtecke und nimmt daher auch mehr Laufzeit und Speicherplatz in Anspruch.
Aus Gründen der Rückwärtskompatibilität kann anstelle des Parameters 'anchor_num_subscales' auch der Parameter 'num_subscales' verwendet werden.
Default: 'anchor_num_subscales' = 3
Der Parameter 'backbone' ist der Name (inklusiv Pfad) des
Backbone-Netzwerks, das zum Erstellen des Modells verwendet wird. Eine
Liste der verschiedenen mitgelieferten Backbone-Netzwerke ist unter
create_dl_model_detection zu finden.
Die Parameter 'bbox_heads_weight' und 'class_heads_weight' sind Gewichtungsfaktoren bei der Bestimmung der Gesamt-Zielfunktion. Dies bedeutet, wenn die einzelnen Zielfunktionswerte aufsummiert werden, werden die Beiträge der Heads zur Bestimmung der umschließenden Rechtecke mit dem Faktor 'bbox_heads_weight' gewichtet und die Beiträge der Heads zur Klassifikation mit dem Faktor 'class_heads_weight'.
Default: 'bbox_heads_weight' = '1.0', 'class_heads_weight' = '1.0'
Bestimmt die Anzahl der Parameter (oder Filtergewichte) in den tieferen Teilen des Netzwerkes zur Objektdetektion (d.h., nach dem Backbone). Mögliche Werte sind 'high', 'medium' und 'low'.
Er kann verwendet werden, um zwischen Detektionsleistung und Geschwindigkeit abzuwägen. Für einfachere Objektdetektionsaufgaben können die Einstellungen 'low' oder 'medium' ausreichen, um ähnliche Detektionsleistung wie mit 'high' zu erzielen.
Default: 'capacity' = 'high'
Mit diesem Parameter können Klassen angegeben werden, für welche die Orientierung nicht berücksichtigt wird, z.B. runde oder andere punktsymmetrische Objekte. Für jede Klasse, deren Klassen-ID in 'class_ids_no_orientation' präsent ist, gibt das Netzwerk ein achsen-paralleles umschließendes Rechteck zurück.
Dieser Parameter betrifft nur Netzwerke mit 'instance_type' = 'rectangle2'.
Es gilt zu beachten, dass die Werte in 'class_ids_no_orientation' von jenen in 'class_ids' abhängen. Falls die Werte in 'class_ids' nach der Erzeugung des Modells verändert werden, wird 'class_ids_no_orientation' auf ein leeres Tupel zurückgesetzt.
Default: 'class_ids_no_orientation' = []
Der Parameter 'class_weights' ist ein Tupel klassenspezifischer Gewichtungsfaktoren für die Zielfunktion. Erhalten die verschiedenen Klassen unterschiedliche Gewichte, so wird das Netzwerk forciert, den Klassen beim Lernen eine unterschiedliche Bedeutung zu geben. Dies ist nützlich, wenn eine Klasse den Datensatz dominiert. Die einzelnen Gewichtungsfaktoren müssen innerhalb des Intervalls sein. Dabei gilt, je größer das Gewicht einer Klasse, desto stärker ist ihr Einfluss beim Training. Im Tupel 'class_weights' sind die Faktoren gleich angeordnet wie die Klassen im Tupel 'class_ids'. Eine Ausnahme bildet der Fall, wenn alle Klassen den selben Gewichtungsfaktor haben, wo nur ein einzelner Wert zurück gegeben wird.
Default: 'class_weights' = 0.25 (für jede Klasse)
Der Parameter 'instance_type' bestimmt, welcher Instanztyp für das Objektdetektion-Modell verwendet wird. Die Implementierungen unterscheiden sich bezüglich der erlaubten Orientierungen der umschließenden Rechtecke. Für weitere Erklärungen der verschiedenen Typen und ihren umschließenden Rechtecke wird auf das Kapitel Deep Learning / Objektdetektion verwiesen.
Mögliche Werte: 'rectangle1', 'rectangle2'
Default: 'instance_type' = 'rectangle1'
Diese Parameter bestimmen, an welche Ebenen die zusätzlichen Netwerke an die Merkmalspyramide angehängt werden. Für weitere Informationen zu Merkmalspyramiden und den angeschlossenen Netzwerken wird auf das Kapitel Deep Learning / Objektdetektion verwiesen.
Von diesen ('max_level' - 'min_level' + 1) Netzwerken werden alle Vorhersagen, die eine minimale Konfidenz und keine zu starke Überlappung aufweisen, beibehalten (siehe 'min_confidence' und 'max_overlap').
Die Ebene gibt an, wie oft die Größe der Merkmalskarte bereits herabskaliert wurde. Somit entspricht Ebene 0 den Merkmalskarten mit Größe des Eingabebildes, Ebene 1 den einmalig herabskalierten Merkmalskarten und so weiter. Kleinere Objekte werden daher besser auf den unteren Ebenen, größere Objekte auf den oberen Ebenen erkannt.
Falls 'max_level' größer ist als die Anzahl Ebenen des Backbones, wird das Backbone durch zusätzliche (zufällig initialisierte) Faltungs-Layer erweitert um tiefere Ebenen zu generieren. Dies bedeutet, dass 'max_level' einen Einfluss auf die minimale Größe der Eingabebilder haben kann.
Bei der Eingabe kleiner Bilddimensionen ist zu beachten, dass hohe Ebenen weniger aussagekräftig sein können, da die Merkmalskarten bereits zu klein sein könnten um aussagekräftige Informationen zu enthalten.
Eine höhere Anzahl verwendeter Ebenen kann zu einer Erhöhung von Laufzeit und Speicherplatz führen, wobei insbesondere die tiefen Ebenen ins Gewicht fallen.
Default: 'max_level' = 6, 'min_level' = 2
Dieser Parameter bestimmt die maximale Anzahl vom Netzwerk vorgeschlagener Detektionen (umschließende Rechtecke) pro Bild.
Default: 'max_num_detections' = 100
Der maximal zulässige Quotient aus Schnittmenge und Vereinigungsmenge (IoU, von engl. intersection over union) zweier umschließender Rechtecke derselben Klasse. Anders ausgedrückt, wenn zwei umschließende Rechtecke derselben Klasse zugeordnet werden und einen IoU höher als 'max_overlap' aufweisen, wird das Rechteck mit dem niedrigeren Konfidenzwert unterdrückt. Weitere Informationen zu IoU sind im Kapitel Deep Learning / Objektdetektion zu finden.
Default: 'max_overlap': = 0.5
Der maximal zulässige Quotient aus Schnittmenge und Vereinigungsmenge (IoU, von engl. intersection over union) zweier Rechtecke unabhängig ihrer Klasse. Anders ausgedrückt, wenn zwei umschließende Rechtecke einen IoU höher als 'max_overlap_class_agnostic' aufweisen, wird das Rechteck mit dem niedrigeren Konfidenzwert unterdrückt. Der Standardwert für 'max_overlap_class_agnostic' liegt bei 1.0, wodurch die Klassen-agnostische Unterdrückung von umschließenden Rechtecken keine Auswirkung hat.
Default: 'max_overlap_class_agnostic' = 1.0
Dieser Parameter bestimmt bei der Klassifizierung des Bildausschnitts
innerhalb des umschließenden Rechtecks die minimale Konfidenz um das
vorgeschlagene umschließende Rechteck beizubehalten.
Das heißt, wenn apply_dl_model aufgerufen wird, wird die
Ausgabe aller umschließender Rechtecke mit einem Konfidenzwert kleiner
als 'min_confidence' unterdrückt.
Default: 'min_confidence' = 0.5
Dieser Parameter bestimmt ob für das orientierte umschließende Rechteck auch die Ausrichtung des Objekts innerhalb des umschließenden Rechtecks berücksichtigt wird oder nicht. Falls die Ausrichtung innerhalb des umschließenden Rechtecks nicht berücksichtigt werden soll, kann 'ignore_direction' = 'true' gesetzt werden, Um das umschließende Rechteck eindeutig zu bestimmen, gelten dabei (aber nur dann) die folgende Konventionen:
'phi'
'bbox_length1' > 'bbox_length2'
Dies ist konsistent zu smallest_rectangle2.
Dieser Parameter betrifft nur Netzwerke mit 'instance_type' = 'rectangle2'.
Mögliche Werte: 'true', 'false'
Default: 'ignore_direction' = 'false'
Mit diesem Parameter können eine oder mehrere Klassen auf 'ignore' gesetzt werden. Für weitere Informationen siehe Deep Learning / Semantische Segmentierung. Diese Klassen werden über ihre ID (Integer-Wert) deklariert.
Zu beachten ist, dass eine Klassen-ID nicht gleichzeitig in 'ignore_class_ids' und 'class_ids' gesetzt werden kann.
DLModelHandle (input_control) dl_model → (handle)
Handle des Deep Learning-basierten Modells.
GenParamName (input_control) attribute.name → (string)
Name des generischen Parameters.
Defaultwert: 'batch_size'
Werteliste: 'anchor_angles', 'anchor_aspect_ratios', 'anchor_num_subscales', 'backbone', 'batch_size', 'batch_size_multiplier', 'capacity', 'class_ids', 'class_ids_no_orientation', 'class_weights', 'classes', 'ignore_class_ids', 'ignore_direction', 'image_dimensions', 'image_height', 'image_num_channels', 'image_range_max', 'image_range_min', 'image_width', 'instance_type', 'learning_rate', 'max_level', 'max_num_detections', 'max_overlap', 'max_overlap_class_agnostic', 'min_confidence', 'min_level', 'momentum', 'num_classes', 'runtime', 'runtime_init', 'summary', 'type', 'weight_prior'
GenParamValue (output_control) attribute.name(-array) → (integer / string / real)
Wert des generischen Parameters.
Sind die Parameterwerte korrekt, dann liefert
get_dl_model_param den Wert 2 (H_MSG_TRUE). Gegebenenfalls wird eine
Fehlerbehandlung durchgeführt.
read_dl_model,
set_dl_model_param
set_dl_model_param,
apply_dl_model,
train_dl_model_batch
Deep Learning Inference